diff --git a/.babelrc.js b/.babelrc.js index bea181242..af443d45f 100644 --- a/.babelrc.js +++ b/.babelrc.js @@ -5,19 +5,16 @@ module.exports = { { 'preset-env': { bugfixes: true, - targets: 'defaults, not IE 11, not IE_mob 11, node 13', - }, - 'class-properties': { - loose: true, + targets: 'defaults, not IE 11, not IE_mob 11, node 16', }, }, ], ], + assumptions: { + setPublicClassFields: true, + }, plugins: [ [require.resolve('@fuelrats/babel-plugin-classnames'), { transformObjects: true, packageName: 'clsx' }], [require.resolve('@babel/plugin-proposal-decorators'), { legacy: true }], - require.resolve('@babel/plugin-proposal-export-default-from'), - require.resolve('@babel/plugin-proposal-export-namespace-from'), - require.resolve('@babel/plugin-proposal-optional-catch-binding'), ], } diff --git a/.config/ciEnv.js b/.config/ciEnv.js new file mode 100644 index 000000000..538920494 --- /dev/null +++ b/.config/ciEnv.js @@ -0,0 +1,17 @@ +const COMMIT_HASH_LENGTH = 10 + +const ciEnv = Object.freeze({ + isCi: process.env.CI, + ciId: process.env.GITHUB_RUN_ID, + server: process.env.GITHUB_SERVER_URL ?? 'https://github.com', + repository: process.env.GITHUB_REPOSITORY ?? 'fuelrats/fuelrats.com', + branch: process.env.GITHUB_REF?.replace(/^refs\/heads\//u, '')?.replace(/\//gu, '-') ?? 'develop', + commit: process.env.GITHUB_SHA?.toLowerCase(), + commitShort: process.env.GITHUB_SHA?.slice(0, COMMIT_HASH_LENGTH)?.toLowerCase(), +}) + + + + + +module.exports = ciEnv diff --git a/.config/env.js b/.config/env.js new file mode 100644 index 000000000..2c9f5f75f --- /dev/null +++ b/.config/env.js @@ -0,0 +1,40 @@ +const DEFAULT_PORT = 3000 + +const env = Object.freeze({ + appUrl: process.env.APP_URL, + proxied: process.env.APP_PROXIED, + isDev: process.env.NODE_ENV !== 'production', + port: process.env.PORT ?? DEFAULT_PORT, + fallbackUrl: process.env.FR_FALLBACK_URL ?? 'https://fallback.fuelrats.com/', + frapi: { + url: process.env.FR_API_URL ?? 'https://dev.api.fuelrats.com', + proxy: `${process.env.APP_URL}/api/fr`, + socket: process.env.FR_SOCKET_URL ?? 'wss://dev.api.fuelrats.com', + clientId: process.env.FR_API_KEY, + clientSecret: process.env.FR_API_SECRET, + }, + edsm: { + url: process.env.FR_EDSM_API_URL ?? 'https://www.edsm.net', + proxy: `${process.env.APP_URL}/api/edsm`, + }, + wordpress: { + url: process.env.FR_WORDPRESS_URL ?? 'https://wordpress.fuelrats.com', + proxy: `${process.env.APP_URL}/api/wp`, + }, + stripe: { + url: `${process.env.APP_URL}/api/stripe`, + public: process.env.FR_STRIPE_API_PK, + secret: process.env.FR_STRIPE_API_SK, + bansFile: process.env.FR_STRIPE_BANS_FILE, + }, + qms: { + url: process.env.QMS_API_URL ?? 'https://api.qms.fuelrats.dev', + token: process.env.QMS_API_TOKEN, + }, + irc: { + client: process.env.FR_CLIENT_IRC_URL ?? 'https://qms.fuelrats.dev', + rat: process.env.FR_RAT_IRC_URL ?? 'https://kiwi.fuelrats.com', + }, +}) + +module.exports = env diff --git a/.config/headers.config.js b/.config/headers.config.js new file mode 100644 index 000000000..c6f8f02d8 --- /dev/null +++ b/.config/headers.config.js @@ -0,0 +1,34 @@ +const nextSafe = require('next-safe') + + +module.exports = ({ isDev, frapi, appUrl }) => { + // Some headers are set by our reverse proxy in prod, so they should be disabled ouside of dev environments. + const defaultIfDev = isDev ? undefined : false + return () => { + return [ + { + source: '/:path*', + headers: nextSafe({ + isDev, + contentSecurityPolicy: { + 'default-src': ["'self'", '*.fuelrats.com'], + 'script-src': ["'self'", '*.stripe.com'], + 'connect-src': ["'self'", 'wss://*.fuelrats.com', frapi.url, appUrl], + 'object-src': ["'self'", 'data:'], + 'font-src': ["'self'", 'fonts.gstatic.com'], + 'style-src': ["'self'", "'unsafe-inline'", 'fonts.googleapis.com'], + 'img-src': ["'self'", '*.wp.com', 'blob:', 'data:'], + 'frame-src': ['https://js.stripe.com'], + 'child-src': false, + 'prefetch-src': false, + 'worker-src': false, + }, + frameOptions: defaultIfDev, + contentTypeOptions: defaultIfDev, + referrerPolicy: defaultIfDev, + xssProtection: defaultIfDev, + }), + }, + ] + } +} diff --git a/.config/publicRuntime.config.js b/.config/publicRuntime.config.js new file mode 100644 index 000000000..df1b0decf --- /dev/null +++ b/.config/publicRuntime.config.js @@ -0,0 +1,26 @@ +// This information is PUBLIC. all env values are explicitly defined to prevent secret leakage. +// DO NOT BLINDLY DEFINE OBJECTS! I.E. `frapi: env.frapi,` +module.exports = (env) => { + return { + appUrl: env.appUrl, + frapi: { + url: env.frapi.proxy, + server: env.frapi.url, + socket: env.frapi.socket, + }, + edsm: { + url: env.edsm.proxy, + }, + wordpress: { + url: env.wordpress.proxy, + }, + stripe: { + url: env.stripe.url, + public: env.stripe.public, + }, + irc: { + client: env.irc.client, + rat: env.irc.rat, + }, + } +} diff --git a/.config/redirects.config.js b/.config/redirects.config.js new file mode 100644 index 000000000..618339256 --- /dev/null +++ b/.config/redirects.config.js @@ -0,0 +1,71 @@ +module.exports = (env) => { + return () => { + return ([ + { + // All IE traffic should go to fallbackUrl. + source: '/:path*', + destination: env.fallbackUrl, + permanent: false, + basePath: false, + has: [ + { + type: 'header', + key: 'User-Agent', + value: '(.*Trident.*)', + }, + ], + }, + { + // Temporary workaround so canceled donations return to donate screen + source: '/donate/cancel', + destination: '/donate', + permanent: false, + }, + { + // Profile page requires a tab name in the path + source: '/profile', + destination: '/profile/overview', + permanent: true, + }, + { + // Old blog used to exist at /blogs + source: '/blogs', + destination: '/blog', + permanent: true, + }, + { + // get-help was used at launch of the website, but has since been changed back. + source: '/get-help', + destination: '/i-need-fuel', + permanent: true, + }, + { + // Common endpoint for privacy policies + source: '/privacy', + destination: '/privacy-policy', + permanent: true, + }, + { + // Lexicon is no longer local + source: '/fuel-rats-lexicon', + destination: 'https://confluence.fuelrats.com/pages/viewpage.action?pageId=3637257', + permanent: true, + basePath: false, + }, + { + // statistics are no longer local + source: '/statistics', + destination: 'https://grafana.fuelrats.com', + permanent: true, + basePath: false, + }, + { + // People often type this one manually into their URL bar to get to the helpdesk + source: '/help', + destination: 'https://t.fuelr.at/help', + permanent: true, + basePath: false, + }, + ]) + } +} diff --git a/.config/rewrites.config.js b/.config/rewrites.config.js new file mode 100644 index 000000000..050e5e4f4 --- /dev/null +++ b/.config/rewrites.config.js @@ -0,0 +1,25 @@ +module.exports = (env) => { + return () => { + return { + beforeFiles: [ + { + // Apple demands this be on the site root, but all api routes must be in /api. oof. + source: '/apple-app-site-association', + destination: '/api/apple-app-site-association', + }, + { + // Blog content dir. + source: '/wp-content/:path*', + destination: `${env.wordpress.url}/wp-content/:path*`, + }, + ], + fallback: [ + { + // Old blog links. yikes. + source: '/:year/:month/:day/:slug', + destination: '/blog/:slug', + }, + ], + } + } +} diff --git a/.config/webpack.config.js b/.config/webpack.config.js new file mode 100644 index 000000000..8808157a7 --- /dev/null +++ b/.config/webpack.config.js @@ -0,0 +1,38 @@ +/* eslint-disable import/no-extraneous-dependencies -- required dev dependencies are only loaded in development context */ +/* eslint-disable no-param-reassign -- reassign is intended for changing configs */ +const { DefinePlugin } = require('webpack') + +const ciEnv = require('./ciEnv') + + + + + +module.exports = () => { + return (config, opt) => { + /* Define Plugin */ + config.plugins.push(new DefinePlugin({ + '$$BUILD.isDev': JSON.stringify(opt.dev), + '$$BUILD.isProduction': JSON.stringify(!opt.dev && ciEnv.branch === 'release'), + '$$BUILD.branch': JSON.stringify(ciEnv.branch ?? null), + '$$BUILD.commit': JSON.stringify(ciEnv.commit ?? null), + '$$BUILD.commitShort': JSON.stringify(ciEnv.commitShort ?? ciEnv.branch), + '$$BUILD.date': JSON.stringify((new Date()).toISOString()), + '$$BUILD.url': JSON.stringify(`${ciEnv.server}/${ciEnv.repository}${ciEnv.ciId ? `/actions/runs/${ciEnv.ciId}` : ''}`), + '$$BUILD.id': JSON.stringify(opt.buildId), + '$$BUILD.nodeVersion': JSON.stringify(process.version), + })) + + // Workaround to fix dev warning: https://github.com/vercel/next.js/issues/19865 + config.output.hotUpdateMainFilename = 'static/webpack/[fullhash].[runtime].hot-update.json' + + /* SVGR */ + config.module.rules.push({ + exclude: /node_modules/u, + test: /\.svg$/u, + loader: require.resolve('@svgr/webpack'), + }) + + return config + } +} diff --git a/.env.local.template b/.env.local.template index 8feec0c32..e6a48ff8c 100644 --- a/.env.local.template +++ b/.env.local.template @@ -1,4 +1,4 @@ -# REQUIRED | Port to listen on. +# Port to listen on. PORT=3000 # REQUIRED | Publicly or locally accessible URL. Leave untouched if in development. diff --git a/.eslintrc.js b/.eslintrc.js index 08fbd9342..1de715c91 100644 --- a/.eslintrc.js +++ b/.eslintrc.js @@ -1,6 +1,5 @@ -/* eslint-disable import/no-extraneous-dependencies */ -const importRules = require('@fuelrats/eslint-config/core/plugin-import') -const importExtensions = require('@fuelrats/eslint-config/util/importExtensions') +const util = require('@fuelrats/eslint-config-react/util') +const { withAliasResolver } = require('@fuelrats/eslint-config/util/import') module.exports = { env: { @@ -9,40 +8,56 @@ module.exports = { }, extends: [ '@fuelrats/eslint-config', - '@fuelrats/eslint-config/plugins/fuelrats', '@fuelrats/eslint-config-react', + 'plugin:@next/next/recommended', ], + globals: { + $$BUILD: 'readonly', + fetch: 'readonly', + }, rules: { - 'jsx-a11y/no-noninteractive-element-interactions': ['off'], // We intend to enable this once we refactor certain key components. - 'jsdoc/require-jsdoc': ['off'], // we'll get to it someday... - 'react/jsx-uses-react': ['off'], - 'react/react-in-jsx-scope': ['off'], - 'import/order': ['error', { - ...importRules.rules['import/order'][1], + 'import/order': util.extendRule('import/order', { 'newlines-between': 'always', - }], + }), + ...util.disable( + 'jsx-a11y/no-noninteractive-element-interactions', // We intend to enable this once we refactor certain key components. + 'jsdoc/require-jsdoc', // we'll get to it someday... + '@next/next/link-passhref', // This rule is broken so just ignore it for now. + ), }, settings: { 'import/ignore': [ '.worker.js$', ], - 'import/resolver': { - node: { - extensions: importExtensions, - }, - alias: { - map: [['~', './src']], - extensions: importExtensions, - }, - }, + 'import/resolver': withAliasResolver([ + ['~', './src'], + ]), }, overrides: [ { - files: ['src/pages/api/**/*.js'], + files: [ + '.config/**/*.js', + 'src/pages/api/**/*.js', + 'src/util/server/**/*.js', + ], env: { browser: false, node: true, }, }, + { + files: ['*.worker.js'], + env: { + browser: false, + commonjs: false, + worker: true, + }, + }, + { + files: ['src/pages/**/*.js'], + rules: { + '@fuelrats/default-export-matches-module-name': ['off'], // Disabled in pages dir as it becomes difficult to stick to module names + }, + }, ], } diff --git a/.github/ISSUE_TEMPLATE/bug_report.yml b/.github/ISSUE_TEMPLATE/bug_report.yml new file mode 100644 index 000000000..fb641667b --- /dev/null +++ b/.github/ISSUE_TEMPLATE/bug_report.yml @@ -0,0 +1,62 @@ +name: Bug Report +description: Something might be very wrong here... +labels: + - 'Type | Bug :bug:' + - 'Meta | Needs Attention :rotating_light:' +body: +- type: markdown + attributes: + value: "# Bug Report" +- type: textarea + id: description + attributes: + label: Describe the bug + description: A brief description of what the bug is. + placeholder: A little more than "x doesn't work" is preferred. + validations: + required: true +- type: textarea + id: expected + attributes: + label: Expected behavior + description: A brief description of what you expected to happen. + placeholder: | + I expect the darn thing to always work! + How much are we paying you, anyways!? + validations: + required: true +- type: textarea + id: reproduce + attributes: + label: Steps to reproduce + description: We need, to the best of your ability, the steps required to reproduce this issue. We may not be able to confirm this bug, otherwise. + placeholder: | + 1. + 2. + 3. + validations: + required: true +- type: textarea + id: misc + attributes: + label: Additional Information (optional) + description: Any other context about the problem that may be helpful. + placeholder: I think my limpets are stuck in the cargo hatch. + validations: + required: false +- type: input + id: name + attributes: + label: FuelRats IRC Nickname (optional) + description: We may need to work with you directly to resolve this issue. Providing your IRC nick will make it easier for us to contact you. + placeholder: Surly_Badger + validations: + required: false +- type: checkboxes + id: checks + attributes: + label: I can help! + description: Please check the box below if you're able to submit a fix. + options: + - label: I am willing to fix to this issue, and submit it as a PR. + required: false diff --git a/.github/ISSUE_TEMPLATE/config.yml b/.github/ISSUE_TEMPLATE/config.yml new file mode 100644 index 000000000..489bac6a3 --- /dev/null +++ b/.github/ISSUE_TEMPLATE/config.yml @@ -0,0 +1,11 @@ +blank_issues_enabled: true +contact_links: + - name: Account Support + about: Account related questions should be submitted through our support desk. + url: https://jira.fuelrats.com/servicedesk/customer/portal/2 + - name: Provide Feedback + about: "Don't like something? Really love something else? Let us know!" + url: https://github.com/FuelRats/fuelrats.com/discussions/new?category=feedback + - name: Hang out with us! + about: Join us on IRC and hang out with the rats. + url: https://kiwi.fuelrats.com diff --git a/.github/ISSUE_TEMPLATE/feature_request.yml b/.github/ISSUE_TEMPLATE/feature_request.yml new file mode 100644 index 000000000..925faaa15 --- /dev/null +++ b/.github/ISSUE_TEMPLATE/feature_request.yml @@ -0,0 +1,41 @@ +name: Feature Request +description: How can we improve? +labels: + - 'Type | Feature Request :sparkles:' + - 'Meta | Needs Attention :rotating_light:' +body: +- type: markdown + attributes: + value: "# Feature Request" +- type: textarea + id: desc + attributes: + label: Description + description: Describe the feature you want. Be as detailed as you like! + placeholder: Do more things! + validations: + required: true +- type: textarea + id: misc + attributes: + label: Additional Information (optional) + description: Any other context about the feature request that may be helpful. + placeholder: Will there be in-flight refreshments? + validations: + required: false +- type: input + id: name + attributes: + label: FuelRats IRC Nickname (optional) + description: We may wish to contact you directly to ask further questions about your feature request. Providing your IRC name will make it easier for us to contact you. + placeholder: Surly_Badger + validations: + required: false +- type: checkboxes + id: checks + attributes: + label: I can help! + description: Please check the box below if you're able implement this feature. + options: + - label: I am willing to implement this feature, and submit it as a PR. + required: false diff --git a/.github/ISSUE_TEMPLATE/user_story.md b/.github/ISSUE_TEMPLATE/user_story.md new file mode 100644 index 000000000..f7fc91ee1 --- /dev/null +++ b/.github/ISSUE_TEMPLATE/user_story.md @@ -0,0 +1,20 @@ +--- +name: User Story +about: An issue that describes a new feature to be implemented, in detail. +title: 'As a ... I want ...' +labels: 'Type | Story :books:' +assignees: '' + +--- + + + +## Acceptance Criteria + +- [ ] + +## Background + + +## Additional Information + diff --git a/.github/PULL_REQUEST_TEMPLATE.md b/.github/PULL_REQUEST_TEMPLATE.md new file mode 100644 index 000000000..7b5eedc93 --- /dev/null +++ b/.github/PULL_REQUEST_TEMPLATE.md @@ -0,0 +1,52 @@ + + + + + +Closes #[issue] + +## Changelog + + + +### ✨ Additions +* + +### ⚡ Changes +* + +### 🔥 Removals +* + +### 🐛 Fixes +* + +### ⚙ Tasks +* + +## Additional Information + + + +## Contributor's Checklist + + +- [ ] This PR was created to resolve an existing issue or set of issues. +- [ ] This PR satisfies any and all acceptance criteria laid out by issue(s) it resolves. +- [ ] I have discussed creating this PR with the maintainers in the issue(s) beforehand. +- [ ] I have thoroughly tested the changes this PR introduces in a local development environment. +- [ ] I have linted the entire codebase using `yarn lint` and confirmed there are no errors or warnings. +- [ ] I have followed the commit conventions laid out by [`CONTRIBUTING.md`](https://github.com/FuelRats/fuelrats.com/blob/develop/CONTRIBUTING.md#commit-conventions). + +## Maintainer's Checklist + + + +- [ ] User-facing changes this PR introduces has been or will be documented in `CHANGELOG.md`. +- [ ] This PR has been linted and tested locally as a part of the review process. +- [ ] All issues this PR resolves have been properly linked before merging. + + + + + diff --git a/.github/workflows/deploy.yml b/.github/workflows/deploy.yml index dc11d9bb6..9221e4cac 100644 --- a/.github/workflows/deploy.yml +++ b/.github/workflows/deploy.yml @@ -39,7 +39,7 @@ jobs: - name: Load Next.js cache uses: actions/cache@v2 with: - path: ${{ github.workspace }}/dist/next/cache + path: ${{ github.workspace }}/dist/cache key: ${{ runner.os }}-nextjs-${{ hashFiles('**/yarn.lock') }} restore-keys: | ${{ runner.os }}-nextjs- @@ -55,12 +55,16 @@ jobs: - name: Prepare artifact run: | tar -czf fuelrats-com.tar.gz \ + .config \ + .yarn/plugins \ + .yarn/releases \ dist \ public \ scripts \ .nvmrc \ CHANGELOG.md \ LICENSE \ + .yarnrc.yml \ next.config.js \ package.json \ README.md \ diff --git a/.github/workflows/pull_request.yml b/.github/workflows/pull_request.yml index 3ed701c2c..65e9c1679 100644 --- a/.github/workflows/pull_request.yml +++ b/.github/workflows/pull_request.yml @@ -79,7 +79,7 @@ jobs: - name: Load Next.js cache uses: actions/cache@v2 with: - path: ${{ github.workspace }}/dist/next/cache + path: ${{ github.workspace }}/dist/cache key: ${{ runner.os }}-nextjs-${{ hashFiles('**/yarn.lock') }} restore-keys: | ${{ runner.os }}-nextjs- diff --git a/.gitignore b/.gitignore index 5dfd51a94..cd63a2729 100644 --- a/.gitignore +++ b/.gitignore @@ -8,7 +8,6 @@ # Build Dirs /dist* -/.next # Sensitive Files /.env diff --git a/.nvmrc b/.nvmrc index 8351c1939..b6a7d89c6 100644 --- a/.nvmrc +++ b/.nvmrc @@ -1 +1 @@ -14 +16 diff --git a/.vscode/blueprints/Class Component Directory/__pascalCase_name__/__pascalCase_name__.js b/.vscode/blueprints/Class Component Directory/__pascalCase_name__/__pascalCase_name__.js deleted file mode 100644 index 1e3816f60..000000000 --- a/.vscode/blueprints/Class Component Directory/__pascalCase_name__/__pascalCase_name__.js +++ /dev/null @@ -1,94 +0,0 @@ -import PropTypes from 'prop-types' -import React from 'react' - -import { connect } from '~/store' - -import styles from './{{pascalCase name}}.module.scss' - - - - -// Component Constants - - - - - -@connect -class {{pascalCase name}} extends React.Component { - /***************************************************************************\ - Class Properties - \***************************************************************************/ - - state = {} - - - - - - /***************************************************************************\ - Private Methods - \***************************************************************************/ - - - - - - /***************************************************************************\ - Public Methods - \***************************************************************************/ - - render () { - const { - className, - } = this.props - - return ( -
- ) - } - - - - - - /***************************************************************************\ - Getters - \***************************************************************************/ - - - - - - /***************************************************************************\ - Redux Properties - \***************************************************************************/ - - static mapDispatchToProps = [] - - static mapStateToProps = () => { - return {} - } - - - - - - /***************************************************************************\ - Prop Definitions - \***************************************************************************/ - - static defaultProps = { - className: undefined, - } - - static propTypes = { - className: PropTypes.string, - } -} - - - - - -export default {{pascalCase name}} diff --git a/.vscode/blueprints/Class Component File/__pascalCase_name__.js b/.vscode/blueprints/Class Component File/__pascalCase_name__.js deleted file mode 100644 index 1c88b9a27..000000000 --- a/.vscode/blueprints/Class Component File/__pascalCase_name__.js +++ /dev/null @@ -1,93 +0,0 @@ -import PropTypes from 'prop-types' -import React from 'react' - -import { connect } from '~/store' - - - - - -// Component Constants - - - - - -@connect -class {{pascalCase name}} extends React.Component { - /***************************************************************************\ - Class Properties - \***************************************************************************/ - - state = {} - - - - - - /***************************************************************************\ - Private Methods - \***************************************************************************/ - - - - - - /***************************************************************************\ - Public Methods - \***************************************************************************/ - - render () { - const { - className, - } = this.props - - return ( -
- ) - } - - - - - - /***************************************************************************\ - Getters - \***************************************************************************/ - - - - - - /***************************************************************************\ - Redux Properties - \***************************************************************************/ - - static mapDispatchToProps = [] - - static mapStateToProps = () => { - return {} - } - - - - - - /***************************************************************************\ - Prop Definitions - \***************************************************************************/ - - static defaultProps = { - className: undefined, - } - - static propTypes = { - className: PropTypes.string, - } -} - - - - - -export default {{pascalCase name}} diff --git a/.vscode/blueprints/Function Component Directory/__pascalCase_name__/__pascalCase_name__.js b/.vscode/blueprints/Component Directory/__pascalCase_name__/__pascalCase_name__.js similarity index 100% rename from .vscode/blueprints/Function Component Directory/__pascalCase_name__/__pascalCase_name__.js rename to .vscode/blueprints/Component Directory/__pascalCase_name__/__pascalCase_name__.js diff --git a/.vscode/blueprints/Class Component Directory/__pascalCase_name__/__pascalCase_name__.module.scss b/.vscode/blueprints/Component Directory/__pascalCase_name__/__pascalCase_name__.module.scss similarity index 100% rename from .vscode/blueprints/Class Component Directory/__pascalCase_name__/__pascalCase_name__.module.scss rename to .vscode/blueprints/Component Directory/__pascalCase_name__/__pascalCase_name__.module.scss diff --git a/.vscode/blueprints/Class Component Directory/__pascalCase_name__/index.js b/.vscode/blueprints/Component Directory/__pascalCase_name__/index.js similarity index 100% rename from .vscode/blueprints/Class Component Directory/__pascalCase_name__/index.js rename to .vscode/blueprints/Component Directory/__pascalCase_name__/index.js diff --git a/.vscode/blueprints/Function Component File/__pascalCase_name__.js b/.vscode/blueprints/Component File/__pascalCase_name__.js similarity index 100% rename from .vscode/blueprints/Function Component File/__pascalCase_name__.js rename to .vscode/blueprints/Component File/__pascalCase_name__.js diff --git a/.vscode/blueprints/Function Component Directory/__pascalCase_name__/__pascalCase_name__.module.scss b/.vscode/blueprints/Function Component Directory/__pascalCase_name__/__pascalCase_name__.module.scss deleted file mode 100644 index f835f9ead..000000000 --- a/.vscode/blueprints/Function Component Directory/__pascalCase_name__/__pascalCase_name__.module.scss +++ /dev/null @@ -1,3 +0,0 @@ -.{{camelCase name}} { - -} diff --git a/.vscode/blueprints/Function Component Directory/__pascalCase_name__/index.js b/.vscode/blueprints/Function Component Directory/__pascalCase_name__/index.js deleted file mode 100644 index ad6a9259d..000000000 --- a/.vscode/blueprints/Function Component Directory/__pascalCase_name__/index.js +++ /dev/null @@ -1 +0,0 @@ -export { default } from './{{pascalCase name}}' diff --git a/.vscode/launch.json b/.vscode/launch.json index a19d2947b..4a83342de 100644 --- a/.vscode/launch.json +++ b/.vscode/launch.json @@ -5,24 +5,61 @@ "version": "0.2.0", "configurations": [ { - "name": "Next: Attach Server", + "name": "Attach: Next Server", "type": "node", "request": "attach", - "port": 9229, + "port": 15268, + "presentation": { + "hidden": false, + "group": "", + "order": 0 + } }, { - "name": "Next: Attach Chrome", - "type": "chrome", + "name": "Attach: Edge", + "type": "pwa-msedge", + "request": "attach", + "port": 9223, + "url": "${config:develop.attachurl}", // Custom vscode config property. does not actually exist, but configurable via user config. + "webRoot": "${workspaceFolder}", + "presentation": { + "hidden": false, + "group": "", + "order": 0 + } + }, + { + "name": "Attach: Chrome", + "type": "pwa-chrome", "request": "attach", "port": 9222, - "url": "${config:develop.attachurl}", - "webRoot": "${workspaceFolder}" + "url": "${config:develop.attachurl}", // Custom vscode config property. does not actually exist, but configurable via user config. + "webRoot": "${workspaceFolder}", + "presentation": { + "hidden": false, + "group": "", + "order": 0 + } } ], "compounds": [ { - "name": "Next: Attach", - "configurations": ["Next: Attach Server", "Next: Attach Chrome"] + "name": "Attach: Next & Edge", + "configurations": ["Attach: Next Server", "Attach: Edge"], + "presentation": { + "hidden": false, + "group": "next", + "order": 0 + } + }, + { + "name": "Attach: Next & Chrome", + "configurations": ["Attach: Next Server", "Attach: Chrome"], + "presentation": { + "hidden": false, + "group": "next", + "order": 1 + } } ] } diff --git a/.vscode/settings.json b/.vscode/settings.json index 9f11f4702..35456f1c4 100644 --- a/.vscode/settings.json +++ b/.vscode/settings.json @@ -61,5 +61,4 @@ "stylelint.packageManager": "yarn", "stylelint.reportNeedlessDisables": true, "cSpell.language": "en,en-US", - "develop.attachurl": "http://localhost:3000/" } diff --git a/.yarn/plugins/@yarnpkg/plugin-interactive-tools.cjs b/.yarn/plugins/@yarnpkg/plugin-interactive-tools.cjs index e64e6dda1..527659ff9 100644 --- a/.yarn/plugins/@yarnpkg/plugin-interactive-tools.cjs +++ b/.yarn/plugins/@yarnpkg/plugin-interactive-tools.cjs @@ -1,17 +1,307 @@ /* eslint-disable */ +//prettier-ignore module.exports = { name: "@yarnpkg/plugin-interactive-tools", factory: function (require) { -var plugin;plugin=(()=>{var __webpack_modules__={7560:(e,t,n)=>{"use strict";n.r(t),n.d(t,{default:()=>K});function r(e,t,n,r){var i,o=arguments.length,u=o<3?t:null===r?r=Object.getOwnPropertyDescriptor(t,n):r;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)u=Reflect.decorate(e,t,n,r);else for(var a=e.length-1;a>=0;a--)(i=e[a])&&(u=(o<3?i(u):o>3?i(t,n,u):i(t,n))||u);return o>3&&u&&Object.defineProperty(t,n,u),u}const i=require("@yarnpkg/cli"),o=require("@yarnpkg/core");var u=n(9245),a=n(7382);const l=(0,a.memo)(({active:e})=>{const t=(0,a.useMemo)(()=>e?"◉":"◯",[e]),n=(0,a.useMemo)(()=>e?"green":"yellow",[e]);return a.createElement(u.Text,{color:n},t)});function s({active:e},t,n){const{stdin:r}=(0,u.useStdin)(),i=(0,a.useCallback)((e,n)=>t(e,n),n);(0,a.useEffect)(()=>{if(e&&r)return r.on("keypress",i),()=>{r.off("keypress",i)}},[e,i,r])}var c;!function(e){e.BEFORE="before",e.AFTER="after"}(c||(c={}));const f=function(e,t,{active:n,minus:r,plus:i,set:o,loop:u=!0}){s({active:n},(n,a)=>{const l=t.indexOf(e);switch(a.name){case r:{const e=l-1;if(u)return void o(t[(t.length+e)%t.length]);if(e<0)return;o(t[e])}break;case i:{const e=l+1;if(u)return void o(t[e%t.length]);if(e>=t.length)return;o(t[e])}}},[t,e,i,o,u])},d=({active:e=!0,children:t=[],radius:n=10,size:r=1,loop:i=!0,onFocusRequest:o,willReachEnd:l})=>{const d=a.Children.map(t,e=>(e=>{if(null===e.key)throw new Error("Expected all children to have a key");return e.key})(e)),p=d[0],[h,v]=(0,a.useState)(p),m=d.indexOf(h);(0,a.useEffect)(()=>{d.includes(h)||v(p)},[t]),(0,a.useEffect)(()=>{l&&m>=d.length-2&&l()},[m]),function({active:e},t,n){s({active:e},(e,n)=>{"tab"===n.name&&(n.shift?t(c.BEFORE):t(c.AFTER))},n)}({active:e&&!!o},e=>{null==o||o(e)},[o]),f(h,d,{active:e,minus:"up",plus:"down",set:v,loop:i});let g=m-n,y=m+n;y>d.length&&(g-=y-d.length,y=d.length),g<0&&(y+=-g,g=0),y>=d.length&&(y=d.length-1);const _=[];for(let n=g;n<=y;++n){const i=d[n],o=e&&i===h;_.push(a.createElement(u.Box,{key:i,height:r},a.createElement(u.Box,{marginLeft:1,marginRight:1},a.createElement(u.Text,null,o?a.createElement(u.Text,{color:"cyan",bold:!0},">"):" ")),a.createElement(u.Box,null,a.cloneElement(t[n],{active:o}))))}return a.createElement(u.Box,{flexDirection:"column",width:"100%"},_)},p=require("readline"),h=a.createContext(null),v=({children:e})=>{const{stdin:t,setRawMode:n}=(0,u.useStdin)();(0,a.useEffect)(()=>{n&&n(!0),t&&(0,p.emitKeypressEvents)(t)},[t,n]);const[r,i]=(0,a.useState)(new Map),o=(0,a.useMemo)(()=>({getAll:()=>r,get:e=>r.get(e),set:(e,t)=>i(new Map([...r,[e,t]]))}),[r,i]);return a.createElement(h.Provider,{value:o,children:e})};function m(e,t){const n=(0,a.useContext)(h);if(null===n)throw new Error("Expected this hook to run with a ministore context attached");if(void 0===e)return n.getAll();const r=(0,a.useCallback)(t=>{n.set(e,t)},[e,n.set]);let i=n.get(e);return void 0===i&&(i=t),[i,r]}async function g(e,t){let n;const{waitUntilExit:r}=(0,u.render)(a.createElement(v,null,a.createElement(e,Object.assign({},t,{useSubmit:e=>{const{exit:t}=(0,u.useApp)();s({active:!0},(r,i)=>{"return"===i.name&&(n=e,t())},[t,e])}}))));return await r(),n}const y=require("clipanion");var _=n(7840),b=n(4410);const w={appId:"OFCNCOG2CU",apiKey:"6fe4476ee5a1832882e326b506d14126",indexName:"npm-search"},E=n.n(b)()(w.appId,w.apiKey).initIndex(w.indexName),D=async(e,t=0)=>await E.search(e,{analyticsTags:["yarn-plugin-interactive-tools"],attributesToRetrieve:["name","version","owner","repository","humanDownloadsLast30Days"],page:t,hitsPerPage:10}),S=["regular","dev","peer"];class C extends i.BaseCommand{async execute(){const e=await o.Configuration.find(this.context.cwd,this.context.plugins),t=()=>a.createElement(u.Box,{flexDirection:"row"},a.createElement(u.Box,{flexDirection:"column",width:48},a.createElement(u.Box,null,a.createElement(u.Text,null,"Press ",a.createElement(u.Text,{bold:!0,color:"cyanBright"},""),"/",a.createElement(u.Text,{bold:!0,color:"cyanBright"},"")," to move between packages.")),a.createElement(u.Box,null,a.createElement(u.Text,null,"Press ",a.createElement(u.Text,{bold:!0,color:"cyanBright"},"")," to select a package.")),a.createElement(u.Box,null,a.createElement(u.Text,null,"Press ",a.createElement(u.Text,{bold:!0,color:"cyanBright"},"")," again to change the target."))),a.createElement(u.Box,{flexDirection:"column"},a.createElement(u.Box,{marginLeft:1},a.createElement(u.Text,null,"Press ",a.createElement(u.Text,{bold:!0,color:"cyanBright"},"")," to install the selected packages.")),a.createElement(u.Box,{marginLeft:1},a.createElement(u.Text,null,"Press ",a.createElement(u.Text,{bold:!0,color:"cyanBright"},"")," to abort.")))),n=()=>a.createElement(a.Fragment,null,a.createElement(u.Box,{width:15},a.createElement(u.Text,{bold:!0,underline:!0,color:"gray"},"Owner")),a.createElement(u.Box,{width:11},a.createElement(u.Text,{bold:!0,underline:!0,color:"gray"},"Version")),a.createElement(u.Box,{width:10},a.createElement(u.Text,{bold:!0,underline:!0,color:"gray"},"Downloads"))),r=()=>a.createElement(u.Box,{width:17},a.createElement(u.Text,{bold:!0,underline:!0,color:"gray"},"Target")),i=({hit:t,active:n})=>{const[r,i]=m(t.name,null);s({active:n},(e,t)=>{if("space"!==t.name)return;if(!r)return void i(S[0]);const n=S.indexOf(r)+1;n===S.length?i(null):i(S[n])},[r,i]);const l=o.structUtils.parseIdent(t.name),c=o.structUtils.prettyIdent(e,l);return a.createElement(u.Box,null,a.createElement(u.Box,{width:45},a.createElement(u.Text,{bold:!0,wrap:"wrap"},c)),a.createElement(u.Box,{width:14,marginLeft:1},a.createElement(u.Text,{bold:!0,wrap:"truncate"},t.owner.name)),a.createElement(u.Box,{width:10,marginLeft:1},a.createElement(u.Text,{italic:!0,wrap:"truncate"},t.version)),a.createElement(u.Box,{width:16,marginLeft:1},a.createElement(u.Text,null,t.humanDownloadsLast30Days)))},c=({name:t,active:n})=>{const[r]=m(t,null),i=o.structUtils.parseIdent(t);return a.createElement(u.Box,null,a.createElement(u.Box,{width:47},a.createElement(u.Text,{bold:!0}," - ",o.structUtils.prettyIdent(e,i))),S.map(e=>a.createElement(u.Box,{key:e,width:14,marginLeft:1},a.createElement(u.Text,null," ",a.createElement(l,{active:r===e})," ",a.createElement(u.Text,{bold:!0},e)))))},f=()=>a.createElement(u.Box,{marginTop:1},a.createElement(u.Text,null,"Powered by Algolia.")),p=await g(({useSubmit:e})=>{const o=m();e(o);const l=Array.from(o.keys()).filter(e=>null!==o.get(e)),[s,p]=(0,a.useState)(""),[h,v]=(0,a.useState)(0),[g,y]=(0,a.useState)([]);return(0,a.useEffect)(()=>{s?(async()=>{v(0);const e=await D(s);e.query===s&&y(e.hits)})():y([])},[s]),a.createElement(u.Box,{flexDirection:"column"},a.createElement(t,null),a.createElement(u.Box,{flexDirection:"row",marginTop:1},a.createElement(u.Text,{bold:!0},"Search: "),a.createElement(u.Box,{width:41},a.createElement(_.ZP,{value:s,onChange:e=>{e.match(/\t| /)||p(e)},placeholder:"i.e. babel, webpack, react...",showCursor:!1})),a.createElement(n,null)),g.length?a.createElement(d,{radius:2,loop:!1,children:g.map(e=>a.createElement(i,{key:e.name,hit:e,active:!1})),willReachEnd:async()=>{const e=await D(s,h+1);e.query===s&&e.page-1===h&&(v(e.page),y([...g,...e.hits]))}}):a.createElement(u.Text,{color:"gray"},"Start typing..."),a.createElement(u.Box,{flexDirection:"row",marginTop:1},a.createElement(u.Box,{width:49},a.createElement(u.Text,{bold:!0},"Selected:")),a.createElement(r,null)),l.length?l.map(e=>a.createElement(c,{key:e,name:e,active:!1})):a.createElement(u.Text,{color:"gray"},"No selected packages..."),a.createElement(f,null))},{});if(void 0===p)return 1;const h=Array.from(p.keys()).filter(e=>"regular"===p.get(e)),v=Array.from(p.keys()).filter(e=>"dev"===p.get(e)),y=Array.from(p.keys()).filter(e=>"peer"===p.get(e));return h.length&&await this.cli.run(["add",...h]),v.length&&await this.cli.run(["add","--dev",...v]),y&&await this.cli.run(["add","--peer",...y]),0}}C.usage=y.Command.Usage({category:"Interactive commands",description:"open the search interface",details:"\n This command opens a fullscreen terminal interface where you can search for and install packages from the npm registry.\n ",examples:[["Open the search window","yarn search"]]}),r([y.Command.Path("search")],C.prototype,"execute",null);var k=n(5882),T=n.n(k);const x=({length:e,active:t})=>{if(0===e)return null;const n=e>1?" "+T().underline(" ".repeat(e-1)):" ";return a.createElement(u.Text,{dimColor:!t},n)},A=function({active:e,skewer:t,options:n,value:r,onChange:i,sizes:o=[]}){const s=n.map(({value:e})=>e),c=s.indexOf(r);return f(r,s,{active:e,minus:"left",plus:"right",set:i}),a.createElement(a.Fragment,null,n.map(({label:n},r)=>{const i=r===c,s=o[r]-1||0,f=n.replace(/[\u001b\u009b][[()#;?]*(?:[0-9]{1,4}(?:;[0-9]{0,4})*)?[0-9A-ORZcf-nqry=><]/g,""),d=Math.max(0,s-f.length-2);return a.createElement(u.Box,{key:n,width:s,marginLeft:1},a.createElement(u.Text,{wrap:"truncate"},a.createElement(l,{active:i})," ",n),t?a.createElement(x,{active:e,length:d}):null)}))},O=require("@yarnpkg/plugin-essentials");function P(){}function I(e,t,n,r,i){for(var o=0,u=t.length,a=0,l=0;oe.length?n:e})),s.value=e.join(f)}else s.value=e.join(n.slice(a,a+s.count));a+=s.count,s.added||(l+=s.count)}}var d=t[u-1];return u>1&&"string"==typeof d.value&&(d.added||d.removed)&&e.equals("",d.value)&&(t[u-2].value+=d.value,t.pop()),t}function N(e){return{newPos:e.newPos,components:e.components.slice(0)}}P.prototype={diff:function(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},r=n.callback;"function"==typeof n&&(r=n,n={}),this.options=n;var i=this;function o(e){return r?(setTimeout((function(){r(void 0,e)}),0),!0):e}e=this.castInput(e),t=this.castInput(t),e=this.removeEmpty(this.tokenize(e));var u=(t=this.removeEmpty(this.tokenize(t))).length,a=e.length,l=1,s=u+a,c=[{newPos:-1,components:[]}],f=this.extractCommon(c[0],t,e,0);if(c[0].newPos+1>=u&&f+1>=a)return o([{value:this.join(t),count:t.length}]);function d(){for(var n=-1*l;n<=l;n+=2){var r=void 0,s=c[n-1],f=c[n+1],d=(f?f.newPos:0)-n;s&&(c[n-1]=void 0);var p=s&&s.newPos+1=u&&d+1>=a)return o(I(i,r.components,t,e,i.useLongestToken));c[n]=r}else c[n]=void 0}l++}if(r)!function e(){setTimeout((function(){if(l>s)return r();d()||e()}),0)}();else for(;l<=s;){var p=d();if(p)return p}},pushComponent:function(e,t,n){var r=e[e.length-1];r&&r.added===t&&r.removed===n?e[e.length-1]={count:r.count+1,added:t,removed:n}:e.push({count:1,added:t,removed:n})},extractCommon:function(e,t,n,r){for(var i=t.length,o=n.length,u=e.newPos,a=u-r,l=0;u+1=?)?)([0-9]+)(\.[0-9]+)(\.[0-9]+)((?:-\S+)?)$/;class Y extends i.BaseCommand{async execute(){const e=await o.Configuration.find(this.context.cwd,this.context.plugins),{project:t,workspace:n}=await o.Project.find(e,this.context.cwd),r=await o.Cache.find(e);if(!n)throw new i.WorkspaceRequiredError(t.cwd,this.context.cwd);const l=(t,n)=>{const r=(i=t,u=n,a=M(a,{ignoreWhitespace:!0}),L.diff(i,u,a));var i,u,a;let l="";for(const t of r)t.added?l+=o.formatUtils.pretty(e,t.value,"green"):t.removed||(l+=t.value);return l},s=(t,n)=>{if(t===n)return n;const r=o.structUtils.parseRange(t),i=o.structUtils.parseRange(n),u=r.selector.match($),a=i.selector.match($);if(!u||!a)return l(t,n);const s=["gray","red","yellow","green","magenta"];let c=null,f="";for(let t=1;t{const u=await O.suggestUtils.fetchDescriptorFrom(e,o,{project:t,cache:r,preserveModifier:i,workspace:n});return null!==u?u.range:e.range},f=()=>a.createElement(u.Box,{flexDirection:"row"},a.createElement(u.Box,{flexDirection:"column",width:49},a.createElement(u.Box,{marginLeft:1},a.createElement(u.Text,null,"Press ",a.createElement(u.Text,{bold:!0,color:"cyanBright"},""),"/",a.createElement(u.Text,{bold:!0,color:"cyanBright"},"")," to select packages.")),a.createElement(u.Box,{marginLeft:1},a.createElement(u.Text,null,"Press ",a.createElement(u.Text,{bold:!0,color:"cyanBright"},""),"/",a.createElement(u.Text,{bold:!0,color:"cyanBright"},"")," to select versions."))),a.createElement(u.Box,{flexDirection:"column"},a.createElement(u.Box,{marginLeft:1},a.createElement(u.Text,null,"Press ",a.createElement(u.Text,{bold:!0,color:"cyanBright"},"")," to install.")),a.createElement(u.Box,{marginLeft:1},a.createElement(u.Text,null,"Press ",a.createElement(u.Text,{bold:!0,color:"cyanBright"},"")," to abort.")))),p=()=>a.createElement(u.Box,{flexDirection:"row",paddingTop:1,paddingBottom:1},a.createElement(u.Box,{width:50},a.createElement(u.Text,{bold:!0},a.createElement(u.Text,{color:"greenBright"},"?")," Pick the packages you want to upgrade.")),a.createElement(u.Box,{width:17},a.createElement(u.Text,{bold:!0,underline:!0,color:"gray"},"Current")),a.createElement(u.Box,{width:17},a.createElement(u.Text,{bold:!0,underline:!0,color:"gray"},"Range")),a.createElement(u.Box,{width:17},a.createElement(u.Text,{bold:!0,underline:!0,color:"gray"},"Latest"))),h=({active:t,descriptor:n,suggestions:r})=>{const[i,l]=m(n.descriptorHash,null),s=o.structUtils.stringifyIdent(n),c=Math.max(0,45-s.length);return a.createElement(a.Fragment,null,a.createElement(u.Box,null,a.createElement(u.Box,{width:45},a.createElement(u.Text,{bold:!0},o.structUtils.prettyIdent(e,n)),a.createElement(x,{active:t,length:c})),null!==r?a.createElement(A,{active:t,options:r,value:i,skewer:!0,onChange:l,sizes:[17,17,17]}):a.createElement(u.Box,{marginLeft:2},a.createElement(u.Text,{color:"gray"},"Fetching suggestions..."))))},v=({dependencies:e})=>{const[t,n]=(0,a.useState)(null),r=(0,a.useRef)(!0);return(0,a.useEffect)(()=>()=>{r.current=!1}),(0,a.useEffect)(()=>{Promise.all(e.map(e=>(async e=>{const t=G().valid(e.range)?"^"+e.range:e.range,[n,r]=await Promise.all([c(e,e.range,t).catch(()=>null),c(e,e.range,"latest").catch(()=>null)]),i=[{value:null,label:e.range}];return n&&n!==e.range&&i.push({value:n,label:s(e.range,n)}),r&&r!==n&&r!==e.range&&i.push({value:r,label:s(e.range,r)}),i})(e))).then(t=>{const i=e.map((e,n)=>[e,t[n]]).filter(([e,t])=>t.length>1);r.current&&n(i)})},[]),t?t.length?a.createElement(d,{radius:10,children:t.map(([e,t])=>a.createElement(h,{key:e.descriptorHash,active:!1,descriptor:e,suggestions:t}))}):a.createElement(u.Text,null,"No upgrades found"):a.createElement(u.Text,null,"Fetching suggestions...")},y=await g(({useSubmit:e})=>{e(m());const n=new Map;for(const e of t.workspaces)for(const r of["dependencies","devDependencies"])for(const i of e.manifest[r].values())null===t.tryWorkspaceByDescriptor(i)&&n.set(i.descriptorHash,i);const r=o.miscUtils.sortMap(n.values(),e=>o.structUtils.stringifyDescriptor(e));return a.createElement(u.Box,{flexDirection:"column"},a.createElement(f,null),a.createElement(p,null),a.createElement(v,{dependencies:r}))},{});if(void 0===y)return 1;let _=!1;for(const e of t.workspaces)for(const t of["dependencies","devDependencies"]){const n=e.manifest[t];for(const e of n.values()){const t=y.get(e.descriptorHash);null!=t&&(n.set(e.identHash,o.structUtils.makeDescriptor(e,t)),_=!0)}}if(!_)return 0;return(await o.StreamReport.start({configuration:e,stdout:this.context.stdout,includeLogs:!this.context.quiet},async e=>{await t.install({cache:r,report:e})})).exitCode()}}Y.usage=y.Command.Usage({category:"Interactive commands",description:"open the upgrade interface",details:"\n This command opens a fullscreen terminal interface where you can see any out of date packages used by your application, their status compared to the latest versions available on the remote registry, and select packages to upgrade.\n ",examples:[["Open the upgrade window","yarn upgrade-interactive"]]}),r([y.Command.Path("upgrade-interactive")],Y.prototype,"execute",null);const K={commands:[C,Y]}},7840:(e,t,n)=>{"use strict";const r=n(7382),i=n(7382),o=n(9245),u=n(1525),a=({value:e,placeholder:t="",focus:n=!0,mask:a,highlightPastedText:l=!1,showCursor:s=!0,onChange:c,onSubmit:f})=>{const[{cursorOffset:d,cursorWidth:p},h]=i.useState({cursorOffset:(e||"").length,cursorWidth:0});i.useEffect(()=>{h(t=>{if(!n||!s)return t;const r=e||"";return t.cursorOffset>r.length-1?{cursorOffset:r.length,cursorWidth:0}:t})},[e,n,s]);const v=l?p:0,m=a?a.repeat(e.length):e;let g=m,y=t?u.grey(t):void 0;if(s&&n){y=t.length>0?u.inverse(t[0])+u.grey(t.slice(1)):u.inverse(" "),g=m.length>0?"":u.inverse(" ");let e=0;for(const t of m)g+=e>=d-v&&e<=d?u.inverse(t):t,e++;m.length>0&&d===m.length&&(g+=u.inverse(" "))}return o.useInput((t,n)=>{if(n.upArrow||n.downArrow||n.ctrl&&"c"===t||n.tab||n.shift&&n.tab)return;if(n.return)return void(f&&f(e));let r=d,i=e,o=0;n.leftArrow?s&&r--:n.rightArrow?s&&r++:n.backspace||n.delete?d>0&&(i=e.slice(0,d-1)+e.slice(d,e.length),r--):(i=e.slice(0,d)+t+e.slice(d,e.length),r+=t.length,t.length>1&&(o=t.length)),d<0&&(r=0),d>e.length&&(r=e.length),h({cursorOffset:r,cursorWidth:o}),i!==e&&c(i)},{isActive:n}),r.createElement(o.Text,null,t?m.length>0?g:y:g)};t.ZP=a},9902:function(e,t,n){"use strict";var r=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});const i=r(n(1525)),o=/^(rgb|hsl|hsv|hwb)\(\s?(\d+),\s?(\d+),\s?(\d+)\s?\)$/,u=/^(ansi|ansi256)\(\s?(\d+)\s?\)$/,a=(e,t)=>"foreground"===t?e:"bg"+e[0].toUpperCase()+e.slice(1);t.default=(e,t,n)=>{if(!t)return e;if(t in i.default){const r=a(t,n);return i.default[r](e)}if(t.startsWith("#")){const r=a("hex",n);return i.default[r](t)(e)}if(t.startsWith("ansi")){const r=u.exec(t);if(!r)return e;const o=a(r[1],n),l=Number(r[2]);return i.default[o](l)(e)}if(t.startsWith("rgb")||t.startsWith("hsl")||t.startsWith("hsv")||t.startsWith("hwb")){const r=o.exec(t);if(!r)return e;const u=a(r[1],n),l=Number(r[2]),s=Number(r[3]),c=Number(r[4]);return i.default[u](l,s,c)(e)}return e}},2773:function(e,t,n){"use strict";var r=this&&this.__createBinding||(Object.create?function(e,t,n,r){void 0===r&&(r=n),Object.defineProperty(e,r,{enumerable:!0,get:function(){return t[n]}})}:function(e,t,n,r){void 0===r&&(r=n),e[r]=t[n]}),i=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),o=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var n in e)"default"!==n&&Object.hasOwnProperty.call(e,n)&&r(t,e,n);return i(t,e),t},u=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});const a=o(n(7382)),l=u(n(1696)),s=u(n(5512)),c=u(n(1489)),f=u(n(6834)),d=u(n(5001)),p=u(n(2560)),h=u(n(9052));class v extends a.PureComponent{constructor(){super(...arguments),this.state={isFocusEnabled:!0,activeFocusId:void 0,focusables:[],error:void 0},this.rawModeEnabledCount=0,this.handleSetRawMode=e=>{const{stdin:t}=this.props;if(!this.isRawModeSupported())throw t===process.stdin?new Error("Raw mode is not supported on the current process.stdin, which Ink uses as input stream by default.\nRead about how to prevent this error on https://github.com/vadimdemedes/ink/#israwmodesupported"):new Error("Raw mode is not supported on the stdin provided to Ink.\nRead about how to prevent this error on https://github.com/vadimdemedes/ink/#israwmodesupported");if(t.setEncoding("utf8"),e)return 0===this.rawModeEnabledCount&&(t.addListener("data",this.handleInput),t.resume(),t.setRawMode(!0)),void this.rawModeEnabledCount++;0==--this.rawModeEnabledCount&&(t.setRawMode(!1),t.removeListener("data",this.handleInput),t.pause())},this.handleInput=e=>{""===e&&this.props.exitOnCtrlC&&this.handleExit(),""===e&&this.state.activeFocusId&&this.setState({activeFocusId:void 0}),this.state.isFocusEnabled&&this.state.focusables.length>0&&("\t"===e&&this.focusNext(),""===e&&this.focusPrevious())},this.handleExit=e=>{this.isRawModeSupported()&&this.handleSetRawMode(!1),this.props.onExit(e)},this.enableFocus=()=>{this.setState({isFocusEnabled:!0})},this.disableFocus=()=>{this.setState({isFocusEnabled:!1})},this.focusNext=()=>{this.setState(e=>{const t=e.focusables[0].id;return{activeFocusId:this.findNextFocusable(e)||t}})},this.focusPrevious=()=>{this.setState(e=>{const t=e.focusables[e.focusables.length-1].id;return{activeFocusId:this.findPreviousFocusable(e)||t}})},this.addFocusable=(e,{autoFocus:t})=>{this.setState(n=>{let r=n.activeFocusId;return!r&&t&&(r=e),{activeFocusId:r,focusables:[...n.focusables,{id:e,isActive:!0}]}})},this.removeFocusable=e=>{this.setState(t=>({activeFocusId:t.activeFocusId===e?void 0:t.activeFocusId,focusables:t.focusables.filter(t=>t.id!==e)}))},this.activateFocusable=e=>{this.setState(t=>({focusables:t.focusables.map(t=>t.id!==e?t:{id:e,isActive:!0})}))},this.deactivateFocusable=e=>{this.setState(t=>({activeFocusId:t.activeFocusId===e?void 0:t.activeFocusId,focusables:t.focusables.map(t=>t.id!==e?t:{id:e,isActive:!1})}))},this.findNextFocusable=e=>{for(let t=e.focusables.findIndex(t=>t.id===e.activeFocusId)+1;t{for(let t=e.focusables.findIndex(t=>t.id===e.activeFocusId)-1;t>=0;t--)if(e.focusables[t].isActive)return e.focusables[t].id}}static getDerivedStateFromError(e){return{error:e}}isRawModeSupported(){return this.props.stdin.isTTY}render(){return a.default.createElement(s.default.Provider,{value:{exit:this.handleExit}},a.default.createElement(c.default.Provider,{value:{stdin:this.props.stdin,setRawMode:this.handleSetRawMode,isRawModeSupported:this.isRawModeSupported(),internal_exitOnCtrlC:this.props.exitOnCtrlC}},a.default.createElement(f.default.Provider,{value:{stdout:this.props.stdout,write:this.props.writeToStdout}},a.default.createElement(d.default.Provider,{value:{stderr:this.props.stderr,write:this.props.writeToStderr}},a.default.createElement(p.default.Provider,{value:{activeId:this.state.activeFocusId,add:this.addFocusable,remove:this.removeFocusable,activate:this.activateFocusable,deactivate:this.deactivateFocusable,enableFocus:this.enableFocus,disableFocus:this.disableFocus,focusNext:this.focusNext,focusPrevious:this.focusPrevious}},this.state.error?a.default.createElement(h.default,{error:this.state.error}):this.props.children)))))}componentDidMount(){l.default.hide(this.props.stdout)}componentWillUnmount(){l.default.show(this.props.stdout),this.isRawModeSupported()&&this.handleSetRawMode(!1)}componentDidCatch(e){this.handleExit(e)}}t.default=v,v.displayName="InternalApp"},5512:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});const r=n(7382).createContext({exit:()=>{}});r.displayName="InternalAppContext",t.default=r},5277:function(e,t,n){"use strict";var r=this&&this.__createBinding||(Object.create?function(e,t,n,r){void 0===r&&(r=n),Object.defineProperty(e,r,{enumerable:!0,get:function(){return t[n]}})}:function(e,t,n,r){void 0===r&&(r=n),e[r]=t[n]}),i=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),o=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var n in e)"default"!==n&&Object.hasOwnProperty.call(e,n)&&r(t,e,n);return i(t,e),t},u=this&&this.__rest||function(e,t){var n={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols){var i=0;for(r=Object.getOwnPropertySymbols(e);i{var{children:n}=e,r=u(e,["children"]);const i=Object.assign(Object.assign({},r),{marginLeft:r.marginLeft||r.marginX||r.margin||0,marginRight:r.marginRight||r.marginX||r.margin||0,marginTop:r.marginTop||r.marginY||r.margin||0,marginBottom:r.marginBottom||r.marginY||r.margin||0,paddingLeft:r.paddingLeft||r.paddingX||r.padding||0,paddingRight:r.paddingRight||r.paddingX||r.padding||0,paddingTop:r.paddingTop||r.paddingY||r.padding||0,paddingBottom:r.paddingBottom||r.paddingY||r.padding||0});return a.default.createElement("ink-box",{ref:t,style:i},n)});l.displayName="Box",l.defaultProps={flexDirection:"row",flexGrow:0,flexShrink:1},t.default=l},9052:function(e,t,n){"use strict";var r=this&&this.__createBinding||(Object.create?function(e,t,n,r){void 0===r&&(r=n),Object.defineProperty(e,r,{enumerable:!0,get:function(){return t[n]}})}:function(e,t,n,r){void 0===r&&(r=n),e[r]=t[n]}),i=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),o=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var n in e)"default"!==n&&Object.hasOwnProperty.call(e,n)&&r(t,e,n);return i(t,e),t},u=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});const a=o(n(5747)),l=u(n(7382)),s=u(n(9796)),c=u(n(9908)),f=u(n(5277)),d=u(n(9146)),p=new s.default({cwd:process.cwd(),internals:s.default.nodeInternals()});t.default=({error:e})=>{const t=e.stack?e.stack.split("\n").slice(1):void 0,n=t?p.parseLine(t[0]):void 0;let r,i=0;if((null==n?void 0:n.file)&&(null==n?void 0:n.line)&&a.existsSync(n.file)){const e=a.readFileSync(n.file,"utf8");if(r=c.default(e,n.line),r)for(const{line:e}of r)i=Math.max(i,String(e).length)}return l.default.createElement(f.default,{flexDirection:"column",padding:1},l.default.createElement(f.default,null,l.default.createElement(d.default,{backgroundColor:"red",color:"white"}," ","ERROR"," "),l.default.createElement(d.default,null," ",e.message)),n&&l.default.createElement(f.default,{marginTop:1},l.default.createElement(d.default,{dimColor:!0},n.file,":",n.line,":",n.column)),n&&r&&l.default.createElement(f.default,{marginTop:1,flexDirection:"column"},r.map(({line:e,value:t})=>l.default.createElement(f.default,{key:e},l.default.createElement(f.default,{width:i+1},l.default.createElement(d.default,{dimColor:e!==n.line,backgroundColor:e===n.line?"red":void 0,color:e===n.line?"white":void 0},String(e).padStart(i," "),":")),l.default.createElement(d.default,{key:e,backgroundColor:e===n.line?"red":void 0,color:e===n.line?"white":void 0}," "+t)))),e.stack&&l.default.createElement(f.default,{marginTop:1,flexDirection:"column"},e.stack.split("\n").slice(1).map(e=>{const t=p.parseLine(e);return t?l.default.createElement(f.default,{key:e},l.default.createElement(d.default,{dimColor:!0},"- "),l.default.createElement(d.default,{dimColor:!0,bold:!0},t.function),l.default.createElement(d.default,{dimColor:!0,color:"gray"}," ","(",t.file,":",t.line,":",t.column,")")):l.default.createElement(f.default,{key:e},l.default.createElement(d.default,{dimColor:!0},"- "),l.default.createElement(d.default,{dimColor:!0,bold:!0},e))})))}},2560:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});const r=n(7382).createContext({activeId:void 0,add:()=>{},remove:()=>{},activate:()=>{},deactivate:()=>{},enableFocus:()=>{},disableFocus:()=>{},focusNext:()=>{},focusPrevious:()=>{}});r.displayName="InternalFocusContext",t.default=r},8200:function(e,t,n){"use strict";var r=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});const i=r(n(7382)),o=({count:e=1})=>i.default.createElement("ink-text",null,"\n".repeat(e));o.displayName="Newline",t.default=o},2198:function(e,t,n){"use strict";var r=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});const i=r(n(7382)),o=r(n(5277)),u=()=>i.default.createElement(o.default,{flexGrow:1});u.displayName="Spacer",t.default=u},8915:function(e,t,n){"use strict";var r=this&&this.__createBinding||(Object.create?function(e,t,n,r){void 0===r&&(r=n),Object.defineProperty(e,r,{enumerable:!0,get:function(){return t[n]}})}:function(e,t,n,r){void 0===r&&(r=n),e[r]=t[n]}),i=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),o=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var n in e)"default"!==n&&Object.hasOwnProperty.call(e,n)&&r(t,e,n);return i(t,e),t};Object.defineProperty(t,"__esModule",{value:!0});const u=o(n(7382)),a=e=>{const{items:t,children:n,style:r}=e,[i,o]=u.useState(0),a=u.useMemo(()=>t.slice(i),[t,i]);u.useLayoutEffect(()=>{o(t.length)},[t.length]);const l=a.map((e,t)=>n(e,i+t)),s=u.useMemo(()=>Object.assign({position:"absolute",flexDirection:"column"},r),[r]);return u.default.createElement("ink-box",{internal_static:!0,style:s},l)};a.displayName="Static",t.default=a},5001:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});const r=n(7382).createContext({stderr:void 0,write:()=>{}});r.displayName="InternalStderrContext",t.default=r},1489:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});const r=n(7382).createContext({stdin:void 0,setRawMode:()=>{},isRawModeSupported:!1,internal_exitOnCtrlC:!0});r.displayName="InternalStdinContext",t.default=r},6834:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});const r=n(7382).createContext({stdout:void 0,write:()=>{}});r.displayName="InternalStdoutContext",t.default=r},9146:function(e,t,n){"use strict";var r=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});const i=r(n(7382)),o=r(n(1525)),u=r(n(9902)),a=({color:e,backgroundColor:t,dimColor:n,bold:r,italic:a,underline:l,strikethrough:s,inverse:c,wrap:f,children:d})=>{if(null==d)return null;return i.default.createElement("ink-text",{style:{flexGrow:0,flexShrink:1,flexDirection:"row",textWrap:f},internal_transform:i=>(n&&(i=o.default.dim(i)),e&&(i=u.default(i,e,"foreground")),t&&(i=u.default(i,t,"background")),r&&(i=o.default.bold(i)),a&&(i=o.default.italic(i)),l&&(i=o.default.underline(i)),s&&(i=o.default.strikethrough(i)),c&&(i=o.default.inverse(i)),i)},d)};a.displayName="Text",a.defaultProps={dimColor:!1,bold:!1,italic:!1,underline:!1,strikethrough:!1,wrap:"wrap"},t.default=a},4592:function(e,t,n){"use strict";var r=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});const i=r(n(7382)),o=({children:e,transform:t})=>null==e?null:i.default.createElement("ink-text",{style:{flexGrow:0,flexShrink:1,flexDirection:"row"},internal_transform:t},e);o.displayName="Transform",t.default=o},146:function(e,t,n){"use strict";var r=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});const i=r(n(3296)),o=n(5187),u=global;u.WebSocket||(u.WebSocket=i.default),u.window||(u.window=global),u.window.__REACT_DEVTOOLS_COMPONENT_FILTERS__=[{type:1,value:7,isEnabled:!0},{type:2,value:"InternalApp",isEnabled:!0,isValid:!0},{type:2,value:"InternalAppContext",isEnabled:!0,isValid:!0},{type:2,value:"InternalStdoutContext",isEnabled:!0,isValid:!0},{type:2,value:"InternalStderrContext",isEnabled:!0,isValid:!0},{type:2,value:"InternalStdinContext",isEnabled:!0,isValid:!0},{type:2,value:"InternalFocusContext",isEnabled:!0,isValid:!0}],o.connectToDevTools()},9864:function(e,t,n){"use strict";var r=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.setTextNodeValue=t.createTextNode=t.setStyle=t.setAttribute=t.removeChildNode=t.insertBeforeNode=t.appendChildNode=t.createNode=t.TEXT_NAME=void 0;const i=r(n(6401)),o=r(n(8113)),u=r(n(5809)),a=r(n(2030)),l=r(n(9099));t.TEXT_NAME="#text",t.createNode=e=>{var t;const n={nodeName:e,style:{},attributes:{},childNodes:[],parentNode:null,yogaNode:"ink-virtual-text"===e?void 0:i.default.Node.create()};return"ink-text"===e&&(null===(t=n.yogaNode)||void 0===t||t.setMeasureFunc(s.bind(null,n))),n},t.appendChildNode=(e,n)=>{var r;n.parentNode&&t.removeChildNode(n.parentNode,n),n.parentNode=e,e.childNodes.push(n),n.yogaNode&&(null===(r=e.yogaNode)||void 0===r||r.insertChild(n.yogaNode,e.yogaNode.getChildCount())),"ink-text"!==e.nodeName&&"ink-virtual-text"!==e.nodeName||f(e)},t.insertBeforeNode=(e,n,r)=>{var i,o;n.parentNode&&t.removeChildNode(n.parentNode,n),n.parentNode=e;const u=e.childNodes.indexOf(r);if(u>=0)return e.childNodes.splice(u,0,n),void(n.yogaNode&&(null===(i=e.yogaNode)||void 0===i||i.insertChild(n.yogaNode,u)));e.childNodes.push(n),n.yogaNode&&(null===(o=e.yogaNode)||void 0===o||o.insertChild(n.yogaNode,e.yogaNode.getChildCount())),"ink-text"!==e.nodeName&&"ink-virtual-text"!==e.nodeName||f(e)},t.removeChildNode=(e,t)=>{var n,r;t.yogaNode&&(null===(r=null===(n=t.parentNode)||void 0===n?void 0:n.yogaNode)||void 0===r||r.removeChild(t.yogaNode)),t.parentNode=null;const i=e.childNodes.indexOf(t);i>=0&&e.childNodes.splice(i,1),"ink-text"!==e.nodeName&&"ink-virtual-text"!==e.nodeName||f(e)},t.setAttribute=(e,t,n)=>{e.attributes[t]=n},t.setStyle=(e,t)=>{e.style=t,e.yogaNode&&u.default(e.yogaNode,t)},t.createTextNode=e=>{const n={nodeName:"#text",nodeValue:e,yogaNode:void 0,parentNode:null,style:{}};return t.setTextNodeValue(n,e),n};const s=function(e,t){var n,r;const i="#text"===e.nodeName?e.nodeValue:l.default(e),u=o.default(i);if(u.width<=t)return u;if(u.width>=1&&t>0&&t<1)return u;const s=null!==(r=null===(n=e.style)||void 0===n?void 0:n.textWrap)&&void 0!==r?r:"wrap",c=a.default(i,t,s);return o.default(c)},c=e=>{var t;if(e&&e.parentNode)return null!==(t=e.yogaNode)&&void 0!==t?t:c(e.parentNode)},f=e=>{const t=c(e);null==t||t.markDirty()};t.setTextNodeValue=(e,t)=>{"string"!=typeof t&&(t=String(t)),e.nodeValue=t,f(e)}},317:function(e,t,n){"use strict";var r=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});const i=r(n(6401));t.default=e=>e.getComputedWidth()-e.getComputedPadding(i.default.EDGE_LEFT)-e.getComputedPadding(i.default.EDGE_RIGHT)-e.getComputedBorder(i.default.EDGE_LEFT)-e.getComputedBorder(i.default.EDGE_RIGHT)},4699:function(e,t,n){"use strict";var r=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});const i=n(7382),o=r(n(5512));t.default=()=>i.useContext(o.default)},5442:function(e,t,n){"use strict";var r=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});const i=n(7382),o=r(n(2560));t.default=()=>{const e=i.useContext(o.default);return{enableFocus:e.enableFocus,disableFocus:e.disableFocus,focusNext:e.focusNext,focusPrevious:e.focusPrevious}}},8230:function(e,t,n){"use strict";var r=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});const i=n(7382),o=r(n(2560)),u=r(n(1541));t.default=({isActive:e=!0,autoFocus:t=!1}={})=>{const{isRawModeSupported:n,setRawMode:r}=u.default(),{activeId:a,add:l,remove:s,activate:c,deactivate:f}=i.useContext(o.default),d=i.useMemo(()=>Math.random().toString().slice(2,7),[]);return i.useEffect(()=>(l(d,{autoFocus:t}),()=>{s(d)}),[d,t]),i.useEffect(()=>{e?c(d):f(d)},[e,d]),i.useEffect(()=>{if(n&&e)return r(!0),()=>{r(!1)}},[e]),{isFocused:Boolean(d)&&a===d}}},4495:function(e,t,n){"use strict";var r=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});const i=n(7382),o=r(n(1541));t.default=(e,t={})=>{const{stdin:n,setRawMode:r,internal_exitOnCtrlC:u}=o.default();i.useEffect(()=>{if(!1!==t.isActive)return r(!0),()=>{r(!1)}},[t.isActive,r]),i.useEffect(()=>{if(!1===t.isActive)return;const r=t=>{let n=String(t);const r={upArrow:""===n,downArrow:""===n,leftArrow:""===n,rightArrow:""===n,pageDown:"[6~"===n,pageUp:"[5~"===n,return:"\r"===n,escape:""===n,ctrl:!1,shift:!1,tab:"\t"===n||""===n,backspace:"\b"===n,delete:""===n||"[3~"===n,meta:!1};n<=""&&!r.return&&(n=String.fromCharCode(n.charCodeAt(0)+"a".charCodeAt(0)-1),r.ctrl=!0),n.startsWith("")&&(n=n.slice(1),r.meta=!0);const i=n>="A"&&n<="Z",o=n>="А"&&n<="Я";1===n.length&&(i||o)&&(r.shift=!0),r.tab&&"[Z"===n&&(r.shift=!0),(r.tab||r.backspace||r.delete)&&(n=""),"c"===n&&r.ctrl&&u||e(n,r)};return null==n||n.on("data",r),()=>{null==n||n.off("data",r)}},[t.isActive,n,u,e])}},1686:function(e,t,n){"use strict";var r=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});const i=n(7382),o=r(n(5001));t.default=()=>i.useContext(o.default)},1541:function(e,t,n){"use strict";var r=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});const i=n(7382),o=r(n(1489));t.default=()=>i.useContext(o.default)},9890:function(e,t,n){"use strict";var r=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});const i=n(7382),o=r(n(6834));t.default=()=>i.useContext(o.default)},9245:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(9417);Object.defineProperty(t,"render",{enumerable:!0,get:function(){return r.default}});var i=n(5277);Object.defineProperty(t,"Box",{enumerable:!0,get:function(){return i.default}});var o=n(9146);Object.defineProperty(t,"Text",{enumerable:!0,get:function(){return o.default}});var u=n(8915);Object.defineProperty(t,"Static",{enumerable:!0,get:function(){return u.default}});var a=n(4592);Object.defineProperty(t,"Transform",{enumerable:!0,get:function(){return a.default}});var l=n(8200);Object.defineProperty(t,"Newline",{enumerable:!0,get:function(){return l.default}});var s=n(2198);Object.defineProperty(t,"Spacer",{enumerable:!0,get:function(){return s.default}});var c=n(4495);Object.defineProperty(t,"useInput",{enumerable:!0,get:function(){return c.default}});var f=n(4699);Object.defineProperty(t,"useApp",{enumerable:!0,get:function(){return f.default}});var d=n(1541);Object.defineProperty(t,"useStdin",{enumerable:!0,get:function(){return d.default}});var p=n(9890);Object.defineProperty(t,"useStdout",{enumerable:!0,get:function(){return p.default}});var h=n(1686);Object.defineProperty(t,"useStderr",{enumerable:!0,get:function(){return h.default}});var v=n(8230);Object.defineProperty(t,"useFocus",{enumerable:!0,get:function(){return v.default}});var m=n(5442);Object.defineProperty(t,"useFocusManager",{enumerable:!0,get:function(){return m.default}});var g=n(3887);Object.defineProperty(t,"measureElement",{enumerable:!0,get:function(){return g.default}})},3206:function(e,t,n){"use strict";var r=this&&this.__createBinding||(Object.create?function(e,t,n,r){void 0===r&&(r=n),Object.defineProperty(e,r,{enumerable:!0,get:function(){return t[n]}})}:function(e,t,n,r){void 0===r&&(r=n),e[r]=t[n]}),i=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),o=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var n in e)"default"!==n&&Object.hasOwnProperty.call(e,n)&&r(t,e,n);return i(t,e),t},u=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});const a=u(n(7382)),l=n(464),s=u(n(503)),c=u(n(7589)),f=u(n(2738)),d=u(n(2633)),p=u(n(5117)),h=u(n(5691)),v=u(n(6458)),m=u(n(8070)),g=o(n(9864)),y=u(n(9679)),_=u(n(2773)),b="false"!==process.env.CI&&f.default,w=()=>{};t.default=class{constructor(e){this.resolveExitPromise=()=>{},this.rejectExitPromise=()=>{},this.unsubscribeExit=()=>{},this.onRender=()=>{if(this.isUnmounted)return;const{output:e,outputHeight:t,staticOutput:n}=h.default(this.rootNode,this.options.stdout.columns||80),r=n&&"\n"!==n;return this.options.debug?(r&&(this.fullStaticOutput+=n),void this.options.stdout.write(this.fullStaticOutput+e)):b?(r&&this.options.stdout.write(n),void(this.lastOutput=e)):(r&&(this.fullStaticOutput+=n),t>=this.options.stdout.rows?(this.options.stdout.write(c.default.clearTerminal+this.fullStaticOutput+e),void(this.lastOutput=e)):(r&&(this.log.clear(),this.options.stdout.write(n),this.log(e)),r||e===this.lastOutput||this.throttledLog(e),void(this.lastOutput=e)))},d.default(this),this.options=e,this.rootNode=g.createNode("ink-root"),this.rootNode.onRender=e.debug?this.onRender:l.throttle(this.onRender,32,{leading:!0,trailing:!0}),this.rootNode.onImmediateRender=this.onRender,this.log=s.default.create(e.stdout),this.throttledLog=e.debug?this.log:l.throttle(this.log,void 0,{leading:!0,trailing:!0}),this.isUnmounted=!1,this.lastOutput="",this.fullStaticOutput="",this.container=p.default.createContainer(this.rootNode,!1,!1),this.unsubscribeExit=v.default(this.unmount,{alwaysLast:!1}),"true"===process.env.DEV&&p.default.injectIntoDevTools({bundleType:0,version:"16.13.1",rendererPackageName:"ink"}),e.patchConsole&&this.patchConsole(),b||(e.stdout.on("resize",this.onRender),this.unsubscribeResize=()=>{e.stdout.off("resize",this.onRender)})}render(e){const t=a.default.createElement(_.default,{stdin:this.options.stdin,stdout:this.options.stdout,stderr:this.options.stderr,writeToStdout:this.writeToStdout,writeToStderr:this.writeToStderr,exitOnCtrlC:this.options.exitOnCtrlC,onExit:this.unmount},e);p.default.updateContainer(t,this.container,null,w)}writeToStdout(e){this.isUnmounted||(this.options.debug?this.options.stdout.write(e+this.fullStaticOutput+this.lastOutput):b?this.options.stdout.write(e):(this.log.clear(),this.options.stdout.write(e),this.log(this.lastOutput)))}writeToStderr(e){if(!this.isUnmounted)return this.options.debug?(this.options.stderr.write(e),void this.options.stdout.write(this.fullStaticOutput+this.lastOutput)):void(b?this.options.stderr.write(e):(this.log.clear(),this.options.stderr.write(e),this.log(this.lastOutput)))}unmount(e){this.isUnmounted||(this.onRender(),this.unsubscribeExit(),"function"==typeof this.restoreConsole&&this.restoreConsole(),"function"==typeof this.unsubscribeResize&&this.unsubscribeResize(),b?this.options.stdout.write(this.lastOutput+"\n"):this.options.debug||this.log.done(),this.isUnmounted=!0,p.default.updateContainer(null,this.container,null,w),y.default.delete(this.options.stdout),e instanceof Error?this.rejectExitPromise(e):this.resolveExitPromise())}waitUntilExit(){return this.exitPromise||(this.exitPromise=new Promise((e,t)=>{this.resolveExitPromise=e,this.rejectExitPromise=t})),this.exitPromise}clear(){b||this.options.debug||this.log.clear()}patchConsole(){this.options.debug||(this.restoreConsole=m.default((e,t)=>{if("stdout"===e&&this.writeToStdout(t),"stderr"===e){t.startsWith("The above error occurred")||this.writeToStderr(t)}}))}}},9679:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=new WeakMap},503:function(e,t,n){"use strict";var r=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});const i=r(n(7589)),o=r(n(1696));t.default={create:(e,{showCursor:t=!1}={})=>{let n=0,r="",u=!1;const a=a=>{t||u||(o.default.hide(),u=!0);const l=a+"\n";l!==r&&(r=l,e.write(i.default.eraseLines(n)+l),n=l.split("\n").length)};return a.clear=()=>{e.write(i.default.eraseLines(n)),r="",n=0},a.done=()=>{r="",n=0,t||(o.default.show(),u=!1)},a}}},3887:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=e=>{var t,n,r,i;return{width:null!==(n=null===(t=e.yogaNode)||void 0===t?void 0:t.getComputedWidth())&&void 0!==n?n:0,height:null!==(i=null===(r=e.yogaNode)||void 0===r?void 0:r.getComputedHeight())&&void 0!==i?i:0}}},8113:function(e,t,n){"use strict";var r=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});const i=r(n(8949)),o={};t.default=e=>{if(0===e.length)return{width:0,height:0};if(o[e])return o[e];const t=i.default(e),n=e.split("\n").length;return o[e]={width:t,height:n},{width:t,height:n}}},4110:function(e,t,n){"use strict";var r=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});const i=r(n(1566)),o=r(n(3262));t.default=class{constructor(e){this.writes=[];const{width:t,height:n}=e;this.width=t,this.height=n}write(e,t,n,r){const{transformers:i}=r;n&&this.writes.push({x:e,y:t,text:n,transformers:i})}get(){const e=[];for(let t=0;te.trimRight()).join("\n"),height:e.length}}}},5117:function(e,t,n){"use strict";var r=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});const i=n(7181),o=r(n(7714)),u=r(n(6401)),a=n(9864);"true"===process.env.DEV&&n(146);const l=e=>{null==e||e.unsetMeasureFunc(),null==e||e.freeRecursive()};t.default=o.default({schedulePassiveEffects:i.unstable_scheduleCallback,cancelPassiveEffects:i.unstable_cancelCallback,now:Date.now,getRootHostContext:()=>({isInsideText:!1}),prepareForCommit:()=>{},resetAfterCommit:e=>{if(e.isStaticDirty)return e.isStaticDirty=!1,void("function"==typeof e.onImmediateRender&&e.onImmediateRender());"function"==typeof e.onRender&&e.onRender()},getChildHostContext:(e,t)=>{const n="ink-text"===t||"ink-virtual-text"===t;return e.isInsideText===n?e:{isInsideText:n}},shouldSetTextContent:()=>!1,createInstance:(e,t,n,r)=>{if(r.isInsideText&&"ink-box"===e)throw new Error(" can’t be nested inside component");const i="ink-text"===e&&r.isInsideText?"ink-virtual-text":e,o=a.createNode(i);for(const[e,n]of Object.entries(t))"children"!==e&&("style"===e?a.setStyle(o,n):"internal_transform"===e?o.internal_transform=n:"internal_static"===e?o.internal_static=!0:a.setAttribute(o,e,n));return o},createTextInstance:(e,t,n)=>{if(!n.isInsideText)throw new Error(`Text string "${e}" must be rendered inside component`);return a.createTextNode(e)},resetTextContent:()=>{},hideTextInstance:e=>{a.setTextNodeValue(e,"")},unhideTextInstance:(e,t)=>{a.setTextNodeValue(e,t)},getPublicInstance:e=>e,hideInstance:e=>{var t;null===(t=e.yogaNode)||void 0===t||t.setDisplay(u.default.DISPLAY_NONE)},unhideInstance:e=>{var t;null===(t=e.yogaNode)||void 0===t||t.setDisplay(u.default.DISPLAY_FLEX)},appendInitialChild:a.appendChildNode,appendChild:a.appendChildNode,insertBefore:a.insertBeforeNode,finalizeInitialChildren:(e,t,n,r)=>(e.internal_static&&(r.isStaticDirty=!0,r.staticNode=e),!1),supportsMutation:!0,appendChildToContainer:a.appendChildNode,insertInContainerBefore:a.insertBeforeNode,removeChildFromContainer:(e,t)=>{a.removeChildNode(e,t),l(t.yogaNode)},prepareUpdate:(e,t,n,r,i)=>{e.internal_static&&(i.isStaticDirty=!0);const o={},u=Object.keys(r);for(const e of u)if(r[e]!==n[e]){if("style"===e&&"object"==typeof r.style&&"object"==typeof n.style){const e=r.style,t=n.style,i=Object.keys(e);for(const n of i){if("borderStyle"===n||"borderColor"===n){if("object"!=typeof o.style){const e={};o.style=e}o.style.borderStyle=e.borderStyle,o.style.borderColor=e.borderColor}if(e[n]!==t[n]){if("object"!=typeof o.style){const e={};o.style=e}o.style[n]=e[n]}}continue}o[e]=r[e]}return o},commitUpdate:(e,t)=>{for(const[n,r]of Object.entries(t))"children"!==n&&("style"===n?a.setStyle(e,r):"internal_transform"===n?e.internal_transform=r:"internal_static"===n?e.internal_static=!0:a.setAttribute(e,n,r))},commitTextUpdate:(e,t,n)=>{a.setTextNodeValue(e,n)},removeChild:(e,t)=>{a.removeChildNode(e,t),l(t.yogaNode)}})},4907:function(e,t,n){"use strict";var r=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});const i=r(n(4097)),o=r(n(9902));t.default=(e,t,n,r)=>{if("string"==typeof n.style.borderStyle){const u=n.yogaNode.getComputedWidth(),a=n.yogaNode.getComputedHeight(),l=n.style.borderColor,s=i.default[n.style.borderStyle],c=o.default(s.topLeft+s.horizontal.repeat(u-2)+s.topRight,l,"foreground"),f=(o.default(s.vertical,l,"foreground")+"\n").repeat(a-2),d=o.default(s.bottomLeft+s.horizontal.repeat(u-2)+s.bottomRight,l,"foreground");r.write(e,t,c,{transformers:[]}),r.write(e,t+1,f,{transformers:[]}),r.write(e+u-1,t+1,f,{transformers:[]}),r.write(e,t+a-1,d,{transformers:[]})}}},3782:function(e,t,n){"use strict";var r=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});const i=r(n(6401)),o=r(n(8949)),u=r(n(9646)),a=r(n(2030)),l=r(n(317)),s=r(n(9099)),c=r(n(4907)),f=(e,t,n)=>{var r;const{offsetX:d=0,offsetY:p=0,transformers:h=[],skipStaticElements:v}=n;if(v&&e.internal_static)return;const{yogaNode:m}=e;if(m){if(m.getDisplay()===i.default.DISPLAY_NONE)return;const n=d+m.getComputedLeft(),g=p+m.getComputedTop();let y=h;if("function"==typeof e.internal_transform&&(y=[e.internal_transform,...h]),"ink-text"===e.nodeName){let i=s.default(e);if(i.length>0){const s=o.default(i),c=l.default(m);if(s>c){const t=null!==(r=e.style.textWrap)&&void 0!==r?r:"wrap";i=a.default(i,c,t)}i=((e,t)=>{var n;const r=null===(n=e.childNodes[0])||void 0===n?void 0:n.yogaNode;if(r){const e=r.getComputedLeft(),n=r.getComputedTop();t="\n".repeat(n)+u.default(t,e)}return t})(e,i),t.write(n,g,i,{transformers:y})}return}if("ink-box"===e.nodeName&&c.default(n,g,e,t),"ink-root"===e.nodeName||"ink-box"===e.nodeName)for(const r of e.childNodes)f(r,t,{offsetX:n,offsetY:g,transformers:y,skipStaticElements:v})}};t.default=f},9417:function(e,t,n){"use strict";var r=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});const i=r(n(3206)),o=r(n(9679)),u=n(2413);t.default=(e,t)=>{const n=Object.assign({stdout:process.stdout,stdin:process.stdin,stderr:process.stderr,debug:!1,exitOnCtrlC:!0,patchConsole:!0},a(t)),r=l(n.stdout,()=>new i.default(n));return r.render(e),{rerender:r.render,unmount:()=>r.unmount(),waitUntilExit:r.waitUntilExit,cleanup:()=>o.default.delete(n.stdout),clear:r.clear}};const a=(e={})=>e instanceof u.Stream?{stdout:e,stdin:process.stdin}:e,l=(e,t)=>{let n;return o.default.has(e)?n=o.default.get(e):(n=t(),o.default.set(e,n)),n}},5691:function(e,t,n){"use strict";var r=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});const i=r(n(6401)),o=r(n(3782)),u=r(n(4110));t.default=(e,t)=>{var n;if(e.yogaNode.setWidth(t),e.yogaNode){e.yogaNode.calculateLayout(void 0,void 0,i.default.DIRECTION_LTR);const t=new u.default({width:e.yogaNode.getComputedWidth(),height:e.yogaNode.getComputedHeight()});let r;o.default(e,t,{skipStaticElements:!0}),(null===(n=e.staticNode)||void 0===n?void 0:n.yogaNode)&&(r=new u.default({width:e.staticNode.yogaNode.getComputedWidth(),height:e.staticNode.yogaNode.getComputedHeight()}),o.default(e.staticNode,r,{skipStaticElements:!1}));const{output:a,height:l}=t.get();return{output:a,outputHeight:l,staticOutput:r?r.get().output+"\n":""}}return{output:"",outputHeight:0,staticOutput:""}}},9099:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});const n=e=>{let t="";if(e.childNodes.length>0)for(const r of e.childNodes){let e="";"#text"===r.nodeName?e=r.nodeValue:("ink-text"!==r.nodeName&&"ink-virtual-text"!==r.nodeName||(e=n(r)),e.length>0&&"function"==typeof r.internal_transform&&(e=r.internal_transform(e))),t+=e}return t};t.default=n},5809:function(e,t,n){"use strict";var r=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});const i=r(n(6401));t.default=(e,t={})=>{((e,t)=>{"position"in t&&e.setPositionType("absolute"===t.position?i.default.POSITION_TYPE_ABSOLUTE:i.default.POSITION_TYPE_RELATIVE)})(e,t),((e,t)=>{"marginLeft"in t&&e.setMargin(i.default.EDGE_START,t.marginLeft||0),"marginRight"in t&&e.setMargin(i.default.EDGE_END,t.marginRight||0),"marginTop"in t&&e.setMargin(i.default.EDGE_TOP,t.marginTop||0),"marginBottom"in t&&e.setMargin(i.default.EDGE_BOTTOM,t.marginBottom||0)})(e,t),((e,t)=>{"paddingLeft"in t&&e.setPadding(i.default.EDGE_LEFT,t.paddingLeft||0),"paddingRight"in t&&e.setPadding(i.default.EDGE_RIGHT,t.paddingRight||0),"paddingTop"in t&&e.setPadding(i.default.EDGE_TOP,t.paddingTop||0),"paddingBottom"in t&&e.setPadding(i.default.EDGE_BOTTOM,t.paddingBottom||0)})(e,t),((e,t)=>{var n;"flexGrow"in t&&e.setFlexGrow(null!==(n=t.flexGrow)&&void 0!==n?n:0),"flexShrink"in t&&e.setFlexShrink("number"==typeof t.flexShrink?t.flexShrink:1),"flexDirection"in t&&("row"===t.flexDirection&&e.setFlexDirection(i.default.FLEX_DIRECTION_ROW),"row-reverse"===t.flexDirection&&e.setFlexDirection(i.default.FLEX_DIRECTION_ROW_REVERSE),"column"===t.flexDirection&&e.setFlexDirection(i.default.FLEX_DIRECTION_COLUMN),"column-reverse"===t.flexDirection&&e.setFlexDirection(i.default.FLEX_DIRECTION_COLUMN_REVERSE)),"flexBasis"in t&&("number"==typeof t.flexBasis?e.setFlexBasis(t.flexBasis):"string"==typeof t.flexBasis?e.setFlexBasisPercent(Number.parseInt(t.flexBasis,10)):e.setFlexBasis(NaN)),"alignItems"in t&&("stretch"!==t.alignItems&&t.alignItems||e.setAlignItems(i.default.ALIGN_STRETCH),"flex-start"===t.alignItems&&e.setAlignItems(i.default.ALIGN_FLEX_START),"center"===t.alignItems&&e.setAlignItems(i.default.ALIGN_CENTER),"flex-end"===t.alignItems&&e.setAlignItems(i.default.ALIGN_FLEX_END)),"alignSelf"in t&&("auto"!==t.alignSelf&&t.alignSelf||e.setAlignSelf(i.default.ALIGN_AUTO),"flex-start"===t.alignSelf&&e.setAlignSelf(i.default.ALIGN_FLEX_START),"center"===t.alignSelf&&e.setAlignSelf(i.default.ALIGN_CENTER),"flex-end"===t.alignSelf&&e.setAlignSelf(i.default.ALIGN_FLEX_END)),"justifyContent"in t&&("flex-start"!==t.justifyContent&&t.justifyContent||e.setJustifyContent(i.default.JUSTIFY_FLEX_START),"center"===t.justifyContent&&e.setJustifyContent(i.default.JUSTIFY_CENTER),"flex-end"===t.justifyContent&&e.setJustifyContent(i.default.JUSTIFY_FLEX_END),"space-between"===t.justifyContent&&e.setJustifyContent(i.default.JUSTIFY_SPACE_BETWEEN),"space-around"===t.justifyContent&&e.setJustifyContent(i.default.JUSTIFY_SPACE_AROUND))})(e,t),((e,t)=>{var n,r;"width"in t&&("number"==typeof t.width?e.setWidth(t.width):"string"==typeof t.width?e.setWidthPercent(Number.parseInt(t.width,10)):e.setWidthAuto()),"height"in t&&("number"==typeof t.height?e.setHeight(t.height):"string"==typeof t.height?e.setHeightPercent(Number.parseInt(t.height,10)):e.setHeightAuto()),"minWidth"in t&&("string"==typeof t.minWidth?e.setMinWidthPercent(Number.parseInt(t.minWidth,10)):e.setMinWidth(null!==(n=t.minWidth)&&void 0!==n?n:0)),"minHeight"in t&&("string"==typeof t.minHeight?e.setMinHeightPercent(Number.parseInt(t.minHeight,10)):e.setMinHeight(null!==(r=t.minHeight)&&void 0!==r?r:0))})(e,t),((e,t)=>{"display"in t&&e.setDisplay("flex"===t.display?i.default.DISPLAY_FLEX:i.default.DISPLAY_NONE)})(e,t),((e,t)=>{if("borderStyle"in t){const n="string"==typeof t.borderStyle?1:0;e.setBorder(i.default.EDGE_TOP,n),e.setBorder(i.default.EDGE_BOTTOM,n),e.setBorder(i.default.EDGE_LEFT,n),e.setBorder(i.default.EDGE_RIGHT,n)}})(e,t)}},2030:function(e,t,n){"use strict";var r=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});const i=r(n(4332)),o=r(n(5301)),u={};t.default=(e,t,n)=>{const r=e+String(t)+String(n);if(u[r])return u[r];let a=e;if("wrap"===n&&(a=i.default(e,t,{trim:!1,hard:!0})),n.startsWith("truncate")){let r="end";"truncate-middle"===n&&(r="middle"),"truncate-start"===n&&(r="start"),a=o.default(e,t,{position:r})}return u[r]=a,a}},5767:(e,t,n)=>{ -/** @license React v0.24.0 - * react-reconciler.production.min.js - * - * Copyright (c) Facebook, Inc. and its affiliates. - * - * This source code is licensed under the MIT license found in the - * LICENSE file in the root directory of this source tree. - */ -e.exports=function t(r){"use strict";var i=n(9381),o=n(7382),u=n(7181);function a(e){for(var t="https://reactjs.org/docs/error-decoder.html?invariant="+e,n=1;nOe||(e.current=Ae[Oe],Ae[Oe]=null,Oe--)}function Ie(e,t){Oe++,Ae[Oe]=e.current,e.current=t}var Ne={},Me={current:Ne},Re={current:!1},Fe=Ne;function Le(e,t){var n=e.type.contextTypes;if(!n)return Ne;var r=e.stateNode;if(r&&r.__reactInternalMemoizedUnmaskedChildContext===t)return r.__reactInternalMemoizedMaskedChildContext;var i,o={};for(i in n)o[i]=t[i];return r&&((e=e.stateNode).__reactInternalMemoizedUnmaskedChildContext=t,e.__reactInternalMemoizedMaskedChildContext=o),o}function Be(e){return null!=(e=e.childContextTypes)}function je(e){Pe(Re),Pe(Me)}function Ue(e){Pe(Re),Pe(Me)}function ze(e,t,n){if(Me.current!==Ne)throw Error(a(168));Ie(Me,t),Ie(Re,n)}function We(e,t,n){var r=e.stateNode;if(e=t.childContextTypes,"function"!=typeof r.getChildContext)return n;for(var o in r=r.getChildContext())if(!(o in e))throw Error(a(108,C(t)||"Unknown",o));return i({},n,{},r)}function He(e){var t=e.stateNode;return t=t&&t.__reactInternalMemoizedMergedChildContext||Ne,Fe=Me.current,Ie(Me,t),Ie(Re,Re.current),!0}function Ve(e,t,n){var r=e.stateNode;if(!r)throw Error(a(169));n?(t=We(e,t,Fe),r.__reactInternalMemoizedMergedChildContext=t,Pe(Re),Pe(Me),Ie(Me,t)):Pe(Re),Ie(Re,n)}var qe=u.unstable_runWithPriority,Ge=u.unstable_scheduleCallback,$e=u.unstable_cancelCallback,Ye=u.unstable_shouldYield,Ke=u.unstable_requestPaint,Xe=u.unstable_now,Qe=u.unstable_getCurrentPriorityLevel,Je=u.unstable_ImmediatePriority,Ze=u.unstable_UserBlockingPriority,et=u.unstable_NormalPriority,tt=u.unstable_LowPriority,nt=u.unstable_IdlePriority,rt={},it=void 0!==Ke?Ke:function(){},ot=null,ut=null,at=!1,lt=Xe(),st=1e4>lt?Xe:function(){return Xe()-lt};function ct(){switch(Qe()){case Je:return 99;case Ze:return 98;case et:return 97;case tt:return 96;case nt:return 95;default:throw Error(a(332))}}function ft(e){switch(e){case 99:return Je;case 98:return Ze;case 97:return et;case 96:return tt;case 95:return nt;default:throw Error(a(332))}}function dt(e,t){return e=ft(e),qe(e,t)}function pt(e,t,n){return e=ft(e),Ge(e,t,n)}function ht(e){return null===ot?(ot=[e],ut=Ge(Je,mt)):ot.push(e),rt}function vt(){if(null!==ut){var e=ut;ut=null,$e(e)}mt()}function mt(){if(!at&&null!==ot){at=!0;var e=0;try{var t=ot;dt(99,(function(){for(;e=t&&(dr=!0),e.firstContext=null)}function It(e,t){if(kt!==e&&!1!==t&&0!==t)if("number"==typeof t&&1073741823!==t||(kt=e,t=1073741823),t={context:e,observedBits:t,next:null},null===Ct){if(null===St)throw Error(a(308));Ct=t,St.dependencies={expirationTime:0,firstContext:t,responders:null}}else Ct=Ct.next=t;return q?e._currentValue:e._currentValue2}var Nt=!1;function Mt(e){return{baseState:e,firstUpdate:null,lastUpdate:null,firstCapturedUpdate:null,lastCapturedUpdate:null,firstEffect:null,lastEffect:null,firstCapturedEffect:null,lastCapturedEffect:null}}function Rt(e){return{baseState:e.baseState,firstUpdate:e.firstUpdate,lastUpdate:e.lastUpdate,firstCapturedUpdate:null,lastCapturedUpdate:null,firstEffect:null,lastEffect:null,firstCapturedEffect:null,lastCapturedEffect:null}}function Ft(e,t){return{expirationTime:e,suspenseConfig:t,tag:0,payload:null,callback:null,next:null,nextEffect:null}}function Lt(e,t){null===e.lastUpdate?e.firstUpdate=e.lastUpdate=t:(e.lastUpdate.next=t,e.lastUpdate=t)}function Bt(e,t){var n=e.alternate;if(null===n){var r=e.updateQueue,i=null;null===r&&(r=e.updateQueue=Mt(e.memoizedState))}else r=e.updateQueue,i=n.updateQueue,null===r?null===i?(r=e.updateQueue=Mt(e.memoizedState),i=n.updateQueue=Mt(n.memoizedState)):r=e.updateQueue=Rt(i):null===i&&(i=n.updateQueue=Rt(r));null===i||r===i?Lt(r,t):null===r.lastUpdate||null===i.lastUpdate?(Lt(r,t),Lt(i,t)):(Lt(r,t),i.lastUpdate=t)}function jt(e,t){var n=e.updateQueue;null===(n=null===n?e.updateQueue=Mt(e.memoizedState):Ut(e,n)).lastCapturedUpdate?n.firstCapturedUpdate=n.lastCapturedUpdate=t:(n.lastCapturedUpdate.next=t,n.lastCapturedUpdate=t)}function Ut(e,t){var n=e.alternate;return null!==n&&t===n.updateQueue&&(t=e.updateQueue=Rt(t)),t}function zt(e,t,n,r,o,u){switch(n.tag){case 1:return"function"==typeof(e=n.payload)?e.call(u,r,o):e;case 3:e.effectTag=-4097&e.effectTag|64;case 0:if(null==(o="function"==typeof(e=n.payload)?e.call(u,r,o):e))break;return i({},r,o);case 2:Nt=!0}return r}function Wt(e,t,n,r,i){Nt=!1;for(var o=(t=Ut(e,t)).baseState,u=null,a=0,l=t.firstUpdate,s=o;null!==l;){var c=l.expirationTime;cd?(p=f,f=null):p=f.sibling;var h=m(i,f,a[d],l);if(null===h){null===f&&(f=p);break}e&&f&&null===h.alternate&&t(i,f),u=o(h,u,d),null===c?s=h:c.sibling=h,c=h,f=p}if(d===a.length)return n(i,f),s;if(null===f){for(;dp?(h=d,d=null):h=d.sibling;var _=m(i,d,y.value,s);if(null===_){null===d&&(d=h);break}e&&d&&null===_.alternate&&t(i,d),u=o(_,u,p),null===f?c=_:f.sibling=_,f=_,d=h}if(y.done)return n(i,d),c;if(null===d){for(;!y.done;p++,y=l.next())null!==(y=v(i,y.value,s))&&(u=o(y,u,p),null===f?c=y:f.sibling=y,f=y);return c}for(d=r(i,d);!y.done;p++,y=l.next())null!==(y=g(d,i,p,y.value,s))&&(e&&null!==y.alternate&&d.delete(null===y.key?p:y.key),u=o(y,u,p),null===f?c=y:f.sibling=y,f=y);return e&&d.forEach((function(e){return t(i,e)})),c}return function(e,r,o,l){var s="object"==typeof o&&null!==o&&o.type===d&&null===o.key;s&&(o=o.props.children);var p="object"==typeof o&&null!==o;if(p)switch(o.$$typeof){case c:e:{for(p=o.key,s=r;null!==s;){if(s.key===p){if(7===s.tag?o.type===d:s.elementType===o.type){n(e,s.sibling),(r=i(s,o.type===d?o.props.children:o.props)).ref=en(e,s,o),r.return=e,e=r;break e}n(e,s);break}t(e,s),s=s.sibling}o.type===d?((r=so(o.props.children,e.mode,l,o.key)).return=e,e=r):((l=lo(o.type,o.key,o.props,null,e.mode,l)).ref=en(e,r,o),l.return=e,e=l)}return u(e);case f:e:{for(s=o.key;null!==r;){if(r.key===s){if(4===r.tag&&r.stateNode.containerInfo===o.containerInfo&&r.stateNode.implementation===o.implementation){n(e,r.sibling),(r=i(r,o.children||[])).return=e,e=r;break e}n(e,r);break}t(e,r),r=r.sibling}(r=fo(o,e.mode,l)).return=e,e=r}return u(e)}if("string"==typeof o||"number"==typeof o)return o=""+o,null!==r&&6===r.tag?(n(e,r.sibling),(r=i(r,o)).return=e,e=r):(n(e,r),(r=co(o,e.mode,l)).return=e,e=r),u(e);if(Zt(o))return y(e,r,o,l);if(S(o))return _(e,r,o,l);if(p&&tn(e,o),void 0===o&&!s)switch(e.tag){case 1:case 0:throw e=e.type,Error(a(152,e.displayName||e.name||"Component"))}return n(e,r)}}var rn=nn(!0),on=nn(!1),un={},an={current:un},ln={current:un},sn={current:un};function cn(e){if(e===un)throw Error(a(174));return e}function fn(e,t){Ie(sn,t),Ie(ln,e),Ie(an,un),t=P(t),Pe(an),Ie(an,t)}function dn(e){Pe(an),Pe(ln),Pe(sn)}function pn(e){var t=cn(sn.current),n=cn(an.current);n!==(t=I(n,e.type,t))&&(Ie(ln,e),Ie(an,t))}function hn(e){ln.current===e&&(Pe(an),Pe(ln))}var vn={current:0};function mn(e){for(var t=e;null!==t;){if(13===t.tag){var n=t.memoizedState;if(null!==n&&(null===(n=n.dehydrated)||ye(n)||_e(n)))return t}else if(19===t.tag&&void 0!==t.memoizedProps.revealOrder){if(0!=(64&t.effectTag))return t}else if(null!==t.child){t.child.return=t,t=t.child;continue}if(t===e)break;for(;null===t.sibling;){if(null===t.return||t.return===e)return null;t=t.return}t.sibling.return=t.return,t=t.sibling}return null}function gn(e,t){return{responder:e,props:t}}var yn=l.ReactCurrentDispatcher,_n=l.ReactCurrentBatchConfig,bn=0,wn=null,En=null,Dn=null,Sn=null,Cn=null,kn=null,Tn=0,xn=null,An=0,On=!1,Pn=null,In=0;function Nn(){throw Error(a(321))}function Mn(e,t){if(null===t)return!1;for(var n=0;nTn&&zi(Tn=f)):(Ui(f,s.suspenseConfig),o=s.eagerReducer===e?s.eagerState:e(o,s.action)),u=s,s=s.next}while(null!==s&&s!==r);c||(l=u,i=o),_t(o,t.memoizedState)||(dr=!0),t.memoizedState=o,t.baseUpdate=l,t.baseState=i,n.lastRenderedState=o}return[t.memoizedState,n.dispatch]}function zn(e){var t=Ln();return"function"==typeof e&&(e=e()),t.memoizedState=t.baseState=e,e=(e=t.queue={last:null,dispatch:null,lastRenderedReducer:jn,lastRenderedState:e}).dispatch=Jn.bind(null,wn,e),[t.memoizedState,e]}function Wn(e){return Un(jn)}function Hn(e,t,n,r){return e={tag:e,create:t,destroy:n,deps:r,next:null},null===xn?(xn={lastEffect:null}).lastEffect=e.next=e:null===(t=xn.lastEffect)?xn.lastEffect=e.next=e:(n=t.next,t.next=e,e.next=n,xn.lastEffect=e),e}function Vn(e,t,n,r){var i=Ln();An|=e,i.memoizedState=Hn(t,n,void 0,void 0===r?null:r)}function qn(e,t,n,r){var i=Bn();r=void 0===r?null:r;var o=void 0;if(null!==En){var u=En.memoizedState;if(o=u.destroy,null!==r&&Mn(r,u.deps))return void Hn(0,n,o,r)}An|=e,i.memoizedState=Hn(t,n,o,r)}function Gn(e,t){return Vn(516,192,e,t)}function $n(e,t){return qn(516,192,e,t)}function Yn(e,t){return"function"==typeof t?(e=e(),t(e),function(){t(null)}):null!=t?(e=e(),t.current=e,function(){t.current=null}):void 0}function Kn(){}function Xn(e,t){return Ln().memoizedState=[e,void 0===t?null:t],e}function Qn(e,t){var n=Bn();t=void 0===t?null:t;var r=n.memoizedState;return null!==r&&null!==t&&Mn(t,r[1])?r[0]:(n.memoizedState=[e,t],e)}function Jn(e,t,n){if(!(25>In))throw Error(a(301));var r=e.alternate;if(e===wn||null!==r&&r===wn)if(On=!0,e={expirationTime:bn,suspenseConfig:null,action:n,eagerReducer:null,eagerState:null,next:null},null===Pn&&(Pn=new Map),void 0===(n=Pn.get(t)))Pn.set(t,e);else{for(t=n;null!==t.next;)t=t.next;t.next=e}else{var i=xi(),o=qt.suspense;o={expirationTime:i=Ai(i,e,o),suspenseConfig:o,action:n,eagerReducer:null,eagerState:null,next:null};var u=t.last;if(null===u)o.next=o;else{var l=u.next;null!==l&&(o.next=l),u.next=o}if(t.last=o,0===e.expirationTime&&(null===r||0===r.expirationTime)&&null!==(r=t.lastRenderedReducer))try{var s=t.lastRenderedState,c=r(s,n);if(o.eagerReducer=r,o.eagerState=c,_t(c,s))return}catch(e){}Oi(e,i)}}var Zn={readContext:It,useCallback:Nn,useContext:Nn,useEffect:Nn,useImperativeHandle:Nn,useLayoutEffect:Nn,useMemo:Nn,useReducer:Nn,useRef:Nn,useState:Nn,useDebugValue:Nn,useResponder:Nn,useDeferredValue:Nn,useTransition:Nn},er={readContext:It,useCallback:Xn,useContext:It,useEffect:Gn,useImperativeHandle:function(e,t,n){return n=null!=n?n.concat([e]):null,Vn(4,36,Yn.bind(null,t,e),n)},useLayoutEffect:function(e,t){return Vn(4,36,e,t)},useMemo:function(e,t){var n=Ln();return t=void 0===t?null:t,e=e(),n.memoizedState=[e,t],e},useReducer:function(e,t,n){var r=Ln();return t=void 0!==n?n(t):t,r.memoizedState=r.baseState=t,e=(e=r.queue={last:null,dispatch:null,lastRenderedReducer:e,lastRenderedState:t}).dispatch=Jn.bind(null,wn,e),[r.memoizedState,e]},useRef:function(e){return e={current:e},Ln().memoizedState=e},useState:zn,useDebugValue:Kn,useResponder:gn,useDeferredValue:function(e,t){var n=zn(e),r=n[0],i=n[1];return Gn((function(){u.unstable_next((function(){var n=_n.suspense;_n.suspense=void 0===t?null:t;try{i(e)}finally{_n.suspense=n}}))}),[e,t]),r},useTransition:function(e){var t=zn(!1),n=t[0],r=t[1];return[Xn((function(t){r(!0),u.unstable_next((function(){var n=_n.suspense;_n.suspense=void 0===e?null:e;try{r(!1),t()}finally{_n.suspense=n}}))}),[e,n]),n]}},tr={readContext:It,useCallback:Qn,useContext:It,useEffect:$n,useImperativeHandle:function(e,t,n){return n=null!=n?n.concat([e]):null,qn(4,36,Yn.bind(null,t,e),n)},useLayoutEffect:function(e,t){return qn(4,36,e,t)},useMemo:function(e,t){var n=Bn();t=void 0===t?null:t;var r=n.memoizedState;return null!==r&&null!==t&&Mn(t,r[1])?r[0]:(e=e(),n.memoizedState=[e,t],e)},useReducer:Un,useRef:function(){return Bn().memoizedState},useState:Wn,useDebugValue:Kn,useResponder:gn,useDeferredValue:function(e,t){var n=Wn(),r=n[0],i=n[1];return $n((function(){u.unstable_next((function(){var n=_n.suspense;_n.suspense=void 0===t?null:t;try{i(e)}finally{_n.suspense=n}}))}),[e,t]),r},useTransition:function(e){var t=Wn(),n=t[0],r=t[1];return[Qn((function(t){r(!0),u.unstable_next((function(){var n=_n.suspense;_n.suspense=void 0===e?null:e;try{r(!1),t()}finally{_n.suspense=n}}))}),[e,n]),n]}},nr=null,rr=null,ir=!1;function or(e,t){var n=oo(5,null,null,0);n.elementType="DELETED",n.type="DELETED",n.stateNode=t,n.return=e,n.effectTag=8,null!==e.lastEffect?(e.lastEffect.nextEffect=n,e.lastEffect=n):e.firstEffect=e.lastEffect=n}function ur(e,t){switch(e.tag){case 5:return null!==(t=me(t,e.type,e.pendingProps))&&(e.stateNode=t,!0);case 6:return null!==(t=ge(t,e.pendingProps))&&(e.stateNode=t,!0);case 13:default:return!1}}function ar(e){if(ir){var t=rr;if(t){var n=t;if(!ur(e,t)){if(!(t=be(n))||!ur(e,t))return e.effectTag=-1025&e.effectTag|2,ir=!1,void(nr=e);or(nr,n)}nr=e,rr=we(t)}else e.effectTag=-1025&e.effectTag|2,ir=!1,nr=e}}function lr(e){for(e=e.return;null!==e&&5!==e.tag&&3!==e.tag&&13!==e.tag;)e=e.return;nr=e}function sr(e){if(!Y||e!==nr)return!1;if(!ir)return lr(e),ir=!0,!1;var t=e.type;if(5!==e.tag||"head"!==t&&"body"!==t&&!j(t,e.memoizedProps))for(t=rr;t;)or(e,t),t=be(t);if(lr(e),13===e.tag){if(!Y)throw Error(a(316));if(!(e=null!==(e=e.memoizedState)?e.dehydrated:null))throw Error(a(317));rr=Se(e)}else rr=nr?be(e.stateNode):null;return!0}function cr(){Y&&(rr=nr=null,ir=!1)}var fr=l.ReactCurrentOwner,dr=!1;function pr(e,t,n,r){t.child=null===e?on(t,null,n,r):rn(t,e.child,n,r)}function hr(e,t,n,r,i){n=n.render;var o=t.ref;return Pt(t,i),r=Rn(e,t,n,r,o,i),null===e||dr?(t.effectTag|=1,pr(e,t,r,i),t.child):(t.updateQueue=e.updateQueue,t.effectTag&=-517,e.expirationTime<=i&&(e.expirationTime=0),Pr(e,t,i))}function vr(e,t,n,r,i,o){if(null===e){var u=n.type;return"function"!=typeof u||uo(u)||void 0!==u.defaultProps||null!==n.compare||void 0!==n.defaultProps?((e=lo(n.type,null,r,null,t.mode,o)).ref=t.ref,e.return=t,t.child=e):(t.tag=15,t.type=u,mr(e,t,u,r,i,o))}return u=e.child,it)&&Si.set(e,t))}}function Pi(e,t){e.expirationTime(e=e.nextKnownPendingLevel)?t:e:t}function Ni(e){if(0!==e.lastExpiredTime)e.callbackExpirationTime=1073741823,e.callbackPriority=99,e.callbackNode=ht(Ri.bind(null,e));else{var t=Ii(e),n=e.callbackNode;if(0===t)null!==n&&(e.callbackNode=null,e.callbackExpirationTime=0,e.callbackPriority=90);else{var r=xi();if(1073741823===t?r=99:1===t||2===t?r=95:r=0>=(r=10*(1073741821-t)-10*(1073741821-r))?99:250>=r?98:5250>=r?97:95,null!==n){var i=e.callbackPriority;if(e.callbackExpirationTime===t&&i>=r)return;n!==rt&&$e(n)}e.callbackExpirationTime=t,e.callbackPriority=r,t=1073741823===t?ht(Ri.bind(null,e)):pt(r,Mi.bind(null,e),{timeout:10*(1073741821-t)-st()}),e.callbackNode=t}}}function Mi(e,t){if(Ti=0,t)return go(e,t=xi()),Ni(e),null;var n=Ii(e);if(0!==n){if(t=e.callbackNode,0!=(48&oi))throw Error(a(327));if(Xi(),e===ui&&n===li||Li(e,n),null!==ai){var r=oi;oi|=ii;for(var i=ji();;)try{Hi();break}catch(t){Bi(e,t)}if(Tt(),oi=r,ni.current=i,1===si)throw t=ci,Li(e,n),vo(e,n),Ni(e),t;if(null===ai)switch(i=e.finishedWork=e.current.alternate,e.finishedExpirationTime=n,r=si,ui=null,r){case 0:case 1:throw Error(a(345));case 2:go(e,2=n){e.lastPingedTime=n,Li(e,n);break}}if(0!==(o=Ii(e))&&o!==n)break;if(0!==r&&r!==n){e.lastPingedTime=r;break}e.timeoutHandle=W($i.bind(null,e),i);break}$i(e);break;case 4:if(vo(e,n),n===(r=e.lastSuspendedTime)&&(e.nextKnownPendingLevel=Gi(i)),vi&&(0===(i=e.lastPingedTime)||i>=n)){e.lastPingedTime=n,Li(e,n);break}if(0!==(i=Ii(e))&&i!==n)break;if(0!==r&&r!==n){e.lastPingedTime=r;break}if(1073741823!==di?r=10*(1073741821-di)-st():1073741823===fi?r=0:(r=10*(1073741821-fi)-5e3,0>(r=(i=st())-r)&&(r=0),(n=10*(1073741821-n)-i)<(r=(120>r?120:480>r?480:1080>r?1080:1920>r?1920:3e3>r?3e3:4320>r?4320:1960*ti(r/1960))-r)&&(r=n)),10=(r=0|u.busyMinDurationMs)?r=0:(i=0|u.busyDelayMs,r=(o=st()-(10*(1073741821-o)-(0|u.timeoutMs||5e3)))<=i?0:i+r-o),10 component higher in the tree to provide a loading indicator or placeholder to display."+xe(i))}5!==si&&(si=2),o=Fr(o,i),l=r;do{switch(l.tag){case 3:u=o,l.effectTag|=4096,l.expirationTime=t,jt(l,Jr(l,u,t));break e;case 1:u=o;var g=l.type,y=l.stateNode;if(0==(64&l.effectTag)&&("function"==typeof g.getDerivedStateFromError||null!==y&&"function"==typeof y.componentDidCatch&&(null===bi||!bi.has(y)))){l.effectTag|=4096,l.expirationTime=t,jt(l,Zr(l,u,t));break e}}l=l.return}while(null!==l)}ai=qi(ai)}catch(e){t=e;continue}break}}function ji(){var e=ni.current;return ni.current=Zn,null===e?Zn:e}function Ui(e,t){ehi&&(hi=e)}function Wi(){for(;null!==ai;)ai=Vi(ai)}function Hi(){for(;null!==ai&&!Ye();)ai=Vi(ai)}function Vi(e){var t=ei(e.alternate,e,li);return e.memoizedProps=e.pendingProps,null===t&&(t=qi(e)),ri.current=null,t}function qi(e){ai=e;do{var t=ai.alternate;if(e=ai.return,0==(2048&ai.effectTag)){e:{var n=t,r=li,i=(t=ai).pendingProps;switch(t.tag){case 2:case 16:break;case 15:case 0:break;case 1:Be(t.type)&&je();break;case 3:dn(),Ue(),(i=t.stateNode).pendingContext&&(i.context=i.pendingContext,i.pendingContext=null),(null===n||null===n.child)&&sr(t)&&Ir(t),Dr(t);break;case 5:hn(t);var o=cn(sn.current);if(r=t.type,null!==n&&null!=t.stateNode)Sr(n,t,r,i,o),n.ref!==t.ref&&(t.effectTag|=128);else if(i){if(n=cn(an.current),sr(t)){if(i=t,!Y)throw Error(a(175));n=Ee(i.stateNode,i.type,i.memoizedProps,o,n,i),i.updateQueue=n,(n=null!==n)&&Ir(t)}else{var u=R(r,i,o,n,t);Er(u,t,!1,!1),t.stateNode=u,L(u,r,i,o,n)&&Ir(t)}null!==t.ref&&(t.effectTag|=128)}else if(null===t.stateNode)throw Error(a(166));break;case 6:if(n&&null!=t.stateNode)Cr(n,t,n.memoizedProps,i);else{if("string"!=typeof i&&null===t.stateNode)throw Error(a(166));if(n=cn(sn.current),o=cn(an.current),sr(t)){if(n=t,!Y)throw Error(a(176));(n=De(n.stateNode,n.memoizedProps,n))&&Ir(t)}else t.stateNode=z(i,n,o,t)}break;case 11:break;case 13:if(Pe(vn),i=t.memoizedState,0!=(64&t.effectTag)){t.expirationTime=r;break e}i=null!==i,o=!1,null===n?void 0!==t.memoizedProps.fallback&&sr(t):(o=null!==(r=n.memoizedState),i||null===r||null!==(r=n.child.sibling)&&(null!==(u=t.firstEffect)?(t.firstEffect=r,r.nextEffect=u):(t.firstEffect=t.lastEffect=r,r.nextEffect=null),r.effectTag=8)),i&&!o&&0!=(2&t.mode)&&(null===n&&!0!==t.memoizedProps.unstable_avoidThisFallback||0!=(1&vn.current)?0===si&&(si=3):(0!==si&&3!==si||(si=4),0!==hi&&null!==ui&&(vo(ui,li),mo(ui,hi)))),$&&i&&(t.effectTag|=4),G&&(i||o)&&(t.effectTag|=4);break;case 7:case 8:case 12:break;case 4:dn(),Dr(t);break;case 10:At(t);break;case 9:case 14:break;case 17:Be(t.type)&&je();break;case 19:if(Pe(vn),null===(i=t.memoizedState))break;if(o=0!=(64&t.effectTag),null===(u=i.rendering)){if(o)Mr(i,!1);else if(0!==si||null!==n&&0!=(64&n.effectTag))for(n=t.child;null!==n;){if(null!==(u=mn(n))){for(t.effectTag|=64,Mr(i,!1),null!==(n=u.updateQueue)&&(t.updateQueue=n,t.effectTag|=4),null===i.lastEffect&&(t.firstEffect=null),t.lastEffect=i.lastEffect,n=r,i=t.child;null!==i;)r=n,(o=i).effectTag&=2,o.nextEffect=null,o.firstEffect=null,o.lastEffect=null,null===(u=o.alternate)?(o.childExpirationTime=0,o.expirationTime=r,o.child=null,o.memoizedProps=null,o.memoizedState=null,o.updateQueue=null,o.dependencies=null):(o.childExpirationTime=u.childExpirationTime,o.expirationTime=u.expirationTime,o.child=u.child,o.memoizedProps=u.memoizedProps,o.memoizedState=u.memoizedState,o.updateQueue=u.updateQueue,r=u.dependencies,o.dependencies=null===r?null:{expirationTime:r.expirationTime,firstContext:r.firstContext,responders:r.responders}),i=i.sibling;Ie(vn,1&vn.current|2),t=t.child;break e}n=n.sibling}}else{if(!o)if(null!==(n=mn(u))){if(t.effectTag|=64,o=!0,null!==(n=n.updateQueue)&&(t.updateQueue=n,t.effectTag|=4),Mr(i,!0),null===i.tail&&"hidden"===i.tailMode&&!u.alternate){null!==(t=t.lastEffect=i.lastEffect)&&(t.nextEffect=null);break}}else st()>i.tailExpiration&&1i&&(i=r),(u=o.childExpirationTime)>i&&(i=u),o=o.sibling;n.childExpirationTime=i}if(null!==t)return t;null!==e&&0==(2048&e.effectTag)&&(null===e.firstEffect&&(e.firstEffect=ai.firstEffect),null!==ai.lastEffect&&(null!==e.lastEffect&&(e.lastEffect.nextEffect=ai.firstEffect),e.lastEffect=ai.lastEffect),1(e=e.childExpirationTime)?t:e}function $i(e){var t=ct();return dt(99,Yi.bind(null,e,t)),null}function Yi(e,t){do{Xi()}while(null!==Ei);if(0!=(48&oi))throw Error(a(327));var n=e.finishedWork,r=e.finishedExpirationTime;if(null===n)return null;if(e.finishedWork=null,e.finishedExpirationTime=0,n===e.current)throw Error(a(177));e.callbackNode=null,e.callbackExpirationTime=0,e.callbackPriority=90,e.nextKnownPendingLevel=0;var i=Gi(n);if(e.firstPendingTime=i,r<=e.lastSuspendedTime?e.firstSuspendedTime=e.lastSuspendedTime=e.nextKnownPendingLevel=0:r<=e.firstSuspendedTime&&(e.firstSuspendedTime=r-1),r<=e.lastPingedTime&&(e.lastPingedTime=0),r<=e.lastExpiredTime&&(e.lastExpiredTime=0),e===ui&&(ai=ui=null,li=0),1=n?Tr(e,t,n):(Ie(vn,1&vn.current),null!==(t=Pr(e,t,n))?t.sibling:null);Ie(vn,1&vn.current);break;case 19:if(r=t.childExpirationTime>=n,0!=(64&e.effectTag)){if(r)return Or(e,t,n);t.effectTag|=64}if(null!==(i=t.memoizedState)&&(i.rendering=null,i.tail=null),Ie(vn,vn.current),!r)return null}return Pr(e,t,n)}dr=!1}}else dr=!1;switch(t.expirationTime=0,t.tag){case 2:if(r=t.type,null!==e&&(e.alternate=null,t.alternate=null,t.effectTag|=2),e=t.pendingProps,i=Le(t,Me.current),Pt(t,n),i=Rn(null,t,r,e,i,n),t.effectTag|=1,"object"==typeof i&&null!==i&&"function"==typeof i.render&&void 0===i.$$typeof){if(t.tag=1,Fn(),Be(r)){var o=!0;He(t)}else o=!1;t.memoizedState=null!==i.state&&void 0!==i.state?i.state:null;var u=r.getDerivedStateFromProps;"function"==typeof u&&$t(t,r,u,e),i.updater=Yt,t.stateNode=i,i._reactInternalFiber=t,Jt(t,r,e,n),t=br(null,t,r,!0,o,n)}else t.tag=0,pr(null,t,i,n),t=t.child;return t;case 16:if(i=t.elementType,null!==e&&(e.alternate=null,t.alternate=null,t.effectTag|=2),e=t.pendingProps,function(e){if(-1===e._status){e._status=0;var t=e._ctor;t=t(),e._result=t,t.then((function(t){0===e._status&&(t=t.default,e._status=1,e._result=t)}),(function(t){0===e._status&&(e._status=2,e._result=t)}))}}(i),1!==i._status)throw i._result;switch(i=i._result,t.type=i,o=t.tag=function(e){if("function"==typeof e)return uo(e)?1:0;if(null!=e){if((e=e.$$typeof)===y)return 11;if(e===w)return 14}return 2}(i),e=Et(i,e),o){case 0:t=yr(null,t,i,e,n);break;case 1:t=_r(null,t,i,e,n);break;case 11:t=hr(null,t,i,e,n);break;case 14:t=vr(null,t,i,Et(i.type,e),r,n);break;default:throw Error(a(306,i,""))}return t;case 0:return r=t.type,i=t.pendingProps,yr(e,t,r,i=t.elementType===r?i:Et(r,i),n);case 1:return r=t.type,i=t.pendingProps,_r(e,t,r,i=t.elementType===r?i:Et(r,i),n);case 3:if(wr(t),null===(r=t.updateQueue))throw Error(a(282));if(i=null!==(i=t.memoizedState)?i.element:null,Wt(t,r,t.pendingProps,null,n),(r=t.memoizedState.element)===i)cr(),t=Pr(e,t,n);else{if((i=t.stateNode.hydrate)&&(Y?(rr=we(t.stateNode.containerInfo),nr=t,i=ir=!0):i=!1),i)for(n=on(t,null,r,n),t.child=n;n;)n.effectTag=-3&n.effectTag|1024,n=n.sibling;else pr(e,t,r,n),cr();t=t.child}return t;case 5:return pn(t),null===e&&ar(t),r=t.type,i=t.pendingProps,o=null!==e?e.memoizedProps:null,u=i.children,j(r,i)?u=null:null!==o&&j(r,o)&&(t.effectTag|=16),gr(e,t),4&t.mode&&1!==n&&U(r,i)?(t.expirationTime=t.childExpirationTime=1,t=null):(pr(e,t,u,n),t=t.child),t;case 6:return null===e&&ar(t),null;case 13:return Tr(e,t,n);case 4:return fn(t,t.stateNode.containerInfo),r=t.pendingProps,null===e?t.child=rn(t,null,r,n):pr(e,t,r,n),t.child;case 11:return r=t.type,i=t.pendingProps,hr(e,t,r,i=t.elementType===r?i:Et(r,i),n);case 7:return pr(e,t,t.pendingProps,n),t.child;case 8:case 12:return pr(e,t,t.pendingProps.children,n),t.child;case 10:e:{if(r=t.type._context,i=t.pendingProps,u=t.memoizedProps,xt(t,o=i.value),null!==u){var l=u.value;if(0===(o=_t(l,o)?0:0|("function"==typeof r._calculateChangedBits?r._calculateChangedBits(l,o):1073741823))){if(u.children===i.children&&!Re.current){t=Pr(e,t,n);break e}}else for(null!==(l=t.child)&&(l.return=t);null!==l;){var s=l.dependencies;if(null!==s){u=l.child;for(var c=s.firstContext;null!==c;){if(c.context===r&&0!=(c.observedBits&o)){1===l.tag&&((c=Ft(n,null)).tag=2,Bt(l,c)),l.expirationTime=t&&e<=t}function vo(e,t){var n=e.firstSuspendedTime,r=e.lastSuspendedTime;nt||0===n)&&(e.lastSuspendedTime=t),t<=e.lastPingedTime&&(e.lastPingedTime=0),t<=e.lastExpiredTime&&(e.lastExpiredTime=0)}function mo(e,t){t>e.firstPendingTime&&(e.firstPendingTime=t);var n=e.firstSuspendedTime;0!==n&&(t>=n?e.firstSuspendedTime=e.lastSuspendedTime=e.nextKnownPendingLevel=0:t>=e.lastSuspendedTime&&(e.lastSuspendedTime=t+1),t>e.nextKnownPendingLevel&&(e.nextKnownPendingLevel=t))}function go(e,t){var n=e.lastExpiredTime;(0===n||n>t)&&(e.lastExpiredTime=t)}function yo(e){var t=e._reactInternalFiber;if(void 0===t){if("function"==typeof e.render)throw Error(a(188));throw Error(a(268,Object.keys(e)))}return null===(e=A(t))?null:e.stateNode}function _o(e,t){null!==(e=e.memoizedState)&&null!==e.dehydrated&&e.retryTime{"use strict";e.exports=n(5767)},3296:(e,t,n)=>{"use strict";const r=n(5760);r.createWebSocketStream=n(6387),r.Server=n(43),r.Receiver=n(1762),r.Sender=n(9576),e.exports=r},8716:(e,t,n)=>{"use strict";const{EMPTY_BUFFER:r}=n(5739);function i(e,t){if(0===e.length)return r;if(1===e.length)return e[0];const n=Buffer.allocUnsafe(t);let i=0;for(let t=0;t{"use strict";e.exports={BINARY_TYPES:["nodebuffer","arraybuffer","fragments"],GUID:"258EAFA5-E914-47DA-95CA-C5AB0DC85B11",kStatusCode:Symbol("status-code"),kWebSocket:Symbol("websocket"),EMPTY_BUFFER:Buffer.alloc(0),NOOP:()=>{}}},7002:e=>{"use strict";class t{constructor(e,t){this.target=t,this.type=e}}class n extends t{constructor(e,t){super("message",t),this.data=e}}class r extends t{constructor(e,t,n){super("close",n),this.wasClean=n._closeFrameReceived&&n._closeFrameSent,this.reason=t,this.code=e}}class i extends t{constructor(e){super("open",e)}}class o extends t{constructor(e,t){super("error",t),this.message=e.message,this.error=e}}const u={addEventListener(e,t,u){if("function"!=typeof t)return;function a(e){t.call(this,new n(e,this))}function l(e,n){t.call(this,new r(e,n,this))}function s(e){t.call(this,new o(e,this))}function c(){t.call(this,new i(this))}const f=u&&u.once?"once":"on";"message"===e?(a._listener=t,this[f](e,a)):"close"===e?(l._listener=t,this[f](e,l)):"error"===e?(s._listener=t,this[f](e,s)):"open"===e?(c._listener=t,this[f](e,c)):this[f](e,t)},removeEventListener(e,t){const n=this.listeners(e);for(let r=0;r{"use strict";const t=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,1,1,1,1,1,0,0,1,1,0,1,1,0,1,1,1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,1,0,1,0];function n(e,t,n){void 0===e[t]?e[t]=[n]:e[t].push(n)}e.exports={format:function(e){return Object.keys(e).map(t=>{let n=e[t];return Array.isArray(n)||(n=[n]),n.map(e=>[t].concat(Object.keys(e).map(t=>{let n=e[t];return Array.isArray(n)||(n=[n]),n.map(e=>!0===e?t:`${t}=${e}`).join("; ")})).join("; ")).join(", ")}).join(", ")},parse:function(e){const r=Object.create(null);if(void 0===e||""===e)return r;let i,o,u=Object.create(null),a=!1,l=!1,s=!1,c=-1,f=-1,d=0;for(;d{"use strict";const t=Symbol("kDone"),n=Symbol("kRun");e.exports=class{constructor(e){this[t]=()=>{this.pending--,this[n]()},this.concurrency=e||1/0,this.jobs=[],this.pending=0}add(e){this.jobs.push(e),this[n]()}[n](){if(this.pending!==this.concurrency&&this.jobs.length){const e=this.jobs.shift();this.pending++,e(this[t])}}}},2309:(e,t,n)=>{"use strict";const r=n(8761),i=n(8716),o=n(1390),{kStatusCode:u,NOOP:a}=n(5739),l=Buffer.from([0,0,255,255]),s=Symbol("permessage-deflate"),c=Symbol("total-length"),f=Symbol("callback"),d=Symbol("buffers"),p=Symbol("error");let h;function v(e){this[d].push(e),this[c]+=e.length}function m(e){this[c]+=e.length,this[s]._maxPayload<1||this[c]<=this[s]._maxPayload?this[d].push(e):(this[p]=new RangeError("Max payload size exceeded"),this[p][u]=1009,this.removeListener("data",m),this.reset())}function g(e){this[s]._inflate=null,e[u]=1007,this[f](e)}e.exports=class{constructor(e,t,n){if(this._maxPayload=0|n,this._options=e||{},this._threshold=void 0!==this._options.threshold?this._options.threshold:1024,this._isServer=!!t,this._deflate=null,this._inflate=null,this.params=null,!h){const e=void 0!==this._options.concurrencyLimit?this._options.concurrencyLimit:10;h=new o(e)}}static get extensionName(){return"permessage-deflate"}offer(){const e={};return this._options.serverNoContextTakeover&&(e.server_no_context_takeover=!0),this._options.clientNoContextTakeover&&(e.client_no_context_takeover=!0),this._options.serverMaxWindowBits&&(e.server_max_window_bits=this._options.serverMaxWindowBits),this._options.clientMaxWindowBits?e.client_max_window_bits=this._options.clientMaxWindowBits:null==this._options.clientMaxWindowBits&&(e.client_max_window_bits=!0),e}accept(e){return e=this.normalizeParams(e),this.params=this._isServer?this.acceptAsServer(e):this.acceptAsClient(e),this.params}cleanup(){if(this._inflate&&(this._inflate.close(),this._inflate=null),this._deflate){const e=this._deflate[f];this._deflate.close(),this._deflate=null,e&&e(new Error("The deflate stream was closed while data was being processed"))}}acceptAsServer(e){const t=this._options,n=e.find(e=>!(!1===t.serverNoContextTakeover&&e.server_no_context_takeover||e.server_max_window_bits&&(!1===t.serverMaxWindowBits||"number"==typeof t.serverMaxWindowBits&&t.serverMaxWindowBits>e.server_max_window_bits)||"number"==typeof t.clientMaxWindowBits&&!e.client_max_window_bits));if(!n)throw new Error("None of the extension offers can be accepted");return t.serverNoContextTakeover&&(n.server_no_context_takeover=!0),t.clientNoContextTakeover&&(n.client_no_context_takeover=!0),"number"==typeof t.serverMaxWindowBits&&(n.server_max_window_bits=t.serverMaxWindowBits),"number"==typeof t.clientMaxWindowBits?n.client_max_window_bits=t.clientMaxWindowBits:!0!==n.client_max_window_bits&&!1!==t.clientMaxWindowBits||delete n.client_max_window_bits,n}acceptAsClient(e){const t=e[0];if(!1===this._options.clientNoContextTakeover&&t.client_no_context_takeover)throw new Error('Unexpected parameter "client_no_context_takeover"');if(t.client_max_window_bits){if(!1===this._options.clientMaxWindowBits||"number"==typeof this._options.clientMaxWindowBits&&t.client_max_window_bits>this._options.clientMaxWindowBits)throw new Error('Unexpected or invalid parameter "client_max_window_bits"')}else"number"==typeof this._options.clientMaxWindowBits&&(t.client_max_window_bits=this._options.clientMaxWindowBits);return t}normalizeParams(e){return e.forEach(e=>{Object.keys(e).forEach(t=>{let n=e[t];if(n.length>1)throw new Error(`Parameter "${t}" must have only a single value`);if(n=n[0],"client_max_window_bits"===t){if(!0!==n){const e=+n;if(!Number.isInteger(e)||e<8||e>15)throw new TypeError(`Invalid value for parameter "${t}": ${n}`);n=e}else if(!this._isServer)throw new TypeError(`Invalid value for parameter "${t}": ${n}`)}else if("server_max_window_bits"===t){const e=+n;if(!Number.isInteger(e)||e<8||e>15)throw new TypeError(`Invalid value for parameter "${t}": ${n}`);n=e}else{if("client_no_context_takeover"!==t&&"server_no_context_takeover"!==t)throw new Error(`Unknown parameter "${t}"`);if(!0!==n)throw new TypeError(`Invalid value for parameter "${t}": ${n}`)}e[t]=n})}),e}decompress(e,t,n){h.add(r=>{this._decompress(e,t,(e,t)=>{r(),n(e,t)})})}compress(e,t,n){h.add(r=>{this._compress(e,t,(e,t)=>{r(),n(e,t)})})}_decompress(e,t,n){const o=this._isServer?"client":"server";if(!this._inflate){const e=o+"_max_window_bits",t="number"!=typeof this.params[e]?r.Z_DEFAULT_WINDOWBITS:this.params[e];this._inflate=r.createInflateRaw({...this._options.zlibInflateOptions,windowBits:t}),this._inflate[s]=this,this._inflate[c]=0,this._inflate[d]=[],this._inflate.on("error",g),this._inflate.on("data",m)}this._inflate[f]=n,this._inflate.write(e),t&&this._inflate.write(l),this._inflate.flush(()=>{const e=this._inflate[p];if(e)return this._inflate.close(),this._inflate=null,void n(e);const r=i.concat(this._inflate[d],this._inflate[c]);t&&this.params[o+"_no_context_takeover"]?(this._inflate.close(),this._inflate=null):(this._inflate[c]=0,this._inflate[d]=[]),n(null,r)})}_compress(e,t,n){const o=this._isServer?"server":"client";if(!this._deflate){const e=o+"_max_window_bits",t="number"!=typeof this.params[e]?r.Z_DEFAULT_WINDOWBITS:this.params[e];this._deflate=r.createDeflateRaw({...this._options.zlibDeflateOptions,windowBits:t}),this._deflate[c]=0,this._deflate[d]=[],this._deflate.on("error",a),this._deflate.on("data",v)}this._deflate[f]=n,this._deflate.write(e),this._deflate.flush(r.Z_SYNC_FLUSH,()=>{if(!this._deflate)return;let e=i.concat(this._deflate[d],this._deflate[c]);t&&(e=e.slice(0,e.length-4)),this._deflate[f]=null,t&&this.params[o+"_no_context_takeover"]?(this._deflate.close(),this._deflate=null):(this._deflate[c]=0,this._deflate[d]=[]),n(null,e)})}}},1762:(e,t,n)=>{"use strict";const{Writable:r}=n(2413),i=n(2309),{BINARY_TYPES:o,EMPTY_BUFFER:u,kStatusCode:a,kWebSocket:l}=n(5739),{concat:s,toArrayBuffer:c,unmask:f}=n(8716),{isValidStatusCode:d,isValidUTF8:p}=n(9498);function h(e,t,n,r){const i=new e(n?"Invalid WebSocket frame: "+t:t);return Error.captureStackTrace(i,h),i[a]=r,i}e.exports=class extends r{constructor(e,t,n,r){super(),this._binaryType=e||o[0],this[l]=void 0,this._extensions=t||{},this._isServer=!!n,this._maxPayload=0|r,this._bufferedBytes=0,this._buffers=[],this._compressed=!1,this._payloadLength=0,this._mask=void 0,this._fragmented=0,this._masked=!1,this._fin=!1,this._opcode=0,this._totalPayloadLength=0,this._messageLength=0,this._fragments=[],this._state=0,this._loop=!1}_write(e,t,n){if(8===this._opcode&&0==this._state)return n();this._bufferedBytes+=e.length,this._buffers.push(e),this.startLoop(n)}consume(e){if(this._bufferedBytes-=e,e===this._buffers[0].length)return this._buffers.shift();if(e=n.length?t.set(this._buffers.shift(),r):(t.set(new Uint8Array(n.buffer,n.byteOffset,e),r),this._buffers[0]=n.slice(e)),e-=n.length}while(e>0);return t}startLoop(e){let t;this._loop=!0;do{switch(this._state){case 0:t=this.getInfo();break;case 1:t=this.getPayloadLength16();break;case 2:t=this.getPayloadLength64();break;case 3:this.getMask();break;case 4:t=this.getData(e);break;default:return void(this._loop=!1)}}while(this._loop);e(t)}getInfo(){if(this._bufferedBytes<2)return void(this._loop=!1);const e=this.consume(2);if(0!=(48&e[0]))return this._loop=!1,h(RangeError,"RSV2 and RSV3 must be clear",!0,1002);const t=64==(64&e[0]);if(t&&!this._extensions[i.extensionName])return this._loop=!1,h(RangeError,"RSV1 must be clear",!0,1002);if(this._fin=128==(128&e[0]),this._opcode=15&e[0],this._payloadLength=127&e[1],0===this._opcode){if(t)return this._loop=!1,h(RangeError,"RSV1 must be clear",!0,1002);if(!this._fragmented)return this._loop=!1,h(RangeError,"invalid opcode 0",!0,1002);this._opcode=this._fragmented}else if(1===this._opcode||2===this._opcode){if(this._fragmented)return this._loop=!1,h(RangeError,"invalid opcode "+this._opcode,!0,1002);this._compressed=t}else{if(!(this._opcode>7&&this._opcode<11))return this._loop=!1,h(RangeError,"invalid opcode "+this._opcode,!0,1002);if(!this._fin)return this._loop=!1,h(RangeError,"FIN must be set",!0,1002);if(t)return this._loop=!1,h(RangeError,"RSV1 must be clear",!0,1002);if(this._payloadLength>125)return this._loop=!1,h(RangeError,"invalid payload length "+this._payloadLength,!0,1002)}if(this._fin||this._fragmented||(this._fragmented=this._opcode),this._masked=128==(128&e[1]),this._isServer){if(!this._masked)return this._loop=!1,h(RangeError,"MASK must be set",!0,1002)}else if(this._masked)return this._loop=!1,h(RangeError,"MASK must be clear",!0,1002);if(126===this._payloadLength)this._state=1;else{if(127!==this._payloadLength)return this.haveLength();this._state=2}}getPayloadLength16(){if(!(this._bufferedBytes<2))return this._payloadLength=this.consume(2).readUInt16BE(0),this.haveLength();this._loop=!1}getPayloadLength64(){if(this._bufferedBytes<8)return void(this._loop=!1);const e=this.consume(8),t=e.readUInt32BE(0);return t>Math.pow(2,21)-1?(this._loop=!1,h(RangeError,"Unsupported WebSocket frame: payload length > 2^53 - 1",!1,1009)):(this._payloadLength=t*Math.pow(2,32)+e.readUInt32BE(4),this.haveLength())}haveLength(){if(this._payloadLength&&this._opcode<8&&(this._totalPayloadLength+=this._payloadLength,this._totalPayloadLength>this._maxPayload&&this._maxPayload>0))return this._loop=!1,h(RangeError,"Max payload size exceeded",!1,1009);this._masked?this._state=3:this._state=4}getMask(){this._bufferedBytes<4?this._loop=!1:(this._mask=this.consume(4),this._state=4)}getData(e){let t=u;if(this._payloadLength){if(this._bufferedBytes7?this.controlMessage(t):this._compressed?(this._state=5,void this.decompress(t,e)):(t.length&&(this._messageLength=this._totalPayloadLength,this._fragments.push(t)),this.dataMessage())}decompress(e,t){this._extensions[i.extensionName].decompress(e,this._fin,(e,n)=>{if(e)return t(e);if(n.length){if(this._messageLength+=n.length,this._messageLength>this._maxPayload&&this._maxPayload>0)return t(h(RangeError,"Max payload size exceeded",!1,1009));this._fragments.push(n)}const r=this.dataMessage();if(r)return t(r);this.startLoop(t)})}dataMessage(){if(this._fin){const e=this._messageLength,t=this._fragments;if(this._totalPayloadLength=0,this._messageLength=0,this._fragmented=0,this._fragments=[],2===this._opcode){let n;n="nodebuffer"===this._binaryType?s(t,e):"arraybuffer"===this._binaryType?c(s(t,e)):t,this.emit("message",n)}else{const n=s(t,e);if(!p(n))return this._loop=!1,h(Error,"invalid UTF-8 sequence",!0,1007);this.emit("message",n.toString())}}this._state=0}controlMessage(e){if(8===this._opcode)if(this._loop=!1,0===e.length)this.emit("conclude",1005,""),this.end();else{if(1===e.length)return h(RangeError,"invalid payload length 1",!0,1002);{const t=e.readUInt16BE(0);if(!d(t))return h(RangeError,"invalid status code "+t,!0,1002);const n=e.slice(2);if(!p(n))return h(Error,"invalid UTF-8 sequence",!0,1007);this.emit("conclude",t,n.toString()),this.end()}}else 9===this._opcode?this.emit("ping",e):this.emit("pong",e);this._state=0}}},9576:(e,t,n)=>{"use strict";const{randomFillSync:r}=n(6417),i=n(2309),{EMPTY_BUFFER:o}=n(5739),{isValidStatusCode:u}=n(9498),{mask:a,toBuffer:l}=n(8716),s=Buffer.alloc(4);class c{constructor(e,t){this._extensions=t||{},this._socket=e,this._firstFragment=!0,this._compress=!1,this._bufferedBytes=0,this._deflating=!1,this._queue=[]}static frame(e,t){const n=t.mask&&t.readOnly;let i=t.mask?6:2,o=e.length;e.length>=65536?(i+=8,o=127):e.length>125&&(i+=2,o=126);const u=Buffer.allocUnsafe(n?e.length+i:i);return u[0]=t.fin?128|t.opcode:t.opcode,t.rsv1&&(u[0]|=64),u[1]=o,126===o?u.writeUInt16BE(e.length,2):127===o&&(u.writeUInt32BE(0,2),u.writeUInt32BE(e.length,6)),t.mask?(r(s,0,4),u[1]|=128,u[i-4]=s[0],u[i-3]=s[1],u[i-2]=s[2],u[i-1]=s[3],n?(a(e,s,u,i,e.length),[u]):(a(e,s,e,0,e.length),[u,e])):[u,e]}close(e,t,n,r){let i;if(void 0===e)i=o;else{if("number"!=typeof e||!u(e))throw new TypeError("First argument must be a valid error code number");if(void 0===t||""===t)i=Buffer.allocUnsafe(2),i.writeUInt16BE(e,0);else{const n=Buffer.byteLength(t);if(n>123)throw new RangeError("The message must not be greater than 123 bytes");i=Buffer.allocUnsafe(2+n),i.writeUInt16BE(e,0),i.write(t,2)}}this._deflating?this.enqueue([this.doClose,i,n,r]):this.doClose(i,n,r)}doClose(e,t,n){this.sendFrame(c.frame(e,{fin:!0,rsv1:!1,opcode:8,mask:t,readOnly:!1}),n)}ping(e,t,n){const r=l(e);if(r.length>125)throw new RangeError("The data size must not be greater than 125 bytes");this._deflating?this.enqueue([this.doPing,r,t,l.readOnly,n]):this.doPing(r,t,l.readOnly,n)}doPing(e,t,n,r){this.sendFrame(c.frame(e,{fin:!0,rsv1:!1,opcode:9,mask:t,readOnly:n}),r)}pong(e,t,n){const r=l(e);if(r.length>125)throw new RangeError("The data size must not be greater than 125 bytes");this._deflating?this.enqueue([this.doPong,r,t,l.readOnly,n]):this.doPong(r,t,l.readOnly,n)}doPong(e,t,n,r){this.sendFrame(c.frame(e,{fin:!0,rsv1:!1,opcode:10,mask:t,readOnly:n}),r)}send(e,t,n){const r=l(e),o=this._extensions[i.extensionName];let u=t.binary?2:1,a=t.compress;if(this._firstFragment?(this._firstFragment=!1,a&&o&&(a=r.length>=o._threshold),this._compress=a):(a=!1,u=0),t.fin&&(this._firstFragment=!0),o){const e={fin:t.fin,rsv1:a,opcode:u,mask:t.mask,readOnly:l.readOnly};this._deflating?this.enqueue([this.dispatch,r,this._compress,e,n]):this.dispatch(r,this._compress,e,n)}else this.sendFrame(c.frame(r,{fin:t.fin,rsv1:!1,opcode:u,mask:t.mask,readOnly:l.readOnly}),n)}dispatch(e,t,n,r){if(!t)return void this.sendFrame(c.frame(e,n),r);const o=this._extensions[i.extensionName];this._bufferedBytes+=e.length,this._deflating=!0,o.compress(e,n.fin,(t,i)=>{if(this._socket.destroyed){const e=new Error("The socket was closed while data was being compressed");"function"==typeof r&&r(e);for(let t=0;t{"use strict";const{Duplex:r}=n(2413);function i(e){e.emit("close")}function o(){!this.destroyed&&this._writableState.finished&&this.destroy()}function u(e){this.removeListener("error",u),this.destroy(),0===this.listenerCount("error")&&this.emit("error",e)}e.exports=function(e,t){let n=!0;function a(){n&&e._socket.resume()}e.readyState===e.CONNECTING?e.once("open",(function(){e._receiver.removeAllListeners("drain"),e._receiver.on("drain",a)})):(e._receiver.removeAllListeners("drain"),e._receiver.on("drain",a));const l=new r({...t,autoDestroy:!1,emitClose:!1,objectMode:!1,writableObjectMode:!1});return e.on("message",(function(t){l.push(t)||(n=!1,e._socket.pause())})),e.once("error",(function(e){l.destroyed||l.destroy(e)})),e.once("close",(function(){l.destroyed||l.push(null)})),l._destroy=function(t,n){if(e.readyState===e.CLOSED)return n(t),void process.nextTick(i,l);let r=!1;e.once("error",(function(e){r=!0,n(e)})),e.once("close",(function(){r||n(t),process.nextTick(i,l)})),e.terminate()},l._final=function(t){e.readyState!==e.CONNECTING?null!==e._socket&&(e._socket._writableState.finished?(t(),l._readableState.endEmitted&&l.destroy()):(e._socket.once("finish",(function(){t()})),e.close())):e.once("open",(function(){l._final(t)}))},l._read=function(){e.readyState!==e.OPEN||n||(n=!0,e._receiver._writableState.needDrain||e._socket.resume())},l._write=function(t,n,r){e.readyState!==e.CONNECTING?e.send(t,r):e.once("open",(function(){l._write(t,n,r)}))},l.on("end",o),l.on("error",u),l}},9498:(e,t,n)=>{"use strict";try{const e=n(Object(function(){var e=new Error("Cannot find module 'utf-8-validate'");throw e.code="MODULE_NOT_FOUND",e}()));t.isValidUTF8="object"==typeof e?e.Validation.isValidUTF8:e}catch(e){t.isValidUTF8=()=>!0}t.isValidStatusCode=e=>e>=1e3&&e<=1014&&1004!==e&&1005!==e&&1006!==e||e>=3e3&&e<=4999},43:(e,t,n)=>{"use strict";const r=n(8614),{createHash:i}=n(6417),{createServer:o,STATUS_CODES:u}=n(8605),a=n(2309),l=n(5760),{format:s,parse:c}=n(8162),{GUID:f,kWebSocket:d}=n(5739),p=/^[+/0-9A-Za-z]{22}==$/;function h(e){e.emit("close")}function v(){this.destroy()}function m(e,t,n,r){e.writable&&(n=n||u[t],r={Connection:"close","Content-Type":"text/html","Content-Length":Buffer.byteLength(n),...r},e.write(`HTTP/1.1 ${t} ${u[t]}\r\n`+Object.keys(r).map(e=>`${e}: ${r[e]}`).join("\r\n")+"\r\n\r\n"+n)),e.removeListener("error",v),e.destroy()}e.exports=class extends r{constructor(e,t){if(super(),null==(e={maxPayload:104857600,perMessageDeflate:!1,handleProtocols:null,clientTracking:!0,verifyClient:null,noServer:!1,backlog:null,server:null,host:null,path:null,port:null,...e}).port&&!e.server&&!e.noServer)throw new TypeError('One of the "port", "server", or "noServer" options must be specified');null!=e.port?(this._server=o((e,t)=>{const n=u[426];t.writeHead(426,{"Content-Length":n.length,"Content-Type":"text/plain"}),t.end(n)}),this._server.listen(e.port,e.host,e.backlog,t)):e.server&&(this._server=e.server),this._server&&(this._removeListeners=function(e,t){for(const n of Object.keys(t))e.on(n,t[n]);return function(){for(const n of Object.keys(t))e.removeListener(n,t[n])}}(this._server,{listening:this.emit.bind(this,"listening"),error:this.emit.bind(this,"error"),upgrade:(e,t,n)=>{this.handleUpgrade(e,t,n,t=>{this.emit("connection",t,e)})}})),!0===e.perMessageDeflate&&(e.perMessageDeflate={}),e.clientTracking&&(this.clients=new Set),this.options=e}address(){if(this.options.noServer)throw new Error('The server is operating in "noServer" mode');return this._server?this._server.address():null}close(e){if(e&&this.once("close",e),this.clients)for(const e of this.clients)e.terminate();const t=this._server;t&&(this._removeListeners(),this._removeListeners=this._server=null,null!=this.options.port)?t.close(()=>this.emit("close")):process.nextTick(h,this)}shouldHandle(e){if(this.options.path){const t=e.url.indexOf("?");if((-1!==t?e.url.slice(0,t):e.url)!==this.options.path)return!1}return!0}handleUpgrade(e,t,n,r){t.on("error",v);const i=void 0!==e.headers["sec-websocket-key"]&&e.headers["sec-websocket-key"].trim(),o=+e.headers["sec-websocket-version"],u={};if("GET"!==e.method||"websocket"!==e.headers.upgrade.toLowerCase()||!i||!p.test(i)||8!==o&&13!==o||!this.shouldHandle(e))return m(t,400);if(this.options.perMessageDeflate){const n=new a(this.options.perMessageDeflate,!0,this.options.maxPayload);try{const t=c(e.headers["sec-websocket-extensions"]);t[a.extensionName]&&(n.accept(t[a.extensionName]),u[a.extensionName]=n)}catch(e){return m(t,400)}}if(this.options.verifyClient){const a={origin:e.headers[""+(8===o?"sec-websocket-origin":"origin")],secure:!(!e.connection.authorized&&!e.connection.encrypted),req:e};if(2===this.options.verifyClient.length)return void this.options.verifyClient(a,(o,a,l,s)=>{if(!o)return m(t,a||401,l,s);this.completeUpgrade(i,u,e,t,n,r)});if(!this.options.verifyClient(a))return m(t,401)}this.completeUpgrade(i,u,e,t,n,r)}completeUpgrade(e,t,n,r,o,u){if(!r.readable||!r.writable)return r.destroy();if(r[d])throw new Error("server.handleUpgrade() was called more than once with the same socket, possibly due to a misconfiguration");const c=["HTTP/1.1 101 Switching Protocols","Upgrade: websocket","Connection: Upgrade","Sec-WebSocket-Accept: "+i("sha1").update(e+f).digest("base64")],p=new l(null);let h=n.headers["sec-websocket-protocol"];if(h&&(h=h.trim().split(/ *, */),h=this.options.handleProtocols?this.options.handleProtocols(h,n):h[0],h&&(c.push("Sec-WebSocket-Protocol: "+h),p.protocol=h)),t[a.extensionName]){const e=t[a.extensionName].params,n=s({[a.extensionName]:[e]});c.push("Sec-WebSocket-Extensions: "+n),p._extensions=t}this.emit("headers",c,n),r.write(c.concat("\r\n").join("\r\n")),r.removeListener("error",v),p.setSocket(r,o,this.options.maxPayload),this.clients&&(this.clients.add(p),p.on("close",()=>this.clients.delete(p))),u(p)}}},5760:(e,t,n)=>{"use strict";const r=n(8614),i=n(7211),o=n(8605),u=n(1631),a=n(4016),{randomBytes:l,createHash:s}=n(6417),{URL:c}=n(8835),f=n(2309),d=n(1762),p=n(9576),{BINARY_TYPES:h,EMPTY_BUFFER:v,GUID:m,kStatusCode:g,kWebSocket:y,NOOP:_}=n(5739),{addEventListener:b,removeEventListener:w}=n(7002),{format:E,parse:D}=n(8162),{toBuffer:S}=n(8716),C=["CONNECTING","OPEN","CLOSING","CLOSED"],k=[8,13];class T extends r{constructor(e,t,n){super(),this.readyState=T.CONNECTING,this.protocol="",this._binaryType=h[0],this._closeFrameReceived=!1,this._closeFrameSent=!1,this._closeMessage="",this._closeTimer=null,this._closeCode=1006,this._extensions={},this._receiver=null,this._sender=null,this._socket=null,null!==e?(this._bufferedAmount=0,this._isServer=!1,this._redirects=0,Array.isArray(t)?t=t.join(", "):"object"==typeof t&&null!==t&&(n=t,t=void 0),function e(t,n,r,u){const a={protocolVersion:k[1],maxPayload:104857600,perMessageDeflate:!0,followRedirects:!1,maxRedirects:10,...u,createConnection:void 0,socketPath:void 0,hostname:void 0,protocol:void 0,timeout:void 0,method:void 0,host:void 0,path:void 0,port:void 0};if(!k.includes(a.protocolVersion))throw new RangeError(`Unsupported protocol version: ${a.protocolVersion} (supported versions: ${k.join(", ")})`);let d;n instanceof c?(d=n,t.url=n.href):(d=new c(n),t.url=n);const p="ws+unix:"===d.protocol;if(!(d.host||p&&d.pathname))throw new Error("Invalid URL: "+t.url);const h="wss:"===d.protocol||"https:"===d.protocol,v=h?443:80,g=l(16).toString("base64"),y=h?i.get:o.get;let _;a.createConnection=h?A:x,a.defaultPort=a.defaultPort||v,a.port=d.port||v,a.host=d.hostname.startsWith("[")?d.hostname.slice(1,-1):d.hostname,a.headers={"Sec-WebSocket-Version":a.protocolVersion,"Sec-WebSocket-Key":g,Connection:"Upgrade",Upgrade:"websocket",...a.headers},a.path=d.pathname+d.search,a.timeout=a.handshakeTimeout,a.perMessageDeflate&&(_=new f(!0!==a.perMessageDeflate?a.perMessageDeflate:{},!1,a.maxPayload),a.headers["Sec-WebSocket-Extensions"]=E({[f.extensionName]:_.offer()}));r&&(a.headers["Sec-WebSocket-Protocol"]=r);a.origin&&(a.protocolVersion<13?a.headers["Sec-WebSocket-Origin"]=a.origin:a.headers.Origin=a.origin);(d.username||d.password)&&(a.auth=`${d.username}:${d.password}`);if(p){const e=a.path.split(":");a.socketPath=e[0],a.path=e[1]}let b=t._req=y(a);a.timeout&&b.on("timeout",()=>{O(t,b,"Opening handshake has timed out")});b.on("error",e=>{t._req.aborted||(b=t._req=null,t.readyState=T.CLOSING,t.emit("error",e),t.emitClose())}),b.on("response",i=>{const o=i.headers.location,l=i.statusCode;if(o&&a.followRedirects&&l>=300&&l<400){if(++t._redirects>a.maxRedirects)return void O(t,b,"Maximum redirects exceeded");b.abort();const i=new c(o,n);e(t,i,r,u)}else t.emit("unexpected-response",b,i)||O(t,b,"Unexpected server response: "+i.statusCode)}),b.on("upgrade",(e,n,i)=>{if(t.emit("upgrade",e),t.readyState!==T.CONNECTING)return;b=t._req=null;const o=s("sha1").update(g+m).digest("base64");if(e.headers["sec-websocket-accept"]!==o)return void O(t,n,"Invalid Sec-WebSocket-Accept header");const u=e.headers["sec-websocket-protocol"],l=(r||"").split(/, */);let c;if(!r&&u?c="Server sent a subprotocol but none was requested":r&&!u?c="Server sent no subprotocol":u&&!l.includes(u)&&(c="Server sent an invalid subprotocol"),c)O(t,n,c);else{if(u&&(t.protocol=u),_)try{const n=D(e.headers["sec-websocket-extensions"]);n[f.extensionName]&&(_.accept(n[f.extensionName]),t._extensions[f.extensionName]=_)}catch(e){return void O(t,n,"Invalid Sec-WebSocket-Extensions header")}t.setSocket(n,i,a.maxPayload)}})}(this,e,t,n)):this._isServer=!0}get CONNECTING(){return T.CONNECTING}get CLOSING(){return T.CLOSING}get CLOSED(){return T.CLOSED}get OPEN(){return T.OPEN}get binaryType(){return this._binaryType}set binaryType(e){h.includes(e)&&(this._binaryType=e,this._receiver&&(this._receiver._binaryType=e))}get bufferedAmount(){return this._socket?this._socket._writableState.length+this._sender._bufferedBytes:this._bufferedAmount}get extensions(){return Object.keys(this._extensions).join()}setSocket(e,t,n){const r=new d(this._binaryType,this._extensions,this._isServer,n);this._sender=new p(e,this._extensions),this._receiver=r,this._socket=e,r[y]=this,e[y]=this,r.on("conclude",I),r.on("drain",N),r.on("error",M),r.on("message",F),r.on("ping",L),r.on("pong",B),e.setTimeout(0),e.setNoDelay(),t.length>0&&e.unshift(t),e.on("close",j),e.on("data",U),e.on("end",z),e.on("error",W),this.readyState=T.OPEN,this.emit("open")}emitClose(){if(!this._socket)return this.readyState=T.CLOSED,void this.emit("close",this._closeCode,this._closeMessage);this._extensions[f.extensionName]&&this._extensions[f.extensionName].cleanup(),this._receiver.removeAllListeners(),this.readyState=T.CLOSED,this.emit("close",this._closeCode,this._closeMessage)}close(e,t){if(this.readyState!==T.CLOSED){if(this.readyState===T.CONNECTING){const e="WebSocket was closed before the connection was established";return O(this,this._req,e)}this.readyState!==T.CLOSING?(this.readyState=T.CLOSING,this._sender.close(e,t,!this._isServer,e=>{e||(this._closeFrameSent=!0,this._closeFrameReceived&&this._socket.end())}),this._closeTimer=setTimeout(this._socket.destroy.bind(this._socket),3e4)):this._closeFrameSent&&this._closeFrameReceived&&this._socket.end()}}ping(e,t,n){if(this.readyState===T.CONNECTING)throw new Error("WebSocket is not open: readyState 0 (CONNECTING)");"function"==typeof e?(n=e,e=t=void 0):"function"==typeof t&&(n=t,t=void 0),"number"==typeof e&&(e=e.toString()),this.readyState===T.OPEN?(void 0===t&&(t=!this._isServer),this._sender.ping(e||v,t,n)):P(this,e,n)}pong(e,t,n){if(this.readyState===T.CONNECTING)throw new Error("WebSocket is not open: readyState 0 (CONNECTING)");"function"==typeof e?(n=e,e=t=void 0):"function"==typeof t&&(n=t,t=void 0),"number"==typeof e&&(e=e.toString()),this.readyState===T.OPEN?(void 0===t&&(t=!this._isServer),this._sender.pong(e||v,t,n)):P(this,e,n)}send(e,t,n){if(this.readyState===T.CONNECTING)throw new Error("WebSocket is not open: readyState 0 (CONNECTING)");if("function"==typeof t&&(n=t,t={}),"number"==typeof e&&(e=e.toString()),this.readyState!==T.OPEN)return void P(this,e,n);const r={binary:"string"!=typeof e,mask:!this._isServer,compress:!0,fin:!0,...t};this._extensions[f.extensionName]||(r.compress=!1),this._sender.send(e||v,r,n)}terminate(){if(this.readyState!==T.CLOSED){if(this.readyState===T.CONNECTING){const e="WebSocket was closed before the connection was established";return O(this,this._req,e)}this._socket&&(this.readyState=T.CLOSING,this._socket.destroy())}}}function x(e){return e.path=e.socketPath,u.connect(e)}function A(e){return e.path=void 0,e.servername||""===e.servername||(e.servername=e.host),a.connect(e)}function O(e,t,n){e.readyState=T.CLOSING;const r=new Error(n);Error.captureStackTrace(r,O),t.setHeader?(t.abort(),t.once("abort",e.emitClose.bind(e)),e.emit("error",r)):(t.destroy(r),t.once("error",e.emit.bind(e,"error")),t.once("close",e.emitClose.bind(e)))}function P(e,t,n){if(t){const n=S(t).length;e._socket?e._sender._bufferedBytes+=n:e._bufferedAmount+=n}if(n){n(new Error(`WebSocket is not open: readyState ${e.readyState} (${C[e.readyState]})`))}}function I(e,t){const n=this[y];n._socket.removeListener("data",U),n._socket.resume(),n._closeFrameReceived=!0,n._closeMessage=t,n._closeCode=e,1005===e?n.close():n.close(e,t)}function N(){this[y]._socket.resume()}function M(e){const t=this[y];t._socket.removeListener("data",U),t.readyState=T.CLOSING,t._closeCode=e[g],t.emit("error",e),t._socket.destroy()}function R(){this[y].emitClose()}function F(e){this[y].emit("message",e)}function L(e){const t=this[y];t.pong(e,!t._isServer,_),t.emit("ping",e)}function B(e){this[y].emit("pong",e)}function j(){const e=this[y];this.removeListener("close",j),this.removeListener("end",z),e.readyState=T.CLOSING,e._socket.read(),e._receiver.end(),this.removeListener("data",U),this[y]=void 0,clearTimeout(e._closeTimer),e._receiver._writableState.finished||e._receiver._writableState.errorEmitted?e.emitClose():(e._receiver.on("error",R),e._receiver.on("finish",R))}function U(e){this[y]._receiver.write(e)||this.pause()}function z(){const e=this[y];e.readyState=T.CLOSING,e._receiver.end(),this.end()}function W(){const e=this[y];this.removeListener("error",W),this.on("error",_),e&&(e.readyState=T.CLOSING,this.destroy())}C.forEach((e,t)=>{T[e]=t}),["open","error","close","message"].forEach(e=>{Object.defineProperty(T.prototype,"on"+e,{get(){const t=this.listeners(e);for(let e=0;e{"use strict";function r(e){const t=[...e.caches],n=t.shift();return void 0===n?i():{get:(e,i,o={miss:()=>Promise.resolve()})=>n.get(e,i,o).catch(()=>r({caches:t}).get(e,i,o)),set:(e,i)=>n.set(e,i).catch(()=>r({caches:t}).set(e,i)),delete:e=>n.delete(e).catch(()=>r({caches:t}).delete(e)),clear:()=>n.clear().catch(()=>r({caches:t}).clear())}}function i(){return{get:(e,t,n={miss:()=>Promise.resolve()})=>t().then(e=>Promise.all([e,n.miss(e)])).then(([e])=>e),set:(e,t)=>Promise.resolve(t),delete:e=>Promise.resolve(),clear:()=>Promise.resolve()}}n.r(t),n.d(t,{createFallbackableCache:()=>r,createNullCache:()=>i})},6712:(e,t,n)=>{"use strict";function r(e={serializable:!0}){let t={};return{get(n,r,i={miss:()=>Promise.resolve()}){const o=JSON.stringify(n);if(o in t)return Promise.resolve(e.serializable?JSON.parse(t[o]):t[o]);const u=r(),a=i&&i.miss||(()=>Promise.resolve());return u.then(e=>a(e)).then(()=>u)},set:(n,r)=>(t[JSON.stringify(n)]=e.serializable?JSON.stringify(r):r,Promise.resolve(r)),delete:e=>(delete t[JSON.stringify(e)],Promise.resolve()),clear:()=>(t={},Promise.resolve())}}n.r(t),n.d(t,{createInMemoryCache:()=>r})},2223:(e,t,n)=>{"use strict";n.r(t),n.d(t,{addABTest:()=>a,createAnalyticsClient:()=>u,deleteABTest:()=>l,getABTest:()=>s,getABTests:()=>c,stopABTest:()=>f});var r=n(1757),i=n(7858),o=n(5541);const u=e=>{const t=e.region||"us",n=(0,r.createAuth)(r.AuthMode.WithinHeaders,e.appId,e.apiKey),o=(0,i.createTransporter)({hosts:[{url:`analytics.${t}.algolia.com`}],...e,headers:{...n.headers(),"content-type":"application/json",...e.headers},queryParameters:{...n.queryParameters(),...e.queryParameters}}),u=e.appId;return(0,r.addMethods)({appId:u,transporter:o},e.methods)},a=e=>(t,n)=>e.transporter.write({method:o.N.Post,path:"2/abtests",data:t},n),l=e=>(t,n)=>e.transporter.write({method:o.N.Delete,path:(0,r.encode)("2/abtests/%s",t)},n),s=e=>(t,n)=>e.transporter.read({method:o.N.Get,path:(0,r.encode)("2/abtests/%s",t)},n),c=e=>t=>e.transporter.read({method:o.N.Get,path:"2/abtests"},t),f=e=>(t,n)=>e.transporter.write({method:o.N.Post,path:(0,r.encode)("2/abtests/%s/stop",t)},n)},1757:(e,t,n)=>{"use strict";function r(e,t,n){const r={"x-algolia-api-key":n,"x-algolia-application-id":t};return{headers:()=>e===f.WithinHeaders?r:{},queryParameters:()=>e===f.WithinQueryParameters?r:{}}}function i(e){let t=0;const n=()=>(t++,new Promise(r=>{setTimeout(()=>{r(e(n))},Math.min(100*t,1e3))}));return e(n)}function o(e,t=((e,t)=>Promise.resolve())){return Object.assign(e,{wait:n=>o(e.then(e=>Promise.all([t(e,n),e])).then(e=>e[1]))})}function u(e){let t=e.length-1;for(;t>0;t--){const n=Math.floor(Math.random()*(t+1)),r=e[t];e[t]=e[n],e[n]=r}return e}function a(e,t){return Object.keys(void 0!==t?t:{}).forEach(n=>{e[n]=t[n](e)}),e}function l(e,...t){let n=0;return e.replace(/%s/g,()=>encodeURIComponent(t[n++]))}n.r(t),n.d(t,{AuthMode:()=>f,addMethods:()=>a,createAuth:()=>r,createRetryablePromise:()=>i,createWaitablePromise:()=>o,destroy:()=>c,encode:()=>l,shuffle:()=>u,version:()=>s});const s="4.2.0",c=e=>()=>e.transporter.requester.destroy(),f={WithinQueryParameters:0,WithinHeaders:1}},103:(e,t,n)=>{"use strict";n.r(t),n.d(t,{createRecommendationClient:()=>u,getPersonalizationStrategy:()=>a,setPersonalizationStrategy:()=>l});var r=n(1757),i=n(7858),o=n(5541);const u=e=>{const t=e.region||"us",n=(0,r.createAuth)(r.AuthMode.WithinHeaders,e.appId,e.apiKey),o=(0,i.createTransporter)({hosts:[{url:`recommendation.${t}.algolia.com`}],...e,headers:{...n.headers(),"content-type":"application/json",...e.headers},queryParameters:{...n.queryParameters(),...e.queryParameters}});return(0,r.addMethods)({appId:e.appId,transporter:o},e.methods)},a=e=>t=>e.transporter.read({method:o.N.Get,path:"1/strategies/personalization"},t),l=e=>(t,n)=>e.transporter.write({method:o.N.Post,path:"1/strategies/personalization",data:t},n)},6586:(e,t,n)=>{"use strict";n.r(t),n.d(t,{ApiKeyACLEnum:()=>Te,BatchActionEnum:()=>xe,ScopeEnum:()=>Ae,StrategyEnum:()=>Oe,SynonymEnum:()=>Pe,addApiKey:()=>d,assignUserID:()=>p,assignUserIDs:()=>h,batch:()=>z,browseObjects:()=>W,browseRules:()=>H,browseSynonyms:()=>V,chunkedBatch:()=>q,clearObjects:()=>G,clearRules:()=>$,clearSynonyms:()=>Y,copyIndex:()=>v,copyRules:()=>m,copySettings:()=>g,copySynonyms:()=>y,createBrowsablePromise:()=>a,createMissingObjectIDError:()=>s,createObjectNotFoundError:()=>c,createSearchClient:()=>l,createValidUntilNotFoundError:()=>f,deleteApiKey:()=>_,deleteBy:()=>K,deleteIndex:()=>X,deleteObject:()=>Q,deleteObjects:()=>J,deleteRule:()=>Z,deleteSynonym:()=>ee,exists:()=>te,findObject:()=>ne,generateSecuredApiKey:()=>b,getApiKey:()=>w,getLogs:()=>E,getObject:()=>re,getObjectPosition:()=>ie,getObjects:()=>oe,getRule:()=>ue,getSecuredApiKeyRemainingValidity:()=>D,getSettings:()=>ae,getSynonym:()=>le,getTask:()=>se,getTopUserIDs:()=>S,getUserID:()=>C,hasPendingMappings:()=>k,initIndex:()=>T,listApiKeys:()=>x,listClusters:()=>A,listIndices:()=>O,listUserIDs:()=>P,moveIndex:()=>I,multipleBatch:()=>N,multipleGetObjects:()=>M,multipleQueries:()=>R,multipleSearchForFacetValues:()=>F,partialUpdateObject:()=>ce,partialUpdateObjects:()=>fe,removeUserID:()=>L,replaceAllObjects:()=>de,replaceAllRules:()=>pe,replaceAllSynonyms:()=>he,restoreApiKey:()=>B,saveObject:()=>ve,saveObjects:()=>me,saveRule:()=>ge,saveRules:()=>ye,saveSynonym:()=>_e,saveSynonyms:()=>be,search:()=>we,searchForFacetValues:()=>Ee,searchRules:()=>De,searchSynonyms:()=>Se,searchUserIDs:()=>j,setSettings:()=>Ce,updateApiKey:()=>U,waitTask:()=>ke});var r=n(1757),i=n(7858),o=n(5541),u=n(6417);function a(e){const t=n=>e.request(n).then(r=>{if(void 0!==e.batch&&e.batch(r.hits),!e.shouldStop(r))return r.cursor?t({cursor:r.cursor}):t({page:(n.page||0)+1})});return t({})}const l=e=>{const t=e.appId,n=(0,r.createAuth)(void 0!==e.authMode?e.authMode:r.AuthMode.WithinHeaders,t,e.apiKey),o=(0,i.createTransporter)({hosts:[{url:t+"-dsn.algolia.net",accept:i.CallEnum.Read},{url:t+".algolia.net",accept:i.CallEnum.Write}].concat((0,r.shuffle)([{url:t+"-1.algolianet.com"},{url:t+"-2.algolianet.com"},{url:t+"-3.algolianet.com"}])),...e,headers:{...n.headers(),"content-type":"application/x-www-form-urlencoded",...e.headers},queryParameters:{...n.queryParameters(),...e.queryParameters}}),u={transporter:o,appId:t,addAlgoliaAgent(e,t){o.userAgent.add({segment:e,version:t})},clearCache:()=>Promise.all([o.requestsCache.clear(),o.responsesCache.clear()]).then(()=>{})};return(0,r.addMethods)(u,e.methods)};function s(){return{name:"MissingObjectIDError",message:"All objects must have an unique objectID (like a primary key) to be valid. Algolia is also able to generate objectIDs automatically but *it's not recommended*. To do it, use the `{'autoGenerateObjectIDIfNotExist': true}` option."}}function c(){return{name:"ObjectNotFoundError",message:"Object not found."}}function f(){return{name:"ValidUntilNotFoundError",message:"ValidUntil not found in given secured api key."}}const d=e=>(t,n)=>{const{queryParameters:i,...u}=n||{},a={acl:t,...void 0!==i?{queryParameters:i}:{}};return(0,r.createWaitablePromise)(e.transporter.write({method:o.N.Post,path:"1/keys",data:a},u),(t,n)=>(0,r.createRetryablePromise)(r=>w(e)(t.key,n).catch(e=>{if(404!==e.status)throw e;return r()})))},p=e=>(t,n,r)=>{const u=(0,i.createMappedRequestOptions)(r);return u.queryParameters["X-Algolia-User-ID"]=t,e.transporter.write({method:o.N.Post,path:"1/clusters/mapping",data:{cluster:n}},u)},h=e=>(t,n,r)=>e.transporter.write({method:o.N.Post,path:"1/clusters/mapping/batch",data:{users:t,cluster:n}},r),v=e=>(t,n,i)=>(0,r.createWaitablePromise)(e.transporter.write({method:o.N.Post,path:(0,r.encode)("1/indexes/%s/operation",t),data:{operation:"copy",destination:n}},i),(n,r)=>T(e)(t,{methods:{waitTask:ke}}).waitTask(n.taskID,r)),m=e=>(t,n,r)=>v(e)(t,n,{...r,scope:[Ae.Rules]}),g=e=>(t,n,r)=>v(e)(t,n,{...r,scope:[Ae.Settings]}),y=e=>(t,n,r)=>v(e)(t,n,{...r,scope:[Ae.Synonyms]}),_=e=>(t,n)=>(0,r.createWaitablePromise)(e.transporter.write({method:o.N.Delete,path:(0,r.encode)("1/keys/%s",t)},n),(n,i)=>(0,r.createRetryablePromise)(n=>w(e)(t,i).then(n).catch(e=>{if(404!==e.status)throw e}))),b=()=>(e,t)=>{const n=(0,i.serializeQueryParameters)(t),r=(0,u.createHmac)("sha256",e).update(n).digest("hex");return Buffer.from(r+n).toString("base64")},w=e=>(t,n)=>e.transporter.read({method:o.N.Get,path:(0,r.encode)("1/keys/%s",t)},n),E=e=>t=>e.transporter.read({method:o.N.Get,path:"1/logs"},t),D=()=>e=>{const t=Buffer.from(e,"base64").toString("ascii").match(/validUntil=(\d+)/);if(null===t)throw{name:"ValidUntilNotFoundError",message:"ValidUntil not found in given secured api key."};return parseInt(t[1],10)-Math.round((new Date).getTime()/1e3)},S=e=>t=>e.transporter.read({method:o.N.Get,path:"1/clusters/mapping/top"},t),C=e=>(t,n)=>e.transporter.read({method:o.N.Get,path:(0,r.encode)("1/clusters/mapping/%s",t)},n),k=e=>t=>{const{retrieveMappings:n,...r}=t||{};return!0===n&&(r.getClusters=!0),e.transporter.read({method:o.N.Get,path:"1/clusters/mapping/pending"},r)},T=e=>(t,n={})=>{const i={transporter:e.transporter,appId:e.appId,indexName:t};return(0,r.addMethods)(i,n.methods)},x=e=>t=>e.transporter.read({method:o.N.Get,path:"1/keys"},t),A=e=>t=>e.transporter.read({method:o.N.Get,path:"1/clusters"},t),O=e=>t=>e.transporter.read({method:o.N.Get,path:"1/indexes"},t),P=e=>t=>e.transporter.read({method:o.N.Get,path:"1/clusters/mapping"},t),I=e=>(t,n,i)=>(0,r.createWaitablePromise)(e.transporter.write({method:o.N.Post,path:(0,r.encode)("1/indexes/%s/operation",t),data:{operation:"move",destination:n}},i),(n,r)=>T(e)(t,{methods:{waitTask:ke}}).waitTask(n.taskID,r)),N=e=>(t,n)=>(0,r.createWaitablePromise)(e.transporter.write({method:o.N.Post,path:"1/indexes/*/batch",data:{requests:t}},n),(t,n)=>Promise.all(Object.keys(t.taskID).map(r=>T(e)(r,{methods:{waitTask:ke}}).waitTask(t.taskID[r],n)))),M=e=>(t,n)=>e.transporter.read({method:o.N.Post,path:"1/indexes/*/objects",data:{requests:t}},n),R=e=>(t,n)=>{const r=t.map(e=>({...e,params:(0,i.serializeQueryParameters)(e.params||{})}));return e.transporter.read({method:o.N.Post,path:"1/indexes/*/queries",data:{requests:r},cacheable:!0},n)},F=e=>(t,n)=>Promise.all(t.map(t=>{const{facetName:r,facetQuery:i,...o}=t.params;return T(e)(t.indexName,{methods:{searchForFacetValues:Ee}}).searchForFacetValues(r,i,{...n,...o})})),L=e=>(t,n)=>{const r=(0,i.createMappedRequestOptions)(n);return r.queryParameters["X-Algolia-User-ID"]=t,e.transporter.write({method:o.N.Delete,path:"1/clusters/mapping"},r)},B=e=>(t,n)=>(0,r.createWaitablePromise)(e.transporter.write({method:o.N.Post,path:(0,r.encode)("1/keys/%s/restore",t)},n),(n,i)=>(0,r.createRetryablePromise)(n=>w(e)(t,i).catch(e=>{if(404!==e.status)throw e;return n()}))),j=e=>(t,n)=>e.transporter.read({method:o.N.Post,path:"1/clusters/mapping/search",data:{query:t}},n),U=e=>(t,n)=>{const i=Object.assign({},n),{queryParameters:u,...a}=n||{},l=u?{queryParameters:u}:{},s=["acl","indexes","referers","restrictSources","queryParameters","description","maxQueriesPerIPPerHour","maxHitsPerQuery"];return(0,r.createWaitablePromise)(e.transporter.write({method:o.N.Put,path:(0,r.encode)("1/keys/%s",t),data:l},a),(n,o)=>(0,r.createRetryablePromise)(n=>w(e)(t,o).then(e=>(e=>Object.keys(i).filter(e=>-1!==s.indexOf(e)).every(t=>e[t]===i[t]))(e)?Promise.resolve():n())))},z=e=>(t,n)=>(0,r.createWaitablePromise)(e.transporter.write({method:o.N.Post,path:(0,r.encode)("1/indexes/%s/batch",e.indexName),data:{requests:t}},n),(t,n)=>ke(e)(t.taskID,n)),W=e=>t=>a({...t,shouldStop:e=>void 0===e.cursor,request:n=>e.transporter.read({method:o.N.Post,path:(0,r.encode)("1/indexes/%s/browse",e.indexName),data:n},t)}),H=e=>t=>{const n={hitsPerPage:1e3,...t};return a({...n,shouldStop:e=>e.hits.lengthDe(e)("",{...n,...t}).then(e=>({...e,hits:e.hits.map(e=>(delete e._highlightResult,e))}))})},V=e=>t=>{const n={hitsPerPage:1e3,...t};return a({...n,shouldStop:e=>e.hits.lengthSe(e)("",{...n,...t}).then(e=>({...e,hits:e.hits.map(e=>(delete e._highlightResult,e))}))})},q=e=>(t,n,i)=>{const{batchSize:o,...u}=i||{},a={taskIDs:[],objectIDs:[]},l=(r=0)=>{const i=[];let s;for(s=r;s({action:n,body:e})),u).then(e=>(a.objectIDs=a.objectIDs.concat(e.objectIDs),a.taskIDs.push(e.taskID),s++,l(s)))};return(0,r.createWaitablePromise)(l(),(t,n)=>Promise.all(t.taskIDs.map(t=>ke(e)(t,n))))},G=e=>t=>(0,r.createWaitablePromise)(e.transporter.write({method:o.N.Post,path:(0,r.encode)("1/indexes/%s/clear",e.indexName)},t),(t,n)=>ke(e)(t.taskID,n)),$=e=>t=>{const{forwardToReplicas:n,...u}=t||{},a=(0,i.createMappedRequestOptions)(u);return n&&(a.queryParameters.forwardToReplicas=1),(0,r.createWaitablePromise)(e.transporter.write({method:o.N.Post,path:(0,r.encode)("1/indexes/%s/rules/clear",e.indexName)},a),(t,n)=>ke(e)(t.taskID,n))},Y=e=>t=>{const{forwardToReplicas:n,...u}=t||{},a=(0,i.createMappedRequestOptions)(u);return n&&(a.queryParameters.forwardToReplicas=1),(0,r.createWaitablePromise)(e.transporter.write({method:o.N.Post,path:(0,r.encode)("1/indexes/%s/synonyms/clear",e.indexName)},a),(t,n)=>ke(e)(t.taskID,n))},K=e=>(t,n)=>(0,r.createWaitablePromise)(e.transporter.write({method:o.N.Post,path:(0,r.encode)("1/indexes/%s/deleteByQuery",e.indexName),data:t},n),(t,n)=>ke(e)(t.taskID,n)),X=e=>t=>(0,r.createWaitablePromise)(e.transporter.write({method:o.N.Delete,path:(0,r.encode)("1/indexes/%s",e.indexName)},t),(t,n)=>ke(e)(t.taskID,n)),Q=e=>(t,n)=>(0,r.createWaitablePromise)(J(e)([t],n).then(e=>({taskID:e.taskIDs[0]})),(t,n)=>ke(e)(t.taskID,n)),J=e=>(t,n)=>{const r=t.map(e=>({objectID:e}));return q(e)(r,xe.DeleteObject,n)},Z=e=>(t,n)=>{const{forwardToReplicas:u,...a}=n||{},l=(0,i.createMappedRequestOptions)(a);return u&&(l.queryParameters.forwardToReplicas=1),(0,r.createWaitablePromise)(e.transporter.write({method:o.N.Delete,path:(0,r.encode)("1/indexes/%s/rules/%s",e.indexName,t)},l),(t,n)=>ke(e)(t.taskID,n))},ee=e=>(t,n)=>{const{forwardToReplicas:u,...a}=n||{},l=(0,i.createMappedRequestOptions)(a);return u&&(l.queryParameters.forwardToReplicas=1),(0,r.createWaitablePromise)(e.transporter.write({method:o.N.Delete,path:(0,r.encode)("1/indexes/%s/synonyms/%s",e.indexName,t)},l),(t,n)=>ke(e)(t.taskID,n))},te=e=>t=>ae(e)(t).then(()=>!0).catch(e=>{if(404!==e.status)throw e;return!1}),ne=e=>(t,n)=>{const{query:r,paginate:i,...o}=n||{};let u=0;const a=()=>we(e)(r||"",{...o,page:u}).then(e=>{for(const[n,r]of Object.entries(e.hits))if(t(r))return{object:r,position:parseInt(n,10),page:u};if(u++,!1===i||u>=e.nbPages)throw{name:"ObjectNotFoundError",message:"Object not found."};return a()});return a()},re=e=>(t,n)=>e.transporter.read({method:o.N.Get,path:(0,r.encode)("1/indexes/%s/%s",e.indexName,t)},n),ie=()=>(e,t)=>{for(const[n,r]of Object.entries(e.hits))if(r.objectID===t)return parseInt(n,10);return-1},oe=e=>(t,n)=>{const{attributesToRetrieve:r,...i}=n||{},u=t.map(t=>({indexName:e.indexName,objectID:t,...r?{attributesToRetrieve:r}:{}}));return e.transporter.read({method:o.N.Post,path:"1/indexes/*/objects",data:{requests:u}},i)},ue=e=>(t,n)=>e.transporter.read({method:o.N.Get,path:(0,r.encode)("1/indexes/%s/rules/%s",e.indexName,t)},n),ae=e=>t=>e.transporter.read({method:o.N.Get,path:(0,r.encode)("1/indexes/%s/settings",e.indexName),data:{getVersion:2}},t),le=e=>(t,n)=>e.transporter.read({method:o.N.Get,path:(0,r.encode)("1/indexes/%s/synonyms/%s",e.indexName,t)},n),se=e=>(t,n)=>e.transporter.read({method:o.N.Get,path:(0,r.encode)("1/indexes/%s/task/%s",e.indexName,t.toString())},n),ce=e=>(t,n)=>(0,r.createWaitablePromise)(fe(e)([t],n).then(e=>({objectID:e.objectIDs[0],taskID:e.taskIDs[0]})),(t,n)=>ke(e)(t.taskID,n)),fe=e=>(t,n)=>{const{createIfNotExists:r,...i}=n||{},o=r?xe.PartialUpdateObject:xe.PartialUpdateObjectNoCreate;return q(e)(t,o,i)},de=e=>(t,n)=>{const{safe:i,autoGenerateObjectIDIfNotExist:u,batchSize:a,...l}=n||{},s=(t,n,i,u)=>(0,r.createWaitablePromise)(e.transporter.write({method:o.N.Post,path:(0,r.encode)("1/indexes/%s/operation",t),data:{operation:i,destination:n}},u),(t,n)=>ke(e)(t.taskID,n)),c=Math.random().toString(36).substring(7),f=`${e.indexName}_tmp_${c}`,d=me({appId:e.appId,transporter:e.transporter,indexName:f});let p=[];const h=s(e.indexName,f,"copy",{...l,scope:["settings","synonyms","rules"]});p.push(h);const v=(i?h.wait(l):h).then(()=>{const e=d(t,{...l,autoGenerateObjectIDIfNotExist:u,batchSize:a});return p.push(e),i?e.wait(l):e}).then(()=>{const t=s(f,e.indexName,"move",l);return p.push(t),i?t.wait(l):t}).then(()=>Promise.all(p)).then(([e,t,n])=>({objectIDs:t.objectIDs,taskIDs:[e.taskID,...t.taskIDs,n.taskID]}));return(0,r.createWaitablePromise)(v,(e,t)=>Promise.all(p.map(e=>e.wait(t))))},pe=e=>(t,n)=>ye(e)(t,{...n,clearExistingRules:!0}),he=e=>(t,n)=>be(e)(t,{...n,replaceExistingSynonyms:!0}),ve=e=>(t,n)=>(0,r.createWaitablePromise)(me(e)([t],n).then(e=>({objectID:e.objectIDs[0],taskID:e.taskIDs[0]})),(t,n)=>ke(e)(t.taskID,n)),me=e=>(t,n)=>{const{autoGenerateObjectIDIfNotExist:i,...o}=n||{},u=i?xe.AddObject:xe.UpdateObject;if(u===xe.UpdateObject)for(const e of t)if(void 0===e.objectID)return(0,r.createWaitablePromise)(Promise.reject({name:"MissingObjectIDError",message:"All objects must have an unique objectID (like a primary key) to be valid. Algolia is also able to generate objectIDs automatically but *it's not recommended*. To do it, use the `{'autoGenerateObjectIDIfNotExist': true}` option."}));return q(e)(t,u,o)},ge=e=>(t,n)=>ye(e)([t],n),ye=e=>(t,n)=>{const{forwardToReplicas:u,clearExistingRules:a,...l}=n||{},s=(0,i.createMappedRequestOptions)(l);return u&&(s.queryParameters.forwardToReplicas=1),a&&(s.queryParameters.clearExistingRules=1),(0,r.createWaitablePromise)(e.transporter.write({method:o.N.Post,path:(0,r.encode)("1/indexes/%s/rules/batch",e.indexName),data:t},s),(t,n)=>ke(e)(t.taskID,n))},_e=e=>(t,n)=>be(e)([t],n),be=e=>(t,n)=>{const{forwardToReplicas:u,replaceExistingSynonyms:a,...l}=n||{},s=(0,i.createMappedRequestOptions)(l);return u&&(s.queryParameters.forwardToReplicas=1),a&&(s.queryParameters.replaceExistingSynonyms=1),(0,r.createWaitablePromise)(e.transporter.write({method:o.N.Post,path:(0,r.encode)("1/indexes/%s/synonyms/batch",e.indexName),data:t},s),(t,n)=>ke(e)(t.taskID,n))},we=e=>(t,n)=>e.transporter.read({method:o.N.Post,path:(0,r.encode)("1/indexes/%s/query",e.indexName),data:{query:t},cacheable:!0},n),Ee=e=>(t,n,i)=>e.transporter.read({method:o.N.Post,path:(0,r.encode)("1/indexes/%s/facets/%s/query",e.indexName,t),data:{facetQuery:n},cacheable:!0},i),De=e=>(t,n)=>e.transporter.read({method:o.N.Post,path:(0,r.encode)("1/indexes/%s/rules/search",e.indexName),data:{query:t}},n),Se=e=>(t,n)=>e.transporter.read({method:o.N.Post,path:(0,r.encode)("1/indexes/%s/synonyms/search",e.indexName),data:{query:t}},n),Ce=e=>(t,n)=>{const{forwardToReplicas:u,...a}=n||{},l=(0,i.createMappedRequestOptions)(a);return u&&(l.queryParameters.forwardToReplicas=1),(0,r.createWaitablePromise)(e.transporter.write({method:o.N.Put,path:(0,r.encode)("1/indexes/%s/settings",e.indexName),data:t},l),(t,n)=>ke(e)(t.taskID,n))},ke=e=>(t,n)=>(0,r.createRetryablePromise)(r=>se(e)(t,n).then(e=>"published"!==e.status?r():void 0)),Te={AddObject:"addObject",Analytics:"analytics",Browser:"browse",DeleteIndex:"deleteIndex",DeleteObject:"deleteObject",EditSettings:"editSettings",ListIndexes:"listIndexes",Logs:"logs",Recommendation:"recommendation",Search:"search",SeeUnretrievableAttributes:"seeUnretrievableAttributes",Settings:"settings",Usage:"usage"},xe={AddObject:"addObject",UpdateObject:"updateObject",PartialUpdateObject:"partialUpdateObject",PartialUpdateObjectNoCreate:"partialUpdateObjectNoCreate",DeleteObject:"deleteObject"},Ae={Settings:"settings",Synonyms:"synonyms",Rules:"rules"},Oe={None:"none",StopIfEnoughMatches:"stopIfEnoughMatches"},Pe={Synonym:"synonym",OneWaySynonym:"oneWaySynonym",AltCorrection1:"altCorrection1",AltCorrection2:"altCorrection2",Placeholder:"placeholder"}},8045:(e,t,n)=>{"use strict";function r(){return{debug:(e,t)=>Promise.resolve(),info:(e,t)=>Promise.resolve(),error:(e,t)=>Promise.resolve()}}n.r(t),n.d(t,{LogLevelEnum:()=>i,createNullLogger:()=>r});const i={Debug:1,Info:2,Error:3}},5541:(e,t,n)=>{"use strict";n.d(t,{N:()=>r});const r={Delete:"DELETE",Get:"GET",Post:"POST",Put:"PUT"}},9178:(e,t,n)=>{"use strict";n.r(t),n.d(t,{createNodeHttpRequester:()=>u});var r=n(8605),i=n(7211),o=n(8835);function u(){const e={keepAlive:!0},t=new r.Agent(e),n=new i.Agent(e);return{send:e=>new Promise(u=>{const a=(0,o.parse)(e.url),l=null===a.query?a.pathname:`${a.pathname}?${a.query}`,s={agent:"https:"===a.protocol?n:t,hostname:a.hostname,path:l,method:e.method,headers:e.headers,...void 0!==a.port?{port:a.port||""}:{}},c=("https:"===a.protocol?i:r).request(s,e=>{let t="";e.on("data",e=>t+=e),e.on("end",()=>{clearTimeout(d),clearTimeout(p),u({status:e.statusCode||0,content:t,isTimedOut:!1})})}),f=(e,t)=>setTimeout(()=>{c.abort(),u({status:0,content:t,isTimedOut:!0})},1e3*e),d=f(e.connectTimeout,"Connection timeout");let p;c.on("error",e=>{clearTimeout(d),clearTimeout(p),u({status:0,content:e.message,isTimedOut:!1})}),c.once("response",()=>{clearTimeout(d),p=f(e.responseTimeout,"Socket timeout")}),void 0!==e.data&&c.write(e.data),c.end()}),destroy:()=>(t.destroy(),n.destroy(),Promise.resolve())}}},7858:(e,t,n)=>{"use strict";n.r(t),n.d(t,{CallEnum:()=>o,HostStatusEnum:()=>u,createApiError:()=>E,createDeserializationError:()=>D,createMappedRequestOptions:()=>i,createRetryError:()=>S,createStatefulHost:()=>a,createStatelessHost:()=>c,createTransporter:()=>d,createUserAgent:()=>p,deserializeFailure:()=>v,deserializeSuccess:()=>h,isStatefulHostTimeouted:()=>s,isStatefulHostUp:()=>l,serializeData:()=>y,serializeHeaders:()=>_,serializeQueryParameters:()=>g,serializeUrl:()=>m,stackFrameWithoutCredentials:()=>w,stackTraceWithoutCredentials:()=>b});var r=n(5541);function i(e,t){const n=e||{},r=n.data||{};return Object.keys(n).forEach(e=>{-1===["timeout","headers","queryParameters","data","cacheable"].indexOf(e)&&(r[e]=n[e])}),{data:Object.entries(r).length>0?r:void 0,timeout:n.timeout||t,headers:n.headers||{},queryParameters:n.queryParameters||{},cacheable:n.cacheable}}const o={Read:1,Write:2,Any:3},u={Up:1,Down:2,Timeouted:3};function a(e,t=u.Up){return{...e,status:t,lastUpdate:Date.now()}}function l(e){return e.status===u.Up||Date.now()-e.lastUpdate>12e4}function s(e){return e.status===u.Timeouted&&Date.now()-e.lastUpdate<=12e4}function c(e){return{protocol:e.protocol||"https",url:e.url,accept:e.accept||o.Any}}function f(e,t,n,i){const o=[],f=y(n,i),d=_(e,i),p=n.method,g=n.method!==r.N.Get?{}:{...n.data,...i.data},E={"x-algolia-agent":e.userAgent.value,...e.queryParameters,...g,...i.queryParameters};let D=0;const C=(t,r)=>{const l=t.pop();if(void 0===l)throw S(b(o));const s={data:f,headers:d,method:p,url:m(l,n.path,E),connectTimeout:r(D,e.timeouts.connect),responseTimeout:r(D,i.timeout)},c=e=>{const n={request:s,response:e,host:l,triesLeft:t.length};return o.push(n),n},g={onSucess:e=>h(e),onRetry(n){const i=c(n);return n.isTimedOut&&D++,Promise.all([e.logger.info("Retryable failure",w(i)),e.hostsCache.set(l,a(l,n.isTimedOut?u.Timeouted:u.Down))]).then(()=>C(t,r))},onFail(e){throw c(e),v(e,b(o))}};return e.requester.send(s).then(e=>((e,t)=>(e=>{const t=e.status;return e.isTimedOut||(({isTimedOut:e,status:t})=>!e&&0==~~t)(e)||2!=~~(t/100)&&4!=~~(t/100)})(e)?t.onRetry(e):(({status:e})=>2==~~(e/100))(e)?t.onSucess(e):t.onFail(e))(e,g))};return function(e,t){return Promise.all(t.map(t=>e.get(t,()=>Promise.resolve(a(t))))).then(e=>{const n=e.filter(e=>l(e)),r=e.filter(e=>s(e)),i=[...n,...r];return{getTimeout:(e,t)=>(0===r.length&&0===e?1:r.length+3+e)*t,statelessHosts:i.length>0?i.map(e=>c(e)):t}})}(e.hostsCache,t).then(e=>C([...e.statelessHosts].reverse(),e.getTimeout))}function d(e){const{hostsCache:t,logger:n,requester:r,requestsCache:u,responsesCache:a,timeouts:l,userAgent:s,hosts:d,queryParameters:p,headers:h}=e,v={hostsCache:t,logger:n,requester:r,requestsCache:u,responsesCache:a,timeouts:l,userAgent:s,headers:h,queryParameters:p,hosts:d.map(e=>c(e)),read(e,t){const n=i(t,v.timeouts.read),r=()=>f(v,v.hosts.filter(e=>0!=(e.accept&o.Read)),e,n);if(!0!==(void 0!==n.cacheable?n.cacheable:e.cacheable))return r();const u={request:e,mappedRequestOptions:n,transporter:{queryParameters:v.queryParameters,headers:v.headers}};return v.responsesCache.get(u,()=>v.requestsCache.get(u,()=>v.requestsCache.set(u,r()).then(e=>Promise.all([v.requestsCache.delete(u),e]),e=>Promise.all([v.requestsCache.delete(u),Promise.reject(e)])).then(([e,t])=>t)),{miss:e=>v.responsesCache.set(u,e)})},write:(e,t)=>f(v,v.hosts.filter(e=>0!=(e.accept&o.Write)),e,i(t,v.timeouts.write))};return v}function p(e){const t={value:`Algolia for JavaScript (${e})`,add(e){const n=`; ${e.segment}${void 0!==e.version?` (${e.version})`:""}`;return-1===t.value.indexOf(n)&&(t.value=`${t.value}${n}`),t}};return t}function h(e){try{return JSON.parse(e.content)}catch(t){throw D(t.message,e)}}function v({content:e,status:t},n){let r=e;try{r=JSON.parse(e).message}catch(e){}return E(r,t,n)}function m(e,t,n){const r=g(n);let i=`${e.protocol}://${e.url}/${"/"===t.charAt(0)?t.substr(1):t}`;return r.length&&(i+="?"+r),i}function g(e){return Object.keys(e).map(t=>{return function(e,...t){let n=0;return e.replace(/%s/g,()=>encodeURIComponent(t[n++]))}("%s=%s",t,(n=e[t],"[object Object]"===Object.prototype.toString.call(n)||"[object Array]"===Object.prototype.toString.call(n)?JSON.stringify(e[t]):e[t]));var n}).join("&")}function y(e,t){if(e.method===r.N.Get||void 0===e.data&&void 0===t.data)return;const n=Array.isArray(e.data)?e.data:{...e.data,...t.data};return JSON.stringify(n)}function _(e,t){const n={...e.headers,...t.headers},r={};return Object.keys(n).forEach(e=>{const t=n[e];r[e.toLowerCase()]=t}),r}function b(e){return e.map(e=>w(e))}function w(e){const t=e.request.headers["x-algolia-api-key"]?{"x-algolia-api-key":"*****"}:{};return{...e,request:{...e.request,headers:{...e.request.headers,...t}}}}function E(e,t,n){return{name:"ApiError",message:e,status:t,transporterStackTrace:n}}function D(e,t){return{name:"DeserializationError",message:e,response:t}}function S(e){return{name:"RetryError",message:"Unreachable hosts - your application id may be incorrect. If the error persists, contact support@algolia.com.",transporterStackTrace:e}}},8774:(e,t,n)=>{"use strict";var r=n(469),i=n(6712),o=n(2223),u=n(1757),a=n(103),l=n(6586),s=n(8045),c=n(9178),f=n(7858);function d(e,t,n){const d={appId:e,apiKey:t,timeouts:{connect:2,read:5,write:30},requester:c.createNodeHttpRequester(),logger:s.createNullLogger(),responsesCache:r.createNullCache(),requestsCache:r.createNullCache(),hostsCache:i.createInMemoryCache(),userAgent:f.createUserAgent(u.version).add({segment:"Node.js",version:process.versions.node})};return l.createSearchClient({...d,...n,methods:{search:l.multipleQueries,searchForFacetValues:l.multipleSearchForFacetValues,multipleBatch:l.multipleBatch,multipleGetObjects:l.multipleGetObjects,multipleQueries:l.multipleQueries,copyIndex:l.copyIndex,copySettings:l.copySettings,copyRules:l.copyRules,copySynonyms:l.copySynonyms,moveIndex:l.moveIndex,listIndices:l.listIndices,getLogs:l.getLogs,listClusters:l.listClusters,multipleSearchForFacetValues:l.multipleSearchForFacetValues,getApiKey:l.getApiKey,addApiKey:l.addApiKey,listApiKeys:l.listApiKeys,updateApiKey:l.updateApiKey,deleteApiKey:l.deleteApiKey,restoreApiKey:l.restoreApiKey,assignUserID:l.assignUserID,assignUserIDs:l.assignUserIDs,getUserID:l.getUserID,searchUserIDs:l.searchUserIDs,listUserIDs:l.listUserIDs,getTopUserIDs:l.getTopUserIDs,removeUserID:l.removeUserID,hasPendingMappings:l.hasPendingMappings,generateSecuredApiKey:l.generateSecuredApiKey,getSecuredApiKeyRemainingValidity:l.getSecuredApiKeyRemainingValidity,destroy:u.destroy,initIndex:e=>t=>l.initIndex(e)(t,{methods:{batch:l.batch,delete:l.deleteIndex,getObject:l.getObject,getObjects:l.getObjects,saveObject:l.saveObject,saveObjects:l.saveObjects,search:l.search,searchForFacetValues:l.searchForFacetValues,waitTask:l.waitTask,setSettings:l.setSettings,getSettings:l.getSettings,partialUpdateObject:l.partialUpdateObject,partialUpdateObjects:l.partialUpdateObjects,deleteObject:l.deleteObject,deleteObjects:l.deleteObjects,deleteBy:l.deleteBy,clearObjects:l.clearObjects,browseObjects:l.browseObjects,getObjectPosition:l.getObjectPosition,findObject:l.findObject,exists:l.exists,saveSynonym:l.saveSynonym,saveSynonyms:l.saveSynonyms,getSynonym:l.getSynonym,searchSynonyms:l.searchSynonyms,browseSynonyms:l.browseSynonyms,deleteSynonym:l.deleteSynonym,clearSynonyms:l.clearSynonyms,replaceAllObjects:l.replaceAllObjects,replaceAllSynonyms:l.replaceAllSynonyms,searchRules:l.searchRules,getRule:l.getRule,deleteRule:l.deleteRule,saveRule:l.saveRule,saveRules:l.saveRules,replaceAllRules:l.replaceAllRules,browseRules:l.browseRules,clearRules:l.clearRules}}),initAnalytics:()=>e=>o.createAnalyticsClient({...d,...e,methods:{addABTest:o.addABTest,getABTest:o.getABTest,getABTests:o.getABTests,stopABTest:o.stopABTest,deleteABTest:o.deleteABTest}}),initRecommendation:()=>e=>a.createRecommendationClient({...d,...e,methods:{getPersonalizationStrategy:a.getPersonalizationStrategy,setPersonalizationStrategy:a.setPersonalizationStrategy}})}})}d.version=u.version,e.exports=d},4410:(e,t,n)=>{const r=n(8774);e.exports=r,e.exports.default=r},7589:e=>{"use strict";const t=e.exports;e.exports.default=t;const n="[",r="]",i="",o=";",u="Apple_Terminal"===process.env.TERM_PROGRAM;t.cursorTo=(e,t)=>{if("number"!=typeof e)throw new TypeError("The `x` argument is required");return"number"!=typeof t?n+(e+1)+"G":n+(t+1)+";"+(e+1)+"H"},t.cursorMove=(e,t)=>{if("number"!=typeof e)throw new TypeError("The `x` argument is required");let r="";return e<0?r+=n+-e+"D":e>0&&(r+=n+e+"C"),t<0?r+=n+-t+"A":t>0&&(r+=n+t+"B"),r},t.cursorUp=(e=1)=>n+e+"A",t.cursorDown=(e=1)=>n+e+"B",t.cursorForward=(e=1)=>n+e+"C",t.cursorBackward=(e=1)=>n+e+"D",t.cursorLeft="",t.cursorSavePosition=u?"7":"",t.cursorRestorePosition=u?"8":"",t.cursorGetPosition="",t.cursorNextLine="",t.cursorPrevLine="",t.cursorHide="[?25l",t.cursorShow="[?25h",t.eraseLines=e=>{let n="";for(let r=0;r[r,"8",o,o,t,i,e,r,"8",o,o,i].join(""),t.image=(e,t={})=>{let n=r+"1337;File=inline=1";return t.width&&(n+=";width="+t.width),t.height&&(n+=";height="+t.height),!1===t.preserveAspectRatio&&(n+=";preserveAspectRatio=0"),n+":"+e.toString("base64")+i},t.iTerm={setCwd:(e=process.cwd())=>`${r}50;CurrentDir=${e}${i}`,annotation:(e,t={})=>{let n=r+"1337;";const o=void 0!==t.x,u=void 0!==t.y;if((o||u)&&(!o||!u||void 0===t.length))throw new Error("`x`, `y` and `length` must be defined when `x` or `y` is defined");return e=e.replace(/\|/g,""),n+=t.isHidden?"AddHiddenAnnotation=":"AddAnnotation=",t.length>0?n+=(o?[e,t.length,t.x,t.y]:[t.length,e]).join("|"):n+=e,n+i}}},5378:e=>{"use strict";e.exports=e=>{e=Object.assign({onlyFirst:!1},e);const t=["[\\u001B\\u009B][[\\]()#;?]*(?:(?:(?:[a-zA-Z\\d]*(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]*)*)?\\u0007)","(?:(?:\\d{1,4}(?:;\\d{0,4})*)?[\\dA-PR-TZcf-ntqry=><~]))"].join("|");return new RegExp(t,e.onlyFirst?void 0:"g")}},1337:e=>{"use strict";e.exports=({onlyFirst:e=!1}={})=>{const t=["[\\u001B\\u009B][[\\]()#;?]*(?:(?:(?:[a-zA-Z\\d]*(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]*)*)?\\u0007)","(?:(?:\\d{1,4}(?:;\\d{0,4})*)?[\\dA-PR-TZcf-ntqry=><~]))"].join("|");return new RegExp(t,e?void 0:"g")}},8483:(e,t,n)=>{"use strict";e=n.nmd(e);const r=(e,t)=>(...n)=>`[${e(...n)+t}m`,i=(e,t)=>(...n)=>{const r=e(...n);return`[${38+t};5;${r}m`},o=(e,t)=>(...n)=>{const r=e(...n);return`[${38+t};2;${r[0]};${r[1]};${r[2]}m`},u=e=>e,a=(e,t,n)=>[e,t,n],l=(e,t,n)=>{Object.defineProperty(e,t,{get:()=>{const r=n();return Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0}),r},enumerable:!0,configurable:!0})};let s;const c=(e,t,r,i)=>{void 0===s&&(s=n(2744));const o=i?10:0,u={};for(const[n,i]of Object.entries(s)){const a="ansi16"===n?"ansi":n;n===t?u[a]=e(r,o):"object"==typeof i&&(u[a]=e(i[t],o))}return u};Object.defineProperty(e,"exports",{enumerable:!0,get:function(){const e=new Map,t={modifier:{reset:[0,0],bold:[1,22],dim:[2,22],italic:[3,23],underline:[4,24],inverse:[7,27],hidden:[8,28],strikethrough:[9,29]},color:{black:[30,39],red:[31,39],green:[32,39],yellow:[33,39],blue:[34,39],magenta:[35,39],cyan:[36,39],white:[37,39],blackBright:[90,39],redBright:[91,39],greenBright:[92,39],yellowBright:[93,39],blueBright:[94,39],magentaBright:[95,39],cyanBright:[96,39],whiteBright:[97,39]},bgColor:{bgBlack:[40,49],bgRed:[41,49],bgGreen:[42,49],bgYellow:[43,49],bgBlue:[44,49],bgMagenta:[45,49],bgCyan:[46,49],bgWhite:[47,49],bgBlackBright:[100,49],bgRedBright:[101,49],bgGreenBright:[102,49],bgYellowBright:[103,49],bgBlueBright:[104,49],bgMagentaBright:[105,49],bgCyanBright:[106,49],bgWhiteBright:[107,49]}};t.color.gray=t.color.blackBright,t.bgColor.bgGray=t.bgColor.bgBlackBright,t.color.grey=t.color.blackBright,t.bgColor.bgGrey=t.bgColor.bgBlackBright;for(const[n,r]of Object.entries(t)){for(const[n,i]of Object.entries(r))t[n]={open:`[${i[0]}m`,close:`[${i[1]}m`},r[n]=t[n],e.set(i[0],i[1]);Object.defineProperty(t,n,{value:r,enumerable:!1})}return Object.defineProperty(t,"codes",{value:e,enumerable:!1}),t.color.close="",t.bgColor.close="",l(t.color,"ansi",()=>c(r,"ansi16",u,!1)),l(t.color,"ansi256",()=>c(i,"ansi256",u,!1)),l(t.color,"ansi16m",()=>c(o,"rgb",a,!1)),l(t.bgColor,"ansi",()=>c(r,"ansi16",u,!0)),l(t.bgColor,"ansi256",()=>c(i,"ansi256",u,!0)),l(t.bgColor,"ansi16m",()=>c(o,"rgb",a,!0)),t}})},5640:e=>{"use strict";e.exports=e=>e&&e.exact?new RegExp("^[\ud800-\udbff][\udc00-\udfff]$"):new RegExp("[\ud800-\udbff][\udc00-\udfff]","g")},409:e=>{"use strict";e.exports=e=>e&&e.exact?new RegExp("^[\ud800-\udbff][\udc00-\udfff]$"):new RegExp("[\ud800-\udbff][\udc00-\udfff]","g")},2633:e=>{"use strict";e.exports=(e,{include:t,exclude:n}={})=>{const r=e=>{const r=t=>"string"==typeof t?e===t:t.test(e);return t?t.some(r):!n||!n.some(r)};for(const[t,n]of(e=>{const t=new Set;do{for(const n of Reflect.ownKeys(e))t.add([e,n])}while((e=Reflect.getPrototypeOf(e))&&e!==Object.prototype);return t})(e.constructor.prototype)){if("constructor"===n||!r(n))continue;const i=Reflect.getOwnPropertyDescriptor(t,n);i&&"function"==typeof i.value&&(e[n]=e[n].bind(e))}return e}},5882:(e,t,n)=>{"use strict";const r=n(8483),{stdout:i,stderr:o}=n(9428),{stringReplaceAll:u,stringEncaseCRLFWithFirstIndex:a}=n(3327),l=["ansi","ansi","ansi256","ansi16m"],s=Object.create(null);class c{constructor(e){return f(e)}}const f=e=>{const t={};return((e,t={})=>{if(t.level>3||t.level<0)throw new Error("The `level` option should be an integer from 0 to 3");const n=i?i.level:0;e.level=void 0===t.level?n:t.level})(t,e),t.template=(...e)=>_(t.template,...e),Object.setPrototypeOf(t,d.prototype),Object.setPrototypeOf(t.template,t),t.template.constructor=()=>{throw new Error("`chalk.constructor()` is deprecated. Use `new chalk.Instance()` instead.")},t.template.Instance=c,t.template};function d(e){return f(e)}for(const[e,t]of Object.entries(r))s[e]={get(){const n=m(this,v(t.open,t.close,this._styler),this._isEmpty);return Object.defineProperty(this,e,{value:n}),n}};s.visible={get(){const e=m(this,this._styler,!0);return Object.defineProperty(this,"visible",{value:e}),e}};const p=["rgb","hex","keyword","hsl","hsv","hwb","ansi","ansi256"];for(const e of p)s[e]={get(){const{level:t}=this;return function(...n){const i=v(r.color[l[t]][e](...n),r.color.close,this._styler);return m(this,i,this._isEmpty)}}};for(const e of p){s["bg"+e[0].toUpperCase()+e.slice(1)]={get(){const{level:t}=this;return function(...n){const i=v(r.bgColor[l[t]][e](...n),r.bgColor.close,this._styler);return m(this,i,this._isEmpty)}}}}const h=Object.defineProperties(()=>{},{...s,level:{enumerable:!0,get(){return this._generator.level},set(e){this._generator.level=e}}}),v=(e,t,n)=>{let r,i;return void 0===n?(r=e,i=t):(r=n.openAll+e,i=t+n.closeAll),{open:e,close:t,openAll:r,closeAll:i,parent:n}},m=(e,t,n)=>{const r=(...e)=>g(r,1===e.length?""+e[0]:e.join(" "));return r.__proto__=h,r._generator=e,r._styler=t,r._isEmpty=n,r},g=(e,t)=>{if(e.level<=0||!t)return e._isEmpty?"":t;let n=e._styler;if(void 0===n)return t;const{openAll:r,closeAll:i}=n;if(-1!==t.indexOf(""))for(;void 0!==n;)t=u(t,n.close,n.open),n=n.parent;const o=t.indexOf("\n");return-1!==o&&(t=a(t,i,r,o)),r+t+i};let y;const _=(e,...t)=>{const[r]=t;if(!Array.isArray(r))return t.join(" ");const i=t.slice(1),o=[r.raw[0]];for(let e=1;e{"use strict";const t=/(?:\\(u(?:[a-f\d]{4}|\{[a-f\d]{1,6}\})|x[a-f\d]{2}|.))|(?:\{(~)?(\w+(?:\([^)]*\))?(?:\.\w+(?:\([^)]*\))?)*)(?:[ \t]|(?=\r?\n)))|(\})|((?:.|[\r\n\f])+?)/gi,n=/(?:^|\.)(\w+)(?:\(([^)]*)\))?/g,r=/^(['"])((?:\\.|(?!\1)[^\\])*)\1$/,i=/\\(u(?:[a-f\d]{4}|\{[a-f\d]{1,6}\})|x[a-f\d]{2}|.)|([^\\])/gi,o=new Map([["n","\n"],["r","\r"],["t","\t"],["b","\b"],["f","\f"],["v","\v"],["0","\0"],["\\","\\"],["e",""],["a",""]]);function u(e){const t="u"===e[0],n="{"===e[1];return t&&!n&&5===e.length||"x"===e[0]&&3===e.length?String.fromCharCode(parseInt(e.slice(1),16)):t&&n?String.fromCodePoint(parseInt(e.slice(2,-1),16)):o.get(e)||e}function a(e,t){const n=[],o=t.trim().split(/\s*,\s*/g);let a;for(const t of o){const o=Number(t);if(Number.isNaN(o)){if(!(a=t.match(r)))throw new Error(`Invalid Chalk template style argument: ${t} (in style '${e}')`);n.push(a[2].replace(i,(e,t,n)=>t?u(t):n))}else n.push(o)}return n}function l(e){n.lastIndex=0;const t=[];let r;for(;null!==(r=n.exec(e));){const e=r[1];if(r[2]){const n=a(e,r[2]);t.push([e].concat(n))}else t.push([e])}return t}function s(e,t){const n={};for(const e of t)for(const t of e.styles)n[t[0]]=e.inverse?null:t.slice(1);let r=e;for(const[e,t]of Object.entries(n))if(Array.isArray(t)){if(!(e in r))throw new Error("Unknown Chalk style: "+e);r=t.length>0?r[e](...t):r[e]}return r}e.exports=(e,n)=>{const r=[],i=[];let o=[];if(n.replace(t,(t,n,a,c,f,d)=>{if(n)o.push(u(n));else if(c){const t=o.join("");o=[],i.push(0===r.length?t:s(e,r)(t)),r.push({inverse:a,styles:l(c)})}else if(f){if(0===r.length)throw new Error("Found extraneous } in Chalk template literal");i.push(s(e,r)(o.join(""))),o=[],r.pop()}else o.push(d)}),i.push(o.join("")),r.length>0){const e=`Chalk template literal is missing ${r.length} closing bracket${1===r.length?"":"s"} (\`}\`)`;throw new Error(e)}return i.join("")}},3327:e=>{"use strict";e.exports={stringReplaceAll:(e,t,n)=>{let r=e.indexOf(t);if(-1===r)return e;const i=t.length;let o=0,u="";do{u+=e.substr(o,r-o)+t+n,o=r+i,r=e.indexOf(t,o)}while(-1!==r);return u+=e.substr(o),u},stringEncaseCRLFWithFirstIndex:(e,t,n,r)=>{let i=0,o="";do{const u="\r"===e[r-1];o+=e.substr(i,(u?r-1:r)-i)+t+(u?"\r\n":"\n")+n,i=r+1,r=e.indexOf("\n",i)}while(-1!==r);return o+=e.substr(i),o}}},1525:(e,t,n)=>{"use strict";const r=n(8483),{stdout:i,stderr:o}=n(9428),{stringReplaceAll:u,stringEncaseCRLFWithFirstIndex:a}=n(6539),{isArray:l}=Array,s=["ansi","ansi","ansi256","ansi16m"],c=Object.create(null);class f{constructor(e){return d(e)}}const d=e=>{const t={};return((e,t={})=>{if(t.level&&!(Number.isInteger(t.level)&&t.level>=0&&t.level<=3))throw new Error("The `level` option should be an integer from 0 to 3");const n=i?i.level:0;e.level=void 0===t.level?n:t.level})(t,e),t.template=(...e)=>b(t.template,...e),Object.setPrototypeOf(t,p.prototype),Object.setPrototypeOf(t.template,t),t.template.constructor=()=>{throw new Error("`chalk.constructor()` is deprecated. Use `new chalk.Instance()` instead.")},t.template.Instance=f,t.template};function p(e){return d(e)}for(const[e,t]of Object.entries(r))c[e]={get(){const n=g(this,m(t.open,t.close,this._styler),this._isEmpty);return Object.defineProperty(this,e,{value:n}),n}};c.visible={get(){const e=g(this,this._styler,!0);return Object.defineProperty(this,"visible",{value:e}),e}};const h=["rgb","hex","keyword","hsl","hsv","hwb","ansi","ansi256"];for(const e of h)c[e]={get(){const{level:t}=this;return function(...n){const i=m(r.color[s[t]][e](...n),r.color.close,this._styler);return g(this,i,this._isEmpty)}}};for(const e of h){c["bg"+e[0].toUpperCase()+e.slice(1)]={get(){const{level:t}=this;return function(...n){const i=m(r.bgColor[s[t]][e](...n),r.bgColor.close,this._styler);return g(this,i,this._isEmpty)}}}}const v=Object.defineProperties(()=>{},{...c,level:{enumerable:!0,get(){return this._generator.level},set(e){this._generator.level=e}}}),m=(e,t,n)=>{let r,i;return void 0===n?(r=e,i=t):(r=n.openAll+e,i=t+n.closeAll),{open:e,close:t,openAll:r,closeAll:i,parent:n}},g=(e,t,n)=>{const r=(...e)=>l(e[0])&&l(e[0].raw)?y(r,b(r,...e)):y(r,1===e.length?""+e[0]:e.join(" "));return Object.setPrototypeOf(r,v),r._generator=e,r._styler=t,r._isEmpty=n,r},y=(e,t)=>{if(e.level<=0||!t)return e._isEmpty?"":t;let n=e._styler;if(void 0===n)return t;const{openAll:r,closeAll:i}=n;if(-1!==t.indexOf(""))for(;void 0!==n;)t=u(t,n.close,n.open),n=n.parent;const o=t.indexOf("\n");return-1!==o&&(t=a(t,i,r,o)),r+t+i};let _;const b=(e,...t)=>{const[r]=t;if(!l(r)||!l(r.raw))return t.join(" ");const i=t.slice(1),o=[r.raw[0]];for(let e=1;e{"use strict";const t=/(?:\\(u(?:[a-f\d]{4}|\{[a-f\d]{1,6}\})|x[a-f\d]{2}|.))|(?:\{(~)?(\w+(?:\([^)]*\))?(?:\.\w+(?:\([^)]*\))?)*)(?:[ \t]|(?=\r?\n)))|(\})|((?:.|[\r\n\f])+?)/gi,n=/(?:^|\.)(\w+)(?:\(([^)]*)\))?/g,r=/^(['"])((?:\\.|(?!\1)[^\\])*)\1$/,i=/\\(u(?:[a-f\d]{4}|{[a-f\d]{1,6}})|x[a-f\d]{2}|.)|([^\\])/gi,o=new Map([["n","\n"],["r","\r"],["t","\t"],["b","\b"],["f","\f"],["v","\v"],["0","\0"],["\\","\\"],["e",""],["a",""]]);function u(e){const t="u"===e[0],n="{"===e[1];return t&&!n&&5===e.length||"x"===e[0]&&3===e.length?String.fromCharCode(parseInt(e.slice(1),16)):t&&n?String.fromCodePoint(parseInt(e.slice(2,-1),16)):o.get(e)||e}function a(e,t){const n=[],o=t.trim().split(/\s*,\s*/g);let a;for(const t of o){const o=Number(t);if(Number.isNaN(o)){if(!(a=t.match(r)))throw new Error(`Invalid Chalk template style argument: ${t} (in style '${e}')`);n.push(a[2].replace(i,(e,t,n)=>t?u(t):n))}else n.push(o)}return n}function l(e){n.lastIndex=0;const t=[];let r;for(;null!==(r=n.exec(e));){const e=r[1];if(r[2]){const n=a(e,r[2]);t.push([e].concat(n))}else t.push([e])}return t}function s(e,t){const n={};for(const e of t)for(const t of e.styles)n[t[0]]=e.inverse?null:t.slice(1);let r=e;for(const[e,t]of Object.entries(n))if(Array.isArray(t)){if(!(e in r))throw new Error("Unknown Chalk style: "+e);r=t.length>0?r[e](...t):r[e]}return r}e.exports=(e,n)=>{const r=[],i=[];let o=[];if(n.replace(t,(t,n,a,c,f,d)=>{if(n)o.push(u(n));else if(c){const t=o.join("");o=[],i.push(0===r.length?t:s(e,r)(t)),r.push({inverse:a,styles:l(c)})}else if(f){if(0===r.length)throw new Error("Found extraneous } in Chalk template literal");i.push(s(e,r)(o.join(""))),o=[],r.pop()}else o.push(d)}),i.push(o.join("")),r.length>0){const e=`Chalk template literal is missing ${r.length} closing bracket${1===r.length?"":"s"} (\`}\`)`;throw new Error(e)}return i.join("")}},6539:e=>{"use strict";e.exports={stringReplaceAll:(e,t,n)=>{let r=e.indexOf(t);if(-1===r)return e;const i=t.length;let o=0,u="";do{u+=e.substr(o,r-o)+t+n,o=r+i,r=e.indexOf(t,o)}while(-1!==r);return u+=e.substr(o),u},stringEncaseCRLFWithFirstIndex:(e,t,n,r)=>{let i=0,o="";do{const u="\r"===e[r-1];o+=e.substr(i,(u?r-1:r)-i)+t+(u?"\r\n":"\n")+n,i=r+1,r=e.indexOf("\n",i)}while(-1!==r);return o+=e.substr(i),o}}},5864:(e,t,n)=>{"use strict";var r=n(5832),i=process.env;function o(e){return"string"==typeof e?!!i[e]:Object.keys(e).every((function(t){return i[t]===e[t]}))}Object.defineProperty(t,"_vendors",{value:r.map((function(e){return e.constant}))}),t.name=null,t.isPR=null,r.forEach((function(e){var n=(Array.isArray(e.env)?e.env:[e.env]).every((function(e){return o(e)}));if(t[e.constant]=n,n)switch(t.name=e.name,typeof e.pr){case"string":t.isPR=!!i[e.pr];break;case"object":"env"in e.pr?t.isPR=e.pr.env in i&&i[e.pr.env]!==e.pr.ne:"any"in e.pr?t.isPR=e.pr.any.some((function(e){return!!i[e]})):t.isPR=o(e.pr);break;default:t.isPR=null}})),t.isCI=!!(i.CI||i.CONTINUOUS_INTEGRATION||i.BUILD_NUMBER||i.RUN_ID||t.name)},5832:e=>{"use strict";e.exports=JSON.parse('[{"name":"AppVeyor","constant":"APPVEYOR","env":"APPVEYOR","pr":"APPVEYOR_PULL_REQUEST_NUMBER"},{"name":"Azure Pipelines","constant":"AZURE_PIPELINES","env":"SYSTEM_TEAMFOUNDATIONCOLLECTIONURI","pr":"SYSTEM_PULLREQUEST_PULLREQUESTID"},{"name":"Bamboo","constant":"BAMBOO","env":"bamboo_planKey"},{"name":"Bitbucket Pipelines","constant":"BITBUCKET","env":"BITBUCKET_COMMIT","pr":"BITBUCKET_PR_ID"},{"name":"Bitrise","constant":"BITRISE","env":"BITRISE_IO","pr":"BITRISE_PULL_REQUEST"},{"name":"Buddy","constant":"BUDDY","env":"BUDDY_WORKSPACE_ID","pr":"BUDDY_EXECUTION_PULL_REQUEST_ID"},{"name":"Buildkite","constant":"BUILDKITE","env":"BUILDKITE","pr":{"env":"BUILDKITE_PULL_REQUEST","ne":"false"}},{"name":"CircleCI","constant":"CIRCLE","env":"CIRCLECI","pr":"CIRCLE_PULL_REQUEST"},{"name":"Cirrus CI","constant":"CIRRUS","env":"CIRRUS_CI","pr":"CIRRUS_PR"},{"name":"AWS CodeBuild","constant":"CODEBUILD","env":"CODEBUILD_BUILD_ARN"},{"name":"Codeship","constant":"CODESHIP","env":{"CI_NAME":"codeship"}},{"name":"Drone","constant":"DRONE","env":"DRONE","pr":{"DRONE_BUILD_EVENT":"pull_request"}},{"name":"dsari","constant":"DSARI","env":"DSARI"},{"name":"GitLab CI","constant":"GITLAB","env":"GITLAB_CI"},{"name":"GoCD","constant":"GOCD","env":"GO_PIPELINE_LABEL"},{"name":"Hudson","constant":"HUDSON","env":"HUDSON_URL"},{"name":"Jenkins","constant":"JENKINS","env":["JENKINS_URL","BUILD_ID"],"pr":{"any":["ghprbPullId","CHANGE_ID"]}},{"name":"Magnum CI","constant":"MAGNUM","env":"MAGNUM"},{"name":"Netlify CI","constant":"NETLIFY","env":"NETLIFY_BUILD_BASE","pr":{"env":"PULL_REQUEST","ne":"false"}},{"name":"Sail CI","constant":"SAIL","env":"SAILCI","pr":"SAIL_PULL_REQUEST_NUMBER"},{"name":"Semaphore","constant":"SEMAPHORE","env":"SEMAPHORE","pr":"PULL_REQUEST_NUMBER"},{"name":"Shippable","constant":"SHIPPABLE","env":"SHIPPABLE","pr":{"IS_PULL_REQUEST":"true"}},{"name":"Solano CI","constant":"SOLANO","env":"TDDIUM","pr":"TDDIUM_PR_ID"},{"name":"Strider CD","constant":"STRIDER","env":"STRIDER"},{"name":"TaskCluster","constant":"TASKCLUSTER","env":["TASK_ID","RUN_ID"]},{"name":"TeamCity","constant":"TEAMCITY","env":"TEAMCITY_VERSION"},{"name":"Travis CI","constant":"TRAVIS","env":"TRAVIS","pr":{"env":"TRAVIS_PULL_REQUEST","ne":"false"}}]')},4163:e=>{"use strict";e.exports=JSON.parse('{"single":{"topLeft":"┌","topRight":"┐","bottomRight":"┘","bottomLeft":"└","vertical":"│","horizontal":"─"},"double":{"topLeft":"╔","topRight":"╗","bottomRight":"╝","bottomLeft":"╚","vertical":"║","horizontal":"═"},"round":{"topLeft":"╭","topRight":"╮","bottomRight":"╯","bottomLeft":"╰","vertical":"│","horizontal":"─"},"bold":{"topLeft":"┏","topRight":"┓","bottomRight":"┛","bottomLeft":"┗","vertical":"┃","horizontal":"━"},"singleDouble":{"topLeft":"╓","topRight":"╖","bottomRight":"╜","bottomLeft":"╙","vertical":"║","horizontal":"─"},"doubleSingle":{"topLeft":"╒","topRight":"╕","bottomRight":"╛","bottomLeft":"╘","vertical":"│","horizontal":"═"},"classic":{"topLeft":"+","topRight":"+","bottomRight":"+","bottomLeft":"+","vertical":"|","horizontal":"-"}}')},4097:(e,t,n)=>{"use strict";const r=n(4163);e.exports=r,e.exports.default=r},1696:(e,t,n)=>{"use strict";const r=n(3390);let i=!1;t.show=(e=process.stderr)=>{e.isTTY&&(i=!1,e.write("[?25h"))},t.hide=(e=process.stderr)=>{e.isTTY&&(r(),i=!0,e.write("[?25l"))},t.toggle=(e,n)=>{void 0!==e&&(i=e),i?t.show(n):t.hide(n)}},5301:(e,t,n)=>{"use strict";const r=n(1566),i=n(5043);function o(e,t,n){if(" "===e.charAt(t))return t;for(let r=1;r<=3;r++)if(n){if(" "===e.charAt(t+r))return t+r}else if(" "===e.charAt(t-r))return t-r;return t}e.exports=(e,t,n)=>{n={position:"end",preferTruncationOnSpace:!1,...n};const{position:u,space:a,preferTruncationOnSpace:l}=n;let s="…",c=1;if("string"!=typeof e)throw new TypeError("Expected `input` to be a string, got "+typeof e);if("number"!=typeof t)throw new TypeError("Expected `columns` to be a number, got "+typeof t);if(t<1)return"";if(1===t)return s;const f=i(e);if(f<=t)return e;if("start"===u){if(l){const n=o(e,f-t+1,!0);return s+r(e,n,f).trim()}return!0===a&&(s+=" ",c=2),s+r(e,f-t+c,f)}if("middle"===u){!0===a&&(s=" "+s+" ",c=3);const n=Math.floor(t/2);if(l){const i=o(e,n),u=o(e,f-(t-n)+1,!0);return r(e,0,i)+s+r(e,u,f).trim()}return r(e,0,n)+s+r(e,f-(t-n)+c,f)}if("end"===u){if(l){const n=o(e,t-1);return r(e,0,n)+s}return!0===a&&(s=" "+s,c=2),r(e,0,t-c)+s}throw new Error("Expected `options.position` to be either `start`, `middle` or `end`, got "+u)}},9908:(e,t,n)=>{"use strict";const r=n(3287);e.exports=(e,t,n)=>{if("string"!=typeof e)throw new TypeError("Source code is missing.");if(!t||t<1)throw new TypeError("Line number must start from `1`.");if(!(t>(e=r(e).split(/\r?\n/)).length))return((e,t)=>{const n=[],r=e+t;for(let i=e-t;i<=r;i++)n.push(i);return n})(t,(n={around:3,...n}).around).filter(t=>void 0!==e[t-1]).map(t=>({line:t,value:e[t-1]}))}},5311:(e,t,n)=>{const r=n(3300),i={};for(const e of Object.keys(r))i[r[e]]=e;const o={rgb:{channels:3,labels:"rgb"},hsl:{channels:3,labels:"hsl"},hsv:{channels:3,labels:"hsv"},hwb:{channels:3,labels:"hwb"},cmyk:{channels:4,labels:"cmyk"},xyz:{channels:3,labels:"xyz"},lab:{channels:3,labels:"lab"},lch:{channels:3,labels:"lch"},hex:{channels:1,labels:["hex"]},keyword:{channels:1,labels:["keyword"]},ansi16:{channels:1,labels:["ansi16"]},ansi256:{channels:1,labels:["ansi256"]},hcg:{channels:3,labels:["h","c","g"]},apple:{channels:3,labels:["r16","g16","b16"]},gray:{channels:1,labels:["gray"]}};e.exports=o;for(const e of Object.keys(o)){if(!("channels"in o[e]))throw new Error("missing channels property: "+e);if(!("labels"in o[e]))throw new Error("missing channel labels property: "+e);if(o[e].labels.length!==o[e].channels)throw new Error("channel and label counts mismatch: "+e);const{channels:t,labels:n}=o[e];delete o[e].channels,delete o[e].labels,Object.defineProperty(o[e],"channels",{value:t}),Object.defineProperty(o[e],"labels",{value:n})}o.rgb.hsl=function(e){const t=e[0]/255,n=e[1]/255,r=e[2]/255,i=Math.min(t,n,r),o=Math.max(t,n,r),u=o-i;let a,l;o===i?a=0:t===o?a=(n-r)/u:n===o?a=2+(r-t)/u:r===o&&(a=4+(t-n)/u),a=Math.min(60*a,360),a<0&&(a+=360);const s=(i+o)/2;return l=o===i?0:s<=.5?u/(o+i):u/(2-o-i),[a,100*l,100*s]},o.rgb.hsv=function(e){let t,n,r,i,o;const u=e[0]/255,a=e[1]/255,l=e[2]/255,s=Math.max(u,a,l),c=s-Math.min(u,a,l),f=function(e){return(s-e)/6/c+.5};return 0===c?(i=0,o=0):(o=c/s,t=f(u),n=f(a),r=f(l),u===s?i=r-n:a===s?i=1/3+t-r:l===s&&(i=2/3+n-t),i<0?i+=1:i>1&&(i-=1)),[360*i,100*o,100*s]},o.rgb.hwb=function(e){const t=e[0],n=e[1];let r=e[2];const i=o.rgb.hsl(e)[0],u=1/255*Math.min(t,Math.min(n,r));return r=1-1/255*Math.max(t,Math.max(n,r)),[i,100*u,100*r]},o.rgb.cmyk=function(e){const t=e[0]/255,n=e[1]/255,r=e[2]/255,i=Math.min(1-t,1-n,1-r);return[100*((1-t-i)/(1-i)||0),100*((1-n-i)/(1-i)||0),100*((1-r-i)/(1-i)||0),100*i]},o.rgb.keyword=function(e){const t=i[e];if(t)return t;let n,o=1/0;for(const t of Object.keys(r)){const i=r[t],l=(a=i,((u=e)[0]-a[0])**2+(u[1]-a[1])**2+(u[2]-a[2])**2);l.04045?((t+.055)/1.055)**2.4:t/12.92,n=n>.04045?((n+.055)/1.055)**2.4:n/12.92,r=r>.04045?((r+.055)/1.055)**2.4:r/12.92;return[100*(.4124*t+.3576*n+.1805*r),100*(.2126*t+.7152*n+.0722*r),100*(.0193*t+.1192*n+.9505*r)]},o.rgb.lab=function(e){const t=o.rgb.xyz(e);let n=t[0],r=t[1],i=t[2];n/=95.047,r/=100,i/=108.883,n=n>.008856?n**(1/3):7.787*n+16/116,r=r>.008856?r**(1/3):7.787*r+16/116,i=i>.008856?i**(1/3):7.787*i+16/116;return[116*r-16,500*(n-r),200*(r-i)]},o.hsl.rgb=function(e){const t=e[0]/360,n=e[1]/100,r=e[2]/100;let i,o,u;if(0===n)return u=255*r,[u,u,u];i=r<.5?r*(1+n):r+n-r*n;const a=2*r-i,l=[0,0,0];for(let e=0;e<3;e++)o=t+1/3*-(e-1),o<0&&o++,o>1&&o--,u=6*o<1?a+6*(i-a)*o:2*o<1?i:3*o<2?a+(i-a)*(2/3-o)*6:a,l[e]=255*u;return l},o.hsl.hsv=function(e){const t=e[0];let n=e[1]/100,r=e[2]/100,i=n;const o=Math.max(r,.01);r*=2,n*=r<=1?r:2-r,i*=o<=1?o:2-o;return[t,100*(0===r?2*i/(o+i):2*n/(r+n)),100*((r+n)/2)]},o.hsv.rgb=function(e){const t=e[0]/60,n=e[1]/100;let r=e[2]/100;const i=Math.floor(t)%6,o=t-Math.floor(t),u=255*r*(1-n),a=255*r*(1-n*o),l=255*r*(1-n*(1-o));switch(r*=255,i){case 0:return[r,l,u];case 1:return[a,r,u];case 2:return[u,r,l];case 3:return[u,a,r];case 4:return[l,u,r];case 5:return[r,u,a]}},o.hsv.hsl=function(e){const t=e[0],n=e[1]/100,r=e[2]/100,i=Math.max(r,.01);let o,u;u=(2-n)*r;const a=(2-n)*i;return o=n*i,o/=a<=1?a:2-a,o=o||0,u/=2,[t,100*o,100*u]},o.hwb.rgb=function(e){const t=e[0]/360;let n=e[1]/100,r=e[2]/100;const i=n+r;let o;i>1&&(n/=i,r/=i);const u=Math.floor(6*t),a=1-r;o=6*t-u,0!=(1&u)&&(o=1-o);const l=n+o*(a-n);let s,c,f;switch(u){default:case 6:case 0:s=a,c=l,f=n;break;case 1:s=l,c=a,f=n;break;case 2:s=n,c=a,f=l;break;case 3:s=n,c=l,f=a;break;case 4:s=l,c=n,f=a;break;case 5:s=a,c=n,f=l}return[255*s,255*c,255*f]},o.cmyk.rgb=function(e){const t=e[0]/100,n=e[1]/100,r=e[2]/100,i=e[3]/100;return[255*(1-Math.min(1,t*(1-i)+i)),255*(1-Math.min(1,n*(1-i)+i)),255*(1-Math.min(1,r*(1-i)+i))]},o.xyz.rgb=function(e){const t=e[0]/100,n=e[1]/100,r=e[2]/100;let i,o,u;return i=3.2406*t+-1.5372*n+-.4986*r,o=-.9689*t+1.8758*n+.0415*r,u=.0557*t+-.204*n+1.057*r,i=i>.0031308?1.055*i**(1/2.4)-.055:12.92*i,o=o>.0031308?1.055*o**(1/2.4)-.055:12.92*o,u=u>.0031308?1.055*u**(1/2.4)-.055:12.92*u,i=Math.min(Math.max(0,i),1),o=Math.min(Math.max(0,o),1),u=Math.min(Math.max(0,u),1),[255*i,255*o,255*u]},o.xyz.lab=function(e){let t=e[0],n=e[1],r=e[2];t/=95.047,n/=100,r/=108.883,t=t>.008856?t**(1/3):7.787*t+16/116,n=n>.008856?n**(1/3):7.787*n+16/116,r=r>.008856?r**(1/3):7.787*r+16/116;return[116*n-16,500*(t-n),200*(n-r)]},o.lab.xyz=function(e){let t,n,r;n=(e[0]+16)/116,t=e[1]/500+n,r=n-e[2]/200;const i=n**3,o=t**3,u=r**3;return n=i>.008856?i:(n-16/116)/7.787,t=o>.008856?o:(t-16/116)/7.787,r=u>.008856?u:(r-16/116)/7.787,t*=95.047,n*=100,r*=108.883,[t,n,r]},o.lab.lch=function(e){const t=e[0],n=e[1],r=e[2];let i;i=360*Math.atan2(r,n)/2/Math.PI,i<0&&(i+=360);return[t,Math.sqrt(n*n+r*r),i]},o.lch.lab=function(e){const t=e[0],n=e[1],r=e[2]/360*2*Math.PI;return[t,n*Math.cos(r),n*Math.sin(r)]},o.rgb.ansi16=function(e,t=null){const[n,r,i]=e;let u=null===t?o.rgb.hsv(e)[2]:t;if(u=Math.round(u/50),0===u)return 30;let a=30+(Math.round(i/255)<<2|Math.round(r/255)<<1|Math.round(n/255));return 2===u&&(a+=60),a},o.hsv.ansi16=function(e){return o.rgb.ansi16(o.hsv.rgb(e),e[2])},o.rgb.ansi256=function(e){const t=e[0],n=e[1],r=e[2];if(t===n&&n===r)return t<8?16:t>248?231:Math.round((t-8)/247*24)+232;return 16+36*Math.round(t/255*5)+6*Math.round(n/255*5)+Math.round(r/255*5)},o.ansi16.rgb=function(e){let t=e%10;if(0===t||7===t)return e>50&&(t+=3.5),t=t/10.5*255,[t,t,t];const n=.5*(1+~~(e>50));return[(1&t)*n*255,(t>>1&1)*n*255,(t>>2&1)*n*255]},o.ansi256.rgb=function(e){if(e>=232){const t=10*(e-232)+8;return[t,t,t]}let t;e-=16;return[Math.floor(e/36)/5*255,Math.floor((t=e%36)/6)/5*255,t%6/5*255]},o.rgb.hex=function(e){const t=(((255&Math.round(e[0]))<<16)+((255&Math.round(e[1]))<<8)+(255&Math.round(e[2]))).toString(16).toUpperCase();return"000000".substring(t.length)+t},o.hex.rgb=function(e){const t=e.toString(16).match(/[a-f0-9]{6}|[a-f0-9]{3}/i);if(!t)return[0,0,0];let n=t[0];3===t[0].length&&(n=n.split("").map(e=>e+e).join(""));const r=parseInt(n,16);return[r>>16&255,r>>8&255,255&r]},o.rgb.hcg=function(e){const t=e[0]/255,n=e[1]/255,r=e[2]/255,i=Math.max(Math.max(t,n),r),o=Math.min(Math.min(t,n),r),u=i-o;let a,l;return a=u<1?o/(1-u):0,l=u<=0?0:i===t?(n-r)/u%6:i===n?2+(r-t)/u:4+(t-n)/u,l/=6,l%=1,[360*l,100*u,100*a]},o.hsl.hcg=function(e){const t=e[1]/100,n=e[2]/100,r=n<.5?2*t*n:2*t*(1-n);let i=0;return r<1&&(i=(n-.5*r)/(1-r)),[e[0],100*r,100*i]},o.hsv.hcg=function(e){const t=e[1]/100,n=e[2]/100,r=t*n;let i=0;return r<1&&(i=(n-r)/(1-r)),[e[0],100*r,100*i]},o.hcg.rgb=function(e){const t=e[0]/360,n=e[1]/100,r=e[2]/100;if(0===n)return[255*r,255*r,255*r];const i=[0,0,0],o=t%1*6,u=o%1,a=1-u;let l=0;switch(Math.floor(o)){case 0:i[0]=1,i[1]=u,i[2]=0;break;case 1:i[0]=a,i[1]=1,i[2]=0;break;case 2:i[0]=0,i[1]=1,i[2]=u;break;case 3:i[0]=0,i[1]=a,i[2]=1;break;case 4:i[0]=u,i[1]=0,i[2]=1;break;default:i[0]=1,i[1]=0,i[2]=a}return l=(1-n)*r,[255*(n*i[0]+l),255*(n*i[1]+l),255*(n*i[2]+l)]},o.hcg.hsv=function(e){const t=e[1]/100,n=t+e[2]/100*(1-t);let r=0;return n>0&&(r=t/n),[e[0],100*r,100*n]},o.hcg.hsl=function(e){const t=e[1]/100,n=e[2]/100*(1-t)+.5*t;let r=0;return n>0&&n<.5?r=t/(2*n):n>=.5&&n<1&&(r=t/(2*(1-n))),[e[0],100*r,100*n]},o.hcg.hwb=function(e){const t=e[1]/100,n=t+e[2]/100*(1-t);return[e[0],100*(n-t),100*(1-n)]},o.hwb.hcg=function(e){const t=e[1]/100,n=1-e[2]/100,r=n-t;let i=0;return r<1&&(i=(n-r)/(1-r)),[e[0],100*r,100*i]},o.apple.rgb=function(e){return[e[0]/65535*255,e[1]/65535*255,e[2]/65535*255]},o.rgb.apple=function(e){return[e[0]/255*65535,e[1]/255*65535,e[2]/255*65535]},o.gray.rgb=function(e){return[e[0]/100*255,e[0]/100*255,e[0]/100*255]},o.gray.hsl=function(e){return[0,0,e[0]]},o.gray.hsv=o.gray.hsl,o.gray.hwb=function(e){return[0,100,e[0]]},o.gray.cmyk=function(e){return[0,0,0,e[0]]},o.gray.lab=function(e){return[e[0],0,0]},o.gray.hex=function(e){const t=255&Math.round(e[0]/100*255),n=((t<<16)+(t<<8)+t).toString(16).toUpperCase();return"000000".substring(n.length)+n},o.rgb.gray=function(e){return[(e[0]+e[1]+e[2])/3/255*100]}},2744:(e,t,n)=>{const r=n(5311),i=n(8577),o={};Object.keys(r).forEach(e=>{o[e]={},Object.defineProperty(o[e],"channels",{value:r[e].channels}),Object.defineProperty(o[e],"labels",{value:r[e].labels});const t=i(e);Object.keys(t).forEach(n=>{const r=t[n];o[e][n]=function(e){const t=function(...t){const n=t[0];if(null==n)return n;n.length>1&&(t=n);const r=e(t);if("object"==typeof r)for(let e=r.length,t=0;t1&&(t=n),e(t))};return"conversion"in e&&(t.conversion=e.conversion),t}(r)})}),e.exports=o},8577:(e,t,n)=>{const r=n(5311);function i(e){const t=function(){const e={},t=Object.keys(r);for(let n=t.length,r=0;r{"use strict";e.exports={aliceblue:[240,248,255],antiquewhite:[250,235,215],aqua:[0,255,255],aquamarine:[127,255,212],azure:[240,255,255],beige:[245,245,220],bisque:[255,228,196],black:[0,0,0],blanchedalmond:[255,235,205],blue:[0,0,255],blueviolet:[138,43,226],brown:[165,42,42],burlywood:[222,184,135],cadetblue:[95,158,160],chartreuse:[127,255,0],chocolate:[210,105,30],coral:[255,127,80],cornflowerblue:[100,149,237],cornsilk:[255,248,220],crimson:[220,20,60],cyan:[0,255,255],darkblue:[0,0,139],darkcyan:[0,139,139],darkgoldenrod:[184,134,11],darkgray:[169,169,169],darkgreen:[0,100,0],darkgrey:[169,169,169],darkkhaki:[189,183,107],darkmagenta:[139,0,139],darkolivegreen:[85,107,47],darkorange:[255,140,0],darkorchid:[153,50,204],darkred:[139,0,0],darksalmon:[233,150,122],darkseagreen:[143,188,143],darkslateblue:[72,61,139],darkslategray:[47,79,79],darkslategrey:[47,79,79],darkturquoise:[0,206,209],darkviolet:[148,0,211],deeppink:[255,20,147],deepskyblue:[0,191,255],dimgray:[105,105,105],dimgrey:[105,105,105],dodgerblue:[30,144,255],firebrick:[178,34,34],floralwhite:[255,250,240],forestgreen:[34,139,34],fuchsia:[255,0,255],gainsboro:[220,220,220],ghostwhite:[248,248,255],gold:[255,215,0],goldenrod:[218,165,32],gray:[128,128,128],green:[0,128,0],greenyellow:[173,255,47],grey:[128,128,128],honeydew:[240,255,240],hotpink:[255,105,180],indianred:[205,92,92],indigo:[75,0,130],ivory:[255,255,240],khaki:[240,230,140],lavender:[230,230,250],lavenderblush:[255,240,245],lawngreen:[124,252,0],lemonchiffon:[255,250,205],lightblue:[173,216,230],lightcoral:[240,128,128],lightcyan:[224,255,255],lightgoldenrodyellow:[250,250,210],lightgray:[211,211,211],lightgreen:[144,238,144],lightgrey:[211,211,211],lightpink:[255,182,193],lightsalmon:[255,160,122],lightseagreen:[32,178,170],lightskyblue:[135,206,250],lightslategray:[119,136,153],lightslategrey:[119,136,153],lightsteelblue:[176,196,222],lightyellow:[255,255,224],lime:[0,255,0],limegreen:[50,205,50],linen:[250,240,230],magenta:[255,0,255],maroon:[128,0,0],mediumaquamarine:[102,205,170],mediumblue:[0,0,205],mediumorchid:[186,85,211],mediumpurple:[147,112,219],mediumseagreen:[60,179,113],mediumslateblue:[123,104,238],mediumspringgreen:[0,250,154],mediumturquoise:[72,209,204],mediumvioletred:[199,21,133],midnightblue:[25,25,112],mintcream:[245,255,250],mistyrose:[255,228,225],moccasin:[255,228,181],navajowhite:[255,222,173],navy:[0,0,128],oldlace:[253,245,230],olive:[128,128,0],olivedrab:[107,142,35],orange:[255,165,0],orangered:[255,69,0],orchid:[218,112,214],palegoldenrod:[238,232,170],palegreen:[152,251,152],paleturquoise:[175,238,238],palevioletred:[219,112,147],papayawhip:[255,239,213],peachpuff:[255,218,185],peru:[205,133,63],pink:[255,192,203],plum:[221,160,221],powderblue:[176,224,230],purple:[128,0,128],rebeccapurple:[102,51,153],red:[255,0,0],rosybrown:[188,143,143],royalblue:[65,105,225],saddlebrown:[139,69,19],salmon:[250,128,114],sandybrown:[244,164,96],seagreen:[46,139,87],seashell:[255,245,238],sienna:[160,82,45],silver:[192,192,192],skyblue:[135,206,235],slateblue:[106,90,205],slategray:[112,128,144],slategrey:[112,128,144],snow:[255,250,250],springgreen:[0,255,127],steelblue:[70,130,180],tan:[210,180,140],teal:[0,128,128],thistle:[216,191,216],tomato:[255,99,71],turquoise:[64,224,208],violet:[238,130,238],wheat:[245,222,179],white:[255,255,255],whitesmoke:[245,245,245],yellow:[255,255,0],yellowgreen:[154,205,50]}},3287:e=>{"use strict";e.exports=(e,t)=>e.replace(/^\t+/gm,e=>" ".repeat(e.length*(t||2)))},1013:e=>{"use strict";e.exports=function(){return/\uD83C\uDFF4\uDB40\uDC67\uDB40\uDC62(?:\uDB40\uDC65\uDB40\uDC6E\uDB40\uDC67|\uDB40\uDC73\uDB40\uDC63\uDB40\uDC74|\uDB40\uDC77\uDB40\uDC6C\uDB40\uDC73)\uDB40\uDC7F|\uD83D\uDC68(?:\uD83C\uDFFC\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68\uD83C\uDFFB|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFF\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFE])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFE\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFD])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFD\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB\uDFFC])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\u200D(?:\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83D\uDC68|(?:\uD83D[\uDC68\uDC69])\u200D(?:\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67]))|\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67])|(?:\uD83D[\uDC68\uDC69])\u200D(?:\uD83D[\uDC66\uDC67])|[\u2695\u2696\u2708]\uFE0F|\uD83D[\uDC66\uDC67]|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|(?:\uD83C\uDFFB\u200D[\u2695\u2696\u2708]|\uD83C\uDFFF\u200D[\u2695\u2696\u2708]|\uD83C\uDFFE\u200D[\u2695\u2696\u2708]|\uD83C\uDFFD\u200D[\u2695\u2696\u2708]|\uD83C\uDFFC\u200D[\u2695\u2696\u2708])\uFE0F|\uD83C\uDFFB\u200D(?:\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C[\uDFFB-\uDFFF])|(?:\uD83E\uDDD1\uD83C\uDFFB\u200D\uD83E\uDD1D\u200D\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFC\u200D\uD83E\uDD1D\u200D\uD83D\uDC69)\uD83C\uDFFB|\uD83E\uDDD1(?:\uD83C\uDFFF\u200D\uD83E\uDD1D\u200D\uD83E\uDDD1(?:\uD83C[\uDFFB-\uDFFF])|\u200D\uD83E\uDD1D\u200D\uD83E\uDDD1)|(?:\uD83E\uDDD1\uD83C\uDFFE\u200D\uD83E\uDD1D\u200D\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFF\u200D\uD83E\uDD1D\u200D(?:\uD83D[\uDC68\uDC69]))(?:\uD83C[\uDFFB-\uDFFE])|(?:\uD83E\uDDD1\uD83C\uDFFC\u200D\uD83E\uDD1D\u200D\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFD\u200D\uD83E\uDD1D\u200D\uD83D\uDC69)(?:\uD83C[\uDFFB\uDFFC])|\uD83D\uDC69(?:\uD83C\uDFFE\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFD\uDFFF])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFC\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB\uDFFD-\uDFFF])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFB\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFC-\uDFFF])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFD\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\u200D(?:\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D(?:\uD83D[\uDC68\uDC69])|\uD83D[\uDC68\uDC69])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFF\u200D(?:\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD]))|\uD83D\uDC69\u200D\uD83D\uDC69\u200D(?:\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67]))|(?:\uD83E\uDDD1\uD83C\uDFFD\u200D\uD83E\uDD1D\u200D\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFE\u200D\uD83E\uDD1D\u200D\uD83D\uDC69)(?:\uD83C[\uDFFB-\uDFFD])|\uD83D\uDC69\u200D\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC69\u200D\uD83D\uDC69\u200D(?:\uD83D[\uDC66\uDC67])|(?:\uD83D\uDC41\uFE0F\u200D\uD83D\uDDE8|\uD83D\uDC69(?:\uD83C\uDFFF\u200D[\u2695\u2696\u2708]|\uD83C\uDFFE\u200D[\u2695\u2696\u2708]|\uD83C\uDFFC\u200D[\u2695\u2696\u2708]|\uD83C\uDFFB\u200D[\u2695\u2696\u2708]|\uD83C\uDFFD\u200D[\u2695\u2696\u2708]|\u200D[\u2695\u2696\u2708])|(?:(?:\u26F9|\uD83C[\uDFCB\uDFCC]|\uD83D\uDD75)\uFE0F|\uD83D\uDC6F|\uD83E[\uDD3C\uDDDE\uDDDF])\u200D[\u2640\u2642]|(?:\u26F9|\uD83C[\uDFCB\uDFCC]|\uD83D\uDD75)(?:\uD83C[\uDFFB-\uDFFF])\u200D[\u2640\u2642]|(?:\uD83C[\uDFC3\uDFC4\uDFCA]|\uD83D[\uDC6E\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4-\uDEB6]|\uD83E[\uDD26\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD-\uDDCF\uDDD6-\uDDDD])(?:(?:\uD83C[\uDFFB-\uDFFF])\u200D[\u2640\u2642]|\u200D[\u2640\u2642])|\uD83C\uDFF4\u200D\u2620)\uFE0F|\uD83D\uDC69\u200D\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67])|\uD83C\uDFF3\uFE0F\u200D\uD83C\uDF08|\uD83D\uDC15\u200D\uD83E\uDDBA|\uD83D\uDC69\u200D\uD83D\uDC66|\uD83D\uDC69\u200D\uD83D\uDC67|\uD83C\uDDFD\uD83C\uDDF0|\uD83C\uDDF4\uD83C\uDDF2|\uD83C\uDDF6\uD83C\uDDE6|[#\*0-9]\uFE0F\u20E3|\uD83C\uDDE7(?:\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEF\uDDF1-\uDDF4\uDDF6-\uDDF9\uDDFB\uDDFC\uDDFE\uDDFF])|\uD83C\uDDF9(?:\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDED\uDDEF-\uDDF4\uDDF7\uDDF9\uDDFB\uDDFC\uDDFF])|\uD83C\uDDEA(?:\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDED\uDDF7-\uDDFA])|\uD83E\uDDD1(?:\uD83C[\uDFFB-\uDFFF])|\uD83C\uDDF7(?:\uD83C[\uDDEA\uDDF4\uDDF8\uDDFA\uDDFC])|\uD83D\uDC69(?:\uD83C[\uDFFB-\uDFFF])|\uD83C\uDDF2(?:\uD83C[\uDDE6\uDDE8-\uDDED\uDDF0-\uDDFF])|\uD83C\uDDE6(?:\uD83C[\uDDE8-\uDDEC\uDDEE\uDDF1\uDDF2\uDDF4\uDDF6-\uDDFA\uDDFC\uDDFD\uDDFF])|\uD83C\uDDF0(?:\uD83C[\uDDEA\uDDEC-\uDDEE\uDDF2\uDDF3\uDDF5\uDDF7\uDDFC\uDDFE\uDDFF])|\uD83C\uDDED(?:\uD83C[\uDDF0\uDDF2\uDDF3\uDDF7\uDDF9\uDDFA])|\uD83C\uDDE9(?:\uD83C[\uDDEA\uDDEC\uDDEF\uDDF0\uDDF2\uDDF4\uDDFF])|\uD83C\uDDFE(?:\uD83C[\uDDEA\uDDF9])|\uD83C\uDDEC(?:\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEE\uDDF1-\uDDF3\uDDF5-\uDDFA\uDDFC\uDDFE])|\uD83C\uDDF8(?:\uD83C[\uDDE6-\uDDEA\uDDEC-\uDDF4\uDDF7-\uDDF9\uDDFB\uDDFD-\uDDFF])|\uD83C\uDDEB(?:\uD83C[\uDDEE-\uDDF0\uDDF2\uDDF4\uDDF7])|\uD83C\uDDF5(?:\uD83C[\uDDE6\uDDEA-\uDDED\uDDF0-\uDDF3\uDDF7-\uDDF9\uDDFC\uDDFE])|\uD83C\uDDFB(?:\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDEE\uDDF3\uDDFA])|\uD83C\uDDF3(?:\uD83C[\uDDE6\uDDE8\uDDEA-\uDDEC\uDDEE\uDDF1\uDDF4\uDDF5\uDDF7\uDDFA\uDDFF])|\uD83C\uDDE8(?:\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDEE\uDDF0-\uDDF5\uDDF7\uDDFA-\uDDFF])|\uD83C\uDDF1(?:\uD83C[\uDDE6-\uDDE8\uDDEE\uDDF0\uDDF7-\uDDFB\uDDFE])|\uD83C\uDDFF(?:\uD83C[\uDDE6\uDDF2\uDDFC])|\uD83C\uDDFC(?:\uD83C[\uDDEB\uDDF8])|\uD83C\uDDFA(?:\uD83C[\uDDE6\uDDEC\uDDF2\uDDF3\uDDF8\uDDFE\uDDFF])|\uD83C\uDDEE(?:\uD83C[\uDDE8-\uDDEA\uDDF1-\uDDF4\uDDF6-\uDDF9])|\uD83C\uDDEF(?:\uD83C[\uDDEA\uDDF2\uDDF4\uDDF5])|(?:\uD83C[\uDFC3\uDFC4\uDFCA]|\uD83D[\uDC6E\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4-\uDEB6]|\uD83E[\uDD26\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD-\uDDCF\uDDD6-\uDDDD])(?:\uD83C[\uDFFB-\uDFFF])|(?:\u26F9|\uD83C[\uDFCB\uDFCC]|\uD83D\uDD75)(?:\uD83C[\uDFFB-\uDFFF])|(?:[\u261D\u270A-\u270D]|\uD83C[\uDF85\uDFC2\uDFC7]|\uD83D[\uDC42\uDC43\uDC46-\uDC50\uDC66\uDC67\uDC6B-\uDC6D\uDC70\uDC72\uDC74-\uDC76\uDC78\uDC7C\uDC83\uDC85\uDCAA\uDD74\uDD7A\uDD90\uDD95\uDD96\uDE4C\uDE4F\uDEC0\uDECC]|\uD83E[\uDD0F\uDD18-\uDD1C\uDD1E\uDD1F\uDD30-\uDD36\uDDB5\uDDB6\uDDBB\uDDD2-\uDDD5])(?:\uD83C[\uDFFB-\uDFFF])|(?:[\u231A\u231B\u23E9-\u23EC\u23F0\u23F3\u25FD\u25FE\u2614\u2615\u2648-\u2653\u267F\u2693\u26A1\u26AA\u26AB\u26BD\u26BE\u26C4\u26C5\u26CE\u26D4\u26EA\u26F2\u26F3\u26F5\u26FA\u26FD\u2705\u270A\u270B\u2728\u274C\u274E\u2753-\u2755\u2757\u2795-\u2797\u27B0\u27BF\u2B1B\u2B1C\u2B50\u2B55]|\uD83C[\uDC04\uDCCF\uDD8E\uDD91-\uDD9A\uDDE6-\uDDFF\uDE01\uDE1A\uDE2F\uDE32-\uDE36\uDE38-\uDE3A\uDE50\uDE51\uDF00-\uDF20\uDF2D-\uDF35\uDF37-\uDF7C\uDF7E-\uDF93\uDFA0-\uDFCA\uDFCF-\uDFD3\uDFE0-\uDFF0\uDFF4\uDFF8-\uDFFF]|\uD83D[\uDC00-\uDC3E\uDC40\uDC42-\uDCFC\uDCFF-\uDD3D\uDD4B-\uDD4E\uDD50-\uDD67\uDD7A\uDD95\uDD96\uDDA4\uDDFB-\uDE4F\uDE80-\uDEC5\uDECC\uDED0-\uDED2\uDED5\uDEEB\uDEEC\uDEF4-\uDEFA\uDFE0-\uDFEB]|\uD83E[\uDD0D-\uDD3A\uDD3C-\uDD45\uDD47-\uDD71\uDD73-\uDD76\uDD7A-\uDDA2\uDDA5-\uDDAA\uDDAE-\uDDCA\uDDCD-\uDDFF\uDE70-\uDE73\uDE78-\uDE7A\uDE80-\uDE82\uDE90-\uDE95])|(?:[#\*0-9\xA9\xAE\u203C\u2049\u2122\u2139\u2194-\u2199\u21A9\u21AA\u231A\u231B\u2328\u23CF\u23E9-\u23F3\u23F8-\u23FA\u24C2\u25AA\u25AB\u25B6\u25C0\u25FB-\u25FE\u2600-\u2604\u260E\u2611\u2614\u2615\u2618\u261D\u2620\u2622\u2623\u2626\u262A\u262E\u262F\u2638-\u263A\u2640\u2642\u2648-\u2653\u265F\u2660\u2663\u2665\u2666\u2668\u267B\u267E\u267F\u2692-\u2697\u2699\u269B\u269C\u26A0\u26A1\u26AA\u26AB\u26B0\u26B1\u26BD\u26BE\u26C4\u26C5\u26C8\u26CE\u26CF\u26D1\u26D3\u26D4\u26E9\u26EA\u26F0-\u26F5\u26F7-\u26FA\u26FD\u2702\u2705\u2708-\u270D\u270F\u2712\u2714\u2716\u271D\u2721\u2728\u2733\u2734\u2744\u2747\u274C\u274E\u2753-\u2755\u2757\u2763\u2764\u2795-\u2797\u27A1\u27B0\u27BF\u2934\u2935\u2B05-\u2B07\u2B1B\u2B1C\u2B50\u2B55\u3030\u303D\u3297\u3299]|\uD83C[\uDC04\uDCCF\uDD70\uDD71\uDD7E\uDD7F\uDD8E\uDD91-\uDD9A\uDDE6-\uDDFF\uDE01\uDE02\uDE1A\uDE2F\uDE32-\uDE3A\uDE50\uDE51\uDF00-\uDF21\uDF24-\uDF93\uDF96\uDF97\uDF99-\uDF9B\uDF9E-\uDFF0\uDFF3-\uDFF5\uDFF7-\uDFFF]|\uD83D[\uDC00-\uDCFD\uDCFF-\uDD3D\uDD49-\uDD4E\uDD50-\uDD67\uDD6F\uDD70\uDD73-\uDD7A\uDD87\uDD8A-\uDD8D\uDD90\uDD95\uDD96\uDDA4\uDDA5\uDDA8\uDDB1\uDDB2\uDDBC\uDDC2-\uDDC4\uDDD1-\uDDD3\uDDDC-\uDDDE\uDDE1\uDDE3\uDDE8\uDDEF\uDDF3\uDDFA-\uDE4F\uDE80-\uDEC5\uDECB-\uDED2\uDED5\uDEE0-\uDEE5\uDEE9\uDEEB\uDEEC\uDEF0\uDEF3-\uDEFA\uDFE0-\uDFEB]|\uD83E[\uDD0D-\uDD3A\uDD3C-\uDD45\uDD47-\uDD71\uDD73-\uDD76\uDD7A-\uDDA2\uDDA5-\uDDAA\uDDAE-\uDDCA\uDDCD-\uDDFF\uDE70-\uDE73\uDE78-\uDE7A\uDE80-\uDE82\uDE90-\uDE95])\uFE0F|(?:[\u261D\u26F9\u270A-\u270D]|\uD83C[\uDF85\uDFC2-\uDFC4\uDFC7\uDFCA-\uDFCC]|\uD83D[\uDC42\uDC43\uDC46-\uDC50\uDC66-\uDC78\uDC7C\uDC81-\uDC83\uDC85-\uDC87\uDC8F\uDC91\uDCAA\uDD74\uDD75\uDD7A\uDD90\uDD95\uDD96\uDE45-\uDE47\uDE4B-\uDE4F\uDEA3\uDEB4-\uDEB6\uDEC0\uDECC]|\uD83E[\uDD0F\uDD18-\uDD1F\uDD26\uDD30-\uDD39\uDD3C-\uDD3E\uDDB5\uDDB6\uDDB8\uDDB9\uDDBB\uDDCD-\uDDCF\uDDD1-\uDDDD])/g}},8759:e=>{"use strict";const t=/[|\\{}()[\]^$+*?.-]/g;e.exports=e=>{if("string"!=typeof e)throw new TypeError("Expected a string");return e.replace(t,"\\$&")}},2918:e=>{"use strict";e.exports=(e,t=process.argv)=>{const n=e.startsWith("-")?"":1===e.length?"-":"--",r=t.indexOf(n+e),i=t.indexOf("--");return-1!==r&&(-1===i||r{"use strict";e.exports=(e,t=1,n)=>{if(n={indent:" ",includeEmptyLines:!1,...n},"string"!=typeof e)throw new TypeError(`Expected \`input\` to be a \`string\`, got \`${typeof e}\``);if("number"!=typeof t)throw new TypeError(`Expected \`count\` to be a \`number\`, got \`${typeof t}\``);if("string"!=typeof n.indent)throw new TypeError(`Expected \`options.indent\` to be a \`string\`, got \`${typeof n.indent}\``);if(0===t)return e;const r=n.includeEmptyLines?/^/gm:/^(?!\s*$)/gm;return e.replace(r,n.indent.repeat(t))}},2738:(e,t,n)=>{"use strict";e.exports=n(5864).isCI},7347:e=>{"use strict";const t=e=>!Number.isNaN(e)&&(e>=4352&&(e<=4447||9001===e||9002===e||11904<=e&&e<=12871&&12351!==e||12880<=e&&e<=19903||19968<=e&&e<=42182||43360<=e&&e<=43388||44032<=e&&e<=55203||63744<=e&&e<=64255||65040<=e&&e<=65049||65072<=e&&e<=65131||65281<=e&&e<=65376||65504<=e&&e<=65510||110592<=e&&e<=110593||127488<=e&&e<=127569||131072<=e&&e<=262141));e.exports=t,e.exports.default=t},464:function(e,t,n){var r; +var plugin=(()=>{var PR=Object.create,J1=Object.defineProperty,MR=Object.defineProperties,FR=Object.getOwnPropertyDescriptor,LR=Object.getOwnPropertyDescriptors,RR=Object.getOwnPropertyNames,hh=Object.getOwnPropertySymbols,NR=Object.getPrototypeOf,Z4=Object.prototype.hasOwnProperty,aD=Object.prototype.propertyIsEnumerable;var dD=(i,u,f)=>u in i?J1(i,u,{enumerable:!0,configurable:!0,writable:!0,value:f}):i[u]=f,dt=(i,u)=>{for(var f in u||(u={}))Z4.call(u,f)&&dD(i,f,u[f]);if(hh)for(var f of hh(u))aD.call(u,f)&&dD(i,f,u[f]);return i},zn=(i,u)=>MR(i,LR(u)),BR=i=>J1(i,"__esModule",{value:!0});var Si=(i,u)=>{var f={};for(var c in i)Z4.call(i,c)&&u.indexOf(c)<0&&(f[c]=i[c]);if(i!=null&&hh)for(var c of hh(i))u.indexOf(c)<0&&aD.call(i,c)&&(f[c]=i[c]);return f};var Me=(i,u)=>()=>(u||i((u={exports:{}}).exports,u),u.exports),jR=(i,u)=>{for(var f in u)J1(i,f,{get:u[f],enumerable:!0})},UR=(i,u,f)=>{if(u&&typeof u=="object"||typeof u=="function")for(let c of RR(u))!Z4.call(i,c)&&c!=="default"&&J1(i,c,{get:()=>u[c],enumerable:!(f=FR(u,c))||f.enumerable});return i},Er=i=>UR(BR(J1(i!=null?PR(NR(i)):{},"default",i&&i.__esModule&&"default"in i?{get:()=>i.default,enumerable:!0}:{value:i,enumerable:!0})),i);var ey=Me((YH,pD)=>{"use strict";var hD=Object.getOwnPropertySymbols,qR=Object.prototype.hasOwnProperty,zR=Object.prototype.propertyIsEnumerable;function WR(i){if(i==null)throw new TypeError("Object.assign cannot be called with null or undefined");return Object(i)}function HR(){try{if(!Object.assign)return!1;var i=new String("abc");if(i[5]="de",Object.getOwnPropertyNames(i)[0]==="5")return!1;for(var u={},f=0;f<10;f++)u["_"+String.fromCharCode(f)]=f;var c=Object.getOwnPropertyNames(u).map(function(t){return u[t]});if(c.join("")!=="0123456789")return!1;var g={};return"abcdefghijklmnopqrst".split("").forEach(function(t){g[t]=t}),Object.keys(Object.assign({},g)).join("")==="abcdefghijklmnopqrst"}catch(t){return!1}}pD.exports=HR()?Object.assign:function(i,u){for(var f,c=WR(i),g,t=1;t{"use strict";var ty=ey(),as=typeof Symbol=="function"&&Symbol.for,Q1=as?Symbol.for("react.element"):60103,bR=as?Symbol.for("react.portal"):60106,GR=as?Symbol.for("react.fragment"):60107,VR=as?Symbol.for("react.strict_mode"):60108,YR=as?Symbol.for("react.profiler"):60114,$R=as?Symbol.for("react.provider"):60109,KR=as?Symbol.for("react.context"):60110,XR=as?Symbol.for("react.forward_ref"):60112,JR=as?Symbol.for("react.suspense"):60113,QR=as?Symbol.for("react.memo"):60115,ZR=as?Symbol.for("react.lazy"):60116,mD=typeof Symbol=="function"&&Symbol.iterator;function Z1(i){for(var u="https://reactjs.org/docs/error-decoder.html?invariant="+i,f=1;fmh.length&&mh.push(i)}function uy(i,u,f,c){var g=typeof i;(g==="undefined"||g==="boolean")&&(i=null);var t=!1;if(i===null)t=!0;else switch(g){case"string":case"number":t=!0;break;case"object":switch(i.$$typeof){case Q1:case bR:t=!0}}if(t)return f(c,i,u===""?"."+sy(i,0):u),1;if(t=0,u=u===""?".":u+":",Array.isArray(i))for(var C=0;C{"use strict";kD.exports=xD()});var AD=Me((ga,e2)=>{(function(){var i,u="4.17.21",f=200,c="Unsupported core-js use. Try https://npms.io/search?q=ponyfill.",g="Expected a function",t="Invalid `variable` option passed into `_.template`",C="__lodash_hash_undefined__",A=500,x="__lodash_placeholder__",D=1,L=2,N=4,j=1,$=2,h=1,re=2,ce=4,Q=8,oe=16,Se=32,me=64,De=128,J=256,Te=512,Oe=30,Le="...",ot=800,ct=16,Ue=1,be=2,At=3,Ot=1/0,Nt=9007199254740991,Je=17976931348623157e292,V=0/0,ne=4294967295,ge=ne-1,Z=ne>>>1,Ae=[["ary",De],["bind",h],["bindKey",re],["curry",Q],["curryRight",oe],["flip",Te],["partial",Se],["partialRight",me],["rearg",J]],at="[object Arguments]",it="[object Array]",Ft="[object AsyncFunction]",jt="[object Boolean]",hn="[object Date]",Un="[object DOMException]",Jt="[object Error]",Yt="[object Function]",cr="[object GeneratorFunction]",w="[object Map]",pt="[object Number]",Mn="[object Null]",Bn="[object Object]",Xn="[object Promise]",vr="[object Proxy]",gr="[object RegExp]",r0="[object Set]",Ci="[object String]",yo="[object Symbol]",Ds="[object Undefined]",Mu="[object WeakMap]",Gf="[object WeakSet]",iu="[object ArrayBuffer]",ou="[object DataView]",ol="[object Float32Array]",ul="[object Float64Array]",Es="[object Int8Array]",Uo="[object Int16Array]",sl="[object Int32Array]",Ss="[object Uint8Array]",Cs="[object Uint8ClampedArray]",Ti="[object Uint16Array]",Fu="[object Uint32Array]",ll=/\b__p \+= '';/g,fl=/\b(__p \+=) '' \+/g,cl=/(__e\(.*?\)|\b__t\)) \+\n'';/g,al=/&(?:amp|lt|gt|quot|#39);/g,Ui=/[&<>"']/g,Mr=RegExp(al.source),Ac=RegExp(Ui.source),of=/<%-([\s\S]+?)%>/g,Ts=/<%([\s\S]+?)%>/g,xs=/<%=([\s\S]+?)%>/g,dl=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,qi=/^\w*$/,qo=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,kr=/[\\^$.*+?()[\]{}|]/g,Fr=RegExp(kr.source),si=/^\s+/,H0=/\s/,b0=/\{(?:\n\/\* \[wrapped with .+\] \*\/)?\n?/,Bt=/\{\n\/\* \[wrapped with (.+)\] \*/,Lu=/,? & /,c0=/[^\x00-\x2f\x3a-\x40\x5b-\x60\x7b-\x7f]+/g,Ru=/[()=,{}\[\]\/\s]/,ks=/\\(\\)?/g,As=/\$\{([^\\}]*(?:\\.[^\\}]*)*)\}/g,uu=/\w*$/,wo=/^[-+]0x[0-9a-f]+$/i,zo=/^0b[01]+$/i,Os=/^\[object .+?Constructor\]$/,Is=/^0o[0-7]+$/i,uf=/^(?:0|[1-9]\d*)$/,_n=/[\xc0-\xd6\xd8-\xf6\xf8-\xff\u0100-\u017f]/g,Nu=/($^)/,Wo=/['\n\r\u2028\u2029\\]/g,su="\\ud800-\\udfff",Ps="\\u0300-\\u036f",pl="\\ufe20-\\ufe2f",Vf="\\u20d0-\\u20ff",hl=Ps+pl+Vf,Bu="\\u2700-\\u27bf",ju="a-z\\xdf-\\xf6\\xf8-\\xff",sf="\\xac\\xb1\\xd7\\xf7",ro="\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf",Ms="\\u2000-\\u206f",ml=" \\t\\x0b\\f\\xa0\\ufeff\\n\\r\\u2028\\u2029\\u1680\\u180e\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200a\\u202f\\u205f\\u3000",Uu="A-Z\\xc0-\\xd6\\xd8-\\xde",G0="\\ufe0e\\ufe0f",Fs=sf+ro+Ms+ml,tt="['\u2019]",zi="["+su+"]",lu="["+Fs+"]",Ho="["+hl+"]",O0="\\d+",vl="["+Bu+"]",gl="["+ju+"]",fu="[^"+su+Fs+O0+Bu+ju+Uu+"]",_l="\\ud83c[\\udffb-\\udfff]",Sn="(?:"+Ho+"|"+_l+")",gt="[^"+su+"]",en="(?:\\ud83c[\\udde6-\\uddff]){2}",I0="[\\ud800-\\udbff][\\udc00-\\udfff]",li="["+Uu+"]",qu="\\u200d",Wi="(?:"+gl+"|"+fu+")",zu="(?:"+li+"|"+fu+")",Wu="(?:"+tt+"(?:d|ll|m|re|s|t|ve))?",Ls="(?:"+tt+"(?:D|LL|M|RE|S|T|VE))?",fi=Sn+"?",e0="["+G0+"]?",io="(?:"+qu+"(?:"+[gt,en,I0].join("|")+")"+e0+fi+")*",D0="\\d*(?:1st|2nd|3rd|(?![123])\\dth)(?=\\b|[A-Z_])",Do="\\d*(?:1ST|2ND|3RD|(?![123])\\dTH)(?=\\b|[a-z_])",i0=e0+fi+io,Rs="(?:"+[vl,en,I0].join("|")+")"+i0,a0="(?:"+[gt+Ho+"?",Ho,en,I0,zi].join("|")+")",Hu=RegExp(tt,"g"),V0=RegExp(Ho,"g"),bu=RegExp(_l+"(?="+_l+")|"+a0+i0,"g"),Ns=RegExp([li+"?"+gl+"+"+Wu+"(?="+[lu,li,"$"].join("|")+")",zu+"+"+Ls+"(?="+[lu,li+Wi,"$"].join("|")+")",li+"?"+Wi+"+"+Wu,li+"+"+Ls,Do,D0,O0,Rs].join("|"),"g"),bo=RegExp("["+qu+su+hl+G0+"]"),P0=/[a-z][A-Z]|[A-Z]{2}[a-z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/,ln=["Array","Buffer","DataView","Date","Error","Float32Array","Float64Array","Function","Int8Array","Int16Array","Int32Array","Map","Math","Object","Promise","RegExp","Set","String","Symbol","TypeError","Uint8Array","Uint8ClampedArray","Uint16Array","Uint32Array","WeakMap","_","clearTimeout","isFinite","parseInt","setTimeout"],lf=-1,nr={};nr[ol]=nr[ul]=nr[Es]=nr[Uo]=nr[sl]=nr[Ss]=nr[Cs]=nr[Ti]=nr[Fu]=!0,nr[at]=nr[it]=nr[iu]=nr[jt]=nr[ou]=nr[hn]=nr[Jt]=nr[Yt]=nr[w]=nr[pt]=nr[Bn]=nr[gr]=nr[r0]=nr[Ci]=nr[Mu]=!1;var rr={};rr[at]=rr[it]=rr[iu]=rr[ou]=rr[jt]=rr[hn]=rr[ol]=rr[ul]=rr[Es]=rr[Uo]=rr[sl]=rr[w]=rr[pt]=rr[Bn]=rr[gr]=rr[r0]=rr[Ci]=rr[yo]=rr[Ss]=rr[Cs]=rr[Ti]=rr[Fu]=!0,rr[Jt]=rr[Yt]=rr[Mu]=!1;var Go={\u00C0:"A",\u00C1:"A",\u00C2:"A",\u00C3:"A",\u00C4:"A",\u00C5:"A",\u00E0:"a",\u00E1:"a",\u00E2:"a",\u00E3:"a",\u00E4:"a",\u00E5:"a",\u00C7:"C",\u00E7:"c",\u00D0:"D",\u00F0:"d",\u00C8:"E",\u00C9:"E",\u00CA:"E",\u00CB:"E",\u00E8:"e",\u00E9:"e",\u00EA:"e",\u00EB:"e",\u00CC:"I",\u00CD:"I",\u00CE:"I",\u00CF:"I",\u00EC:"i",\u00ED:"i",\u00EE:"i",\u00EF:"i",\u00D1:"N",\u00F1:"n",\u00D2:"O",\u00D3:"O",\u00D4:"O",\u00D5:"O",\u00D6:"O",\u00D8:"O",\u00F2:"o",\u00F3:"o",\u00F4:"o",\u00F5:"o",\u00F6:"o",\u00F8:"o",\u00D9:"U",\u00DA:"U",\u00DB:"U",\u00DC:"U",\u00F9:"u",\u00FA:"u",\u00FB:"u",\u00FC:"u",\u00DD:"Y",\u00FD:"y",\u00FF:"y",\u00C6:"Ae",\u00E6:"ae",\u00DE:"Th",\u00FE:"th",\u00DF:"ss",\u0100:"A",\u0102:"A",\u0104:"A",\u0101:"a",\u0103:"a",\u0105:"a",\u0106:"C",\u0108:"C",\u010A:"C",\u010C:"C",\u0107:"c",\u0109:"c",\u010B:"c",\u010D:"c",\u010E:"D",\u0110:"D",\u010F:"d",\u0111:"d",\u0112:"E",\u0114:"E",\u0116:"E",\u0118:"E",\u011A:"E",\u0113:"e",\u0115:"e",\u0117:"e",\u0119:"e",\u011B:"e",\u011C:"G",\u011E:"G",\u0120:"G",\u0122:"G",\u011D:"g",\u011F:"g",\u0121:"g",\u0123:"g",\u0124:"H",\u0126:"H",\u0125:"h",\u0127:"h",\u0128:"I",\u012A:"I",\u012C:"I",\u012E:"I",\u0130:"I",\u0129:"i",\u012B:"i",\u012D:"i",\u012F:"i",\u0131:"i",\u0134:"J",\u0135:"j",\u0136:"K",\u0137:"k",\u0138:"k",\u0139:"L",\u013B:"L",\u013D:"L",\u013F:"L",\u0141:"L",\u013A:"l",\u013C:"l",\u013E:"l",\u0140:"l",\u0142:"l",\u0143:"N",\u0145:"N",\u0147:"N",\u014A:"N",\u0144:"n",\u0146:"n",\u0148:"n",\u014B:"n",\u014C:"O",\u014E:"O",\u0150:"O",\u014D:"o",\u014F:"o",\u0151:"o",\u0154:"R",\u0156:"R",\u0158:"R",\u0155:"r",\u0157:"r",\u0159:"r",\u015A:"S",\u015C:"S",\u015E:"S",\u0160:"S",\u015B:"s",\u015D:"s",\u015F:"s",\u0161:"s",\u0162:"T",\u0164:"T",\u0166:"T",\u0163:"t",\u0165:"t",\u0167:"t",\u0168:"U",\u016A:"U",\u016C:"U",\u016E:"U",\u0170:"U",\u0172:"U",\u0169:"u",\u016B:"u",\u016D:"u",\u016F:"u",\u0171:"u",\u0173:"u",\u0174:"W",\u0175:"w",\u0176:"Y",\u0177:"y",\u0178:"Y",\u0179:"Z",\u017B:"Z",\u017D:"Z",\u017A:"z",\u017C:"z",\u017E:"z",\u0132:"IJ",\u0133:"ij",\u0152:"Oe",\u0153:"oe",\u0149:"'n",\u017F:"s"},Gu={"&":"&","<":"<",">":">",'"':""","'":"'"},yl={"&":"&","<":"<",">":">",""":'"',"'":"'"},cu={"\\":"\\","'":"'","\n":"n","\r":"r","\u2028":"u2028","\u2029":"u2029"},Bs=parseFloat,Vu=parseInt,M0=typeof global=="object"&&global&&global.Object===Object&&global,au=typeof self=="object"&&self&&self.Object===Object&&self,Lr=M0||au||Function("return this")(),F=typeof ga=="object"&&ga&&!ga.nodeType&&ga,R=F&&typeof e2=="object"&&e2&&!e2.nodeType&&e2,U=R&&R.exports===F,H=U&&M0.process,fe=function(){try{var ae=R&&R.require&&R.require("util").types;return ae||H&&H.binding&&H.binding("util")}catch(Be){}}(),ue=fe&&fe.isArrayBuffer,de=fe&&fe.isDate,W=fe&&fe.isMap,ve=fe&&fe.isRegExp,Fe=fe&&fe.isSet,Ge=fe&&fe.isTypedArray;function K(ae,Be,Ie){switch(Ie.length){case 0:return ae.call(Be);case 1:return ae.call(Be,Ie[0]);case 2:return ae.call(Be,Ie[0],Ie[1]);case 3:return ae.call(Be,Ie[0],Ie[1],Ie[2])}return ae.apply(Be,Ie)}function xe(ae,Be,Ie,ht){for(var mt=-1,wn=ae==null?0:ae.length;++mt-1}function wt(ae,Be,Ie){for(var ht=-1,mt=ae==null?0:ae.length;++ht-1;);return Ie}function js(ae,Be){for(var Ie=ae.length;Ie--&&Qe(Be,ae[Ie],0)>-1;);return Ie}function Dl(ae,Be){for(var Ie=ae.length,ht=0;Ie--;)ae[Ie]===Be&&++ht;return ht}var du=Cn(Go),Yu=Cn(Gu);function Us(ae){return"\\"+cu[ae]}function oo(ae,Be){return ae==null?i:ae[Be]}function Hi(ae){return bo.test(ae)}function qs(ae){return P0.test(ae)}function F0(ae){for(var Be,Ie=[];!(Be=ae.next()).done;)Ie.push(Be.value);return Ie}function Gr(ae){var Be=-1,Ie=Array(ae.size);return ae.forEach(function(ht,mt){Ie[++Be]=[mt,ht]}),Ie}function ir(ae,Be){return function(Ie){return ae(Be(Ie))}}function L0(ae,Be){for(var Ie=-1,ht=ae.length,mt=0,wn=[];++Ie-1}function Ju(a,p){var E=this.__data__,I=hf(E,a);return I<0?(++this.size,E.push([a,p])):E[I][1]=p,this}Z0.prototype.clear=df,Z0.prototype.delete=Ba,Z0.prototype.get=Oc,Z0.prototype.has=mu,Z0.prototype.set=Ju;function ei(a){var p=-1,E=a==null?0:a.length;for(this.clear();++p=p?a:p)),a}function vi(a,p,E,I,B,G){var te,se=p&D,Ee=p&L,$e=p&N;if(E&&(te=B?E(a,I,B,G):E(a)),te!==i)return te;if(!Jr(a))return a;var Ke=On(a);if(Ke){if(te=f1(a),!se)return Xr(a,te)}else{var nt=U0(a),Ct=nt==Yt||nt==cr;if(Eu(a))return Od(a,se);if(nt==Bn||nt==at||Ct&&!B){if(te=Ee||Ct?{}:zd(a),!se)return Ee?Zu(a,Wa(te,a)):j0(a,mf(te,a))}else{if(!rr[nt])return B?a:{};te=Wd(a,nt,se)}}G||(G=new co);var Gt=G.get(a);if(Gt)return Gt;G.set(a,te),kp(a)?a.forEach(function(dn){te.add(vi(dn,p,E,dn,a,G))}):Tp(a)&&a.forEach(function(dn,Yn){te.set(Yn,vi(dn,p,E,Yn,a,G))});var an=$e?Ee?Dn:r1:Ee?Yi:q0,qn=Ke?i:an(a);return je(qn||a,function(dn,Yn){qn&&(Yn=dn,dn=a[Yn]),xl(te,Yn,vi(dn,p,E,Yn,a,G))}),te}function Xf(a){var p=q0(a);return function(E){return Rc(E,a,p)}}function Rc(a,p,E){var I=E.length;if(a==null)return!I;for(a=$t(a);I--;){var B=E[I],G=p[B],te=a[B];if(te===i&&!(B in a)||!G(te))return!1}return!0}function Jf(a,p,E){if(typeof a!="function")throw new Yr(g);return wf(function(){a.apply(i,E)},p)}function ao(a,p,E,I){var B=-1,G=xt,te=!0,se=a.length,Ee=[],$e=p.length;if(!se)return Ee;E&&(p=lt(p,qr(E))),I?(G=wt,te=!1):p.length>=f&&(G=So,te=!1,p=new vu(p));e:for(;++BB?0:B+E),I=I===i||I>B?B:jn(I),I<0&&(I+=B),I=E>I?0:Ip(I);E0&&E(se)?p>1?k0(se,p-1,E,I,B):Rt(B,se):I||(B[B.length]=se)}return B}var v=ec(),m=ec(!0);function S(a,p){return a&&v(a,p,q0)}function O(a,p){return a&&m(a,p,q0)}function M(a,p){return st(p,function(E){return rs(a[E])})}function b(a,p){p=Gs(p,a);for(var E=0,I=p.length;a!=null&&Ep}function ut(a,p){return a!=null&&or.call(a,p)}function In(a,p){return a!=null&&p in $t(a)}function A0(a,p,E){return a>=kn(p,E)&&a=120&&Ke.length>=120)?new vu(te&&Ke):i}Ke=a[0];var nt=-1,Ct=se[0];e:for(;++nt-1;)se!==a&&C0.call(se,Ee,1),C0.call(a,Ee,1);return a}function jc(a,p){for(var E=a?p.length:0,I=E-1;E--;){var B=p[E];if(E==I||B!==G){var G=B;es(B)?C0.call(a,B,1):$a(a,B)}}return a}function Ga(a,p){return a+hu(Ai()*(p-a+1))}function Lm(a,p,E,I){for(var B=-1,G=wr(B0((p-a)/(E||1)),0),te=Ie(G);G--;)te[I?G:++B]=a,a+=E;return te}function Va(a,p){var E="";if(!a||p<1||p>Nt)return E;do p%2&&(E+=a),p=hu(p/2),p&&(a+=a);while(p);return E}function Wn(a,p){return m1(Gd(a,p,$i),a+"")}function wd(a){return Fc(Ef(a))}function Dd(a,p){var E=Ef(a);return Yc(E,mi(p,0,E.length))}function Ol(a,p,E,I){if(!Jr(a))return a;p=Gs(p,a);for(var B=-1,G=p.length,te=G-1,se=a;se!=null&&++BB?0:B+p),E=E>B?B:E,E<0&&(E+=B),B=p>E?0:E-p>>>0,p>>>=0;for(var G=Ie(B);++I>>1,te=a[G];te!==null&&!mo(te)&&(E?te<=p:te=f){var $e=p?null:bm(a);if($e)return Y0($e);te=!1,B=So,Ee=new vu}else Ee=p?[]:se;e:for(;++I=I?a:Oo(a,p,E)}var Ad=pu||function(a){return Lr.clearTimeout(a)};function Od(a,p){if(p)return a.slice();var E=a.length,I=Nr?Nr(E):new a.constructor(E);return a.copy(I),I}function Qa(a){var p=new a.constructor(a.byteLength);return new R0(p).set(new R0(a)),p}function jm(a,p){var E=p?Qa(a.buffer):a.buffer;return new a.constructor(E,a.byteOffset,a.byteLength)}function Um(a){var p=new a.constructor(a.source,uu.exec(a));return p.lastIndex=a.lastIndex,p}function qm(a){return Wr?$t(Wr.call(a)):{}}function Id(a,p){var E=p?Qa(a.buffer):a.buffer;return new a.constructor(E,a.byteOffset,a.length)}function Pd(a,p){if(a!==p){var E=a!==i,I=a===null,B=a===a,G=mo(a),te=p!==i,se=p===null,Ee=p===p,$e=mo(p);if(!se&&!$e&&!G&&a>p||G&&te&&Ee&&!se&&!$e||I&&te&&Ee||!E&&Ee||!B)return 1;if(!I&&!G&&!$e&&a=se)return Ee;var $e=E[I];return Ee*($e=="desc"?-1:1)}}return a.index-p.index}function gf(a,p,E,I){for(var B=-1,G=a.length,te=E.length,se=-1,Ee=p.length,$e=wr(G-te,0),Ke=Ie(Ee+$e),nt=!I;++se1?E[B-1]:i,te=B>2?E[2]:i;for(G=a.length>3&&typeof G=="function"?(B--,G):i,te&&Ii(E[0],E[1],te)&&(G=B<3?i:G,B=1),p=$t(p);++I-1?B[G?p[te]:te]:i}}function Rd(a){return yu(function(p){var E=p.length,I=E,B=Qn.prototype.thru;for(a&&p.reverse();I--;){var G=p[I];if(typeof G!="function")throw new Yr(g);if(B&&!te&&Gc(G)=="wrapper")var te=new Qn([],!0)}for(I=te?I:E;++I1&&er.reverse(),Ke&&Eese))return!1;var $e=G.get(a),Ke=G.get(p);if($e&&Ke)return $e==p&&Ke==a;var nt=-1,Ct=!0,Gt=E&$?new vu:i;for(G.set(a,p),G.set(p,a);++nt1?"& ":"")+p[I],p=p.join(E>2?", ":" "),a.replace(b0,`{ +/* [wrapped with `+p+`] */ +`)}function Xm(a){return On(a)||Ll(a)||!!(di&&a&&a[di])}function es(a,p){var E=typeof a;return p=p==null?Nt:p,!!p&&(E=="number"||E!="symbol"&&uf.test(a))&&a>-1&&a%1==0&&a0){if(++p>=ot)return arguments[0]}else p=0;return a.apply(i,arguments)}}function Yc(a,p){var E=-1,I=a.length,B=I-1;for(p=p===i?I:p;++E1?a[p-1]:i;return E=typeof E=="function"?(a.pop(),E):i,sp(a,E)});function fp(a){var p=z(a);return p.__chain__=!0,p}function cp(a,p){return p(a),a}function Kc(a,p){return p(a)}var Wv=yu(function(a){var p=a.length,E=p?a[0]:0,I=this.__wrapped__,B=function(G){return Hs(G,a)};return p>1||this.__actions__.length||!(I instanceof nn)||!es(E)?this.thru(B):(I=I.slice(E,+E+(p?1:0)),I.__actions__.push({func:Kc,args:[B],thisArg:i}),new Qn(I,this.__chain__).thru(function(G){return p&&!G.length&&G.push(i),G}))});function Hv(){return fp(this)}function bv(){return new Qn(this.value(),this.__chain__)}function Gv(){this.__values__===i&&(this.__values__=Op(this.value()));var a=this.__index__>=this.__values__.length,p=a?i:this.__values__[this.__index__++];return{done:a,value:p}}function Vv(){return this}function Yv(a){for(var p,E=this;E instanceof Or;){var I=Jd(E);I.__index__=0,I.__values__=i,p?B.__wrapped__=I:p=I;var B=I;E=E.__wrapped__}return B.__wrapped__=a,p}function Ml(){var a=this.__wrapped__;if(a instanceof nn){var p=a;return this.__actions__.length&&(p=new nn(this)),p=p.reverse(),p.__actions__.push({func:Kc,args:[g1],thisArg:i}),new Qn(p,this.__chain__)}return this.thru(g1)}function Fl(){return xd(this.__wrapped__,this.__actions__)}var Xc=_f(function(a,p,E){or.call(a,E)?++a[E]:ti(a,E,1)});function $v(a,p,E){var I=On(a)?rt:Nc;return E&&Ii(a,p,E)&&(p=i),I(a,cn(p,3))}function Kv(a,p){var E=On(a)?st:Qf;return E(a,cn(p,3))}var Xv=Ld(Qd),D1=Ld($c);function Jv(a,p){return k0(Jc(a,p),1)}function Qv(a,p){return k0(Jc(a,p),Ot)}function ap(a,p,E){return E=E===i?1:jn(E),k0(Jc(a,p),E)}function dp(a,p){var E=On(a)?je:$o;return E(a,cn(p,3))}function pp(a,p){var E=On(a)?Xe:kl;return E(a,cn(p,3))}var Zv=_f(function(a,p,E){or.call(a,E)?a[E].push(p):ti(a,E,[p])});function eg(a,p,E,I){a=Vi(a)?a:Ef(a),E=E&&!I?jn(E):0;var B=a.length;return E<0&&(E=wr(B+E,0)),ia(a)?E<=B&&a.indexOf(p,E)>-1:!!B&&Qe(a,p,E)>-1}var tg=Wn(function(a,p,E){var I=-1,B=typeof p=="function",G=Vi(a)?Ie(a.length):[];return $o(a,function(te){G[++I]=B?K(p,te,E):po(te,p,E)}),G}),hp=_f(function(a,p,E){ti(a,E,p)});function Jc(a,p){var E=On(a)?lt:vd;return E(a,cn(p,3))}function ng(a,p,E,I){return a==null?[]:(On(p)||(p=p==null?[]:[p]),E=I?i:E,On(E)||(E=E==null?[]:[E]),Oi(a,p,E))}var rg=_f(function(a,p,E){a[E?0:1].push(p)},function(){return[[],[]]});function mp(a,p,E){var I=On(a)?yn:bn,B=arguments.length<3;return I(a,cn(p,4),E,B,$o)}function ig(a,p,E){var I=On(a)?sn:bn,B=arguments.length<3;return I(a,cn(p,4),E,B,kl)}function og(a,p){var E=On(a)?st:Qf;return E(a,Zc(cn(p,3)))}function ug(a){var p=On(a)?Fc:wd;return p(a)}function sg(a,p,E){(E?Ii(a,p,E):p===i)?p=1:p=jn(p);var I=On(a)?Lc:Dd;return I(a,p)}function lg(a){var p=On(a)?Kf:Ao;return p(a)}function E1(a){if(a==null)return 0;if(Vi(a))return ia(a)?Rr(a):a.length;var p=U0(a);return p==w||p==r0?a.size:Zf(a).length}function fg(a,p,E){var I=On(a)?ar:Nm;return E&&Ii(a,p,E)&&(p=i),I(a,cn(p,3))}var cg=Wn(function(a,p){if(a==null)return[];var E=p.length;return E>1&&Ii(a,p[0],p[1])?p=[]:E>2&&Ii(p[0],p[1],p[2])&&(p=[p[0]]),Oi(a,k0(p,1),[])}),rc=Sl||function(){return Lr.Date.now()};function ag(a,p){if(typeof p!="function")throw new Yr(g);return a=jn(a),function(){if(--a<1)return p.apply(this,arguments)}}function vp(a,p,E){return p=E?i:p,p=a&&p==null?a.length:p,Lt(a,De,i,i,i,i,p)}function gp(a,p){var E;if(typeof p!="function")throw new Yr(g);return a=jn(a),function(){return--a>0&&(E=p.apply(this,arguments)),a<=1&&(p=i),E}}var S1=Wn(function(a,p,E){var I=h;if(E.length){var B=L0(E,An(S1));I|=Se}return Lt(a,I,p,E,B)}),_p=Wn(function(a,p,E){var I=h|re;if(E.length){var B=L0(E,An(_p));I|=Se}return Lt(p,I,a,E,B)});function C1(a,p,E){p=E?i:p;var I=Lt(a,Q,i,i,i,i,i,p);return I.placeholder=C1.placeholder,I}function yp(a,p,E){p=E?i:p;var I=Lt(a,oe,i,i,i,i,i,p);return I.placeholder=yp.placeholder,I}function wp(a,p,E){var I,B,G,te,se,Ee,$e=0,Ke=!1,nt=!1,Ct=!0;if(typeof a!="function")throw new Yr(g);p=Fo(p)||0,Jr(E)&&(Ke=!!E.leading,nt="maxWait"in E,G=nt?wr(Fo(E.maxWait)||0,p):G,Ct="trailing"in E?!!E.trailing:Ct);function Gt(f0){var Jo=I,Su=B;return I=B=i,$e=f0,te=a.apply(Su,Jo),te}function an(f0){return $e=f0,se=wf(Yn,p),Ke?Gt(f0):te}function qn(f0){var Jo=f0-Ee,Su=f0-$e,Zp=p-Jo;return nt?kn(Zp,G-Su):Zp}function dn(f0){var Jo=f0-Ee,Su=f0-$e;return Ee===i||Jo>=p||Jo<0||nt&&Su>=G}function Yn(){var f0=rc();if(dn(f0))return er(f0);se=wf(Yn,qn(f0))}function er(f0){return se=i,Ct&&I?Gt(f0):(I=B=i,te)}function vo(){se!==i&&Ad(se),$e=0,I=Ee=B=se=i}function Pi(){return se===i?te:er(rc())}function Mi(){var f0=rc(),Jo=dn(f0);if(I=arguments,B=this,Ee=f0,Jo){if(se===i)return an(Ee);if(nt)return Ad(se),se=wf(Yn,p),Gt(Ee)}return se===i&&(se=wf(Yn,p)),te}return Mi.cancel=vo,Mi.flush=Pi,Mi}var dg=Wn(function(a,p){return Jf(a,1,p)}),Dp=Wn(function(a,p,E){return Jf(a,Fo(p)||0,E)});function pg(a){return Lt(a,Te)}function Qc(a,p){if(typeof a!="function"||p!=null&&typeof p!="function")throw new Yr(g);var E=function(){var I=arguments,B=p?p.apply(this,I):I[0],G=E.cache;if(G.has(B))return G.get(B);var te=a.apply(this,I);return E.cache=G.set(B,te)||G,te};return E.cache=new(Qc.Cache||ei),E}Qc.Cache=ei;function Zc(a){if(typeof a!="function")throw new Yr(g);return function(){var p=arguments;switch(p.length){case 0:return!a.call(this);case 1:return!a.call(this,p[0]);case 2:return!a.call(this,p[0],p[1]);case 3:return!a.call(this,p[0],p[1],p[2])}return!a.apply(this,p)}}function ea(a){return gp(2,a)}var hg=Bm(function(a,p){p=p.length==1&&On(p[0])?lt(p[0],qr(cn())):lt(k0(p,1),qr(cn()));var E=p.length;return Wn(function(I){for(var B=-1,G=kn(I.length,E);++B=p}),Ll=_i(function(){return arguments}())?_i:function(a){return n0(a)&&or.call(a,"callee")&&!N0.call(a,"callee")},On=Ie.isArray,x1=ue?qr(ue):Re;function Vi(a){return a!=null&&na(a.length)&&!rs(a)}function l0(a){return n0(a)&&Vi(a)}function kg(a){return a===!0||a===!1||n0(a)&&Ye(a)==jt}var Eu=pi||W1,Ag=de?qr(de):Ce;function Og(a){return n0(a)&&a.nodeType===1&&!ic(a)}function Cp(a){if(a==null)return!0;if(Vi(a)&&(On(a)||typeof a=="string"||typeof a.splice=="function"||Eu(a)||Df(a)||Ll(a)))return!a.length;var p=U0(a);if(p==w||p==r0)return!a.size;if(nc(a))return!Zf(a).length;for(var E in a)if(or.call(a,E))return!1;return!0}function Ig(a,p){return ze(a,p)}function Pg(a,p,E){E=typeof E=="function"?E:i;var I=E?E(a,p):i;return I===i?ze(a,p,i,E):!!I}function k1(a){if(!n0(a))return!1;var p=Ye(a);return p==Jt||p==Un||typeof a.message=="string"&&typeof a.name=="string"&&!ic(a)}function Mg(a){return typeof a=="number"&&Br(a)}function rs(a){if(!Jr(a))return!1;var p=Ye(a);return p==Yt||p==cr||p==Ft||p==vr}function A1(a){return typeof a=="number"&&a==jn(a)}function na(a){return typeof a=="number"&&a>-1&&a%1==0&&a<=Nt}function Jr(a){var p=typeof a;return a!=null&&(p=="object"||p=="function")}function n0(a){return a!=null&&typeof a=="object"}var Tp=W?qr(W):on;function Fg(a,p){return a===p||sr(a,p,Nn(p))}function Lg(a,p,E){return E=typeof E=="function"?E:i,sr(a,p,Nn(p),E)}function Rg(a){return xp(a)&&a!=+a}function Ng(a){if(Zm(a))throw new mt(c);return mn(a)}function Bg(a){return a===null}function O1(a){return a==null}function xp(a){return typeof a=="number"||n0(a)&&Ye(a)==pt}function ic(a){if(!n0(a)||Ye(a)!=Bn)return!1;var p=uo(a);if(p===null)return!0;var E=or.call(p,"constructor")&&p.constructor;return typeof E=="function"&&E instanceof E&&bi.call(E)==af}var ra=ve?qr(ve):pr;function jg(a){return A1(a)&&a>=-Nt&&a<=Nt}var kp=Fe?qr(Fe):Hr;function ia(a){return typeof a=="string"||!On(a)&&n0(a)&&Ye(a)==Ci}function mo(a){return typeof a=="symbol"||n0(a)&&Ye(a)==yo}var Df=Ge?qr(Ge):Vn;function Ap(a){return a===i}function Ug(a){return n0(a)&&U0(a)==Mu}function qg(a){return n0(a)&&Ye(a)==Gf}var zg=bc(Ha),Wg=bc(function(a,p){return a<=p});function Op(a){if(!a)return[];if(Vi(a))return ia(a)?Jn(a):Xr(a);if(u0&&a[u0])return F0(a[u0]());var p=U0(a),E=p==w?Gr:p==r0?Y0:Ef;return E(a)}function is(a){if(!a)return a===0?a:0;if(a=Fo(a),a===Ot||a===-Ot){var p=a<0?-1:1;return p*Je}return a===a?a:0}function jn(a){var p=is(a),E=p%1;return p===p?E?p-E:p:0}function Ip(a){return a?mi(jn(a),0,ne):0}function Fo(a){if(typeof a=="number")return a;if(mo(a))return V;if(Jr(a)){var p=typeof a.valueOf=="function"?a.valueOf():a;a=Jr(p)?p+"":p}if(typeof a!="string")return a===0?a:+a;a=E0(a);var E=zo.test(a);return E||Is.test(a)?Vu(a.slice(2),E?2:8):wo.test(a)?V:+a}function oa(a){return yi(a,Yi(a))}function Hg(a){return a?mi(jn(a),-Nt,Nt):a===0?a:0}function yr(a){return a==null?"":ho(a)}var Pp=Io(function(a,p){if(nc(p)||Vi(p)){yi(p,q0(p),a);return}for(var E in p)or.call(p,E)&&xl(a,E,p[E])}),Mp=Io(function(a,p){yi(p,Yi(p),a)}),ua=Io(function(a,p,E,I){yi(p,Yi(p),a,I)}),bg=Io(function(a,p,E,I){yi(p,q0(p),a,I)}),Gg=yu(Hs);function Vg(a,p){var E=dr(a);return p==null?E:mf(E,p)}var Fp=Wn(function(a,p){a=$t(a);var E=-1,I=p.length,B=I>2?p[2]:i;for(B&&Ii(p[0],p[1],B)&&(I=1);++E1),G}),yi(a,Dn(a),E),I&&(E=vi(E,D|L|N,Gm));for(var B=p.length;B--;)$a(E,p[B]);return E});function l_(a,p){return Bp(a,Zc(cn(p)))}var f_=yu(function(a,p){return a==null?{}:Fm(a,p)});function Bp(a,p){if(a==null)return{};var E=lt(Dn(a),function(I){return[I]});return p=cn(p),yd(a,E,function(I,B){return p(I,B[0])})}function c_(a,p,E){p=Gs(p,a);var I=-1,B=p.length;for(B||(B=1,a=i);++Ip){var I=a;a=p,p=I}if(E||a%1||p%1){var B=Ai();return kn(a+B*(p-a+Bs("1e-"+((B+"").length-1))),p)}return Ga(a,p)}var __=yf(function(a,p,E){return p=p.toLowerCase(),a+(E?Wp(p):p)});function Wp(a){return L1(yr(a).toLowerCase())}function Hp(a){return a=yr(a),a&&a.replace(_n,du).replace(V0,"")}function y_(a,p,E){a=yr(a),p=ho(p);var I=a.length;E=E===i?I:mi(jn(E),0,I);var B=E;return E-=p.length,E>=0&&a.slice(E,B)==p}function M1(a){return a=yr(a),a&&Ac.test(a)?a.replace(Ui,Yu):a}function w_(a){return a=yr(a),a&&Fr.test(a)?a.replace(kr,"\\$&"):a}var D_=yf(function(a,p,E){return a+(E?"-":"")+p.toLowerCase()}),bp=yf(function(a,p,E){return a+(E?" ":"")+p.toLowerCase()}),E_=Fd("toLowerCase");function S_(a,p,E){a=yr(a),p=jn(p);var I=p?Rr(a):0;if(!p||I>=p)return a;var B=(p-I)/2;return Hc(hu(B),E)+a+Hc(B0(B),E)}function C_(a,p,E){a=yr(a),p=jn(p);var I=p?Rr(a):0;return p&&I>>0,E?(a=yr(a),a&&(typeof p=="string"||p!=null&&!ra(p))&&(p=ho(p),!p&&Hi(a))?Vs(Jn(a),0,E):a.split(p,E)):[]}var I_=yf(function(a,p,E){return a+(E?" ":"")+L1(p)});function P_(a,p,E){return a=yr(a),E=E==null?0:mi(jn(E),0,a.length),p=ho(p),a.slice(E,E+p.length)==p}function M_(a,p,E){var I=z.templateSettings;E&&Ii(a,p,E)&&(p=i),a=yr(a),p=ua({},p,I,n1);var B=ua({},p.imports,I.imports,n1),G=q0(B),te=Eo(B,G),se,Ee,$e=0,Ke=p.interpolate||Nu,nt="__p += '",Ct=X0((p.escape||Nu).source+"|"+Ke.source+"|"+(Ke===xs?As:Nu).source+"|"+(p.evaluate||Nu).source+"|$","g"),Gt="//# sourceURL="+(or.call(p,"sourceURL")?(p.sourceURL+"").replace(/\s/g," "):"lodash.templateSources["+ ++lf+"]")+` +`;a.replace(Ct,function(dn,Yn,er,vo,Pi,Mi){return er||(er=vo),nt+=a.slice($e,Mi).replace(Wo,Us),Yn&&(se=!0,nt+=`' + +__e(`+Yn+`) + +'`),Pi&&(Ee=!0,nt+=`'; +`+Pi+`; +__p += '`),er&&(nt+=`' + +((__t = (`+er+`)) == null ? '' : __t) + +'`),$e=Mi+dn.length,dn}),nt+=`'; +`;var an=or.call(p,"variable")&&p.variable;if(!an)nt=`with (obj) { +`+nt+` +} +`;else if(Ru.test(an))throw new mt(t);nt=(Ee?nt.replace(ll,""):nt).replace(fl,"$1").replace(cl,"$1;"),nt="function("+(an||"obj")+`) { +`+(an?"":`obj || (obj = {}); +`)+"var __t, __p = ''"+(se?", __e = _.escape":"")+(Ee?`, __j = Array.prototype.join; +function print() { __p += __j.call(arguments, '') } +`:`; +`)+nt+`return __p +}`;var qn=$p(function(){return wn(G,Gt+"return "+nt).apply(i,te)});if(qn.source=nt,k1(qn))throw qn;return qn}function F_(a){return yr(a).toLowerCase()}function L_(a){return yr(a).toUpperCase()}function R_(a,p,E){if(a=yr(a),a&&(E||p===i))return E0(a);if(!a||!(p=ho(p)))return a;var I=Jn(a),B=Jn(p),G=wl(I,B),te=js(I,B)+1;return Vs(I,G,te).join("")}function F1(a,p,E){if(a=yr(a),a&&(E||p===i))return a.slice(0,ai(a)+1);if(!a||!(p=ho(p)))return a;var I=Jn(a),B=js(I,Jn(p))+1;return Vs(I,0,B).join("")}function N_(a,p,E){if(a=yr(a),a&&(E||p===i))return a.replace(si,"");if(!a||!(p=ho(p)))return a;var I=Jn(a),B=wl(I,Jn(p));return Vs(I,B).join("")}function B_(a,p){var E=Oe,I=Le;if(Jr(p)){var B="separator"in p?p.separator:B;E="length"in p?jn(p.length):E,I="omission"in p?ho(p.omission):I}a=yr(a);var G=a.length;if(Hi(a)){var te=Jn(a);G=te.length}if(E>=G)return a;var se=E-Rr(I);if(se<1)return I;var Ee=te?Vs(te,0,se).join(""):a.slice(0,se);if(B===i)return Ee+I;if(te&&(se+=Ee.length-se),ra(B)){if(a.slice(se).search(B)){var $e,Ke=Ee;for(B.global||(B=X0(B.source,yr(uu.exec(B))+"g")),B.lastIndex=0;$e=B.exec(Ke);)var nt=$e.index;Ee=Ee.slice(0,nt===i?se:nt)}}else if(a.indexOf(ho(B),se)!=se){var Ct=Ee.lastIndexOf(B);Ct>-1&&(Ee=Ee.slice(0,Ct))}return Ee+I}function Vp(a){return a=yr(a),a&&Mr.test(a)?a.replace(al,o0):a}var j_=yf(function(a,p,E){return a+(E?" ":"")+p.toUpperCase()}),L1=Fd("toUpperCase");function Yp(a,p,E){return a=yr(a),p=E?i:p,p===i?qs(a)?cf(a):d0(a):a.match(p)||[]}var $p=Wn(function(a,p){try{return K(a,i,p)}catch(E){return k1(E)?E:new mt(E)}}),U_=yu(function(a,p){return je(p,function(E){E=Xo(E),ti(a,E,S1(a[E],a))}),a});function Kp(a){var p=a==null?0:a.length,E=cn();return a=p?lt(a,function(I){if(typeof I[1]!="function")throw new Yr(g);return[E(I[0]),I[1]]}):[],Wn(function(I){for(var B=-1;++BNt)return[];var E=ne,I=kn(a,ne);p=cn(p),a-=ne;for(var B=ci(I,p);++E0||p<0)?new nn(E):(a<0?E=E.takeRight(-a):a&&(E=E.drop(a)),p!==i&&(p=jn(p),E=p<0?E.dropRight(-p):E.take(p-a)),E)},nn.prototype.takeRightWhile=function(a){return this.reverse().takeWhile(a).reverse()},nn.prototype.toArray=function(){return this.take(ne)},S(nn.prototype,function(a,p){var E=/^(?:filter|find|map|reject)|While$/.test(p),I=/^(?:head|last)$/.test(p),B=z[I?"take"+(p=="last"?"Right":""):p],G=I||/^find/.test(p);!B||(z.prototype[p]=function(){var te=this.__wrapped__,se=I?[1]:arguments,Ee=te instanceof nn,$e=se[0],Ke=Ee||On(te),nt=function(Yn){var er=B.apply(z,Rt([Yn],se));return I&&Ct?er[0]:er};Ke&&E&&typeof $e=="function"&&$e.length!=1&&(Ee=Ke=!1);var Ct=this.__chain__,Gt=!!this.__actions__.length,an=G&&!Ct,qn=Ee&&!Gt;if(!G&&Ke){te=qn?te:new nn(this);var dn=a.apply(te,se);return dn.__actions__.push({func:Kc,args:[nt],thisArg:i}),new Qn(dn,Ct)}return an&&qn?a.apply(this,se):(dn=this.thru(nt),an?I?dn.value()[0]:dn.value():dn)})}),je(["pop","push","shift","sort","splice","unshift"],function(a){var p=$r[a],E=/^(?:push|sort|unshift)$/.test(a)?"tap":"thru",I=/^(?:pop|shift)$/.test(a);z.prototype[a]=function(){var B=arguments;if(I&&!this.__chain__){var G=this.value();return p.apply(On(G)?G:[],B)}return this[E](function(te){return p.apply(On(te)?te:[],B)})}}),S(nn.prototype,function(a,p){var E=z[p];if(E){var I=E.name+"";or.call(bt,I)||(bt[I]=[]),bt[I].push({name:p,func:E})}}),bt[zc(i,re).name]=[{name:"wrapper",func:i}],nn.prototype.clone=s0,nn.prototype.reverse=t0,nn.prototype.value=g0,z.prototype.at=Wv,z.prototype.chain=Hv,z.prototype.commit=bv,z.prototype.next=Gv,z.prototype.plant=Yv,z.prototype.reverse=Ml,z.prototype.toJSON=z.prototype.valueOf=z.prototype.value=Fl,z.prototype.first=z.prototype.head,u0&&(z.prototype[u0]=Vv),z},K0=$0();typeof define=="function"&&typeof define.amd=="object"&&define.amd?(Lr._=K0,define(function(){return K0})):R?((R.exports=K0)._=K0,F._=K0):Lr._=K0}).call(ga)});var ay=Me((XH,cy)=>{"use strict";var fr=cy.exports;cy.exports.default=fr;var Pr="[",t2="]",ya="\x07",vh=";",OD=process.env.TERM_PROGRAM==="Apple_Terminal";fr.cursorTo=(i,u)=>{if(typeof i!="number")throw new TypeError("The `x` argument is required");return typeof u!="number"?Pr+(i+1)+"G":Pr+(u+1)+";"+(i+1)+"H"};fr.cursorMove=(i,u)=>{if(typeof i!="number")throw new TypeError("The `x` argument is required");let f="";return i<0?f+=Pr+-i+"D":i>0&&(f+=Pr+i+"C"),u<0?f+=Pr+-u+"A":u>0&&(f+=Pr+u+"B"),f};fr.cursorUp=(i=1)=>Pr+i+"A";fr.cursorDown=(i=1)=>Pr+i+"B";fr.cursorForward=(i=1)=>Pr+i+"C";fr.cursorBackward=(i=1)=>Pr+i+"D";fr.cursorLeft=Pr+"G";fr.cursorSavePosition=OD?"7":Pr+"s";fr.cursorRestorePosition=OD?"8":Pr+"u";fr.cursorGetPosition=Pr+"6n";fr.cursorNextLine=Pr+"E";fr.cursorPrevLine=Pr+"F";fr.cursorHide=Pr+"?25l";fr.cursorShow=Pr+"?25h";fr.eraseLines=i=>{let u="";for(let f=0;f[t2,"8",vh,vh,u,ya,i,t2,"8",vh,vh,ya].join("");fr.image=(i,u={})=>{let f=`${t2}1337;File=inline=1`;return u.width&&(f+=`;width=${u.width}`),u.height&&(f+=`;height=${u.height}`),u.preserveAspectRatio===!1&&(f+=";preserveAspectRatio=0"),f+":"+i.toString("base64")+ya};fr.iTerm={setCwd:(i=process.cwd())=>`${t2}50;CurrentDir=${i}${ya}`,annotation:(i,u={})=>{let f=`${t2}1337;`,c=typeof u.x!="undefined",g=typeof u.y!="undefined";if((c||g)&&!(c&&g&&typeof u.length!="undefined"))throw new Error("`x`, `y` and `length` must be defined when `x` or `y` is defined");return i=i.replace(/\|/g,""),f+=u.isHidden?"AddHiddenAnnotation=":"AddAnnotation=",u.length>0?f+=(c?[i,u.length,u.x,u.y]:[u.length,i]).join("|"):f+=i,f+ya}}});var PD=Me((JH,dy)=>{"use strict";var ID=(i,u)=>{for(let f of Reflect.ownKeys(u))Object.defineProperty(i,f,Object.getOwnPropertyDescriptor(u,f));return i};dy.exports=ID;dy.exports.default=ID});var FD=Me((QH,gh)=>{"use strict";var oN=PD(),_h=new WeakMap,MD=(i,u={})=>{if(typeof i!="function")throw new TypeError("Expected a function");let f,c=!1,g=0,t=i.displayName||i.name||"",C=function(...A){if(_h.set(C,++g),c){if(u.throw===!0)throw new Error(`Function \`${t}\` can only be called once`);return f}return c=!0,f=i.apply(this,A),i=null,f};return oN(C,i),_h.set(C,g),C};gh.exports=MD;gh.exports.default=MD;gh.exports.callCount=i=>{if(!_h.has(i))throw new Error(`The given function \`${i.name}\` is not wrapped by the \`onetime\` package`);return _h.get(i)}});var LD=Me((ZH,yh)=>{yh.exports=["SIGABRT","SIGALRM","SIGHUP","SIGINT","SIGTERM"];process.platform!=="win32"&&yh.exports.push("SIGVTALRM","SIGXCPU","SIGXFSZ","SIGUSR2","SIGTRAP","SIGSYS","SIGQUIT","SIGIOT");process.platform==="linux"&&yh.exports.push("SIGIO","SIGPOLL","SIGPWR","SIGSTKFLT","SIGUNUSED")});var vy=Me((eb,n2)=>{var uN=require("assert"),r2=LD(),sN=/^win/i.test(process.platform),wh=require("events");typeof wh!="function"&&(wh=wh.EventEmitter);var Bi;process.__signal_exit_emitter__?Bi=process.__signal_exit_emitter__:(Bi=process.__signal_exit_emitter__=new wh,Bi.count=0,Bi.emitted={});Bi.infinite||(Bi.setMaxListeners(Infinity),Bi.infinite=!0);n2.exports=function(i,u){uN.equal(typeof i,"function","a callback must be provided for exit handler"),i2===!1&&RD();var f="exit";u&&u.alwaysLast&&(f="afterexit");var c=function(){Bi.removeListener(f,i),Bi.listeners("exit").length===0&&Bi.listeners("afterexit").length===0&&py()};return Bi.on(f,i),c};n2.exports.unload=py;function py(){!i2||(i2=!1,r2.forEach(function(i){try{process.removeListener(i,hy[i])}catch(u){}}),process.emit=my,process.reallyExit=ND,Bi.count-=1)}function wa(i,u,f){Bi.emitted[i]||(Bi.emitted[i]=!0,Bi.emit(i,u,f))}var hy={};r2.forEach(function(i){hy[i]=function(){var f=process.listeners(i);f.length===Bi.count&&(py(),wa("exit",null,i),wa("afterexit",null,i),sN&&i==="SIGHUP"&&(i="SIGINT"),process.kill(process.pid,i))}});n2.exports.signals=function(){return r2};n2.exports.load=RD;var i2=!1;function RD(){i2||(i2=!0,Bi.count+=1,r2=r2.filter(function(i){try{return process.on(i,hy[i]),!0}catch(u){return!1}}),process.emit=fN,process.reallyExit=lN)}var ND=process.reallyExit;function lN(i){process.exitCode=i||0,wa("exit",process.exitCode,null),wa("afterexit",process.exitCode,null),ND.call(process,process.exitCode)}var my=process.emit;function fN(i,u){if(i==="exit"){u!==void 0&&(process.exitCode=u);var f=my.apply(this,arguments);return wa("exit",process.exitCode,null),wa("afterexit",process.exitCode,null),f}else return my.apply(this,arguments)}});var jD=Me((tb,BD)=>{"use strict";var cN=FD(),aN=vy();BD.exports=cN(()=>{aN(()=>{process.stderr.write("[?25h")},{alwaysLast:!0})})});var gy=Me(Da=>{"use strict";var dN=jD(),Dh=!1;Da.show=(i=process.stderr)=>{!i.isTTY||(Dh=!1,i.write("[?25h"))};Da.hide=(i=process.stderr)=>{!i.isTTY||(dN(),Dh=!0,i.write("[?25l"))};Da.toggle=(i,u)=>{i!==void 0&&(Dh=i),Dh?Da.show(u):Da.hide(u)}});var WD=Me(o2=>{"use strict";var UD=o2&&o2.__importDefault||function(i){return i&&i.__esModule?i:{default:i}};Object.defineProperty(o2,"__esModule",{value:!0});var qD=UD(ay()),zD=UD(gy()),pN=(i,{showCursor:u=!1}={})=>{let f=0,c="",g=!1,t=C=>{!u&&!g&&(zD.default.hide(),g=!0);let A=C+` +`;A!==c&&(c=A,i.write(qD.default.eraseLines(f)+A),f=A.split(` +`).length)};return t.clear=()=>{i.write(qD.default.eraseLines(f)),c="",f=0},t.done=()=>{c="",f=0,u||(zD.default.show(),g=!1)},t};o2.default={create:pN}});var bD=Me((ib,HD)=>{HD.exports=[{name:"AppVeyor",constant:"APPVEYOR",env:"APPVEYOR",pr:"APPVEYOR_PULL_REQUEST_NUMBER"},{name:"Azure Pipelines",constant:"AZURE_PIPELINES",env:"SYSTEM_TEAMFOUNDATIONCOLLECTIONURI",pr:"SYSTEM_PULLREQUEST_PULLREQUESTID"},{name:"Bamboo",constant:"BAMBOO",env:"bamboo_planKey"},{name:"Bitbucket Pipelines",constant:"BITBUCKET",env:"BITBUCKET_COMMIT",pr:"BITBUCKET_PR_ID"},{name:"Bitrise",constant:"BITRISE",env:"BITRISE_IO",pr:"BITRISE_PULL_REQUEST"},{name:"Buddy",constant:"BUDDY",env:"BUDDY_WORKSPACE_ID",pr:"BUDDY_EXECUTION_PULL_REQUEST_ID"},{name:"Buildkite",constant:"BUILDKITE",env:"BUILDKITE",pr:{env:"BUILDKITE_PULL_REQUEST",ne:"false"}},{name:"CircleCI",constant:"CIRCLE",env:"CIRCLECI",pr:"CIRCLE_PULL_REQUEST"},{name:"Cirrus CI",constant:"CIRRUS",env:"CIRRUS_CI",pr:"CIRRUS_PR"},{name:"AWS CodeBuild",constant:"CODEBUILD",env:"CODEBUILD_BUILD_ARN"},{name:"Codeship",constant:"CODESHIP",env:{CI_NAME:"codeship"}},{name:"Drone",constant:"DRONE",env:"DRONE",pr:{DRONE_BUILD_EVENT:"pull_request"}},{name:"dsari",constant:"DSARI",env:"DSARI"},{name:"GitLab CI",constant:"GITLAB",env:"GITLAB_CI"},{name:"GoCD",constant:"GOCD",env:"GO_PIPELINE_LABEL"},{name:"Hudson",constant:"HUDSON",env:"HUDSON_URL"},{name:"Jenkins",constant:"JENKINS",env:["JENKINS_URL","BUILD_ID"],pr:{any:["ghprbPullId","CHANGE_ID"]}},{name:"Magnum CI",constant:"MAGNUM",env:"MAGNUM"},{name:"Netlify CI",constant:"NETLIFY",env:"NETLIFY_BUILD_BASE",pr:{env:"PULL_REQUEST",ne:"false"}},{name:"Sail CI",constant:"SAIL",env:"SAILCI",pr:"SAIL_PULL_REQUEST_NUMBER"},{name:"Semaphore",constant:"SEMAPHORE",env:"SEMAPHORE",pr:"PULL_REQUEST_NUMBER"},{name:"Shippable",constant:"SHIPPABLE",env:"SHIPPABLE",pr:{IS_PULL_REQUEST:"true"}},{name:"Solano CI",constant:"SOLANO",env:"TDDIUM",pr:"TDDIUM_PR_ID"},{name:"Strider CD",constant:"STRIDER",env:"STRIDER"},{name:"TaskCluster",constant:"TASKCLUSTER",env:["TASK_ID","RUN_ID"]},{name:"TeamCity",constant:"TEAMCITY",env:"TEAMCITY_VERSION"},{name:"Travis CI",constant:"TRAVIS",env:"TRAVIS",pr:{env:"TRAVIS_PULL_REQUEST",ne:"false"}}]});var YD=Me(ru=>{"use strict";var GD=bD(),nl=process.env;Object.defineProperty(ru,"_vendors",{value:GD.map(function(i){return i.constant})});ru.name=null;ru.isPR=null;GD.forEach(function(i){var u=Array.isArray(i.env)?i.env:[i.env],f=u.every(function(c){return VD(c)});if(ru[i.constant]=f,f)switch(ru.name=i.name,typeof i.pr){case"string":ru.isPR=!!nl[i.pr];break;case"object":"env"in i.pr?ru.isPR=i.pr.env in nl&&nl[i.pr.env]!==i.pr.ne:"any"in i.pr?ru.isPR=i.pr.any.some(function(c){return!!nl[c]}):ru.isPR=VD(i.pr);break;default:ru.isPR=null}});ru.isCI=!!(nl.CI||nl.CONTINUOUS_INTEGRATION||nl.BUILD_NUMBER||nl.RUN_ID||ru.name);function VD(i){return typeof i=="string"?!!nl[i]:Object.keys(i).every(function(u){return nl[u]===i[u]})}});var KD=Me((ub,$D)=>{"use strict";$D.exports=YD().isCI});var JD=Me((sb,XD)=>{"use strict";var hN=i=>{let u=new Set;do for(let f of Reflect.ownKeys(i))u.add([i,f]);while((i=Reflect.getPrototypeOf(i))&&i!==Object.prototype);return u};XD.exports=(i,{include:u,exclude:f}={})=>{let c=g=>{let t=C=>typeof C=="string"?g===C:C.test(g);return u?u.some(t):f?!f.some(t):!0};for(let[g,t]of hN(i.constructor.prototype)){if(t==="constructor"||!c(t))continue;let C=Reflect.getOwnPropertyDescriptor(g,t);C&&typeof C.value=="function"&&(i[t]=i[t].bind(i))}return i}});var iE=Me(Sr=>{"use strict";Object.defineProperty(Sr,"__esModule",{value:!0});var Ea,u2,Eh,Sh,_y;typeof window=="undefined"||typeof MessageChannel!="function"?(Sa=null,yy=null,wy=function(){if(Sa!==null)try{var i=Sr.unstable_now();Sa(!0,i),Sa=null}catch(u){throw setTimeout(wy,0),u}},QD=Date.now(),Sr.unstable_now=function(){return Date.now()-QD},Ea=function(i){Sa!==null?setTimeout(Ea,0,i):(Sa=i,setTimeout(wy,0))},u2=function(i,u){yy=setTimeout(i,u)},Eh=function(){clearTimeout(yy)},Sh=function(){return!1},_y=Sr.unstable_forceFrameRate=function(){}):(Ch=window.performance,Dy=window.Date,ZD=window.setTimeout,eE=window.clearTimeout,typeof console!="undefined"&&(tE=window.cancelAnimationFrame,typeof window.requestAnimationFrame!="function"&&console.error("This browser doesn't support requestAnimationFrame. Make sure that you load a polyfill in older browsers. https://fb.me/react-polyfills"),typeof tE!="function"&&console.error("This browser doesn't support cancelAnimationFrame. Make sure that you load a polyfill in older browsers. https://fb.me/react-polyfills")),typeof Ch=="object"&&typeof Ch.now=="function"?Sr.unstable_now=function(){return Ch.now()}:(nE=Dy.now(),Sr.unstable_now=function(){return Dy.now()-nE}),s2=!1,l2=null,Th=-1,Ey=5,Sy=0,Sh=function(){return Sr.unstable_now()>=Sy},_y=function(){},Sr.unstable_forceFrameRate=function(i){0>i||125kh(C,f))x!==void 0&&0>kh(x,C)?(i[c]=x,i[A]=f,c=A):(i[c]=C,i[t]=f,c=t);else if(x!==void 0&&0>kh(x,f))i[c]=x,i[A]=f,c=A;else break e}}return u}return null}function kh(i,u){var f=i.sortIndex-u.sortIndex;return f!==0?f:i.id-u.id}var ds=[],Nf=[],mN=1,_o=null,to=3,Oh=!1,pc=!1,f2=!1;function Ih(i){for(var u=Iu(Nf);u!==null;){if(u.callback===null)Ah(Nf);else if(u.startTime<=i)Ah(Nf),u.sortIndex=u.expirationTime,Ty(ds,u);else break;u=Iu(Nf)}}function xy(i){if(f2=!1,Ih(i),!pc)if(Iu(ds)!==null)pc=!0,Ea(ky);else{var u=Iu(Nf);u!==null&&u2(xy,u.startTime-i)}}function ky(i,u){pc=!1,f2&&(f2=!1,Eh()),Oh=!0;var f=to;try{for(Ih(u),_o=Iu(ds);_o!==null&&(!(_o.expirationTime>u)||i&&!Sh());){var c=_o.callback;if(c!==null){_o.callback=null,to=_o.priorityLevel;var g=c(_o.expirationTime<=u);u=Sr.unstable_now(),typeof g=="function"?_o.callback=g:_o===Iu(ds)&&Ah(ds),Ih(u)}else Ah(ds);_o=Iu(ds)}if(_o!==null)var t=!0;else{var C=Iu(Nf);C!==null&&u2(xy,C.startTime-u),t=!1}return t}finally{_o=null,to=f,Oh=!1}}function rE(i){switch(i){case 1:return-1;case 2:return 250;case 5:return 1073741823;case 4:return 1e4;default:return 5e3}}var vN=_y;Sr.unstable_ImmediatePriority=1;Sr.unstable_UserBlockingPriority=2;Sr.unstable_NormalPriority=3;Sr.unstable_IdlePriority=5;Sr.unstable_LowPriority=4;Sr.unstable_runWithPriority=function(i,u){switch(i){case 1:case 2:case 3:case 4:case 5:break;default:i=3}var f=to;to=i;try{return u()}finally{to=f}};Sr.unstable_next=function(i){switch(to){case 1:case 2:case 3:var u=3;break;default:u=to}var f=to;to=u;try{return i()}finally{to=f}};Sr.unstable_scheduleCallback=function(i,u,f){var c=Sr.unstable_now();if(typeof f=="object"&&f!==null){var g=f.delay;g=typeof g=="number"&&0c?(i.sortIndex=g,Ty(Nf,i),Iu(ds)===null&&i===Iu(Nf)&&(f2?Eh():f2=!0,u2(xy,g-c))):(i.sortIndex=f,Ty(ds,i),pc||Oh||(pc=!0,Ea(ky))),i};Sr.unstable_cancelCallback=function(i){i.callback=null};Sr.unstable_wrapCallback=function(i){var u=to;return function(){var f=to;to=u;try{return i.apply(this,arguments)}finally{to=f}}};Sr.unstable_getCurrentPriorityLevel=function(){return to};Sr.unstable_shouldYield=function(){var i=Sr.unstable_now();Ih(i);var u=Iu(ds);return u!==_o&&_o!==null&&u!==null&&u.callback!==null&&u.startTime<=i&&u.expirationTime<_o.expirationTime||Sh()};Sr.unstable_requestPaint=vN;Sr.unstable_continueExecution=function(){pc||Oh||(pc=!0,Ea(ky))};Sr.unstable_pauseExecution=function(){};Sr.unstable_getFirstCallbackNode=function(){return Iu(ds)};Sr.unstable_Profiling=null});var Ay=Me((fb,oE)=>{"use strict";oE.exports=iE()});var uE=Me((cb,c2)=>{c2.exports=function i(u){"use strict";var f=ey(),c=lr(),g=Ay();function t(v){for(var m="https://reactjs.org/docs/error-decoder.html?invariant="+v,S=1;Sqo||(v.current=qi[qo],qi[qo]=null,qo--)}function Fr(v,m){qo++,qi[qo]=v.current,v.current=m}var si={},H0={current:si},b0={current:!1},Bt=si;function Lu(v,m){var S=v.type.contextTypes;if(!S)return si;var O=v.stateNode;if(O&&O.__reactInternalMemoizedUnmaskedChildContext===m)return O.__reactInternalMemoizedMaskedChildContext;var M={},b;for(b in S)M[b]=m[b];return O&&(v=v.stateNode,v.__reactInternalMemoizedUnmaskedChildContext=m,v.__reactInternalMemoizedMaskedChildContext=M),M}function c0(v){return v=v.childContextTypes,v!=null}function Ru(v){kr(b0,v),kr(H0,v)}function ks(v){kr(b0,v),kr(H0,v)}function As(v,m,S){if(H0.current!==si)throw Error(t(168));Fr(H0,m,v),Fr(b0,S,v)}function uu(v,m,S){var O=v.stateNode;if(v=m.childContextTypes,typeof O.getChildContext!="function")return S;O=O.getChildContext();for(var M in O)if(!(M in v))throw Error(t(108,Oe(m)||"Unknown",M));return f({},S,{},O)}function wo(v){var m=v.stateNode;return m=m&&m.__reactInternalMemoizedMergedChildContext||si,Bt=H0.current,Fr(H0,m,v),Fr(b0,b0.current,v),!0}function zo(v,m,S){var O=v.stateNode;if(!O)throw Error(t(169));S?(m=uu(v,m,Bt),O.__reactInternalMemoizedMergedChildContext=m,kr(b0,v),kr(H0,v),Fr(H0,m,v)):kr(b0,v),Fr(b0,S,v)}var Os=g.unstable_runWithPriority,Is=g.unstable_scheduleCallback,uf=g.unstable_cancelCallback,_n=g.unstable_shouldYield,Nu=g.unstable_requestPaint,Wo=g.unstable_now,su=g.unstable_getCurrentPriorityLevel,Ps=g.unstable_ImmediatePriority,pl=g.unstable_UserBlockingPriority,Vf=g.unstable_NormalPriority,hl=g.unstable_LowPriority,Bu=g.unstable_IdlePriority,ju={},sf=Nu!==void 0?Nu:function(){},ro=null,Ms=null,ml=!1,Uu=Wo(),G0=1e4>Uu?Wo:function(){return Wo()-Uu};function Fs(){switch(su()){case Ps:return 99;case pl:return 98;case Vf:return 97;case hl:return 96;case Bu:return 95;default:throw Error(t(332))}}function tt(v){switch(v){case 99:return Ps;case 98:return pl;case 97:return Vf;case 96:return hl;case 95:return Bu;default:throw Error(t(332))}}function zi(v,m){return v=tt(v),Os(v,m)}function lu(v,m,S){return v=tt(v),Is(v,m,S)}function Ho(v){return ro===null?(ro=[v],Ms=Is(Ps,vl)):ro.push(v),ju}function O0(){if(Ms!==null){var v=Ms;Ms=null,uf(v)}vl()}function vl(){if(!ml&&ro!==null){ml=!0;var v=0;try{var m=ro;zi(99,function(){for(;v=m&&(ai=!0),v.firstContext=null)}function D0(v,m){if(zu!==v&&m!==!1&&m!==0)if((typeof m!="number"||m===1073741823)&&(zu=v,m=1073741823),m={context:v,observedBits:m,next:null},Wi===null){if(qu===null)throw Error(t(308));Wi=m,qu.dependencies={expirationTime:0,firstContext:m,responders:null}}else Wi=Wi.next=m;return Jt?v._currentValue:v._currentValue2}var Do=!1;function i0(v){return{baseState:v,firstUpdate:null,lastUpdate:null,firstCapturedUpdate:null,lastCapturedUpdate:null,firstEffect:null,lastEffect:null,firstCapturedEffect:null,lastCapturedEffect:null}}function Rs(v){return{baseState:v.baseState,firstUpdate:v.firstUpdate,lastUpdate:v.lastUpdate,firstCapturedUpdate:null,lastCapturedUpdate:null,firstEffect:null,lastEffect:null,firstCapturedEffect:null,lastCapturedEffect:null}}function a0(v,m){return{expirationTime:v,suspenseConfig:m,tag:0,payload:null,callback:null,next:null,nextEffect:null}}function Hu(v,m){v.lastUpdate===null?v.firstUpdate=v.lastUpdate=m:(v.lastUpdate.next=m,v.lastUpdate=m)}function V0(v,m){var S=v.alternate;if(S===null){var O=v.updateQueue,M=null;O===null&&(O=v.updateQueue=i0(v.memoizedState))}else O=v.updateQueue,M=S.updateQueue,O===null?M===null?(O=v.updateQueue=i0(v.memoizedState),M=S.updateQueue=i0(S.memoizedState)):O=v.updateQueue=Rs(M):M===null&&(M=S.updateQueue=Rs(O));M===null||O===M?Hu(O,m):O.lastUpdate===null||M.lastUpdate===null?(Hu(O,m),Hu(M,m)):(Hu(O,m),M.lastUpdate=m)}function bu(v,m){var S=v.updateQueue;S=S===null?v.updateQueue=i0(v.memoizedState):Ns(v,S),S.lastCapturedUpdate===null?S.firstCapturedUpdate=S.lastCapturedUpdate=m:(S.lastCapturedUpdate.next=m,S.lastCapturedUpdate=m)}function Ns(v,m){var S=v.alternate;return S!==null&&m===S.updateQueue&&(m=v.updateQueue=Rs(m)),m}function bo(v,m,S,O,M,b){switch(S.tag){case 1:return v=S.payload,typeof v=="function"?v.call(b,O,M):v;case 3:v.effectTag=v.effectTag&-4097|64;case 0:if(v=S.payload,M=typeof v=="function"?v.call(b,O,M):v,M==null)break;return f({},O,M);case 2:Do=!0}return O}function P0(v,m,S,O,M){Do=!1,m=Ns(v,m);for(var b=m.baseState,ee=null,Ye=0,Ze=m.firstUpdate,ut=b;Ze!==null;){var In=Ze.expirationTime;Inpr?(Hr=mn,mn=null):Hr=mn.sibling;var Vn=jr(Re,mn,ze[pr],Et);if(Vn===null){mn===null&&(mn=Hr);break}v&&mn&&Vn.alternate===null&&m(Re,mn),Ce=b(Vn,Ce,pr),sr===null?on=Vn:sr.sibling=Vn,sr=Vn,mn=Hr}if(pr===ze.length)return S(Re,mn),on;if(mn===null){for(;prpr?(Hr=mn,mn=null):Hr=mn.sibling;var ni=jr(Re,mn,Vn.value,Et);if(ni===null){mn===null&&(mn=Hr);break}v&&mn&&ni.alternate===null&&m(Re,mn),Ce=b(ni,Ce,pr),sr===null?on=ni:sr.sibling=ni,sr=ni,mn=Hr}if(Vn.done)return S(Re,mn),on;if(mn===null){for(;!Vn.done;pr++,Vn=ze.next())Vn=A0(Re,Vn.value,Et),Vn!==null&&(Ce=b(Vn,Ce,pr),sr===null?on=Vn:sr.sibling=Vn,sr=Vn);return on}for(mn=O(Re,mn);!Vn.done;pr++,Vn=ze.next())Vn=gi(mn,Re,pr,Vn.value,Et),Vn!==null&&(v&&Vn.alternate!==null&&mn.delete(Vn.key===null?pr:Vn.key),Ce=b(Vn,Ce,pr),sr===null?on=Vn:sr.sibling=Vn,sr=Vn);return v&&mn.forEach(function(Zf){return m(Re,Zf)}),on}return function(Re,Ce,ze,Et){var on=typeof ze=="object"&&ze!==null&&ze.type===L&&ze.key===null;on&&(ze=ze.props.children);var sr=typeof ze=="object"&&ze!==null;if(sr)switch(ze.$$typeof){case x:e:{for(sr=ze.key,on=Ce;on!==null;){if(on.key===sr)if(on.tag===7?ze.type===L:on.elementType===ze.type){S(Re,on.sibling),Ce=M(on,ze.type===L?ze.props.children:ze.props,Et),Ce.ref=au(Re,on,ze),Ce.return=Re,Re=Ce;break e}else{S(Re,on);break}else m(Re,on);on=on.sibling}ze.type===L?(Ce=mi(ze.props.children,Re.mode,Et,ze.key),Ce.return=Re,Re=Ce):(Et=Hs(ze.type,ze.key,ze.props,null,Re.mode,Et),Et.ref=au(Re,Ce,ze),Et.return=Re,Re=Et)}return ee(Re);case D:e:{for(on=ze.key;Ce!==null;){if(Ce.key===on)if(Ce.tag===4&&Ce.stateNode.containerInfo===ze.containerInfo&&Ce.stateNode.implementation===ze.implementation){S(Re,Ce.sibling),Ce=M(Ce,ze.children||[],Et),Ce.return=Re,Re=Ce;break e}else{S(Re,Ce);break}else m(Re,Ce);Ce=Ce.sibling}Ce=Xf(ze,Re.mode,Et),Ce.return=Re,Re=Ce}return ee(Re)}if(typeof ze=="string"||typeof ze=="number")return ze=""+ze,Ce!==null&&Ce.tag===6?(S(Re,Ce.sibling),Ce=M(Ce,ze,Et),Ce.return=Re,Re=Ce):(S(Re,Ce),Ce=vi(ze,Re.mode,Et),Ce.return=Re,Re=Ce),ee(Re);if(M0(ze))return po(Re,Ce,ze,Et);if(J(ze))return _i(Re,Ce,ze,Et);if(sr&&Lr(Re,ze),typeof ze=="undefined"&&!on)switch(Re.tag){case 1:case 0:throw Re=Re.type,Error(t(152,Re.displayName||Re.name||"Component"))}return S(Re,Ce)}}var R=F(!0),U=F(!1),H={},fe={current:H},ue={current:H},de={current:H};function W(v){if(v===H)throw Error(t(174));return v}function ve(v,m){Fr(de,m,v),Fr(ue,v,v),Fr(fe,H,v),m=Ot(m),kr(fe,v),Fr(fe,m,v)}function Fe(v){kr(fe,v),kr(ue,v),kr(de,v)}function Ge(v){var m=W(de.current),S=W(fe.current);m=Nt(S,v.type,m),S!==m&&(Fr(ue,v,v),Fr(fe,m,v))}function K(v){ue.current===v&&(kr(fe,v),kr(ue,v))}var xe={current:0};function je(v){for(var m=v;m!==null;){if(m.tag===13){var S=m.memoizedState;if(S!==null&&(S=S.dehydrated,S===null||ll(S)||fl(S)))return m}else if(m.tag===19&&m.memoizedProps.revealOrder!==void 0){if((m.effectTag&64)!=0)return m}else if(m.child!==null){m.child.return=m,m=m.child;continue}if(m===v)break;for(;m.sibling===null;){if(m.return===null||m.return===v)return null;m=m.return}m.sibling.return=m.return,m=m.sibling}return null}function Xe(v,m){return{responder:v,props:m}}var rt=C.ReactCurrentDispatcher,st=C.ReactCurrentBatchConfig,xt=0,wt=null,lt=null,Rt=null,yn=null,sn=null,ar=null,rn=0,Hn=null,d0=0,Cr=!1,He=null,Qe=0;function Ne(){throw Error(t(321))}function ft(v,m){if(m===null)return!1;for(var S=0;Srn&&(rn=In,pf(rn))):(Yf(In,Ze.suspenseConfig),b=Ze.eagerReducer===v?Ze.eagerState:v(b,Ze.action)),ee=Ze,Ze=Ze.next}while(Ze!==null&&Ze!==O);ut||(Ye=ee,M=b),Sn(b,m.memoizedState)||(ai=!0),m.memoizedState=b,m.baseUpdate=Ye,m.baseState=M,S.lastRenderedState=b}return[m.memoizedState,S.dispatch]}function ci(v){var m=Cn();return typeof v=="function"&&(v=v()),m.memoizedState=m.baseState=v,v=m.queue={last:null,dispatch:null,lastRenderedReducer:p0,lastRenderedState:v},v=v.dispatch=Us.bind(null,wt,v),[m.memoizedState,v]}function xi(v){return h0(p0,v)}function E0(v,m,S,O){return v={tag:v,create:m,destroy:S,deps:O,next:null},Hn===null?(Hn={lastEffect:null},Hn.lastEffect=v.next=v):(m=Hn.lastEffect,m===null?Hn.lastEffect=v.next=v:(S=m.next,m.next=v,v.next=S,Hn.lastEffect=v)),v}function qr(v,m,S,O){var M=Cn();d0|=v,M.memoizedState=E0(m,S,void 0,O===void 0?null:O)}function Eo(v,m,S,O){var M=bn();O=O===void 0?null:O;var b=void 0;if(lt!==null){var ee=lt.memoizedState;if(b=ee.destroy,O!==null&&ft(O,ee.deps)){E0(0,S,b,O);return}}d0|=v,M.memoizedState=E0(m,S,b,O)}function So(v,m){return qr(516,192,v,m)}function wl(v,m){return Eo(516,192,v,m)}function js(v,m){if(typeof m=="function")return v=v(),m(v),function(){m(null)};if(m!=null)return v=v(),m.current=v,function(){m.current=null}}function Dl(){}function du(v,m){return Cn().memoizedState=[v,m===void 0?null:m],v}function Yu(v,m){var S=bn();m=m===void 0?null:m;var O=S.memoizedState;return O!==null&&m!==null&&ft(m,O[1])?O[0]:(S.memoizedState=[v,m],v)}function Us(v,m,S){if(!(25>Qe))throw Error(t(301));var O=v.alternate;if(v===wt||O!==null&&O===wt)if(Cr=!0,v={expirationTime:xt,suspenseConfig:null,action:S,eagerReducer:null,eagerState:null,next:null},He===null&&(He=new Map),S=He.get(m),S===void 0)He.set(m,v);else{for(m=S;m.next!==null;)m=m.next;m.next=v}else{var M=g0(),b=nr.suspense;M=Kr(M,v,b),b={expirationTime:M,suspenseConfig:b,action:S,eagerReducer:null,eagerState:null,next:null};var ee=m.last;if(ee===null)b.next=b;else{var Ye=ee.next;Ye!==null&&(b.next=Ye),ee.next=b}if(m.last=b,v.expirationTime===0&&(O===null||O.expirationTime===0)&&(O=m.lastRenderedReducer,O!==null))try{var Ze=m.lastRenderedState,ut=O(Ze,S);if(b.eagerReducer=O,b.eagerState=ut,Sn(ut,Ze))return}catch(In){}finally{}_0(v,M)}}var oo={readContext:D0,useCallback:Ne,useContext:Ne,useEffect:Ne,useImperativeHandle:Ne,useLayoutEffect:Ne,useMemo:Ne,useReducer:Ne,useRef:Ne,useState:Ne,useDebugValue:Ne,useResponder:Ne,useDeferredValue:Ne,useTransition:Ne},Hi={readContext:D0,useCallback:du,useContext:D0,useEffect:So,useImperativeHandle:function(v,m,S){return S=S!=null?S.concat([v]):null,qr(4,36,js.bind(null,m,v),S)},useLayoutEffect:function(v,m){return qr(4,36,v,m)},useMemo:function(v,m){var S=Cn();return m=m===void 0?null:m,v=v(),S.memoizedState=[v,m],v},useReducer:function(v,m,S){var O=Cn();return m=S!==void 0?S(m):m,O.memoizedState=O.baseState=m,v=O.queue={last:null,dispatch:null,lastRenderedReducer:v,lastRenderedState:m},v=v.dispatch=Us.bind(null,wt,v),[O.memoizedState,v]},useRef:function(v){var m=Cn();return v={current:v},m.memoizedState=v},useState:ci,useDebugValue:Dl,useResponder:Xe,useDeferredValue:function(v,m){var S=ci(v),O=S[0],M=S[1];return So(function(){g.unstable_next(function(){var b=st.suspense;st.suspense=m===void 0?null:m;try{M(v)}finally{st.suspense=b}})},[v,m]),O},useTransition:function(v){var m=ci(!1),S=m[0],O=m[1];return[du(function(M){O(!0),g.unstable_next(function(){var b=st.suspense;st.suspense=v===void 0?null:v;try{O(!1),M()}finally{st.suspense=b}})},[v,S]),S]}},qs={readContext:D0,useCallback:Yu,useContext:D0,useEffect:wl,useImperativeHandle:function(v,m,S){return S=S!=null?S.concat([v]):null,Eo(4,36,js.bind(null,m,v),S)},useLayoutEffect:function(v,m){return Eo(4,36,v,m)},useMemo:function(v,m){var S=bn();m=m===void 0?null:m;var O=S.memoizedState;return O!==null&&m!==null&&ft(m,O[1])?O[0]:(v=v(),S.memoizedState=[v,m],v)},useReducer:h0,useRef:function(){return bn().memoizedState},useState:xi,useDebugValue:Dl,useResponder:Xe,useDeferredValue:function(v,m){var S=xi(v),O=S[0],M=S[1];return wl(function(){g.unstable_next(function(){var b=st.suspense;st.suspense=m===void 0?null:m;try{M(v)}finally{st.suspense=b}})},[v,m]),O},useTransition:function(v){var m=xi(!1),S=m[0],O=m[1];return[Yu(function(M){O(!0),g.unstable_next(function(){var b=st.suspense;st.suspense=v===void 0?null:v;try{O(!1),M()}finally{st.suspense=b}})},[v,S]),S]}},F0=null,Gr=null,ir=!1;function L0(v,m){var S=xo(5,null,null,0);S.elementType="DELETED",S.type="DELETED",S.stateNode=m,S.return=v,S.effectTag=8,v.lastEffect!==null?(v.lastEffect.nextEffect=S,v.lastEffect=S):v.firstEffect=v.lastEffect=S}function Y0(v,m){switch(v.tag){case 5:return m=Ti(m,v.type,v.pendingProps),m!==null?(v.stateNode=m,!0):!1;case 6:return m=Fu(m,v.pendingProps),m!==null?(v.stateNode=m,!0):!1;case 13:return!1;default:return!1}}function Co(v){if(ir){var m=Gr;if(m){var S=m;if(!Y0(v,m)){if(m=cl(S),!m||!Y0(v,m)){v.effectTag=v.effectTag&-1025|2,ir=!1,F0=v;return}L0(F0,S)}F0=v,Gr=al(m)}else v.effectTag=v.effectTag&-1025|2,ir=!1,F0=v}}function $u(v){for(v=v.return;v!==null&&v.tag!==5&&v.tag!==3&&v.tag!==13;)v=v.return;F0=v}function Vo(v){if(!w||v!==F0)return!1;if(!ir)return $u(v),ir=!0,!1;var m=v.type;if(v.tag!==5||m!=="head"&&m!=="body"&&!at(m,v.memoizedProps))for(m=Gr;m;)L0(v,m),m=cl(m);if($u(v),v.tag===13){if(!w)throw Error(t(316));if(v=v.memoizedState,v=v!==null?v.dehydrated:null,!v)throw Error(t(317));Gr=Ac(v)}else Gr=F0?cl(v.stateNode):null;return!0}function Rr(){w&&(Gr=F0=null,ir=!1)}var Jn=C.ReactCurrentOwner,ai=!1;function o0(v,m,S,O){m.child=v===null?U(m,null,S,O):R(m,v.child,S,O)}function Vr(v,m,S,O,M){S=S.render;var b=m.ref;return io(m,M),O=St(v,m,S,O,b,M),v!==null&&!ai?(m.updateQueue=v.updateQueue,m.effectTag&=-517,v.expirationTime<=M&&(v.expirationTime=0),X0(v,m,M)):(m.effectTag|=1,o0(v,m,O,M),m.child)}function ff(v,m,S,O,M,b){if(v===null){var ee=S.type;return typeof ee=="function"&&!mf(ee)&&ee.defaultProps===void 0&&S.compare===null&&S.defaultProps===void 0?(m.tag=15,m.type=ee,cf(v,m,ee,O,M,b)):(v=Hs(S.type,null,O,null,m.mode,b),v.ref=m.ref,v.return=m,m.child=v)}return ee=v.child,Mm)&&Qn.set(v,m)))}}function Gi(v,m){v.expirationTimev?m:v)}function x0(v){if(v.lastExpiredTime!==0)v.callbackExpirationTime=1073741823,v.callbackPriority=99,v.callbackNode=Ho(Z0.bind(null,v));else{var m=fo(v),S=v.callbackNode;if(m===0)S!==null&&(v.callbackNode=null,v.callbackExpirationTime=0,v.callbackPriority=90);else{var O=g0();if(m===1073741823?O=99:m===1||m===2?O=95:(O=10*(1073741821-m)-10*(1073741821-O),O=0>=O?99:250>=O?98:5250>=O?97:95),S!==null){var M=v.callbackPriority;if(v.callbackExpirationTime===m&&M>=O)return;S!==ju&&uf(S)}v.callbackExpirationTime=m,v.callbackPriority=O,m=m===1073741823?Ho(Z0.bind(null,v)):lu(O,Xu.bind(null,v),{timeout:10*(1073741821-m)-G0()}),v.callbackNode=m}}}function Xu(v,m){if(t0=0,m)return m=g0(),kl(v,m),x0(v),null;var S=fo(v);if(S!==0){if(m=v.callbackNode,(Kt&(Br|zr))!==Fn)throw Error(t(327));if(Ws(),v===X&&S===ye||mu(v,S),Y!==null){var O=Kt;Kt|=Br;var M=ei(v);do try{Ua();break}catch(Ye){Ju(v,Ye)}while(1);if(Wu(),Kt=O,B0.current=M,he===wr)throw m=We,mu(v,S),ao(v,S),x0(v),m;if(Y===null)switch(M=v.finishedWork=v.current.alternate,v.finishedExpirationTime=S,O=he,X=null,O){case lo:case wr:throw Error(t(345));case kn:kl(v,2=S){v.lastPingedTime=S,mu(v,S);break}}if(b=fo(v),b!==0&&b!==S)break;if(O!==0&&O!==S){v.lastPingedTime=O;break}v.timeoutHandle=jt(gu.bind(null,v),M);break}gu(v);break;case hi:if(ao(v,S),O=v.lastSuspendedTime,S===O&&(v.nextKnownPendingLevel=$f(M)),qt&&(M=v.lastPingedTime,M===0||M>=S)){v.lastPingedTime=S,mu(v,S);break}if(M=fo(v),M!==0&&M!==S)break;if(O!==0&&O!==S){v.lastPingedTime=O;break}if(Dt!==1073741823?O=10*(1073741821-Dt)-G0():et===1073741823?O=0:(O=10*(1073741821-et)-5e3,M=G0(),S=10*(1073741821-S)-M,O=M-O,0>O&&(O=0),O=(120>O?120:480>O?480:1080>O?1080:1920>O?1920:3e3>O?3e3:4320>O?4320:1960*Cl(O/1960))-O,S=O?O=0:(M=ee.busyDelayMs|0,b=G0()-(10*(1073741821-b)-(ee.timeoutMs|0||5e3)),O=b<=M?0:M+O-b),10 component higher in the tree to provide a loading indicator or placeholder to display.`+dl(M))}he!==Ai&&(he=kn),b=zs(b,M),Ze=O;do{switch(Ze.tag){case 3:ee=b,Ze.effectTag|=4096,Ze.expirationTime=m;var Ce=pu(Ze,ee,m);bu(Ze,Ce);break e;case 1:ee=b;var ze=Ze.type,Et=Ze.stateNode;if((Ze.effectTag&64)==0&&(typeof ze.getDerivedStateFromError=="function"||Et!==null&&typeof Et.componentDidCatch=="function"&&(Ar===null||!Ar.has(Et)))){Ze.effectTag|=4096,Ze.expirationTime=m;var on=Sl(Ze,ee,m);bu(Ze,on);break e}}Ze=Ze.return}while(Ze!==null)}Y=vu(Y)}catch(sr){m=sr;continue}break}while(1)}function ei(){var v=B0.current;return B0.current=oo,v===null?oo:v}function Yf(v,m){vZt&&(Zt=v)}function ja(){for(;Y!==null;)Y=Ic(Y)}function Ua(){for(;Y!==null&&!_n();)Y=Ic(Y)}function Ic(v){var m=Lc(v.alternate,v,ye);return v.memoizedProps=v.pendingProps,m===null&&(m=vu(v)),hu.current=null,m}function vu(v){Y=v;do{var m=Y.alternate;if(v=Y.return,(Y.effectTag&2048)==0){e:{var S=m;m=Y;var O=ye,M=m.pendingProps;switch(m.tag){case 2:break;case 16:break;case 15:case 0:break;case 1:c0(m.type)&&Ru(m);break;case 3:Fe(m),ks(m),M=m.stateNode,M.pendingContext&&(M.context=M.pendingContext,M.pendingContext=null),(S===null||S.child===null)&&Vo(m)&&ki(m),$r(m);break;case 5:K(m);var b=W(de.current);if(O=m.type,S!==null&&m.stateNode!=null)m0(S,m,O,M,b),S.ref!==m.ref&&(m.effectTag|=128);else if(M){if(S=W(fe.current),Vo(m)){if(M=m,!w)throw Error(t(175));S=Ui(M.stateNode,M.type,M.memoizedProps,b,S,M),M.updateQueue=S,S=S!==null,S&&ki(m)}else{var ee=ne(O,M,b,S,m);Yr(ee,m,!1,!1),m.stateNode=ee,Z(ee,O,M,b,S)&&ki(m)}m.ref!==null&&(m.effectTag|=128)}else if(m.stateNode===null)throw Error(t(166));break;case 6:if(S&&m.stateNode!=null)Tn(S,m,S.memoizedProps,M);else{if(typeof M!="string"&&m.stateNode===null)throw Error(t(166));if(S=W(de.current),b=W(fe.current),Vo(m)){if(S=m,!w)throw Error(t(176));(S=Mr(S.stateNode,S.memoizedProps,S))&&ki(m)}else m.stateNode=Ft(M,S,b,m)}break;case 11:break;case 13:if(kr(xe,m),M=m.memoizedState,(m.effectTag&64)!=0){m.expirationTime=O;break e}M=M!==null,b=!1,S===null?m.memoizedProps.fallback!==void 0&&Vo(m):(O=S.memoizedState,b=O!==null,M||O===null||(O=S.child.sibling,O!==null&&(ee=m.firstEffect,ee!==null?(m.firstEffect=O,O.nextEffect=ee):(m.firstEffect=m.lastEffect=O,O.nextEffect=null),O.effectTag=8))),M&&!b&&(m.mode&2)!=0&&(S===null&&m.memoizedProps.unstable_avoidThisFallback!==!0||(xe.current&1)!=0?he===lo&&(he=T0):((he===lo||he===T0)&&(he=hi),Zt!==0&&X!==null&&(ao(X,ye),$o(X,Zt)))),cr&&M&&(m.effectTag|=4),Yt&&(M||b)&&(m.effectTag|=4);break;case 7:break;case 8:break;case 12:break;case 4:Fe(m),$r(m);break;case 10:fi(m);break;case 9:break;case 14:break;case 17:c0(m.type)&&Ru(m);break;case 19:if(kr(xe,m),M=m.memoizedState,M===null)break;if(b=(m.effectTag&64)!=0,ee=M.rendering,ee===null){if(b)bi(M,!1);else if(he!==lo||S!==null&&(S.effectTag&64)!=0)for(S=m.child;S!==null;){if(ee=je(S),ee!==null){for(m.effectTag|=64,bi(M,!1),S=ee.updateQueue,S!==null&&(m.updateQueue=S,m.effectTag|=4),M.lastEffect===null&&(m.firstEffect=null),m.lastEffect=M.lastEffect,S=O,M=m.child;M!==null;)b=M,O=S,b.effectTag&=2,b.nextEffect=null,b.firstEffect=null,b.lastEffect=null,ee=b.alternate,ee===null?(b.childExpirationTime=0,b.expirationTime=O,b.child=null,b.memoizedProps=null,b.memoizedState=null,b.updateQueue=null,b.dependencies=null):(b.childExpirationTime=ee.childExpirationTime,b.expirationTime=ee.expirationTime,b.child=ee.child,b.memoizedProps=ee.memoizedProps,b.memoizedState=ee.memoizedState,b.updateQueue=ee.updateQueue,O=ee.dependencies,b.dependencies=O===null?null:{expirationTime:O.expirationTime,firstContext:O.firstContext,responders:O.responders}),M=M.sibling;Fr(xe,xe.current&1|2,m),m=m.child;break e}S=S.sibling}}else{if(!b)if(S=je(ee),S!==null){if(m.effectTag|=64,b=!0,S=S.updateQueue,S!==null&&(m.updateQueue=S,m.effectTag|=4),bi(M,!0),M.tail===null&&M.tailMode==="hidden"&&!ee.alternate){m=m.lastEffect=M.lastEffect,m!==null&&(m.nextEffect=null);break}}else G0()>M.tailExpiration&&1M&&(M=O),ee>M&&(M=ee),b=b.sibling;S.childExpirationTime=M}if(m!==null)return m;v!==null&&(v.effectTag&2048)==0&&(v.firstEffect===null&&(v.firstEffect=Y.firstEffect),Y.lastEffect!==null&&(v.lastEffect!==null&&(v.lastEffect.nextEffect=Y.firstEffect),v.lastEffect=Y.lastEffect),1v?m:v}function gu(v){var m=Fs();return zi(99,co.bind(null,v,m)),null}function co(v,m){do Ws();while(dr!==null);if((Kt&(Br|zr))!==Fn)throw Error(t(327));var S=v.finishedWork,O=v.finishedExpirationTime;if(S===null)return null;if(v.finishedWork=null,v.finishedExpirationTime=0,S===v.current)throw Error(t(177));v.callbackNode=null,v.callbackExpirationTime=0,v.callbackPriority=90,v.nextKnownPendingLevel=0;var M=$f(S);if(v.firstPendingTime=M,O<=v.lastSuspendedTime?v.firstSuspendedTime=v.lastSuspendedTime=v.nextKnownPendingLevel=0:O<=v.firstSuspendedTime&&(v.firstSuspendedTime=O-1),O<=v.lastPingedTime&&(v.lastPingedTime=0),O<=v.lastExpiredTime&&(v.lastExpiredTime=0),v===X&&(Y=X=null,ye=0),1=S?mt(v,m,S):(Fr(xe,xe.current&1,m),m=X0(v,m,S),m!==null?m.sibling:null);Fr(xe,xe.current&1,m);break;case 19:if(O=m.childExpirationTime>=S,(v.effectTag&64)!=0){if(O)return $t(v,m,S);m.effectTag|=64}if(M=m.memoizedState,M!==null&&(M.rendering=null,M.tail=null),Fr(xe,xe.current,m),!O)return null}return X0(v,m,S)}ai=!1}}else ai=!1;switch(m.expirationTime=0,m.tag){case 2:if(O=m.type,v!==null&&(v.alternate=null,m.alternate=null,m.effectTag|=2),v=m.pendingProps,M=Lu(m,H0.current),io(m,S),M=St(null,m,O,v,M,S),m.effectTag|=1,typeof M=="object"&&M!==null&&typeof M.render=="function"&&M.$$typeof===void 0){if(m.tag=1,Qt(),c0(O)){var b=!0;wo(m)}else b=!1;m.memoizedState=M.state!==null&&M.state!==void 0?M.state:null;var ee=O.getDerivedStateFromProps;typeof ee=="function"&&Go(m,O,ee,v),M.updater=Gu,m.stateNode=M,M._reactInternalFiber=m,Vu(m,O,v,S),m=Be(null,m,O,!0,b,S)}else m.tag=0,o0(null,m,M,S),m=m.child;return m;case 16:if(M=m.elementType,v!==null&&(v.alternate=null,m.alternate=null,m.effectTag|=2),v=m.pendingProps,Te(M),M._status!==1)throw M._result;switch(M=M._result,m.type=M,b=m.tag=Wa(M),v=I0(M,v),b){case 0:m=K0(null,m,M,v,S);break;case 1:m=ae(null,m,M,v,S);break;case 11:m=Vr(null,m,M,v,S);break;case 14:m=ff(null,m,M,I0(M.type,v),O,S);break;default:throw Error(t(306,M,""))}return m;case 0:return O=m.type,M=m.pendingProps,M=m.elementType===O?M:I0(O,M),K0(v,m,O,M,S);case 1:return O=m.type,M=m.pendingProps,M=m.elementType===O?M:I0(O,M),ae(v,m,O,M,S);case 3:if(Ie(m),O=m.updateQueue,O===null)throw Error(t(282));if(M=m.memoizedState,M=M!==null?M.element:null,P0(m,O,m.pendingProps,null,S),O=m.memoizedState.element,O===M)Rr(),m=X0(v,m,S);else{if((M=m.stateNode.hydrate)&&(w?(Gr=al(m.stateNode.containerInfo),F0=m,M=ir=!0):M=!1),M)for(S=U(m,null,O,S),m.child=S;S;)S.effectTag=S.effectTag&-3|1024,S=S.sibling;else o0(v,m,O,S),Rr();m=m.child}return m;case 5:return Ge(m),v===null&&Co(m),O=m.type,M=m.pendingProps,b=v!==null?v.memoizedProps:null,ee=M.children,at(O,M)?ee=null:b!==null&&at(O,b)&&(m.effectTag|=16),$0(v,m),m.mode&4&&S!==1&&it(O,M)?(m.expirationTime=m.childExpirationTime=1,m=null):(o0(v,m,ee,S),m=m.child),m;case 6:return v===null&&Co(m),null;case 13:return mt(v,m,S);case 4:return ve(m,m.stateNode.containerInfo),O=m.pendingProps,v===null?m.child=R(m,null,O,S):o0(v,m,O,S),m.child;case 11:return O=m.type,M=m.pendingProps,M=m.elementType===O?M:I0(O,M),Vr(v,m,O,M,S);case 7:return o0(v,m,m.pendingProps,S),m.child;case 8:return o0(v,m,m.pendingProps.children,S),m.child;case 12:return o0(v,m,m.pendingProps.children,S),m.child;case 10:e:{if(O=m.type._context,M=m.pendingProps,ee=m.memoizedProps,b=M.value,Ls(m,b),ee!==null){var Ye=ee.value;if(b=Sn(Ye,b)?0:(typeof O._calculateChangedBits=="function"?O._calculateChangedBits(Ye,b):1073741823)|0,b===0){if(ee.children===M.children&&!b0.current){m=X0(v,m,S);break e}}else for(Ye=m.child,Ye!==null&&(Ye.return=m);Ye!==null;){var Ze=Ye.dependencies;if(Ze!==null){ee=Ye.child;for(var ut=Ze.firstContext;ut!==null;){if(ut.context===O&&(ut.observedBits&b)!=0){Ye.tag===1&&(ut=a0(S,null),ut.tag=2,V0(Ye,ut)),Ye.expirationTime=m&&v<=m}function ao(v,m){var S=v.firstSuspendedTime,O=v.lastSuspendedTime;Sm||S===0)&&(v.lastSuspendedTime=m),m<=v.lastPingedTime&&(v.lastPingedTime=0),m<=v.lastExpiredTime&&(v.lastExpiredTime=0)}function $o(v,m){m>v.firstPendingTime&&(v.firstPendingTime=m);var S=v.firstSuspendedTime;S!==0&&(m>=S?v.firstSuspendedTime=v.lastSuspendedTime=v.nextKnownPendingLevel=0:m>=v.lastSuspendedTime&&(v.lastSuspendedTime=m+1),m>v.nextKnownPendingLevel&&(v.nextKnownPendingLevel=m))}function kl(v,m){var S=v.lastExpiredTime;(S===0||S>m)&&(v.lastExpiredTime=m)}function Nc(v){var m=v._reactInternalFiber;if(m===void 0)throw typeof v.render=="function"?Error(t(188)):Error(t(268,Object.keys(v)));return v=Ue(m),v===null?null:v.stateNode}function Al(v,m){v=v.memoizedState,v!==null&&v.dehydrated!==null&&v.retryTime{"use strict";sE.exports=uE()});var cE=Me((db,fE)=>{"use strict";var gN={ALIGN_COUNT:8,ALIGN_AUTO:0,ALIGN_FLEX_START:1,ALIGN_CENTER:2,ALIGN_FLEX_END:3,ALIGN_STRETCH:4,ALIGN_BASELINE:5,ALIGN_SPACE_BETWEEN:6,ALIGN_SPACE_AROUND:7,DIMENSION_COUNT:2,DIMENSION_WIDTH:0,DIMENSION_HEIGHT:1,DIRECTION_COUNT:3,DIRECTION_INHERIT:0,DIRECTION_LTR:1,DIRECTION_RTL:2,DISPLAY_COUNT:2,DISPLAY_FLEX:0,DISPLAY_NONE:1,EDGE_COUNT:9,EDGE_LEFT:0,EDGE_TOP:1,EDGE_RIGHT:2,EDGE_BOTTOM:3,EDGE_START:4,EDGE_END:5,EDGE_HORIZONTAL:6,EDGE_VERTICAL:7,EDGE_ALL:8,EXPERIMENTAL_FEATURE_COUNT:1,EXPERIMENTAL_FEATURE_WEB_FLEX_BASIS:0,FLEX_DIRECTION_COUNT:4,FLEX_DIRECTION_COLUMN:0,FLEX_DIRECTION_COLUMN_REVERSE:1,FLEX_DIRECTION_ROW:2,FLEX_DIRECTION_ROW_REVERSE:3,JUSTIFY_COUNT:6,JUSTIFY_FLEX_START:0,JUSTIFY_CENTER:1,JUSTIFY_FLEX_END:2,JUSTIFY_SPACE_BETWEEN:3,JUSTIFY_SPACE_AROUND:4,JUSTIFY_SPACE_EVENLY:5,LOG_LEVEL_COUNT:6,LOG_LEVEL_ERROR:0,LOG_LEVEL_WARN:1,LOG_LEVEL_INFO:2,LOG_LEVEL_DEBUG:3,LOG_LEVEL_VERBOSE:4,LOG_LEVEL_FATAL:5,MEASURE_MODE_COUNT:3,MEASURE_MODE_UNDEFINED:0,MEASURE_MODE_EXACTLY:1,MEASURE_MODE_AT_MOST:2,NODE_TYPE_COUNT:2,NODE_TYPE_DEFAULT:0,NODE_TYPE_TEXT:1,OVERFLOW_COUNT:3,OVERFLOW_VISIBLE:0,OVERFLOW_HIDDEN:1,OVERFLOW_SCROLL:2,POSITION_TYPE_COUNT:2,POSITION_TYPE_RELATIVE:0,POSITION_TYPE_ABSOLUTE:1,PRINT_OPTIONS_COUNT:3,PRINT_OPTIONS_LAYOUT:1,PRINT_OPTIONS_STYLE:2,PRINT_OPTIONS_CHILDREN:4,UNIT_COUNT:4,UNIT_UNDEFINED:0,UNIT_POINT:1,UNIT_PERCENT:2,UNIT_AUTO:3,WRAP_COUNT:3,WRAP_NO_WRAP:0,WRAP_WRAP:1,WRAP_WRAP_REVERSE:2};fE.exports=gN});var hE=Me((pb,aE)=>{"use strict";var _N=Object.assign||function(i){for(var u=1;u"}}]),i}(),dE=function(){Ph(i,null,[{key:"fromJS",value:function(f){var c=f.width,g=f.height;return new i(c,g)}}]);function i(u,f){Iy(this,i),this.width=u,this.height=f}return Ph(i,[{key:"fromJS",value:function(f){f(this.width,this.height)}},{key:"toString",value:function(){return""}}]),i}(),pE=function(){function i(u,f){Iy(this,i),this.unit=u,this.value=f}return Ph(i,[{key:"fromJS",value:function(f){f(this.unit,this.value)}},{key:"toString",value:function(){switch(this.unit){case ps.UNIT_POINT:return String(this.value);case ps.UNIT_PERCENT:return this.value+"%";case ps.UNIT_AUTO:return"auto";default:return this.value+"?"}}},{key:"valueOf",value:function(){return this.value}}]),i}();aE.exports=function(i,u){function f(C,A,x){var D=C[A];C[A]=function(){for(var L=arguments.length,N=Array(L),j=0;j1?N-1:0),$=1;$1&&arguments[1]!==void 0?arguments[1]:NaN,x=arguments.length>2&&arguments[2]!==void 0?arguments[2]:NaN,D=arguments.length>3&&arguments[3]!==void 0?arguments[3]:ps.DIRECTION_LTR;return C.call(this,A,x,D)}),_N({Config:u.Config,Node:u.Node,Layout:i("Layout",yN),Size:i("Size",dE),Value:i("Value",pE),getInstanceCount:function(){return u.getInstanceCount.apply(u,arguments)}},ps)}});var mE=Me((exports,module)=>{(function(i,u){typeof define=="function"&&define.amd?define([],function(){return u}):typeof module=="object"&&module.exports?module.exports=u:(i.nbind=i.nbind||{}).init=u})(exports,function(Module,cb){typeof Module=="function"&&(cb=Module,Module={}),Module.onRuntimeInitialized=function(i,u){return function(){i&&i.apply(this,arguments);try{Module.ccall("nbind_init")}catch(f){u(f);return}u(null,{bind:Module._nbind_value,reflect:Module.NBind.reflect,queryType:Module.NBind.queryType,toggleLightGC:Module.toggleLightGC,lib:Module})}}(Module.onRuntimeInitialized,cb);var Module;Module||(Module=(typeof Module!="undefined"?Module:null)||{});var moduleOverrides={};for(var key in Module)Module.hasOwnProperty(key)&&(moduleOverrides[key]=Module[key]);var ENVIRONMENT_IS_WEB=!1,ENVIRONMENT_IS_WORKER=!1,ENVIRONMENT_IS_NODE=!1,ENVIRONMENT_IS_SHELL=!1;if(Module.ENVIRONMENT)if(Module.ENVIRONMENT==="WEB")ENVIRONMENT_IS_WEB=!0;else if(Module.ENVIRONMENT==="WORKER")ENVIRONMENT_IS_WORKER=!0;else if(Module.ENVIRONMENT==="NODE")ENVIRONMENT_IS_NODE=!0;else if(Module.ENVIRONMENT==="SHELL")ENVIRONMENT_IS_SHELL=!0;else throw new Error("The provided Module['ENVIRONMENT'] value is not valid. It must be one of: WEB|WORKER|NODE|SHELL.");else ENVIRONMENT_IS_WEB=typeof window=="object",ENVIRONMENT_IS_WORKER=typeof importScripts=="function",ENVIRONMENT_IS_NODE=typeof process=="object"&&typeof require=="function"&&!ENVIRONMENT_IS_WEB&&!ENVIRONMENT_IS_WORKER,ENVIRONMENT_IS_SHELL=!ENVIRONMENT_IS_WEB&&!ENVIRONMENT_IS_NODE&&!ENVIRONMENT_IS_WORKER;if(ENVIRONMENT_IS_NODE){Module.print||(Module.print=console.log),Module.printErr||(Module.printErr=console.warn);var nodeFS,nodePath;Module.read=function(u,f){nodeFS||(nodeFS={}("")),nodePath||(nodePath={}("")),u=nodePath.normalize(u);var c=nodeFS.readFileSync(u);return f?c:c.toString()},Module.readBinary=function(u){var f=Module.read(u,!0);return f.buffer||(f=new Uint8Array(f)),assert(f.buffer),f},Module.load=function(u){globalEval(read(u))},Module.thisProgram||(process.argv.length>1?Module.thisProgram=process.argv[1].replace(/\\/g,"/"):Module.thisProgram="unknown-program"),Module.arguments=process.argv.slice(2),typeof module!="undefined"&&(module.exports=Module),Module.inspect=function(){return"[Emscripten Module object]"}}else if(ENVIRONMENT_IS_SHELL)Module.print||(Module.print=print),typeof printErr!="undefined"&&(Module.printErr=printErr),typeof read!="undefined"?Module.read=read:Module.read=function(){throw"no read() available"},Module.readBinary=function(u){if(typeof readbuffer=="function")return new Uint8Array(readbuffer(u));var f=read(u,"binary");return assert(typeof f=="object"),f},typeof scriptArgs!="undefined"?Module.arguments=scriptArgs:typeof arguments!="undefined"&&(Module.arguments=arguments),typeof quit=="function"&&(Module.quit=function(i,u){quit(i)});else if(ENVIRONMENT_IS_WEB||ENVIRONMENT_IS_WORKER){if(Module.read=function(u){var f=new XMLHttpRequest;return f.open("GET",u,!1),f.send(null),f.responseText},ENVIRONMENT_IS_WORKER&&(Module.readBinary=function(u){var f=new XMLHttpRequest;return f.open("GET",u,!1),f.responseType="arraybuffer",f.send(null),new Uint8Array(f.response)}),Module.readAsync=function(u,f,c){var g=new XMLHttpRequest;g.open("GET",u,!0),g.responseType="arraybuffer",g.onload=function(){g.status==200||g.status==0&&g.response?f(g.response):c()},g.onerror=c,g.send(null)},typeof arguments!="undefined"&&(Module.arguments=arguments),typeof console!="undefined")Module.print||(Module.print=function(u){console.log(u)}),Module.printErr||(Module.printErr=function(u){console.warn(u)});else{var TRY_USE_DUMP=!1;Module.print||(Module.print=TRY_USE_DUMP&&typeof dump!="undefined"?function(i){dump(i)}:function(i){})}ENVIRONMENT_IS_WORKER&&(Module.load=importScripts),typeof Module.setWindowTitle=="undefined"&&(Module.setWindowTitle=function(i){document.title=i})}else throw"Unknown runtime environment. Where are we?";function globalEval(i){eval.call(null,i)}!Module.load&&Module.read&&(Module.load=function(u){globalEval(Module.read(u))}),Module.print||(Module.print=function(){}),Module.printErr||(Module.printErr=Module.print),Module.arguments||(Module.arguments=[]),Module.thisProgram||(Module.thisProgram="./this.program"),Module.quit||(Module.quit=function(i,u){throw u}),Module.print=Module.print,Module.printErr=Module.printErr,Module.preRun=[],Module.postRun=[];for(var key in moduleOverrides)moduleOverrides.hasOwnProperty(key)&&(Module[key]=moduleOverrides[key]);moduleOverrides=void 0;var Runtime={setTempRet0:function(i){return tempRet0=i,i},getTempRet0:function(){return tempRet0},stackSave:function(){return STACKTOP},stackRestore:function(i){STACKTOP=i},getNativeTypeSize:function(i){switch(i){case"i1":case"i8":return 1;case"i16":return 2;case"i32":return 4;case"i64":return 8;case"float":return 4;case"double":return 8;default:{if(i[i.length-1]==="*")return Runtime.QUANTUM_SIZE;if(i[0]==="i"){var u=parseInt(i.substr(1));return assert(u%8==0),u/8}else return 0}}},getNativeFieldSize:function(i){return Math.max(Runtime.getNativeTypeSize(i),Runtime.QUANTUM_SIZE)},STACK_ALIGN:16,prepVararg:function(i,u){return u==="double"||u==="i64"?i&7&&(assert((i&7)==4),i+=4):assert((i&3)==0),i},getAlignSize:function(i,u,f){return!f&&(i=="i64"||i=="double")?8:i?Math.min(u||(i?Runtime.getNativeFieldSize(i):0),Runtime.QUANTUM_SIZE):Math.min(u,8)},dynCall:function(i,u,f){return f&&f.length?Module["dynCall_"+i].apply(null,[u].concat(f)):Module["dynCall_"+i].call(null,u)},functionPointers:[],addFunction:function(i){for(var u=0;u>2],f=(u+i+15|0)&-16;if(HEAP32[DYNAMICTOP_PTR>>2]=f,f>=TOTAL_MEMORY){var c=enlargeMemory();if(!c)return HEAP32[DYNAMICTOP_PTR>>2]=u,0}return u},alignMemory:function(i,u){var f=i=Math.ceil(i/(u||16))*(u||16);return f},makeBigInt:function(i,u,f){var c=f?+(i>>>0)+ +(u>>>0)*4294967296:+(i>>>0)+ +(u|0)*4294967296;return c},GLOBAL_BASE:8,QUANTUM_SIZE:4,__dummy__:0};Module.Runtime=Runtime;var ABORT=0,EXITSTATUS=0;function assert(i,u){i||abort("Assertion failed: "+u)}function getCFunc(ident){var func=Module["_"+ident];if(!func)try{func=eval("_"+ident)}catch(i){}return assert(func,"Cannot call unknown function "+ident+" (perhaps LLVM optimizations or closure removed it?)"),func}var cwrap,ccall;(function(){var JSfuncs={stackSave:function(){Runtime.stackSave()},stackRestore:function(){Runtime.stackRestore()},arrayToC:function(i){var u=Runtime.stackAlloc(i.length);return writeArrayToMemory(i,u),u},stringToC:function(i){var u=0;if(i!=null&&i!==0){var f=(i.length<<2)+1;u=Runtime.stackAlloc(f),stringToUTF8(i,u,f)}return u}},toC={string:JSfuncs.stringToC,array:JSfuncs.arrayToC};ccall=function(u,f,c,g,t){var C=getCFunc(u),A=[],x=0;if(g)for(var D=0;D>0]=u;break;case"i8":HEAP8[i>>0]=u;break;case"i16":HEAP16[i>>1]=u;break;case"i32":HEAP32[i>>2]=u;break;case"i64":tempI64=[u>>>0,(tempDouble=u,+Math_abs(tempDouble)>=1?tempDouble>0?(Math_min(+Math_floor(tempDouble/4294967296),4294967295)|0)>>>0:~~+Math_ceil((tempDouble-+(~~tempDouble>>>0))/4294967296)>>>0:0)],HEAP32[i>>2]=tempI64[0],HEAP32[i+4>>2]=tempI64[1];break;case"float":HEAPF32[i>>2]=u;break;case"double":HEAPF64[i>>3]=u;break;default:abort("invalid type for setValue: "+f)}}Module.setValue=setValue;function getValue(i,u,f){switch(u=u||"i8",u.charAt(u.length-1)==="*"&&(u="i32"),u){case"i1":return HEAP8[i>>0];case"i8":return HEAP8[i>>0];case"i16":return HEAP16[i>>1];case"i32":return HEAP32[i>>2];case"i64":return HEAP32[i>>2];case"float":return HEAPF32[i>>2];case"double":return HEAPF64[i>>3];default:abort("invalid type for setValue: "+u)}return null}Module.getValue=getValue;var ALLOC_NORMAL=0,ALLOC_STACK=1,ALLOC_STATIC=2,ALLOC_DYNAMIC=3,ALLOC_NONE=4;Module.ALLOC_NORMAL=ALLOC_NORMAL,Module.ALLOC_STACK=ALLOC_STACK,Module.ALLOC_STATIC=ALLOC_STATIC,Module.ALLOC_DYNAMIC=ALLOC_DYNAMIC,Module.ALLOC_NONE=ALLOC_NONE;function allocate(i,u,f,c){var g,t;typeof i=="number"?(g=!0,t=i):(g=!1,t=i.length);var C=typeof u=="string"?u:null,A;if(f==ALLOC_NONE?A=c:A=[typeof _malloc=="function"?_malloc:Runtime.staticAlloc,Runtime.stackAlloc,Runtime.staticAlloc,Runtime.dynamicAlloc][f===void 0?ALLOC_STATIC:f](Math.max(t,C?1:u.length)),g){var c=A,x;for(assert((A&3)==0),x=A+(t&~3);c>2]=0;for(x=A+t;c>0]=0;return A}if(C==="i8")return i.subarray||i.slice?HEAPU8.set(i,A):HEAPU8.set(new Uint8Array(i),A),A;for(var D=0,L,N,j;D>0],f|=c,!(c==0&&!u||(g++,u&&g==u)););u||(u=g);var t="";if(f<128){for(var C=1024,A;u>0;)A=String.fromCharCode.apply(String,HEAPU8.subarray(i,i+Math.min(u,C))),t=t?t+A:A,i+=C,u-=C;return t}return Module.UTF8ToString(i)}Module.Pointer_stringify=Pointer_stringify;function AsciiToString(i){for(var u="";;){var f=HEAP8[i++>>0];if(!f)return u;u+=String.fromCharCode(f)}}Module.AsciiToString=AsciiToString;function stringToAscii(i,u){return writeAsciiToMemory(i,u,!1)}Module.stringToAscii=stringToAscii;var UTF8Decoder=typeof TextDecoder!="undefined"?new TextDecoder("utf8"):void 0;function UTF8ArrayToString(i,u){for(var f=u;i[f];)++f;if(f-u>16&&i.subarray&&UTF8Decoder)return UTF8Decoder.decode(i.subarray(u,f));for(var c,g,t,C,A,x,D="";;){if(c=i[u++],!c)return D;if(!(c&128)){D+=String.fromCharCode(c);continue}if(g=i[u++]&63,(c&224)==192){D+=String.fromCharCode((c&31)<<6|g);continue}if(t=i[u++]&63,(c&240)==224?c=(c&15)<<12|g<<6|t:(C=i[u++]&63,(c&248)==240?c=(c&7)<<18|g<<12|t<<6|C:(A=i[u++]&63,(c&252)==248?c=(c&3)<<24|g<<18|t<<12|C<<6|A:(x=i[u++]&63,c=(c&1)<<30|g<<24|t<<18|C<<12|A<<6|x))),c<65536)D+=String.fromCharCode(c);else{var L=c-65536;D+=String.fromCharCode(55296|L>>10,56320|L&1023)}}}Module.UTF8ArrayToString=UTF8ArrayToString;function UTF8ToString(i){return UTF8ArrayToString(HEAPU8,i)}Module.UTF8ToString=UTF8ToString;function stringToUTF8Array(i,u,f,c){if(!(c>0))return 0;for(var g=f,t=f+c-1,C=0;C=55296&&A<=57343&&(A=65536+((A&1023)<<10)|i.charCodeAt(++C)&1023),A<=127){if(f>=t)break;u[f++]=A}else if(A<=2047){if(f+1>=t)break;u[f++]=192|A>>6,u[f++]=128|A&63}else if(A<=65535){if(f+2>=t)break;u[f++]=224|A>>12,u[f++]=128|A>>6&63,u[f++]=128|A&63}else if(A<=2097151){if(f+3>=t)break;u[f++]=240|A>>18,u[f++]=128|A>>12&63,u[f++]=128|A>>6&63,u[f++]=128|A&63}else if(A<=67108863){if(f+4>=t)break;u[f++]=248|A>>24,u[f++]=128|A>>18&63,u[f++]=128|A>>12&63,u[f++]=128|A>>6&63,u[f++]=128|A&63}else{if(f+5>=t)break;u[f++]=252|A>>30,u[f++]=128|A>>24&63,u[f++]=128|A>>18&63,u[f++]=128|A>>12&63,u[f++]=128|A>>6&63,u[f++]=128|A&63}}return u[f]=0,f-g}Module.stringToUTF8Array=stringToUTF8Array;function stringToUTF8(i,u,f){return stringToUTF8Array(i,HEAPU8,u,f)}Module.stringToUTF8=stringToUTF8;function lengthBytesUTF8(i){for(var u=0,f=0;f=55296&&c<=57343&&(c=65536+((c&1023)<<10)|i.charCodeAt(++f)&1023),c<=127?++u:c<=2047?u+=2:c<=65535?u+=3:c<=2097151?u+=4:c<=67108863?u+=5:u+=6}return u}Module.lengthBytesUTF8=lengthBytesUTF8;var UTF16Decoder=typeof TextDecoder!="undefined"?new TextDecoder("utf-16le"):void 0;function demangle(i){var u=Module.___cxa_demangle||Module.__cxa_demangle;if(u){try{var f=i.substr(1),c=lengthBytesUTF8(f)+1,g=_malloc(c);stringToUTF8(f,g,c);var t=_malloc(4),C=u(g,0,0,t);if(getValue(t,"i32")===0&&C)return Pointer_stringify(C)}catch(A){}finally{g&&_free(g),t&&_free(t),C&&_free(C)}return i}return Runtime.warnOnce("warning: build with -s DEMANGLE_SUPPORT=1 to link in libcxxabi demangling"),i}function demangleAll(i){var u=/__Z[\w\d_]+/g;return i.replace(u,function(f){var c=demangle(f);return f===c?f:f+" ["+c+"]"})}function jsStackTrace(){var i=new Error;if(!i.stack){try{throw new Error(0)}catch(u){i=u}if(!i.stack)return"(no stack trace available)"}return i.stack.toString()}function stackTrace(){var i=jsStackTrace();return Module.extraStackTrace&&(i+=` +`+Module.extraStackTrace()),demangleAll(i)}Module.stackTrace=stackTrace;var HEAP,buffer,HEAP8,HEAPU8,HEAP16,HEAPU16,HEAP32,HEAPU32,HEAPF32,HEAPF64;function updateGlobalBufferViews(){Module.HEAP8=HEAP8=new Int8Array(buffer),Module.HEAP16=HEAP16=new Int16Array(buffer),Module.HEAP32=HEAP32=new Int32Array(buffer),Module.HEAPU8=HEAPU8=new Uint8Array(buffer),Module.HEAPU16=HEAPU16=new Uint16Array(buffer),Module.HEAPU32=HEAPU32=new Uint32Array(buffer),Module.HEAPF32=HEAPF32=new Float32Array(buffer),Module.HEAPF64=HEAPF64=new Float64Array(buffer)}var STATIC_BASE,STATICTOP,staticSealed,STACK_BASE,STACKTOP,STACK_MAX,DYNAMIC_BASE,DYNAMICTOP_PTR;STATIC_BASE=STATICTOP=STACK_BASE=STACKTOP=STACK_MAX=DYNAMIC_BASE=DYNAMICTOP_PTR=0,staticSealed=!1;function abortOnCannotGrowMemory(){abort("Cannot enlarge memory arrays. Either (1) compile with -s TOTAL_MEMORY=X with X higher than the current value "+TOTAL_MEMORY+", (2) compile with -s ALLOW_MEMORY_GROWTH=1 which allows increasing the size at runtime but prevents some optimizations, (3) set Module.TOTAL_MEMORY to a higher value before the program runs, or (4) if you want malloc to return NULL (0) instead of this abort, compile with -s ABORTING_MALLOC=0 ")}function enlargeMemory(){abortOnCannotGrowMemory()}var TOTAL_STACK=Module.TOTAL_STACK||5242880,TOTAL_MEMORY=Module.TOTAL_MEMORY||134217728;TOTAL_MEMORY0;){var u=i.shift();if(typeof u=="function"){u();continue}var f=u.func;typeof f=="number"?u.arg===void 0?Module.dynCall_v(f):Module.dynCall_vi(f,u.arg):f(u.arg===void 0?null:u.arg)}}var __ATPRERUN__=[],__ATINIT__=[],__ATMAIN__=[],__ATEXIT__=[],__ATPOSTRUN__=[],runtimeInitialized=!1,runtimeExited=!1;function preRun(){if(Module.preRun)for(typeof Module.preRun=="function"&&(Module.preRun=[Module.preRun]);Module.preRun.length;)addOnPreRun(Module.preRun.shift());callRuntimeCallbacks(__ATPRERUN__)}function ensureInitRuntime(){runtimeInitialized||(runtimeInitialized=!0,callRuntimeCallbacks(__ATINIT__))}function preMain(){callRuntimeCallbacks(__ATMAIN__)}function exitRuntime(){callRuntimeCallbacks(__ATEXIT__),runtimeExited=!0}function postRun(){if(Module.postRun)for(typeof Module.postRun=="function"&&(Module.postRun=[Module.postRun]);Module.postRun.length;)addOnPostRun(Module.postRun.shift());callRuntimeCallbacks(__ATPOSTRUN__)}function addOnPreRun(i){__ATPRERUN__.unshift(i)}Module.addOnPreRun=addOnPreRun;function addOnInit(i){__ATINIT__.unshift(i)}Module.addOnInit=addOnInit;function addOnPreMain(i){__ATMAIN__.unshift(i)}Module.addOnPreMain=addOnPreMain;function addOnExit(i){__ATEXIT__.unshift(i)}Module.addOnExit=addOnExit;function addOnPostRun(i){__ATPOSTRUN__.unshift(i)}Module.addOnPostRun=addOnPostRun;function intArrayFromString(i,u,f){var c=f>0?f:lengthBytesUTF8(i)+1,g=new Array(c),t=stringToUTF8Array(i,g,0,g.length);return u&&(g.length=t),g}Module.intArrayFromString=intArrayFromString;function intArrayToString(i){for(var u=[],f=0;f255&&(c&=255),u.push(String.fromCharCode(c))}return u.join("")}Module.intArrayToString=intArrayToString;function writeStringToMemory(i,u,f){Runtime.warnOnce("writeStringToMemory is deprecated and should not be called! Use stringToUTF8() instead!");var c,g;f&&(g=u+lengthBytesUTF8(i),c=HEAP8[g]),stringToUTF8(i,u,Infinity),f&&(HEAP8[g]=c)}Module.writeStringToMemory=writeStringToMemory;function writeArrayToMemory(i,u){HEAP8.set(i,u)}Module.writeArrayToMemory=writeArrayToMemory;function writeAsciiToMemory(i,u,f){for(var c=0;c>0]=i.charCodeAt(c);f||(HEAP8[u>>0]=0)}if(Module.writeAsciiToMemory=writeAsciiToMemory,(!Math.imul||Math.imul(4294967295,5)!==-5)&&(Math.imul=function(u,f){var c=u>>>16,g=u&65535,t=f>>>16,C=f&65535;return g*C+(c*C+g*t<<16)|0}),Math.imul=Math.imul,!Math.fround){var froundBuffer=new Float32Array(1);Math.fround=function(i){return froundBuffer[0]=i,froundBuffer[0]}}Math.fround=Math.fround,Math.clz32||(Math.clz32=function(i){i=i>>>0;for(var u=0;u<32;u++)if(i&1<<31-u)return u;return 32}),Math.clz32=Math.clz32,Math.trunc||(Math.trunc=function(i){return i<0?Math.ceil(i):Math.floor(i)}),Math.trunc=Math.trunc;var Math_abs=Math.abs,Math_cos=Math.cos,Math_sin=Math.sin,Math_tan=Math.tan,Math_acos=Math.acos,Math_asin=Math.asin,Math_atan=Math.atan,Math_atan2=Math.atan2,Math_exp=Math.exp,Math_log=Math.log,Math_sqrt=Math.sqrt,Math_ceil=Math.ceil,Math_floor=Math.floor,Math_pow=Math.pow,Math_imul=Math.imul,Math_fround=Math.fround,Math_round=Math.round,Math_min=Math.min,Math_clz32=Math.clz32,Math_trunc=Math.trunc,runDependencies=0,runDependencyWatcher=null,dependenciesFulfilled=null;function getUniqueRunDependency(i){return i}function addRunDependency(i){runDependencies++,Module.monitorRunDependencies&&Module.monitorRunDependencies(runDependencies)}Module.addRunDependency=addRunDependency;function removeRunDependency(i){if(runDependencies--,Module.monitorRunDependencies&&Module.monitorRunDependencies(runDependencies),runDependencies==0&&(runDependencyWatcher!==null&&(clearInterval(runDependencyWatcher),runDependencyWatcher=null),dependenciesFulfilled)){var u=dependenciesFulfilled;dependenciesFulfilled=null,u()}}Module.removeRunDependency=removeRunDependency,Module.preloadedImages={},Module.preloadedAudios={};var ASM_CONSTS=[function(i,u,f,c,g,t,C,A){return _nbind.callbackSignatureList[i].apply(this,arguments)}];function _emscripten_asm_const_iiiiiiii(i,u,f,c,g,t,C,A){return ASM_CONSTS[i](u,f,c,g,t,C,A)}function _emscripten_asm_const_iiiii(i,u,f,c,g){return ASM_CONSTS[i](u,f,c,g)}function _emscripten_asm_const_iiidddddd(i,u,f,c,g,t,C,A,x){return ASM_CONSTS[i](u,f,c,g,t,C,A,x)}function _emscripten_asm_const_iiididi(i,u,f,c,g,t,C){return ASM_CONSTS[i](u,f,c,g,t,C)}function _emscripten_asm_const_iiii(i,u,f,c){return ASM_CONSTS[i](u,f,c)}function _emscripten_asm_const_iiiid(i,u,f,c,g){return ASM_CONSTS[i](u,f,c,g)}function _emscripten_asm_const_iiiiii(i,u,f,c,g,t){return ASM_CONSTS[i](u,f,c,g,t)}STATIC_BASE=Runtime.GLOBAL_BASE,STATICTOP=STATIC_BASE+12800,__ATINIT__.push({func:function(){__GLOBAL__sub_I_Yoga_cpp()}},{func:function(){__GLOBAL__sub_I_nbind_cc()}},{func:function(){__GLOBAL__sub_I_common_cc()}},{func:function(){__GLOBAL__sub_I_Binding_cc()}}),allocate([0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,192,127,0,0,192,127,0,0,192,127,0,0,192,127,3,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,3,0,0,0,0,0,192,127,3,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,192,127,0,0,192,127,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,192,127,0,0,0,0,0,0,0,0,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,192,127,0,0,192,127,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,255,0,0,128,191,0,0,128,191,0,0,192,127,0,0,0,0,0,0,0,0,0,0,128,63,1,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,3,0,0,0,1,0,0,0,2,0,0,0,0,0,0,0,190,12,0,0,200,12,0,0,208,12,0,0,216,12,0,0,230,12,0,0,242,12,0,0,1,0,0,0,3,0,0,0,0,0,0,0,2,0,0,0,0,0,192,127,3,0,0,0,180,45,0,0,181,45,0,0,182,45,0,0,181,45,0,0,182,45,0,0,0,0,0,0,0,0,0,0,1,0,0,0,2,0,0,0,3,0,0,0,1,0,0,0,4,0,0,0,183,45,0,0,181,45,0,0,181,45,0,0,181,45,0,0,181,45,0,0,181,45,0,0,181,45,0,0,184,45,0,0,185,45,0,0,181,45,0,0,181,45,0,0,182,45,0,0,186,45,0,0,185,45,0,0,148,4,0,0,3,0,0,0,187,45,0,0,164,4,0,0,188,45,0,0,2,0,0,0,189,45,0,0,164,4,0,0,188,45,0,0,185,45,0,0,164,4,0,0,185,45,0,0,164,4,0,0,188,45,0,0,181,45,0,0,182,45,0,0,181,45,0,0,0,0,0,0,0,0,0,0,1,0,0,0,5,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,183,45,0,0,182,45,0,0,181,45,0,0,190,45,0,0,190,45,0,0,182,45,0,0,182,45,0,0,185,45,0,0,181,45,0,0,185,45,0,0,182,45,0,0,181,45,0,0,185,45,0,0,182,45,0,0,185,45,0,0,48,5,0,0,3,0,0,0,56,5,0,0,1,0,0,0,189,45,0,0,185,45,0,0,164,4,0,0,76,5,0,0,2,0,0,0,191,45,0,0,186,45,0,0,182,45,0,0,185,45,0,0,192,45,0,0,185,45,0,0,182,45,0,0,186,45,0,0,185,45,0,0,76,5,0,0,76,5,0,0,136,5,0,0,182,45,0,0,181,45,0,0,2,0,0,0,190,45,0,0,136,5,0,0,56,19,0,0,156,5,0,0,2,0,0,0,184,45,0,0,0,0,0,0,0,0,0,0,1,0,0,0,8,0,0,0,9,0,0,0,1,0,0,0,10,0,0,0,204,5,0,0,181,45,0,0,181,45,0,0,2,0,0,0,180,45,0,0,204,5,0,0,2,0,0,0,195,45,0,0,236,5,0,0,97,19,0,0,198,45,0,0,211,45,0,0,212,45,0,0,213,45,0,0,214,45,0,0,215,45,0,0,188,45,0,0,182,45,0,0,216,45,0,0,217,45,0,0,218,45,0,0,219,45,0,0,192,45,0,0,181,45,0,0,0,0,0,0,185,45,0,0,110,19,0,0,186,45,0,0,115,19,0,0,221,45,0,0,120,19,0,0,148,4,0,0,132,19,0,0,96,6,0,0,145,19,0,0,222,45,0,0,164,19,0,0,223,45,0,0,173,19,0,0,0,0,0,0,3,0,0,0,104,6,0,0,1,0,0,0,187,45,0,0,0,0,0,0,0,0,0,0,1,0,0,0,11,0,0,0,12,0,0,0,1,0,0,0,13,0,0,0,185,45,0,0,224,45,0,0,164,6,0,0,188,45,0,0,172,6,0,0,180,6,0,0,2,0,0,0,188,6,0,0,7,0,0,0,224,45,0,0,7,0,0,0,164,6,0,0,1,0,0,0,213,45,0,0,185,45,0,0,224,45,0,0,172,6,0,0,185,45,0,0,224,45,0,0,164,6,0,0,185,45,0,0,224,45,0,0,211,45,0,0,211,45,0,0,222,45,0,0,211,45,0,0,224,45,0,0,222,45,0,0,211,45,0,0,224,45,0,0,172,6,0,0,222,45,0,0,211,45,0,0,224,45,0,0,188,45,0,0,222,45,0,0,211,45,0,0,40,7,0,0,188,45,0,0,2,0,0,0,224,45,0,0,185,45,0,0,188,45,0,0,188,45,0,0,188,45,0,0,188,45,0,0,222,45,0,0,224,45,0,0,148,4,0,0,185,45,0,0,148,4,0,0,148,4,0,0,148,4,0,0,148,4,0,0,148,4,0,0,185,45,0,0,164,6,0,0,148,4,0,0,0,0,0,0,0,0,0,0,1,0,0,0,14,0,0,0,15,0,0,0,1,0,0,0,16,0,0,0,148,7,0,0,2,0,0,0,225,45,0,0,183,45,0,0,188,45,0,0,168,7,0,0,5,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,2,0,0,0,234,45,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,148,45,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,28,9,0,0,5,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,0,0,0,2,0,0,0,242,45,0,0,0,4,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,10,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,67,111,117,108,100,32,110,111,116,32,97,108,108,111,99,97,116,101,32,109,101,109,111,114,121,32,102,111,114,32,110,111,100,101,0,67,97,110,110,111,116,32,114,101,115,101,116,32,97,32,110,111,100,101,32,119,104,105,99,104,32,115,116,105,108,108,32,104,97,115,32,99,104,105,108,100,114,101,110,32,97,116,116,97,99,104,101,100,0,67,97,110,110,111,116,32,114,101,115,101,116,32,97,32,110,111,100,101,32,115,116,105,108,108,32,97,116,116,97,99,104,101,100,32,116,111,32,97,32,112,97,114,101,110,116,0,67,111,117,108,100,32,110,111,116,32,97,108,108,111,99,97,116,101,32,109,101,109,111,114,121,32,102,111,114,32,99,111,110,102,105,103,0,67,97,110,110,111,116,32,115,101,116,32,109,101,97,115,117,114,101,32,102,117,110,99,116,105,111,110,58,32,78,111,100,101,115,32,119,105,116,104,32,109,101,97,115,117,114,101,32,102,117,110,99,116,105,111,110,115,32,99,97,110,110,111,116,32,104,97,118,101,32,99,104,105,108,100,114,101,110,46,0,67,104,105,108,100,32,97,108,114,101,97,100,121,32,104,97,115,32,97,32,112,97,114,101,110,116,44,32,105,116,32,109,117,115,116,32,98,101,32,114,101,109,111,118,101,100,32,102,105,114,115,116,46,0,67,97,110,110,111,116,32,97,100,100,32,99,104,105,108,100,58,32,78,111,100,101,115,32,119,105,116,104,32,109,101,97,115,117,114,101,32,102,117,110,99,116,105,111,110,115,32,99,97,110,110,111,116,32,104,97,118,101,32,99,104,105,108,100,114,101,110,46,0,79,110,108,121,32,108,101,97,102,32,110,111,100,101,115,32,119,105,116,104,32,99,117,115,116,111,109,32,109,101,97,115,117,114,101,32,102,117,110,99,116,105,111,110,115,115,104,111,117,108,100,32,109,97,110,117,97,108,108,121,32,109,97,114,107,32,116,104,101,109,115,101,108,118,101,115,32,97,115,32,100,105,114,116,121,0,67,97,110,110,111,116,32,103,101,116,32,108,97,121,111,117,116,32,112,114,111,112,101,114,116,105,101,115,32,111,102,32,109,117,108,116,105,45,101,100,103,101,32,115,104,111,114,116,104,97,110,100,115,0,37,115,37,100,46,123,91,115,107,105,112,112,101,100,93,32,0,119,109,58,32,37,115,44,32,104,109,58,32,37,115,44,32,97,119,58,32,37,102,32,97,104,58,32,37,102,32,61,62,32,100,58,32,40,37,102,44,32,37,102,41,32,37,115,10,0,37,115,37,100,46,123,37,115,0,42,0,119,109,58,32,37,115,44,32,104,109,58,32,37,115,44,32,97,119,58,32,37,102,32,97,104,58,32,37,102,32,37,115,10,0,37,115,37,100,46,125,37,115,0,119,109,58,32,37,115,44,32,104,109,58,32,37,115,44,32,100,58,32,40,37,102,44,32,37,102,41,32,37,115,10,0,79,117,116,32,111,102,32,99,97,99,104,101,32,101,110,116,114,105,101,115,33,10,0,83,99,97,108,101,32,102,97,99,116,111,114,32,115,104,111,117,108,100,32,110,111,116,32,98,101,32,108,101,115,115,32,116,104,97,110,32,122,101,114,111,0,105,110,105,116,105,97,108,0,37,115,10,0,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,0,85,78,68,69,70,73,78,69,68,0,69,88,65,67,84,76,89,0,65,84,95,77,79,83,84,0,76,65,89,95,85,78,68,69,70,73,78,69,68,0,76,65,89,95,69,88,65,67,84,76,89,0,76,65,89,95,65,84,95,77,79,83,84,0,97,118,97,105,108,97,98,108,101,87,105,100,116,104,32,105,115,32,105,110,100,101,102,105,110,105,116,101,32,115,111,32,119,105,100,116,104,77,101,97,115,117,114,101,77,111,100,101,32,109,117,115,116,32,98,101,32,89,71,77,101,97,115,117,114,101,77,111,100,101,85,110,100,101,102,105,110,101,100,0,97,118,97,105,108,97,98,108,101,72,101,105,103,104,116,32,105,115,32,105,110,100,101,102,105,110,105,116,101,32,115,111,32,104,101,105,103,104,116,77,101,97,115,117,114,101,77,111,100,101,32,109,117,115,116,32,98,101,32,89,71,77,101,97,115,117,114,101,77,111,100,101,85,110,100,101,102,105,110,101,100,0,102,108,101,120,0,115,116,114,101,116,99,104,0,109,117,108,116,105,108,105,110,101,45,115,116,114,101,116,99,104,0,69,120,112,101,99,116,101,100,32,110,111,100,101,32,116,111,32,104,97,118,101,32,99,117,115,116,111,109,32,109,101,97,115,117,114,101,32,102,117,110,99,116,105,111,110,0,109,101,97,115,117,114,101,0,69,120,112,101,99,116,32,99,117,115,116,111,109,32,98,97,115,101,108,105,110,101,32,102,117,110,99,116,105,111,110,32,116,111,32,110,111,116,32,114,101,116,117,114,110,32,78,97,78,0,97,98,115,45,109,101,97,115,117,114,101,0,97,98,115,45,108,97,121,111,117,116,0,78,111,100,101,0,99,114,101,97,116,101,68,101,102,97,117,108,116,0,99,114,101,97,116,101,87,105,116,104,67,111,110,102,105,103,0,100,101,115,116,114,111,121,0,114,101,115,101,116,0,99,111,112,121,83,116,121,108,101,0,115,101,116,80,111,115,105,116,105,111,110,84,121,112,101,0,115,101,116,80,111,115,105,116,105,111,110,0,115,101,116,80,111,115,105,116,105,111,110,80,101,114,99,101,110,116,0,115,101,116,65,108,105,103,110,67,111,110,116,101,110,116,0,115,101,116,65,108,105,103,110,73,116,101,109,115,0,115,101,116,65,108,105,103,110,83,101,108,102,0,115,101,116,70,108,101,120,68,105,114,101,99,116,105,111,110,0,115,101,116,70,108,101,120,87,114,97,112,0,115,101,116,74,117,115,116,105,102,121,67,111,110,116,101,110,116,0,115,101,116,77,97,114,103,105,110,0,115,101,116,77,97,114,103,105,110,80,101,114,99,101,110,116,0,115,101,116,77,97,114,103,105,110,65,117,116,111,0,115,101,116,79,118,101,114,102,108,111,119,0,115,101,116,68,105,115,112,108,97,121,0,115,101,116,70,108,101,120,0,115,101,116,70,108,101,120,66,97,115,105,115,0,115,101,116,70,108,101,120,66,97,115,105,115,80,101,114,99,101,110,116,0,115,101,116,70,108,101,120,71,114,111,119,0,115,101,116,70,108,101,120,83,104,114,105,110,107,0,115,101,116,87,105,100,116,104,0,115,101,116,87,105,100,116,104,80,101,114,99,101,110,116,0,115,101,116,87,105,100,116,104,65,117,116,111,0,115,101,116,72,101,105,103,104,116,0,115,101,116,72,101,105,103,104,116,80,101,114,99,101,110,116,0,115,101,116,72,101,105,103,104,116,65,117,116,111,0,115,101,116,77,105,110,87,105,100,116,104,0,115,101,116,77,105,110,87,105,100,116,104,80,101,114,99,101,110,116,0,115,101,116,77,105,110,72,101,105,103,104,116,0,115,101,116,77,105,110,72,101,105,103,104,116,80,101,114,99,101,110,116,0,115,101,116,77,97,120,87,105,100,116,104,0,115,101,116,77,97,120,87,105,100,116,104,80,101,114,99,101,110,116,0,115,101,116,77,97,120,72,101,105,103,104,116,0,115,101,116,77,97,120,72,101,105,103,104,116,80,101,114,99,101,110,116,0,115,101,116,65,115,112,101,99,116,82,97,116,105,111,0,115,101,116,66,111,114,100,101,114,0,115,101,116,80,97,100,100,105,110,103,0,115,101,116,80,97,100,100,105,110,103,80,101,114,99,101,110,116,0,103,101,116,80,111,115,105,116,105,111,110,84,121,112,101,0,103,101,116,80,111,115,105,116,105,111,110,0,103,101,116,65,108,105,103,110,67,111,110,116,101,110,116,0,103,101,116,65,108,105,103,110,73,116,101,109,115,0,103,101,116,65,108,105,103,110,83,101,108,102,0,103,101,116,70,108,101,120,68,105,114,101,99,116,105,111,110,0,103,101,116,70,108,101,120,87,114,97,112,0,103,101,116,74,117,115,116,105,102,121,67,111,110,116,101,110,116,0,103,101,116,77,97,114,103,105,110,0,103,101,116,70,108,101,120,66,97,115,105,115,0,103,101,116,70,108,101,120,71,114,111,119,0,103,101,116,70,108,101,120,83,104,114,105,110,107,0,103,101,116,87,105,100,116,104,0,103,101,116,72,101,105,103,104,116,0,103,101,116,77,105,110,87,105,100,116,104,0,103,101,116,77,105,110,72,101,105,103,104,116,0,103,101,116,77,97,120,87,105,100,116,104,0,103,101,116,77,97,120,72,101,105,103,104,116,0,103,101,116,65,115,112,101,99,116,82,97,116,105,111,0,103,101,116,66,111,114,100,101,114,0,103,101,116,79,118,101,114,102,108,111,119,0,103,101,116,68,105,115,112,108,97,121,0,103,101,116,80,97,100,100,105,110,103,0,105,110,115,101,114,116,67,104,105,108,100,0,114,101,109,111,118,101,67,104,105,108,100,0,103,101,116,67,104,105,108,100,67,111,117,110,116,0,103,101,116,80,97,114,101,110,116,0,103,101,116,67,104,105,108,100,0,115,101,116,77,101,97,115,117,114,101,70,117,110,99,0,117,110,115,101,116,77,101,97,115,117,114,101,70,117,110,99,0,109,97,114,107,68,105,114,116,121,0,105,115,68,105,114,116,121,0,99,97,108,99,117,108,97,116,101,76,97,121,111,117,116,0,103,101,116,67,111,109,112,117,116,101,100,76,101,102,116,0,103,101,116,67,111,109,112,117,116,101,100,82,105,103,104,116,0,103,101,116,67,111,109,112,117,116,101,100,84,111,112,0,103,101,116,67,111,109,112,117,116,101,100,66,111,116,116,111,109,0,103,101,116,67,111,109,112,117,116,101,100,87,105,100,116,104,0,103,101,116,67,111,109,112,117,116,101,100,72,101,105,103,104,116,0,103,101,116,67,111,109,112,117,116,101,100,76,97,121,111,117,116,0,103,101,116,67,111,109,112,117,116,101,100,77,97,114,103,105,110,0,103,101,116,67,111,109,112,117,116,101,100,66,111,114,100,101,114,0,103,101,116,67,111,109,112,117,116,101,100,80,97,100,100,105,110,103,0,67,111,110,102,105,103,0,99,114,101,97,116,101,0,115,101,116,69,120,112,101,114,105,109,101,110,116,97,108,70,101,97,116,117,114,101,69,110,97,98,108,101,100,0,115,101,116,80,111,105,110,116,83,99,97,108,101,70,97,99,116,111,114,0,105,115,69,120,112,101,114,105,109,101,110,116,97,108,70,101,97,116,117,114,101,69,110,97,98,108,101,100,0,86,97,108,117,101,0,76,97,121,111,117,116,0,83,105,122,101,0,103,101,116,73,110,115,116,97,110,99,101,67,111,117,110,116,0,73,110,116,54,52,0,1,1,1,2,2,4,4,4,4,8,8,4,8,118,111,105,100,0,98,111,111,108,0,115,116,100,58,58,115,116,114,105,110,103,0,99,98,70,117,110,99,116,105,111,110,32,38,0,99,111,110,115,116,32,99,98,70,117,110,99,116,105,111,110,32,38,0,69,120,116,101,114,110,97,108,0,66,117,102,102,101,114,0,78,66,105,110,100,73,68,0,78,66,105,110,100,0,98,105,110,100,95,118,97,108,117,101,0,114,101,102,108,101,99,116,0,113,117,101,114,121,84,121,112,101,0,108,97,108,108,111,99,0,108,114,101,115,101,116,0,123,114,101,116,117,114,110,40,95,110,98,105,110,100,46,99,97,108,108,98,97,99,107,83,105,103,110,97,116,117,114,101,76,105,115,116,91,36,48,93,46,97,112,112,108,121,40,116,104,105,115,44,97,114,103,117,109,101,110,116,115,41,41,59,125,0,95,110,98,105,110,100,95,110,101,119,0,17,0,10,0,17,17,17,0,0,0,0,5,0,0,0,0,0,0,9,0,0,0,0,11,0,0,0,0,0,0,0,0,17,0,15,10,17,17,17,3,10,7,0,1,19,9,11,11,0,0,9,6,11,0,0,11,0,6,17,0,0,0,17,17,17,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,11,0,0,0,0,0,0,0,0,17,0,10,10,17,17,17,0,10,0,0,2,0,9,11,0,0,0,9,0,11,0,0,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,12,0,0,0,0,9,12,0,0,0,0,0,12,0,0,12,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,14,0,0,0,0,0,0,0,0,0,0,0,13,0,0,0,4,13,0,0,0,0,9,14,0,0,0,0,0,14,0,0,14,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,0,0,0,0,15,0,0,0,0,15,0,0,0,0,9,16,0,0,0,0,0,16,0,0,16,0,0,18,0,0,0,18,18,18,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,18,0,0,0,18,18,18,0,0,0,0,0,0,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,11,0,0,0,0,0,0,0,0,0,0,0,10,0,0,0,0,10,0,0,0,0,9,11,0,0,0,0,0,11,0,0,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,12,0,0,0,0,9,12,0,0,0,0,0,12,0,0,12,0,0,45,43,32,32,32,48,88,48,120,0,40,110,117,108,108,41,0,45,48,88,43,48,88,32,48,88,45,48,120,43,48,120,32,48,120,0,105,110,102,0,73,78,70,0,110,97,110,0,78,65,78,0,48,49,50,51,52,53,54,55,56,57,65,66,67,68,69,70,46,0,84,33,34,25,13,1,2,3,17,75,28,12,16,4,11,29,18,30,39,104,110,111,112,113,98,32,5,6,15,19,20,21,26,8,22,7,40,36,23,24,9,10,14,27,31,37,35,131,130,125,38,42,43,60,61,62,63,67,71,74,77,88,89,90,91,92,93,94,95,96,97,99,100,101,102,103,105,106,107,108,114,115,116,121,122,123,124,0,73,108,108,101,103,97,108,32,98,121,116,101,32,115,101,113,117,101,110,99,101,0,68,111,109,97,105,110,32,101,114,114,111,114,0,82,101,115,117,108,116,32,110,111,116,32,114,101,112,114,101,115,101,110,116,97,98,108,101,0,78,111,116,32,97,32,116,116,121,0,80,101,114,109,105,115,115,105,111,110,32,100,101,110,105,101,100,0,79,112,101,114,97,116,105,111,110,32,110,111,116,32,112,101,114,109,105,116,116,101,100,0,78,111,32,115,117,99,104,32,102,105,108,101,32,111,114,32,100,105,114,101,99,116,111,114,121,0,78,111,32,115,117,99,104,32,112,114,111,99,101,115,115,0,70,105,108,101,32,101,120,105,115,116,115,0,86,97,108,117,101,32,116,111,111,32,108,97,114,103,101,32,102,111,114,32,100,97,116,97,32,116,121,112,101,0,78,111,32,115,112,97,99,101,32,108,101,102,116,32,111,110,32,100,101,118,105,99,101,0,79,117,116,32,111,102,32,109,101,109,111,114,121,0,82,101,115,111,117,114,99,101,32,98,117,115,121,0,73,110,116,101,114,114,117,112,116,101,100,32,115,121,115,116,101,109,32,99,97,108,108,0,82,101,115,111,117,114,99,101,32,116,101,109,112,111,114,97,114,105,108,121,32,117,110,97,118,97,105,108,97,98,108,101,0,73,110,118,97,108,105,100,32,115,101,101,107,0,67,114,111,115,115,45,100,101,118,105,99,101,32,108,105,110,107,0,82,101,97,100,45,111,110,108,121,32,102,105,108,101,32,115,121,115,116,101,109,0,68,105,114,101,99,116,111,114,121,32,110,111,116,32,101,109,112,116,121,0,67,111,110,110,101,99,116,105,111,110,32,114,101,115,101,116,32,98,121,32,112,101,101,114,0,79,112,101,114,97,116,105,111,110,32,116,105,109,101,100,32,111,117,116,0,67,111,110,110,101,99,116,105,111,110,32,114,101,102,117,115,101,100,0,72,111,115,116,32,105,115,32,100,111,119,110,0,72,111,115,116,32,105,115,32,117,110,114,101,97,99,104,97,98,108,101,0,65,100,100,114,101,115,115,32,105,110,32,117,115,101,0,66,114,111,107,101,110,32,112,105,112,101,0,73,47,79,32,101,114,114,111,114,0,78,111,32,115,117,99,104,32,100,101,118,105,99,101,32,111,114,32,97,100,100,114,101,115,115,0,66,108,111,99,107,32,100,101,118,105,99,101,32,114,101,113,117,105,114,101,100,0,78,111,32,115,117,99,104,32,100,101,118,105,99,101,0,78,111,116,32,97,32,100,105,114,101,99,116,111,114,121,0,73,115,32,97,32,100,105,114,101,99,116,111,114,121,0,84,101,120,116,32,102,105,108,101,32,98,117,115,121,0,69,120,101,99,32,102,111,114,109,97,116,32,101,114,114,111,114,0,73,110,118,97,108,105,100,32,97,114,103,117,109,101,110,116,0,65,114,103,117,109,101,110,116,32,108,105,115,116,32,116,111,111,32,108,111,110,103,0,83,121,109,98,111,108,105,99,32,108,105,110,107,32,108,111,111,112,0,70,105,108,101,110,97,109,101,32,116,111,111,32,108,111,110,103,0,84,111,111,32,109,97,110,121,32,111,112,101,110,32,102,105,108,101,115,32,105,110,32,115,121,115,116,101,109,0,78,111,32,102,105,108,101,32,100,101,115,99,114,105,112,116,111,114,115,32,97,118,97,105,108,97,98,108,101,0,66,97,100,32,102,105,108,101,32,100,101,115,99,114,105,112,116,111,114,0,78,111,32,99,104,105,108,100,32,112,114,111,99,101,115,115,0,66,97,100,32,97,100,100,114,101,115,115,0,70,105,108,101,32,116,111,111,32,108,97,114,103,101,0,84,111,111,32,109,97,110,121,32,108,105,110,107,115,0,78,111,32,108,111,99,107,115,32,97,118,97,105,108,97,98,108,101,0,82,101,115,111,117,114,99,101,32,100,101,97,100,108,111,99,107,32,119,111,117,108,100,32,111,99,99,117,114,0,83,116,97,116,101,32,110,111,116,32,114,101,99,111,118,101,114,97,98,108,101,0,80,114,101,118,105,111,117,115,32,111,119,110,101,114,32,100,105,101,100,0,79,112,101,114,97,116,105,111,110,32,99,97,110,99,101,108,101,100,0,70,117,110,99,116,105,111,110,32,110,111,116,32,105,109,112,108,101,109,101,110,116,101,100,0,78,111,32,109,101,115,115,97,103,101,32,111,102,32,100,101,115,105,114,101,100,32,116,121,112,101,0,73,100,101,110,116,105,102,105,101,114,32,114,101,109,111,118,101,100,0,68,101,118,105,99,101,32,110,111,116,32,97,32,115,116,114,101,97,109,0,78,111,32,100,97,116,97,32,97,118,97,105,108,97,98,108,101,0,68,101,118,105,99,101,32,116,105,109,101,111,117,116,0,79,117,116,32,111,102,32,115,116,114,101,97,109,115,32,114,101,115,111,117,114,99,101,115,0,76,105,110,107,32,104,97,115,32,98,101,101,110,32,115,101,118,101,114,101,100,0,80,114,111,116,111,99,111,108,32,101,114,114,111,114,0,66,97,100,32,109,101,115,115,97,103,101,0,70,105,108,101,32,100,101,115,99,114,105,112,116,111,114,32,105,110,32,98,97,100,32,115,116,97,116,101,0,78,111,116,32,97,32,115,111,99,107,101,116,0,68,101,115,116,105,110,97,116,105,111,110,32,97,100,100,114,101,115,115,32,114,101,113,117,105,114,101,100,0,77,101,115,115,97,103,101,32,116,111,111,32,108,97,114,103,101,0,80,114,111,116,111,99,111,108,32,119,114,111,110,103,32,116,121,112,101,32,102,111,114,32,115,111,99,107,101,116,0,80,114,111,116,111,99,111,108,32,110,111,116,32,97,118,97,105,108,97,98,108,101,0,80,114,111,116,111,99,111,108,32,110,111,116,32,115,117,112,112,111,114,116,101,100,0,83,111,99,107,101,116,32,116,121,112,101,32,110,111,116,32,115,117,112,112,111,114,116,101,100,0,78,111,116,32,115,117,112,112,111,114,116,101,100,0,80,114,111,116,111,99,111,108,32,102,97,109,105,108,121,32,110,111,116,32,115,117,112,112,111,114,116,101,100,0,65,100,100,114,101,115,115,32,102,97,109,105,108,121,32,110,111,116,32,115,117,112,112,111,114,116,101,100,32,98,121,32,112,114,111,116,111,99,111,108,0,65,100,100,114,101,115,115,32,110,111,116,32,97,118,97,105,108,97,98,108,101,0,78,101,116,119,111,114,107,32,105,115,32,100,111,119,110,0,78,101,116,119,111,114,107,32,117,110,114,101,97,99,104,97,98,108,101,0,67,111,110,110,101,99,116,105,111,110,32,114,101,115,101,116,32,98,121,32,110,101,116,119,111,114,107,0,67,111,110,110,101,99,116,105,111,110,32,97,98,111,114,116,101,100,0,78,111,32,98,117,102,102,101,114,32,115,112,97,99,101,32,97,118,97,105,108,97,98,108,101,0,83,111,99,107,101,116,32,105,115,32,99,111,110,110,101,99,116,101,100,0,83,111,99,107,101,116,32,110,111,116,32,99,111,110,110,101,99,116,101,100,0,67,97,110,110,111,116,32,115,101,110,100,32,97,102,116,101,114,32,115,111,99,107,101,116,32,115,104,117,116,100,111,119,110,0,79,112,101,114,97,116,105,111,110,32,97,108,114,101,97,100,121,32,105,110,32,112,114,111,103,114,101,115,115,0,79,112,101,114,97,116,105,111,110,32,105,110,32,112,114,111,103,114,101,115,115,0,83,116,97,108,101,32,102,105,108,101,32,104,97,110,100,108,101,0,82,101,109,111,116,101,32,73,47,79,32,101,114,114,111,114,0,81,117,111,116,97,32,101,120,99,101,101,100,101,100,0,78,111,32,109,101,100,105,117,109,32,102,111,117,110,100,0,87,114,111,110,103,32,109,101,100,105,117,109,32,116,121,112,101,0,78,111,32,101,114,114,111,114,32,105,110,102,111,114,109,97,116,105,111,110,0,0],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE);var tempDoublePtr=STATICTOP;STATICTOP+=16;function _atexit(i,u){__ATEXIT__.unshift({func:i,arg:u})}function ___cxa_atexit(){return _atexit.apply(null,arguments)}function _abort(){Module.abort()}function __ZN8facebook4yoga14YGNodeToStringEPNSt3__212basic_stringIcNS1_11char_traitsIcEENS1_9allocatorIcEEEEP6YGNode14YGPrintOptionsj(){Module.printErr("missing function: _ZN8facebook4yoga14YGNodeToStringEPNSt3__212basic_stringIcNS1_11char_traitsIcEENS1_9allocatorIcEEEEP6YGNode14YGPrintOptionsj"),abort(-1)}function __decorate(i,u,f,c){var g=arguments.length,t=g<3?u:c===null?c=Object.getOwnPropertyDescriptor(u,f):c,C;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")t=Reflect.decorate(i,u,f,c);else for(var A=i.length-1;A>=0;A--)(C=i[A])&&(t=(g<3?C(t):g>3?C(u,f,t):C(u,f))||t);return g>3&&t&&Object.defineProperty(u,f,t),t}function _defineHidden(i){return function(u,f){Object.defineProperty(u,f,{configurable:!1,enumerable:!1,value:i,writable:!0})}}var _nbind={};function __nbind_free_external(i){_nbind.externalList[i].dereference(i)}function __nbind_reference_external(i){_nbind.externalList[i].reference()}function _llvm_stackrestore(i){var u=_llvm_stacksave,f=u.LLVM_SAVEDSTACKS[i];u.LLVM_SAVEDSTACKS.splice(i,1),Runtime.stackRestore(f)}function __nbind_register_pool(i,u,f,c){_nbind.Pool.pageSize=i,_nbind.Pool.usedPtr=u/4,_nbind.Pool.rootPtr=f,_nbind.Pool.pagePtr=c/4,HEAP32[u/4]=16909060,HEAP8[u]==1&&(_nbind.bigEndian=!0),HEAP32[u/4]=0,_nbind.makeTypeKindTbl=(t={},t[1024]=_nbind.PrimitiveType,t[64]=_nbind.Int64Type,t[2048]=_nbind.BindClass,t[3072]=_nbind.BindClassPtr,t[4096]=_nbind.SharedClassPtr,t[5120]=_nbind.ArrayType,t[6144]=_nbind.ArrayType,t[7168]=_nbind.CStringType,t[9216]=_nbind.CallbackType,t[10240]=_nbind.BindType,t),_nbind.makeTypeNameTbl={Buffer:_nbind.BufferType,External:_nbind.ExternalType,Int64:_nbind.Int64Type,_nbind_new:_nbind.CreateValueType,bool:_nbind.BooleanType,"cbFunction &":_nbind.CallbackType,"const cbFunction &":_nbind.CallbackType,"const std::string &":_nbind.StringType,"std::string":_nbind.StringType},Module.toggleLightGC=_nbind.toggleLightGC,_nbind.callUpcast=Module.dynCall_ii;var g=_nbind.makeType(_nbind.constructType,{flags:2048,id:0,name:""});g.proto=Module,_nbind.BindClass.list.push(g);var t}function _emscripten_set_main_loop_timing(i,u){if(Browser.mainLoop.timingMode=i,Browser.mainLoop.timingValue=u,!Browser.mainLoop.func)return 1;if(i==0)Browser.mainLoop.scheduler=function(){var C=Math.max(0,Browser.mainLoop.tickStartTime+u-_emscripten_get_now())|0;setTimeout(Browser.mainLoop.runner,C)},Browser.mainLoop.method="timeout";else if(i==1)Browser.mainLoop.scheduler=function(){Browser.requestAnimationFrame(Browser.mainLoop.runner)},Browser.mainLoop.method="rAF";else if(i==2){if(!window.setImmediate){let t=function(C){C.source===window&&C.data===c&&(C.stopPropagation(),f.shift()())};var g=t,f=[],c="setimmediate";window.addEventListener("message",t,!0),window.setImmediate=function(A){f.push(A),ENVIRONMENT_IS_WORKER?(Module.setImmediates===void 0&&(Module.setImmediates=[]),Module.setImmediates.push(A),window.postMessage({target:c})):window.postMessage(c,"*")}}Browser.mainLoop.scheduler=function(){window.setImmediate(Browser.mainLoop.runner)},Browser.mainLoop.method="immediate"}return 0}function _emscripten_get_now(){abort()}function _emscripten_set_main_loop(i,u,f,c,g){Module.noExitRuntime=!0,assert(!Browser.mainLoop.func,"emscripten_set_main_loop: there can only be one main loop function at once: call emscripten_cancel_main_loop to cancel the previous one before setting a new one with different parameters."),Browser.mainLoop.func=i,Browser.mainLoop.arg=c;var t;typeof c!="undefined"?t=function(){Module.dynCall_vi(i,c)}:t=function(){Module.dynCall_v(i)};var C=Browser.mainLoop.currentlyRunningMainloop;if(Browser.mainLoop.runner=function(){if(!ABORT){if(Browser.mainLoop.queue.length>0){var x=Date.now(),D=Browser.mainLoop.queue.shift();if(D.func(D.arg),Browser.mainLoop.remainingBlockers){var L=Browser.mainLoop.remainingBlockers,N=L%1==0?L-1:Math.floor(L);D.counted?Browser.mainLoop.remainingBlockers=N:(N=N+.5,Browser.mainLoop.remainingBlockers=(8*L+N)/9)}if(console.log('main loop blocker "'+D.name+'" took '+(Date.now()-x)+" ms"),Browser.mainLoop.updateStatus(),C1&&Browser.mainLoop.currentFrameNumber%Browser.mainLoop.timingValue!=0){Browser.mainLoop.scheduler();return}else Browser.mainLoop.timingMode==0&&(Browser.mainLoop.tickStartTime=_emscripten_get_now());Browser.mainLoop.method==="timeout"&&Module.ctx&&(Module.printErr("Looks like you are rendering without using requestAnimationFrame for the main loop. You should use 0 for the frame rate in emscripten_set_main_loop in order to use requestAnimationFrame, as that can greatly improve your frame rates!"),Browser.mainLoop.method=""),Browser.mainLoop.runIter(t),!(C0?_emscripten_set_main_loop_timing(0,1e3/u):_emscripten_set_main_loop_timing(1,1),Browser.mainLoop.scheduler()),f)throw"SimulateInfiniteLoop"}var Browser={mainLoop:{scheduler:null,method:"",currentlyRunningMainloop:0,func:null,arg:0,timingMode:0,timingValue:0,currentFrameNumber:0,queue:[],pause:function(){Browser.mainLoop.scheduler=null,Browser.mainLoop.currentlyRunningMainloop++},resume:function(){Browser.mainLoop.currentlyRunningMainloop++;var i=Browser.mainLoop.timingMode,u=Browser.mainLoop.timingValue,f=Browser.mainLoop.func;Browser.mainLoop.func=null,_emscripten_set_main_loop(f,0,!1,Browser.mainLoop.arg,!0),_emscripten_set_main_loop_timing(i,u),Browser.mainLoop.scheduler()},updateStatus:function(){if(Module.setStatus){var i=Module.statusMessage||"Please wait...",u=Browser.mainLoop.remainingBlockers,f=Browser.mainLoop.expectedBlockers;u?u=6;){var Le=J>>Te-6&63;Te-=6,De+=Se[Le]}return Te==2?(De+=Se[(J&3)<<4],De+=me+me):Te==4&&(De+=Se[(J&15)<<2],De+=me),De}h.src="data:audio/x-"+C.substr(-3)+";base64,"+Q(t),L(h)},h.src=$,Browser.safeSetTimeout(function(){L(h)},1e4)}else return N()},Module.preloadPlugins.push(u);function f(){Browser.pointerLock=document.pointerLockElement===Module.canvas||document.mozPointerLockElement===Module.canvas||document.webkitPointerLockElement===Module.canvas||document.msPointerLockElement===Module.canvas}var c=Module.canvas;c&&(c.requestPointerLock=c.requestPointerLock||c.mozRequestPointerLock||c.webkitRequestPointerLock||c.msRequestPointerLock||function(){},c.exitPointerLock=document.exitPointerLock||document.mozExitPointerLock||document.webkitExitPointerLock||document.msExitPointerLock||function(){},c.exitPointerLock=c.exitPointerLock.bind(document),document.addEventListener("pointerlockchange",f,!1),document.addEventListener("mozpointerlockchange",f,!1),document.addEventListener("webkitpointerlockchange",f,!1),document.addEventListener("mspointerlockchange",f,!1),Module.elementPointerLock&&c.addEventListener("click",function(g){!Browser.pointerLock&&Module.canvas.requestPointerLock&&(Module.canvas.requestPointerLock(),g.preventDefault())},!1))},createContext:function(i,u,f,c){if(u&&Module.ctx&&i==Module.canvas)return Module.ctx;var g,t;if(u){var C={antialias:!1,alpha:!1};if(c)for(var A in c)C[A]=c[A];t=GL.createContext(i,C),t&&(g=GL.getContext(t).GLctx)}else g=i.getContext("2d");return g?(f&&(u||assert(typeof GLctx=="undefined","cannot set in module if GLctx is used, but we are a non-GL context that would replace it"),Module.ctx=g,u&&GL.makeContextCurrent(t),Module.useWebGL=u,Browser.moduleContextCreatedCallbacks.forEach(function(x){x()}),Browser.init()),g):null},destroyContext:function(i,u,f){},fullscreenHandlersInstalled:!1,lockPointer:void 0,resizeCanvas:void 0,requestFullscreen:function(i,u,f){Browser.lockPointer=i,Browser.resizeCanvas=u,Browser.vrDevice=f,typeof Browser.lockPointer=="undefined"&&(Browser.lockPointer=!0),typeof Browser.resizeCanvas=="undefined"&&(Browser.resizeCanvas=!1),typeof Browser.vrDevice=="undefined"&&(Browser.vrDevice=null);var c=Module.canvas;function g(){Browser.isFullscreen=!1;var C=c.parentNode;(document.fullscreenElement||document.mozFullScreenElement||document.msFullscreenElement||document.webkitFullscreenElement||document.webkitCurrentFullScreenElement)===C?(c.exitFullscreen=document.exitFullscreen||document.cancelFullScreen||document.mozCancelFullScreen||document.msExitFullscreen||document.webkitCancelFullScreen||function(){},c.exitFullscreen=c.exitFullscreen.bind(document),Browser.lockPointer&&c.requestPointerLock(),Browser.isFullscreen=!0,Browser.resizeCanvas&&Browser.setFullscreenCanvasSize()):(C.parentNode.insertBefore(c,C),C.parentNode.removeChild(C),Browser.resizeCanvas&&Browser.setWindowedCanvasSize()),Module.onFullScreen&&Module.onFullScreen(Browser.isFullscreen),Module.onFullscreen&&Module.onFullscreen(Browser.isFullscreen),Browser.updateCanvasDimensions(c)}Browser.fullscreenHandlersInstalled||(Browser.fullscreenHandlersInstalled=!0,document.addEventListener("fullscreenchange",g,!1),document.addEventListener("mozfullscreenchange",g,!1),document.addEventListener("webkitfullscreenchange",g,!1),document.addEventListener("MSFullscreenChange",g,!1));var t=document.createElement("div");c.parentNode.insertBefore(t,c),t.appendChild(c),t.requestFullscreen=t.requestFullscreen||t.mozRequestFullScreen||t.msRequestFullscreen||(t.webkitRequestFullscreen?function(){t.webkitRequestFullscreen(Element.ALLOW_KEYBOARD_INPUT)}:null)||(t.webkitRequestFullScreen?function(){t.webkitRequestFullScreen(Element.ALLOW_KEYBOARD_INPUT)}:null),f?t.requestFullscreen({vrDisplay:f}):t.requestFullscreen()},requestFullScreen:function(i,u,f){return Module.printErr("Browser.requestFullScreen() is deprecated. Please call Browser.requestFullscreen instead."),Browser.requestFullScreen=function(c,g,t){return Browser.requestFullscreen(c,g,t)},Browser.requestFullscreen(i,u,f)},nextRAF:0,fakeRequestAnimationFrame:function(i){var u=Date.now();if(Browser.nextRAF===0)Browser.nextRAF=u+1e3/60;else for(;u+2>=Browser.nextRAF;)Browser.nextRAF+=1e3/60;var f=Math.max(Browser.nextRAF-u,0);setTimeout(i,f)},requestAnimationFrame:function(u){typeof window=="undefined"?Browser.fakeRequestAnimationFrame(u):(window.requestAnimationFrame||(window.requestAnimationFrame=window.requestAnimationFrame||window.mozRequestAnimationFrame||window.webkitRequestAnimationFrame||window.msRequestAnimationFrame||window.oRequestAnimationFrame||Browser.fakeRequestAnimationFrame),window.requestAnimationFrame(u))},safeCallback:function(i){return function(){if(!ABORT)return i.apply(null,arguments)}},allowAsyncCallbacks:!0,queuedAsyncCallbacks:[],pauseAsyncCallbacks:function(){Browser.allowAsyncCallbacks=!1},resumeAsyncCallbacks:function(){if(Browser.allowAsyncCallbacks=!0,Browser.queuedAsyncCallbacks.length>0){var i=Browser.queuedAsyncCallbacks;Browser.queuedAsyncCallbacks=[],i.forEach(function(u){u()})}},safeRequestAnimationFrame:function(i){return Browser.requestAnimationFrame(function(){ABORT||(Browser.allowAsyncCallbacks?i():Browser.queuedAsyncCallbacks.push(i))})},safeSetTimeout:function(i,u){return Module.noExitRuntime=!0,setTimeout(function(){ABORT||(Browser.allowAsyncCallbacks?i():Browser.queuedAsyncCallbacks.push(i))},u)},safeSetInterval:function(i,u){return Module.noExitRuntime=!0,setInterval(function(){ABORT||Browser.allowAsyncCallbacks&&i()},u)},getMimetype:function(i){return{jpg:"image/jpeg",jpeg:"image/jpeg",png:"image/png",bmp:"image/bmp",ogg:"audio/ogg",wav:"audio/wav",mp3:"audio/mpeg"}[i.substr(i.lastIndexOf(".")+1)]},getUserMedia:function(i){window.getUserMedia||(window.getUserMedia=navigator.getUserMedia||navigator.mozGetUserMedia),window.getUserMedia(i)},getMovementX:function(i){return i.movementX||i.mozMovementX||i.webkitMovementX||0},getMovementY:function(i){return i.movementY||i.mozMovementY||i.webkitMovementY||0},getMouseWheelDelta:function(i){var u=0;switch(i.type){case"DOMMouseScroll":u=i.detail;break;case"mousewheel":u=i.wheelDelta;break;case"wheel":u=i.deltaY;break;default:throw"unrecognized mouse wheel event: "+i.type}return u},mouseX:0,mouseY:0,mouseMovementX:0,mouseMovementY:0,touches:{},lastTouches:{},calculateMouseEvent:function(i){if(Browser.pointerLock)i.type!="mousemove"&&"mozMovementX"in i?Browser.mouseMovementX=Browser.mouseMovementY=0:(Browser.mouseMovementX=Browser.getMovementX(i),Browser.mouseMovementY=Browser.getMovementY(i)),typeof SDL!="undefined"?(Browser.mouseX=SDL.mouseX+Browser.mouseMovementX,Browser.mouseY=SDL.mouseY+Browser.mouseMovementY):(Browser.mouseX+=Browser.mouseMovementX,Browser.mouseY+=Browser.mouseMovementY);else{var u=Module.canvas.getBoundingClientRect(),f=Module.canvas.width,c=Module.canvas.height,g=typeof window.scrollX!="undefined"?window.scrollX:window.pageXOffset,t=typeof window.scrollY!="undefined"?window.scrollY:window.pageYOffset;if(i.type==="touchstart"||i.type==="touchend"||i.type==="touchmove"){var C=i.touch;if(C===void 0)return;var A=C.pageX-(g+u.left),x=C.pageY-(t+u.top);A=A*(f/u.width),x=x*(c/u.height);var D={x:A,y:x};if(i.type==="touchstart")Browser.lastTouches[C.identifier]=D,Browser.touches[C.identifier]=D;else if(i.type==="touchend"||i.type==="touchmove"){var L=Browser.touches[C.identifier];L||(L=D),Browser.lastTouches[C.identifier]=L,Browser.touches[C.identifier]=D}return}var N=i.pageX-(g+u.left),j=i.pageY-(t+u.top);N=N*(f/u.width),j=j*(c/u.height),Browser.mouseMovementX=N-Browser.mouseX,Browser.mouseMovementY=j-Browser.mouseY,Browser.mouseX=N,Browser.mouseY=j}},asyncLoad:function(i,u,f,c){var g=c?"":getUniqueRunDependency("al "+i);Module.readAsync(i,function(t){assert(t,'Loading data file "'+i+'" failed (no arrayBuffer).'),u(new Uint8Array(t)),g&&removeRunDependency(g)},function(t){if(f)f();else throw'Loading data file "'+i+'" failed.'}),g&&addRunDependency(g)},resizeListeners:[],updateResizeListeners:function(){var i=Module.canvas;Browser.resizeListeners.forEach(function(u){u(i.width,i.height)})},setCanvasSize:function(i,u,f){var c=Module.canvas;Browser.updateCanvasDimensions(c,i,u),f||Browser.updateResizeListeners()},windowedWidth:0,windowedHeight:0,setFullscreenCanvasSize:function(){if(typeof SDL!="undefined"){var i=HEAPU32[SDL.screen+Runtime.QUANTUM_SIZE*0>>2];i=i|8388608,HEAP32[SDL.screen+Runtime.QUANTUM_SIZE*0>>2]=i}Browser.updateResizeListeners()},setWindowedCanvasSize:function(){if(typeof SDL!="undefined"){var i=HEAPU32[SDL.screen+Runtime.QUANTUM_SIZE*0>>2];i=i&~8388608,HEAP32[SDL.screen+Runtime.QUANTUM_SIZE*0>>2]=i}Browser.updateResizeListeners()},updateCanvasDimensions:function(i,u,f){u&&f?(i.widthNative=u,i.heightNative=f):(u=i.widthNative,f=i.heightNative);var c=u,g=f;if(Module.forcedAspectRatio&&Module.forcedAspectRatio>0&&(c/g>2];return u},getStr:function(){var i=Pointer_stringify(SYSCALLS.get());return i},get64:function(){var i=SYSCALLS.get(),u=SYSCALLS.get();return i>=0?assert(u===0):assert(u===-1),i},getZero:function(){assert(SYSCALLS.get()===0)}};function ___syscall6(i,u){SYSCALLS.varargs=u;try{var f=SYSCALLS.getStreamFromFD();return FS.close(f),0}catch(c){return(typeof FS=="undefined"||!(c instanceof FS.ErrnoError))&&abort(c),-c.errno}}function ___syscall54(i,u){SYSCALLS.varargs=u;try{return 0}catch(f){return(typeof FS=="undefined"||!(f instanceof FS.ErrnoError))&&abort(f),-f.errno}}function _typeModule(i){var u=[[0,1,"X"],[1,1,"const X"],[128,1,"X *"],[256,1,"X &"],[384,1,"X &&"],[512,1,"std::shared_ptr"],[640,1,"std::unique_ptr"],[5120,1,"std::vector"],[6144,2,"std::array"],[9216,-1,"std::function"]];function f(x,D,L,N,j,$){if(D==1){var h=N&896;(h==128||h==256||h==384)&&(x="X const")}var re;return $?re=L.replace("X",x).replace("Y",j):re=x.replace("X",L).replace("Y",j),re.replace(/([*&]) (?=[*&])/g,"$1")}function c(x,D,L,N,j){throw new Error(x+" type "+L.replace("X",D+"?")+(N?" with flag "+N:"")+" in "+j)}function g(x,D,L,N,j,$,h,re){$===void 0&&($="X"),re===void 0&&(re=1);var ce=L(x);if(ce)return ce;var Q=N(x),oe=Q.placeholderFlag,Se=u[oe];h&&Se&&($=f(h[2],h[0],$,Se[0],"?",!0));var me;oe==0&&(me="Unbound"),oe>=10&&(me="Corrupt"),re>20&&(me="Deeply nested"),me&&c(me,x,$,oe,j||"?");var De=Q.paramList[0],J=g(De,D,L,N,j,$,Se,re+1),Te,Oe={flags:Se[0],id:x,name:"",paramList:[J]},Le=[],ot="?";switch(Q.placeholderFlag){case 1:Te=J.spec;break;case 2:if((J.flags&15360)==1024&&J.spec.ptrSize==1){Oe.flags=7168;break}case 3:case 6:case 5:Te=J.spec,(J.flags&15360)!=2048;break;case 8:ot=""+Q.paramList[1],Oe.paramList.push(Q.paramList[1]);break;case 9:for(var ct=0,Ue=Q.paramList[1];ct>2]=i),i}function _llvm_stacksave(){var i=_llvm_stacksave;return i.LLVM_SAVEDSTACKS||(i.LLVM_SAVEDSTACKS=[]),i.LLVM_SAVEDSTACKS.push(Runtime.stackSave()),i.LLVM_SAVEDSTACKS.length-1}function ___syscall140(i,u){SYSCALLS.varargs=u;try{var f=SYSCALLS.getStreamFromFD(),c=SYSCALLS.get(),g=SYSCALLS.get(),t=SYSCALLS.get(),C=SYSCALLS.get(),A=g;return FS.llseek(f,A,C),HEAP32[t>>2]=f.position,f.getdents&&A===0&&C===0&&(f.getdents=null),0}catch(x){return(typeof FS=="undefined"||!(x instanceof FS.ErrnoError))&&abort(x),-x.errno}}function ___syscall146(i,u){SYSCALLS.varargs=u;try{var f=SYSCALLS.get(),c=SYSCALLS.get(),g=SYSCALLS.get(),t=0;___syscall146.buffer||(___syscall146.buffers=[null,[],[]],___syscall146.printChar=function(L,N){var j=___syscall146.buffers[L];assert(j),N===0||N===10?((L===1?Module.print:Module.printErr)(UTF8ArrayToString(j,0)),j.length=0):j.push(N)});for(var C=0;C>2],x=HEAP32[c+(C*8+4)>>2],D=0;Di.pageSize/2||u>i.pageSize-f){var c=_nbind.typeNameTbl.NBind.proto;return c.lalloc(u)}else return HEAPU32[i.usedPtr]=f+u,i.rootPtr+f},i.lreset=function(u,f){var c=HEAPU32[i.pagePtr];if(c){var g=_nbind.typeNameTbl.NBind.proto;g.lreset(u,f)}else HEAPU32[i.usedPtr]=u},i}();_nbind.Pool=Pool;function constructType(i,u){var f=i==10240?_nbind.makeTypeNameTbl[u.name]||_nbind.BindType:_nbind.makeTypeKindTbl[i],c=new f(u);return typeIdTbl[u.id]=c,_nbind.typeNameTbl[u.name]=c,c}_nbind.constructType=constructType;function getType(i){return typeIdTbl[i]}_nbind.getType=getType;function queryType(i){var u=HEAPU8[i],f=_nbind.structureList[u][1];i/=4,f<0&&(++i,f=HEAPU32[i]+1);var c=Array.prototype.slice.call(HEAPU32.subarray(i+1,i+1+f));return u==9&&(c=[c[0],c.slice(1)]),{paramList:c,placeholderFlag:u}}_nbind.queryType=queryType;function getTypes(i,u){return i.map(function(f){return typeof f=="number"?_nbind.getComplexType(f,constructType,getType,queryType,u):_nbind.typeNameTbl[f]})}_nbind.getTypes=getTypes;function readTypeIdList(i,u){return Array.prototype.slice.call(HEAPU32,i/4,i/4+u)}_nbind.readTypeIdList=readTypeIdList;function readAsciiString(i){for(var u=i;HEAPU8[u++];);return String.fromCharCode.apply("",HEAPU8.subarray(i,u-1))}_nbind.readAsciiString=readAsciiString;function readPolicyList(i){var u={};if(i)for(;;){var f=HEAPU32[i/4];if(!f)break;u[readAsciiString(f)]=!0,i+=4}return u}_nbind.readPolicyList=readPolicyList;function getDynCall(i,u){var f={float32_t:"d",float64_t:"d",int64_t:"d",uint64_t:"d",void:"v"},c=i.map(function(t){return f[t.name]||"i"}).join(""),g=Module["dynCall_"+c];if(!g)throw new Error("dynCall_"+c+" not found for "+u+"("+i.map(function(t){return t.name}).join(", ")+")");return g}_nbind.getDynCall=getDynCall;function addMethod(i,u,f,c){var g=i[u];i.hasOwnProperty(u)&&g?((g.arity||g.arity===0)&&(g=_nbind.makeOverloader(g,g.arity),i[u]=g),g.addMethod(f,c)):(f.arity=c,i[u]=f)}_nbind.addMethod=addMethod;function throwError(i){throw new Error(i)}_nbind.throwError=throwError,_nbind.bigEndian=!1,_a=_typeModule(_typeModule),_nbind.Type=_a.Type,_nbind.makeType=_a.makeType,_nbind.getComplexType=_a.getComplexType,_nbind.structureList=_a.structureList;var BindType=function(i){__extends(u,i);function u(){var f=i!==null&&i.apply(this,arguments)||this;return f.heap=HEAPU32,f.ptrSize=4,f}return u.prototype.needsWireRead=function(f){return!!this.wireRead||!!this.makeWireRead},u.prototype.needsWireWrite=function(f){return!!this.wireWrite||!!this.makeWireWrite},u}(_nbind.Type);_nbind.BindType=BindType;var PrimitiveType=function(i){__extends(u,i);function u(f){var c=i.call(this,f)||this,g=f.flags&32?{32:HEAPF32,64:HEAPF64}:f.flags&8?{8:HEAPU8,16:HEAPU16,32:HEAPU32}:{8:HEAP8,16:HEAP16,32:HEAP32};return c.heap=g[f.ptrSize*8],c.ptrSize=f.ptrSize,c}return u.prototype.needsWireWrite=function(f){return!!f&&!!f.Strict},u.prototype.makeWireWrite=function(f,c){return c&&c.Strict&&function(g){if(typeof g=="number")return g;throw new Error("Type mismatch")}},u}(BindType);_nbind.PrimitiveType=PrimitiveType;function pushCString(i,u){if(i==null){if(u&&u.Nullable)return 0;throw new Error("Type mismatch")}if(u&&u.Strict){if(typeof i!="string")throw new Error("Type mismatch")}else i=i.toString();var f=Module.lengthBytesUTF8(i)+1,c=_nbind.Pool.lalloc(f);return Module.stringToUTF8Array(i,HEAPU8,c,f),c}_nbind.pushCString=pushCString;function popCString(i){return i===0?null:Module.Pointer_stringify(i)}_nbind.popCString=popCString;var CStringType=function(i){__extends(u,i);function u(){var f=i!==null&&i.apply(this,arguments)||this;return f.wireRead=popCString,f.wireWrite=pushCString,f.readResources=[_nbind.resources.pool],f.writeResources=[_nbind.resources.pool],f}return u.prototype.makeWireWrite=function(f,c){return function(g){return pushCString(g,c)}},u}(BindType);_nbind.CStringType=CStringType;var BooleanType=function(i){__extends(u,i);function u(){var f=i!==null&&i.apply(this,arguments)||this;return f.wireRead=function(c){return!!c},f}return u.prototype.needsWireWrite=function(f){return!!f&&!!f.Strict},u.prototype.makeWireRead=function(f){return"!!("+f+")"},u.prototype.makeWireWrite=function(f,c){return c&&c.Strict&&function(g){if(typeof g=="boolean")return g;throw new Error("Type mismatch")}||f},u}(BindType);_nbind.BooleanType=BooleanType;var Wrapper=function(){function i(){}return i.prototype.persist=function(){this.__nbindState|=1},i}();_nbind.Wrapper=Wrapper;function makeBound(i,u){var f=function(c){__extends(g,c);function g(t,C,A,x){var D=c.call(this)||this;if(!(D instanceof g))return new(Function.prototype.bind.apply(g,Array.prototype.concat.apply([null],arguments)));var L=C,N=A,j=x;if(t!==_nbind.ptrMarker){var $=D.__nbindConstructor.apply(D,arguments);L=4096|512,j=HEAPU32[$/4],N=HEAPU32[$/4+1]}var h={configurable:!0,enumerable:!1,value:null,writable:!1},re={__nbindFlags:L,__nbindPtr:N};j&&(re.__nbindShared=j,_nbind.mark(D));for(var ce=0,Q=Object.keys(re);ce>=1;var f=_nbind.valueList[i];return _nbind.valueList[i]=firstFreeValue,firstFreeValue=i,f}else{if(u)return _nbind.popShared(i,u);throw new Error("Invalid value slot "+i)}}_nbind.popValue=popValue;var valueBase=18446744073709552e3;function push64(i){return typeof i=="number"?i:pushValue(i)*4096+valueBase}function pop64(i){return i=3?C=Buffer.from(t):C=new Buffer(t),C.copy(c)}else getBuffer(c).set(t)}}_nbind.commitBuffer=commitBuffer;var dirtyList=[],gcTimer=0;function sweep(){for(var i=0,u=dirtyList;i>2]=DYNAMIC_BASE,staticSealed=!0;function invoke_viiiii(i,u,f,c,g,t){try{Module.dynCall_viiiii(i,u,f,c,g,t)}catch(C){if(typeof C!="number"&&C!=="longjmp")throw C;Module.setThrew(1,0)}}function invoke_vif(i,u,f){try{Module.dynCall_vif(i,u,f)}catch(c){if(typeof c!="number"&&c!=="longjmp")throw c;Module.setThrew(1,0)}}function invoke_vid(i,u,f){try{Module.dynCall_vid(i,u,f)}catch(c){if(typeof c!="number"&&c!=="longjmp")throw c;Module.setThrew(1,0)}}function invoke_fiff(i,u,f,c){try{return Module.dynCall_fiff(i,u,f,c)}catch(g){if(typeof g!="number"&&g!=="longjmp")throw g;Module.setThrew(1,0)}}function invoke_vi(i,u){try{Module.dynCall_vi(i,u)}catch(f){if(typeof f!="number"&&f!=="longjmp")throw f;Module.setThrew(1,0)}}function invoke_vii(i,u,f){try{Module.dynCall_vii(i,u,f)}catch(c){if(typeof c!="number"&&c!=="longjmp")throw c;Module.setThrew(1,0)}}function invoke_ii(i,u){try{return Module.dynCall_ii(i,u)}catch(f){if(typeof f!="number"&&f!=="longjmp")throw f;Module.setThrew(1,0)}}function invoke_viddi(i,u,f,c,g){try{Module.dynCall_viddi(i,u,f,c,g)}catch(t){if(typeof t!="number"&&t!=="longjmp")throw t;Module.setThrew(1,0)}}function invoke_vidd(i,u,f,c){try{Module.dynCall_vidd(i,u,f,c)}catch(g){if(typeof g!="number"&&g!=="longjmp")throw g;Module.setThrew(1,0)}}function invoke_iiii(i,u,f,c){try{return Module.dynCall_iiii(i,u,f,c)}catch(g){if(typeof g!="number"&&g!=="longjmp")throw g;Module.setThrew(1,0)}}function invoke_diii(i,u,f,c){try{return Module.dynCall_diii(i,u,f,c)}catch(g){if(typeof g!="number"&&g!=="longjmp")throw g;Module.setThrew(1,0)}}function invoke_di(i,u){try{return Module.dynCall_di(i,u)}catch(f){if(typeof f!="number"&&f!=="longjmp")throw f;Module.setThrew(1,0)}}function invoke_iid(i,u,f){try{return Module.dynCall_iid(i,u,f)}catch(c){if(typeof c!="number"&&c!=="longjmp")throw c;Module.setThrew(1,0)}}function invoke_iii(i,u,f){try{return Module.dynCall_iii(i,u,f)}catch(c){if(typeof c!="number"&&c!=="longjmp")throw c;Module.setThrew(1,0)}}function invoke_viiddi(i,u,f,c,g,t){try{Module.dynCall_viiddi(i,u,f,c,g,t)}catch(C){if(typeof C!="number"&&C!=="longjmp")throw C;Module.setThrew(1,0)}}function invoke_viiiiii(i,u,f,c,g,t,C){try{Module.dynCall_viiiiii(i,u,f,c,g,t,C)}catch(A){if(typeof A!="number"&&A!=="longjmp")throw A;Module.setThrew(1,0)}}function invoke_dii(i,u,f){try{return Module.dynCall_dii(i,u,f)}catch(c){if(typeof c!="number"&&c!=="longjmp")throw c;Module.setThrew(1,0)}}function invoke_i(i){try{return Module.dynCall_i(i)}catch(u){if(typeof u!="number"&&u!=="longjmp")throw u;Module.setThrew(1,0)}}function invoke_iiiiii(i,u,f,c,g,t){try{return Module.dynCall_iiiiii(i,u,f,c,g,t)}catch(C){if(typeof C!="number"&&C!=="longjmp")throw C;Module.setThrew(1,0)}}function invoke_viiid(i,u,f,c,g){try{Module.dynCall_viiid(i,u,f,c,g)}catch(t){if(typeof t!="number"&&t!=="longjmp")throw t;Module.setThrew(1,0)}}function invoke_viififi(i,u,f,c,g,t,C){try{Module.dynCall_viififi(i,u,f,c,g,t,C)}catch(A){if(typeof A!="number"&&A!=="longjmp")throw A;Module.setThrew(1,0)}}function invoke_viii(i,u,f,c){try{Module.dynCall_viii(i,u,f,c)}catch(g){if(typeof g!="number"&&g!=="longjmp")throw g;Module.setThrew(1,0)}}function invoke_v(i){try{Module.dynCall_v(i)}catch(u){if(typeof u!="number"&&u!=="longjmp")throw u;Module.setThrew(1,0)}}function invoke_viid(i,u,f,c){try{Module.dynCall_viid(i,u,f,c)}catch(g){if(typeof g!="number"&&g!=="longjmp")throw g;Module.setThrew(1,0)}}function invoke_idd(i,u,f){try{return Module.dynCall_idd(i,u,f)}catch(c){if(typeof c!="number"&&c!=="longjmp")throw c;Module.setThrew(1,0)}}function invoke_viiii(i,u,f,c,g){try{Module.dynCall_viiii(i,u,f,c,g)}catch(t){if(typeof t!="number"&&t!=="longjmp")throw t;Module.setThrew(1,0)}}Module.asmGlobalArg={Math,Int8Array,Int16Array,Int32Array,Uint8Array,Uint16Array,Uint32Array,Float32Array,Float64Array,NaN:NaN,Infinity:Infinity},Module.asmLibraryArg={abort,assert,enlargeMemory,getTotalMemory,abortOnCannotGrowMemory,invoke_viiiii,invoke_vif,invoke_vid,invoke_fiff,invoke_vi,invoke_vii,invoke_ii,invoke_viddi,invoke_vidd,invoke_iiii,invoke_diii,invoke_di,invoke_iid,invoke_iii,invoke_viiddi,invoke_viiiiii,invoke_dii,invoke_i,invoke_iiiiii,invoke_viiid,invoke_viififi,invoke_viii,invoke_v,invoke_viid,invoke_idd,invoke_viiii,_emscripten_asm_const_iiiii,_emscripten_asm_const_iiidddddd,_emscripten_asm_const_iiiid,__nbind_reference_external,_emscripten_asm_const_iiiiiiii,_removeAccessorPrefix,_typeModule,__nbind_register_pool,__decorate,_llvm_stackrestore,___cxa_atexit,__extends,__nbind_get_value_object,__ZN8facebook4yoga14YGNodeToStringEPNSt3__212basic_stringIcNS1_11char_traitsIcEENS1_9allocatorIcEEEEP6YGNode14YGPrintOptionsj,_emscripten_set_main_loop_timing,__nbind_register_primitive,__nbind_register_type,_emscripten_memcpy_big,__nbind_register_function,___setErrNo,__nbind_register_class,__nbind_finish,_abort,_nbind_value,_llvm_stacksave,___syscall54,_defineHidden,_emscripten_set_main_loop,_emscripten_get_now,__nbind_register_callback_signature,_emscripten_asm_const_iiiiii,__nbind_free_external,_emscripten_asm_const_iiii,_emscripten_asm_const_iiididi,___syscall6,_atexit,___syscall140,___syscall146,DYNAMICTOP_PTR,tempDoublePtr,ABORT,STACKTOP,STACK_MAX,cttz_i8,___dso_handle};var asm=function(i,u,f){var c=new i.Int8Array(f),g=new i.Int16Array(f),t=new i.Int32Array(f),C=new i.Uint8Array(f),A=new i.Uint16Array(f),x=new i.Uint32Array(f),D=new i.Float32Array(f),L=new i.Float64Array(f),N=u.DYNAMICTOP_PTR|0,j=u.tempDoublePtr|0,$=u.ABORT|0,h=u.STACKTOP|0,re=u.STACK_MAX|0,ce=u.cttz_i8|0,Q=u.___dso_handle|0,oe=0,Se=0,me=0,De=0,J=i.NaN,Te=i.Infinity,Oe=0,Le=0,ot=0,ct=0,Ue=0,be=0,At=i.Math.floor,Ot=i.Math.abs,Nt=i.Math.sqrt,Je=i.Math.pow,V=i.Math.cos,ne=i.Math.sin,ge=i.Math.tan,Z=i.Math.acos,Ae=i.Math.asin,at=i.Math.atan,it=i.Math.atan2,Ft=i.Math.exp,jt=i.Math.log,hn=i.Math.ceil,Un=i.Math.imul,Jt=i.Math.min,Yt=i.Math.max,cr=i.Math.clz32,w=i.Math.fround,pt=u.abort,Mn=u.assert,Bn=u.enlargeMemory,Xn=u.getTotalMemory,vr=u.abortOnCannotGrowMemory,gr=u.invoke_viiiii,r0=u.invoke_vif,Ci=u.invoke_vid,yo=u.invoke_fiff,Ds=u.invoke_vi,Mu=u.invoke_vii,Gf=u.invoke_ii,iu=u.invoke_viddi,ou=u.invoke_vidd,ol=u.invoke_iiii,ul=u.invoke_diii,Es=u.invoke_di,Uo=u.invoke_iid,sl=u.invoke_iii,Ss=u.invoke_viiddi,Cs=u.invoke_viiiiii,Ti=u.invoke_dii,Fu=u.invoke_i,ll=u.invoke_iiiiii,fl=u.invoke_viiid,cl=u.invoke_viififi,al=u.invoke_viii,Ui=u.invoke_v,Mr=u.invoke_viid,Ac=u.invoke_idd,of=u.invoke_viiii,Ts=u._emscripten_asm_const_iiiii,xs=u._emscripten_asm_const_iiidddddd,dl=u._emscripten_asm_const_iiiid,qi=u.__nbind_reference_external,qo=u._emscripten_asm_const_iiiiiiii,kr=u._removeAccessorPrefix,Fr=u._typeModule,si=u.__nbind_register_pool,H0=u.__decorate,b0=u._llvm_stackrestore,Bt=u.___cxa_atexit,Lu=u.__extends,c0=u.__nbind_get_value_object,Ru=u.__ZN8facebook4yoga14YGNodeToStringEPNSt3__212basic_stringIcNS1_11char_traitsIcEENS1_9allocatorIcEEEEP6YGNode14YGPrintOptionsj,ks=u._emscripten_set_main_loop_timing,As=u.__nbind_register_primitive,uu=u.__nbind_register_type,wo=u._emscripten_memcpy_big,zo=u.__nbind_register_function,Os=u.___setErrNo,Is=u.__nbind_register_class,uf=u.__nbind_finish,_n=u._abort,Nu=u._nbind_value,Wo=u._llvm_stacksave,su=u.___syscall54,Ps=u._defineHidden,pl=u._emscripten_set_main_loop,Vf=u._emscripten_get_now,hl=u.__nbind_register_callback_signature,Bu=u._emscripten_asm_const_iiiiii,ju=u.__nbind_free_external,sf=u._emscripten_asm_const_iiii,ro=u._emscripten_asm_const_iiididi,Ms=u.___syscall6,ml=u._atexit,Uu=u.___syscall140,G0=u.___syscall146,Fs=w(0);let tt=w(0);function zi(e){e=e|0;var n=0;return n=h,h=h+e|0,h=h+15&-16,n|0}function lu(){return h|0}function Ho(e){e=e|0,h=e}function O0(e,n){e=e|0,n=n|0,h=e,re=n}function vl(e,n){e=e|0,n=n|0,oe||(oe=e,Se=n)}function gl(e){e=e|0,be=e}function fu(){return be|0}function _l(){var e=0,n=0;vn(8104,8,400)|0,vn(8504,408,540)|0,e=9044,n=e+44|0;do t[e>>2]=0,e=e+4|0;while((e|0)<(n|0));c[9088]=0,c[9089]=1,t[2273]=0,t[2274]=948,t[2275]=948,Bt(17,8104,Q|0)|0}function Sn(e){e=e|0,lf(e+948|0)}function gt(e){return e=w(e),((Ar(e)|0)&2147483647)>>>0>2139095040|0}function en(e,n,r){e=e|0,n=n|0,r=r|0;e:do if(t[e+(n<<3)+4>>2]|0)e=e+(n<<3)|0;else{if((n|2|0)==3?t[e+60>>2]|0:0){e=e+56|0;break}switch(n|0){case 0:case 2:case 4:case 5:{if(t[e+52>>2]|0){e=e+48|0;break e}break}default:}if(t[e+68>>2]|0){e=e+64|0;break}else{e=(n|1|0)==5?948:r;break}}while(0);return e|0}function I0(e){e=e|0;var n=0;return n=uh(1e3)|0,li(e,(n|0)!=0,2456),t[2276]=(t[2276]|0)+1,vn(n|0,8104,1e3)|0,c[e+2>>0]|0&&(t[n+4>>2]=2,t[n+12>>2]=4),t[n+976>>2]=e,n|0}function li(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0;s=h,h=h+16|0,o=s,n||(t[o>>2]=r,zs(e,5,3197,o)),h=s}function qu(){return I0(956)|0}function Wi(e){e=e|0;var n=0;return n=Tt(1e3)|0,zu(n,e),li(t[e+976>>2]|0,1,2456),t[2276]=(t[2276]|0)+1,t[n+944>>2]=0,n|0}function zu(e,n){e=e|0,n=n|0;var r=0;vn(e|0,n|0,948)|0,af(e+948|0,n+948|0),r=e+960|0,e=n+960|0,n=r+40|0;do t[r>>2]=t[e>>2],r=r+4|0,e=e+4|0;while((r|0)<(n|0))}function Wu(e){e=e|0;var n=0,r=0,o=0,s=0;if(n=e+944|0,r=t[n>>2]|0,r|0&&(Ls(r+948|0,e)|0,t[n>>2]=0),r=fi(e)|0,r|0){n=0;do t[(e0(e,n)|0)+944>>2]=0,n=n+1|0;while((n|0)!=(r|0))}r=e+948|0,o=t[r>>2]|0,s=e+952|0,n=t[s>>2]|0,(n|0)!=(o|0)&&(t[s>>2]=n+(~((n+-4-o|0)>>>2)<<2)),io(r),sh(e),t[2276]=(t[2276]|0)+-1}function Ls(e,n){e=e|0,n=n|0;var r=0,o=0,s=0,l=0,d=0,_=0;o=t[e>>2]|0,_=e+4|0,r=t[_>>2]|0,l=r;e:do if((o|0)==(r|0))s=o,d=4;else for(e=o;;){if((t[e>>2]|0)==(n|0)){s=e,d=4;break e}if(e=e+4|0,(e|0)==(r|0)){e=0;break}}while(0);return(d|0)==4&&((s|0)!=(r|0)?(o=s+4|0,e=l-o|0,n=e>>2,n&&(Y1(s|0,o|0,e|0)|0,r=t[_>>2]|0),e=s+(n<<2)|0,(r|0)==(e|0)||(t[_>>2]=r+(~((r+-4-e|0)>>>2)<<2)),e=1):e=0),e|0}function fi(e){return e=e|0,(t[e+952>>2]|0)-(t[e+948>>2]|0)>>2|0}function e0(e,n){e=e|0,n=n|0;var r=0;return r=t[e+948>>2]|0,(t[e+952>>2]|0)-r>>2>>>0>n>>>0?e=t[r+(n<<2)>>2]|0:e=0,e|0}function io(e){e=e|0;var n=0,r=0,o=0,s=0;o=h,h=h+32|0,n=o,s=t[e>>2]|0,r=(t[e+4>>2]|0)-s|0,((t[e+8>>2]|0)-s|0)>>>0>r>>>0&&(s=r>>2,z(n,s,s,e+8|0),dr(e,n),Or(n)),h=o}function D0(e,n){e=e|0,n=n|0;var r=0,o=0,s=0,l=0,d=0,_=0,y=0,k=0;k=fi(e)|0;do if(k|0){if((t[(e0(e,0)|0)+944>>2]|0)==(e|0)){if(!(Ls(e+948|0,n)|0))break;vn(n+400|0,8504,540)|0,t[n+944>>2]=0,ln(e);break}d=t[(t[e+976>>2]|0)+12>>2]|0,_=e+948|0,y=(d|0)==0,r=0,l=0;do o=t[(t[_>>2]|0)+(l<<2)>>2]|0,(o|0)==(n|0)?ln(e):(s=Wi(o)|0,t[(t[_>>2]|0)+(r<<2)>>2]=s,t[s+944>>2]=e,y||Q4[d&15](o,s,e,r),r=r+1|0),l=l+1|0;while((l|0)!=(k|0));if(r>>>0>>0){y=e+948|0,_=e+952|0,d=r,r=t[_>>2]|0;do l=(t[y>>2]|0)+(d<<2)|0,o=l+4|0,s=r-o|0,n=s>>2,n&&(Y1(l|0,o|0,s|0)|0,r=t[_>>2]|0),s=r,o=l+(n<<2)|0,(s|0)!=(o|0)&&(r=s+(~((s+-4-o|0)>>>2)<<2)|0,t[_>>2]=r),d=d+1|0;while((d|0)!=(k|0))}}while(0)}function Do(e){e=e|0;var n=0,r=0,o=0,s=0;i0(e,(fi(e)|0)==0,2491),i0(e,(t[e+944>>2]|0)==0,2545),n=e+948|0,r=t[n>>2]|0,o=e+952|0,s=t[o>>2]|0,(s|0)!=(r|0)&&(t[o>>2]=s+(~((s+-4-r|0)>>>2)<<2)),io(n),n=e+976|0,r=t[n>>2]|0,vn(e|0,8104,1e3)|0,c[r+2>>0]|0&&(t[e+4>>2]=2,t[e+12>>2]=4),t[n>>2]=r}function i0(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0;s=h,h=h+16|0,o=s,n||(t[o>>2]=r,wn(e,5,3197,o)),h=s}function Rs(){return t[2276]|0}function a0(){var e=0;return e=uh(20)|0,Hu((e|0)!=0,2592),t[2277]=(t[2277]|0)+1,t[e>>2]=t[239],t[e+4>>2]=t[240],t[e+8>>2]=t[241],t[e+12>>2]=t[242],t[e+16>>2]=t[243],e|0}function Hu(e,n){e=e|0,n=n|0;var r=0,o=0;o=h,h=h+16|0,r=o,e||(t[r>>2]=n,wn(0,5,3197,r)),h=o}function V0(e){e=e|0,sh(e),t[2277]=(t[2277]|0)+-1}function bu(e,n){e=e|0,n=n|0;var r=0;n?(i0(e,(fi(e)|0)==0,2629),r=1):(r=0,n=0),t[e+964>>2]=n,t[e+988>>2]=r}function Ns(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0;o=h,h=h+16|0,l=o+8|0,s=o+4|0,d=o,t[s>>2]=n,i0(e,(t[n+944>>2]|0)==0,2709),i0(e,(t[e+964>>2]|0)==0,2763),bo(e),n=e+948|0,t[d>>2]=(t[n>>2]|0)+(r<<2),t[l>>2]=t[d>>2],P0(n,l,s)|0,t[(t[s>>2]|0)+944>>2]=e,ln(e),h=o}function bo(e){e=e|0;var n=0,r=0,o=0,s=0,l=0,d=0,_=0;if(r=fi(e)|0,r|0?(t[(e0(e,0)|0)+944>>2]|0)!=(e|0):0){o=t[(t[e+976>>2]|0)+12>>2]|0,s=e+948|0,l=(o|0)==0,n=0;do d=t[(t[s>>2]|0)+(n<<2)>>2]|0,_=Wi(d)|0,t[(t[s>>2]|0)+(n<<2)>>2]=_,t[_+944>>2]=e,l||Q4[o&15](d,_,e,n),n=n+1|0;while((n|0)!=(r|0))}}function P0(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0,_=0,y=0,k=0,T=0,P=0,q=0,we=0,le=0,ie=0,Pe=0,ke=0;Pe=h,h=h+64|0,P=Pe+52|0,_=Pe+48|0,q=Pe+28|0,we=Pe+24|0,le=Pe+20|0,ie=Pe,o=t[e>>2]|0,l=o,n=o+((t[n>>2]|0)-l>>2<<2)|0,o=e+4|0,s=t[o>>2]|0,d=e+8|0;do if(s>>>0<(t[d>>2]|0)>>>0){if((n|0)==(s|0)){t[n>>2]=t[r>>2],t[o>>2]=(t[o>>2]|0)+4;break}Qn(e,n,s,n+4|0),n>>>0<=r>>>0&&(r=(t[o>>2]|0)>>>0>r>>>0?r+4|0:r),t[n>>2]=t[r>>2]}else{o=(s-l>>2)+1|0,s=Q0(e)|0,s>>>0>>0&&$n(e),T=t[e>>2]|0,k=(t[d>>2]|0)-T|0,l=k>>1,z(ie,k>>2>>>0>>1>>>0?l>>>0>>0?o:l:s,n-T>>2,e+8|0),T=ie+8|0,o=t[T>>2]|0,l=ie+12|0,k=t[l>>2]|0,d=k,y=o;do if((o|0)==(k|0)){if(k=ie+4|0,o=t[k>>2]|0,ke=t[ie>>2]|0,s=ke,o>>>0<=ke>>>0){o=d-s>>1,o=(o|0)==0?1:o,z(q,o,o>>>2,t[ie+16>>2]|0),t[we>>2]=t[k>>2],t[le>>2]=t[T>>2],t[_>>2]=t[we>>2],t[P>>2]=t[le>>2],s0(q,_,P),o=t[ie>>2]|0,t[ie>>2]=t[q>>2],t[q>>2]=o,o=q+4|0,ke=t[k>>2]|0,t[k>>2]=t[o>>2],t[o>>2]=ke,o=q+8|0,ke=t[T>>2]|0,t[T>>2]=t[o>>2],t[o>>2]=ke,o=q+12|0,ke=t[l>>2]|0,t[l>>2]=t[o>>2],t[o>>2]=ke,Or(q),o=t[T>>2]|0;break}l=o,d=((l-s>>2)+1|0)/-2|0,_=o+(d<<2)|0,s=y-l|0,l=s>>2,l&&(Y1(_|0,o|0,s|0)|0,o=t[k>>2]|0),ke=_+(l<<2)|0,t[T>>2]=ke,t[k>>2]=o+(d<<2),o=ke}while(0);t[o>>2]=t[r>>2],t[T>>2]=(t[T>>2]|0)+4,n=nn(e,ie,n)|0,Or(ie)}while(0);return h=Pe,n|0}function ln(e){e=e|0;var n=0;do{if(n=e+984|0,c[n>>0]|0)break;c[n>>0]=1,D[e+504>>2]=w(J),e=t[e+944>>2]|0}while((e|0)!=0)}function lf(e){e=e|0;var n=0,r=0,o=0;r=t[e>>2]|0,o=r,r|0&&(e=e+4|0,n=t[e>>2]|0,(n|0)!=(r|0)&&(t[e>>2]=n+(~((n+-4-o|0)>>>2)<<2)),Ve(r))}function nr(e){return e=e|0,t[e+944>>2]|0}function rr(e){e=e|0,i0(e,(t[e+964>>2]|0)!=0,2832),ln(e)}function Go(e){return e=e|0,(c[e+984>>0]|0)!=0|0}function Gu(e,n){e=e|0,n=n|0,fL(e,n,400)|0&&(vn(e|0,n|0,400)|0,ln(e))}function yl(e){e=e|0;var n=tt;return n=w(D[e+44>>2]),e=gt(n)|0,w(e?w(0):n)}function cu(e){e=e|0;var n=tt;return n=w(D[e+48>>2]),gt(n)|0&&(n=c[(t[e+976>>2]|0)+2>>0]|0?w(1):w(0)),w(n)}function Bs(e,n){e=e|0,n=n|0,t[e+980>>2]=n}function Vu(e){return e=e|0,t[e+980>>2]|0}function M0(e,n){e=e|0,n=n|0;var r=0;r=e+4|0,(t[r>>2]|0)!=(n|0)&&(t[r>>2]=n,ln(e))}function au(e){return e=e|0,t[e+4>>2]|0}function Lr(e,n){e=e|0,n=n|0;var r=0;r=e+8|0,(t[r>>2]|0)!=(n|0)&&(t[r>>2]=n,ln(e))}function F(e){return e=e|0,t[e+8>>2]|0}function R(e,n){e=e|0,n=n|0;var r=0;r=e+12|0,(t[r>>2]|0)!=(n|0)&&(t[r>>2]=n,ln(e))}function U(e){return e=e|0,t[e+12>>2]|0}function H(e,n){e=e|0,n=n|0;var r=0;r=e+16|0,(t[r>>2]|0)!=(n|0)&&(t[r>>2]=n,ln(e))}function fe(e){return e=e|0,t[e+16>>2]|0}function ue(e,n){e=e|0,n=n|0;var r=0;r=e+20|0,(t[r>>2]|0)!=(n|0)&&(t[r>>2]=n,ln(e))}function de(e){return e=e|0,t[e+20>>2]|0}function W(e,n){e=e|0,n=n|0;var r=0;r=e+24|0,(t[r>>2]|0)!=(n|0)&&(t[r>>2]=n,ln(e))}function ve(e){return e=e|0,t[e+24>>2]|0}function Fe(e,n){e=e|0,n=n|0;var r=0;r=e+28|0,(t[r>>2]|0)!=(n|0)&&(t[r>>2]=n,ln(e))}function Ge(e){return e=e|0,t[e+28>>2]|0}function K(e,n){e=e|0,n=n|0;var r=0;r=e+32|0,(t[r>>2]|0)!=(n|0)&&(t[r>>2]=n,ln(e))}function xe(e){return e=e|0,t[e+32>>2]|0}function je(e,n){e=e|0,n=n|0;var r=0;r=e+36|0,(t[r>>2]|0)!=(n|0)&&(t[r>>2]=n,ln(e))}function Xe(e){return e=e|0,t[e+36>>2]|0}function rt(e,n){e=e|0,n=w(n);var r=0;r=e+40|0,w(D[r>>2])!=n&&(D[r>>2]=n,ln(e))}function st(e,n){e=e|0,n=w(n);var r=0;r=e+44|0,w(D[r>>2])!=n&&(D[r>>2]=n,ln(e))}function xt(e,n){e=e|0,n=w(n);var r=0;r=e+48|0,w(D[r>>2])!=n&&(D[r>>2]=n,ln(e))}function wt(e,n){e=e|0,n=w(n);var r=0,o=0,s=0,l=0;l=gt(n)|0,r=(l^1)&1,o=e+52|0,s=e+56|0,(l|w(D[o>>2])==n?(t[s>>2]|0)==(r|0):0)||(D[o>>2]=n,t[s>>2]=r,ln(e))}function lt(e,n){e=e|0,n=w(n);var r=0,o=0;o=e+52|0,r=e+56|0,(w(D[o>>2])==n?(t[r>>2]|0)==2:0)||(D[o>>2]=n,o=gt(n)|0,t[r>>2]=o?3:2,ln(e))}function Rt(e,n){e=e|0,n=n|0;var r=0,o=0;o=n+52|0,r=t[o+4>>2]|0,n=e,t[n>>2]=t[o>>2],t[n+4>>2]=r}function yn(e,n,r){e=e|0,n=n|0,r=w(r);var o=0,s=0,l=0;l=gt(r)|0,o=(l^1)&1,s=e+132+(n<<3)|0,n=e+132+(n<<3)+4|0,(l|w(D[s>>2])==r?(t[n>>2]|0)==(o|0):0)||(D[s>>2]=r,t[n>>2]=o,ln(e))}function sn(e,n,r){e=e|0,n=n|0,r=w(r);var o=0,s=0,l=0;l=gt(r)|0,o=l?0:2,s=e+132+(n<<3)|0,n=e+132+(n<<3)+4|0,(l|w(D[s>>2])==r?(t[n>>2]|0)==(o|0):0)||(D[s>>2]=r,t[n>>2]=o,ln(e))}function ar(e,n,r){e=e|0,n=n|0,r=r|0;var o=0;o=n+132+(r<<3)|0,n=t[o+4>>2]|0,r=e,t[r>>2]=t[o>>2],t[r+4>>2]=n}function rn(e,n,r){e=e|0,n=n|0,r=w(r);var o=0,s=0,l=0;l=gt(r)|0,o=(l^1)&1,s=e+60+(n<<3)|0,n=e+60+(n<<3)+4|0,(l|w(D[s>>2])==r?(t[n>>2]|0)==(o|0):0)||(D[s>>2]=r,t[n>>2]=o,ln(e))}function Hn(e,n,r){e=e|0,n=n|0,r=w(r);var o=0,s=0,l=0;l=gt(r)|0,o=l?0:2,s=e+60+(n<<3)|0,n=e+60+(n<<3)+4|0,(l|w(D[s>>2])==r?(t[n>>2]|0)==(o|0):0)||(D[s>>2]=r,t[n>>2]=o,ln(e))}function d0(e,n,r){e=e|0,n=n|0,r=r|0;var o=0;o=n+60+(r<<3)|0,n=t[o+4>>2]|0,r=e,t[r>>2]=t[o>>2],t[r+4>>2]=n}function Cr(e,n){e=e|0,n=n|0;var r=0;r=e+60+(n<<3)+4|0,(t[r>>2]|0)!=3&&(D[e+60+(n<<3)>>2]=w(J),t[r>>2]=3,ln(e))}function He(e,n,r){e=e|0,n=n|0,r=w(r);var o=0,s=0,l=0;l=gt(r)|0,o=(l^1)&1,s=e+204+(n<<3)|0,n=e+204+(n<<3)+4|0,(l|w(D[s>>2])==r?(t[n>>2]|0)==(o|0):0)||(D[s>>2]=r,t[n>>2]=o,ln(e))}function Qe(e,n,r){e=e|0,n=n|0,r=w(r);var o=0,s=0,l=0;l=gt(r)|0,o=l?0:2,s=e+204+(n<<3)|0,n=e+204+(n<<3)+4|0,(l|w(D[s>>2])==r?(t[n>>2]|0)==(o|0):0)||(D[s>>2]=r,t[n>>2]=o,ln(e))}function Ne(e,n,r){e=e|0,n=n|0,r=r|0;var o=0;o=n+204+(r<<3)|0,n=t[o+4>>2]|0,r=e,t[r>>2]=t[o>>2],t[r+4>>2]=n}function ft(e,n,r){e=e|0,n=n|0,r=w(r);var o=0,s=0,l=0;l=gt(r)|0,o=(l^1)&1,s=e+276+(n<<3)|0,n=e+276+(n<<3)+4|0,(l|w(D[s>>2])==r?(t[n>>2]|0)==(o|0):0)||(D[s>>2]=r,t[n>>2]=o,ln(e))}function St(e,n){return e=e|0,n=n|0,w(D[e+276+(n<<3)>>2])}function Qt(e,n){e=e|0,n=w(n);var r=0,o=0,s=0,l=0;l=gt(n)|0,r=(l^1)&1,o=e+348|0,s=e+352|0,(l|w(D[o>>2])==n?(t[s>>2]|0)==(r|0):0)||(D[o>>2]=n,t[s>>2]=r,ln(e))}function Cn(e,n){e=e|0,n=w(n);var r=0,o=0;o=e+348|0,r=e+352|0,(w(D[o>>2])==n?(t[r>>2]|0)==2:0)||(D[o>>2]=n,o=gt(n)|0,t[r>>2]=o?3:2,ln(e))}function bn(e){e=e|0;var n=0;n=e+352|0,(t[n>>2]|0)!=3&&(D[e+348>>2]=w(J),t[n>>2]=3,ln(e))}function p0(e,n){e=e|0,n=n|0;var r=0,o=0;o=n+348|0,r=t[o+4>>2]|0,n=e,t[n>>2]=t[o>>2],t[n+4>>2]=r}function h0(e,n){e=e|0,n=w(n);var r=0,o=0,s=0,l=0;l=gt(n)|0,r=(l^1)&1,o=e+356|0,s=e+360|0,(l|w(D[o>>2])==n?(t[s>>2]|0)==(r|0):0)||(D[o>>2]=n,t[s>>2]=r,ln(e))}function ci(e,n){e=e|0,n=w(n);var r=0,o=0;o=e+356|0,r=e+360|0,(w(D[o>>2])==n?(t[r>>2]|0)==2:0)||(D[o>>2]=n,o=gt(n)|0,t[r>>2]=o?3:2,ln(e))}function xi(e){e=e|0;var n=0;n=e+360|0,(t[n>>2]|0)!=3&&(D[e+356>>2]=w(J),t[n>>2]=3,ln(e))}function E0(e,n){e=e|0,n=n|0;var r=0,o=0;o=n+356|0,r=t[o+4>>2]|0,n=e,t[n>>2]=t[o>>2],t[n+4>>2]=r}function qr(e,n){e=e|0,n=w(n);var r=0,o=0,s=0,l=0;l=gt(n)|0,r=(l^1)&1,o=e+364|0,s=e+368|0,(l|w(D[o>>2])==n?(t[s>>2]|0)==(r|0):0)||(D[o>>2]=n,t[s>>2]=r,ln(e))}function Eo(e,n){e=e|0,n=w(n);var r=0,o=0,s=0,l=0;l=gt(n)|0,r=l?0:2,o=e+364|0,s=e+368|0,(l|w(D[o>>2])==n?(t[s>>2]|0)==(r|0):0)||(D[o>>2]=n,t[s>>2]=r,ln(e))}function So(e,n){e=e|0,n=n|0;var r=0,o=0;o=n+364|0,r=t[o+4>>2]|0,n=e,t[n>>2]=t[o>>2],t[n+4>>2]=r}function wl(e,n){e=e|0,n=w(n);var r=0,o=0,s=0,l=0;l=gt(n)|0,r=(l^1)&1,o=e+372|0,s=e+376|0,(l|w(D[o>>2])==n?(t[s>>2]|0)==(r|0):0)||(D[o>>2]=n,t[s>>2]=r,ln(e))}function js(e,n){e=e|0,n=w(n);var r=0,o=0,s=0,l=0;l=gt(n)|0,r=l?0:2,o=e+372|0,s=e+376|0,(l|w(D[o>>2])==n?(t[s>>2]|0)==(r|0):0)||(D[o>>2]=n,t[s>>2]=r,ln(e))}function Dl(e,n){e=e|0,n=n|0;var r=0,o=0;o=n+372|0,r=t[o+4>>2]|0,n=e,t[n>>2]=t[o>>2],t[n+4>>2]=r}function du(e,n){e=e|0,n=w(n);var r=0,o=0,s=0,l=0;l=gt(n)|0,r=(l^1)&1,o=e+380|0,s=e+384|0,(l|w(D[o>>2])==n?(t[s>>2]|0)==(r|0):0)||(D[o>>2]=n,t[s>>2]=r,ln(e))}function Yu(e,n){e=e|0,n=w(n);var r=0,o=0,s=0,l=0;l=gt(n)|0,r=l?0:2,o=e+380|0,s=e+384|0,(l|w(D[o>>2])==n?(t[s>>2]|0)==(r|0):0)||(D[o>>2]=n,t[s>>2]=r,ln(e))}function Us(e,n){e=e|0,n=n|0;var r=0,o=0;o=n+380|0,r=t[o+4>>2]|0,n=e,t[n>>2]=t[o>>2],t[n+4>>2]=r}function oo(e,n){e=e|0,n=w(n);var r=0,o=0,s=0,l=0;l=gt(n)|0,r=(l^1)&1,o=e+388|0,s=e+392|0,(l|w(D[o>>2])==n?(t[s>>2]|0)==(r|0):0)||(D[o>>2]=n,t[s>>2]=r,ln(e))}function Hi(e,n){e=e|0,n=w(n);var r=0,o=0,s=0,l=0;l=gt(n)|0,r=l?0:2,o=e+388|0,s=e+392|0,(l|w(D[o>>2])==n?(t[s>>2]|0)==(r|0):0)||(D[o>>2]=n,t[s>>2]=r,ln(e))}function qs(e,n){e=e|0,n=n|0;var r=0,o=0;o=n+388|0,r=t[o+4>>2]|0,n=e,t[n>>2]=t[o>>2],t[n+4>>2]=r}function F0(e,n){e=e|0,n=w(n);var r=0;r=e+396|0,w(D[r>>2])!=n&&(D[r>>2]=n,ln(e))}function Gr(e){return e=e|0,w(D[e+396>>2])}function ir(e){return e=e|0,w(D[e+400>>2])}function L0(e){return e=e|0,w(D[e+404>>2])}function Y0(e){return e=e|0,w(D[e+408>>2])}function Co(e){return e=e|0,w(D[e+412>>2])}function $u(e){return e=e|0,w(D[e+416>>2])}function Vo(e){return e=e|0,w(D[e+420>>2])}function Rr(e,n){switch(e=e|0,n=n|0,i0(e,(n|0)<6,2918),n|0){case 0:{n=(t[e+496>>2]|0)==2?5:4;break}case 2:{n=(t[e+496>>2]|0)==2?4:5;break}default:}return w(D[e+424+(n<<2)>>2])}function Jn(e,n){switch(e=e|0,n=n|0,i0(e,(n|0)<6,2918),n|0){case 0:{n=(t[e+496>>2]|0)==2?5:4;break}case 2:{n=(t[e+496>>2]|0)==2?4:5;break}default:}return w(D[e+448+(n<<2)>>2])}function ai(e,n){switch(e=e|0,n=n|0,i0(e,(n|0)<6,2918),n|0){case 0:{n=(t[e+496>>2]|0)==2?5:4;break}case 2:{n=(t[e+496>>2]|0)==2?4:5;break}default:}return w(D[e+472+(n<<2)>>2])}function o0(e,n){e=e|0,n=n|0;var r=0,o=tt;return r=t[e+4>>2]|0,(r|0)==(t[n+4>>2]|0)?r?(o=w(D[e>>2]),e=w(Ot(w(o-w(D[n>>2]))))>2]=0,t[o+4>>2]=0,t[o+8>>2]=0,Ru(o|0,e|0,n|0,0),wn(e,3,(c[o+11>>0]|0)<0?t[o>>2]|0:o,r),ML(o),h=r}function $0(e,n,r,o){e=w(e),n=w(n),r=r|0,o=o|0;var s=tt;e=w(e*n),s=w(V4(e,w(1)));do if(Vr(s,w(0))|0)e=w(e-s);else{if(e=w(e-s),Vr(s,w(1))|0){e=w(e+w(1));break}if(r){e=w(e+w(1));break}o||(s>w(.5)?s=w(1):(o=Vr(s,w(.5))|0,s=w(o?1:0)),e=w(e+s))}while(0);return w(e/n)}function K0(e,n,r,o,s,l,d,_,y,k,T,P,q){e=e|0,n=w(n),r=r|0,o=w(o),s=s|0,l=w(l),d=d|0,_=w(_),y=w(y),k=w(k),T=w(T),P=w(P),q=q|0;var we=0,le=tt,ie=tt,Pe=tt,ke=tt,qe=tt,pe=tt;return y>2]),le!=w(0)):0)?(Pe=w($0(n,le,0,0)),ke=w($0(o,le,0,0)),ie=w($0(l,le,0,0)),le=w($0(_,le,0,0))):(ie=l,Pe=n,le=_,ke=o),(s|0)==(e|0)?we=Vr(ie,Pe)|0:we=0,(d|0)==(r|0)?q=Vr(le,ke)|0:q=0,((we?0:(qe=w(n-T),!(ae(e,qe,y)|0)))?!(Be(e,qe,s,y)|0):0)?we=Ie(e,qe,s,l,y)|0:we=1,((q?0:(pe=w(o-P),!(ae(r,pe,k)|0)))?!(Be(r,pe,d,k)|0):0)?q=Ie(r,pe,d,_,k)|0:q=1,q=we&q),q|0}function ae(e,n,r){return e=e|0,n=w(n),r=w(r),(e|0)==1?e=Vr(n,r)|0:e=0,e|0}function Be(e,n,r,o){return e=e|0,n=w(n),r=r|0,o=w(o),(e|0)==2&(r|0)==0?n>=o?e=1:e=Vr(n,o)|0:e=0,e|0}function Ie(e,n,r,o,s){return e=e|0,n=w(n),r=r|0,o=w(o),s=w(s),(e|0)==2&(r|0)==2&o>n?s<=n?e=1:e=Vr(n,s)|0:e=0,e|0}function ht(e,n,r,o,s,l,d,_,y,k,T){e=e|0,n=w(n),r=w(r),o=o|0,s=s|0,l=l|0,d=w(d),_=w(_),y=y|0,k=k|0,T=T|0;var P=0,q=0,we=0,le=0,ie=tt,Pe=tt,ke=0,qe=0,pe=0,_e=0,vt=0,Ln=0,Ht=0,It=0,gn=0,Pn=0,zt=0,Dr=tt,Ki=tt,Xi=tt,Ji=0,Ro=0;zt=h,h=h+160|0,It=zt+152|0,Ht=zt+120|0,Ln=zt+104|0,pe=zt+72|0,le=zt+56|0,vt=zt+8|0,qe=zt,_e=(t[2279]|0)+1|0,t[2279]=_e,gn=e+984|0,((c[gn>>0]|0)!=0?(t[e+512>>2]|0)!=(t[2278]|0):0)?ke=4:(t[e+516>>2]|0)==(o|0)?Pn=0:ke=4,(ke|0)==4&&(t[e+520>>2]=0,t[e+924>>2]=-1,t[e+928>>2]=-1,D[e+932>>2]=w(-1),D[e+936>>2]=w(-1),Pn=1);e:do if(t[e+964>>2]|0)if(ie=w(mt(e,2,d)),Pe=w(mt(e,0,d)),P=e+916|0,Xi=w(D[P>>2]),Ki=w(D[e+920>>2]),Dr=w(D[e+932>>2]),K0(s,n,l,r,t[e+924>>2]|0,Xi,t[e+928>>2]|0,Ki,Dr,w(D[e+936>>2]),ie,Pe,T)|0)ke=22;else if(we=t[e+520>>2]|0,!we)ke=21;else for(q=0;;){if(P=e+524+(q*24|0)|0,Dr=w(D[P>>2]),Ki=w(D[e+524+(q*24|0)+4>>2]),Xi=w(D[e+524+(q*24|0)+16>>2]),K0(s,n,l,r,t[e+524+(q*24|0)+8>>2]|0,Dr,t[e+524+(q*24|0)+12>>2]|0,Ki,Xi,w(D[e+524+(q*24|0)+20>>2]),ie,Pe,T)|0){ke=22;break e}if(q=q+1|0,q>>>0>=we>>>0){ke=21;break}}else{if(y){if(P=e+916|0,!(Vr(w(D[P>>2]),n)|0)){ke=21;break}if(!(Vr(w(D[e+920>>2]),r)|0)){ke=21;break}if((t[e+924>>2]|0)!=(s|0)){ke=21;break}P=(t[e+928>>2]|0)==(l|0)?P:0,ke=22;break}if(we=t[e+520>>2]|0,!we)ke=21;else for(q=0;;){if(P=e+524+(q*24|0)|0,((Vr(w(D[P>>2]),n)|0?Vr(w(D[e+524+(q*24|0)+4>>2]),r)|0:0)?(t[e+524+(q*24|0)+8>>2]|0)==(s|0):0)?(t[e+524+(q*24|0)+12>>2]|0)==(l|0):0){ke=22;break e}if(q=q+1|0,q>>>0>=we>>>0){ke=21;break}}}while(0);do if((ke|0)==21)c[11697]|0?(P=0,ke=28):(P=0,ke=31);else if((ke|0)==22){if(q=(c[11697]|0)!=0,!((P|0)!=0&(Pn^1)))if(q){ke=28;break}else{ke=31;break}le=P+16|0,t[e+908>>2]=t[le>>2],we=P+20|0,t[e+912>>2]=t[we>>2],(c[11698]|0)==0|q^1||(t[qe>>2]=Gn(_e)|0,t[qe+4>>2]=_e,wn(e,4,2972,qe),q=t[e+972>>2]|0,q|0&&Nl[q&127](e),s=$t(s,y)|0,l=$t(l,y)|0,Ro=+w(D[le>>2]),Ji=+w(D[we>>2]),t[vt>>2]=s,t[vt+4>>2]=l,L[vt+8>>3]=+n,L[vt+16>>3]=+r,L[vt+24>>3]=Ro,L[vt+32>>3]=Ji,t[vt+40>>2]=k,wn(e,4,2989,vt))}while(0);return(ke|0)==28&&(q=Gn(_e)|0,t[le>>2]=q,t[le+4>>2]=_e,t[le+8>>2]=Pn?3047:11699,wn(e,4,3038,le),q=t[e+972>>2]|0,q|0&&Nl[q&127](e),vt=$t(s,y)|0,ke=$t(l,y)|0,t[pe>>2]=vt,t[pe+4>>2]=ke,L[pe+8>>3]=+n,L[pe+16>>3]=+r,t[pe+24>>2]=k,wn(e,4,3049,pe),ke=31),(ke|0)==31&&(X0(e,n,r,o,s,l,d,_,y,T),c[11697]|0&&(q=t[2279]|0,vt=Gn(q)|0,t[Ln>>2]=vt,t[Ln+4>>2]=q,t[Ln+8>>2]=Pn?3047:11699,wn(e,4,3083,Ln),q=t[e+972>>2]|0,q|0&&Nl[q&127](e),vt=$t(s,y)|0,Ln=$t(l,y)|0,Ji=+w(D[e+908>>2]),Ro=+w(D[e+912>>2]),t[Ht>>2]=vt,t[Ht+4>>2]=Ln,L[Ht+8>>3]=Ji,L[Ht+16>>3]=Ro,t[Ht+24>>2]=k,wn(e,4,3092,Ht)),t[e+516>>2]=o,P||(q=e+520|0,P=t[q>>2]|0,(P|0)==16&&(c[11697]|0&&wn(e,4,3124,It),t[q>>2]=0,P=0),y?P=e+916|0:(t[q>>2]=P+1,P=e+524+(P*24|0)|0),D[P>>2]=n,D[P+4>>2]=r,t[P+8>>2]=s,t[P+12>>2]=l,t[P+16>>2]=t[e+908>>2],t[P+20>>2]=t[e+912>>2],P=0)),y&&(t[e+416>>2]=t[e+908>>2],t[e+420>>2]=t[e+912>>2],c[e+985>>0]=1,c[gn>>0]=0),t[2279]=(t[2279]|0)+-1,t[e+512>>2]=t[2278],h=zt,Pn|(P|0)==0|0}function mt(e,n,r){e=e|0,n=n|0,r=w(r);var o=tt;return o=w(Tr(e,n,r)),w(o+w(R0(e,n,r)))}function wn(e,n,r,o){e=e|0,n=n|0,r=r|0,o=o|0;var s=0,l=0;l=h,h=h+16|0,s=l,t[s>>2]=o,e?o=t[e+976>>2]|0:o=0,Ku(o,e,n,r,s),h=l}function Gn(e){return e=e|0,(e>>>0>60?3201:3201+(60-e)|0)|0}function $t(e,n){e=e|0,n=n|0;var r=0,o=0,s=0;return s=h,h=h+32|0,r=s+12|0,o=s,t[r>>2]=t[254],t[r+4>>2]=t[255],t[r+8>>2]=t[256],t[o>>2]=t[257],t[o+4>>2]=t[258],t[o+8>>2]=t[259],(e|0)>2?e=11699:e=t[(n?o:r)+(e<<2)>>2]|0,h=s,e|0}function X0(e,n,r,o,s,l,d,_,y,k){e=e|0,n=w(n),r=w(r),o=o|0,s=s|0,l=l|0,d=w(d),_=w(_),y=y|0,k=k|0;var T=0,P=0,q=0,we=0,le=tt,ie=tt,Pe=tt,ke=tt,qe=tt,pe=tt,_e=tt,vt=0,Ln=0,Ht=0,It=tt,gn=tt,Pn=0,zt=tt,Dr=0,Ki=0,Xi=0,Ji=0,Ro=0,kf=0,Af=0,Cu=0,Of=0,Js=0,Qs=0,If=0,Pf=0,Mf=0,Kn=0,Tu=0,Ff=0,us=0,Lf=tt,Rf=tt,Zs=tt,el=tt,ss=tt,Fi=0,nu=0,go=0,xu=0,jl=0,Ul=tt,tl=tt,ql=tt,zl=tt,Li=tt,Di=tt,ku=0,xr=tt,Wl=tt,Qi=tt,ls=tt,Zi=tt,fs=tt,Hl=0,bl=0,cs=tt,Ri=tt,Au=0,Gl=0,Vl=0,Yl=0,En=tt,br=0,Ei=0,eo=0,Ni=0,xn=0,Vt=0,Ou=0,kt=tt,$l=0,Qr=0;Ou=h,h=h+16|0,Fi=Ou+12|0,nu=Ou+8|0,go=Ou+4|0,xu=Ou,i0(e,(s|0)==0|(gt(n)|0)^1,3326),i0(e,(l|0)==0|(gt(r)|0)^1,3406),Ei=so(e,o)|0,t[e+496>>2]=Ei,xn=N0(2,Ei)|0,Vt=N0(0,Ei)|0,D[e+440>>2]=w(Tr(e,xn,d)),D[e+444>>2]=w(R0(e,xn,d)),D[e+428>>2]=w(Tr(e,Vt,d)),D[e+436>>2]=w(R0(e,Vt,d)),D[e+464>>2]=w(C0(e,xn)),D[e+468>>2]=w(di(e,xn)),D[e+452>>2]=w(C0(e,Vt)),D[e+460>>2]=w(di(e,Vt)),D[e+488>>2]=w(u0(e,xn,d)),D[e+492>>2]=w(v0(e,xn,d)),D[e+476>>2]=w(u0(e,Vt,d)),D[e+484>>2]=w(v0(e,Vt,d));do if(t[e+964>>2]|0)To(e,n,r,s,l,d,_);else{if(eo=e+948|0,Ni=(t[e+952>>2]|0)-(t[eo>>2]|0)>>2,!Ni){pu(e,n,r,s,l,d,_);break}if(y?0:Sl(e,n,r,s,l,d,_)|0)break;bo(e),Tu=e+508|0,c[Tu>>0]=0,xn=N0(t[e+4>>2]|0,Ei)|0,Vt=Cl(xn,Ei)|0,br=Nr(xn)|0,Ff=t[e+8>>2]|0,Gl=e+28|0,us=(t[Gl>>2]|0)!=0,Zi=br?d:_,cs=br?_:d,Lf=w(B0(e,xn,d)),Rf=w(hu(e,xn,d)),le=w(B0(e,Vt,d)),fs=w(Fn(e,xn,d)),Ri=w(Fn(e,Vt,d)),Ht=br?s:l,Au=br?l:s,En=br?fs:Ri,qe=br?Ri:fs,ls=w(mt(e,2,d)),ke=w(mt(e,0,d)),ie=w(w(Tn(e+364|0,d))-En),Pe=w(w(Tn(e+380|0,d))-En),pe=w(w(Tn(e+372|0,_))-qe),_e=w(w(Tn(e+388|0,_))-qe),Zs=br?ie:pe,el=br?Pe:_e,ls=w(n-ls),n=w(ls-En),gt(n)|0?En=n:En=w(Ur(w(cc(n,Pe)),ie)),Wl=w(r-ke),n=w(Wl-qe),gt(n)|0?Qi=n:Qi=w(Ur(w(cc(n,_e)),pe)),ie=br?En:Qi,xr=br?Qi:En;e:do if((Ht|0)==1)for(o=0,P=0;;){if(T=e0(e,P)|0,!o)(w(Br(T))>w(0)?w(zr(T))>w(0):0)?o=T:o=0;else if(pi(T)|0){we=0;break e}if(P=P+1|0,P>>>0>=Ni>>>0){we=o;break}}else we=0;while(0);vt=we+500|0,Ln=we+504|0,o=0,T=0,n=w(0),q=0;do{if(P=t[(t[eo>>2]|0)+(q<<2)>>2]|0,(t[P+36>>2]|0)==1)lo(P),c[P+985>>0]=1,c[P+984>>0]=0;else{$r(P),y&&Yo(P,so(P,Ei)|0,ie,xr,En);do if((t[P+24>>2]|0)!=1)if((P|0)==(we|0)){t[vt>>2]=t[2278],D[Ln>>2]=w(0);break}else{wr(e,P,En,s,Qi,En,Qi,l,Ei,k);break}else T|0&&(t[T+960>>2]=P),t[P+960>>2]=0,T=P,o=(o|0)==0?P:o;while(0);Di=w(D[P+504>>2]),n=w(n+w(Di+w(mt(P,xn,En))))}q=q+1|0}while((q|0)!=(Ni|0));for(Xi=n>ie,ku=us&((Ht|0)==2&Xi)?1:Ht,Dr=(Au|0)==1,Ro=Dr&(y^1),kf=(ku|0)==1,Af=(ku|0)==2,Cu=976+(xn<<2)|0,Of=(Au|2|0)==2,Mf=Dr&(us^1),Js=1040+(Vt<<2)|0,Qs=1040+(xn<<2)|0,If=976+(Vt<<2)|0,Pf=(Au|0)!=1,Xi=us&((Ht|0)!=0&Xi),Ki=e+976|0,Dr=Dr^1,n=ie,Pn=0,Ji=0,Di=w(0),ss=w(0);;){e:do if(Pn>>>0>>0)for(Ln=t[eo>>2]|0,q=0,_e=w(0),pe=w(0),Pe=w(0),ie=w(0),P=0,T=0,we=Pn;;){if(vt=t[Ln+(we<<2)>>2]|0,(t[vt+36>>2]|0)!=1?(t[vt+940>>2]=Ji,(t[vt+24>>2]|0)!=1):0){if(ke=w(mt(vt,xn,En)),Kn=t[Cu>>2]|0,r=w(Tn(vt+380+(Kn<<3)|0,Zi)),qe=w(D[vt+504>>2]),r=w(cc(r,qe)),r=w(Ur(w(Tn(vt+364+(Kn<<3)|0,Zi)),r)),us&(q|0)!=0&w(ke+w(pe+r))>n){l=q,ke=_e,Ht=we;break e}ke=w(ke+r),r=w(pe+ke),ke=w(_e+ke),pi(vt)|0&&(Pe=w(Pe+w(Br(vt))),ie=w(ie-w(qe*w(zr(vt))))),T|0&&(t[T+960>>2]=vt),t[vt+960>>2]=0,q=q+1|0,T=vt,P=(P|0)==0?vt:P}else ke=_e,r=pe;if(we=we+1|0,we>>>0>>0)_e=ke,pe=r;else{l=q,Ht=we;break}}else l=0,ke=w(0),Pe=w(0),ie=w(0),P=0,Ht=Pn;while(0);Kn=Pe>w(0)&Pew(0)&ieel&((gt(el)|0)^1))n=el,Kn=51;else if(c[(t[Ki>>2]|0)+3>>0]|0)Kn=51;else{if(It!=w(0)?w(Br(e))!=w(0):0){Kn=53;break}n=ke,Kn=53}while(0);if((Kn|0)==51&&(Kn=0,gt(n)|0?Kn=53:(gn=w(n-ke),zt=n)),(Kn|0)==53&&(Kn=0,ke>2]|0,we=gnw(0),pe=w(gn/It),Pe=w(0),ke=w(0),n=w(0),T=P;do r=w(Tn(T+380+(q<<3)|0,Zi)),ie=w(Tn(T+364+(q<<3)|0,Zi)),ie=w(cc(r,w(Ur(ie,w(D[T+504>>2]))))),we?(r=w(ie*w(zr(T))),(r!=w(-0)?(kt=w(ie-w(qe*r)),Ul=w(kn(T,xn,kt,zt,En)),kt!=Ul):0)&&(Pe=w(Pe-w(Ul-ie)),n=w(n+r))):((vt?(tl=w(Br(T)),tl!=w(0)):0)?(kt=w(ie+w(pe*tl)),ql=w(kn(T,xn,kt,zt,En)),kt!=ql):0)&&(Pe=w(Pe-w(ql-ie)),ke=w(ke-tl)),T=t[T+960>>2]|0;while((T|0)!=0);if(n=w(_e+n),ie=w(gn+Pe),jl)n=w(0);else{qe=w(It+ke),we=t[Cu>>2]|0,vt=iew(0),qe=w(ie/qe),n=w(0);do{kt=w(Tn(P+380+(we<<3)|0,Zi)),Pe=w(Tn(P+364+(we<<3)|0,Zi)),Pe=w(cc(kt,w(Ur(Pe,w(D[P+504>>2]))))),vt?(kt=w(Pe*w(zr(P))),ie=w(-kt),kt!=w(-0)?(kt=w(pe*ie),ie=w(kn(P,xn,w(Pe+(Ln?ie:kt)),zt,En))):ie=Pe):(q?(zl=w(Br(P)),zl!=w(0)):0)?ie=w(kn(P,xn,w(Pe+w(qe*zl)),zt,En)):ie=Pe,n=w(n-w(ie-Pe)),ke=w(mt(P,xn,En)),r=w(mt(P,Vt,En)),ie=w(ie+ke),D[nu>>2]=ie,t[xu>>2]=1,Pe=w(D[P+396>>2]);e:do if(gt(Pe)|0){T=gt(xr)|0;do if(!T){if(Xi|(m0(P,Vt,xr)|0|Dr)||(T0(e,P)|0)!=4||(t[(hi(P,Vt)|0)+4>>2]|0)==3||(t[(Ai(P,Vt)|0)+4>>2]|0)==3)break;D[Fi>>2]=xr,t[go>>2]=1;break e}while(0);if(m0(P,Vt,xr)|0){T=t[P+992+(t[If>>2]<<2)>>2]|0,kt=w(r+w(Tn(T,xr))),D[Fi>>2]=kt,T=Pf&(t[T+4>>2]|0)==2,t[go>>2]=((gt(kt)|0|T)^1)&1;break}else{D[Fi>>2]=xr,t[go>>2]=T?0:2;break}}else kt=w(ie-ke),It=w(kt/Pe),kt=w(Pe*kt),t[go>>2]=1,D[Fi>>2]=w(r+(br?It:kt));while(0);Kt(P,xn,zt,En,xu,nu),Kt(P,Vt,xr,En,go,Fi);do if(m0(P,Vt,xr)|0?0:(T0(e,P)|0)==4){if((t[(hi(P,Vt)|0)+4>>2]|0)==3){T=0;break}T=(t[(Ai(P,Vt)|0)+4>>2]|0)!=3}else T=0;while(0);kt=w(D[nu>>2]),It=w(D[Fi>>2]),$l=t[xu>>2]|0,Qr=t[go>>2]|0,ht(P,br?kt:It,br?It:kt,Ei,br?$l:Qr,br?Qr:$l,En,Qi,y&(T^1),3488,k)|0,c[Tu>>0]=c[Tu>>0]|c[P+508>>0],P=t[P+960>>2]|0}while((P|0)!=0)}}else n=w(0);if(n=w(gn+n),Qr=n>0]=Qr|C[Tu>>0],Af&n>w(0)?(T=t[Cu>>2]|0,((t[e+364+(T<<3)+4>>2]|0)!=0?(Li=w(Tn(e+364+(T<<3)|0,Zi)),Li>=w(0)):0)?ie=w(Ur(w(0),w(Li-w(zt-n)))):ie=w(0)):ie=n,vt=Pn>>>0>>0,vt){we=t[eo>>2]|0,q=Pn,T=0;do P=t[we+(q<<2)>>2]|0,t[P+24>>2]|0||(T=((t[(hi(P,xn)|0)+4>>2]|0)==3&1)+T|0,T=T+((t[(Ai(P,xn)|0)+4>>2]|0)==3&1)|0),q=q+1|0;while((q|0)!=(Ht|0));T?(ke=w(0),r=w(0)):Kn=101}else Kn=101;e:do if((Kn|0)==101)switch(Kn=0,Ff|0){case 1:{T=0,ke=w(ie*w(.5)),r=w(0);break e}case 2:{T=0,ke=ie,r=w(0);break e}case 3:{if(l>>>0<=1){T=0,ke=w(0),r=w(0);break e}r=w((l+-1|0)>>>0),T=0,ke=w(0),r=w(w(Ur(ie,w(0)))/r);break e}case 5:{r=w(ie/w((l+1|0)>>>0)),T=0,ke=r;break e}case 4:{r=w(ie/w(l>>>0)),T=0,ke=w(r*w(.5));break e}default:{T=0,ke=w(0),r=w(0);break e}}while(0);if(n=w(Lf+ke),vt){Pe=w(ie/w(T|0)),q=t[eo>>2]|0,P=Pn,ie=w(0);do{T=t[q+(P<<2)>>2]|0;e:do if((t[T+36>>2]|0)!=1){switch(t[T+24>>2]|0){case 1:{if(X(T,xn)|0){if(!y)break e;kt=w(Y(T,xn,zt)),kt=w(kt+w(C0(e,xn))),kt=w(kt+w(Tr(T,xn,En))),D[T+400+(t[Qs>>2]<<2)>>2]=kt;break e}break}case 0:if(Qr=(t[(hi(T,xn)|0)+4>>2]|0)==3,kt=w(Pe+n),n=Qr?kt:n,y&&(Qr=T+400+(t[Qs>>2]<<2)|0,D[Qr>>2]=w(n+w(D[Qr>>2]))),Qr=(t[(Ai(T,xn)|0)+4>>2]|0)==3,kt=w(Pe+n),n=Qr?kt:n,Ro){kt=w(r+w(mt(T,xn,En))),ie=xr,n=w(n+w(kt+w(D[T+504>>2])));break e}else{n=w(n+w(r+w(ye(T,xn,En)))),ie=w(Ur(ie,w(ye(T,Vt,En))));break e}default:}y&&(kt=w(ke+w(C0(e,xn))),Qr=T+400+(t[Qs>>2]<<2)|0,D[Qr>>2]=w(kt+w(D[Qr>>2])))}while(0);P=P+1|0}while((P|0)!=(Ht|0))}else ie=w(0);if(r=w(Rf+n),Of?ke=w(w(kn(e,Vt,w(Ri+ie),cs,d))-Ri):ke=xr,Pe=w(w(kn(e,Vt,w(Ri+(Mf?xr:ie)),cs,d))-Ri),vt&y){P=Pn;do{q=t[(t[eo>>2]|0)+(P<<2)>>2]|0;do if((t[q+36>>2]|0)!=1){if((t[q+24>>2]|0)==1){if(X(q,Vt)|0){if(kt=w(Y(q,Vt,xr)),kt=w(kt+w(C0(e,Vt))),kt=w(kt+w(Tr(q,Vt,En))),T=t[Js>>2]|0,D[q+400+(T<<2)>>2]=kt,!(gt(kt)|0))break}else T=t[Js>>2]|0;kt=w(C0(e,Vt)),D[q+400+(T<<2)>>2]=w(kt+w(Tr(q,Vt,En)));break}T=T0(e,q)|0;do if((T|0)==4){if((t[(hi(q,Vt)|0)+4>>2]|0)==3){Kn=139;break}if((t[(Ai(q,Vt)|0)+4>>2]|0)==3){Kn=139;break}if(m0(q,Vt,xr)|0){n=le;break}$l=t[q+908+(t[Cu>>2]<<2)>>2]|0,t[Fi>>2]=$l,n=w(D[q+396>>2]),Qr=gt(n)|0,ie=(t[j>>2]=$l,w(D[j>>2])),Qr?n=Pe:(gn=w(mt(q,Vt,En)),kt=w(ie/n),n=w(n*ie),n=w(gn+(br?kt:n))),D[nu>>2]=n,D[Fi>>2]=w(w(mt(q,xn,En))+ie),t[go>>2]=1,t[xu>>2]=1,Kt(q,xn,zt,En,go,Fi),Kt(q,Vt,xr,En,xu,nu),n=w(D[Fi>>2]),gn=w(D[nu>>2]),kt=br?n:gn,n=br?gn:n,Qr=((gt(kt)|0)^1)&1,ht(q,kt,n,Ei,Qr,((gt(n)|0)^1)&1,En,Qi,1,3493,k)|0,n=le}else Kn=139;while(0);e:do if((Kn|0)==139){Kn=0,n=w(ke-w(ye(q,Vt,En)));do if((t[(hi(q,Vt)|0)+4>>2]|0)==3){if((t[(Ai(q,Vt)|0)+4>>2]|0)!=3)break;n=w(le+w(Ur(w(0),w(n*w(.5)))));break e}while(0);if((t[(Ai(q,Vt)|0)+4>>2]|0)==3){n=le;break}if((t[(hi(q,Vt)|0)+4>>2]|0)==3){n=w(le+w(Ur(w(0),n)));break}switch(T|0){case 1:{n=le;break e}case 2:{n=w(le+w(n*w(.5)));break e}default:{n=w(le+n);break e}}}while(0);kt=w(Di+n),Qr=q+400+(t[Js>>2]<<2)|0,D[Qr>>2]=w(kt+w(D[Qr>>2]))}while(0);P=P+1|0}while((P|0)!=(Ht|0))}if(Di=w(Di+Pe),ss=w(Ur(ss,r)),l=Ji+1|0,Ht>>>0>=Ni>>>0)break;n=zt,Pn=Ht,Ji=l}do if(y){if(T=l>>>0>1,T?0:!(he(e)|0))break;if(!(gt(xr)|0)){n=w(xr-Di);e:do switch(t[e+12>>2]|0){case 3:{le=w(le+n),pe=w(0);break}case 2:{le=w(le+w(n*w(.5))),pe=w(0);break}case 4:{xr>Di?pe=w(n/w(l>>>0)):pe=w(0);break}case 7:if(xr>Di){le=w(le+w(n/w(l<<1>>>0))),pe=w(n/w(l>>>0)),pe=T?pe:w(0);break e}else{le=w(le+w(n*w(.5))),pe=w(0);break e}case 6:{pe=w(n/w(Ji>>>0)),pe=xr>Di&T?pe:w(0);break}default:pe=w(0)}while(0);if(l|0)for(vt=1040+(Vt<<2)|0,Ln=976+(Vt<<2)|0,we=0,P=0;;){e:do if(P>>>0>>0)for(ie=w(0),Pe=w(0),n=w(0),q=P;;){T=t[(t[eo>>2]|0)+(q<<2)>>2]|0;do if((t[T+36>>2]|0)!=1?(t[T+24>>2]|0)==0:0){if((t[T+940>>2]|0)!=(we|0))break e;if(We(T,Vt)|0&&(kt=w(D[T+908+(t[Ln>>2]<<2)>>2]),n=w(Ur(n,w(kt+w(mt(T,Vt,En)))))),(T0(e,T)|0)!=5)break;Li=w(et(T)),Li=w(Li+w(Tr(T,0,En))),kt=w(D[T+912>>2]),kt=w(w(kt+w(mt(T,0,En)))-Li),Li=w(Ur(Pe,Li)),kt=w(Ur(ie,kt)),ie=kt,Pe=Li,n=w(Ur(n,w(Li+kt)))}while(0);if(T=q+1|0,T>>>0>>0)q=T;else{q=T;break}}else Pe=w(0),n=w(0),q=P;while(0);if(qe=w(pe+n),r=le,le=w(le+qe),P>>>0>>0){ke=w(r+Pe),T=P;do{P=t[(t[eo>>2]|0)+(T<<2)>>2]|0;e:do if((t[P+36>>2]|0)!=1?(t[P+24>>2]|0)==0:0)switch(T0(e,P)|0){case 1:{kt=w(r+w(Tr(P,Vt,En))),D[P+400+(t[vt>>2]<<2)>>2]=kt;break e}case 3:{kt=w(w(le-w(R0(P,Vt,En)))-w(D[P+908+(t[Ln>>2]<<2)>>2])),D[P+400+(t[vt>>2]<<2)>>2]=kt;break e}case 2:{kt=w(r+w(w(qe-w(D[P+908+(t[Ln>>2]<<2)>>2]))*w(.5))),D[P+400+(t[vt>>2]<<2)>>2]=kt;break e}case 4:{if(kt=w(r+w(Tr(P,Vt,En))),D[P+400+(t[vt>>2]<<2)>>2]=kt,m0(P,Vt,xr)|0||(br?(ie=w(D[P+908>>2]),n=w(ie+w(mt(P,xn,En))),Pe=qe):(Pe=w(D[P+912>>2]),Pe=w(Pe+w(mt(P,Vt,En))),n=qe,ie=w(D[P+908>>2])),Vr(n,ie)|0?Vr(Pe,w(D[P+912>>2]))|0:0))break e;ht(P,n,Pe,Ei,1,1,En,Qi,1,3501,k)|0;break e}case 5:{D[P+404>>2]=w(w(ke-w(et(P)))+w(Y(P,0,xr)));break e}default:break e}while(0);T=T+1|0}while((T|0)!=(q|0))}if(we=we+1|0,(we|0)==(l|0))break;P=q}}}while(0);if(D[e+908>>2]=w(kn(e,2,ls,d,d)),D[e+912>>2]=w(kn(e,0,Wl,_,d)),((ku|0)!=0?(Hl=t[e+32>>2]|0,bl=(ku|0)==2,!(bl&(Hl|0)!=2)):0)?bl&(Hl|0)==2&&(n=w(fs+zt),n=w(Ur(w(cc(n,w(Dt(e,xn,ss,Zi)))),fs)),Kn=198):(n=w(kn(e,xn,ss,Zi,d)),Kn=198),(Kn|0)==198&&(D[e+908+(t[976+(xn<<2)>>2]<<2)>>2]=n),((Au|0)!=0?(Vl=t[e+32>>2]|0,Yl=(Au|0)==2,!(Yl&(Vl|0)!=2)):0)?Yl&(Vl|0)==2&&(n=w(Ri+xr),n=w(Ur(w(cc(n,w(Dt(e,Vt,w(Ri+Di),cs)))),Ri)),Kn=204):(n=w(kn(e,Vt,w(Ri+Di),cs,d)),Kn=204),(Kn|0)==204&&(D[e+908+(t[976+(Vt<<2)>>2]<<2)>>2]=n),y){if((t[Gl>>2]|0)==2){P=976+(Vt<<2)|0,q=1040+(Vt<<2)|0,T=0;do we=e0(e,T)|0,t[we+24>>2]|0||($l=t[P>>2]|0,kt=w(D[e+908+($l<<2)>>2]),Qr=we+400+(t[q>>2]<<2)|0,kt=w(kt-w(D[Qr>>2])),D[Qr>>2]=w(kt-w(D[we+908+($l<<2)>>2]))),T=T+1|0;while((T|0)!=(Ni|0))}if(o|0){T=br?ku:s;do bt(e,o,En,T,Qi,Ei,k),o=t[o+960>>2]|0;while((o|0)!=0)}if(T=(xn|2|0)==3,P=(Vt|2|0)==3,T|P){o=0;do q=t[(t[eo>>2]|0)+(o<<2)>>2]|0,(t[q+36>>2]|0)!=1&&(T&&Zt(e,q,xn),P&&Zt(e,q,Vt)),o=o+1|0;while((o|0)!=(Ni|0))}}}while(0);h=Ou}function ki(e,n){e=e|0,n=w(n);var r=0;li(e,n>=w(0),3147),r=n==w(0),D[e+4>>2]=r?w(0):n}function Yr(e,n,r,o){e=e|0,n=w(n),r=w(r),o=o|0;var s=tt,l=tt,d=0,_=0,y=0;t[2278]=(t[2278]|0)+1,$r(e),m0(e,2,n)|0?(s=w(Tn(t[e+992>>2]|0,n)),y=1,s=w(s+w(mt(e,2,n)))):(s=w(Tn(e+380|0,n)),s>=w(0)?y=2:(y=((gt(n)|0)^1)&1,s=n)),m0(e,0,r)|0?(l=w(Tn(t[e+996>>2]|0,r)),_=1,l=w(l+w(mt(e,0,n)))):(l=w(Tn(e+388|0,r)),l>=w(0)?_=2:(_=((gt(r)|0)^1)&1,l=r)),d=e+976|0,(ht(e,s,l,o,y,_,n,r,1,3189,t[d>>2]|0)|0?(Yo(e,t[e+496>>2]|0,n,r,n),bi(e,w(D[(t[d>>2]|0)+4>>2]),w(0),w(0)),c[11696]|0):0)&&ff(e,7)}function $r(e){e=e|0;var n=0,r=0,o=0,s=0,l=0,d=0,_=0,y=0,k=0,T=0;_=h,h=h+32|0,d=_+24|0,l=_+16|0,o=_+8|0,s=_,r=0;do n=e+380+(r<<3)|0,((t[e+380+(r<<3)+4>>2]|0)!=0?(y=n,k=t[y+4>>2]|0,T=o,t[T>>2]=t[y>>2],t[T+4>>2]=k,T=e+364+(r<<3)|0,k=t[T+4>>2]|0,y=s,t[y>>2]=t[T>>2],t[y+4>>2]=k,t[l>>2]=t[o>>2],t[l+4>>2]=t[o+4>>2],t[d>>2]=t[s>>2],t[d+4>>2]=t[s+4>>2],o0(l,d)|0):0)||(n=e+348+(r<<3)|0),t[e+992+(r<<2)>>2]=n,r=r+1|0;while((r|0)!=2);h=_}function m0(e,n,r){e=e|0,n=n|0,r=w(r);var o=0;switch(e=t[e+992+(t[976+(n<<2)>>2]<<2)>>2]|0,t[e+4>>2]|0){case 0:case 3:{e=0;break}case 1:{w(D[e>>2])>2])>2]|0){case 2:{n=w(w(w(D[e>>2])*n)/w(100));break}case 1:{n=w(D[e>>2]);break}default:n=w(J)}return w(n)}function Yo(e,n,r,o,s){e=e|0,n=n|0,r=w(r),o=w(o),s=w(s);var l=0,d=tt;n=t[e+944>>2]|0?n:1,l=N0(t[e+4>>2]|0,n)|0,n=Cl(l,n)|0,r=w(Wr(e,l,r)),o=w(Wr(e,n,o)),d=w(r+w(Tr(e,l,s))),D[e+400+(t[1040+(l<<2)>>2]<<2)>>2]=d,r=w(r+w(R0(e,l,s))),D[e+400+(t[1e3+(l<<2)>>2]<<2)>>2]=r,r=w(o+w(Tr(e,n,s))),D[e+400+(t[1040+(n<<2)>>2]<<2)>>2]=r,s=w(o+w(R0(e,n,s))),D[e+400+(t[1e3+(n<<2)>>2]<<2)>>2]=s}function bi(e,n,r,o){e=e|0,n=w(n),r=w(r),o=w(o);var s=0,l=0,d=tt,_=tt,y=0,k=0,T=tt,P=0,q=tt,we=tt,le=tt,ie=tt;if(n!=w(0)&&(s=e+400|0,ie=w(D[s>>2]),l=e+404|0,le=w(D[l>>2]),P=e+416|0,we=w(D[P>>2]),k=e+420|0,d=w(D[k>>2]),q=w(ie+r),T=w(le+o),o=w(q+we),_=w(T+d),y=(t[e+988>>2]|0)==1,D[s>>2]=w($0(ie,n,0,y)),D[l>>2]=w($0(le,n,0,y)),r=w(V4(w(we*n),w(1))),Vr(r,w(0))|0?l=0:l=(Vr(r,w(1))|0)^1,r=w(V4(w(d*n),w(1))),Vr(r,w(0))|0?s=0:s=(Vr(r,w(1))|0)^1,ie=w($0(o,n,y&l,y&(l^1))),D[P>>2]=w(ie-w($0(q,n,0,y))),ie=w($0(_,n,y&s,y&(s^1))),D[k>>2]=w(ie-w($0(T,n,0,y))),l=(t[e+952>>2]|0)-(t[e+948>>2]|0)>>2,l|0)){s=0;do bi(e0(e,s)|0,n,q,T),s=s+1|0;while((s|0)!=(l|0))}}function or(e,n,r,o,s){switch(e=e|0,n=n|0,r=r|0,o=o|0,s=s|0,r|0){case 5:case 0:{e=q8(t[489]|0,o,s)|0;break}default:e=AL(o,s)|0}return e|0}function zs(e,n,r,o){e=e|0,n=n|0,r=r|0,o=o|0;var s=0,l=0;s=h,h=h+16|0,l=s,t[l>>2]=o,Ku(e,0,n,r,l),h=s}function Ku(e,n,r,o,s){if(e=e|0,n=n|0,r=r|0,o=o|0,s=s|0,e=e|0?e:956,sD[t[e+8>>2]&1](e,n,r,o,s)|0,(r|0)==5)_n();else return}function J0(e,n,r){e=e|0,n=n|0,r=r|0,c[e+n>>0]=r&1}function af(e,n){e=e|0,n=n|0;var r=0,o=0;t[e>>2]=0,t[e+4>>2]=0,t[e+8>>2]=0,r=n+4|0,o=(t[r>>2]|0)-(t[n>>2]|0)>>2,o|0&&(S0(e,o),El(e,t[n>>2]|0,t[r>>2]|0,o))}function S0(e,n){e=e|0,n=n|0;var r=0;if((Q0(e)|0)>>>0>>0&&$n(e),n>>>0>1073741823)_n();else{r=Tt(n<<2)|0,t[e+4>>2]=r,t[e>>2]=r,t[e+8>>2]=r+(n<<2);return}}function El(e,n,r,o){e=e|0,n=n|0,r=r|0,o=o|0,o=e+4|0,e=r-n|0,(e|0)>0&&(vn(t[o>>2]|0,n|0,e|0)|0,t[o>>2]=(t[o>>2]|0)+(e>>>2<<2))}function Q0(e){return e=e|0,1073741823}function Tr(e,n,r){return e=e|0,n=n|0,r=w(r),(Nr(n)|0?(t[e+96>>2]|0)!=0:0)?e=e+92|0:e=en(e+60|0,t[1040+(n<<2)>>2]|0,992)|0,w(uo(e,r))}function R0(e,n,r){return e=e|0,n=n|0,r=w(r),(Nr(n)|0?(t[e+104>>2]|0)!=0:0)?e=e+100|0:e=en(e+60|0,t[1e3+(n<<2)>>2]|0,992)|0,w(uo(e,r))}function Nr(e){return e=e|0,(e|1|0)==3|0}function uo(e,n){return e=e|0,n=w(n),(t[e+4>>2]|0)==3?n=w(0):n=w(Tn(e,n)),w(n)}function so(e,n){return e=e|0,n=n|0,e=t[e>>2]|0,((e|0)==0?(n|0)>1?n:1:e)|0}function N0(e,n){e=e|0,n=n|0;var r=0;e:do if((n|0)==2){switch(e|0){case 2:{e=3;break e}case 3:break;default:{r=4;break e}}e=2}else r=4;while(0);return e|0}function C0(e,n){e=e|0,n=n|0;var r=tt;return((Nr(n)|0?(t[e+312>>2]|0)!=0:0)?(r=w(D[e+308>>2]),r>=w(0)):0)||(r=w(Ur(w(D[(en(e+276|0,t[1040+(n<<2)>>2]|0,992)|0)>>2]),w(0)))),w(r)}function di(e,n){e=e|0,n=n|0;var r=tt;return((Nr(n)|0?(t[e+320>>2]|0)!=0:0)?(r=w(D[e+316>>2]),r>=w(0)):0)||(r=w(Ur(w(D[(en(e+276|0,t[1e3+(n<<2)>>2]|0,992)|0)>>2]),w(0)))),w(r)}function u0(e,n,r){e=e|0,n=n|0,r=w(r);var o=tt;return((Nr(n)|0?(t[e+240>>2]|0)!=0:0)?(o=w(Tn(e+236|0,r)),o>=w(0)):0)||(o=w(Ur(w(Tn(en(e+204|0,t[1040+(n<<2)>>2]|0,992)|0,r)),w(0)))),w(o)}function v0(e,n,r){e=e|0,n=n|0,r=w(r);var o=tt;return((Nr(n)|0?(t[e+248>>2]|0)!=0:0)?(o=w(Tn(e+244|0,r)),o>=w(0)):0)||(o=w(Ur(w(Tn(en(e+204|0,t[1e3+(n<<2)>>2]|0,992)|0,r)),w(0)))),w(o)}function To(e,n,r,o,s,l,d){e=e|0,n=w(n),r=w(r),o=o|0,s=s|0,l=w(l),d=w(d);var _=tt,y=tt,k=tt,T=tt,P=tt,q=tt,we=0,le=0,ie=0;ie=h,h=h+16|0,we=ie,le=e+964|0,i0(e,(t[le>>2]|0)!=0,3519),_=w(Fn(e,2,n)),y=w(Fn(e,0,n)),k=w(mt(e,2,n)),T=w(mt(e,0,n)),gt(n)|0?P=n:P=w(Ur(w(0),w(w(n-k)-_))),gt(r)|0?q=r:q=w(Ur(w(0),w(w(r-T)-y))),(o|0)==1&(s|0)==1?(D[e+908>>2]=w(kn(e,2,w(n-k),l,l)),n=w(kn(e,0,w(r-T),d,l))):(lD[t[le>>2]&1](we,e,P,o,q,s),P=w(_+w(D[we>>2])),q=w(n-k),D[e+908>>2]=w(kn(e,2,(o|2|0)==2?P:q,l,l)),q=w(y+w(D[we+4>>2])),n=w(r-T),n=w(kn(e,0,(s|2|0)==2?q:n,d,l))),D[e+912>>2]=n,h=ie}function pu(e,n,r,o,s,l,d){e=e|0,n=w(n),r=w(r),o=o|0,s=s|0,l=w(l),d=w(d);var _=tt,y=tt,k=tt,T=tt;k=w(Fn(e,2,l)),_=w(Fn(e,0,l)),T=w(mt(e,2,l)),y=w(mt(e,0,l)),n=w(n-T),D[e+908>>2]=w(kn(e,2,(o|2|0)==2?k:n,l,l)),r=w(r-y),D[e+912>>2]=w(kn(e,0,(s|2|0)==2?_:r,d,l))}function Sl(e,n,r,o,s,l,d){e=e|0,n=w(n),r=w(r),o=o|0,s=s|0,l=w(l),d=w(d);var _=0,y=tt,k=tt;return _=(o|0)==2,((n<=w(0)&_?0:!(r<=w(0)&(s|0)==2))?!((o|0)==1&(s|0)==1):0)?e=0:(y=w(mt(e,0,l)),k=w(mt(e,2,l)),_=n>2]=w(kn(e,2,_?w(0):n,l,l)),n=w(r-y),_=r>2]=w(kn(e,0,_?w(0):n,d,l)),e=1),e|0}function Cl(e,n){return e=e|0,n=n|0,qt(e)|0?e=N0(2,n)|0:e=0,e|0}function B0(e,n,r){return e=e|0,n=n|0,r=w(r),r=w(u0(e,n,r)),w(r+w(C0(e,n)))}function hu(e,n,r){return e=e|0,n=n|0,r=w(r),r=w(v0(e,n,r)),w(r+w(di(e,n)))}function Fn(e,n,r){e=e|0,n=n|0,r=w(r);var o=tt;return o=w(B0(e,n,r)),w(o+w(hu(e,n,r)))}function pi(e){return e=e|0,t[e+24>>2]|0?e=0:w(Br(e))!=w(0)?e=1:e=w(zr(e))!=w(0),e|0}function Br(e){e=e|0;var n=tt;if(t[e+944>>2]|0){if(n=w(D[e+44>>2]),gt(n)|0)return n=w(D[e+40>>2]),e=n>w(0)&((gt(n)|0)^1),w(e?n:w(0))}else n=w(0);return w(n)}function zr(e){e=e|0;var n=tt,r=0,o=tt;do if(t[e+944>>2]|0){if(n=w(D[e+48>>2]),gt(n)|0){if(r=c[(t[e+976>>2]|0)+2>>0]|0,r<<24>>24==0?(o=w(D[e+40>>2]),o>24?w(1):w(0)}}else n=w(0);while(0);return w(n)}function lo(e){e=e|0;var n=0,r=0;if(pa(e+400|0,0,540)|0,c[e+985>>0]=1,bo(e),r=fi(e)|0,r|0){n=e+948|0,e=0;do lo(t[(t[n>>2]|0)+(e<<2)>>2]|0),e=e+1|0;while((e|0)!=(r|0))}}function wr(e,n,r,o,s,l,d,_,y,k){e=e|0,n=n|0,r=w(r),o=o|0,s=w(s),l=w(l),d=w(d),_=_|0,y=y|0,k=k|0;var T=0,P=tt,q=0,we=0,le=tt,ie=tt,Pe=0,ke=tt,qe=0,pe=tt,_e=0,vt=0,Ln=0,Ht=0,It=0,gn=0,Pn=0,zt=0,Dr=0,Ki=0;Dr=h,h=h+16|0,Ln=Dr+12|0,Ht=Dr+8|0,It=Dr+4|0,gn=Dr,zt=N0(t[e+4>>2]|0,y)|0,_e=Nr(zt)|0,P=w(Tn(Ut(n)|0,_e?l:d)),vt=m0(n,2,l)|0,Pn=m0(n,0,d)|0;do if(gt(P)|0?0:!(gt(_e?r:s)|0)){if(T=n+504|0,!(gt(w(D[T>>2]))|0)&&(!(fn(t[n+976>>2]|0,0)|0)||(t[n+500>>2]|0)==(t[2278]|0)))break;D[T>>2]=w(Ur(P,w(Fn(n,zt,l))))}else q=7;while(0);do if((q|0)==7){if(qe=_e^1,!(qe|vt^1)){d=w(Tn(t[n+992>>2]|0,l)),D[n+504>>2]=w(Ur(d,w(Fn(n,2,l))));break}if(!(_e|Pn^1)){d=w(Tn(t[n+996>>2]|0,d)),D[n+504>>2]=w(Ur(d,w(Fn(n,0,l))));break}D[Ln>>2]=w(J),D[Ht>>2]=w(J),t[It>>2]=0,t[gn>>2]=0,ke=w(mt(n,2,l)),pe=w(mt(n,0,l)),vt?(le=w(ke+w(Tn(t[n+992>>2]|0,l))),D[Ln>>2]=le,t[It>>2]=1,we=1):(we=0,le=w(J)),Pn?(P=w(pe+w(Tn(t[n+996>>2]|0,d))),D[Ht>>2]=P,t[gn>>2]=1,T=1):(T=0,P=w(J)),q=t[e+32>>2]|0,_e&(q|0)==2?q=2:(gt(le)|0?!(gt(r)|0):0)&&(D[Ln>>2]=r,t[It>>2]=2,we=2,le=r),(((q|0)==2&qe?0:gt(P)|0)?!(gt(s)|0):0)&&(D[Ht>>2]=s,t[gn>>2]=2,T=2,P=s),ie=w(D[n+396>>2]),Pe=gt(ie)|0;do if(Pe)q=we;else{if((we|0)==1&qe){D[Ht>>2]=w(w(le-ke)/ie),t[gn>>2]=1,T=1,q=1;break}_e&(T|0)==1?(D[Ln>>2]=w(ie*w(P-pe)),t[It>>2]=1,T=1,q=1):q=we}while(0);Ki=gt(r)|0,we=(T0(e,n)|0)!=4,(_e|vt|((o|0)!=1|Ki)|(we|(q|0)==1)?0:(D[Ln>>2]=r,t[It>>2]=1,!Pe))&&(D[Ht>>2]=w(w(r-ke)/ie),t[gn>>2]=1,T=1),(Pn|qe|((_|0)!=1|(gt(s)|0))|(we|(T|0)==1)?0:(D[Ht>>2]=s,t[gn>>2]=1,!Pe))&&(D[Ln>>2]=w(ie*w(s-pe)),t[It>>2]=1),Kt(n,2,l,l,It,Ln),Kt(n,0,d,l,gn,Ht),r=w(D[Ln>>2]),s=w(D[Ht>>2]),ht(n,r,s,y,t[It>>2]|0,t[gn>>2]|0,l,d,0,3565,k)|0,d=w(D[n+908+(t[976+(zt<<2)>>2]<<2)>>2]),D[n+504>>2]=w(Ur(d,w(Fn(n,zt,l))))}while(0);t[n+500>>2]=t[2278],h=Dr}function kn(e,n,r,o,s){return e=e|0,n=n|0,r=w(r),o=w(o),s=w(s),o=w(Dt(e,n,r,o)),w(Ur(o,w(Fn(e,n,s))))}function T0(e,n){return e=e|0,n=n|0,n=n+20|0,n=t[((t[n>>2]|0)==0?e+16|0:n)>>2]|0,((n|0)==5?qt(t[e+4>>2]|0)|0:0)&&(n=1),n|0}function hi(e,n){return e=e|0,n=n|0,(Nr(n)|0?(t[e+96>>2]|0)!=0:0)?n=4:n=t[1040+(n<<2)>>2]|0,e+60+(n<<3)|0}function Ai(e,n){return e=e|0,n=n|0,(Nr(n)|0?(t[e+104>>2]|0)!=0:0)?n=5:n=t[1e3+(n<<2)>>2]|0,e+60+(n<<3)|0}function Kt(e,n,r,o,s,l){switch(e=e|0,n=n|0,r=w(r),o=w(o),s=s|0,l=l|0,r=w(Tn(e+380+(t[976+(n<<2)>>2]<<3)|0,r)),r=w(r+w(mt(e,n,o))),t[s>>2]|0){case 2:case 1:{s=gt(r)|0,o=w(D[l>>2]),D[l>>2]=s|o>2]=2,D[l>>2]=r);break}default:}}function X(e,n){return e=e|0,n=n|0,e=e+132|0,(Nr(n)|0?(t[(en(e,4,948)|0)+4>>2]|0)!=0:0)?e=1:e=(t[(en(e,t[1040+(n<<2)>>2]|0,948)|0)+4>>2]|0)!=0,e|0}function Y(e,n,r){e=e|0,n=n|0,r=w(r);var o=0,s=0;return e=e+132|0,(Nr(n)|0?(o=en(e,4,948)|0,(t[o+4>>2]|0)!=0):0)?s=4:(o=en(e,t[1040+(n<<2)>>2]|0,948)|0,t[o+4>>2]|0?s=4:r=w(0)),(s|0)==4&&(r=w(Tn(o,r))),w(r)}function ye(e,n,r){e=e|0,n=n|0,r=w(r);var o=tt;return o=w(D[e+908+(t[976+(n<<2)>>2]<<2)>>2]),o=w(o+w(Tr(e,n,r))),w(o+w(R0(e,n,r)))}function he(e){e=e|0;var n=0,r=0,o=0;e:do if(qt(t[e+4>>2]|0)|0)n=0;else if((t[e+16>>2]|0)!=5)if(r=fi(e)|0,!r)n=0;else for(n=0;;){if(o=e0(e,n)|0,(t[o+24>>2]|0)==0?(t[o+20>>2]|0)==5:0){n=1;break e}if(n=n+1|0,n>>>0>=r>>>0){n=0;break}}else n=1;while(0);return n|0}function We(e,n){e=e|0,n=n|0;var r=tt;return r=w(D[e+908+(t[976+(n<<2)>>2]<<2)>>2]),r>=w(0)&((gt(r)|0)^1)|0}function et(e){e=e|0;var n=tt,r=0,o=0,s=0,l=0,d=0,_=0,y=tt;if(r=t[e+968>>2]|0,r)y=w(D[e+908>>2]),n=w(D[e+912>>2]),n=w(rD[r&0](e,y,n)),i0(e,(gt(n)|0)^1,3573);else{l=fi(e)|0;do if(l|0){for(r=0,s=0;;){if(o=e0(e,s)|0,t[o+940>>2]|0){d=8;break}if((t[o+24>>2]|0)!=1)if(_=(T0(e,o)|0)==5,_){r=o;break}else r=(r|0)==0?o:r;if(s=s+1|0,s>>>0>=l>>>0){d=8;break}}if((d|0)==8&&!r)break;return n=w(et(r)),w(n+w(D[r+404>>2]))}while(0);n=w(D[e+912>>2])}return w(n)}function Dt(e,n,r,o){e=e|0,n=n|0,r=w(r),o=w(o);var s=tt,l=0;return qt(n)|0?(n=1,l=3):Nr(n)|0?(n=0,l=3):(o=w(J),s=w(J)),(l|0)==3&&(s=w(Tn(e+364+(n<<3)|0,o)),o=w(Tn(e+380+(n<<3)|0,o))),l=o=w(0)&((gt(o)|0)^1)),r=l?o:r,l=s>=w(0)&((gt(s)|0)^1)&r>2]|0,l)|0,le=Cl(Pe,l)|0,ie=Nr(Pe)|0,P=w(mt(n,2,r)),q=w(mt(n,0,r)),m0(n,2,r)|0?_=w(P+w(Tn(t[n+992>>2]|0,r))):(X(n,2)|0?_t(n,2)|0:0)?(_=w(D[e+908>>2]),y=w(C0(e,2)),y=w(_-w(y+w(di(e,2)))),_=w(Y(n,2,r)),_=w(kn(n,2,w(y-w(_+w(_r(n,2,r)))),r,r))):_=w(J),m0(n,0,s)|0?y=w(q+w(Tn(t[n+996>>2]|0,s))):(X(n,0)|0?_t(n,0)|0:0)?(y=w(D[e+912>>2]),qe=w(C0(e,0)),qe=w(y-w(qe+w(di(e,0)))),y=w(Y(n,0,s)),y=w(kn(n,0,w(qe-w(y+w(_r(n,0,s)))),s,r))):y=w(J),k=gt(_)|0,T=gt(y)|0;do if(k^T?(we=w(D[n+396>>2]),!(gt(we)|0)):0)if(k){_=w(P+w(w(y-q)*we));break}else{qe=w(q+w(w(_-P)/we)),y=T?qe:y;break}while(0);T=gt(_)|0,k=gt(y)|0,T|k&&(pe=(T^1)&1,o=r>w(0)&((o|0)!=0&T),_=ie?_:o?r:_,ht(n,_,y,l,ie?pe:o?2:pe,T&(k^1)&1,_,y,0,3623,d)|0,_=w(D[n+908>>2]),_=w(_+w(mt(n,2,r))),y=w(D[n+912>>2]),y=w(y+w(mt(n,0,r)))),ht(n,_,y,l,1,1,_,y,1,3635,d)|0,(_t(n,Pe)|0?!(X(n,Pe)|0):0)?(pe=t[976+(Pe<<2)>>2]|0,qe=w(D[e+908+(pe<<2)>>2]),qe=w(qe-w(D[n+908+(pe<<2)>>2])),qe=w(qe-w(di(e,Pe))),qe=w(qe-w(R0(n,Pe,r))),qe=w(qe-w(_r(n,Pe,ie?r:s))),D[n+400+(t[1040+(Pe<<2)>>2]<<2)>>2]=qe):ke=21;do if((ke|0)==21){if(X(n,Pe)|0?0:(t[e+8>>2]|0)==1){pe=t[976+(Pe<<2)>>2]|0,qe=w(D[e+908+(pe<<2)>>2]),qe=w(w(qe-w(D[n+908+(pe<<2)>>2]))*w(.5)),D[n+400+(t[1040+(Pe<<2)>>2]<<2)>>2]=qe;break}(X(n,Pe)|0?0:(t[e+8>>2]|0)==2)&&(pe=t[976+(Pe<<2)>>2]|0,qe=w(D[e+908+(pe<<2)>>2]),qe=w(qe-w(D[n+908+(pe<<2)>>2])),D[n+400+(t[1040+(Pe<<2)>>2]<<2)>>2]=qe)}while(0);(_t(n,le)|0?!(X(n,le)|0):0)?(pe=t[976+(le<<2)>>2]|0,qe=w(D[e+908+(pe<<2)>>2]),qe=w(qe-w(D[n+908+(pe<<2)>>2])),qe=w(qe-w(di(e,le))),qe=w(qe-w(R0(n,le,r))),qe=w(qe-w(_r(n,le,ie?s:r))),D[n+400+(t[1040+(le<<2)>>2]<<2)>>2]=qe):ke=30;do if((ke|0)==30?!(X(n,le)|0):0){if((T0(e,n)|0)==2){pe=t[976+(le<<2)>>2]|0,qe=w(D[e+908+(pe<<2)>>2]),qe=w(w(qe-w(D[n+908+(pe<<2)>>2]))*w(.5)),D[n+400+(t[1040+(le<<2)>>2]<<2)>>2]=qe;break}pe=(T0(e,n)|0)==3,pe^(t[e+28>>2]|0)==2&&(pe=t[976+(le<<2)>>2]|0,qe=w(D[e+908+(pe<<2)>>2]),qe=w(qe-w(D[n+908+(pe<<2)>>2])),D[n+400+(t[1040+(le<<2)>>2]<<2)>>2]=qe)}while(0)}function Zt(e,n,r){e=e|0,n=n|0,r=r|0;var o=tt,s=0;s=t[976+(r<<2)>>2]|0,o=w(D[n+908+(s<<2)>>2]),o=w(w(D[e+908+(s<<2)>>2])-o),o=w(o-w(D[n+400+(t[1040+(r<<2)>>2]<<2)>>2])),D[n+400+(t[1e3+(r<<2)>>2]<<2)>>2]=o}function qt(e){return e=e|0,(e|1|0)==1|0}function Ut(e){e=e|0;var n=tt;switch(t[e+56>>2]|0){case 0:case 3:{n=w(D[e+40>>2]),n>w(0)&((gt(n)|0)^1)?e=c[(t[e+976>>2]|0)+2>>0]|0?1056:992:e=1056;break}default:e=e+52|0}return e|0}function fn(e,n){return e=e|0,n=n|0,(c[e+n>>0]|0)!=0|0}function _t(e,n){return e=e|0,n=n|0,e=e+132|0,(Nr(n)|0?(t[(en(e,5,948)|0)+4>>2]|0)!=0:0)?e=1:e=(t[(en(e,t[1e3+(n<<2)>>2]|0,948)|0)+4>>2]|0)!=0,e|0}function _r(e,n,r){e=e|0,n=n|0,r=w(r);var o=0,s=0;return e=e+132|0,(Nr(n)|0?(o=en(e,5,948)|0,(t[o+4>>2]|0)!=0):0)?s=4:(o=en(e,t[1e3+(n<<2)>>2]|0,948)|0,t[o+4>>2]|0?s=4:r=w(0)),(s|0)==4&&(r=w(Tn(o,r))),w(r)}function Wr(e,n,r){return e=e|0,n=n|0,r=w(r),X(e,n)|0?r=w(Y(e,n,r)):r=w(-w(_r(e,n,r))),w(r)}function Ar(e){return e=w(e),D[j>>2]=e,t[j>>2]|0|0}function z(e,n,r,o){e=e|0,n=n|0,r=r|0,o=o|0;var s=0;t[e+12>>2]=0,t[e+16>>2]=o;do if(n)if(n>>>0>1073741823)_n();else{s=Tt(n<<2)|0;break}else s=0;while(0);t[e>>2]=s,o=s+(r<<2)|0,t[e+8>>2]=o,t[e+4>>2]=o,t[e+12>>2]=s+(n<<2)}function dr(e,n){e=e|0,n=n|0;var r=0,o=0,s=0,l=0,d=0;o=t[e>>2]|0,d=e+4|0,l=n+4|0,s=(t[d>>2]|0)-o|0,r=(t[l>>2]|0)+(0-(s>>2)<<2)|0,t[l>>2]=r,(s|0)>0?(vn(r|0,o|0,s|0)|0,o=l,r=t[l>>2]|0):o=l,l=t[e>>2]|0,t[e>>2]=r,t[o>>2]=l,l=n+8|0,s=t[d>>2]|0,t[d>>2]=t[l>>2],t[l>>2]=s,l=e+8|0,d=n+12|0,e=t[l>>2]|0,t[l>>2]=t[d>>2],t[d>>2]=e,t[n>>2]=t[o>>2]}function Or(e){e=e|0;var n=0,r=0,o=0;n=t[e+4>>2]|0,r=e+8|0,o=t[r>>2]|0,(o|0)!=(n|0)&&(t[r>>2]=o+(~((o+-4-n|0)>>>2)<<2)),e=t[e>>2]|0,e|0&&Ve(e)}function Qn(e,n,r,o){e=e|0,n=n|0,r=r|0,o=o|0;var s=0,l=0,d=0,_=0;if(d=e+4|0,_=t[d>>2]|0,s=_-o|0,l=s>>2,e=n+(l<<2)|0,e>>>0>>0){o=_;do t[o>>2]=t[e>>2],e=e+4|0,o=(t[d>>2]|0)+4|0,t[d>>2]=o;while(e>>>0>>0)}l|0&&Y1(_+(0-l<<2)|0,n|0,s|0)|0}function nn(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0,_=0,y=0;return _=n+4|0,y=t[_>>2]|0,s=t[e>>2]|0,d=r,l=d-s|0,o=y+(0-(l>>2)<<2)|0,t[_>>2]=o,(l|0)>0&&vn(o|0,s|0,l|0)|0,s=e+4|0,l=n+8|0,o=(t[s>>2]|0)-d|0,(o|0)>0&&(vn(t[l>>2]|0,r|0,o|0)|0,t[l>>2]=(t[l>>2]|0)+(o>>>2<<2)),d=t[e>>2]|0,t[e>>2]=t[_>>2],t[_>>2]=d,d=t[s>>2]|0,t[s>>2]=t[l>>2],t[l>>2]=d,d=e+8|0,r=n+12|0,e=t[d>>2]|0,t[d>>2]=t[r>>2],t[r>>2]=e,t[n>>2]=t[_>>2],y|0}function s0(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0;if(d=t[n>>2]|0,l=t[r>>2]|0,(d|0)!=(l|0)){s=e+8|0,r=((l+-4-d|0)>>>2)+1|0,e=d,o=t[s>>2]|0;do t[o>>2]=t[e>>2],o=(t[s>>2]|0)+4|0,t[s>>2]=o,e=e+4|0;while((e|0)!=(l|0));t[n>>2]=d+(r<<2)}}function t0(){_l()}function g0(){var e=0;return e=Tt(4)|0,Kr(e),e|0}function Kr(e){e=e|0,t[e>>2]=a0()|0}function _0(e){e=e|0,e|0&&(Gi(e),Ve(e))}function Gi(e){e=e|0,V0(t[e>>2]|0)}function fo(e,n,r){e=e|0,n=n|0,r=r|0,J0(t[e>>2]|0,n,r)}function x0(e,n){e=e|0,n=w(n),ki(t[e>>2]|0,n)}function Xu(e,n){return e=e|0,n=n|0,fn(t[e>>2]|0,n)|0}function Z0(){var e=0;return e=Tt(8)|0,df(e,0),e|0}function df(e,n){e=e|0,n=n|0,n?n=I0(t[n>>2]|0)|0:n=qu()|0,t[e>>2]=n,t[e+4>>2]=0,Bs(n,e)}function Ba(e){e=e|0;var n=0;return n=Tt(8)|0,df(n,e),n|0}function Oc(e){e=e|0,e|0&&(mu(e),Ve(e))}function mu(e){e=e|0;var n=0;Wu(t[e>>2]|0),n=e+4|0,e=t[n>>2]|0,t[n>>2]=0,e|0&&(Ju(e),Ve(e))}function Ju(e){e=e|0,ei(e)}function ei(e){e=e|0,e=t[e>>2]|0,e|0&&ju(e|0)}function Yf(e){return e=e|0,Vu(e)|0}function pf(e){e=e|0;var n=0,r=0;r=e+4|0,n=t[r>>2]|0,t[r>>2]=0,n|0&&(Ju(n),Ve(n)),Do(t[e>>2]|0)}function ja(e,n){e=e|0,n=n|0,Gu(t[e>>2]|0,t[n>>2]|0)}function Ua(e,n){e=e|0,n=n|0,W(t[e>>2]|0,n)}function Ic(e,n,r){e=e|0,n=n|0,r=+r,yn(t[e>>2]|0,n,w(r))}function vu(e,n,r){e=e|0,n=n|0,r=+r,sn(t[e>>2]|0,n,w(r))}function $f(e,n){e=e|0,n=n|0,R(t[e>>2]|0,n)}function gu(e,n){e=e|0,n=n|0,H(t[e>>2]|0,n)}function co(e,n){e=e|0,n=n|0,ue(t[e>>2]|0,n)}function qa(e,n){e=e|0,n=n|0,M0(t[e>>2]|0,n)}function Ws(e,n){e=e|0,n=n|0,Fe(t[e>>2]|0,n)}function za(e,n){e=e|0,n=n|0,Lr(t[e>>2]|0,n)}function Pc(e,n,r){e=e|0,n=n|0,r=+r,rn(t[e>>2]|0,n,w(r))}function Qu(e,n,r){e=e|0,n=n|0,r=+r,Hn(t[e>>2]|0,n,w(r))}function Mc(e,n){e=e|0,n=n|0,Cr(t[e>>2]|0,n)}function Fc(e,n){e=e|0,n=n|0,K(t[e>>2]|0,n)}function Lc(e,n){e=e|0,n=n|0,je(t[e>>2]|0,n)}function Kf(e,n){e=e|0,n=+n,rt(t[e>>2]|0,w(n))}function Tl(e,n){e=e|0,n=+n,wt(t[e>>2]|0,w(n))}function xl(e,n){e=e|0,n=+n,lt(t[e>>2]|0,w(n))}function hf(e,n){e=e|0,n=+n,st(t[e>>2]|0,w(n))}function xo(e,n){e=e|0,n=+n,xt(t[e>>2]|0,w(n))}function mf(e,n){e=e|0,n=+n,Qt(t[e>>2]|0,w(n))}function Wa(e,n){e=e|0,n=+n,Cn(t[e>>2]|0,w(n))}function ti(e){e=e|0,bn(t[e>>2]|0)}function Hs(e,n){e=e|0,n=+n,h0(t[e>>2]|0,w(n))}function mi(e,n){e=e|0,n=+n,ci(t[e>>2]|0,w(n))}function vi(e){e=e|0,xi(t[e>>2]|0)}function Xf(e,n){e=e|0,n=+n,qr(t[e>>2]|0,w(n))}function Rc(e,n){e=e|0,n=+n,Eo(t[e>>2]|0,w(n))}function Jf(e,n){e=e|0,n=+n,wl(t[e>>2]|0,w(n))}function ao(e,n){e=e|0,n=+n,js(t[e>>2]|0,w(n))}function $o(e,n){e=e|0,n=+n,du(t[e>>2]|0,w(n))}function kl(e,n){e=e|0,n=+n,Yu(t[e>>2]|0,w(n))}function Nc(e,n){e=e|0,n=+n,oo(t[e>>2]|0,w(n))}function Al(e,n){e=e|0,n=+n,Hi(t[e>>2]|0,w(n))}function vf(e,n){e=e|0,n=+n,F0(t[e>>2]|0,w(n))}function Qf(e,n,r){e=e|0,n=n|0,r=+r,ft(t[e>>2]|0,n,w(r))}function k0(e,n,r){e=e|0,n=n|0,r=+r,He(t[e>>2]|0,n,w(r))}function v(e,n,r){e=e|0,n=n|0,r=+r,Qe(t[e>>2]|0,n,w(r))}function m(e){return e=e|0,ve(t[e>>2]|0)|0}function S(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0;o=h,h=h+16|0,s=o,ar(s,t[n>>2]|0,r),O(e,s),h=o}function O(e,n){e=e|0,n=n|0,M(e,t[n+4>>2]|0,+w(D[n>>2]))}function M(e,n,r){e=e|0,n=n|0,r=+r,t[e>>2]=n,L[e+8>>3]=r}function b(e){return e=e|0,U(t[e>>2]|0)|0}function ee(e){return e=e|0,fe(t[e>>2]|0)|0}function Ye(e){return e=e|0,de(t[e>>2]|0)|0}function Ze(e){return e=e|0,au(t[e>>2]|0)|0}function ut(e){return e=e|0,Ge(t[e>>2]|0)|0}function In(e){return e=e|0,F(t[e>>2]|0)|0}function A0(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0;o=h,h=h+16|0,s=o,d0(s,t[n>>2]|0,r),O(e,s),h=o}function jr(e){return e=e|0,xe(t[e>>2]|0)|0}function gi(e){return e=e|0,Xe(t[e>>2]|0)|0}function po(e,n){e=e|0,n=n|0;var r=0,o=0;r=h,h=h+16|0,o=r,Rt(o,t[n>>2]|0),O(e,o),h=r}function _i(e){return e=e|0,+ +w(yl(t[e>>2]|0))}function Re(e){return e=e|0,+ +w(cu(t[e>>2]|0))}function Ce(e,n){e=e|0,n=n|0;var r=0,o=0;r=h,h=h+16|0,o=r,p0(o,t[n>>2]|0),O(e,o),h=r}function ze(e,n){e=e|0,n=n|0;var r=0,o=0;r=h,h=h+16|0,o=r,E0(o,t[n>>2]|0),O(e,o),h=r}function Et(e,n){e=e|0,n=n|0;var r=0,o=0;r=h,h=h+16|0,o=r,So(o,t[n>>2]|0),O(e,o),h=r}function on(e,n){e=e|0,n=n|0;var r=0,o=0;r=h,h=h+16|0,o=r,Dl(o,t[n>>2]|0),O(e,o),h=r}function sr(e,n){e=e|0,n=n|0;var r=0,o=0;r=h,h=h+16|0,o=r,Us(o,t[n>>2]|0),O(e,o),h=r}function mn(e,n){e=e|0,n=n|0;var r=0,o=0;r=h,h=h+16|0,o=r,qs(o,t[n>>2]|0),O(e,o),h=r}function pr(e){return e=e|0,+ +w(Gr(t[e>>2]|0))}function Hr(e,n){return e=e|0,n=n|0,+ +w(St(t[e>>2]|0,n))}function Vn(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0;o=h,h=h+16|0,s=o,Ne(s,t[n>>2]|0,r),O(e,s),h=o}function ni(e,n,r){e=e|0,n=n|0,r=r|0,Ns(t[e>>2]|0,t[n>>2]|0,r)}function Zf(e,n){e=e|0,n=n|0,D0(t[e>>2]|0,t[n>>2]|0)}function Pm(e){return e=e|0,fi(t[e>>2]|0)|0}function Ha(e){return e=e|0,e=nr(t[e>>2]|0)|0,e?e=Yf(e)|0:e=0,e|0}function vd(e,n){return e=e|0,n=n|0,e=e0(t[e>>2]|0,n)|0,e?e=Yf(e)|0:e=0,e|0}function gd(e,n){e=e|0,n=n|0;var r=0,o=0;o=Tt(4)|0,ba(o,n),r=e+4|0,n=t[r>>2]|0,t[r>>2]=o,n|0&&(Ju(n),Ve(n)),bu(t[e>>2]|0,1)}function ba(e,n){e=e|0,n=n|0,Oo(e,n)}function Bc(e,n,r,o,s,l){e=e|0,n=n|0,r=w(r),o=o|0,s=w(s),l=l|0;var d=0,_=0;d=h,h=h+16|0,_=d,Mm(_,Vu(n)|0,+r,o,+s,l),D[e>>2]=w(+L[_>>3]),D[e+4>>2]=w(+L[_+8>>3]),h=d}function Mm(e,n,r,o,s,l){e=e|0,n=n|0,r=+r,o=o|0,s=+s,l=l|0;var d=0,_=0,y=0,k=0,T=0;d=h,h=h+32|0,T=d+8|0,k=d+20|0,y=d,_=d+16|0,L[T>>3]=r,t[k>>2]=o,L[y>>3]=s,t[_>>2]=l,_d(e,t[n+4>>2]|0,T,k,y,_),h=d}function _d(e,n,r,o,s,l){e=e|0,n=n|0,r=r|0,o=o|0,s=s|0,l=l|0;var d=0,_=0;d=h,h=h+16|0,_=d,Zo(_),n=Oi(n)|0,Fm(e,n,+L[r>>3],t[o>>2]|0,+L[s>>3],t[l>>2]|0),eu(_),h=d}function Oi(e){return e=e|0,t[e>>2]|0}function Fm(e,n,r,o,s,l){e=e|0,n=n|0,r=+r,o=o|0,s=+s,l=l|0;var d=0;d=ko(yd()|0)|0,r=+Ko(r),o=jc(o)|0,s=+Ko(s),Ga(e,ro(0,d|0,n|0,+r,o|0,+s,jc(l)|0)|0)}function yd(){var e=0;return c[7608]|0||(Ed(9120),e=7608,t[e>>2]=1,t[e+4>>2]=0),9120}function ko(e){return e=e|0,t[e+8>>2]|0}function Ko(e){return e=+e,+ +Ol(e)}function jc(e){return e=e|0,Dd(e)|0}function Ga(e,n){e=e|0,n=n|0;var r=0,o=0,s=0;s=h,h=h+32|0,r=s,o=n,o&1?(Lm(r,0),c0(o|0,r|0)|0,Va(e,r),Wn(r)):(t[e>>2]=t[n>>2],t[e+4>>2]=t[n+4>>2],t[e+8>>2]=t[n+8>>2],t[e+12>>2]=t[n+12>>2]),h=s}function Lm(e,n){e=e|0,n=n|0,wd(e,n),t[e+8>>2]=0,c[e+24>>0]=0}function Va(e,n){e=e|0,n=n|0,n=n+8|0,t[e>>2]=t[n>>2],t[e+4>>2]=t[n+4>>2],t[e+8>>2]=t[n+8>>2],t[e+12>>2]=t[n+12>>2]}function Wn(e){e=e|0,c[e+24>>0]=0}function wd(e,n){e=e|0,n=n|0,t[e>>2]=n}function Dd(e){return e=e|0,e|0}function Ol(e){return e=+e,+e}function Ed(e){e=e|0,Ao(e,Rm()|0,4)}function Rm(){return 1064}function Ao(e,n,r){e=e|0,n=n|0,r=r|0,t[e>>2]=n,t[e+4>>2]=r,t[e+8>>2]=hl(n|0,r+1|0)|0}function Oo(e,n){e=e|0,n=n|0,n=t[n>>2]|0,t[e>>2]=n,qi(n|0)}function Nm(e){e=e|0;var n=0,r=0;r=e+4|0,n=t[r>>2]|0,t[r>>2]=0,n|0&&(Ju(n),Ve(n)),bu(t[e>>2]|0,0)}function Uc(e){e=e|0,rr(t[e>>2]|0)}function Ya(e){return e=e|0,Go(t[e>>2]|0)|0}function Sd(e,n,r,o){e=e|0,n=+n,r=+r,o=o|0,Yr(t[e>>2]|0,w(n),w(r),o)}function Cd(e){return e=e|0,+ +w(ir(t[e>>2]|0))}function ho(e){return e=e|0,+ +w(Y0(t[e>>2]|0))}function bs(e){return e=e|0,+ +w(L0(t[e>>2]|0))}function $a(e){return e=e|0,+ +w(Co(t[e>>2]|0))}function Td(e){return e=e|0,+ +w($u(t[e>>2]|0))}function qc(e){return e=e|0,+ +w(Vo(t[e>>2]|0))}function xd(e,n){e=e|0,n=n|0,L[e>>3]=+w(ir(t[n>>2]|0)),L[e+8>>3]=+w(Y0(t[n>>2]|0)),L[e+16>>3]=+w(L0(t[n>>2]|0)),L[e+24>>3]=+w(Co(t[n>>2]|0)),L[e+32>>3]=+w($u(t[n>>2]|0)),L[e+40>>3]=+w(Vo(t[n>>2]|0))}function Ka(e,n){return e=e|0,n=n|0,+ +w(Rr(t[e>>2]|0,n))}function kd(e,n){return e=e|0,n=n|0,+ +w(Jn(t[e>>2]|0,n))}function Xa(e,n){return e=e|0,n=n|0,+ +w(ai(t[e>>2]|0,n))}function Ja(){return Rs()|0}function Gs(){Bm(),Vs(),Ad(),Od(),Qa(),jm()}function Bm(){hO(11713,4938,1)}function Vs(){FA(10448)}function Ad(){hA(10408)}function Od(){Bk(10324)}function Qa(){Gx(10096)}function jm(){Um(9132)}function Um(e){e=e|0;var n=0,r=0,o=0,s=0,l=0,d=0,_=0,y=0,k=0,T=0,P=0,q=0,we=0,le=0,ie=0,Pe=0,ke=0,qe=0,pe=0,_e=0,vt=0,Ln=0,Ht=0,It=0,gn=0,Pn=0,zt=0,Dr=0,Ki=0,Xi=0,Ji=0,Ro=0,kf=0,Af=0,Cu=0,Of=0,Js=0,Qs=0,If=0,Pf=0,Mf=0,Kn=0,Tu=0,Ff=0,us=0,Lf=0,Rf=0,Zs=0,el=0,ss=0,Fi=0,nu=0,go=0,xu=0,jl=0,Ul=0,tl=0,ql=0,zl=0,Li=0,Di=0,ku=0,xr=0,Wl=0,Qi=0,ls=0,Zi=0,fs=0,Hl=0,bl=0,cs=0,Ri=0,Au=0,Gl=0,Vl=0,Yl=0,En=0,br=0,Ei=0,eo=0,Ni=0,xn=0,Vt=0,Ou=0;n=h,h=h+672|0,r=n+656|0,Ou=n+648|0,Vt=n+640|0,xn=n+632|0,Ni=n+624|0,eo=n+616|0,Ei=n+608|0,br=n+600|0,En=n+592|0,Yl=n+584|0,Vl=n+576|0,Gl=n+568|0,Au=n+560|0,Ri=n+552|0,cs=n+544|0,bl=n+536|0,Hl=n+528|0,fs=n+520|0,Zi=n+512|0,ls=n+504|0,Qi=n+496|0,Wl=n+488|0,xr=n+480|0,ku=n+472|0,Di=n+464|0,Li=n+456|0,zl=n+448|0,ql=n+440|0,tl=n+432|0,Ul=n+424|0,jl=n+416|0,xu=n+408|0,go=n+400|0,nu=n+392|0,Fi=n+384|0,ss=n+376|0,el=n+368|0,Zs=n+360|0,Rf=n+352|0,Lf=n+344|0,us=n+336|0,Ff=n+328|0,Tu=n+320|0,Kn=n+312|0,Mf=n+304|0,Pf=n+296|0,If=n+288|0,Qs=n+280|0,Js=n+272|0,Of=n+264|0,Cu=n+256|0,Af=n+248|0,kf=n+240|0,Ro=n+232|0,Ji=n+224|0,Xi=n+216|0,Ki=n+208|0,Dr=n+200|0,zt=n+192|0,Pn=n+184|0,gn=n+176|0,It=n+168|0,Ht=n+160|0,Ln=n+152|0,vt=n+144|0,_e=n+136|0,pe=n+128|0,qe=n+120|0,ke=n+112|0,Pe=n+104|0,ie=n+96|0,le=n+88|0,we=n+80|0,q=n+72|0,P=n+64|0,T=n+56|0,k=n+48|0,y=n+40|0,_=n+32|0,d=n+24|0,l=n+16|0,s=n+8|0,o=n,qm(e,3646),Id(e,3651,2)|0,Pd(e,3665,2)|0,zm(e,3682,18)|0,t[Ou>>2]=19,t[Ou+4>>2]=0,t[r>>2]=t[Ou>>2],t[r+4>>2]=t[Ou+4>>2],gf(e,3690,r)|0,t[Vt>>2]=1,t[Vt+4>>2]=0,t[r>>2]=t[Vt>>2],t[r+4>>2]=t[Vt+4>>2],Md(e,3696,r)|0,t[xn>>2]=2,t[xn+4>>2]=0,t[r>>2]=t[xn>>2],t[r+4>>2]=t[xn+4>>2],Xr(e,3706,r)|0,t[Ni>>2]=1,t[Ni+4>>2]=0,t[r>>2]=t[Ni>>2],t[r+4>>2]=t[Ni+4>>2],yi(e,3722,r)|0,t[eo>>2]=2,t[eo+4>>2]=0,t[r>>2]=t[eo>>2],t[r+4>>2]=t[eo+4>>2],yi(e,3734,r)|0,t[Ei>>2]=3,t[Ei+4>>2]=0,t[r>>2]=t[Ei>>2],t[r+4>>2]=t[Ei+4>>2],Xr(e,3753,r)|0,t[br>>2]=4,t[br+4>>2]=0,t[r>>2]=t[br>>2],t[r+4>>2]=t[br+4>>2],Xr(e,3769,r)|0,t[En>>2]=5,t[En+4>>2]=0,t[r>>2]=t[En>>2],t[r+4>>2]=t[En+4>>2],Xr(e,3783,r)|0,t[Yl>>2]=6,t[Yl+4>>2]=0,t[r>>2]=t[Yl>>2],t[r+4>>2]=t[Yl+4>>2],Xr(e,3796,r)|0,t[Vl>>2]=7,t[Vl+4>>2]=0,t[r>>2]=t[Vl>>2],t[r+4>>2]=t[Vl+4>>2],Xr(e,3813,r)|0,t[Gl>>2]=8,t[Gl+4>>2]=0,t[r>>2]=t[Gl>>2],t[r+4>>2]=t[Gl+4>>2],Xr(e,3825,r)|0,t[Au>>2]=3,t[Au+4>>2]=0,t[r>>2]=t[Au>>2],t[r+4>>2]=t[Au+4>>2],yi(e,3843,r)|0,t[Ri>>2]=4,t[Ri+4>>2]=0,t[r>>2]=t[Ri>>2],t[r+4>>2]=t[Ri+4>>2],yi(e,3853,r)|0,t[cs>>2]=9,t[cs+4>>2]=0,t[r>>2]=t[cs>>2],t[r+4>>2]=t[cs+4>>2],Xr(e,3870,r)|0,t[bl>>2]=10,t[bl+4>>2]=0,t[r>>2]=t[bl>>2],t[r+4>>2]=t[bl+4>>2],Xr(e,3884,r)|0,t[Hl>>2]=11,t[Hl+4>>2]=0,t[r>>2]=t[Hl>>2],t[r+4>>2]=t[Hl+4>>2],Xr(e,3896,r)|0,t[fs>>2]=1,t[fs+4>>2]=0,t[r>>2]=t[fs>>2],t[r+4>>2]=t[fs+4>>2],j0(e,3907,r)|0,t[Zi>>2]=2,t[Zi+4>>2]=0,t[r>>2]=t[Zi>>2],t[r+4>>2]=t[Zi+4>>2],j0(e,3915,r)|0,t[ls>>2]=3,t[ls+4>>2]=0,t[r>>2]=t[ls>>2],t[r+4>>2]=t[ls+4>>2],j0(e,3928,r)|0,t[Qi>>2]=4,t[Qi+4>>2]=0,t[r>>2]=t[Qi>>2],t[r+4>>2]=t[Qi+4>>2],j0(e,3948,r)|0,t[Wl>>2]=5,t[Wl+4>>2]=0,t[r>>2]=t[Wl>>2],t[r+4>>2]=t[Wl+4>>2],j0(e,3960,r)|0,t[xr>>2]=6,t[xr+4>>2]=0,t[r>>2]=t[xr>>2],t[r+4>>2]=t[xr+4>>2],j0(e,3974,r)|0,t[ku>>2]=7,t[ku+4>>2]=0,t[r>>2]=t[ku>>2],t[r+4>>2]=t[ku+4>>2],j0(e,3983,r)|0,t[Di>>2]=20,t[Di+4>>2]=0,t[r>>2]=t[Di>>2],t[r+4>>2]=t[Di+4>>2],gf(e,3999,r)|0,t[Li>>2]=8,t[Li+4>>2]=0,t[r>>2]=t[Li>>2],t[r+4>>2]=t[Li+4>>2],j0(e,4012,r)|0,t[zl>>2]=9,t[zl+4>>2]=0,t[r>>2]=t[zl>>2],t[r+4>>2]=t[zl+4>>2],j0(e,4022,r)|0,t[ql>>2]=21,t[ql+4>>2]=0,t[r>>2]=t[ql>>2],t[r+4>>2]=t[ql+4>>2],gf(e,4039,r)|0,t[tl>>2]=10,t[tl+4>>2]=0,t[r>>2]=t[tl>>2],t[r+4>>2]=t[tl+4>>2],j0(e,4053,r)|0,t[Ul>>2]=11,t[Ul+4>>2]=0,t[r>>2]=t[Ul>>2],t[r+4>>2]=t[Ul+4>>2],j0(e,4065,r)|0,t[jl>>2]=12,t[jl+4>>2]=0,t[r>>2]=t[jl>>2],t[r+4>>2]=t[jl+4>>2],j0(e,4084,r)|0,t[xu>>2]=13,t[xu+4>>2]=0,t[r>>2]=t[xu>>2],t[r+4>>2]=t[xu+4>>2],j0(e,4097,r)|0,t[go>>2]=14,t[go+4>>2]=0,t[r>>2]=t[go>>2],t[r+4>>2]=t[go+4>>2],j0(e,4117,r)|0,t[nu>>2]=15,t[nu+4>>2]=0,t[r>>2]=t[nu>>2],t[r+4>>2]=t[nu+4>>2],j0(e,4129,r)|0,t[Fi>>2]=16,t[Fi+4>>2]=0,t[r>>2]=t[Fi>>2],t[r+4>>2]=t[Fi+4>>2],j0(e,4148,r)|0,t[ss>>2]=17,t[ss+4>>2]=0,t[r>>2]=t[ss>>2],t[r+4>>2]=t[ss+4>>2],j0(e,4161,r)|0,t[el>>2]=18,t[el+4>>2]=0,t[r>>2]=t[el>>2],t[r+4>>2]=t[el+4>>2],j0(e,4181,r)|0,t[Zs>>2]=5,t[Zs+4>>2]=0,t[r>>2]=t[Zs>>2],t[r+4>>2]=t[Zs+4>>2],yi(e,4196,r)|0,t[Rf>>2]=6,t[Rf+4>>2]=0,t[r>>2]=t[Rf>>2],t[r+4>>2]=t[Rf+4>>2],yi(e,4206,r)|0,t[Lf>>2]=7,t[Lf+4>>2]=0,t[r>>2]=t[Lf>>2],t[r+4>>2]=t[Lf+4>>2],yi(e,4217,r)|0,t[us>>2]=3,t[us+4>>2]=0,t[r>>2]=t[us>>2],t[r+4>>2]=t[us+4>>2],Zu(e,4235,r)|0,t[Ff>>2]=1,t[Ff+4>>2]=0,t[r>>2]=t[Ff>>2],t[r+4>>2]=t[Ff+4>>2],_f(e,4251,r)|0,t[Tu>>2]=4,t[Tu+4>>2]=0,t[r>>2]=t[Tu>>2],t[r+4>>2]=t[Tu+4>>2],Zu(e,4263,r)|0,t[Kn>>2]=5,t[Kn+4>>2]=0,t[r>>2]=t[Kn>>2],t[r+4>>2]=t[Kn+4>>2],Zu(e,4279,r)|0,t[Mf>>2]=6,t[Mf+4>>2]=0,t[r>>2]=t[Mf>>2],t[r+4>>2]=t[Mf+4>>2],Zu(e,4293,r)|0,t[Pf>>2]=7,t[Pf+4>>2]=0,t[r>>2]=t[Pf>>2],t[r+4>>2]=t[Pf+4>>2],Zu(e,4306,r)|0,t[If>>2]=8,t[If+4>>2]=0,t[r>>2]=t[If>>2],t[r+4>>2]=t[If+4>>2],Zu(e,4323,r)|0,t[Qs>>2]=9,t[Qs+4>>2]=0,t[r>>2]=t[Qs>>2],t[r+4>>2]=t[Qs+4>>2],Zu(e,4335,r)|0,t[Js>>2]=2,t[Js+4>>2]=0,t[r>>2]=t[Js>>2],t[r+4>>2]=t[Js+4>>2],_f(e,4353,r)|0,t[Of>>2]=12,t[Of+4>>2]=0,t[r>>2]=t[Of>>2],t[r+4>>2]=t[Of+4>>2],Io(e,4363,r)|0,t[Cu>>2]=1,t[Cu+4>>2]=0,t[r>>2]=t[Cu>>2],t[r+4>>2]=t[Cu+4>>2],_u(e,4376,r)|0,t[Af>>2]=2,t[Af+4>>2]=0,t[r>>2]=t[Af>>2],t[r+4>>2]=t[Af+4>>2],_u(e,4388,r)|0,t[kf>>2]=13,t[kf+4>>2]=0,t[r>>2]=t[kf>>2],t[r+4>>2]=t[kf+4>>2],Io(e,4402,r)|0,t[Ro>>2]=14,t[Ro+4>>2]=0,t[r>>2]=t[Ro>>2],t[r+4>>2]=t[Ro+4>>2],Io(e,4411,r)|0,t[Ji>>2]=15,t[Ji+4>>2]=0,t[r>>2]=t[Ji>>2],t[r+4>>2]=t[Ji+4>>2],Io(e,4421,r)|0,t[Xi>>2]=16,t[Xi+4>>2]=0,t[r>>2]=t[Xi>>2],t[r+4>>2]=t[Xi+4>>2],Io(e,4433,r)|0,t[Ki>>2]=17,t[Ki+4>>2]=0,t[r>>2]=t[Ki>>2],t[r+4>>2]=t[Ki+4>>2],Io(e,4446,r)|0,t[Dr>>2]=18,t[Dr+4>>2]=0,t[r>>2]=t[Dr>>2],t[r+4>>2]=t[Dr+4>>2],Io(e,4458,r)|0,t[zt>>2]=3,t[zt+4>>2]=0,t[r>>2]=t[zt>>2],t[r+4>>2]=t[zt+4>>2],_u(e,4471,r)|0,t[Pn>>2]=1,t[Pn+4>>2]=0,t[r>>2]=t[Pn>>2],t[r+4>>2]=t[Pn+4>>2],ec(e,4486,r)|0,t[gn>>2]=10,t[gn+4>>2]=0,t[r>>2]=t[gn>>2],t[r+4>>2]=t[gn+4>>2],Zu(e,4496,r)|0,t[It>>2]=11,t[It+4>>2]=0,t[r>>2]=t[It>>2],t[r+4>>2]=t[It+4>>2],Zu(e,4508,r)|0,t[Ht>>2]=3,t[Ht+4>>2]=0,t[r>>2]=t[Ht>>2],t[r+4>>2]=t[Ht+4>>2],_f(e,4519,r)|0,t[Ln>>2]=4,t[Ln+4>>2]=0,t[r>>2]=t[Ln>>2],t[r+4>>2]=t[Ln+4>>2],Wm(e,4530,r)|0,t[vt>>2]=19,t[vt+4>>2]=0,t[r>>2]=t[vt>>2],t[r+4>>2]=t[vt+4>>2],Fd(e,4542,r)|0,t[_e>>2]=12,t[_e+4>>2]=0,t[r>>2]=t[_e>>2],t[r+4>>2]=t[_e+4>>2],yf(e,4554,r)|0,t[pe>>2]=13,t[pe+4>>2]=0,t[r>>2]=t[pe>>2],t[r+4>>2]=t[pe+4>>2],tc(e,4568,r)|0,t[qe>>2]=2,t[qe+4>>2]=0,t[r>>2]=t[qe>>2],t[r+4>>2]=t[qe+4>>2],Hm(e,4578,r)|0,t[ke>>2]=20,t[ke+4>>2]=0,t[r>>2]=t[ke>>2],t[r+4>>2]=t[ke+4>>2],Ld(e,4587,r)|0,t[Pe>>2]=22,t[Pe+4>>2]=0,t[r>>2]=t[Pe>>2],t[r+4>>2]=t[Pe+4>>2],gf(e,4602,r)|0,t[ie>>2]=23,t[ie+4>>2]=0,t[r>>2]=t[ie>>2],t[r+4>>2]=t[ie+4>>2],gf(e,4619,r)|0,t[le>>2]=14,t[le+4>>2]=0,t[r>>2]=t[le>>2],t[r+4>>2]=t[le+4>>2],Rd(e,4629,r)|0,t[we>>2]=1,t[we+4>>2]=0,t[r>>2]=t[we>>2],t[r+4>>2]=t[we+4>>2],zc(e,4637,r)|0,t[q>>2]=4,t[q+4>>2]=0,t[r>>2]=t[q>>2],t[r+4>>2]=t[q+4>>2],_u(e,4653,r)|0,t[P>>2]=5,t[P+4>>2]=0,t[r>>2]=t[P>>2],t[r+4>>2]=t[P+4>>2],_u(e,4669,r)|0,t[T>>2]=6,t[T+4>>2]=0,t[r>>2]=t[T>>2],t[r+4>>2]=t[T+4>>2],_u(e,4686,r)|0,t[k>>2]=7,t[k+4>>2]=0,t[r>>2]=t[k>>2],t[r+4>>2]=t[k+4>>2],_u(e,4701,r)|0,t[y>>2]=8,t[y+4>>2]=0,t[r>>2]=t[y>>2],t[r+4>>2]=t[y+4>>2],_u(e,4719,r)|0,t[_>>2]=9,t[_+4>>2]=0,t[r>>2]=t[_>>2],t[r+4>>2]=t[_+4>>2],_u(e,4736,r)|0,t[d>>2]=21,t[d+4>>2]=0,t[r>>2]=t[d>>2],t[r+4>>2]=t[d+4>>2],Nd(e,4754,r)|0,t[l>>2]=2,t[l+4>>2]=0,t[r>>2]=t[l>>2],t[r+4>>2]=t[l+4>>2],ec(e,4772,r)|0,t[s>>2]=3,t[s+4>>2]=0,t[r>>2]=t[s>>2],t[r+4>>2]=t[s+4>>2],ec(e,4790,r)|0,t[o>>2]=4,t[o+4>>2]=0,t[r>>2]=t[o>>2],t[r+4>>2]=t[o+4>>2],ec(e,4808,r)|0,h=n}function qm(e,n){e=e|0,n=n|0;var r=0;r=Nx()|0,t[e>>2]=r,Bx(r,n),Cf(t[e>>2]|0)}function Id(e,n,r){return e=e|0,n=n|0,r=r|0,Ex(e,Zn(n)|0,r,0),e|0}function Pd(e,n,r){return e=e|0,n=n|0,r=r|0,ux(e,Zn(n)|0,r,0),e|0}function zm(e,n,r){return e=e|0,n=n|0,r=r|0,V9(e,Zn(n)|0,r,0),e|0}function gf(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0;return o=h,h=h+16|0,s=o+8|0,l=o,d=t[r+4>>2]|0,t[l>>2]=t[r>>2],t[l+4>>2]=d,t[s>>2]=t[l>>2],t[s+4>>2]=t[l+4>>2],I9(e,n,s),h=o,e|0}function Md(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0;return o=h,h=h+16|0,s=o+8|0,l=o,d=t[r+4>>2]|0,t[l>>2]=t[r>>2],t[l+4>>2]=d,t[s>>2]=t[l>>2],t[s+4>>2]=t[l+4>>2],vo(e,n,s),h=o,e|0}function Xr(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0;return o=h,h=h+16|0,s=o+8|0,l=o,d=t[r+4>>2]|0,t[l>>2]=t[r>>2],t[l+4>>2]=d,t[s>>2]=t[l>>2],t[s+4>>2]=t[l+4>>2],a(e,n,s),h=o,e|0}function yi(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0;return o=h,h=h+16|0,s=o+8|0,l=o,d=t[r+4>>2]|0,t[l>>2]=t[r>>2],t[l+4>>2]=d,t[s>>2]=t[l>>2],t[s+4>>2]=t[l+4>>2],n4(e,n,s),h=o,e|0}function j0(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0;return o=h,h=h+16|0,s=o+8|0,l=o,d=t[r+4>>2]|0,t[l>>2]=t[r>>2],t[l+4>>2]=d,t[s>>2]=t[l>>2],t[s+4>>2]=t[l+4>>2],b_(e,n,s),h=o,e|0}function Zu(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0;return o=h,h=h+16|0,s=o+8|0,l=o,d=t[r+4>>2]|0,t[l>>2]=t[r>>2],t[l+4>>2]=d,t[s>>2]=t[l>>2],t[s+4>>2]=t[l+4>>2],L_(e,n,s),h=o,e|0}function _f(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0;return o=h,h=h+16|0,s=o+8|0,l=o,d=t[r+4>>2]|0,t[l>>2]=t[r>>2],t[l+4>>2]=d,t[s>>2]=t[l>>2],t[s+4>>2]=t[l+4>>2],Hp(e,n,s),h=o,e|0}function Io(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0;return o=h,h=h+16|0,s=o+8|0,l=o,d=t[r+4>>2]|0,t[l>>2]=t[r>>2],t[l+4>>2]=d,t[s>>2]=t[l>>2],t[s+4>>2]=t[l+4>>2],e_(e,n,s),h=o,e|0}function _u(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0;return o=h,h=h+16|0,s=o+8|0,l=o,d=t[r+4>>2]|0,t[l>>2]=t[r>>2],t[l+4>>2]=d,t[s>>2]=t[l>>2],t[s+4>>2]=t[l+4>>2],Ip(e,n,s),h=o,e|0}function ec(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0;return o=h,h=h+16|0,s=o+8|0,l=o,d=t[r+4>>2]|0,t[l>>2]=t[r>>2],t[l+4>>2]=d,t[s>>2]=t[l>>2],t[s+4>>2]=t[l+4>>2],Ng(e,n,s),h=o,e|0}function Wm(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0;return o=h,h=h+16|0,s=o+8|0,l=o,d=t[r+4>>2]|0,t[l>>2]=t[r>>2],t[l+4>>2]=d,t[s>>2]=t[l>>2],t[s+4>>2]=t[l+4>>2],l0(e,n,s),h=o,e|0}function Fd(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0;return o=h,h=h+16|0,s=o+8|0,l=o,d=t[r+4>>2]|0,t[l>>2]=t[r>>2],t[l+4>>2]=d,t[s>>2]=t[l>>2],t[s+4>>2]=t[l+4>>2],hg(e,n,s),h=o,e|0}function yf(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0;return o=h,h=h+16|0,s=o+8|0,l=o,d=t[r+4>>2]|0,t[l>>2]=t[r>>2],t[l+4>>2]=d,t[s>>2]=t[l>>2],t[s+4>>2]=t[l+4>>2],sg(e,n,s),h=o,e|0}function tc(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0;return o=h,h=h+16|0,s=o+8|0,l=o,d=t[r+4>>2]|0,t[l>>2]=t[r>>2],t[l+4>>2]=d,t[s>>2]=t[l>>2],t[s+4>>2]=t[l+4>>2],Kv(e,n,s),h=o,e|0}function Hm(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0;return o=h,h=h+16|0,s=o+8|0,l=o,d=t[r+4>>2]|0,t[l>>2]=t[r>>2],t[l+4>>2]=d,t[s>>2]=t[l>>2],t[s+4>>2]=t[l+4>>2],y1(e,n,s),h=o,e|0}function Ld(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0;return o=h,h=h+16|0,s=o+8|0,l=o,d=t[r+4>>2]|0,t[l>>2]=t[r>>2],t[l+4>>2]=d,t[s>>2]=t[l>>2],t[s+4>>2]=t[l+4>>2],wv(e,n,s),h=o,e|0}function Rd(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0;return o=h,h=h+16|0,s=o+8|0,l=o,d=t[r+4>>2]|0,t[l>>2]=t[r>>2],t[l+4>>2]=d,t[s>>2]=t[l>>2],t[s+4>>2]=t[l+4>>2],fv(e,n,s),h=o,e|0}function zc(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0;return o=h,h=h+16|0,s=o+8|0,l=o,d=t[r+4>>2]|0,t[l>>2]=t[r>>2],t[l+4>>2]=d,t[s>>2]=t[l>>2],t[s+4>>2]=t[l+4>>2],Gd(e,n,s),h=o,e|0}function Nd(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0;return o=h,h=h+16|0,s=o+8|0,l=o,d=t[r+4>>2]|0,t[l>>2]=t[r>>2],t[l+4>>2]=d,t[s>>2]=t[l>>2],t[s+4>>2]=t[l+4>>2],Wc(e,n,s),h=o,e|0}function Wc(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0,_=0;o=h,h=h+16|0,s=o+8|0,l=o,_=t[r>>2]|0,d=t[r+4>>2]|0,r=Zn(n)|0,t[l>>2]=_,t[l+4>>2]=d,t[s>>2]=t[l>>2],t[s+4>>2]=t[l+4>>2],Hc(e,r,s,1),h=o}function Zn(e){return e=e|0,e|0}function Hc(e,n,r,o){e=e|0,n=n|0,r=r|0,o=o|0;var s=0,l=0,d=0,_=0,y=0,k=0,T=0;s=h,h=h+32|0,l=s+16|0,T=s+8|0,_=s,k=t[r>>2]|0,y=t[r+4>>2]|0,d=t[e>>2]|0,e=Za()|0,t[T>>2]=k,t[T+4>>2]=y,t[l>>2]=t[T>>2],t[l+4>>2]=t[T+4>>2],r=Bd(l)|0,t[_>>2]=k,t[_+4>>2]=y,t[l>>2]=t[_>>2],t[l+4>>2]=t[_+4>>2],ur(d,n,e,r,bc(l,o)|0,o),h=s}function Za(){var e=0,n=0;if(c[7616]|0||(yu(9136),Bt(24,9136,Q|0)|0,n=7616,t[n>>2]=1,t[n+4>>2]=0),!(Dn(9136)|0)){e=9136,n=e+36|0;do t[e>>2]=0,e=e+4|0;while((e|0)<(n|0));yu(9136)}return 9136}function Bd(e){return e=e|0,0}function bc(e,n){e=e|0,n=n|0;var r=0,o=0,s=0,l=0,d=0,_=0,y=0,k=0,T=0,P=0;return T=h,h=h+32|0,s=T+24|0,d=T+16|0,_=T,y=T+8|0,l=t[e>>2]|0,o=t[e+4>>2]|0,t[_>>2]=l,t[_+4>>2]=o,P=Za()|0,k=P+24|0,e=Lt(n,4)|0,t[y>>2]=e,n=P+28|0,r=t[n>>2]|0,r>>>0<(t[P+32>>2]|0)>>>0?(t[d>>2]=l,t[d+4>>2]=o,t[s>>2]=t[d>>2],t[s+4>>2]=t[d+4>>2],n1(r,s,e),e=(t[n>>2]|0)+12|0,t[n>>2]=e):(jd(k,_,y),e=t[n>>2]|0),h=T,((e-(t[k>>2]|0)|0)/12|0)+-1|0}function ur(e,n,r,o,s,l){e=e|0,n=n|0,r=r|0,o=o|0,s=s|0,l=l|0;var d=0,_=0,y=0,k=0,T=0,P=0,q=0,we=0;d=h,h=h+32|0,q=d+24|0,P=d+20|0,y=d+16|0,T=d+12|0,k=d+8|0,_=d+4|0,we=d,t[P>>2]=n,t[y>>2]=r,t[T>>2]=o,t[k>>2]=s,t[_>>2]=l,l=e+28|0,t[we>>2]=t[l>>2],t[q>>2]=t[we>>2],e1(e+24|0,q,P,T,k,y,_)|0,t[l>>2]=t[t[l>>2]>>2],h=d}function e1(e,n,r,o,s,l,d){return e=e|0,n=n|0,r=r|0,o=o|0,s=s|0,l=l|0,d=d|0,e=bm(n)|0,n=Tt(24)|0,t1(n+4|0,t[r>>2]|0,t[o>>2]|0,t[s>>2]|0,t[l>>2]|0,t[d>>2]|0),t[n>>2]=t[e>>2],t[e>>2]=n,n|0}function bm(e){return e=e|0,t[e>>2]|0}function t1(e,n,r,o,s,l){e=e|0,n=n|0,r=r|0,o=o|0,s=s|0,l=l|0,t[e>>2]=n,t[e+4>>2]=r,t[e+8>>2]=o,t[e+12>>2]=s,t[e+16>>2]=l}function Lt(e,n){return e=e|0,n=n|0,n|e|0}function n1(e,n,r){e=e|0,n=n|0,r=r|0;var o=0;o=t[n+4>>2]|0,t[e>>2]=t[n>>2],t[e+4>>2]=o,t[e+8>>2]=r}function jd(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0,_=0,y=0,k=0,T=0,P=0,q=0;if(k=h,h=h+48|0,o=k+32|0,d=k+24|0,_=k,y=e+4|0,s=(((t[y>>2]|0)-(t[e>>2]|0)|0)/12|0)+1|0,l=Gm(e)|0,l>>>0>>0)$n(e);else{T=t[e>>2]|0,q=((t[e+8>>2]|0)-T|0)/12|0,P=q<<1,Ud(_,q>>>0>>1>>>0?P>>>0>>0?s:P:l,((t[y>>2]|0)-T|0)/12|0,e+8|0),y=_+8|0,l=t[y>>2]|0,s=t[n+4>>2]|0,r=t[r>>2]|0,t[d>>2]=t[n>>2],t[d+4>>2]=s,t[o>>2]=t[d>>2],t[o+4>>2]=t[d+4>>2],n1(l,o,r),t[y>>2]=(t[y>>2]|0)+12,Vm(e,_),Ym(_),h=k;return}}function Gm(e){return e=e|0,357913941}function Ud(e,n,r,o){e=e|0,n=n|0,r=r|0,o=o|0;var s=0;t[e+12>>2]=0,t[e+16>>2]=o;do if(n)if(n>>>0>357913941)_n();else{s=Tt(n*12|0)|0;break}else s=0;while(0);t[e>>2]=s,o=s+(r*12|0)|0,t[e+8>>2]=o,t[e+4>>2]=o,t[e+12>>2]=s+(n*12|0)}function Vm(e,n){e=e|0,n=n|0;var r=0,o=0,s=0,l=0,d=0;o=t[e>>2]|0,d=e+4|0,l=n+4|0,s=(t[d>>2]|0)-o|0,r=(t[l>>2]|0)+(((s|0)/-12|0)*12|0)|0,t[l>>2]=r,(s|0)>0?(vn(r|0,o|0,s|0)|0,o=l,r=t[l>>2]|0):o=l,l=t[e>>2]|0,t[e>>2]=r,t[o>>2]=l,l=n+8|0,s=t[d>>2]|0,t[d>>2]=t[l>>2],t[l>>2]=s,l=e+8|0,d=n+12|0,e=t[l>>2]|0,t[l>>2]=t[d>>2],t[d>>2]=e,t[n>>2]=t[o>>2]}function Ym(e){e=e|0;var n=0,r=0,o=0;n=t[e+4>>2]|0,r=e+8|0,o=t[r>>2]|0,(o|0)!=(n|0)&&(t[r>>2]=o+(~(((o+-12-n|0)>>>0)/12|0)*12|0)),e=t[e>>2]|0,e|0&&Ve(e)}function yu(e){e=e|0,Gc(e)}function r1(e){e=e|0,i1(e+24|0)}function Dn(e){return e=e|0,t[e>>2]|0}function i1(e){e=e|0;var n=0,r=0,o=0;r=t[e>>2]|0,o=r,r|0&&(e=e+4|0,n=t[e>>2]|0,(n|0)!=(r|0)&&(t[e>>2]=n+(~(((n+-12-o|0)>>>0)/12|0)*12|0)),Ve(r))}function Gc(e){e=e|0;var n=0;n=An()|0,Nn(e,2,3,n,cn()|0,0),t[e+24>>2]=0,t[e+28>>2]=0,t[e+32>>2]=0}function An(){return 9228}function cn(){return 1140}function Vc(e,n){e=e|0,n=n|0;var r=0,o=0,s=0,l=0;return r=h,h=h+16|0,o=r+8|0,s=r,l=Il(e)|0,e=t[l+4>>2]|0,t[s>>2]=t[l>>2],t[s+4>>2]=e,t[o>>2]=t[s>>2],t[o+4>>2]=t[s+4>>2],n=$m(n,o)|0,h=r,n|0}function Nn(e,n,r,o,s,l){e=e|0,n=n|0,r=r|0,o=o|0,s=s|0,l=l|0,t[e>>2]=n,t[e+4>>2]=r,t[e+8>>2]=o,t[e+12>>2]=s,t[e+16>>2]=l}function Il(e){return e=e|0,(t[(Za()|0)+24>>2]|0)+(e*12|0)|0}function $m(e,n){e=e|0,n=n|0;var r=0,o=0,s=0;return s=h,h=h+48|0,o=s,r=t[n>>2]|0,n=t[n+4>>2]|0,e=e+(n>>1)|0,n&1&&(r=t[(t[e>>2]|0)+r>>2]|0),Bl[r&31](o,e),o=o1(o)|0,h=s,o|0}function o1(e){e=e|0;var n=0,r=0,o=0,s=0;return s=h,h=h+32|0,n=s+12|0,r=s,o=U0(u1()|0)|0,o?(s1(n,o),l1(r,n),qd(e,r),e=f1(n)|0):e=zd(e)|0,h=s,e|0}function u1(){var e=0;return c[7632]|0||(nc(9184),Bt(25,9184,Q|0)|0,e=7632,t[e>>2]=1,t[e+4>>2]=0),9184}function U0(e){return e=e|0,t[e+36>>2]|0}function s1(e,n){e=e|0,n=n|0,t[e>>2]=n,t[e+4>>2]=e,t[e+8>>2]=0}function l1(e,n){e=e|0,n=n|0,t[e>>2]=t[n>>2],t[e+4>>2]=t[n+4>>2],t[e+8>>2]=0}function qd(e,n){e=e|0,n=n|0,Ii(n,e,e+8|0,e+16|0,e+24|0,e+32|0,e+40|0)|0}function f1(e){return e=e|0,t[(t[e+4>>2]|0)+8>>2]|0}function zd(e){e=e|0;var n=0,r=0,o=0,s=0,l=0,d=0,_=0,y=0;y=h,h=h+16|0,r=y+4|0,o=y,s=Qo(8)|0,l=s,d=Tt(48)|0,_=d,n=_+48|0;do t[_>>2]=t[e>>2],_=_+4|0,e=e+4|0;while((_|0)<(n|0));return n=l+4|0,t[n>>2]=d,_=Tt(8)|0,d=t[n>>2]|0,t[o>>2]=0,t[r>>2]=t[o>>2],Wd(_,d,r),t[s>>2]=_,h=y,l|0}function Wd(e,n,r){e=e|0,n=n|0,r=r|0,t[e>>2]=n,r=Tt(16)|0,t[r+4>>2]=0,t[r+8>>2]=0,t[r>>2]=1092,t[r+12>>2]=n,t[e+4>>2]=r}function Km(e){e=e|0,da(e),Ve(e)}function Xm(e){e=e|0,e=t[e+12>>2]|0,e|0&&Ve(e)}function es(e){e=e|0,Ve(e)}function Ii(e,n,r,o,s,l,d){return e=e|0,n=n|0,r=r|0,o=o|0,s=s|0,l=l|0,d=d|0,l=c1(t[e>>2]|0,n,r,o,s,l,d)|0,d=e+4|0,t[(t[d>>2]|0)+8>>2]=l,t[(t[d>>2]|0)+8>>2]|0}function c1(e,n,r,o,s,l,d){e=e|0,n=n|0,r=r|0,o=o|0,s=s|0,l=l|0,d=d|0;var _=0,y=0;return _=h,h=h+16|0,y=_,Zo(y),e=Oi(e)|0,d=Jm(e,+L[n>>3],+L[r>>3],+L[o>>3],+L[s>>3],+L[l>>3],+L[d>>3])|0,eu(y),h=_,d|0}function Jm(e,n,r,o,s,l,d){e=e|0,n=+n,r=+r,o=+o,s=+s,l=+l,d=+d;var _=0;return _=ko(a1()|0)|0,n=+Ko(n),r=+Ko(r),o=+Ko(o),s=+Ko(s),l=+Ko(l),xs(0,_|0,e|0,+n,+r,+o,+s,+l,+ +Ko(d))|0}function a1(){var e=0;return c[7624]|0||(Qm(9172),e=7624,t[e>>2]=1,t[e+4>>2]=0),9172}function Qm(e){e=e|0,Ao(e,Zm()|0,6)}function Zm(){return 1112}function nc(e){e=e|0,Ys(e)}function Hd(e){e=e|0,d1(e+24|0),bd(e+16|0)}function d1(e){e=e|0,tv(e)}function bd(e){e=e|0,ev(e)}function ev(e){e=e|0;var n=0,r=0;if(n=t[e>>2]|0,n|0)do r=n,n=t[n>>2]|0,Ve(r);while((n|0)!=0);t[e>>2]=0}function tv(e){e=e|0;var n=0,r=0;if(n=t[e>>2]|0,n|0)do r=n,n=t[n>>2]|0,Ve(r);while((n|0)!=0);t[e>>2]=0}function Ys(e){e=e|0;var n=0;t[e+16>>2]=0,t[e+20>>2]=0,n=e+24|0,t[n>>2]=0,t[e+28>>2]=n,t[e+36>>2]=0,c[e+40>>0]=0,c[e+41>>0]=0}function Gd(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0,_=0;o=h,h=h+16|0,s=o+8|0,l=o,_=t[r>>2]|0,d=t[r+4>>2]|0,r=Zn(n)|0,t[l>>2]=_,t[l+4>>2]=d,t[s>>2]=t[l>>2],t[s+4>>2]=t[l+4>>2],Vd(e,r,s,0),h=o}function Vd(e,n,r,o){e=e|0,n=n|0,r=r|0,o=o|0;var s=0,l=0,d=0,_=0,y=0,k=0,T=0;s=h,h=h+32|0,l=s+16|0,T=s+8|0,_=s,k=t[r>>2]|0,y=t[r+4>>2]|0,d=t[e>>2]|0,e=p1()|0,t[T>>2]=k,t[T+4>>2]=y,t[l>>2]=t[T>>2],t[l+4>>2]=t[T+4>>2],r=h1(l)|0,t[_>>2]=k,t[_+4>>2]=y,t[l>>2]=t[_>>2],t[l+4>>2]=t[_+4>>2],ur(d,n,e,r,Yd(l,o)|0,o),h=s}function p1(){var e=0,n=0;if(c[7640]|0||(Xo(9232),Bt(26,9232,Q|0)|0,n=7640,t[n>>2]=1,t[n+4>>2]=0),!(Dn(9232)|0)){e=9232,n=e+36|0;do t[e>>2]=0,e=e+4|0;while((e|0)<(n|0));Xo(9232)}return 9232}function h1(e){return e=e|0,0}function Yd(e,n){e=e|0,n=n|0;var r=0,o=0,s=0,l=0,d=0,_=0,y=0,k=0,T=0,P=0;return T=h,h=h+32|0,s=T+24|0,d=T+16|0,_=T,y=T+8|0,l=t[e>>2]|0,o=t[e+4>>2]|0,t[_>>2]=l,t[_+4>>2]=o,P=p1()|0,k=P+24|0,e=Lt(n,4)|0,t[y>>2]=e,n=P+28|0,r=t[n>>2]|0,r>>>0<(t[P+32>>2]|0)>>>0?(t[d>>2]=l,t[d+4>>2]=o,t[s>>2]=t[d>>2],t[s+4>>2]=t[d+4>>2],wf(r,s,e),e=(t[n>>2]|0)+12|0,t[n>>2]=e):(m1(k,_,y),e=t[n>>2]|0),h=T,((e-(t[k>>2]|0)|0)/12|0)+-1|0}function wf(e,n,r){e=e|0,n=n|0,r=r|0;var o=0;o=t[n+4>>2]|0,t[e>>2]=t[n>>2],t[e+4>>2]=o,t[e+8>>2]=r}function m1(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0,_=0,y=0,k=0,T=0,P=0,q=0;if(k=h,h=h+48|0,o=k+32|0,d=k+24|0,_=k,y=e+4|0,s=(((t[y>>2]|0)-(t[e>>2]|0)|0)/12|0)+1|0,l=$d(e)|0,l>>>0>>0)$n(e);else{T=t[e>>2]|0,q=((t[e+8>>2]|0)-T|0)/12|0,P=q<<1,Kd(_,q>>>0>>1>>>0?P>>>0>>0?s:P:l,((t[y>>2]|0)-T|0)/12|0,e+8|0),y=_+8|0,l=t[y>>2]|0,s=t[n+4>>2]|0,r=t[r>>2]|0,t[d>>2]=t[n>>2],t[d+4>>2]=s,t[o>>2]=t[d>>2],t[o+4>>2]=t[d+4>>2],wf(l,o,r),t[y>>2]=(t[y>>2]|0)+12,Yc(e,_),Xd(_),h=k;return}}function $d(e){return e=e|0,357913941}function Kd(e,n,r,o){e=e|0,n=n|0,r=r|0,o=o|0;var s=0;t[e+12>>2]=0,t[e+16>>2]=o;do if(n)if(n>>>0>357913941)_n();else{s=Tt(n*12|0)|0;break}else s=0;while(0);t[e>>2]=s,o=s+(r*12|0)|0,t[e+8>>2]=o,t[e+4>>2]=o,t[e+12>>2]=s+(n*12|0)}function Yc(e,n){e=e|0,n=n|0;var r=0,o=0,s=0,l=0,d=0;o=t[e>>2]|0,d=e+4|0,l=n+4|0,s=(t[d>>2]|0)-o|0,r=(t[l>>2]|0)+(((s|0)/-12|0)*12|0)|0,t[l>>2]=r,(s|0)>0?(vn(r|0,o|0,s|0)|0,o=l,r=t[l>>2]|0):o=l,l=t[e>>2]|0,t[e>>2]=r,t[o>>2]=l,l=n+8|0,s=t[d>>2]|0,t[d>>2]=t[l>>2],t[l>>2]=s,l=e+8|0,d=n+12|0,e=t[l>>2]|0,t[l>>2]=t[d>>2],t[d>>2]=e,t[n>>2]=t[o>>2]}function Xd(e){e=e|0;var n=0,r=0,o=0;n=t[e+4>>2]|0,r=e+8|0,o=t[r>>2]|0,(o|0)!=(n|0)&&(t[r>>2]=o+(~(((o+-12-n|0)>>>0)/12|0)*12|0)),e=t[e>>2]|0,e|0&&Ve(e)}function Xo(e){e=e|0,Jd(e)}function Pl(e){e=e|0,nv(e+24|0)}function nv(e){e=e|0;var n=0,r=0,o=0;r=t[e>>2]|0,o=r,r|0&&(e=e+4|0,n=t[e>>2]|0,(n|0)!=(r|0)&&(t[e>>2]=n+(~(((n+-12-o|0)>>>0)/12|0)*12|0)),Ve(r))}function Jd(e){e=e|0;var n=0;n=An()|0,Nn(e,2,1,n,rv()|0,3),t[e+24>>2]=0,t[e+28>>2]=0,t[e+32>>2]=0}function rv(){return 1144}function iv(e,n,r,o,s){e=e|0,n=n|0,r=+r,o=+o,s=s|0;var l=0,d=0,_=0,y=0;l=h,h=h+16|0,d=l+8|0,_=l,y=ov(e)|0,e=t[y+4>>2]|0,t[_>>2]=t[y>>2],t[_+4>>2]=e,t[d>>2]=t[_>>2],t[d+4>>2]=t[_+4>>2],uv(n,d,r,o,s),h=l}function ov(e){return e=e|0,(t[(p1()|0)+24>>2]|0)+(e*12|0)|0}function uv(e,n,r,o,s){e=e|0,n=n|0,r=+r,o=+o,s=s|0;var l=0,d=0,_=0,y=0,k=0;k=h,h=h+16|0,d=k+2|0,_=k+1|0,y=k,l=t[n>>2]|0,n=t[n+4>>2]|0,e=e+(n>>1)|0,n&1&&(l=t[(t[e>>2]|0)+l>>2]|0),wu(d,r),r=+Du(d,r),wu(_,o),o=+Du(_,o),ts(y,s),y=ns(y,s)|0,iD[l&1](e,r,o,y),h=k}function wu(e,n){e=e|0,n=+n}function Du(e,n){return e=e|0,n=+n,+ +lv(n)}function ts(e,n){e=e|0,n=n|0}function ns(e,n){return e=e|0,n=n|0,sv(n)|0}function sv(e){return e=e|0,e|0}function lv(e){return e=+e,+e}function fv(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0,_=0;o=h,h=h+16|0,s=o+8|0,l=o,_=t[r>>2]|0,d=t[r+4>>2]|0,r=Zn(n)|0,t[l>>2]=_,t[l+4>>2]=d,t[s>>2]=t[l>>2],t[s+4>>2]=t[l+4>>2],Qd(e,r,s,1),h=o}function Qd(e,n,r,o){e=e|0,n=n|0,r=r|0,o=o|0;var s=0,l=0,d=0,_=0,y=0,k=0,T=0;s=h,h=h+32|0,l=s+16|0,T=s+8|0,_=s,k=t[r>>2]|0,y=t[r+4>>2]|0,d=t[e>>2]|0,e=$c()|0,t[T>>2]=k,t[T+4>>2]=y,t[l>>2]=t[T>>2],t[l+4>>2]=t[T+4>>2],r=Zd(l)|0,t[_>>2]=k,t[_+4>>2]=y,t[l>>2]=t[_>>2],t[l+4>>2]=t[_+4>>2],ur(d,n,e,r,cv(l,o)|0,o),h=s}function $c(){var e=0,n=0;if(c[7648]|0||(np(9268),Bt(27,9268,Q|0)|0,n=7648,t[n>>2]=1,t[n+4>>2]=0),!(Dn(9268)|0)){e=9268,n=e+36|0;do t[e>>2]=0,e=e+4|0;while((e|0)<(n|0));np(9268)}return 9268}function Zd(e){return e=e|0,0}function cv(e,n){e=e|0,n=n|0;var r=0,o=0,s=0,l=0,d=0,_=0,y=0,k=0,T=0,P=0;return T=h,h=h+32|0,s=T+24|0,d=T+16|0,_=T,y=T+8|0,l=t[e>>2]|0,o=t[e+4>>2]|0,t[_>>2]=l,t[_+4>>2]=o,P=$c()|0,k=P+24|0,e=Lt(n,4)|0,t[y>>2]=e,n=P+28|0,r=t[n>>2]|0,r>>>0<(t[P+32>>2]|0)>>>0?(t[d>>2]=l,t[d+4>>2]=o,t[s>>2]=t[d>>2],t[s+4>>2]=t[d+4>>2],ep(r,s,e),e=(t[n>>2]|0)+12|0,t[n>>2]=e):(av(k,_,y),e=t[n>>2]|0),h=T,((e-(t[k>>2]|0)|0)/12|0)+-1|0}function ep(e,n,r){e=e|0,n=n|0,r=r|0;var o=0;o=t[n+4>>2]|0,t[e>>2]=t[n>>2],t[e+4>>2]=o,t[e+8>>2]=r}function av(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0,_=0,y=0,k=0,T=0,P=0,q=0;if(k=h,h=h+48|0,o=k+32|0,d=k+24|0,_=k,y=e+4|0,s=(((t[y>>2]|0)-(t[e>>2]|0)|0)/12|0)+1|0,l=tp(e)|0,l>>>0>>0)$n(e);else{T=t[e>>2]|0,q=((t[e+8>>2]|0)-T|0)/12|0,P=q<<1,dv(_,q>>>0>>1>>>0?P>>>0>>0?s:P:l,((t[y>>2]|0)-T|0)/12|0,e+8|0),y=_+8|0,l=t[y>>2]|0,s=t[n+4>>2]|0,r=t[r>>2]|0,t[d>>2]=t[n>>2],t[d+4>>2]=s,t[o>>2]=t[d>>2],t[o+4>>2]=t[d+4>>2],ep(l,o,r),t[y>>2]=(t[y>>2]|0)+12,pv(e,_),hv(_),h=k;return}}function tp(e){return e=e|0,357913941}function dv(e,n,r,o){e=e|0,n=n|0,r=r|0,o=o|0;var s=0;t[e+12>>2]=0,t[e+16>>2]=o;do if(n)if(n>>>0>357913941)_n();else{s=Tt(n*12|0)|0;break}else s=0;while(0);t[e>>2]=s,o=s+(r*12|0)|0,t[e+8>>2]=o,t[e+4>>2]=o,t[e+12>>2]=s+(n*12|0)}function pv(e,n){e=e|0,n=n|0;var r=0,o=0,s=0,l=0,d=0;o=t[e>>2]|0,d=e+4|0,l=n+4|0,s=(t[d>>2]|0)-o|0,r=(t[l>>2]|0)+(((s|0)/-12|0)*12|0)|0,t[l>>2]=r,(s|0)>0?(vn(r|0,o|0,s|0)|0,o=l,r=t[l>>2]|0):o=l,l=t[e>>2]|0,t[e>>2]=r,t[o>>2]=l,l=n+8|0,s=t[d>>2]|0,t[d>>2]=t[l>>2],t[l>>2]=s,l=e+8|0,d=n+12|0,e=t[l>>2]|0,t[l>>2]=t[d>>2],t[d>>2]=e,t[n>>2]=t[o>>2]}function hv(e){e=e|0;var n=0,r=0,o=0;n=t[e+4>>2]|0,r=e+8|0,o=t[r>>2]|0,(o|0)!=(n|0)&&(t[r>>2]=o+(~(((o+-12-n|0)>>>0)/12|0)*12|0)),e=t[e>>2]|0,e|0&&Ve(e)}function np(e){e=e|0,Po(e)}function mv(e){e=e|0,vv(e+24|0)}function vv(e){e=e|0;var n=0,r=0,o=0;r=t[e>>2]|0,o=r,r|0&&(e=e+4|0,n=t[e>>2]|0,(n|0)!=(r|0)&&(t[e>>2]=n+(~(((n+-12-o|0)>>>0)/12|0)*12|0)),Ve(r))}function Po(e){e=e|0;var n=0;n=An()|0,Nn(e,2,4,n,gv()|0,0),t[e+24>>2]=0,t[e+28>>2]=0,t[e+32>>2]=0}function gv(){return 1160}function _v(e,n){e=e|0,n=n|0;var r=0,o=0,s=0,l=0;return r=h,h=h+16|0,o=r+8|0,s=r,l=yv(e)|0,e=t[l+4>>2]|0,t[s>>2]=t[l>>2],t[s+4>>2]=e,t[o>>2]=t[s>>2],t[o+4>>2]=t[s+4>>2],n=rp(n,o)|0,h=r,n|0}function yv(e){return e=e|0,(t[($c()|0)+24>>2]|0)+(e*12|0)|0}function rp(e,n){e=e|0,n=n|0;var r=0;return r=t[n>>2]|0,n=t[n+4>>2]|0,e=e+(n>>1)|0,n&1&&(r=t[(t[e>>2]|0)+r>>2]|0),ip(dc[r&31](e)|0)|0}function ip(e){return e=e|0,e&1|0}function wv(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0,_=0;o=h,h=h+16|0,s=o+8|0,l=o,_=t[r>>2]|0,d=t[r+4>>2]|0,r=Zn(n)|0,t[l>>2]=_,t[l+4>>2]=d,t[s>>2]=t[l>>2],t[s+4>>2]=t[l+4>>2],Dv(e,r,s,0),h=o}function Dv(e,n,r,o){e=e|0,n=n|0,r=r|0,o=o|0;var s=0,l=0,d=0,_=0,y=0,k=0,T=0;s=h,h=h+32|0,l=s+16|0,T=s+8|0,_=s,k=t[r>>2]|0,y=t[r+4>>2]|0,d=t[e>>2]|0,e=v1()|0,t[T>>2]=k,t[T+4>>2]=y,t[l>>2]=t[T>>2],t[l+4>>2]=t[T+4>>2],r=g1(l)|0,t[_>>2]=k,t[_+4>>2]=y,t[l>>2]=t[_>>2],t[l+4>>2]=t[_+4>>2],ur(d,n,e,r,Ev(l,o)|0,o),h=s}function v1(){var e=0,n=0;if(c[7656]|0||(up(9304),Bt(28,9304,Q|0)|0,n=7656,t[n>>2]=1,t[n+4>>2]=0),!(Dn(9304)|0)){e=9304,n=e+36|0;do t[e>>2]=0,e=e+4|0;while((e|0)<(n|0));up(9304)}return 9304}function g1(e){return e=e|0,0}function Ev(e,n){e=e|0,n=n|0;var r=0,o=0,s=0,l=0,d=0,_=0,y=0,k=0,T=0,P=0;return T=h,h=h+32|0,s=T+24|0,d=T+16|0,_=T,y=T+8|0,l=t[e>>2]|0,o=t[e+4>>2]|0,t[_>>2]=l,t[_+4>>2]=o,P=v1()|0,k=P+24|0,e=Lt(n,4)|0,t[y>>2]=e,n=P+28|0,r=t[n>>2]|0,r>>>0<(t[P+32>>2]|0)>>>0?(t[d>>2]=l,t[d+4>>2]=o,t[s>>2]=t[d>>2],t[s+4>>2]=t[d+4>>2],op(r,s,e),e=(t[n>>2]|0)+12|0,t[n>>2]=e):(Sv(k,_,y),e=t[n>>2]|0),h=T,((e-(t[k>>2]|0)|0)/12|0)+-1|0}function op(e,n,r){e=e|0,n=n|0,r=r|0;var o=0;o=t[n+4>>2]|0,t[e>>2]=t[n>>2],t[e+4>>2]=o,t[e+8>>2]=r}function Sv(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0,_=0,y=0,k=0,T=0,P=0,q=0;if(k=h,h=h+48|0,o=k+32|0,d=k+24|0,_=k,y=e+4|0,s=(((t[y>>2]|0)-(t[e>>2]|0)|0)/12|0)+1|0,l=Cv(e)|0,l>>>0>>0)$n(e);else{T=t[e>>2]|0,q=((t[e+8>>2]|0)-T|0)/12|0,P=q<<1,Tv(_,q>>>0>>1>>>0?P>>>0>>0?s:P:l,((t[y>>2]|0)-T|0)/12|0,e+8|0),y=_+8|0,l=t[y>>2]|0,s=t[n+4>>2]|0,r=t[r>>2]|0,t[d>>2]=t[n>>2],t[d+4>>2]=s,t[o>>2]=t[d>>2],t[o+4>>2]=t[d+4>>2],op(l,o,r),t[y>>2]=(t[y>>2]|0)+12,xv(e,_),kv(_),h=k;return}}function Cv(e){return e=e|0,357913941}function Tv(e,n,r,o){e=e|0,n=n|0,r=r|0,o=o|0;var s=0;t[e+12>>2]=0,t[e+16>>2]=o;do if(n)if(n>>>0>357913941)_n();else{s=Tt(n*12|0)|0;break}else s=0;while(0);t[e>>2]=s,o=s+(r*12|0)|0,t[e+8>>2]=o,t[e+4>>2]=o,t[e+12>>2]=s+(n*12|0)}function xv(e,n){e=e|0,n=n|0;var r=0,o=0,s=0,l=0,d=0;o=t[e>>2]|0,d=e+4|0,l=n+4|0,s=(t[d>>2]|0)-o|0,r=(t[l>>2]|0)+(((s|0)/-12|0)*12|0)|0,t[l>>2]=r,(s|0)>0?(vn(r|0,o|0,s|0)|0,o=l,r=t[l>>2]|0):o=l,l=t[e>>2]|0,t[e>>2]=r,t[o>>2]=l,l=n+8|0,s=t[d>>2]|0,t[d>>2]=t[l>>2],t[l>>2]=s,l=e+8|0,d=n+12|0,e=t[l>>2]|0,t[l>>2]=t[d>>2],t[d>>2]=e,t[n>>2]=t[o>>2]}function kv(e){e=e|0;var n=0,r=0,o=0;n=t[e+4>>2]|0,r=e+8|0,o=t[r>>2]|0,(o|0)!=(n|0)&&(t[r>>2]=o+(~(((o+-12-n|0)>>>0)/12|0)*12|0)),e=t[e>>2]|0,e|0&&Ve(e)}function up(e){e=e|0,Iv(e)}function Av(e){e=e|0,Ov(e+24|0)}function Ov(e){e=e|0;var n=0,r=0,o=0;r=t[e>>2]|0,o=r,r|0&&(e=e+4|0,n=t[e>>2]|0,(n|0)!=(r|0)&&(t[e>>2]=n+(~(((n+-12-o|0)>>>0)/12|0)*12|0)),Ve(r))}function Iv(e){e=e|0;var n=0;n=An()|0,Nn(e,2,5,n,Pv()|0,1),t[e+24>>2]=0,t[e+28>>2]=0,t[e+32>>2]=0}function Pv(){return 1164}function Mv(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0;o=h,h=h+16|0,s=o+8|0,l=o,d=Fv(e)|0,e=t[d+4>>2]|0,t[l>>2]=t[d>>2],t[l+4>>2]=e,t[s>>2]=t[l>>2],t[s+4>>2]=t[l+4>>2],Lv(n,s,r),h=o}function Fv(e){return e=e|0,(t[(v1()|0)+24>>2]|0)+(e*12|0)|0}function Lv(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0;l=h,h=h+16|0,s=l,o=t[n>>2]|0,n=t[n+4>>2]|0,e=e+(n>>1)|0,n&1&&(o=t[(t[e>>2]|0)+o>>2]|0),$s(s,r),r=Ks(s,r)|0,Bl[o&31](e,r),Xs(s),h=l}function $s(e,n){e=e|0,n=n|0,Rv(e,n)}function Ks(e,n){return e=e|0,n=n|0,e|0}function Xs(e){e=e|0,Ju(e)}function Rv(e,n){e=e|0,n=n|0,_1(e,n)}function _1(e,n){e=e|0,n=n|0,t[e>>2]=n}function y1(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0,_=0;o=h,h=h+16|0,s=o+8|0,l=o,_=t[r>>2]|0,d=t[r+4>>2]|0,r=Zn(n)|0,t[l>>2]=_,t[l+4>>2]=d,t[s>>2]=t[l>>2],t[s+4>>2]=t[l+4>>2],sp(e,r,s,0),h=o}function sp(e,n,r,o){e=e|0,n=n|0,r=r|0,o=o|0;var s=0,l=0,d=0,_=0,y=0,k=0,T=0;s=h,h=h+32|0,l=s+16|0,T=s+8|0,_=s,k=t[r>>2]|0,y=t[r+4>>2]|0,d=t[e>>2]|0,e=w1()|0,t[T>>2]=k,t[T+4>>2]=y,t[l>>2]=t[T>>2],t[l+4>>2]=t[T+4>>2],r=Nv(l)|0,t[_>>2]=k,t[_+4>>2]=y,t[l>>2]=t[_>>2],t[l+4>>2]=t[_+4>>2],ur(d,n,e,r,Bv(l,o)|0,o),h=s}function w1(){var e=0,n=0;if(c[7664]|0||(cp(9340),Bt(29,9340,Q|0)|0,n=7664,t[n>>2]=1,t[n+4>>2]=0),!(Dn(9340)|0)){e=9340,n=e+36|0;do t[e>>2]=0,e=e+4|0;while((e|0)<(n|0));cp(9340)}return 9340}function Nv(e){return e=e|0,0}function Bv(e,n){e=e|0,n=n|0;var r=0,o=0,s=0,l=0,d=0,_=0,y=0,k=0,T=0,P=0;return T=h,h=h+32|0,s=T+24|0,d=T+16|0,_=T,y=T+8|0,l=t[e>>2]|0,o=t[e+4>>2]|0,t[_>>2]=l,t[_+4>>2]=o,P=w1()|0,k=P+24|0,e=Lt(n,4)|0,t[y>>2]=e,n=P+28|0,r=t[n>>2]|0,r>>>0<(t[P+32>>2]|0)>>>0?(t[d>>2]=l,t[d+4>>2]=o,t[s>>2]=t[d>>2],t[s+4>>2]=t[d+4>>2],lp(r,s,e),e=(t[n>>2]|0)+12|0,t[n>>2]=e):(jv(k,_,y),e=t[n>>2]|0),h=T,((e-(t[k>>2]|0)|0)/12|0)+-1|0}function lp(e,n,r){e=e|0,n=n|0,r=r|0;var o=0;o=t[n+4>>2]|0,t[e>>2]=t[n>>2],t[e+4>>2]=o,t[e+8>>2]=r}function jv(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0,_=0,y=0,k=0,T=0,P=0,q=0;if(k=h,h=h+48|0,o=k+32|0,d=k+24|0,_=k,y=e+4|0,s=(((t[y>>2]|0)-(t[e>>2]|0)|0)/12|0)+1|0,l=Uv(e)|0,l>>>0>>0)$n(e);else{T=t[e>>2]|0,q=((t[e+8>>2]|0)-T|0)/12|0,P=q<<1,qv(_,q>>>0>>1>>>0?P>>>0>>0?s:P:l,((t[y>>2]|0)-T|0)/12|0,e+8|0),y=_+8|0,l=t[y>>2]|0,s=t[n+4>>2]|0,r=t[r>>2]|0,t[d>>2]=t[n>>2],t[d+4>>2]=s,t[o>>2]=t[d>>2],t[o+4>>2]=t[d+4>>2],lp(l,o,r),t[y>>2]=(t[y>>2]|0)+12,zv(e,_),fp(_),h=k;return}}function Uv(e){return e=e|0,357913941}function qv(e,n,r,o){e=e|0,n=n|0,r=r|0,o=o|0;var s=0;t[e+12>>2]=0,t[e+16>>2]=o;do if(n)if(n>>>0>357913941)_n();else{s=Tt(n*12|0)|0;break}else s=0;while(0);t[e>>2]=s,o=s+(r*12|0)|0,t[e+8>>2]=o,t[e+4>>2]=o,t[e+12>>2]=s+(n*12|0)}function zv(e,n){e=e|0,n=n|0;var r=0,o=0,s=0,l=0,d=0;o=t[e>>2]|0,d=e+4|0,l=n+4|0,s=(t[d>>2]|0)-o|0,r=(t[l>>2]|0)+(((s|0)/-12|0)*12|0)|0,t[l>>2]=r,(s|0)>0?(vn(r|0,o|0,s|0)|0,o=l,r=t[l>>2]|0):o=l,l=t[e>>2]|0,t[e>>2]=r,t[o>>2]=l,l=n+8|0,s=t[d>>2]|0,t[d>>2]=t[l>>2],t[l>>2]=s,l=e+8|0,d=n+12|0,e=t[l>>2]|0,t[l>>2]=t[d>>2],t[d>>2]=e,t[n>>2]=t[o>>2]}function fp(e){e=e|0;var n=0,r=0,o=0;n=t[e+4>>2]|0,r=e+8|0,o=t[r>>2]|0,(o|0)!=(n|0)&&(t[r>>2]=o+(~(((o+-12-n|0)>>>0)/12|0)*12|0)),e=t[e>>2]|0,e|0&&Ve(e)}function cp(e){e=e|0,Hv(e)}function Kc(e){e=e|0,Wv(e+24|0)}function Wv(e){e=e|0;var n=0,r=0,o=0;r=t[e>>2]|0,o=r,r|0&&(e=e+4|0,n=t[e>>2]|0,(n|0)!=(r|0)&&(t[e>>2]=n+(~(((n+-12-o|0)>>>0)/12|0)*12|0)),Ve(r))}function Hv(e){e=e|0;var n=0;n=An()|0,Nn(e,2,4,n,bv()|0,1),t[e+24>>2]=0,t[e+28>>2]=0,t[e+32>>2]=0}function bv(){return 1180}function Gv(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0;return o=h,h=h+16|0,s=o+8|0,l=o,d=Vv(e)|0,e=t[d+4>>2]|0,t[l>>2]=t[d>>2],t[l+4>>2]=e,t[s>>2]=t[l>>2],t[s+4>>2]=t[l+4>>2],r=Yv(n,s,r)|0,h=o,r|0}function Vv(e){return e=e|0,(t[(w1()|0)+24>>2]|0)+(e*12|0)|0}function Yv(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0;return l=h,h=h+16|0,s=l,o=t[n>>2]|0,n=t[n+4>>2]|0,e=e+(n>>1)|0,n&1&&(o=t[(t[e>>2]|0)+o>>2]|0),Ml(s,r),s=Fl(s,r)|0,s=Xc(J4[o&15](e,s)|0)|0,h=l,s|0}function Ml(e,n){e=e|0,n=n|0}function Fl(e,n){return e=e|0,n=n|0,$v(n)|0}function Xc(e){return e=e|0,e|0}function $v(e){return e=e|0,e|0}function Kv(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0,_=0;o=h,h=h+16|0,s=o+8|0,l=o,_=t[r>>2]|0,d=t[r+4>>2]|0,r=Zn(n)|0,t[l>>2]=_,t[l+4>>2]=d,t[s>>2]=t[l>>2],t[s+4>>2]=t[l+4>>2],Xv(e,r,s,0),h=o}function Xv(e,n,r,o){e=e|0,n=n|0,r=r|0,o=o|0;var s=0,l=0,d=0,_=0,y=0,k=0,T=0;s=h,h=h+32|0,l=s+16|0,T=s+8|0,_=s,k=t[r>>2]|0,y=t[r+4>>2]|0,d=t[e>>2]|0,e=D1()|0,t[T>>2]=k,t[T+4>>2]=y,t[l>>2]=t[T>>2],t[l+4>>2]=t[T+4>>2],r=Jv(l)|0,t[_>>2]=k,t[_+4>>2]=y,t[l>>2]=t[_>>2],t[l+4>>2]=t[_+4>>2],ur(d,n,e,r,Qv(l,o)|0,o),h=s}function D1(){var e=0,n=0;if(c[7672]|0||(hp(9376),Bt(30,9376,Q|0)|0,n=7672,t[n>>2]=1,t[n+4>>2]=0),!(Dn(9376)|0)){e=9376,n=e+36|0;do t[e>>2]=0,e=e+4|0;while((e|0)<(n|0));hp(9376)}return 9376}function Jv(e){return e=e|0,0}function Qv(e,n){e=e|0,n=n|0;var r=0,o=0,s=0,l=0,d=0,_=0,y=0,k=0,T=0,P=0;return T=h,h=h+32|0,s=T+24|0,d=T+16|0,_=T,y=T+8|0,l=t[e>>2]|0,o=t[e+4>>2]|0,t[_>>2]=l,t[_+4>>2]=o,P=D1()|0,k=P+24|0,e=Lt(n,4)|0,t[y>>2]=e,n=P+28|0,r=t[n>>2]|0,r>>>0<(t[P+32>>2]|0)>>>0?(t[d>>2]=l,t[d+4>>2]=o,t[s>>2]=t[d>>2],t[s+4>>2]=t[d+4>>2],ap(r,s,e),e=(t[n>>2]|0)+12|0,t[n>>2]=e):(dp(k,_,y),e=t[n>>2]|0),h=T,((e-(t[k>>2]|0)|0)/12|0)+-1|0}function ap(e,n,r){e=e|0,n=n|0,r=r|0;var o=0;o=t[n+4>>2]|0,t[e>>2]=t[n>>2],t[e+4>>2]=o,t[e+8>>2]=r}function dp(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0,_=0,y=0,k=0,T=0,P=0,q=0;if(k=h,h=h+48|0,o=k+32|0,d=k+24|0,_=k,y=e+4|0,s=(((t[y>>2]|0)-(t[e>>2]|0)|0)/12|0)+1|0,l=pp(e)|0,l>>>0>>0)$n(e);else{T=t[e>>2]|0,q=((t[e+8>>2]|0)-T|0)/12|0,P=q<<1,Zv(_,q>>>0>>1>>>0?P>>>0>>0?s:P:l,((t[y>>2]|0)-T|0)/12|0,e+8|0),y=_+8|0,l=t[y>>2]|0,s=t[n+4>>2]|0,r=t[r>>2]|0,t[d>>2]=t[n>>2],t[d+4>>2]=s,t[o>>2]=t[d>>2],t[o+4>>2]=t[d+4>>2],ap(l,o,r),t[y>>2]=(t[y>>2]|0)+12,eg(e,_),tg(_),h=k;return}}function pp(e){return e=e|0,357913941}function Zv(e,n,r,o){e=e|0,n=n|0,r=r|0,o=o|0;var s=0;t[e+12>>2]=0,t[e+16>>2]=o;do if(n)if(n>>>0>357913941)_n();else{s=Tt(n*12|0)|0;break}else s=0;while(0);t[e>>2]=s,o=s+(r*12|0)|0,t[e+8>>2]=o,t[e+4>>2]=o,t[e+12>>2]=s+(n*12|0)}function eg(e,n){e=e|0,n=n|0;var r=0,o=0,s=0,l=0,d=0;o=t[e>>2]|0,d=e+4|0,l=n+4|0,s=(t[d>>2]|0)-o|0,r=(t[l>>2]|0)+(((s|0)/-12|0)*12|0)|0,t[l>>2]=r,(s|0)>0?(vn(r|0,o|0,s|0)|0,o=l,r=t[l>>2]|0):o=l,l=t[e>>2]|0,t[e>>2]=r,t[o>>2]=l,l=n+8|0,s=t[d>>2]|0,t[d>>2]=t[l>>2],t[l>>2]=s,l=e+8|0,d=n+12|0,e=t[l>>2]|0,t[l>>2]=t[d>>2],t[d>>2]=e,t[n>>2]=t[o>>2]}function tg(e){e=e|0;var n=0,r=0,o=0;n=t[e+4>>2]|0,r=e+8|0,o=t[r>>2]|0,(o|0)!=(n|0)&&(t[r>>2]=o+(~(((o+-12-n|0)>>>0)/12|0)*12|0)),e=t[e>>2]|0,e|0&&Ve(e)}function hp(e){e=e|0,rg(e)}function Jc(e){e=e|0,ng(e+24|0)}function ng(e){e=e|0;var n=0,r=0,o=0;r=t[e>>2]|0,o=r,r|0&&(e=e+4|0,n=t[e>>2]|0,(n|0)!=(r|0)&&(t[e>>2]=n+(~(((n+-12-o|0)>>>0)/12|0)*12|0)),Ve(r))}function rg(e){e=e|0;var n=0;n=An()|0,Nn(e,2,5,n,mp()|0,0),t[e+24>>2]=0,t[e+28>>2]=0,t[e+32>>2]=0}function mp(){return 1196}function ig(e,n){e=e|0,n=n|0;var r=0,o=0,s=0,l=0;return r=h,h=h+16|0,o=r+8|0,s=r,l=og(e)|0,e=t[l+4>>2]|0,t[s>>2]=t[l>>2],t[s+4>>2]=e,t[o>>2]=t[s>>2],t[o+4>>2]=t[s+4>>2],n=ug(n,o)|0,h=r,n|0}function og(e){return e=e|0,(t[(D1()|0)+24>>2]|0)+(e*12|0)|0}function ug(e,n){e=e|0,n=n|0;var r=0;return r=t[n>>2]|0,n=t[n+4>>2]|0,e=e+(n>>1)|0,n&1&&(r=t[(t[e>>2]|0)+r>>2]|0),Xc(dc[r&31](e)|0)|0}function sg(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0,_=0;o=h,h=h+16|0,s=o+8|0,l=o,_=t[r>>2]|0,d=t[r+4>>2]|0,r=Zn(n)|0,t[l>>2]=_,t[l+4>>2]=d,t[s>>2]=t[l>>2],t[s+4>>2]=t[l+4>>2],lg(e,r,s,1),h=o}function lg(e,n,r,o){e=e|0,n=n|0,r=r|0,o=o|0;var s=0,l=0,d=0,_=0,y=0,k=0,T=0;s=h,h=h+32|0,l=s+16|0,T=s+8|0,_=s,k=t[r>>2]|0,y=t[r+4>>2]|0,d=t[e>>2]|0,e=E1()|0,t[T>>2]=k,t[T+4>>2]=y,t[l>>2]=t[T>>2],t[l+4>>2]=t[T+4>>2],r=fg(l)|0,t[_>>2]=k,t[_+4>>2]=y,t[l>>2]=t[_>>2],t[l+4>>2]=t[_+4>>2],ur(d,n,e,r,cg(l,o)|0,o),h=s}function E1(){var e=0,n=0;if(c[7680]|0||(C1(9412),Bt(31,9412,Q|0)|0,n=7680,t[n>>2]=1,t[n+4>>2]=0),!(Dn(9412)|0)){e=9412,n=e+36|0;do t[e>>2]=0,e=e+4|0;while((e|0)<(n|0));C1(9412)}return 9412}function fg(e){return e=e|0,0}function cg(e,n){e=e|0,n=n|0;var r=0,o=0,s=0,l=0,d=0,_=0,y=0,k=0,T=0,P=0;return T=h,h=h+32|0,s=T+24|0,d=T+16|0,_=T,y=T+8|0,l=t[e>>2]|0,o=t[e+4>>2]|0,t[_>>2]=l,t[_+4>>2]=o,P=E1()|0,k=P+24|0,e=Lt(n,4)|0,t[y>>2]=e,n=P+28|0,r=t[n>>2]|0,r>>>0<(t[P+32>>2]|0)>>>0?(t[d>>2]=l,t[d+4>>2]=o,t[s>>2]=t[d>>2],t[s+4>>2]=t[d+4>>2],rc(r,s,e),e=(t[n>>2]|0)+12|0,t[n>>2]=e):(ag(k,_,y),e=t[n>>2]|0),h=T,((e-(t[k>>2]|0)|0)/12|0)+-1|0}function rc(e,n,r){e=e|0,n=n|0,r=r|0;var o=0;o=t[n+4>>2]|0,t[e>>2]=t[n>>2],t[e+4>>2]=o,t[e+8>>2]=r}function ag(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0,_=0,y=0,k=0,T=0,P=0,q=0;if(k=h,h=h+48|0,o=k+32|0,d=k+24|0,_=k,y=e+4|0,s=(((t[y>>2]|0)-(t[e>>2]|0)|0)/12|0)+1|0,l=vp(e)|0,l>>>0>>0)$n(e);else{T=t[e>>2]|0,q=((t[e+8>>2]|0)-T|0)/12|0,P=q<<1,gp(_,q>>>0>>1>>>0?P>>>0>>0?s:P:l,((t[y>>2]|0)-T|0)/12|0,e+8|0),y=_+8|0,l=t[y>>2]|0,s=t[n+4>>2]|0,r=t[r>>2]|0,t[d>>2]=t[n>>2],t[d+4>>2]=s,t[o>>2]=t[d>>2],t[o+4>>2]=t[d+4>>2],rc(l,o,r),t[y>>2]=(t[y>>2]|0)+12,S1(e,_),_p(_),h=k;return}}function vp(e){return e=e|0,357913941}function gp(e,n,r,o){e=e|0,n=n|0,r=r|0,o=o|0;var s=0;t[e+12>>2]=0,t[e+16>>2]=o;do if(n)if(n>>>0>357913941)_n();else{s=Tt(n*12|0)|0;break}else s=0;while(0);t[e>>2]=s,o=s+(r*12|0)|0,t[e+8>>2]=o,t[e+4>>2]=o,t[e+12>>2]=s+(n*12|0)}function S1(e,n){e=e|0,n=n|0;var r=0,o=0,s=0,l=0,d=0;o=t[e>>2]|0,d=e+4|0,l=n+4|0,s=(t[d>>2]|0)-o|0,r=(t[l>>2]|0)+(((s|0)/-12|0)*12|0)|0,t[l>>2]=r,(s|0)>0?(vn(r|0,o|0,s|0)|0,o=l,r=t[l>>2]|0):o=l,l=t[e>>2]|0,t[e>>2]=r,t[o>>2]=l,l=n+8|0,s=t[d>>2]|0,t[d>>2]=t[l>>2],t[l>>2]=s,l=e+8|0,d=n+12|0,e=t[l>>2]|0,t[l>>2]=t[d>>2],t[d>>2]=e,t[n>>2]=t[o>>2]}function _p(e){e=e|0;var n=0,r=0,o=0;n=t[e+4>>2]|0,r=e+8|0,o=t[r>>2]|0,(o|0)!=(n|0)&&(t[r>>2]=o+(~(((o+-12-n|0)>>>0)/12|0)*12|0)),e=t[e>>2]|0,e|0&&Ve(e)}function C1(e){e=e|0,dg(e)}function yp(e){e=e|0,wp(e+24|0)}function wp(e){e=e|0;var n=0,r=0,o=0;r=t[e>>2]|0,o=r,r|0&&(e=e+4|0,n=t[e>>2]|0,(n|0)!=(r|0)&&(t[e>>2]=n+(~(((n+-12-o|0)>>>0)/12|0)*12|0)),Ve(r))}function dg(e){e=e|0;var n=0;n=An()|0,Nn(e,2,6,n,Dp()|0,0),t[e+24>>2]=0,t[e+28>>2]=0,t[e+32>>2]=0}function Dp(){return 1200}function pg(e,n){e=e|0,n=n|0;var r=0,o=0,s=0,l=0;return r=h,h=h+16|0,o=r+8|0,s=r,l=Qc(e)|0,e=t[l+4>>2]|0,t[s>>2]=t[l>>2],t[s+4>>2]=e,t[o>>2]=t[s>>2],t[o+4>>2]=t[s+4>>2],n=Zc(n,o)|0,h=r,n|0}function Qc(e){return e=e|0,(t[(E1()|0)+24>>2]|0)+(e*12|0)|0}function Zc(e,n){e=e|0,n=n|0;var r=0;return r=t[n>>2]|0,n=t[n+4>>2]|0,e=e+(n>>1)|0,n&1&&(r=t[(t[e>>2]|0)+r>>2]|0),ea(dc[r&31](e)|0)|0}function ea(e){return e=e|0,e|0}function hg(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0,_=0;o=h,h=h+16|0,s=o+8|0,l=o,_=t[r>>2]|0,d=t[r+4>>2]|0,r=Zn(n)|0,t[l>>2]=_,t[l+4>>2]=d,t[s>>2]=t[l>>2],t[s+4>>2]=t[l+4>>2],T1(e,r,s,0),h=o}function T1(e,n,r,o){e=e|0,n=n|0,r=r|0,o=o|0;var s=0,l=0,d=0,_=0,y=0,k=0,T=0;s=h,h=h+32|0,l=s+16|0,T=s+8|0,_=s,k=t[r>>2]|0,y=t[r+4>>2]|0,d=t[e>>2]|0,e=ta()|0,t[T>>2]=k,t[T+4>>2]=y,t[l>>2]=t[T>>2],t[l+4>>2]=t[T+4>>2],r=mg(l)|0,t[_>>2]=k,t[_+4>>2]=y,t[l>>2]=t[_>>2],t[l+4>>2]=t[_+4>>2],ur(d,n,e,r,vg(l,o)|0,o),h=s}function ta(){var e=0,n=0;if(c[7688]|0||(Sp(9448),Bt(32,9448,Q|0)|0,n=7688,t[n>>2]=1,t[n+4>>2]=0),!(Dn(9448)|0)){e=9448,n=e+36|0;do t[e>>2]=0,e=e+4|0;while((e|0)<(n|0));Sp(9448)}return 9448}function mg(e){return e=e|0,0}function vg(e,n){e=e|0,n=n|0;var r=0,o=0,s=0,l=0,d=0,_=0,y=0,k=0,T=0,P=0;return T=h,h=h+32|0,s=T+24|0,d=T+16|0,_=T,y=T+8|0,l=t[e>>2]|0,o=t[e+4>>2]|0,t[_>>2]=l,t[_+4>>2]=o,P=ta()|0,k=P+24|0,e=Lt(n,4)|0,t[y>>2]=e,n=P+28|0,r=t[n>>2]|0,r>>>0<(t[P+32>>2]|0)>>>0?(t[d>>2]=l,t[d+4>>2]=o,t[s>>2]=t[d>>2],t[s+4>>2]=t[d+4>>2],Ep(r,s,e),e=(t[n>>2]|0)+12|0,t[n>>2]=e):(gg(k,_,y),e=t[n>>2]|0),h=T,((e-(t[k>>2]|0)|0)/12|0)+-1|0}function Ep(e,n,r){e=e|0,n=n|0,r=r|0;var o=0;o=t[n+4>>2]|0,t[e>>2]=t[n>>2],t[e+4>>2]=o,t[e+8>>2]=r}function gg(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0,_=0,y=0,k=0,T=0,P=0,q=0;if(k=h,h=h+48|0,o=k+32|0,d=k+24|0,_=k,y=e+4|0,s=(((t[y>>2]|0)-(t[e>>2]|0)|0)/12|0)+1|0,l=_g(e)|0,l>>>0>>0)$n(e);else{T=t[e>>2]|0,q=((t[e+8>>2]|0)-T|0)/12|0,P=q<<1,yg(_,q>>>0>>1>>>0?P>>>0>>0?s:P:l,((t[y>>2]|0)-T|0)/12|0,e+8|0),y=_+8|0,l=t[y>>2]|0,s=t[n+4>>2]|0,r=t[r>>2]|0,t[d>>2]=t[n>>2],t[d+4>>2]=s,t[o>>2]=t[d>>2],t[o+4>>2]=t[d+4>>2],Ep(l,o,r),t[y>>2]=(t[y>>2]|0)+12,wg(e,_),Dg(_),h=k;return}}function _g(e){return e=e|0,357913941}function yg(e,n,r,o){e=e|0,n=n|0,r=r|0,o=o|0;var s=0;t[e+12>>2]=0,t[e+16>>2]=o;do if(n)if(n>>>0>357913941)_n();else{s=Tt(n*12|0)|0;break}else s=0;while(0);t[e>>2]=s,o=s+(r*12|0)|0,t[e+8>>2]=o,t[e+4>>2]=o,t[e+12>>2]=s+(n*12|0)}function wg(e,n){e=e|0,n=n|0;var r=0,o=0,s=0,l=0,d=0;o=t[e>>2]|0,d=e+4|0,l=n+4|0,s=(t[d>>2]|0)-o|0,r=(t[l>>2]|0)+(((s|0)/-12|0)*12|0)|0,t[l>>2]=r,(s|0)>0?(vn(r|0,o|0,s|0)|0,o=l,r=t[l>>2]|0):o=l,l=t[e>>2]|0,t[e>>2]=r,t[o>>2]=l,l=n+8|0,s=t[d>>2]|0,t[d>>2]=t[l>>2],t[l>>2]=s,l=e+8|0,d=n+12|0,e=t[l>>2]|0,t[l>>2]=t[d>>2],t[d>>2]=e,t[n>>2]=t[o>>2]}function Dg(e){e=e|0;var n=0,r=0,o=0;n=t[e+4>>2]|0,r=e+8|0,o=t[r>>2]|0,(o|0)!=(n|0)&&(t[r>>2]=o+(~(((o+-12-n|0)>>>0)/12|0)*12|0)),e=t[e>>2]|0,e|0&&Ve(e)}function Sp(e){e=e|0,Cg(e)}function Eg(e){e=e|0,Sg(e+24|0)}function Sg(e){e=e|0;var n=0,r=0,o=0;r=t[e>>2]|0,o=r,r|0&&(e=e+4|0,n=t[e>>2]|0,(n|0)!=(r|0)&&(t[e>>2]=n+(~(((n+-12-o|0)>>>0)/12|0)*12|0)),Ve(r))}function Cg(e){e=e|0;var n=0;n=An()|0,Nn(e,2,6,n,Mo()|0,1),t[e+24>>2]=0,t[e+28>>2]=0,t[e+32>>2]=0}function Mo(){return 1204}function Tg(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0;o=h,h=h+16|0,s=o+8|0,l=o,d=xg(e)|0,e=t[d+4>>2]|0,t[l>>2]=t[d>>2],t[l+4>>2]=e,t[s>>2]=t[l>>2],t[s+4>>2]=t[l+4>>2],Ll(n,s,r),h=o}function xg(e){return e=e|0,(t[(ta()|0)+24>>2]|0)+(e*12|0)|0}function Ll(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0;l=h,h=h+16|0,s=l,o=t[n>>2]|0,n=t[n+4>>2]|0,e=e+(n>>1)|0,n&1&&(o=t[(t[e>>2]|0)+o>>2]|0),On(s,r),s=x1(s,r)|0,Bl[o&31](e,s),h=l}function On(e,n){e=e|0,n=n|0}function x1(e,n){return e=e|0,n=n|0,Vi(n)|0}function Vi(e){return e=e|0,e|0}function l0(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0,_=0;o=h,h=h+16|0,s=o+8|0,l=o,_=t[r>>2]|0,d=t[r+4>>2]|0,r=Zn(n)|0,t[l>>2]=_,t[l+4>>2]=d,t[s>>2]=t[l>>2],t[s+4>>2]=t[l+4>>2],kg(e,r,s,0),h=o}function kg(e,n,r,o){e=e|0,n=n|0,r=r|0,o=o|0;var s=0,l=0,d=0,_=0,y=0,k=0,T=0;s=h,h=h+32|0,l=s+16|0,T=s+8|0,_=s,k=t[r>>2]|0,y=t[r+4>>2]|0,d=t[e>>2]|0,e=Eu()|0,t[T>>2]=k,t[T+4>>2]=y,t[l>>2]=t[T>>2],t[l+4>>2]=t[T+4>>2],r=Ag(l)|0,t[_>>2]=k,t[_+4>>2]=y,t[l>>2]=t[_>>2],t[l+4>>2]=t[_+4>>2],ur(d,n,e,r,Og(l,o)|0,o),h=s}function Eu(){var e=0,n=0;if(c[7696]|0||(A1(9484),Bt(33,9484,Q|0)|0,n=7696,t[n>>2]=1,t[n+4>>2]=0),!(Dn(9484)|0)){e=9484,n=e+36|0;do t[e>>2]=0,e=e+4|0;while((e|0)<(n|0));A1(9484)}return 9484}function Ag(e){return e=e|0,0}function Og(e,n){e=e|0,n=n|0;var r=0,o=0,s=0,l=0,d=0,_=0,y=0,k=0,T=0,P=0;return T=h,h=h+32|0,s=T+24|0,d=T+16|0,_=T,y=T+8|0,l=t[e>>2]|0,o=t[e+4>>2]|0,t[_>>2]=l,t[_+4>>2]=o,P=Eu()|0,k=P+24|0,e=Lt(n,4)|0,t[y>>2]=e,n=P+28|0,r=t[n>>2]|0,r>>>0<(t[P+32>>2]|0)>>>0?(t[d>>2]=l,t[d+4>>2]=o,t[s>>2]=t[d>>2],t[s+4>>2]=t[d+4>>2],Cp(r,s,e),e=(t[n>>2]|0)+12|0,t[n>>2]=e):(Ig(k,_,y),e=t[n>>2]|0),h=T,((e-(t[k>>2]|0)|0)/12|0)+-1|0}function Cp(e,n,r){e=e|0,n=n|0,r=r|0;var o=0;o=t[n+4>>2]|0,t[e>>2]=t[n>>2],t[e+4>>2]=o,t[e+8>>2]=r}function Ig(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0,_=0,y=0,k=0,T=0,P=0,q=0;if(k=h,h=h+48|0,o=k+32|0,d=k+24|0,_=k,y=e+4|0,s=(((t[y>>2]|0)-(t[e>>2]|0)|0)/12|0)+1|0,l=Pg(e)|0,l>>>0>>0)$n(e);else{T=t[e>>2]|0,q=((t[e+8>>2]|0)-T|0)/12|0,P=q<<1,k1(_,q>>>0>>1>>>0?P>>>0>>0?s:P:l,((t[y>>2]|0)-T|0)/12|0,e+8|0),y=_+8|0,l=t[y>>2]|0,s=t[n+4>>2]|0,r=t[r>>2]|0,t[d>>2]=t[n>>2],t[d+4>>2]=s,t[o>>2]=t[d>>2],t[o+4>>2]=t[d+4>>2],Cp(l,o,r),t[y>>2]=(t[y>>2]|0)+12,Mg(e,_),rs(_),h=k;return}}function Pg(e){return e=e|0,357913941}function k1(e,n,r,o){e=e|0,n=n|0,r=r|0,o=o|0;var s=0;t[e+12>>2]=0,t[e+16>>2]=o;do if(n)if(n>>>0>357913941)_n();else{s=Tt(n*12|0)|0;break}else s=0;while(0);t[e>>2]=s,o=s+(r*12|0)|0,t[e+8>>2]=o,t[e+4>>2]=o,t[e+12>>2]=s+(n*12|0)}function Mg(e,n){e=e|0,n=n|0;var r=0,o=0,s=0,l=0,d=0;o=t[e>>2]|0,d=e+4|0,l=n+4|0,s=(t[d>>2]|0)-o|0,r=(t[l>>2]|0)+(((s|0)/-12|0)*12|0)|0,t[l>>2]=r,(s|0)>0?(vn(r|0,o|0,s|0)|0,o=l,r=t[l>>2]|0):o=l,l=t[e>>2]|0,t[e>>2]=r,t[o>>2]=l,l=n+8|0,s=t[d>>2]|0,t[d>>2]=t[l>>2],t[l>>2]=s,l=e+8|0,d=n+12|0,e=t[l>>2]|0,t[l>>2]=t[d>>2],t[d>>2]=e,t[n>>2]=t[o>>2]}function rs(e){e=e|0;var n=0,r=0,o=0;n=t[e+4>>2]|0,r=e+8|0,o=t[r>>2]|0,(o|0)!=(n|0)&&(t[r>>2]=o+(~(((o+-12-n|0)>>>0)/12|0)*12|0)),e=t[e>>2]|0,e|0&&Ve(e)}function A1(e){e=e|0,n0(e)}function na(e){e=e|0,Jr(e+24|0)}function Jr(e){e=e|0;var n=0,r=0,o=0;r=t[e>>2]|0,o=r,r|0&&(e=e+4|0,n=t[e>>2]|0,(n|0)!=(r|0)&&(t[e>>2]=n+(~(((n+-12-o|0)>>>0)/12|0)*12|0)),Ve(r))}function n0(e){e=e|0;var n=0;n=An()|0,Nn(e,2,1,n,Tp()|0,2),t[e+24>>2]=0,t[e+28>>2]=0,t[e+32>>2]=0}function Tp(){return 1212}function Fg(e,n,r,o){e=e|0,n=n|0,r=r|0,o=o|0;var s=0,l=0,d=0,_=0;s=h,h=h+16|0,l=s+8|0,d=s,_=Lg(e)|0,e=t[_+4>>2]|0,t[d>>2]=t[_>>2],t[d+4>>2]=e,t[l>>2]=t[d>>2],t[l+4>>2]=t[d+4>>2],Rg(n,l,r,o),h=s}function Lg(e){return e=e|0,(t[(Eu()|0)+24>>2]|0)+(e*12|0)|0}function Rg(e,n,r,o){e=e|0,n=n|0,r=r|0,o=o|0;var s=0,l=0,d=0,_=0;_=h,h=h+16|0,l=_+1|0,d=_,s=t[n>>2]|0,n=t[n+4>>2]|0,e=e+(n>>1)|0,n&1&&(s=t[(t[e>>2]|0)+s>>2]|0),On(l,r),l=x1(l,r)|0,Ml(d,o),d=Fl(d,o)|0,X1[s&15](e,l,d),h=_}function Ng(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0,_=0;o=h,h=h+16|0,s=o+8|0,l=o,_=t[r>>2]|0,d=t[r+4>>2]|0,r=Zn(n)|0,t[l>>2]=_,t[l+4>>2]=d,t[s>>2]=t[l>>2],t[s+4>>2]=t[l+4>>2],Bg(e,r,s,1),h=o}function Bg(e,n,r,o){e=e|0,n=n|0,r=r|0,o=o|0;var s=0,l=0,d=0,_=0,y=0,k=0,T=0;s=h,h=h+32|0,l=s+16|0,T=s+8|0,_=s,k=t[r>>2]|0,y=t[r+4>>2]|0,d=t[e>>2]|0,e=O1()|0,t[T>>2]=k,t[T+4>>2]=y,t[l>>2]=t[T>>2],t[l+4>>2]=t[T+4>>2],r=xp(l)|0,t[_>>2]=k,t[_+4>>2]=y,t[l>>2]=t[_>>2],t[l+4>>2]=t[_+4>>2],ur(d,n,e,r,ic(l,o)|0,o),h=s}function O1(){var e=0,n=0;if(c[7704]|0||(Ap(9520),Bt(34,9520,Q|0)|0,n=7704,t[n>>2]=1,t[n+4>>2]=0),!(Dn(9520)|0)){e=9520,n=e+36|0;do t[e>>2]=0,e=e+4|0;while((e|0)<(n|0));Ap(9520)}return 9520}function xp(e){return e=e|0,0}function ic(e,n){e=e|0,n=n|0;var r=0,o=0,s=0,l=0,d=0,_=0,y=0,k=0,T=0,P=0;return T=h,h=h+32|0,s=T+24|0,d=T+16|0,_=T,y=T+8|0,l=t[e>>2]|0,o=t[e+4>>2]|0,t[_>>2]=l,t[_+4>>2]=o,P=O1()|0,k=P+24|0,e=Lt(n,4)|0,t[y>>2]=e,n=P+28|0,r=t[n>>2]|0,r>>>0<(t[P+32>>2]|0)>>>0?(t[d>>2]=l,t[d+4>>2]=o,t[s>>2]=t[d>>2],t[s+4>>2]=t[d+4>>2],ra(r,s,e),e=(t[n>>2]|0)+12|0,t[n>>2]=e):(jg(k,_,y),e=t[n>>2]|0),h=T,((e-(t[k>>2]|0)|0)/12|0)+-1|0}function ra(e,n,r){e=e|0,n=n|0,r=r|0;var o=0;o=t[n+4>>2]|0,t[e>>2]=t[n>>2],t[e+4>>2]=o,t[e+8>>2]=r}function jg(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0,_=0,y=0,k=0,T=0,P=0,q=0;if(k=h,h=h+48|0,o=k+32|0,d=k+24|0,_=k,y=e+4|0,s=(((t[y>>2]|0)-(t[e>>2]|0)|0)/12|0)+1|0,l=kp(e)|0,l>>>0>>0)$n(e);else{T=t[e>>2]|0,q=((t[e+8>>2]|0)-T|0)/12|0,P=q<<1,ia(_,q>>>0>>1>>>0?P>>>0>>0?s:P:l,((t[y>>2]|0)-T|0)/12|0,e+8|0),y=_+8|0,l=t[y>>2]|0,s=t[n+4>>2]|0,r=t[r>>2]|0,t[d>>2]=t[n>>2],t[d+4>>2]=s,t[o>>2]=t[d>>2],t[o+4>>2]=t[d+4>>2],ra(l,o,r),t[y>>2]=(t[y>>2]|0)+12,mo(e,_),Df(_),h=k;return}}function kp(e){return e=e|0,357913941}function ia(e,n,r,o){e=e|0,n=n|0,r=r|0,o=o|0;var s=0;t[e+12>>2]=0,t[e+16>>2]=o;do if(n)if(n>>>0>357913941)_n();else{s=Tt(n*12|0)|0;break}else s=0;while(0);t[e>>2]=s,o=s+(r*12|0)|0,t[e+8>>2]=o,t[e+4>>2]=o,t[e+12>>2]=s+(n*12|0)}function mo(e,n){e=e|0,n=n|0;var r=0,o=0,s=0,l=0,d=0;o=t[e>>2]|0,d=e+4|0,l=n+4|0,s=(t[d>>2]|0)-o|0,r=(t[l>>2]|0)+(((s|0)/-12|0)*12|0)|0,t[l>>2]=r,(s|0)>0?(vn(r|0,o|0,s|0)|0,o=l,r=t[l>>2]|0):o=l,l=t[e>>2]|0,t[e>>2]=r,t[o>>2]=l,l=n+8|0,s=t[d>>2]|0,t[d>>2]=t[l>>2],t[l>>2]=s,l=e+8|0,d=n+12|0,e=t[l>>2]|0,t[l>>2]=t[d>>2],t[d>>2]=e,t[n>>2]=t[o>>2]}function Df(e){e=e|0;var n=0,r=0,o=0;n=t[e+4>>2]|0,r=e+8|0,o=t[r>>2]|0,(o|0)!=(n|0)&&(t[r>>2]=o+(~(((o+-12-n|0)>>>0)/12|0)*12|0)),e=t[e>>2]|0,e|0&&Ve(e)}function Ap(e){e=e|0,zg(e)}function Ug(e){e=e|0,qg(e+24|0)}function qg(e){e=e|0;var n=0,r=0,o=0;r=t[e>>2]|0,o=r,r|0&&(e=e+4|0,n=t[e>>2]|0,(n|0)!=(r|0)&&(t[e>>2]=n+(~(((n+-12-o|0)>>>0)/12|0)*12|0)),Ve(r))}function zg(e){e=e|0;var n=0;n=An()|0,Nn(e,2,1,n,Wg()|0,1),t[e+24>>2]=0,t[e+28>>2]=0,t[e+32>>2]=0}function Wg(){return 1224}function Op(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0,_=0;return s=h,h=h+16|0,l=s+8|0,d=s,_=is(e)|0,e=t[_+4>>2]|0,t[d>>2]=t[_>>2],t[d+4>>2]=e,t[l>>2]=t[d>>2],t[l+4>>2]=t[d+4>>2],o=+jn(n,l,r),h=s,+o}function is(e){return e=e|0,(t[(O1()|0)+24>>2]|0)+(e*12|0)|0}function jn(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0;return l=h,h=h+16|0,s=l,o=t[n>>2]|0,n=t[n+4>>2]|0,e=e+(n>>1)|0,n&1&&(o=t[(t[e>>2]|0)+o>>2]|0),ts(s,r),s=ns(s,r)|0,d=+Ol(+uD[o&7](e,s)),h=l,+d}function Ip(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0,_=0;o=h,h=h+16|0,s=o+8|0,l=o,_=t[r>>2]|0,d=t[r+4>>2]|0,r=Zn(n)|0,t[l>>2]=_,t[l+4>>2]=d,t[s>>2]=t[l>>2],t[s+4>>2]=t[l+4>>2],Fo(e,r,s,1),h=o}function Fo(e,n,r,o){e=e|0,n=n|0,r=r|0,o=o|0;var s=0,l=0,d=0,_=0,y=0,k=0,T=0;s=h,h=h+32|0,l=s+16|0,T=s+8|0,_=s,k=t[r>>2]|0,y=t[r+4>>2]|0,d=t[e>>2]|0,e=oa()|0,t[T>>2]=k,t[T+4>>2]=y,t[l>>2]=t[T>>2],t[l+4>>2]=t[T+4>>2],r=Hg(l)|0,t[_>>2]=k,t[_+4>>2]=y,t[l>>2]=t[_>>2],t[l+4>>2]=t[_+4>>2],ur(d,n,e,r,yr(l,o)|0,o),h=s}function oa(){var e=0,n=0;if(c[7712]|0||(Fp(9556),Bt(35,9556,Q|0)|0,n=7712,t[n>>2]=1,t[n+4>>2]=0),!(Dn(9556)|0)){e=9556,n=e+36|0;do t[e>>2]=0,e=e+4|0;while((e|0)<(n|0));Fp(9556)}return 9556}function Hg(e){return e=e|0,0}function yr(e,n){e=e|0,n=n|0;var r=0,o=0,s=0,l=0,d=0,_=0,y=0,k=0,T=0,P=0;return T=h,h=h+32|0,s=T+24|0,d=T+16|0,_=T,y=T+8|0,l=t[e>>2]|0,o=t[e+4>>2]|0,t[_>>2]=l,t[_+4>>2]=o,P=oa()|0,k=P+24|0,e=Lt(n,4)|0,t[y>>2]=e,n=P+28|0,r=t[n>>2]|0,r>>>0<(t[P+32>>2]|0)>>>0?(t[d>>2]=l,t[d+4>>2]=o,t[s>>2]=t[d>>2],t[s+4>>2]=t[d+4>>2],Pp(r,s,e),e=(t[n>>2]|0)+12|0,t[n>>2]=e):(Mp(k,_,y),e=t[n>>2]|0),h=T,((e-(t[k>>2]|0)|0)/12|0)+-1|0}function Pp(e,n,r){e=e|0,n=n|0,r=r|0;var o=0;o=t[n+4>>2]|0,t[e>>2]=t[n>>2],t[e+4>>2]=o,t[e+8>>2]=r}function Mp(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0,_=0,y=0,k=0,T=0,P=0,q=0;if(k=h,h=h+48|0,o=k+32|0,d=k+24|0,_=k,y=e+4|0,s=(((t[y>>2]|0)-(t[e>>2]|0)|0)/12|0)+1|0,l=ua(e)|0,l>>>0>>0)$n(e);else{T=t[e>>2]|0,q=((t[e+8>>2]|0)-T|0)/12|0,P=q<<1,bg(_,q>>>0>>1>>>0?P>>>0>>0?s:P:l,((t[y>>2]|0)-T|0)/12|0,e+8|0),y=_+8|0,l=t[y>>2]|0,s=t[n+4>>2]|0,r=t[r>>2]|0,t[d>>2]=t[n>>2],t[d+4>>2]=s,t[o>>2]=t[d>>2],t[o+4>>2]=t[d+4>>2],Pp(l,o,r),t[y>>2]=(t[y>>2]|0)+12,Gg(e,_),Vg(_),h=k;return}}function ua(e){return e=e|0,357913941}function bg(e,n,r,o){e=e|0,n=n|0,r=r|0,o=o|0;var s=0;t[e+12>>2]=0,t[e+16>>2]=o;do if(n)if(n>>>0>357913941)_n();else{s=Tt(n*12|0)|0;break}else s=0;while(0);t[e>>2]=s,o=s+(r*12|0)|0,t[e+8>>2]=o,t[e+4>>2]=o,t[e+12>>2]=s+(n*12|0)}function Gg(e,n){e=e|0,n=n|0;var r=0,o=0,s=0,l=0,d=0;o=t[e>>2]|0,d=e+4|0,l=n+4|0,s=(t[d>>2]|0)-o|0,r=(t[l>>2]|0)+(((s|0)/-12|0)*12|0)|0,t[l>>2]=r,(s|0)>0?(vn(r|0,o|0,s|0)|0,o=l,r=t[l>>2]|0):o=l,l=t[e>>2]|0,t[e>>2]=r,t[o>>2]=l,l=n+8|0,s=t[d>>2]|0,t[d>>2]=t[l>>2],t[l>>2]=s,l=e+8|0,d=n+12|0,e=t[l>>2]|0,t[l>>2]=t[d>>2],t[d>>2]=e,t[n>>2]=t[o>>2]}function Vg(e){e=e|0;var n=0,r=0,o=0;n=t[e+4>>2]|0,r=e+8|0,o=t[r>>2]|0,(o|0)!=(n|0)&&(t[r>>2]=o+(~(((o+-12-n|0)>>>0)/12|0)*12|0)),e=t[e>>2]|0,e|0&&Ve(e)}function Fp(e){e=e|0,Kg(e)}function Yg(e){e=e|0,$g(e+24|0)}function $g(e){e=e|0;var n=0,r=0,o=0;r=t[e>>2]|0,o=r,r|0&&(e=e+4|0,n=t[e>>2]|0,(n|0)!=(r|0)&&(t[e>>2]=n+(~(((n+-12-o|0)>>>0)/12|0)*12|0)),Ve(r))}function Kg(e){e=e|0;var n=0;n=An()|0,Nn(e,2,5,n,Xg()|0,0),t[e+24>>2]=0,t[e+28>>2]=0,t[e+32>>2]=0}function Xg(){return 1232}function Jg(e,n){e=e|0,n=n|0;var r=0,o=0,s=0,l=0,d=0;return o=h,h=h+16|0,s=o+8|0,l=o,d=Qg(e)|0,e=t[d+4>>2]|0,t[l>>2]=t[d>>2],t[l+4>>2]=e,t[s>>2]=t[l>>2],t[s+4>>2]=t[l+4>>2],r=+Zg(n,s),h=o,+r}function Qg(e){return e=e|0,(t[(oa()|0)+24>>2]|0)+(e*12|0)|0}function Zg(e,n){e=e|0,n=n|0;var r=0;return r=t[n>>2]|0,n=t[n+4>>2]|0,e=e+(n>>1)|0,n&1&&(r=t[(t[e>>2]|0)+r>>2]|0),+ +Ol(+oD[r&15](e))}function e_(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0,_=0;o=h,h=h+16|0,s=o+8|0,l=o,_=t[r>>2]|0,d=t[r+4>>2]|0,r=Zn(n)|0,t[l>>2]=_,t[l+4>>2]=d,t[s>>2]=t[l>>2],t[s+4>>2]=t[l+4>>2],t_(e,r,s,1),h=o}function t_(e,n,r,o){e=e|0,n=n|0,r=r|0,o=o|0;var s=0,l=0,d=0,_=0,y=0,k=0,T=0;s=h,h=h+32|0,l=s+16|0,T=s+8|0,_=s,k=t[r>>2]|0,y=t[r+4>>2]|0,d=t[e>>2]|0,e=oc()|0,t[T>>2]=k,t[T+4>>2]=y,t[l>>2]=t[T>>2],t[l+4>>2]=t[T+4>>2],r=n_(l)|0,t[_>>2]=k,t[_+4>>2]=y,t[l>>2]=t[_>>2],t[l+4>>2]=t[_+4>>2],ur(d,n,e,r,I1(l,o)|0,o),h=s}function oc(){var e=0,n=0;if(c[7720]|0||(Rp(9592),Bt(36,9592,Q|0)|0,n=7720,t[n>>2]=1,t[n+4>>2]=0),!(Dn(9592)|0)){e=9592,n=e+36|0;do t[e>>2]=0,e=e+4|0;while((e|0)<(n|0));Rp(9592)}return 9592}function n_(e){return e=e|0,0}function I1(e,n){e=e|0,n=n|0;var r=0,o=0,s=0,l=0,d=0,_=0,y=0,k=0,T=0,P=0;return T=h,h=h+32|0,s=T+24|0,d=T+16|0,_=T,y=T+8|0,l=t[e>>2]|0,o=t[e+4>>2]|0,t[_>>2]=l,t[_+4>>2]=o,P=oc()|0,k=P+24|0,e=Lt(n,4)|0,t[y>>2]=e,n=P+28|0,r=t[n>>2]|0,r>>>0<(t[P+32>>2]|0)>>>0?(t[d>>2]=l,t[d+4>>2]=o,t[s>>2]=t[d>>2],t[s+4>>2]=t[d+4>>2],Lp(r,s,e),e=(t[n>>2]|0)+12|0,t[n>>2]=e):(r_(k,_,y),e=t[n>>2]|0),h=T,((e-(t[k>>2]|0)|0)/12|0)+-1|0}function Lp(e,n,r){e=e|0,n=n|0,r=r|0;var o=0;o=t[n+4>>2]|0,t[e>>2]=t[n>>2],t[e+4>>2]=o,t[e+8>>2]=r}function r_(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0,_=0,y=0,k=0,T=0,P=0,q=0;if(k=h,h=h+48|0,o=k+32|0,d=k+24|0,_=k,y=e+4|0,s=(((t[y>>2]|0)-(t[e>>2]|0)|0)/12|0)+1|0,l=i_(e)|0,l>>>0>>0)$n(e);else{T=t[e>>2]|0,q=((t[e+8>>2]|0)-T|0)/12|0,P=q<<1,q0(_,q>>>0>>1>>>0?P>>>0>>0?s:P:l,((t[y>>2]|0)-T|0)/12|0,e+8|0),y=_+8|0,l=t[y>>2]|0,s=t[n+4>>2]|0,r=t[r>>2]|0,t[d>>2]=t[n>>2],t[d+4>>2]=s,t[o>>2]=t[d>>2],t[o+4>>2]=t[d+4>>2],Lp(l,o,r),t[y>>2]=(t[y>>2]|0)+12,Yi(e,_),o_(_),h=k;return}}function i_(e){return e=e|0,357913941}function q0(e,n,r,o){e=e|0,n=n|0,r=r|0,o=o|0;var s=0;t[e+12>>2]=0,t[e+16>>2]=o;do if(n)if(n>>>0>357913941)_n();else{s=Tt(n*12|0)|0;break}else s=0;while(0);t[e>>2]=s,o=s+(r*12|0)|0,t[e+8>>2]=o,t[e+4>>2]=o,t[e+12>>2]=s+(n*12|0)}function Yi(e,n){e=e|0,n=n|0;var r=0,o=0,s=0,l=0,d=0;o=t[e>>2]|0,d=e+4|0,l=n+4|0,s=(t[d>>2]|0)-o|0,r=(t[l>>2]|0)+(((s|0)/-12|0)*12|0)|0,t[l>>2]=r,(s|0)>0?(vn(r|0,o|0,s|0)|0,o=l,r=t[l>>2]|0):o=l,l=t[e>>2]|0,t[e>>2]=r,t[o>>2]=l,l=n+8|0,s=t[d>>2]|0,t[d>>2]=t[l>>2],t[l>>2]=s,l=e+8|0,d=n+12|0,e=t[l>>2]|0,t[l>>2]=t[d>>2],t[d>>2]=e,t[n>>2]=t[o>>2]}function o_(e){e=e|0;var n=0,r=0,o=0;n=t[e+4>>2]|0,r=e+8|0,o=t[r>>2]|0,(o|0)!=(n|0)&&(t[r>>2]=o+(~(((o+-12-n|0)>>>0)/12|0)*12|0)),e=t[e>>2]|0,e|0&&Ve(e)}function Rp(e){e=e|0,s_(e)}function u_(e){e=e|0,Np(e+24|0)}function Np(e){e=e|0;var n=0,r=0,o=0;r=t[e>>2]|0,o=r,r|0&&(e=e+4|0,n=t[e>>2]|0,(n|0)!=(r|0)&&(t[e>>2]=n+(~(((n+-12-o|0)>>>0)/12|0)*12|0)),Ve(r))}function s_(e){e=e|0;var n=0;n=An()|0,Nn(e,2,7,n,l_()|0,0),t[e+24>>2]=0,t[e+28>>2]=0,t[e+32>>2]=0}function l_(){return 1276}function f_(e,n){e=e|0,n=n|0;var r=0,o=0,s=0,l=0;return r=h,h=h+16|0,o=r+8|0,s=r,l=Bp(e)|0,e=t[l+4>>2]|0,t[s>>2]=t[l>>2],t[s+4>>2]=e,t[o>>2]=t[s>>2],t[o+4>>2]=t[s+4>>2],n=c_(n,o)|0,h=r,n|0}function Bp(e){return e=e|0,(t[(oc()|0)+24>>2]|0)+(e*12|0)|0}function c_(e,n){e=e|0,n=n|0;var r=0,o=0,s=0;return s=h,h=h+16|0,o=s,r=t[n>>2]|0,n=t[n+4>>2]|0,e=e+(n>>1)|0,n&1&&(r=t[(t[e>>2]|0)+r>>2]|0),Bl[r&31](o,e),o=jp(o)|0,h=s,o|0}function jp(e){e=e|0;var n=0,r=0,o=0,s=0;return s=h,h=h+32|0,n=s+12|0,r=s,o=U0(Up()|0)|0,o?(s1(n,o),l1(r,n),qp(e,r),e=f1(n)|0):e=zp(e)|0,h=s,e|0}function Up(){var e=0;return c[7736]|0||(Wp(9640),Bt(25,9640,Q|0)|0,e=7736,t[e>>2]=1,t[e+4>>2]=0),9640}function qp(e,n){e=e|0,n=n|0,Ef(n,e,e+8|0)|0}function zp(e){e=e|0;var n=0,r=0,o=0,s=0,l=0,d=0,_=0;return r=h,h=h+16|0,s=r+4|0,d=r,o=Qo(8)|0,n=o,_=Tt(16)|0,t[_>>2]=t[e>>2],t[_+4>>2]=t[e+4>>2],t[_+8>>2]=t[e+8>>2],t[_+12>>2]=t[e+12>>2],l=n+4|0,t[l>>2]=_,e=Tt(8)|0,l=t[l>>2]|0,t[d>>2]=0,t[s>>2]=t[d>>2],P1(e,l,s),t[o>>2]=e,h=r,n|0}function P1(e,n,r){e=e|0,n=n|0,r=r|0,t[e>>2]=n,r=Tt(16)|0,t[r+4>>2]=0,t[r+8>>2]=0,t[r>>2]=1244,t[r+12>>2]=n,t[e+4>>2]=r}function a_(e){e=e|0,da(e),Ve(e)}function d_(e){e=e|0,e=t[e+12>>2]|0,e|0&&Ve(e)}function p_(e){e=e|0,Ve(e)}function Ef(e,n,r){return e=e|0,n=n|0,r=r|0,n=h_(t[e>>2]|0,n,r)|0,r=e+4|0,t[(t[r>>2]|0)+8>>2]=n,t[(t[r>>2]|0)+8>>2]|0}function h_(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0;return o=h,h=h+16|0,s=o,Zo(s),e=Oi(e)|0,r=m_(e,t[n>>2]|0,+L[r>>3])|0,eu(s),h=o,r|0}function m_(e,n,r){e=e|0,n=n|0,r=+r;var o=0;return o=ko(v_()|0)|0,n=jc(n)|0,dl(0,o|0,e|0,n|0,+ +Ko(r))|0}function v_(){var e=0;return c[7728]|0||(g_(9628),e=7728,t[e>>2]=1,t[e+4>>2]=0),9628}function g_(e){e=e|0,Ao(e,__()|0,2)}function __(){return 1264}function Wp(e){e=e|0,Ys(e)}function Hp(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0,_=0;o=h,h=h+16|0,s=o+8|0,l=o,_=t[r>>2]|0,d=t[r+4>>2]|0,r=Zn(n)|0,t[l>>2]=_,t[l+4>>2]=d,t[s>>2]=t[l>>2],t[s+4>>2]=t[l+4>>2],y_(e,r,s,1),h=o}function y_(e,n,r,o){e=e|0,n=n|0,r=r|0,o=o|0;var s=0,l=0,d=0,_=0,y=0,k=0,T=0;s=h,h=h+32|0,l=s+16|0,T=s+8|0,_=s,k=t[r>>2]|0,y=t[r+4>>2]|0,d=t[e>>2]|0,e=M1()|0,t[T>>2]=k,t[T+4>>2]=y,t[l>>2]=t[T>>2],t[l+4>>2]=t[T+4>>2],r=w_(l)|0,t[_>>2]=k,t[_+4>>2]=y,t[l>>2]=t[_>>2],t[l+4>>2]=t[_+4>>2],ur(d,n,e,r,D_(l,o)|0,o),h=s}function M1(){var e=0,n=0;if(c[7744]|0||(Gp(9684),Bt(37,9684,Q|0)|0,n=7744,t[n>>2]=1,t[n+4>>2]=0),!(Dn(9684)|0)){e=9684,n=e+36|0;do t[e>>2]=0,e=e+4|0;while((e|0)<(n|0));Gp(9684)}return 9684}function w_(e){return e=e|0,0}function D_(e,n){e=e|0,n=n|0;var r=0,o=0,s=0,l=0,d=0,_=0,y=0,k=0,T=0,P=0;return T=h,h=h+32|0,s=T+24|0,d=T+16|0,_=T,y=T+8|0,l=t[e>>2]|0,o=t[e+4>>2]|0,t[_>>2]=l,t[_+4>>2]=o,P=M1()|0,k=P+24|0,e=Lt(n,4)|0,t[y>>2]=e,n=P+28|0,r=t[n>>2]|0,r>>>0<(t[P+32>>2]|0)>>>0?(t[d>>2]=l,t[d+4>>2]=o,t[s>>2]=t[d>>2],t[s+4>>2]=t[d+4>>2],bp(r,s,e),e=(t[n>>2]|0)+12|0,t[n>>2]=e):(E_(k,_,y),e=t[n>>2]|0),h=T,((e-(t[k>>2]|0)|0)/12|0)+-1|0}function bp(e,n,r){e=e|0,n=n|0,r=r|0;var o=0;o=t[n+4>>2]|0,t[e>>2]=t[n>>2],t[e+4>>2]=o,t[e+8>>2]=r}function E_(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0,_=0,y=0,k=0,T=0,P=0,q=0;if(k=h,h=h+48|0,o=k+32|0,d=k+24|0,_=k,y=e+4|0,s=(((t[y>>2]|0)-(t[e>>2]|0)|0)/12|0)+1|0,l=S_(e)|0,l>>>0>>0)$n(e);else{T=t[e>>2]|0,q=((t[e+8>>2]|0)-T|0)/12|0,P=q<<1,C_(_,q>>>0>>1>>>0?P>>>0>>0?s:P:l,((t[y>>2]|0)-T|0)/12|0,e+8|0),y=_+8|0,l=t[y>>2]|0,s=t[n+4>>2]|0,r=t[r>>2]|0,t[d>>2]=t[n>>2],t[d+4>>2]=s,t[o>>2]=t[d>>2],t[o+4>>2]=t[d+4>>2],bp(l,o,r),t[y>>2]=(t[y>>2]|0)+12,T_(e,_),x_(_),h=k;return}}function S_(e){return e=e|0,357913941}function C_(e,n,r,o){e=e|0,n=n|0,r=r|0,o=o|0;var s=0;t[e+12>>2]=0,t[e+16>>2]=o;do if(n)if(n>>>0>357913941)_n();else{s=Tt(n*12|0)|0;break}else s=0;while(0);t[e>>2]=s,o=s+(r*12|0)|0,t[e+8>>2]=o,t[e+4>>2]=o,t[e+12>>2]=s+(n*12|0)}function T_(e,n){e=e|0,n=n|0;var r=0,o=0,s=0,l=0,d=0;o=t[e>>2]|0,d=e+4|0,l=n+4|0,s=(t[d>>2]|0)-o|0,r=(t[l>>2]|0)+(((s|0)/-12|0)*12|0)|0,t[l>>2]=r,(s|0)>0?(vn(r|0,o|0,s|0)|0,o=l,r=t[l>>2]|0):o=l,l=t[e>>2]|0,t[e>>2]=r,t[o>>2]=l,l=n+8|0,s=t[d>>2]|0,t[d>>2]=t[l>>2],t[l>>2]=s,l=e+8|0,d=n+12|0,e=t[l>>2]|0,t[l>>2]=t[d>>2],t[d>>2]=e,t[n>>2]=t[o>>2]}function x_(e){e=e|0;var n=0,r=0,o=0;n=t[e+4>>2]|0,r=e+8|0,o=t[r>>2]|0,(o|0)!=(n|0)&&(t[r>>2]=o+(~(((o+-12-n|0)>>>0)/12|0)*12|0)),e=t[e>>2]|0,e|0&&Ve(e)}function Gp(e){e=e|0,O_(e)}function k_(e){e=e|0,A_(e+24|0)}function A_(e){e=e|0;var n=0,r=0,o=0;r=t[e>>2]|0,o=r,r|0&&(e=e+4|0,n=t[e>>2]|0,(n|0)!=(r|0)&&(t[e>>2]=n+(~(((n+-12-o|0)>>>0)/12|0)*12|0)),Ve(r))}function O_(e){e=e|0;var n=0;n=An()|0,Nn(e,2,5,n,I_()|0,1),t[e+24>>2]=0,t[e+28>>2]=0,t[e+32>>2]=0}function I_(){return 1280}function P_(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0;return o=h,h=h+16|0,s=o+8|0,l=o,d=M_(e)|0,e=t[d+4>>2]|0,t[l>>2]=t[d>>2],t[l+4>>2]=e,t[s>>2]=t[l>>2],t[s+4>>2]=t[l+4>>2],r=F_(n,s,r)|0,h=o,r|0}function M_(e){return e=e|0,(t[(M1()|0)+24>>2]|0)+(e*12|0)|0}function F_(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0;return d=h,h=h+32|0,s=d,l=d+16|0,o=t[n>>2]|0,n=t[n+4>>2]|0,e=e+(n>>1)|0,n&1&&(o=t[(t[e>>2]|0)+o>>2]|0),ts(l,r),l=ns(l,r)|0,X1[o&15](s,e,l),l=jp(s)|0,h=d,l|0}function L_(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0,_=0;o=h,h=h+16|0,s=o+8|0,l=o,_=t[r>>2]|0,d=t[r+4>>2]|0,r=Zn(n)|0,t[l>>2]=_,t[l+4>>2]=d,t[s>>2]=t[l>>2],t[s+4>>2]=t[l+4>>2],R_(e,r,s,1),h=o}function R_(e,n,r,o){e=e|0,n=n|0,r=r|0,o=o|0;var s=0,l=0,d=0,_=0,y=0,k=0,T=0;s=h,h=h+32|0,l=s+16|0,T=s+8|0,_=s,k=t[r>>2]|0,y=t[r+4>>2]|0,d=t[e>>2]|0,e=F1()|0,t[T>>2]=k,t[T+4>>2]=y,t[l>>2]=t[T>>2],t[l+4>>2]=t[T+4>>2],r=N_(l)|0,t[_>>2]=k,t[_+4>>2]=y,t[l>>2]=t[_>>2],t[l+4>>2]=t[_+4>>2],ur(d,n,e,r,B_(l,o)|0,o),h=s}function F1(){var e=0,n=0;if(c[7752]|0||(Kp(9720),Bt(38,9720,Q|0)|0,n=7752,t[n>>2]=1,t[n+4>>2]=0),!(Dn(9720)|0)){e=9720,n=e+36|0;do t[e>>2]=0,e=e+4|0;while((e|0)<(n|0));Kp(9720)}return 9720}function N_(e){return e=e|0,0}function B_(e,n){e=e|0,n=n|0;var r=0,o=0,s=0,l=0,d=0,_=0,y=0,k=0,T=0,P=0;return T=h,h=h+32|0,s=T+24|0,d=T+16|0,_=T,y=T+8|0,l=t[e>>2]|0,o=t[e+4>>2]|0,t[_>>2]=l,t[_+4>>2]=o,P=F1()|0,k=P+24|0,e=Lt(n,4)|0,t[y>>2]=e,n=P+28|0,r=t[n>>2]|0,r>>>0<(t[P+32>>2]|0)>>>0?(t[d>>2]=l,t[d+4>>2]=o,t[s>>2]=t[d>>2],t[s+4>>2]=t[d+4>>2],Vp(r,s,e),e=(t[n>>2]|0)+12|0,t[n>>2]=e):(j_(k,_,y),e=t[n>>2]|0),h=T,((e-(t[k>>2]|0)|0)/12|0)+-1|0}function Vp(e,n,r){e=e|0,n=n|0,r=r|0;var o=0;o=t[n+4>>2]|0,t[e>>2]=t[n>>2],t[e+4>>2]=o,t[e+8>>2]=r}function j_(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0,_=0,y=0,k=0,T=0,P=0,q=0;if(k=h,h=h+48|0,o=k+32|0,d=k+24|0,_=k,y=e+4|0,s=(((t[y>>2]|0)-(t[e>>2]|0)|0)/12|0)+1|0,l=L1(e)|0,l>>>0>>0)$n(e);else{T=t[e>>2]|0,q=((t[e+8>>2]|0)-T|0)/12|0,P=q<<1,Yp(_,q>>>0>>1>>>0?P>>>0>>0?s:P:l,((t[y>>2]|0)-T|0)/12|0,e+8|0),y=_+8|0,l=t[y>>2]|0,s=t[n+4>>2]|0,r=t[r>>2]|0,t[d>>2]=t[n>>2],t[d+4>>2]=s,t[o>>2]=t[d>>2],t[o+4>>2]=t[d+4>>2],Vp(l,o,r),t[y>>2]=(t[y>>2]|0)+12,$p(e,_),U_(_),h=k;return}}function L1(e){return e=e|0,357913941}function Yp(e,n,r,o){e=e|0,n=n|0,r=r|0,o=o|0;var s=0;t[e+12>>2]=0,t[e+16>>2]=o;do if(n)if(n>>>0>357913941)_n();else{s=Tt(n*12|0)|0;break}else s=0;while(0);t[e>>2]=s,o=s+(r*12|0)|0,t[e+8>>2]=o,t[e+4>>2]=o,t[e+12>>2]=s+(n*12|0)}function $p(e,n){e=e|0,n=n|0;var r=0,o=0,s=0,l=0,d=0;o=t[e>>2]|0,d=e+4|0,l=n+4|0,s=(t[d>>2]|0)-o|0,r=(t[l>>2]|0)+(((s|0)/-12|0)*12|0)|0,t[l>>2]=r,(s|0)>0?(vn(r|0,o|0,s|0)|0,o=l,r=t[l>>2]|0):o=l,l=t[e>>2]|0,t[e>>2]=r,t[o>>2]=l,l=n+8|0,s=t[d>>2]|0,t[d>>2]=t[l>>2],t[l>>2]=s,l=e+8|0,d=n+12|0,e=t[l>>2]|0,t[l>>2]=t[d>>2],t[d>>2]=e,t[n>>2]=t[o>>2]}function U_(e){e=e|0;var n=0,r=0,o=0;n=t[e+4>>2]|0,r=e+8|0,o=t[r>>2]|0,(o|0)!=(n|0)&&(t[r>>2]=o+(~(((o+-12-n|0)>>>0)/12|0)*12|0)),e=t[e>>2]|0,e|0&&Ve(e)}function Kp(e){e=e|0,z_(e)}function q_(e){e=e|0,R1(e+24|0)}function R1(e){e=e|0;var n=0,r=0,o=0;r=t[e>>2]|0,o=r,r|0&&(e=e+4|0,n=t[e>>2]|0,(n|0)!=(r|0)&&(t[e>>2]=n+(~(((n+-12-o|0)>>>0)/12|0)*12|0)),Ve(r))}function z_(e){e=e|0;var n=0;n=An()|0,Nn(e,2,8,n,W_()|0,0),t[e+24>>2]=0,t[e+28>>2]=0,t[e+32>>2]=0}function W_(){return 1288}function H_(e,n){e=e|0,n=n|0;var r=0,o=0,s=0,l=0;return r=h,h=h+16|0,o=r+8|0,s=r,l=$i(e)|0,e=t[l+4>>2]|0,t[s>>2]=t[l>>2],t[s+4>>2]=e,t[o>>2]=t[s>>2],t[o+4>>2]=t[s+4>>2],n=N1(n,o)|0,h=r,n|0}function $i(e){return e=e|0,(t[(F1()|0)+24>>2]|0)+(e*12|0)|0}function N1(e,n){e=e|0,n=n|0;var r=0;return r=t[n>>2]|0,n=t[n+4>>2]|0,e=e+(n>>1)|0,n&1&&(r=t[(t[e>>2]|0)+r>>2]|0),Dd(dc[r&31](e)|0)|0}function b_(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0,_=0;o=h,h=h+16|0,s=o+8|0,l=o,_=t[r>>2]|0,d=t[r+4>>2]|0,r=Zn(n)|0,t[l>>2]=_,t[l+4>>2]=d,t[s>>2]=t[l>>2],t[s+4>>2]=t[l+4>>2],G_(e,r,s,0),h=o}function G_(e,n,r,o){e=e|0,n=n|0,r=r|0,o=o|0;var s=0,l=0,d=0,_=0,y=0,k=0,T=0;s=h,h=h+32|0,l=s+16|0,T=s+8|0,_=s,k=t[r>>2]|0,y=t[r+4>>2]|0,d=t[e>>2]|0,e=B1()|0,t[T>>2]=k,t[T+4>>2]=y,t[l>>2]=t[T>>2],t[l+4>>2]=t[T+4>>2],r=V_(l)|0,t[_>>2]=k,t[_+4>>2]=y,t[l>>2]=t[_>>2],t[l+4>>2]=t[_+4>>2],ur(d,n,e,r,j1(l,o)|0,o),h=s}function B1(){var e=0,n=0;if(c[7760]|0||(q1(9756),Bt(39,9756,Q|0)|0,n=7760,t[n>>2]=1,t[n+4>>2]=0),!(Dn(9756)|0)){e=9756,n=e+36|0;do t[e>>2]=0,e=e+4|0;while((e|0)<(n|0));q1(9756)}return 9756}function V_(e){return e=e|0,0}function j1(e,n){e=e|0,n=n|0;var r=0,o=0,s=0,l=0,d=0,_=0,y=0,k=0,T=0,P=0;return T=h,h=h+32|0,s=T+24|0,d=T+16|0,_=T,y=T+8|0,l=t[e>>2]|0,o=t[e+4>>2]|0,t[_>>2]=l,t[_+4>>2]=o,P=B1()|0,k=P+24|0,e=Lt(n,4)|0,t[y>>2]=e,n=P+28|0,r=t[n>>2]|0,r>>>0<(t[P+32>>2]|0)>>>0?(t[d>>2]=l,t[d+4>>2]=o,t[s>>2]=t[d>>2],t[s+4>>2]=t[d+4>>2],Xp(r,s,e),e=(t[n>>2]|0)+12|0,t[n>>2]=e):(U1(k,_,y),e=t[n>>2]|0),h=T,((e-(t[k>>2]|0)|0)/12|0)+-1|0}function Xp(e,n,r){e=e|0,n=n|0,r=r|0;var o=0;o=t[n+4>>2]|0,t[e>>2]=t[n>>2],t[e+4>>2]=o,t[e+8>>2]=r}function U1(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0,_=0,y=0,k=0,T=0,P=0,q=0;if(k=h,h=h+48|0,o=k+32|0,d=k+24|0,_=k,y=e+4|0,s=(((t[y>>2]|0)-(t[e>>2]|0)|0)/12|0)+1|0,l=Y_(e)|0,l>>>0>>0)$n(e);else{T=t[e>>2]|0,q=((t[e+8>>2]|0)-T|0)/12|0,P=q<<1,$_(_,q>>>0>>1>>>0?P>>>0>>0?s:P:l,((t[y>>2]|0)-T|0)/12|0,e+8|0),y=_+8|0,l=t[y>>2]|0,s=t[n+4>>2]|0,r=t[r>>2]|0,t[d>>2]=t[n>>2],t[d+4>>2]=s,t[o>>2]=t[d>>2],t[o+4>>2]=t[d+4>>2],Xp(l,o,r),t[y>>2]=(t[y>>2]|0)+12,K_(e,_),X_(_),h=k;return}}function Y_(e){return e=e|0,357913941}function $_(e,n,r,o){e=e|0,n=n|0,r=r|0,o=o|0;var s=0;t[e+12>>2]=0,t[e+16>>2]=o;do if(n)if(n>>>0>357913941)_n();else{s=Tt(n*12|0)|0;break}else s=0;while(0);t[e>>2]=s,o=s+(r*12|0)|0,t[e+8>>2]=o,t[e+4>>2]=o,t[e+12>>2]=s+(n*12|0)}function K_(e,n){e=e|0,n=n|0;var r=0,o=0,s=0,l=0,d=0;o=t[e>>2]|0,d=e+4|0,l=n+4|0,s=(t[d>>2]|0)-o|0,r=(t[l>>2]|0)+(((s|0)/-12|0)*12|0)|0,t[l>>2]=r,(s|0)>0?(vn(r|0,o|0,s|0)|0,o=l,r=t[l>>2]|0):o=l,l=t[e>>2]|0,t[e>>2]=r,t[o>>2]=l,l=n+8|0,s=t[d>>2]|0,t[d>>2]=t[l>>2],t[l>>2]=s,l=e+8|0,d=n+12|0,e=t[l>>2]|0,t[l>>2]=t[d>>2],t[d>>2]=e,t[n>>2]=t[o>>2]}function X_(e){e=e|0;var n=0,r=0,o=0;n=t[e+4>>2]|0,r=e+8|0,o=t[r>>2]|0,(o|0)!=(n|0)&&(t[r>>2]=o+(~(((o+-12-n|0)>>>0)/12|0)*12|0)),e=t[e>>2]|0,e|0&&Ve(e)}function q1(e){e=e|0,Z_(e)}function J_(e){e=e|0,Q_(e+24|0)}function Q_(e){e=e|0;var n=0,r=0,o=0;r=t[e>>2]|0,o=r,r|0&&(e=e+4|0,n=t[e>>2]|0,(n|0)!=(r|0)&&(t[e>>2]=n+(~(((n+-12-o|0)>>>0)/12|0)*12|0)),Ve(r))}function Z_(e){e=e|0;var n=0;n=An()|0,Nn(e,2,8,n,z1()|0,1),t[e+24>>2]=0,t[e+28>>2]=0,t[e+32>>2]=0}function z1(){return 1292}function W1(e,n,r){e=e|0,n=n|0,r=+r;var o=0,s=0,l=0,d=0;o=h,h=h+16|0,s=o+8|0,l=o,d=e4(e)|0,e=t[d+4>>2]|0,t[l>>2]=t[d>>2],t[l+4>>2]=e,t[s>>2]=t[l>>2],t[s+4>>2]=t[l+4>>2],t4(n,s,r),h=o}function e4(e){return e=e|0,(t[(B1()|0)+24>>2]|0)+(e*12|0)|0}function t4(e,n,r){e=e|0,n=n|0,r=+r;var o=0,s=0,l=0;l=h,h=h+16|0,s=l,o=t[n>>2]|0,n=t[n+4>>2]|0,e=e+(n>>1)|0,n&1&&(o=t[(t[e>>2]|0)+o>>2]|0),wu(s,r),r=+Du(s,r),nD[o&31](e,r),h=l}function n4(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0,_=0;o=h,h=h+16|0,s=o+8|0,l=o,_=t[r>>2]|0,d=t[r+4>>2]|0,r=Zn(n)|0,t[l>>2]=_,t[l+4>>2]=d,t[s>>2]=t[l>>2],t[s+4>>2]=t[l+4>>2],r4(e,r,s,0),h=o}function r4(e,n,r,o){e=e|0,n=n|0,r=r|0,o=o|0;var s=0,l=0,d=0,_=0,y=0,k=0,T=0;s=h,h=h+32|0,l=s+16|0,T=s+8|0,_=s,k=t[r>>2]|0,y=t[r+4>>2]|0,d=t[e>>2]|0,e=H1()|0,t[T>>2]=k,t[T+4>>2]=y,t[l>>2]=t[T>>2],t[l+4>>2]=t[T+4>>2],r=i4(l)|0,t[_>>2]=k,t[_+4>>2]=y,t[l>>2]=t[_>>2],t[l+4>>2]=t[_+4>>2],ur(d,n,e,r,o4(l,o)|0,o),h=s}function H1(){var e=0,n=0;if(c[7768]|0||(Qp(9792),Bt(40,9792,Q|0)|0,n=7768,t[n>>2]=1,t[n+4>>2]=0),!(Dn(9792)|0)){e=9792,n=e+36|0;do t[e>>2]=0,e=e+4|0;while((e|0)<(n|0));Qp(9792)}return 9792}function i4(e){return e=e|0,0}function o4(e,n){e=e|0,n=n|0;var r=0,o=0,s=0,l=0,d=0,_=0,y=0,k=0,T=0,P=0;return T=h,h=h+32|0,s=T+24|0,d=T+16|0,_=T,y=T+8|0,l=t[e>>2]|0,o=t[e+4>>2]|0,t[_>>2]=l,t[_+4>>2]=o,P=H1()|0,k=P+24|0,e=Lt(n,4)|0,t[y>>2]=e,n=P+28|0,r=t[n>>2]|0,r>>>0<(t[P+32>>2]|0)>>>0?(t[d>>2]=l,t[d+4>>2]=o,t[s>>2]=t[d>>2],t[s+4>>2]=t[d+4>>2],Jp(r,s,e),e=(t[n>>2]|0)+12|0,t[n>>2]=e):(u4(k,_,y),e=t[n>>2]|0),h=T,((e-(t[k>>2]|0)|0)/12|0)+-1|0}function Jp(e,n,r){e=e|0,n=n|0,r=r|0;var o=0;o=t[n+4>>2]|0,t[e>>2]=t[n>>2],t[e+4>>2]=o,t[e+8>>2]=r}function u4(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0,_=0,y=0,k=0,T=0,P=0,q=0;if(k=h,h=h+48|0,o=k+32|0,d=k+24|0,_=k,y=e+4|0,s=(((t[y>>2]|0)-(t[e>>2]|0)|0)/12|0)+1|0,l=s4(e)|0,l>>>0>>0)$n(e);else{T=t[e>>2]|0,q=((t[e+8>>2]|0)-T|0)/12|0,P=q<<1,l4(_,q>>>0>>1>>>0?P>>>0>>0?s:P:l,((t[y>>2]|0)-T|0)/12|0,e+8|0),y=_+8|0,l=t[y>>2]|0,s=t[n+4>>2]|0,r=t[r>>2]|0,t[d>>2]=t[n>>2],t[d+4>>2]=s,t[o>>2]=t[d>>2],t[o+4>>2]=t[d+4>>2],Jp(l,o,r),t[y>>2]=(t[y>>2]|0)+12,f4(e,_),c4(_),h=k;return}}function s4(e){return e=e|0,357913941}function l4(e,n,r,o){e=e|0,n=n|0,r=r|0,o=o|0;var s=0;t[e+12>>2]=0,t[e+16>>2]=o;do if(n)if(n>>>0>357913941)_n();else{s=Tt(n*12|0)|0;break}else s=0;while(0);t[e>>2]=s,o=s+(r*12|0)|0,t[e+8>>2]=o,t[e+4>>2]=o,t[e+12>>2]=s+(n*12|0)}function f4(e,n){e=e|0,n=n|0;var r=0,o=0,s=0,l=0,d=0;o=t[e>>2]|0,d=e+4|0,l=n+4|0,s=(t[d>>2]|0)-o|0,r=(t[l>>2]|0)+(((s|0)/-12|0)*12|0)|0,t[l>>2]=r,(s|0)>0?(vn(r|0,o|0,s|0)|0,o=l,r=t[l>>2]|0):o=l,l=t[e>>2]|0,t[e>>2]=r,t[o>>2]=l,l=n+8|0,s=t[d>>2]|0,t[d>>2]=t[l>>2],t[l>>2]=s,l=e+8|0,d=n+12|0,e=t[l>>2]|0,t[l>>2]=t[d>>2],t[d>>2]=e,t[n>>2]=t[o>>2]}function c4(e){e=e|0;var n=0,r=0,o=0;n=t[e+4>>2]|0,r=e+8|0,o=t[r>>2]|0,(o|0)!=(n|0)&&(t[r>>2]=o+(~(((o+-12-n|0)>>>0)/12|0)*12|0)),e=t[e>>2]|0,e|0&&Ve(e)}function Qp(e){e=e|0,p4(e)}function a4(e){e=e|0,d4(e+24|0)}function d4(e){e=e|0;var n=0,r=0,o=0;r=t[e>>2]|0,o=r,r|0&&(e=e+4|0,n=t[e>>2]|0,(n|0)!=(r|0)&&(t[e>>2]=n+(~(((n+-12-o|0)>>>0)/12|0)*12|0)),Ve(r))}function p4(e){e=e|0;var n=0;n=An()|0,Nn(e,2,1,n,h4()|0,2),t[e+24>>2]=0,t[e+28>>2]=0,t[e+32>>2]=0}function h4(){return 1300}function m4(e,n,r,o){e=e|0,n=n|0,r=r|0,o=+o;var s=0,l=0,d=0,_=0;s=h,h=h+16|0,l=s+8|0,d=s,_=v4(e)|0,e=t[_+4>>2]|0,t[d>>2]=t[_>>2],t[d+4>>2]=e,t[l>>2]=t[d>>2],t[l+4>>2]=t[d+4>>2],g4(n,l,r,o),h=s}function v4(e){return e=e|0,(t[(H1()|0)+24>>2]|0)+(e*12|0)|0}function g4(e,n,r,o){e=e|0,n=n|0,r=r|0,o=+o;var s=0,l=0,d=0,_=0;_=h,h=h+16|0,l=_+1|0,d=_,s=t[n>>2]|0,n=t[n+4>>2]|0,e=e+(n>>1)|0,n&1&&(s=t[(t[e>>2]|0)+s>>2]|0),ts(l,r),l=ns(l,r)|0,wu(d,o),o=+Du(d,o),cD[s&15](e,l,o),h=_}function a(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0,_=0;o=h,h=h+16|0,s=o+8|0,l=o,_=t[r>>2]|0,d=t[r+4>>2]|0,r=Zn(n)|0,t[l>>2]=_,t[l+4>>2]=d,t[s>>2]=t[l>>2],t[s+4>>2]=t[l+4>>2],p(e,r,s,0),h=o}function p(e,n,r,o){e=e|0,n=n|0,r=r|0,o=o|0;var s=0,l=0,d=0,_=0,y=0,k=0,T=0;s=h,h=h+32|0,l=s+16|0,T=s+8|0,_=s,k=t[r>>2]|0,y=t[r+4>>2]|0,d=t[e>>2]|0,e=E()|0,t[T>>2]=k,t[T+4>>2]=y,t[l>>2]=t[T>>2],t[l+4>>2]=t[T+4>>2],r=I(l)|0,t[_>>2]=k,t[_+4>>2]=y,t[l>>2]=t[_>>2],t[l+4>>2]=t[_+4>>2],ur(d,n,e,r,B(l,o)|0,o),h=s}function E(){var e=0,n=0;if(c[7776]|0||(nt(9828),Bt(41,9828,Q|0)|0,n=7776,t[n>>2]=1,t[n+4>>2]=0),!(Dn(9828)|0)){e=9828,n=e+36|0;do t[e>>2]=0,e=e+4|0;while((e|0)<(n|0));nt(9828)}return 9828}function I(e){return e=e|0,0}function B(e,n){e=e|0,n=n|0;var r=0,o=0,s=0,l=0,d=0,_=0,y=0,k=0,T=0,P=0;return T=h,h=h+32|0,s=T+24|0,d=T+16|0,_=T,y=T+8|0,l=t[e>>2]|0,o=t[e+4>>2]|0,t[_>>2]=l,t[_+4>>2]=o,P=E()|0,k=P+24|0,e=Lt(n,4)|0,t[y>>2]=e,n=P+28|0,r=t[n>>2]|0,r>>>0<(t[P+32>>2]|0)>>>0?(t[d>>2]=l,t[d+4>>2]=o,t[s>>2]=t[d>>2],t[s+4>>2]=t[d+4>>2],G(r,s,e),e=(t[n>>2]|0)+12|0,t[n>>2]=e):(te(k,_,y),e=t[n>>2]|0),h=T,((e-(t[k>>2]|0)|0)/12|0)+-1|0}function G(e,n,r){e=e|0,n=n|0,r=r|0;var o=0;o=t[n+4>>2]|0,t[e>>2]=t[n>>2],t[e+4>>2]=o,t[e+8>>2]=r}function te(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0,_=0,y=0,k=0,T=0,P=0,q=0;if(k=h,h=h+48|0,o=k+32|0,d=k+24|0,_=k,y=e+4|0,s=(((t[y>>2]|0)-(t[e>>2]|0)|0)/12|0)+1|0,l=se(e)|0,l>>>0>>0)$n(e);else{T=t[e>>2]|0,q=((t[e+8>>2]|0)-T|0)/12|0,P=q<<1,Ee(_,q>>>0>>1>>>0?P>>>0>>0?s:P:l,((t[y>>2]|0)-T|0)/12|0,e+8|0),y=_+8|0,l=t[y>>2]|0,s=t[n+4>>2]|0,r=t[r>>2]|0,t[d>>2]=t[n>>2],t[d+4>>2]=s,t[o>>2]=t[d>>2],t[o+4>>2]=t[d+4>>2],G(l,o,r),t[y>>2]=(t[y>>2]|0)+12,$e(e,_),Ke(_),h=k;return}}function se(e){return e=e|0,357913941}function Ee(e,n,r,o){e=e|0,n=n|0,r=r|0,o=o|0;var s=0;t[e+12>>2]=0,t[e+16>>2]=o;do if(n)if(n>>>0>357913941)_n();else{s=Tt(n*12|0)|0;break}else s=0;while(0);t[e>>2]=s,o=s+(r*12|0)|0,t[e+8>>2]=o,t[e+4>>2]=o,t[e+12>>2]=s+(n*12|0)}function $e(e,n){e=e|0,n=n|0;var r=0,o=0,s=0,l=0,d=0;o=t[e>>2]|0,d=e+4|0,l=n+4|0,s=(t[d>>2]|0)-o|0,r=(t[l>>2]|0)+(((s|0)/-12|0)*12|0)|0,t[l>>2]=r,(s|0)>0?(vn(r|0,o|0,s|0)|0,o=l,r=t[l>>2]|0):o=l,l=t[e>>2]|0,t[e>>2]=r,t[o>>2]=l,l=n+8|0,s=t[d>>2]|0,t[d>>2]=t[l>>2],t[l>>2]=s,l=e+8|0,d=n+12|0,e=t[l>>2]|0,t[l>>2]=t[d>>2],t[d>>2]=e,t[n>>2]=t[o>>2]}function Ke(e){e=e|0;var n=0,r=0,o=0;n=t[e+4>>2]|0,r=e+8|0,o=t[r>>2]|0,(o|0)!=(n|0)&&(t[r>>2]=o+(~(((o+-12-n|0)>>>0)/12|0)*12|0)),e=t[e>>2]|0,e|0&&Ve(e)}function nt(e){e=e|0,an(e)}function Ct(e){e=e|0,Gt(e+24|0)}function Gt(e){e=e|0;var n=0,r=0,o=0;r=t[e>>2]|0,o=r,r|0&&(e=e+4|0,n=t[e>>2]|0,(n|0)!=(r|0)&&(t[e>>2]=n+(~(((n+-12-o|0)>>>0)/12|0)*12|0)),Ve(r))}function an(e){e=e|0;var n=0;n=An()|0,Nn(e,2,7,n,qn()|0,1),t[e+24>>2]=0,t[e+28>>2]=0,t[e+32>>2]=0}function qn(){return 1312}function dn(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0;o=h,h=h+16|0,s=o+8|0,l=o,d=Yn(e)|0,e=t[d+4>>2]|0,t[l>>2]=t[d>>2],t[l+4>>2]=e,t[s>>2]=t[l>>2],t[s+4>>2]=t[l+4>>2],er(n,s,r),h=o}function Yn(e){return e=e|0,(t[(E()|0)+24>>2]|0)+(e*12|0)|0}function er(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0;l=h,h=h+16|0,s=l,o=t[n>>2]|0,n=t[n+4>>2]|0,e=e+(n>>1)|0,n&1&&(o=t[(t[e>>2]|0)+o>>2]|0),ts(s,r),s=ns(s,r)|0,Bl[o&31](e,s),h=l}function vo(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0,_=0;o=h,h=h+16|0,s=o+8|0,l=o,_=t[r>>2]|0,d=t[r+4>>2]|0,r=Zn(n)|0,t[l>>2]=_,t[l+4>>2]=d,t[s>>2]=t[l>>2],t[s+4>>2]=t[l+4>>2],Pi(e,r,s,0),h=o}function Pi(e,n,r,o){e=e|0,n=n|0,r=r|0,o=o|0;var s=0,l=0,d=0,_=0,y=0,k=0,T=0;s=h,h=h+32|0,l=s+16|0,T=s+8|0,_=s,k=t[r>>2]|0,y=t[r+4>>2]|0,d=t[e>>2]|0,e=Mi()|0,t[T>>2]=k,t[T+4>>2]=y,t[l>>2]=t[T>>2],t[l+4>>2]=t[T+4>>2],r=f0(l)|0,t[_>>2]=k,t[_+4>>2]=y,t[l>>2]=t[_>>2],t[l+4>>2]=t[_+4>>2],ur(d,n,e,r,Jo(l,o)|0,o),h=s}function Mi(){var e=0,n=0;if(c[7784]|0||(kw(9864),Bt(42,9864,Q|0)|0,n=7784,t[n>>2]=1,t[n+4>>2]=0),!(Dn(9864)|0)){e=9864,n=e+36|0;do t[e>>2]=0,e=e+4|0;while((e|0)<(n|0));kw(9864)}return 9864}function f0(e){return e=e|0,0}function Jo(e,n){e=e|0,n=n|0;var r=0,o=0,s=0,l=0,d=0,_=0,y=0,k=0,T=0,P=0;return T=h,h=h+32|0,s=T+24|0,d=T+16|0,_=T,y=T+8|0,l=t[e>>2]|0,o=t[e+4>>2]|0,t[_>>2]=l,t[_+4>>2]=o,P=Mi()|0,k=P+24|0,e=Lt(n,4)|0,t[y>>2]=e,n=P+28|0,r=t[n>>2]|0,r>>>0<(t[P+32>>2]|0)>>>0?(t[d>>2]=l,t[d+4>>2]=o,t[s>>2]=t[d>>2],t[s+4>>2]=t[d+4>>2],Su(r,s,e),e=(t[n>>2]|0)+12|0,t[n>>2]=e):(Zp(k,_,y),e=t[n>>2]|0),h=T,((e-(t[k>>2]|0)|0)/12|0)+-1|0}function Su(e,n,r){e=e|0,n=n|0,r=r|0;var o=0;o=t[n+4>>2]|0,t[e>>2]=t[n>>2],t[e+4>>2]=o,t[e+8>>2]=r}function Zp(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0,_=0,y=0,k=0,T=0,P=0,q=0;if(k=h,h=h+48|0,o=k+32|0,d=k+24|0,_=k,y=e+4|0,s=(((t[y>>2]|0)-(t[e>>2]|0)|0)/12|0)+1|0,l=v9(e)|0,l>>>0>>0)$n(e);else{T=t[e>>2]|0,q=((t[e+8>>2]|0)-T|0)/12|0,P=q<<1,g9(_,q>>>0>>1>>>0?P>>>0>>0?s:P:l,((t[y>>2]|0)-T|0)/12|0,e+8|0),y=_+8|0,l=t[y>>2]|0,s=t[n+4>>2]|0,r=t[r>>2]|0,t[d>>2]=t[n>>2],t[d+4>>2]=s,t[o>>2]=t[d>>2],t[o+4>>2]=t[d+4>>2],Su(l,o,r),t[y>>2]=(t[y>>2]|0)+12,_9(e,_),y9(_),h=k;return}}function v9(e){return e=e|0,357913941}function g9(e,n,r,o){e=e|0,n=n|0,r=r|0,o=o|0;var s=0;t[e+12>>2]=0,t[e+16>>2]=o;do if(n)if(n>>>0>357913941)_n();else{s=Tt(n*12|0)|0;break}else s=0;while(0);t[e>>2]=s,o=s+(r*12|0)|0,t[e+8>>2]=o,t[e+4>>2]=o,t[e+12>>2]=s+(n*12|0)}function _9(e,n){e=e|0,n=n|0;var r=0,o=0,s=0,l=0,d=0;o=t[e>>2]|0,d=e+4|0,l=n+4|0,s=(t[d>>2]|0)-o|0,r=(t[l>>2]|0)+(((s|0)/-12|0)*12|0)|0,t[l>>2]=r,(s|0)>0?(vn(r|0,o|0,s|0)|0,o=l,r=t[l>>2]|0):o=l,l=t[e>>2]|0,t[e>>2]=r,t[o>>2]=l,l=n+8|0,s=t[d>>2]|0,t[d>>2]=t[l>>2],t[l>>2]=s,l=e+8|0,d=n+12|0,e=t[l>>2]|0,t[l>>2]=t[d>>2],t[d>>2]=e,t[n>>2]=t[o>>2]}function y9(e){e=e|0;var n=0,r=0,o=0;n=t[e+4>>2]|0,r=e+8|0,o=t[r>>2]|0,(o|0)!=(n|0)&&(t[r>>2]=o+(~(((o+-12-n|0)>>>0)/12|0)*12|0)),e=t[e>>2]|0,e|0&&Ve(e)}function kw(e){e=e|0,E9(e)}function w9(e){e=e|0,D9(e+24|0)}function D9(e){e=e|0;var n=0,r=0,o=0;r=t[e>>2]|0,o=r,r|0&&(e=e+4|0,n=t[e>>2]|0,(n|0)!=(r|0)&&(t[e>>2]=n+(~(((n+-12-o|0)>>>0)/12|0)*12|0)),Ve(r))}function E9(e){e=e|0;var n=0;n=An()|0,Nn(e,2,8,n,S9()|0,1),t[e+24>>2]=0,t[e+28>>2]=0,t[e+32>>2]=0}function S9(){return 1320}function C9(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0;o=h,h=h+16|0,s=o+8|0,l=o,d=T9(e)|0,e=t[d+4>>2]|0,t[l>>2]=t[d>>2],t[l+4>>2]=e,t[s>>2]=t[l>>2],t[s+4>>2]=t[l+4>>2],x9(n,s,r),h=o}function T9(e){return e=e|0,(t[(Mi()|0)+24>>2]|0)+(e*12|0)|0}function x9(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0;l=h,h=h+16|0,s=l,o=t[n>>2]|0,n=t[n+4>>2]|0,e=e+(n>>1)|0,n&1&&(o=t[(t[e>>2]|0)+o>>2]|0),k9(s,r),s=A9(s,r)|0,Bl[o&31](e,s),h=l}function k9(e,n){e=e|0,n=n|0}function A9(e,n){return e=e|0,n=n|0,O9(n)|0}function O9(e){return e=e|0,e|0}function I9(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0,_=0;o=h,h=h+16|0,s=o+8|0,l=o,_=t[r>>2]|0,d=t[r+4>>2]|0,r=Zn(n)|0,t[l>>2]=_,t[l+4>>2]=d,t[s>>2]=t[l>>2],t[s+4>>2]=t[l+4>>2],P9(e,r,s,0),h=o}function P9(e,n,r,o){e=e|0,n=n|0,r=r|0,o=o|0;var s=0,l=0,d=0,_=0,y=0,k=0,T=0;s=h,h=h+32|0,l=s+16|0,T=s+8|0,_=s,k=t[r>>2]|0,y=t[r+4>>2]|0,d=t[e>>2]|0,e=_4()|0,t[T>>2]=k,t[T+4>>2]=y,t[l>>2]=t[T>>2],t[l+4>>2]=t[T+4>>2],r=M9(l)|0,t[_>>2]=k,t[_+4>>2]=y,t[l>>2]=t[_>>2],t[l+4>>2]=t[_+4>>2],ur(d,n,e,r,F9(l,o)|0,o),h=s}function _4(){var e=0,n=0;if(c[7792]|0||(Ow(9900),Bt(43,9900,Q|0)|0,n=7792,t[n>>2]=1,t[n+4>>2]=0),!(Dn(9900)|0)){e=9900,n=e+36|0;do t[e>>2]=0,e=e+4|0;while((e|0)<(n|0));Ow(9900)}return 9900}function M9(e){return e=e|0,0}function F9(e,n){e=e|0,n=n|0;var r=0,o=0,s=0,l=0,d=0,_=0,y=0,k=0,T=0,P=0;return T=h,h=h+32|0,s=T+24|0,d=T+16|0,_=T,y=T+8|0,l=t[e>>2]|0,o=t[e+4>>2]|0,t[_>>2]=l,t[_+4>>2]=o,P=_4()|0,k=P+24|0,e=Lt(n,4)|0,t[y>>2]=e,n=P+28|0,r=t[n>>2]|0,r>>>0<(t[P+32>>2]|0)>>>0?(t[d>>2]=l,t[d+4>>2]=o,t[s>>2]=t[d>>2],t[s+4>>2]=t[d+4>>2],Aw(r,s,e),e=(t[n>>2]|0)+12|0,t[n>>2]=e):(L9(k,_,y),e=t[n>>2]|0),h=T,((e-(t[k>>2]|0)|0)/12|0)+-1|0}function Aw(e,n,r){e=e|0,n=n|0,r=r|0;var o=0;o=t[n+4>>2]|0,t[e>>2]=t[n>>2],t[e+4>>2]=o,t[e+8>>2]=r}function L9(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0,_=0,y=0,k=0,T=0,P=0,q=0;if(k=h,h=h+48|0,o=k+32|0,d=k+24|0,_=k,y=e+4|0,s=(((t[y>>2]|0)-(t[e>>2]|0)|0)/12|0)+1|0,l=R9(e)|0,l>>>0>>0)$n(e);else{T=t[e>>2]|0,q=((t[e+8>>2]|0)-T|0)/12|0,P=q<<1,N9(_,q>>>0>>1>>>0?P>>>0>>0?s:P:l,((t[y>>2]|0)-T|0)/12|0,e+8|0),y=_+8|0,l=t[y>>2]|0,s=t[n+4>>2]|0,r=t[r>>2]|0,t[d>>2]=t[n>>2],t[d+4>>2]=s,t[o>>2]=t[d>>2],t[o+4>>2]=t[d+4>>2],Aw(l,o,r),t[y>>2]=(t[y>>2]|0)+12,B9(e,_),j9(_),h=k;return}}function R9(e){return e=e|0,357913941}function N9(e,n,r,o){e=e|0,n=n|0,r=r|0,o=o|0;var s=0;t[e+12>>2]=0,t[e+16>>2]=o;do if(n)if(n>>>0>357913941)_n();else{s=Tt(n*12|0)|0;break}else s=0;while(0);t[e>>2]=s,o=s+(r*12|0)|0,t[e+8>>2]=o,t[e+4>>2]=o,t[e+12>>2]=s+(n*12|0)}function B9(e,n){e=e|0,n=n|0;var r=0,o=0,s=0,l=0,d=0;o=t[e>>2]|0,d=e+4|0,l=n+4|0,s=(t[d>>2]|0)-o|0,r=(t[l>>2]|0)+(((s|0)/-12|0)*12|0)|0,t[l>>2]=r,(s|0)>0?(vn(r|0,o|0,s|0)|0,o=l,r=t[l>>2]|0):o=l,l=t[e>>2]|0,t[e>>2]=r,t[o>>2]=l,l=n+8|0,s=t[d>>2]|0,t[d>>2]=t[l>>2],t[l>>2]=s,l=e+8|0,d=n+12|0,e=t[l>>2]|0,t[l>>2]=t[d>>2],t[d>>2]=e,t[n>>2]=t[o>>2]}function j9(e){e=e|0;var n=0,r=0,o=0;n=t[e+4>>2]|0,r=e+8|0,o=t[r>>2]|0,(o|0)!=(n|0)&&(t[r>>2]=o+(~(((o+-12-n|0)>>>0)/12|0)*12|0)),e=t[e>>2]|0,e|0&&Ve(e)}function Ow(e){e=e|0,z9(e)}function U9(e){e=e|0,q9(e+24|0)}function q9(e){e=e|0;var n=0,r=0,o=0;r=t[e>>2]|0,o=r,r|0&&(e=e+4|0,n=t[e>>2]|0,(n|0)!=(r|0)&&(t[e>>2]=n+(~(((n+-12-o|0)>>>0)/12|0)*12|0)),Ve(r))}function z9(e){e=e|0;var n=0;n=An()|0,Nn(e,2,22,n,W9()|0,0),t[e+24>>2]=0,t[e+28>>2]=0,t[e+32>>2]=0}function W9(){return 1344}function H9(e,n){e=e|0,n=n|0;var r=0,o=0,s=0,l=0;r=h,h=h+16|0,o=r+8|0,s=r,l=b9(e)|0,e=t[l+4>>2]|0,t[s>>2]=t[l>>2],t[s+4>>2]=e,t[o>>2]=t[s>>2],t[o+4>>2]=t[s+4>>2],G9(n,o),h=r}function b9(e){return e=e|0,(t[(_4()|0)+24>>2]|0)+(e*12|0)|0}function G9(e,n){e=e|0,n=n|0;var r=0;r=t[n>>2]|0,n=t[n+4>>2]|0,e=e+(n>>1)|0,n&1&&(r=t[(t[e>>2]|0)+r>>2]|0),Nl[r&127](e)}function V9(e,n,r,o){e=e|0,n=n|0,r=r|0,o=o|0;var s=0,l=0;l=t[e>>2]|0,s=y4()|0,e=Y9(r)|0,ur(l,n,s,e,$9(r,o)|0,o)}function y4(){var e=0,n=0;if(c[7800]|0||(Pw(9936),Bt(44,9936,Q|0)|0,n=7800,t[n>>2]=1,t[n+4>>2]=0),!(Dn(9936)|0)){e=9936,n=e+36|0;do t[e>>2]=0,e=e+4|0;while((e|0)<(n|0));Pw(9936)}return 9936}function Y9(e){return e=e|0,e|0}function $9(e,n){e=e|0,n=n|0;var r=0,o=0,s=0,l=0,d=0,_=0,y=0;return _=h,h=h+16|0,s=_,l=_+4|0,t[s>>2]=e,y=y4()|0,d=y+24|0,n=Lt(n,4)|0,t[l>>2]=n,r=y+28|0,o=t[r>>2]|0,o>>>0<(t[y+32>>2]|0)>>>0?(Iw(o,e,n),n=(t[r>>2]|0)+8|0,t[r>>2]=n):(K9(d,s,l),n=t[r>>2]|0),h=_,(n-(t[d>>2]|0)>>3)+-1|0}function Iw(e,n,r){e=e|0,n=n|0,r=r|0,t[e>>2]=n,t[e+4>>2]=r}function K9(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0,_=0,y=0,k=0,T=0;if(_=h,h=h+32|0,s=_,l=e+4|0,d=((t[l>>2]|0)-(t[e>>2]|0)>>3)+1|0,o=X9(e)|0,o>>>0>>0)$n(e);else{y=t[e>>2]|0,T=(t[e+8>>2]|0)-y|0,k=T>>2,J9(s,T>>3>>>0>>1>>>0?k>>>0>>0?d:k:o,(t[l>>2]|0)-y>>3,e+8|0),d=s+8|0,Iw(t[d>>2]|0,t[n>>2]|0,t[r>>2]|0),t[d>>2]=(t[d>>2]|0)+8,Q9(e,s),Z9(s),h=_;return}}function X9(e){return e=e|0,536870911}function J9(e,n,r,o){e=e|0,n=n|0,r=r|0,o=o|0;var s=0;t[e+12>>2]=0,t[e+16>>2]=o;do if(n)if(n>>>0>536870911)_n();else{s=Tt(n<<3)|0;break}else s=0;while(0);t[e>>2]=s,o=s+(r<<3)|0,t[e+8>>2]=o,t[e+4>>2]=o,t[e+12>>2]=s+(n<<3)}function Q9(e,n){e=e|0,n=n|0;var r=0,o=0,s=0,l=0,d=0;o=t[e>>2]|0,d=e+4|0,l=n+4|0,s=(t[d>>2]|0)-o|0,r=(t[l>>2]|0)+(0-(s>>3)<<3)|0,t[l>>2]=r,(s|0)>0?(vn(r|0,o|0,s|0)|0,o=l,r=t[l>>2]|0):o=l,l=t[e>>2]|0,t[e>>2]=r,t[o>>2]=l,l=n+8|0,s=t[d>>2]|0,t[d>>2]=t[l>>2],t[l>>2]=s,l=e+8|0,d=n+12|0,e=t[l>>2]|0,t[l>>2]=t[d>>2],t[d>>2]=e,t[n>>2]=t[o>>2]}function Z9(e){e=e|0;var n=0,r=0,o=0;n=t[e+4>>2]|0,r=e+8|0,o=t[r>>2]|0,(o|0)!=(n|0)&&(t[r>>2]=o+(~((o+-8-n|0)>>>3)<<3)),e=t[e>>2]|0,e|0&&Ve(e)}function Pw(e){e=e|0,nx(e)}function ex(e){e=e|0,tx(e+24|0)}function tx(e){e=e|0;var n=0,r=0,o=0;r=t[e>>2]|0,o=r,r|0&&(e=e+4|0,n=t[e>>2]|0,(n|0)!=(r|0)&&(t[e>>2]=n+(~((n+-8-o|0)>>>3)<<3)),Ve(r))}function nx(e){e=e|0;var n=0;n=An()|0,Nn(e,1,23,n,Mo()|0,1),t[e+24>>2]=0,t[e+28>>2]=0,t[e+32>>2]=0}function rx(e,n){e=e|0,n=n|0,ox(t[(ix(e)|0)>>2]|0,n)}function ix(e){return e=e|0,(t[(y4()|0)+24>>2]|0)+(e<<3)|0}function ox(e,n){e=e|0,n=n|0;var r=0,o=0;r=h,h=h+16|0,o=r,On(o,n),n=x1(o,n)|0,Nl[e&127](n),h=r}function ux(e,n,r,o){e=e|0,n=n|0,r=r|0,o=o|0;var s=0,l=0;l=t[e>>2]|0,s=w4()|0,e=sx(r)|0,ur(l,n,s,e,lx(r,o)|0,o)}function w4(){var e=0,n=0;if(c[7808]|0||(Fw(9972),Bt(45,9972,Q|0)|0,n=7808,t[n>>2]=1,t[n+4>>2]=0),!(Dn(9972)|0)){e=9972,n=e+36|0;do t[e>>2]=0,e=e+4|0;while((e|0)<(n|0));Fw(9972)}return 9972}function sx(e){return e=e|0,e|0}function lx(e,n){e=e|0,n=n|0;var r=0,o=0,s=0,l=0,d=0,_=0,y=0;return _=h,h=h+16|0,s=_,l=_+4|0,t[s>>2]=e,y=w4()|0,d=y+24|0,n=Lt(n,4)|0,t[l>>2]=n,r=y+28|0,o=t[r>>2]|0,o>>>0<(t[y+32>>2]|0)>>>0?(Mw(o,e,n),n=(t[r>>2]|0)+8|0,t[r>>2]=n):(fx(d,s,l),n=t[r>>2]|0),h=_,(n-(t[d>>2]|0)>>3)+-1|0}function Mw(e,n,r){e=e|0,n=n|0,r=r|0,t[e>>2]=n,t[e+4>>2]=r}function fx(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0,_=0,y=0,k=0,T=0;if(_=h,h=h+32|0,s=_,l=e+4|0,d=((t[l>>2]|0)-(t[e>>2]|0)>>3)+1|0,o=cx(e)|0,o>>>0>>0)$n(e);else{y=t[e>>2]|0,T=(t[e+8>>2]|0)-y|0,k=T>>2,ax(s,T>>3>>>0>>1>>>0?k>>>0>>0?d:k:o,(t[l>>2]|0)-y>>3,e+8|0),d=s+8|0,Mw(t[d>>2]|0,t[n>>2]|0,t[r>>2]|0),t[d>>2]=(t[d>>2]|0)+8,dx(e,s),px(s),h=_;return}}function cx(e){return e=e|0,536870911}function ax(e,n,r,o){e=e|0,n=n|0,r=r|0,o=o|0;var s=0;t[e+12>>2]=0,t[e+16>>2]=o;do if(n)if(n>>>0>536870911)_n();else{s=Tt(n<<3)|0;break}else s=0;while(0);t[e>>2]=s,o=s+(r<<3)|0,t[e+8>>2]=o,t[e+4>>2]=o,t[e+12>>2]=s+(n<<3)}function dx(e,n){e=e|0,n=n|0;var r=0,o=0,s=0,l=0,d=0;o=t[e>>2]|0,d=e+4|0,l=n+4|0,s=(t[d>>2]|0)-o|0,r=(t[l>>2]|0)+(0-(s>>3)<<3)|0,t[l>>2]=r,(s|0)>0?(vn(r|0,o|0,s|0)|0,o=l,r=t[l>>2]|0):o=l,l=t[e>>2]|0,t[e>>2]=r,t[o>>2]=l,l=n+8|0,s=t[d>>2]|0,t[d>>2]=t[l>>2],t[l>>2]=s,l=e+8|0,d=n+12|0,e=t[l>>2]|0,t[l>>2]=t[d>>2],t[d>>2]=e,t[n>>2]=t[o>>2]}function px(e){e=e|0;var n=0,r=0,o=0;n=t[e+4>>2]|0,r=e+8|0,o=t[r>>2]|0,(o|0)!=(n|0)&&(t[r>>2]=o+(~((o+-8-n|0)>>>3)<<3)),e=t[e>>2]|0,e|0&&Ve(e)}function Fw(e){e=e|0,vx(e)}function hx(e){e=e|0,mx(e+24|0)}function mx(e){e=e|0;var n=0,r=0,o=0;r=t[e>>2]|0,o=r,r|0&&(e=e+4|0,n=t[e>>2]|0,(n|0)!=(r|0)&&(t[e>>2]=n+(~((n+-8-o|0)>>>3)<<3)),Ve(r))}function vx(e){e=e|0;var n=0;n=An()|0,Nn(e,1,9,n,gx()|0,1),t[e+24>>2]=0,t[e+28>>2]=0,t[e+32>>2]=0}function gx(){return 1348}function _x(e,n){return e=e|0,n=n|0,wx(t[(yx(e)|0)>>2]|0,n)|0}function yx(e){return e=e|0,(t[(w4()|0)+24>>2]|0)+(e<<3)|0}function wx(e,n){e=e|0,n=n|0;var r=0,o=0;return r=h,h=h+16|0,o=r,Lw(o,n),n=Rw(o,n)|0,n=Xc(dc[e&31](n)|0)|0,h=r,n|0}function Lw(e,n){e=e|0,n=n|0}function Rw(e,n){return e=e|0,n=n|0,Dx(n)|0}function Dx(e){return e=e|0,e|0}function Ex(e,n,r,o){e=e|0,n=n|0,r=r|0,o=o|0;var s=0,l=0;l=t[e>>2]|0,s=D4()|0,e=Sx(r)|0,ur(l,n,s,e,Cx(r,o)|0,o)}function D4(){var e=0,n=0;if(c[7816]|0||(Bw(10008),Bt(46,10008,Q|0)|0,n=7816,t[n>>2]=1,t[n+4>>2]=0),!(Dn(10008)|0)){e=10008,n=e+36|0;do t[e>>2]=0,e=e+4|0;while((e|0)<(n|0));Bw(10008)}return 10008}function Sx(e){return e=e|0,e|0}function Cx(e,n){e=e|0,n=n|0;var r=0,o=0,s=0,l=0,d=0,_=0,y=0;return _=h,h=h+16|0,s=_,l=_+4|0,t[s>>2]=e,y=D4()|0,d=y+24|0,n=Lt(n,4)|0,t[l>>2]=n,r=y+28|0,o=t[r>>2]|0,o>>>0<(t[y+32>>2]|0)>>>0?(Nw(o,e,n),n=(t[r>>2]|0)+8|0,t[r>>2]=n):(Tx(d,s,l),n=t[r>>2]|0),h=_,(n-(t[d>>2]|0)>>3)+-1|0}function Nw(e,n,r){e=e|0,n=n|0,r=r|0,t[e>>2]=n,t[e+4>>2]=r}function Tx(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0,_=0,y=0,k=0,T=0;if(_=h,h=h+32|0,s=_,l=e+4|0,d=((t[l>>2]|0)-(t[e>>2]|0)>>3)+1|0,o=xx(e)|0,o>>>0>>0)$n(e);else{y=t[e>>2]|0,T=(t[e+8>>2]|0)-y|0,k=T>>2,kx(s,T>>3>>>0>>1>>>0?k>>>0>>0?d:k:o,(t[l>>2]|0)-y>>3,e+8|0),d=s+8|0,Nw(t[d>>2]|0,t[n>>2]|0,t[r>>2]|0),t[d>>2]=(t[d>>2]|0)+8,Ax(e,s),Ox(s),h=_;return}}function xx(e){return e=e|0,536870911}function kx(e,n,r,o){e=e|0,n=n|0,r=r|0,o=o|0;var s=0;t[e+12>>2]=0,t[e+16>>2]=o;do if(n)if(n>>>0>536870911)_n();else{s=Tt(n<<3)|0;break}else s=0;while(0);t[e>>2]=s,o=s+(r<<3)|0,t[e+8>>2]=o,t[e+4>>2]=o,t[e+12>>2]=s+(n<<3)}function Ax(e,n){e=e|0,n=n|0;var r=0,o=0,s=0,l=0,d=0;o=t[e>>2]|0,d=e+4|0,l=n+4|0,s=(t[d>>2]|0)-o|0,r=(t[l>>2]|0)+(0-(s>>3)<<3)|0,t[l>>2]=r,(s|0)>0?(vn(r|0,o|0,s|0)|0,o=l,r=t[l>>2]|0):o=l,l=t[e>>2]|0,t[e>>2]=r,t[o>>2]=l,l=n+8|0,s=t[d>>2]|0,t[d>>2]=t[l>>2],t[l>>2]=s,l=e+8|0,d=n+12|0,e=t[l>>2]|0,t[l>>2]=t[d>>2],t[d>>2]=e,t[n>>2]=t[o>>2]}function Ox(e){e=e|0;var n=0,r=0,o=0;n=t[e+4>>2]|0,r=e+8|0,o=t[r>>2]|0,(o|0)!=(n|0)&&(t[r>>2]=o+(~((o+-8-n|0)>>>3)<<3)),e=t[e>>2]|0,e|0&&Ve(e)}function Bw(e){e=e|0,Mx(e)}function Ix(e){e=e|0,Px(e+24|0)}function Px(e){e=e|0;var n=0,r=0,o=0;r=t[e>>2]|0,o=r,r|0&&(e=e+4|0,n=t[e>>2]|0,(n|0)!=(r|0)&&(t[e>>2]=n+(~((n+-8-o|0)>>>3)<<3)),Ve(r))}function Mx(e){e=e|0;var n=0;n=An()|0,Nn(e,1,15,n,mp()|0,0),t[e+24>>2]=0,t[e+28>>2]=0,t[e+32>>2]=0}function Fx(e){return e=e|0,Rx(t[(Lx(e)|0)>>2]|0)|0}function Lx(e){return e=e|0,(t[(D4()|0)+24>>2]|0)+(e<<3)|0}function Rx(e){return e=e|0,Xc(ph[e&7]()|0)|0}function Nx(){var e=0;return c[7832]|0||(bx(10052),Bt(25,10052,Q|0)|0,e=7832,t[e>>2]=1,t[e+4>>2]=0),10052}function Bx(e,n){e=e|0,n=n|0,t[e>>2]=jx()|0,t[e+4>>2]=Ux()|0,t[e+12>>2]=n,t[e+8>>2]=qx()|0,t[e+32>>2]=2}function jx(){return 11709}function Ux(){return 1188}function qx(){return eh()|0}function zx(e,n,r,o){e=e|0,n=n|0,r=r|0,o=o|0,(Sf(o,896)|0)==512?r|0&&(Wx(r),Ve(r)):n|0&&(mu(n),Ve(n))}function Sf(e,n){return e=e|0,n=n|0,n&e|0}function Wx(e){e=e|0,e=t[e+4>>2]|0,e|0&&Tf(e)}function eh(){var e=0;return c[7824]|0||(t[2511]=Hx()|0,t[2512]=0,e=7824,t[e>>2]=1,t[e+4>>2]=0),10044}function Hx(){return 0}function bx(e){e=e|0,Ys(e)}function Gx(e){e=e|0;var n=0,r=0,o=0,s=0,l=0;n=h,h=h+32|0,r=n+24|0,l=n+16|0,s=n+8|0,o=n,Vx(e,4827),Yx(e,4834,3)|0,$x(e,3682,47)|0,t[l>>2]=9,t[l+4>>2]=0,t[r>>2]=t[l>>2],t[r+4>>2]=t[l+4>>2],Kx(e,4841,r)|0,t[s>>2]=1,t[s+4>>2]=0,t[r>>2]=t[s>>2],t[r+4>>2]=t[s+4>>2],Xx(e,4871,r)|0,t[o>>2]=10,t[o+4>>2]=0,t[r>>2]=t[o>>2],t[r+4>>2]=t[o+4>>2],Jx(e,4891,r)|0,h=n}function Vx(e,n){e=e|0,n=n|0;var r=0;r=Ok()|0,t[e>>2]=r,Ik(r,n),Cf(t[e>>2]|0)}function Yx(e,n,r){return e=e|0,n=n|0,r=r|0,pk(e,Zn(n)|0,r,0),e|0}function $x(e,n,r){return e=e|0,n=n|0,r=r|0,Q7(e,Zn(n)|0,r,0),e|0}function Kx(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0;return o=h,h=h+16|0,s=o+8|0,l=o,d=t[r+4>>2]|0,t[l>>2]=t[r>>2],t[l+4>>2]=d,t[s>>2]=t[l>>2],t[s+4>>2]=t[l+4>>2],F7(e,n,s),h=o,e|0}function Xx(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0;return o=h,h=h+16|0,s=o+8|0,l=o,d=t[r+4>>2]|0,t[l>>2]=t[r>>2],t[l+4>>2]=d,t[s>>2]=t[l>>2],t[s+4>>2]=t[l+4>>2],h7(e,n,s),h=o,e|0}function Jx(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0;return o=h,h=h+16|0,s=o+8|0,l=o,d=t[r+4>>2]|0,t[l>>2]=t[r>>2],t[l+4>>2]=d,t[s>>2]=t[l>>2],t[s+4>>2]=t[l+4>>2],Qx(e,n,s),h=o,e|0}function Qx(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0,_=0;o=h,h=h+16|0,s=o+8|0,l=o,_=t[r>>2]|0,d=t[r+4>>2]|0,r=Zn(n)|0,t[l>>2]=_,t[l+4>>2]=d,t[s>>2]=t[l>>2],t[s+4>>2]=t[l+4>>2],Zx(e,r,s,1),h=o}function Zx(e,n,r,o){e=e|0,n=n|0,r=r|0,o=o|0;var s=0,l=0,d=0,_=0,y=0,k=0,T=0;s=h,h=h+32|0,l=s+16|0,T=s+8|0,_=s,k=t[r>>2]|0,y=t[r+4>>2]|0,d=t[e>>2]|0,e=E4()|0,t[T>>2]=k,t[T+4>>2]=y,t[l>>2]=t[T>>2],t[l+4>>2]=t[T+4>>2],r=e7(l)|0,t[_>>2]=k,t[_+4>>2]=y,t[l>>2]=t[_>>2],t[l+4>>2]=t[_+4>>2],ur(d,n,e,r,t7(l,o)|0,o),h=s}function E4(){var e=0,n=0;if(c[7840]|0||(Uw(10100),Bt(48,10100,Q|0)|0,n=7840,t[n>>2]=1,t[n+4>>2]=0),!(Dn(10100)|0)){e=10100,n=e+36|0;do t[e>>2]=0,e=e+4|0;while((e|0)<(n|0));Uw(10100)}return 10100}function e7(e){return e=e|0,0}function t7(e,n){e=e|0,n=n|0;var r=0,o=0,s=0,l=0,d=0,_=0,y=0,k=0,T=0,P=0;return T=h,h=h+32|0,s=T+24|0,d=T+16|0,_=T,y=T+8|0,l=t[e>>2]|0,o=t[e+4>>2]|0,t[_>>2]=l,t[_+4>>2]=o,P=E4()|0,k=P+24|0,e=Lt(n,4)|0,t[y>>2]=e,n=P+28|0,r=t[n>>2]|0,r>>>0<(t[P+32>>2]|0)>>>0?(t[d>>2]=l,t[d+4>>2]=o,t[s>>2]=t[d>>2],t[s+4>>2]=t[d+4>>2],jw(r,s,e),e=(t[n>>2]|0)+12|0,t[n>>2]=e):(n7(k,_,y),e=t[n>>2]|0),h=T,((e-(t[k>>2]|0)|0)/12|0)+-1|0}function jw(e,n,r){e=e|0,n=n|0,r=r|0;var o=0;o=t[n+4>>2]|0,t[e>>2]=t[n>>2],t[e+4>>2]=o,t[e+8>>2]=r}function n7(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0,_=0,y=0,k=0,T=0,P=0,q=0;if(k=h,h=h+48|0,o=k+32|0,d=k+24|0,_=k,y=e+4|0,s=(((t[y>>2]|0)-(t[e>>2]|0)|0)/12|0)+1|0,l=r7(e)|0,l>>>0>>0)$n(e);else{T=t[e>>2]|0,q=((t[e+8>>2]|0)-T|0)/12|0,P=q<<1,i7(_,q>>>0>>1>>>0?P>>>0>>0?s:P:l,((t[y>>2]|0)-T|0)/12|0,e+8|0),y=_+8|0,l=t[y>>2]|0,s=t[n+4>>2]|0,r=t[r>>2]|0,t[d>>2]=t[n>>2],t[d+4>>2]=s,t[o>>2]=t[d>>2],t[o+4>>2]=t[d+4>>2],jw(l,o,r),t[y>>2]=(t[y>>2]|0)+12,o7(e,_),u7(_),h=k;return}}function r7(e){return e=e|0,357913941}function i7(e,n,r,o){e=e|0,n=n|0,r=r|0,o=o|0;var s=0;t[e+12>>2]=0,t[e+16>>2]=o;do if(n)if(n>>>0>357913941)_n();else{s=Tt(n*12|0)|0;break}else s=0;while(0);t[e>>2]=s,o=s+(r*12|0)|0,t[e+8>>2]=o,t[e+4>>2]=o,t[e+12>>2]=s+(n*12|0)}function o7(e,n){e=e|0,n=n|0;var r=0,o=0,s=0,l=0,d=0;o=t[e>>2]|0,d=e+4|0,l=n+4|0,s=(t[d>>2]|0)-o|0,r=(t[l>>2]|0)+(((s|0)/-12|0)*12|0)|0,t[l>>2]=r,(s|0)>0?(vn(r|0,o|0,s|0)|0,o=l,r=t[l>>2]|0):o=l,l=t[e>>2]|0,t[e>>2]=r,t[o>>2]=l,l=n+8|0,s=t[d>>2]|0,t[d>>2]=t[l>>2],t[l>>2]=s,l=e+8|0,d=n+12|0,e=t[l>>2]|0,t[l>>2]=t[d>>2],t[d>>2]=e,t[n>>2]=t[o>>2]}function u7(e){e=e|0;var n=0,r=0,o=0;n=t[e+4>>2]|0,r=e+8|0,o=t[r>>2]|0,(o|0)!=(n|0)&&(t[r>>2]=o+(~(((o+-12-n|0)>>>0)/12|0)*12|0)),e=t[e>>2]|0,e|0&&Ve(e)}function Uw(e){e=e|0,f7(e)}function s7(e){e=e|0,l7(e+24|0)}function l7(e){e=e|0;var n=0,r=0,o=0;r=t[e>>2]|0,o=r,r|0&&(e=e+4|0,n=t[e>>2]|0,(n|0)!=(r|0)&&(t[e>>2]=n+(~(((n+-12-o|0)>>>0)/12|0)*12|0)),Ve(r))}function f7(e){e=e|0;var n=0;n=An()|0,Nn(e,2,6,n,c7()|0,1),t[e+24>>2]=0,t[e+28>>2]=0,t[e+32>>2]=0}function c7(){return 1364}function a7(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0;return o=h,h=h+16|0,s=o+8|0,l=o,d=d7(e)|0,e=t[d+4>>2]|0,t[l>>2]=t[d>>2],t[l+4>>2]=e,t[s>>2]=t[l>>2],t[s+4>>2]=t[l+4>>2],r=p7(n,s,r)|0,h=o,r|0}function d7(e){return e=e|0,(t[(E4()|0)+24>>2]|0)+(e*12|0)|0}function p7(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0;return l=h,h=h+16|0,s=l,o=t[n>>2]|0,n=t[n+4>>2]|0,e=e+(n>>1)|0,n&1&&(o=t[(t[e>>2]|0)+o>>2]|0),ts(s,r),s=ns(s,r)|0,s=ip(J4[o&15](e,s)|0)|0,h=l,s|0}function h7(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0,_=0;o=h,h=h+16|0,s=o+8|0,l=o,_=t[r>>2]|0,d=t[r+4>>2]|0,r=Zn(n)|0,t[l>>2]=_,t[l+4>>2]=d,t[s>>2]=t[l>>2],t[s+4>>2]=t[l+4>>2],m7(e,r,s,0),h=o}function m7(e,n,r,o){e=e|0,n=n|0,r=r|0,o=o|0;var s=0,l=0,d=0,_=0,y=0,k=0,T=0;s=h,h=h+32|0,l=s+16|0,T=s+8|0,_=s,k=t[r>>2]|0,y=t[r+4>>2]|0,d=t[e>>2]|0,e=S4()|0,t[T>>2]=k,t[T+4>>2]=y,t[l>>2]=t[T>>2],t[l+4>>2]=t[T+4>>2],r=v7(l)|0,t[_>>2]=k,t[_+4>>2]=y,t[l>>2]=t[_>>2],t[l+4>>2]=t[_+4>>2],ur(d,n,e,r,g7(l,o)|0,o),h=s}function S4(){var e=0,n=0;if(c[7848]|0||(zw(10136),Bt(49,10136,Q|0)|0,n=7848,t[n>>2]=1,t[n+4>>2]=0),!(Dn(10136)|0)){e=10136,n=e+36|0;do t[e>>2]=0,e=e+4|0;while((e|0)<(n|0));zw(10136)}return 10136}function v7(e){return e=e|0,0}function g7(e,n){e=e|0,n=n|0;var r=0,o=0,s=0,l=0,d=0,_=0,y=0,k=0,T=0,P=0;return T=h,h=h+32|0,s=T+24|0,d=T+16|0,_=T,y=T+8|0,l=t[e>>2]|0,o=t[e+4>>2]|0,t[_>>2]=l,t[_+4>>2]=o,P=S4()|0,k=P+24|0,e=Lt(n,4)|0,t[y>>2]=e,n=P+28|0,r=t[n>>2]|0,r>>>0<(t[P+32>>2]|0)>>>0?(t[d>>2]=l,t[d+4>>2]=o,t[s>>2]=t[d>>2],t[s+4>>2]=t[d+4>>2],qw(r,s,e),e=(t[n>>2]|0)+12|0,t[n>>2]=e):(_7(k,_,y),e=t[n>>2]|0),h=T,((e-(t[k>>2]|0)|0)/12|0)+-1|0}function qw(e,n,r){e=e|0,n=n|0,r=r|0;var o=0;o=t[n+4>>2]|0,t[e>>2]=t[n>>2],t[e+4>>2]=o,t[e+8>>2]=r}function _7(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0,_=0,y=0,k=0,T=0,P=0,q=0;if(k=h,h=h+48|0,o=k+32|0,d=k+24|0,_=k,y=e+4|0,s=(((t[y>>2]|0)-(t[e>>2]|0)|0)/12|0)+1|0,l=y7(e)|0,l>>>0>>0)$n(e);else{T=t[e>>2]|0,q=((t[e+8>>2]|0)-T|0)/12|0,P=q<<1,w7(_,q>>>0>>1>>>0?P>>>0>>0?s:P:l,((t[y>>2]|0)-T|0)/12|0,e+8|0),y=_+8|0,l=t[y>>2]|0,s=t[n+4>>2]|0,r=t[r>>2]|0,t[d>>2]=t[n>>2],t[d+4>>2]=s,t[o>>2]=t[d>>2],t[o+4>>2]=t[d+4>>2],qw(l,o,r),t[y>>2]=(t[y>>2]|0)+12,D7(e,_),E7(_),h=k;return}}function y7(e){return e=e|0,357913941}function w7(e,n,r,o){e=e|0,n=n|0,r=r|0,o=o|0;var s=0;t[e+12>>2]=0,t[e+16>>2]=o;do if(n)if(n>>>0>357913941)_n();else{s=Tt(n*12|0)|0;break}else s=0;while(0);t[e>>2]=s,o=s+(r*12|0)|0,t[e+8>>2]=o,t[e+4>>2]=o,t[e+12>>2]=s+(n*12|0)}function D7(e,n){e=e|0,n=n|0;var r=0,o=0,s=0,l=0,d=0;o=t[e>>2]|0,d=e+4|0,l=n+4|0,s=(t[d>>2]|0)-o|0,r=(t[l>>2]|0)+(((s|0)/-12|0)*12|0)|0,t[l>>2]=r,(s|0)>0?(vn(r|0,o|0,s|0)|0,o=l,r=t[l>>2]|0):o=l,l=t[e>>2]|0,t[e>>2]=r,t[o>>2]=l,l=n+8|0,s=t[d>>2]|0,t[d>>2]=t[l>>2],t[l>>2]=s,l=e+8|0,d=n+12|0,e=t[l>>2]|0,t[l>>2]=t[d>>2],t[d>>2]=e,t[n>>2]=t[o>>2]}function E7(e){e=e|0;var n=0,r=0,o=0;n=t[e+4>>2]|0,r=e+8|0,o=t[r>>2]|0,(o|0)!=(n|0)&&(t[r>>2]=o+(~(((o+-12-n|0)>>>0)/12|0)*12|0)),e=t[e>>2]|0,e|0&&Ve(e)}function zw(e){e=e|0,T7(e)}function S7(e){e=e|0,C7(e+24|0)}function C7(e){e=e|0;var n=0,r=0,o=0;r=t[e>>2]|0,o=r,r|0&&(e=e+4|0,n=t[e>>2]|0,(n|0)!=(r|0)&&(t[e>>2]=n+(~(((n+-12-o|0)>>>0)/12|0)*12|0)),Ve(r))}function T7(e){e=e|0;var n=0;n=An()|0,Nn(e,2,9,n,x7()|0,1),t[e+24>>2]=0,t[e+28>>2]=0,t[e+32>>2]=0}function x7(){return 1372}function k7(e,n,r){e=e|0,n=n|0,r=+r;var o=0,s=0,l=0,d=0;o=h,h=h+16|0,s=o+8|0,l=o,d=A7(e)|0,e=t[d+4>>2]|0,t[l>>2]=t[d>>2],t[l+4>>2]=e,t[s>>2]=t[l>>2],t[s+4>>2]=t[l+4>>2],O7(n,s,r),h=o}function A7(e){return e=e|0,(t[(S4()|0)+24>>2]|0)+(e*12|0)|0}function O7(e,n,r){e=e|0,n=n|0,r=+r;var o=0,s=0,l=0,d=tt;l=h,h=h+16|0,s=l,o=t[n>>2]|0,n=t[n+4>>2]|0,e=e+(n>>1)|0,n&1&&(o=t[(t[e>>2]|0)+o>>2]|0),I7(s,r),d=w(P7(s,r)),tD[o&1](e,d),h=l}function I7(e,n){e=e|0,n=+n}function P7(e,n){return e=e|0,n=+n,w(M7(n))}function M7(e){return e=+e,w(e)}function F7(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0,_=0;o=h,h=h+16|0,s=o+8|0,l=o,_=t[r>>2]|0,d=t[r+4>>2]|0,r=Zn(n)|0,t[l>>2]=_,t[l+4>>2]=d,t[s>>2]=t[l>>2],t[s+4>>2]=t[l+4>>2],L7(e,r,s,0),h=o}function L7(e,n,r,o){e=e|0,n=n|0,r=r|0,o=o|0;var s=0,l=0,d=0,_=0,y=0,k=0,T=0;s=h,h=h+32|0,l=s+16|0,T=s+8|0,_=s,k=t[r>>2]|0,y=t[r+4>>2]|0,d=t[e>>2]|0,e=C4()|0,t[T>>2]=k,t[T+4>>2]=y,t[l>>2]=t[T>>2],t[l+4>>2]=t[T+4>>2],r=R7(l)|0,t[_>>2]=k,t[_+4>>2]=y,t[l>>2]=t[_>>2],t[l+4>>2]=t[_+4>>2],ur(d,n,e,r,N7(l,o)|0,o),h=s}function C4(){var e=0,n=0;if(c[7856]|0||(Hw(10172),Bt(50,10172,Q|0)|0,n=7856,t[n>>2]=1,t[n+4>>2]=0),!(Dn(10172)|0)){e=10172,n=e+36|0;do t[e>>2]=0,e=e+4|0;while((e|0)<(n|0));Hw(10172)}return 10172}function R7(e){return e=e|0,0}function N7(e,n){e=e|0,n=n|0;var r=0,o=0,s=0,l=0,d=0,_=0,y=0,k=0,T=0,P=0;return T=h,h=h+32|0,s=T+24|0,d=T+16|0,_=T,y=T+8|0,l=t[e>>2]|0,o=t[e+4>>2]|0,t[_>>2]=l,t[_+4>>2]=o,P=C4()|0,k=P+24|0,e=Lt(n,4)|0,t[y>>2]=e,n=P+28|0,r=t[n>>2]|0,r>>>0<(t[P+32>>2]|0)>>>0?(t[d>>2]=l,t[d+4>>2]=o,t[s>>2]=t[d>>2],t[s+4>>2]=t[d+4>>2],Ww(r,s,e),e=(t[n>>2]|0)+12|0,t[n>>2]=e):(B7(k,_,y),e=t[n>>2]|0),h=T,((e-(t[k>>2]|0)|0)/12|0)+-1|0}function Ww(e,n,r){e=e|0,n=n|0,r=r|0;var o=0;o=t[n+4>>2]|0,t[e>>2]=t[n>>2],t[e+4>>2]=o,t[e+8>>2]=r}function B7(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0,_=0,y=0,k=0,T=0,P=0,q=0;if(k=h,h=h+48|0,o=k+32|0,d=k+24|0,_=k,y=e+4|0,s=(((t[y>>2]|0)-(t[e>>2]|0)|0)/12|0)+1|0,l=j7(e)|0,l>>>0>>0)$n(e);else{T=t[e>>2]|0,q=((t[e+8>>2]|0)-T|0)/12|0,P=q<<1,U7(_,q>>>0>>1>>>0?P>>>0>>0?s:P:l,((t[y>>2]|0)-T|0)/12|0,e+8|0),y=_+8|0,l=t[y>>2]|0,s=t[n+4>>2]|0,r=t[r>>2]|0,t[d>>2]=t[n>>2],t[d+4>>2]=s,t[o>>2]=t[d>>2],t[o+4>>2]=t[d+4>>2],Ww(l,o,r),t[y>>2]=(t[y>>2]|0)+12,q7(e,_),z7(_),h=k;return}}function j7(e){return e=e|0,357913941}function U7(e,n,r,o){e=e|0,n=n|0,r=r|0,o=o|0;var s=0;t[e+12>>2]=0,t[e+16>>2]=o;do if(n)if(n>>>0>357913941)_n();else{s=Tt(n*12|0)|0;break}else s=0;while(0);t[e>>2]=s,o=s+(r*12|0)|0,t[e+8>>2]=o,t[e+4>>2]=o,t[e+12>>2]=s+(n*12|0)}function q7(e,n){e=e|0,n=n|0;var r=0,o=0,s=0,l=0,d=0;o=t[e>>2]|0,d=e+4|0,l=n+4|0,s=(t[d>>2]|0)-o|0,r=(t[l>>2]|0)+(((s|0)/-12|0)*12|0)|0,t[l>>2]=r,(s|0)>0?(vn(r|0,o|0,s|0)|0,o=l,r=t[l>>2]|0):o=l,l=t[e>>2]|0,t[e>>2]=r,t[o>>2]=l,l=n+8|0,s=t[d>>2]|0,t[d>>2]=t[l>>2],t[l>>2]=s,l=e+8|0,d=n+12|0,e=t[l>>2]|0,t[l>>2]=t[d>>2],t[d>>2]=e,t[n>>2]=t[o>>2]}function z7(e){e=e|0;var n=0,r=0,o=0;n=t[e+4>>2]|0,r=e+8|0,o=t[r>>2]|0,(o|0)!=(n|0)&&(t[r>>2]=o+(~(((o+-12-n|0)>>>0)/12|0)*12|0)),e=t[e>>2]|0,e|0&&Ve(e)}function Hw(e){e=e|0,b7(e)}function W7(e){e=e|0,H7(e+24|0)}function H7(e){e=e|0;var n=0,r=0,o=0;r=t[e>>2]|0,o=r,r|0&&(e=e+4|0,n=t[e>>2]|0,(n|0)!=(r|0)&&(t[e>>2]=n+(~(((n+-12-o|0)>>>0)/12|0)*12|0)),Ve(r))}function b7(e){e=e|0;var n=0;n=An()|0,Nn(e,2,3,n,G7()|0,2),t[e+24>>2]=0,t[e+28>>2]=0,t[e+32>>2]=0}function G7(){return 1380}function V7(e,n,r,o){e=e|0,n=n|0,r=r|0,o=o|0;var s=0,l=0,d=0,_=0;s=h,h=h+16|0,l=s+8|0,d=s,_=Y7(e)|0,e=t[_+4>>2]|0,t[d>>2]=t[_>>2],t[d+4>>2]=e,t[l>>2]=t[d>>2],t[l+4>>2]=t[d+4>>2],$7(n,l,r,o),h=s}function Y7(e){return e=e|0,(t[(C4()|0)+24>>2]|0)+(e*12|0)|0}function $7(e,n,r,o){e=e|0,n=n|0,r=r|0,o=o|0;var s=0,l=0,d=0,_=0;_=h,h=h+16|0,l=_+1|0,d=_,s=t[n>>2]|0,n=t[n+4>>2]|0,e=e+(n>>1)|0,n&1&&(s=t[(t[e>>2]|0)+s>>2]|0),ts(l,r),l=ns(l,r)|0,K7(d,o),d=X7(d,o)|0,X1[s&15](e,l,d),h=_}function K7(e,n){e=e|0,n=n|0}function X7(e,n){return e=e|0,n=n|0,J7(n)|0}function J7(e){return e=e|0,(e|0)!=0|0}function Q7(e,n,r,o){e=e|0,n=n|0,r=r|0,o=o|0;var s=0,l=0;l=t[e>>2]|0,s=T4()|0,e=Z7(r)|0,ur(l,n,s,e,ek(r,o)|0,o)}function T4(){var e=0,n=0;if(c[7864]|0||(Gw(10208),Bt(51,10208,Q|0)|0,n=7864,t[n>>2]=1,t[n+4>>2]=0),!(Dn(10208)|0)){e=10208,n=e+36|0;do t[e>>2]=0,e=e+4|0;while((e|0)<(n|0));Gw(10208)}return 10208}function Z7(e){return e=e|0,e|0}function ek(e,n){e=e|0,n=n|0;var r=0,o=0,s=0,l=0,d=0,_=0,y=0;return _=h,h=h+16|0,s=_,l=_+4|0,t[s>>2]=e,y=T4()|0,d=y+24|0,n=Lt(n,4)|0,t[l>>2]=n,r=y+28|0,o=t[r>>2]|0,o>>>0<(t[y+32>>2]|0)>>>0?(bw(o,e,n),n=(t[r>>2]|0)+8|0,t[r>>2]=n):(tk(d,s,l),n=t[r>>2]|0),h=_,(n-(t[d>>2]|0)>>3)+-1|0}function bw(e,n,r){e=e|0,n=n|0,r=r|0,t[e>>2]=n,t[e+4>>2]=r}function tk(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0,_=0,y=0,k=0,T=0;if(_=h,h=h+32|0,s=_,l=e+4|0,d=((t[l>>2]|0)-(t[e>>2]|0)>>3)+1|0,o=nk(e)|0,o>>>0>>0)$n(e);else{y=t[e>>2]|0,T=(t[e+8>>2]|0)-y|0,k=T>>2,rk(s,T>>3>>>0>>1>>>0?k>>>0>>0?d:k:o,(t[l>>2]|0)-y>>3,e+8|0),d=s+8|0,bw(t[d>>2]|0,t[n>>2]|0,t[r>>2]|0),t[d>>2]=(t[d>>2]|0)+8,ik(e,s),ok(s),h=_;return}}function nk(e){return e=e|0,536870911}function rk(e,n,r,o){e=e|0,n=n|0,r=r|0,o=o|0;var s=0;t[e+12>>2]=0,t[e+16>>2]=o;do if(n)if(n>>>0>536870911)_n();else{s=Tt(n<<3)|0;break}else s=0;while(0);t[e>>2]=s,o=s+(r<<3)|0,t[e+8>>2]=o,t[e+4>>2]=o,t[e+12>>2]=s+(n<<3)}function ik(e,n){e=e|0,n=n|0;var r=0,o=0,s=0,l=0,d=0;o=t[e>>2]|0,d=e+4|0,l=n+4|0,s=(t[d>>2]|0)-o|0,r=(t[l>>2]|0)+(0-(s>>3)<<3)|0,t[l>>2]=r,(s|0)>0?(vn(r|0,o|0,s|0)|0,o=l,r=t[l>>2]|0):o=l,l=t[e>>2]|0,t[e>>2]=r,t[o>>2]=l,l=n+8|0,s=t[d>>2]|0,t[d>>2]=t[l>>2],t[l>>2]=s,l=e+8|0,d=n+12|0,e=t[l>>2]|0,t[l>>2]=t[d>>2],t[d>>2]=e,t[n>>2]=t[o>>2]}function ok(e){e=e|0;var n=0,r=0,o=0;n=t[e+4>>2]|0,r=e+8|0,o=t[r>>2]|0,(o|0)!=(n|0)&&(t[r>>2]=o+(~((o+-8-n|0)>>>3)<<3)),e=t[e>>2]|0,e|0&&Ve(e)}function Gw(e){e=e|0,lk(e)}function uk(e){e=e|0,sk(e+24|0)}function sk(e){e=e|0;var n=0,r=0,o=0;r=t[e>>2]|0,o=r,r|0&&(e=e+4|0,n=t[e>>2]|0,(n|0)!=(r|0)&&(t[e>>2]=n+(~((n+-8-o|0)>>>3)<<3)),Ve(r))}function lk(e){e=e|0;var n=0;n=An()|0,Nn(e,1,24,n,fk()|0,1),t[e+24>>2]=0,t[e+28>>2]=0,t[e+32>>2]=0}function fk(){return 1392}function ck(e,n){e=e|0,n=n|0,dk(t[(ak(e)|0)>>2]|0,n)}function ak(e){return e=e|0,(t[(T4()|0)+24>>2]|0)+(e<<3)|0}function dk(e,n){e=e|0,n=n|0;var r=0,o=0;r=h,h=h+16|0,o=r,Lw(o,n),n=Rw(o,n)|0,Nl[e&127](n),h=r}function pk(e,n,r,o){e=e|0,n=n|0,r=r|0,o=o|0;var s=0,l=0;l=t[e>>2]|0,s=x4()|0,e=hk(r)|0,ur(l,n,s,e,mk(r,o)|0,o)}function x4(){var e=0,n=0;if(c[7872]|0||(Yw(10244),Bt(52,10244,Q|0)|0,n=7872,t[n>>2]=1,t[n+4>>2]=0),!(Dn(10244)|0)){e=10244,n=e+36|0;do t[e>>2]=0,e=e+4|0;while((e|0)<(n|0));Yw(10244)}return 10244}function hk(e){return e=e|0,e|0}function mk(e,n){e=e|0,n=n|0;var r=0,o=0,s=0,l=0,d=0,_=0,y=0;return _=h,h=h+16|0,s=_,l=_+4|0,t[s>>2]=e,y=x4()|0,d=y+24|0,n=Lt(n,4)|0,t[l>>2]=n,r=y+28|0,o=t[r>>2]|0,o>>>0<(t[y+32>>2]|0)>>>0?(Vw(o,e,n),n=(t[r>>2]|0)+8|0,t[r>>2]=n):(vk(d,s,l),n=t[r>>2]|0),h=_,(n-(t[d>>2]|0)>>3)+-1|0}function Vw(e,n,r){e=e|0,n=n|0,r=r|0,t[e>>2]=n,t[e+4>>2]=r}function vk(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0,_=0,y=0,k=0,T=0;if(_=h,h=h+32|0,s=_,l=e+4|0,d=((t[l>>2]|0)-(t[e>>2]|0)>>3)+1|0,o=gk(e)|0,o>>>0>>0)$n(e);else{y=t[e>>2]|0,T=(t[e+8>>2]|0)-y|0,k=T>>2,_k(s,T>>3>>>0>>1>>>0?k>>>0>>0?d:k:o,(t[l>>2]|0)-y>>3,e+8|0),d=s+8|0,Vw(t[d>>2]|0,t[n>>2]|0,t[r>>2]|0),t[d>>2]=(t[d>>2]|0)+8,yk(e,s),wk(s),h=_;return}}function gk(e){return e=e|0,536870911}function _k(e,n,r,o){e=e|0,n=n|0,r=r|0,o=o|0;var s=0;t[e+12>>2]=0,t[e+16>>2]=o;do if(n)if(n>>>0>536870911)_n();else{s=Tt(n<<3)|0;break}else s=0;while(0);t[e>>2]=s,o=s+(r<<3)|0,t[e+8>>2]=o,t[e+4>>2]=o,t[e+12>>2]=s+(n<<3)}function yk(e,n){e=e|0,n=n|0;var r=0,o=0,s=0,l=0,d=0;o=t[e>>2]|0,d=e+4|0,l=n+4|0,s=(t[d>>2]|0)-o|0,r=(t[l>>2]|0)+(0-(s>>3)<<3)|0,t[l>>2]=r,(s|0)>0?(vn(r|0,o|0,s|0)|0,o=l,r=t[l>>2]|0):o=l,l=t[e>>2]|0,t[e>>2]=r,t[o>>2]=l,l=n+8|0,s=t[d>>2]|0,t[d>>2]=t[l>>2],t[l>>2]=s,l=e+8|0,d=n+12|0,e=t[l>>2]|0,t[l>>2]=t[d>>2],t[d>>2]=e,t[n>>2]=t[o>>2]}function wk(e){e=e|0;var n=0,r=0,o=0;n=t[e+4>>2]|0,r=e+8|0,o=t[r>>2]|0,(o|0)!=(n|0)&&(t[r>>2]=o+(~((o+-8-n|0)>>>3)<<3)),e=t[e>>2]|0,e|0&&Ve(e)}function Yw(e){e=e|0,Sk(e)}function Dk(e){e=e|0,Ek(e+24|0)}function Ek(e){e=e|0;var n=0,r=0,o=0;r=t[e>>2]|0,o=r,r|0&&(e=e+4|0,n=t[e>>2]|0,(n|0)!=(r|0)&&(t[e>>2]=n+(~((n+-8-o|0)>>>3)<<3)),Ve(r))}function Sk(e){e=e|0;var n=0;n=An()|0,Nn(e,1,16,n,Ck()|0,0),t[e+24>>2]=0,t[e+28>>2]=0,t[e+32>>2]=0}function Ck(){return 1400}function Tk(e){return e=e|0,kk(t[(xk(e)|0)>>2]|0)|0}function xk(e){return e=e|0,(t[(x4()|0)+24>>2]|0)+(e<<3)|0}function kk(e){return e=e|0,Ak(ph[e&7]()|0)|0}function Ak(e){return e=e|0,e|0}function Ok(){var e=0;return c[7880]|0||(Nk(10280),Bt(25,10280,Q|0)|0,e=7880,t[e>>2]=1,t[e+4>>2]=0),10280}function Ik(e,n){e=e|0,n=n|0,t[e>>2]=Pk()|0,t[e+4>>2]=Mk()|0,t[e+12>>2]=n,t[e+8>>2]=Fk()|0,t[e+32>>2]=4}function Pk(){return 11711}function Mk(){return 1356}function Fk(){return eh()|0}function Lk(e,n,r,o){e=e|0,n=n|0,r=r|0,o=o|0,(Sf(o,896)|0)==512?r|0&&(Rk(r),Ve(r)):n|0&&(Gi(n),Ve(n))}function Rk(e){e=e|0,e=t[e+4>>2]|0,e|0&&Tf(e)}function Nk(e){e=e|0,Ys(e)}function Bk(e){e=e|0,jk(e,4920),Uk(e)|0,qk(e)|0}function jk(e,n){e=e|0,n=n|0;var r=0;r=Up()|0,t[e>>2]=r,sA(r,n),Cf(t[e>>2]|0)}function Uk(e){e=e|0;var n=0;return n=t[e>>2]|0,uc(n,Jk()|0),e|0}function qk(e){e=e|0;var n=0;return n=t[e>>2]|0,uc(n,zk()|0),e|0}function zk(){var e=0;return c[7888]|0||($w(10328),Bt(53,10328,Q|0)|0,e=7888,t[e>>2]=1,t[e+4>>2]=0),Dn(10328)|0||$w(10328),10328}function uc(e,n){e=e|0,n=n|0,ur(e,0,n,0,0,0)}function $w(e){e=e|0,bk(e),sc(e,10)}function Wk(e){e=e|0,Hk(e+24|0)}function Hk(e){e=e|0;var n=0,r=0,o=0;r=t[e>>2]|0,o=r,r|0&&(e=e+4|0,n=t[e>>2]|0,(n|0)!=(r|0)&&(t[e>>2]=n+(~((n+-8-o|0)>>>3)<<3)),Ve(r))}function bk(e){e=e|0;var n=0;n=An()|0,Nn(e,5,1,n,$k()|0,2),t[e+24>>2]=0,t[e+28>>2]=0,t[e+32>>2]=0}function Gk(e,n,r){e=e|0,n=n|0,r=+r,Vk(e,n,r)}function sc(e,n){e=e|0,n=n|0,t[e+20>>2]=n}function Vk(e,n,r){e=e|0,n=n|0,r=+r;var o=0,s=0,l=0,d=0,_=0;o=h,h=h+16|0,l=o+8|0,_=o+13|0,s=o,d=o+12|0,ts(_,n),t[l>>2]=ns(_,n)|0,wu(d,r),L[s>>3]=+Du(d,r),Yk(e,l,s),h=o}function Yk(e,n,r){e=e|0,n=n|0,r=r|0,M(e+8|0,t[n>>2]|0,+L[r>>3]),c[e+24>>0]=1}function $k(){return 1404}function Kk(e,n){return e=e|0,n=+n,Xk(e,n)|0}function Xk(e,n){e=e|0,n=+n;var r=0,o=0,s=0,l=0,d=0,_=0,y=0;return o=h,h=h+16|0,l=o+4|0,d=o+8|0,_=o,s=Qo(8)|0,r=s,y=Tt(16)|0,ts(l,e),e=ns(l,e)|0,wu(d,n),M(y,e,+Du(d,n)),d=r+4|0,t[d>>2]=y,e=Tt(8)|0,d=t[d>>2]|0,t[_>>2]=0,t[l>>2]=t[_>>2],P1(e,d,l),t[s>>2]=e,h=o,r|0}function Jk(){var e=0;return c[7896]|0||(Kw(10364),Bt(54,10364,Q|0)|0,e=7896,t[e>>2]=1,t[e+4>>2]=0),Dn(10364)|0||Kw(10364),10364}function Kw(e){e=e|0,eA(e),sc(e,55)}function Qk(e){e=e|0,Zk(e+24|0)}function Zk(e){e=e|0;var n=0,r=0,o=0;r=t[e>>2]|0,o=r,r|0&&(e=e+4|0,n=t[e>>2]|0,(n|0)!=(r|0)&&(t[e>>2]=n+(~((n+-8-o|0)>>>3)<<3)),Ve(r))}function eA(e){e=e|0;var n=0;n=An()|0,Nn(e,5,4,n,iA()|0,0),t[e+24>>2]=0,t[e+28>>2]=0,t[e+32>>2]=0}function tA(e){e=e|0,nA(e)}function nA(e){e=e|0,rA(e)}function rA(e){e=e|0,Xw(e+8|0),c[e+24>>0]=1}function Xw(e){e=e|0,t[e>>2]=0,L[e+8>>3]=0}function iA(){return 1424}function oA(){return uA()|0}function uA(){var e=0,n=0,r=0,o=0,s=0,l=0,d=0;return n=h,h=h+16|0,s=n+4|0,d=n,r=Qo(8)|0,e=r,o=Tt(16)|0,Xw(o),l=e+4|0,t[l>>2]=o,o=Tt(8)|0,l=t[l>>2]|0,t[d>>2]=0,t[s>>2]=t[d>>2],P1(o,l,s),t[r>>2]=o,h=n,e|0}function sA(e,n){e=e|0,n=n|0,t[e>>2]=lA()|0,t[e+4>>2]=fA()|0,t[e+12>>2]=n,t[e+8>>2]=cA()|0,t[e+32>>2]=5}function lA(){return 11710}function fA(){return 1416}function cA(){return th()|0}function aA(e,n,r,o){e=e|0,n=n|0,r=r|0,o=o|0,(Sf(o,896)|0)==512?r|0&&(dA(r),Ve(r)):n|0&&Ve(n)}function dA(e){e=e|0,e=t[e+4>>2]|0,e|0&&Tf(e)}function th(){var e=0;return c[7904]|0||(t[2600]=pA()|0,t[2601]=0,e=7904,t[e>>2]=1,t[e+4>>2]=0),10400}function pA(){return t[357]|0}function hA(e){e=e|0,mA(e,4926),vA(e)|0}function mA(e,n){e=e|0,n=n|0;var r=0;r=u1()|0,t[e>>2]=r,kA(r,n),Cf(t[e>>2]|0)}function vA(e){e=e|0;var n=0;return n=t[e>>2]|0,uc(n,gA()|0),e|0}function gA(){var e=0;return c[7912]|0||(Jw(10412),Bt(56,10412,Q|0)|0,e=7912,t[e>>2]=1,t[e+4>>2]=0),Dn(10412)|0||Jw(10412),10412}function Jw(e){e=e|0,wA(e),sc(e,57)}function _A(e){e=e|0,yA(e+24|0)}function yA(e){e=e|0;var n=0,r=0,o=0;r=t[e>>2]|0,o=r,r|0&&(e=e+4|0,n=t[e>>2]|0,(n|0)!=(r|0)&&(t[e>>2]=n+(~((n+-8-o|0)>>>3)<<3)),Ve(r))}function wA(e){e=e|0;var n=0;n=An()|0,Nn(e,5,5,n,CA()|0,0),t[e+24>>2]=0,t[e+28>>2]=0,t[e+32>>2]=0}function DA(e){e=e|0,EA(e)}function EA(e){e=e|0,SA(e)}function SA(e){e=e|0;var n=0,r=0;n=e+8|0,r=n+48|0;do t[n>>2]=0,n=n+4|0;while((n|0)<(r|0));c[e+56>>0]=1}function CA(){return 1432}function TA(){return xA()|0}function xA(){var e=0,n=0,r=0,o=0,s=0,l=0,d=0,_=0;d=h,h=h+16|0,e=d+4|0,n=d,r=Qo(8)|0,o=r,s=Tt(48)|0,l=s,_=l+48|0;do t[l>>2]=0,l=l+4|0;while((l|0)<(_|0));return l=o+4|0,t[l>>2]=s,_=Tt(8)|0,l=t[l>>2]|0,t[n>>2]=0,t[e>>2]=t[n>>2],Wd(_,l,e),t[r>>2]=_,h=d,o|0}function kA(e,n){e=e|0,n=n|0,t[e>>2]=AA()|0,t[e+4>>2]=OA()|0,t[e+12>>2]=n,t[e+8>>2]=IA()|0,t[e+32>>2]=6}function AA(){return 11704}function OA(){return 1436}function IA(){return th()|0}function PA(e,n,r,o){e=e|0,n=n|0,r=r|0,o=o|0,(Sf(o,896)|0)==512?r|0&&(MA(r),Ve(r)):n|0&&Ve(n)}function MA(e){e=e|0,e=t[e+4>>2]|0,e|0&&Tf(e)}function FA(e){e=e|0,LA(e,4933),RA(e)|0,NA(e)|0}function LA(e,n){e=e|0,n=n|0;var r=0;r=uO()|0,t[e>>2]=r,sO(r,n),Cf(t[e>>2]|0)}function RA(e){e=e|0;var n=0;return n=t[e>>2]|0,uc(n,XA()|0),e|0}function NA(e){e=e|0;var n=0;return n=t[e>>2]|0,uc(n,BA()|0),e|0}function BA(){var e=0;return c[7920]|0||(Qw(10452),Bt(58,10452,Q|0)|0,e=7920,t[e>>2]=1,t[e+4>>2]=0),Dn(10452)|0||Qw(10452),10452}function Qw(e){e=e|0,qA(e),sc(e,1)}function jA(e){e=e|0,UA(e+24|0)}function UA(e){e=e|0;var n=0,r=0,o=0;r=t[e>>2]|0,o=r,r|0&&(e=e+4|0,n=t[e>>2]|0,(n|0)!=(r|0)&&(t[e>>2]=n+(~((n+-8-o|0)>>>3)<<3)),Ve(r))}function qA(e){e=e|0;var n=0;n=An()|0,Nn(e,5,1,n,bA()|0,2),t[e+24>>2]=0,t[e+28>>2]=0,t[e+32>>2]=0}function zA(e,n,r){e=e|0,n=+n,r=+r,WA(e,n,r)}function WA(e,n,r){e=e|0,n=+n,r=+r;var o=0,s=0,l=0,d=0,_=0;o=h,h=h+32|0,l=o+8|0,_=o+17|0,s=o,d=o+16|0,wu(_,n),L[l>>3]=+Du(_,n),wu(d,r),L[s>>3]=+Du(d,r),HA(e,l,s),h=o}function HA(e,n,r){e=e|0,n=n|0,r=r|0,Zw(e+8|0,+L[n>>3],+L[r>>3]),c[e+24>>0]=1}function Zw(e,n,r){e=e|0,n=+n,r=+r,L[e>>3]=n,L[e+8>>3]=r}function bA(){return 1472}function GA(e,n){return e=+e,n=+n,VA(e,n)|0}function VA(e,n){e=+e,n=+n;var r=0,o=0,s=0,l=0,d=0,_=0,y=0;return o=h,h=h+16|0,d=o+4|0,_=o+8|0,y=o,s=Qo(8)|0,r=s,l=Tt(16)|0,wu(d,e),e=+Du(d,e),wu(_,n),Zw(l,e,+Du(_,n)),_=r+4|0,t[_>>2]=l,l=Tt(8)|0,_=t[_>>2]|0,t[y>>2]=0,t[d>>2]=t[y>>2],e8(l,_,d),t[s>>2]=l,h=o,r|0}function e8(e,n,r){e=e|0,n=n|0,r=r|0,t[e>>2]=n,r=Tt(16)|0,t[r+4>>2]=0,t[r+8>>2]=0,t[r>>2]=1452,t[r+12>>2]=n,t[e+4>>2]=r}function YA(e){e=e|0,da(e),Ve(e)}function $A(e){e=e|0,e=t[e+12>>2]|0,e|0&&Ve(e)}function KA(e){e=e|0,Ve(e)}function XA(){var e=0;return c[7928]|0||(t8(10488),Bt(59,10488,Q|0)|0,e=7928,t[e>>2]=1,t[e+4>>2]=0),Dn(10488)|0||t8(10488),10488}function t8(e){e=e|0,ZA(e),sc(e,60)}function JA(e){e=e|0,QA(e+24|0)}function QA(e){e=e|0;var n=0,r=0,o=0;r=t[e>>2]|0,o=r,r|0&&(e=e+4|0,n=t[e>>2]|0,(n|0)!=(r|0)&&(t[e>>2]=n+(~((n+-8-o|0)>>>3)<<3)),Ve(r))}function ZA(e){e=e|0;var n=0;n=An()|0,Nn(e,5,6,n,rO()|0,0),t[e+24>>2]=0,t[e+28>>2]=0,t[e+32>>2]=0}function eO(e){e=e|0,tO(e)}function tO(e){e=e|0,nO(e)}function nO(e){e=e|0,n8(e+8|0),c[e+24>>0]=1}function n8(e){e=e|0,t[e>>2]=0,t[e+4>>2]=0,t[e+8>>2]=0,t[e+12>>2]=0}function rO(){return 1492}function iO(){return oO()|0}function oO(){var e=0,n=0,r=0,o=0,s=0,l=0,d=0;return n=h,h=h+16|0,s=n+4|0,d=n,r=Qo(8)|0,e=r,o=Tt(16)|0,n8(o),l=e+4|0,t[l>>2]=o,o=Tt(8)|0,l=t[l>>2]|0,t[d>>2]=0,t[s>>2]=t[d>>2],e8(o,l,s),t[r>>2]=o,h=n,e|0}function uO(){var e=0;return c[7936]|0||(pO(10524),Bt(25,10524,Q|0)|0,e=7936,t[e>>2]=1,t[e+4>>2]=0),10524}function sO(e,n){e=e|0,n=n|0,t[e>>2]=lO()|0,t[e+4>>2]=fO()|0,t[e+12>>2]=n,t[e+8>>2]=cO()|0,t[e+32>>2]=7}function lO(){return 11700}function fO(){return 1484}function cO(){return th()|0}function aO(e,n,r,o){e=e|0,n=n|0,r=r|0,o=o|0,(Sf(o,896)|0)==512?r|0&&(dO(r),Ve(r)):n|0&&Ve(n)}function dO(e){e=e|0,e=t[e+4>>2]|0,e|0&&Tf(e)}function pO(e){e=e|0,Ys(e)}function hO(e,n,r){e=e|0,n=n|0,r=r|0,e=Zn(n)|0,n=mO(r)|0,r=vO(r,0)|0,VO(e,n,r,k4()|0,0)}function mO(e){return e=e|0,e|0}function vO(e,n){e=e|0,n=n|0;var r=0,o=0,s=0,l=0,d=0,_=0,y=0;return _=h,h=h+16|0,s=_,l=_+4|0,t[s>>2]=e,y=k4()|0,d=y+24|0,n=Lt(n,4)|0,t[l>>2]=n,r=y+28|0,o=t[r>>2]|0,o>>>0<(t[y+32>>2]|0)>>>0?(i8(o,e,n),n=(t[r>>2]|0)+8|0,t[r>>2]=n):(SO(d,s,l),n=t[r>>2]|0),h=_,(n-(t[d>>2]|0)>>3)+-1|0}function k4(){var e=0,n=0;if(c[7944]|0||(r8(10568),Bt(61,10568,Q|0)|0,n=7944,t[n>>2]=1,t[n+4>>2]=0),!(Dn(10568)|0)){e=10568,n=e+36|0;do t[e>>2]=0,e=e+4|0;while((e|0)<(n|0));r8(10568)}return 10568}function r8(e){e=e|0,yO(e)}function gO(e){e=e|0,_O(e+24|0)}function _O(e){e=e|0;var n=0,r=0,o=0;r=t[e>>2]|0,o=r,r|0&&(e=e+4|0,n=t[e>>2]|0,(n|0)!=(r|0)&&(t[e>>2]=n+(~((n+-8-o|0)>>>3)<<3)),Ve(r))}function yO(e){e=e|0;var n=0;n=An()|0,Nn(e,1,17,n,Dp()|0,0),t[e+24>>2]=0,t[e+28>>2]=0,t[e+32>>2]=0}function wO(e){return e=e|0,EO(t[(DO(e)|0)>>2]|0)|0}function DO(e){return e=e|0,(t[(k4()|0)+24>>2]|0)+(e<<3)|0}function EO(e){return e=e|0,ea(ph[e&7]()|0)|0}function i8(e,n,r){e=e|0,n=n|0,r=r|0,t[e>>2]=n,t[e+4>>2]=r}function SO(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0,_=0,y=0,k=0,T=0;if(_=h,h=h+32|0,s=_,l=e+4|0,d=((t[l>>2]|0)-(t[e>>2]|0)>>3)+1|0,o=CO(e)|0,o>>>0>>0)$n(e);else{y=t[e>>2]|0,T=(t[e+8>>2]|0)-y|0,k=T>>2,TO(s,T>>3>>>0>>1>>>0?k>>>0>>0?d:k:o,(t[l>>2]|0)-y>>3,e+8|0),d=s+8|0,i8(t[d>>2]|0,t[n>>2]|0,t[r>>2]|0),t[d>>2]=(t[d>>2]|0)+8,xO(e,s),kO(s),h=_;return}}function CO(e){return e=e|0,536870911}function TO(e,n,r,o){e=e|0,n=n|0,r=r|0,o=o|0;var s=0;t[e+12>>2]=0,t[e+16>>2]=o;do if(n)if(n>>>0>536870911)_n();else{s=Tt(n<<3)|0;break}else s=0;while(0);t[e>>2]=s,o=s+(r<<3)|0,t[e+8>>2]=o,t[e+4>>2]=o,t[e+12>>2]=s+(n<<3)}function xO(e,n){e=e|0,n=n|0;var r=0,o=0,s=0,l=0,d=0;o=t[e>>2]|0,d=e+4|0,l=n+4|0,s=(t[d>>2]|0)-o|0,r=(t[l>>2]|0)+(0-(s>>3)<<3)|0,t[l>>2]=r,(s|0)>0?(vn(r|0,o|0,s|0)|0,o=l,r=t[l>>2]|0):o=l,l=t[e>>2]|0,t[e>>2]=r,t[o>>2]=l,l=n+8|0,s=t[d>>2]|0,t[d>>2]=t[l>>2],t[l>>2]=s,l=e+8|0,d=n+12|0,e=t[l>>2]|0,t[l>>2]=t[d>>2],t[d>>2]=e,t[n>>2]=t[o>>2]}function kO(e){e=e|0;var n=0,r=0,o=0;n=t[e+4>>2]|0,r=e+8|0,o=t[r>>2]|0,(o|0)!=(n|0)&&(t[r>>2]=o+(~((o+-8-n|0)>>>3)<<3)),e=t[e>>2]|0,e|0&&Ve(e)}function AO(){OO()}function OO(){IO(10604)}function IO(e){e=e|0,PO(e,4955)}function PO(e,n){e=e|0,n=n|0;var r=0;r=MO()|0,t[e>>2]=r,FO(r,n),Cf(t[e>>2]|0)}function MO(){var e=0;return c[7952]|0||(WO(10612),Bt(25,10612,Q|0)|0,e=7952,t[e>>2]=1,t[e+4>>2]=0),10612}function FO(e,n){e=e|0,n=n|0,t[e>>2]=BO()|0,t[e+4>>2]=jO()|0,t[e+12>>2]=n,t[e+8>>2]=UO()|0,t[e+32>>2]=8}function Cf(e){e=e|0;var n=0,r=0;n=h,h=h+16|0,r=n,sa()|0,t[r>>2]=e,LO(10608,r),h=n}function sa(){return c[11714]|0||(t[2652]=0,Bt(62,10608,Q|0)|0,c[11714]=1),10608}function LO(e,n){e=e|0,n=n|0;var r=0;r=Tt(8)|0,t[r+4>>2]=t[n>>2],t[r>>2]=t[e>>2],t[e>>2]=r}function RO(e){e=e|0,NO(e)}function NO(e){e=e|0;var n=0,r=0;if(n=t[e>>2]|0,n|0)do r=n,n=t[n>>2]|0,Ve(r);while((n|0)!=0);t[e>>2]=0}function BO(){return 11715}function jO(){return 1496}function UO(){return eh()|0}function qO(e,n,r,o){e=e|0,n=n|0,r=r|0,o=o|0,(Sf(o,896)|0)==512?r|0&&(zO(r),Ve(r)):n|0&&Ve(n)}function zO(e){e=e|0,e=t[e+4>>2]|0,e|0&&Tf(e)}function WO(e){e=e|0,Ys(e)}function HO(e,n){e=e|0,n=n|0;var r=0,o=0;sa()|0,r=t[2652]|0;e:do if(r|0){for(;o=t[r+4>>2]|0,!(o|0?(U8(A4(o)|0,e)|0)==0:0);)if(r=t[r>>2]|0,!r)break e;bO(o,n)}while(0)}function A4(e){return e=e|0,t[e+12>>2]|0}function bO(e,n){e=e|0,n=n|0;var r=0;e=e+36|0,r=t[e>>2]|0,r|0&&(Ju(r),Ve(r)),r=Tt(4)|0,ba(r,n),t[e>>2]=r}function O4(){return c[11716]|0||(t[2664]=0,Bt(63,10656,Q|0)|0,c[11716]=1),10656}function o8(){var e=0;return c[11717]|0?e=t[2665]|0:(GO(),t[2665]=1504,c[11717]=1,e=1504),e|0}function GO(){c[11740]|0||(c[11718]=Lt(Lt(8,0)|0,0)|0,c[11719]=Lt(Lt(0,0)|0,0)|0,c[11720]=Lt(Lt(0,16)|0,0)|0,c[11721]=Lt(Lt(8,0)|0,0)|0,c[11722]=Lt(Lt(0,0)|0,0)|0,c[11723]=Lt(Lt(8,0)|0,0)|0,c[11724]=Lt(Lt(0,0)|0,0)|0,c[11725]=Lt(Lt(8,0)|0,0)|0,c[11726]=Lt(Lt(0,0)|0,0)|0,c[11727]=Lt(Lt(8,0)|0,0)|0,c[11728]=Lt(Lt(0,0)|0,0)|0,c[11729]=Lt(Lt(0,0)|0,32)|0,c[11730]=Lt(Lt(0,0)|0,32)|0,c[11740]=1)}function u8(){return 1572}function VO(e,n,r,o,s){e=e|0,n=n|0,r=r|0,o=o|0,s=s|0;var l=0,d=0,_=0,y=0,k=0,T=0;l=h,h=h+32|0,T=l+16|0,k=l+12|0,y=l+8|0,_=l+4|0,d=l,t[T>>2]=e,t[k>>2]=n,t[y>>2]=r,t[_>>2]=o,t[d>>2]=s,O4()|0,YO(10656,T,k,y,_,d),h=l}function YO(e,n,r,o,s,l){e=e|0,n=n|0,r=r|0,o=o|0,s=s|0,l=l|0;var d=0;d=Tt(24)|0,t1(d+4|0,t[n>>2]|0,t[r>>2]|0,t[o>>2]|0,t[s>>2]|0,t[l>>2]|0),t[d>>2]=t[e>>2],t[e>>2]=d}function s8(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0,_=0,y=0,k=0,T=0,P=0,q=0,we=0,le=0,ie=0,Pe=0,ke=0,qe=0;if(qe=h,h=h+32|0,le=qe+20|0,ie=qe+8|0,Pe=qe+4|0,ke=qe,n=t[n>>2]|0,n|0){we=le+4|0,y=le+8|0,k=ie+4|0,T=ie+8|0,P=ie+8|0,q=le+8|0;do{if(d=n+4|0,_=I4(d)|0,_|0){if(s=b1(_)|0,t[le>>2]=0,t[we>>2]=0,t[y>>2]=0,o=(G1(_)|0)+1|0,$O(le,o),o|0)for(;o=o+-1|0,os(ie,t[s>>2]|0),l=t[we>>2]|0,l>>>0<(t[q>>2]|0)>>>0?(t[l>>2]=t[ie>>2],t[we>>2]=(t[we>>2]|0)+4):P4(le,ie),o;)s=s+4|0;o=V1(_)|0,t[ie>>2]=0,t[k>>2]=0,t[T>>2]=0;e:do if(t[o>>2]|0)for(s=0,l=0;;){if((s|0)==(l|0)?KO(ie,o):(t[s>>2]=t[o>>2],t[k>>2]=(t[k>>2]|0)+4),o=o+4|0,!(t[o>>2]|0))break e;s=t[k>>2]|0,l=t[P>>2]|0}while(0);t[Pe>>2]=nh(d)|0,t[ke>>2]=Dn(_)|0,XO(r,e,Pe,ke,le,ie),M4(ie),Rl(le)}n=t[n>>2]|0}while((n|0)!=0)}h=qe}function I4(e){return e=e|0,t[e+12>>2]|0}function b1(e){return e=e|0,t[e+12>>2]|0}function G1(e){return e=e|0,t[e+16>>2]|0}function $O(e,n){e=e|0,n=n|0;var r=0,o=0,s=0;s=h,h=h+32|0,r=s,o=t[e>>2]|0,(t[e+8>>2]|0)-o>>2>>>0>>0&&(m8(r,n,(t[e+4>>2]|0)-o>>2,e+8|0),v8(e,r),g8(r)),h=s}function P4(e,n){e=e|0,n=n|0;var r=0,o=0,s=0,l=0,d=0,_=0,y=0,k=0;if(d=h,h=h+32|0,r=d,o=e+4|0,s=((t[o>>2]|0)-(t[e>>2]|0)>>2)+1|0,l=h8(e)|0,l>>>0>>0)$n(e);else{_=t[e>>2]|0,k=(t[e+8>>2]|0)-_|0,y=k>>1,m8(r,k>>2>>>0>>1>>>0?y>>>0>>0?s:y:l,(t[o>>2]|0)-_>>2,e+8|0),l=r+8|0,t[t[l>>2]>>2]=t[n>>2],t[l>>2]=(t[l>>2]|0)+4,v8(e,r),g8(r),h=d;return}}function V1(e){return e=e|0,t[e+8>>2]|0}function KO(e,n){e=e|0,n=n|0;var r=0,o=0,s=0,l=0,d=0,_=0,y=0,k=0;if(d=h,h=h+32|0,r=d,o=e+4|0,s=((t[o>>2]|0)-(t[e>>2]|0)>>2)+1|0,l=p8(e)|0,l>>>0>>0)$n(e);else{_=t[e>>2]|0,k=(t[e+8>>2]|0)-_|0,y=k>>1,mI(r,k>>2>>>0>>1>>>0?y>>>0>>0?s:y:l,(t[o>>2]|0)-_>>2,e+8|0),l=r+8|0,t[t[l>>2]>>2]=t[n>>2],t[l>>2]=(t[l>>2]|0)+4,vI(e,r),gI(r),h=d;return}}function nh(e){return e=e|0,t[e>>2]|0}function XO(e,n,r,o,s,l){e=e|0,n=n|0,r=r|0,o=o|0,s=s|0,l=l|0,JO(e,n,r,o,s,l)}function M4(e){e=e|0;var n=0,r=0,o=0;r=t[e>>2]|0,o=r,r|0&&(e=e+4|0,n=t[e>>2]|0,(n|0)!=(r|0)&&(t[e>>2]=n+(~((n+-4-o|0)>>>2)<<2)),Ve(r))}function Rl(e){e=e|0;var n=0,r=0,o=0;r=t[e>>2]|0,o=r,r|0&&(e=e+4|0,n=t[e>>2]|0,(n|0)!=(r|0)&&(t[e>>2]=n+(~((n+-4-o|0)>>>2)<<2)),Ve(r))}function JO(e,n,r,o,s,l){e=e|0,n=n|0,r=r|0,o=o|0,s=s|0,l=l|0;var d=0,_=0,y=0,k=0,T=0,P=0;d=h,h=h+48|0,T=d+40|0,_=d+32|0,P=d+24|0,y=d+12|0,k=d,Zo(_),e=Oi(e)|0,t[P>>2]=t[n>>2],r=t[r>>2]|0,o=t[o>>2]|0,F4(y,s),QO(k,l),t[T>>2]=t[P>>2],ZO(e,T,r,o,y,k),M4(k),Rl(y),eu(_),h=d}function F4(e,n){e=e|0,n=n|0;var r=0,o=0;t[e>>2]=0,t[e+4>>2]=0,t[e+8>>2]=0,r=n+4|0,o=(t[r>>2]|0)-(t[n>>2]|0)>>2,o|0&&(pI(e,o),hI(e,t[n>>2]|0,t[r>>2]|0,o))}function QO(e,n){e=e|0,n=n|0;var r=0,o=0;t[e>>2]=0,t[e+4>>2]=0,t[e+8>>2]=0,r=n+4|0,o=(t[r>>2]|0)-(t[n>>2]|0)>>2,o|0&&(aI(e,o),dI(e,t[n>>2]|0,t[r>>2]|0,o))}function ZO(e,n,r,o,s,l){e=e|0,n=n|0,r=r|0,o=o|0,s=s|0,l=l|0;var d=0,_=0,y=0,k=0,T=0,P=0;d=h,h=h+32|0,T=d+28|0,P=d+24|0,_=d+12|0,y=d,k=ko(eI()|0)|0,t[P>>2]=t[n>>2],t[T>>2]=t[P>>2],n=lc(T)|0,r=l8(r)|0,o=L4(o)|0,t[_>>2]=t[s>>2],T=s+4|0,t[_+4>>2]=t[T>>2],P=s+8|0,t[_+8>>2]=t[P>>2],t[P>>2]=0,t[T>>2]=0,t[s>>2]=0,s=R4(_)|0,t[y>>2]=t[l>>2],T=l+4|0,t[y+4>>2]=t[T>>2],P=l+8|0,t[y+8>>2]=t[P>>2],t[P>>2]=0,t[T>>2]=0,t[l>>2]=0,qo(0,k|0,e|0,n|0,r|0,o|0,s|0,tI(y)|0)|0,M4(y),Rl(_),h=d}function eI(){var e=0;return c[7968]|0||(fI(10708),e=7968,t[e>>2]=1,t[e+4>>2]=0),10708}function lc(e){return e=e|0,c8(e)|0}function l8(e){return e=e|0,f8(e)|0}function L4(e){return e=e|0,ea(e)|0}function R4(e){return e=e|0,rI(e)|0}function tI(e){return e=e|0,nI(e)|0}function nI(e){e=e|0;var n=0,r=0,o=0;if(o=(t[e+4>>2]|0)-(t[e>>2]|0)|0,r=o>>2,o=Qo(o+4|0)|0,t[o>>2]=r,r|0){n=0;do t[o+4+(n<<2)>>2]=f8(t[(t[e>>2]|0)+(n<<2)>>2]|0)|0,n=n+1|0;while((n|0)!=(r|0))}return o|0}function f8(e){return e=e|0,e|0}function rI(e){e=e|0;var n=0,r=0,o=0;if(o=(t[e+4>>2]|0)-(t[e>>2]|0)|0,r=o>>2,o=Qo(o+4|0)|0,t[o>>2]=r,r|0){n=0;do t[o+4+(n<<2)>>2]=c8((t[e>>2]|0)+(n<<2)|0)|0,n=n+1|0;while((n|0)!=(r|0))}return o|0}function c8(e){e=e|0;var n=0,r=0,o=0,s=0;return s=h,h=h+32|0,n=s+12|0,r=s,o=U0(a8()|0)|0,o?(s1(n,o),l1(r,n),UF(e,r),e=f1(n)|0):e=iI(e)|0,h=s,e|0}function a8(){var e=0;return c[7960]|0||(lI(10664),Bt(25,10664,Q|0)|0,e=7960,t[e>>2]=1,t[e+4>>2]=0),10664}function iI(e){e=e|0;var n=0,r=0,o=0,s=0,l=0,d=0,_=0;return r=h,h=h+16|0,s=r+4|0,d=r,o=Qo(8)|0,n=o,_=Tt(4)|0,t[_>>2]=t[e>>2],l=n+4|0,t[l>>2]=_,e=Tt(8)|0,l=t[l>>2]|0,t[d>>2]=0,t[s>>2]=t[d>>2],d8(e,l,s),t[o>>2]=e,h=r,n|0}function d8(e,n,r){e=e|0,n=n|0,r=r|0,t[e>>2]=n,r=Tt(16)|0,t[r+4>>2]=0,t[r+8>>2]=0,t[r>>2]=1656,t[r+12>>2]=n,t[e+4>>2]=r}function oI(e){e=e|0,da(e),Ve(e)}function uI(e){e=e|0,e=t[e+12>>2]|0,e|0&&Ve(e)}function sI(e){e=e|0,Ve(e)}function lI(e){e=e|0,Ys(e)}function fI(e){e=e|0,Ao(e,cI()|0,5)}function cI(){return 1676}function aI(e,n){e=e|0,n=n|0;var r=0;if((p8(e)|0)>>>0>>0&&$n(e),n>>>0>1073741823)_n();else{r=Tt(n<<2)|0,t[e+4>>2]=r,t[e>>2]=r,t[e+8>>2]=r+(n<<2);return}}function dI(e,n,r,o){e=e|0,n=n|0,r=r|0,o=o|0,o=e+4|0,e=r-n|0,(e|0)>0&&(vn(t[o>>2]|0,n|0,e|0)|0,t[o>>2]=(t[o>>2]|0)+(e>>>2<<2))}function p8(e){return e=e|0,1073741823}function pI(e,n){e=e|0,n=n|0;var r=0;if((h8(e)|0)>>>0>>0&&$n(e),n>>>0>1073741823)_n();else{r=Tt(n<<2)|0,t[e+4>>2]=r,t[e>>2]=r,t[e+8>>2]=r+(n<<2);return}}function hI(e,n,r,o){e=e|0,n=n|0,r=r|0,o=o|0,o=e+4|0,e=r-n|0,(e|0)>0&&(vn(t[o>>2]|0,n|0,e|0)|0,t[o>>2]=(t[o>>2]|0)+(e>>>2<<2))}function h8(e){return e=e|0,1073741823}function mI(e,n,r,o){e=e|0,n=n|0,r=r|0,o=o|0;var s=0;t[e+12>>2]=0,t[e+16>>2]=o;do if(n)if(n>>>0>1073741823)_n();else{s=Tt(n<<2)|0;break}else s=0;while(0);t[e>>2]=s,o=s+(r<<2)|0,t[e+8>>2]=o,t[e+4>>2]=o,t[e+12>>2]=s+(n<<2)}function vI(e,n){e=e|0,n=n|0;var r=0,o=0,s=0,l=0,d=0;o=t[e>>2]|0,d=e+4|0,l=n+4|0,s=(t[d>>2]|0)-o|0,r=(t[l>>2]|0)+(0-(s>>2)<<2)|0,t[l>>2]=r,(s|0)>0?(vn(r|0,o|0,s|0)|0,o=l,r=t[l>>2]|0):o=l,l=t[e>>2]|0,t[e>>2]=r,t[o>>2]=l,l=n+8|0,s=t[d>>2]|0,t[d>>2]=t[l>>2],t[l>>2]=s,l=e+8|0,d=n+12|0,e=t[l>>2]|0,t[l>>2]=t[d>>2],t[d>>2]=e,t[n>>2]=t[o>>2]}function gI(e){e=e|0;var n=0,r=0,o=0;n=t[e+4>>2]|0,r=e+8|0,o=t[r>>2]|0,(o|0)!=(n|0)&&(t[r>>2]=o+(~((o+-4-n|0)>>>2)<<2)),e=t[e>>2]|0,e|0&&Ve(e)}function m8(e,n,r,o){e=e|0,n=n|0,r=r|0,o=o|0;var s=0;t[e+12>>2]=0,t[e+16>>2]=o;do if(n)if(n>>>0>1073741823)_n();else{s=Tt(n<<2)|0;break}else s=0;while(0);t[e>>2]=s,o=s+(r<<2)|0,t[e+8>>2]=o,t[e+4>>2]=o,t[e+12>>2]=s+(n<<2)}function v8(e,n){e=e|0,n=n|0;var r=0,o=0,s=0,l=0,d=0;o=t[e>>2]|0,d=e+4|0,l=n+4|0,s=(t[d>>2]|0)-o|0,r=(t[l>>2]|0)+(0-(s>>2)<<2)|0,t[l>>2]=r,(s|0)>0?(vn(r|0,o|0,s|0)|0,o=l,r=t[l>>2]|0):o=l,l=t[e>>2]|0,t[e>>2]=r,t[o>>2]=l,l=n+8|0,s=t[d>>2]|0,t[d>>2]=t[l>>2],t[l>>2]=s,l=e+8|0,d=n+12|0,e=t[l>>2]|0,t[l>>2]=t[d>>2],t[d>>2]=e,t[n>>2]=t[o>>2]}function g8(e){e=e|0;var n=0,r=0,o=0;n=t[e+4>>2]|0,r=e+8|0,o=t[r>>2]|0,(o|0)!=(n|0)&&(t[r>>2]=o+(~((o+-4-n|0)>>>2)<<2)),e=t[e>>2]|0,e|0&&Ve(e)}function _I(e,n,r,o,s){e=e|0,n=n|0,r=r|0,o=o|0,s=s|0;var l=0,d=0,_=0,y=0,k=0,T=0,P=0,q=0,we=0,le=0,ie=0;if(ie=h,h=h+32|0,T=ie+20|0,P=ie+12|0,k=ie+16|0,q=ie+4|0,we=ie,le=ie+8|0,_=o8()|0,l=t[_>>2]|0,d=t[l>>2]|0,d|0)for(y=t[_+8>>2]|0,_=t[_+4>>2]|0;os(T,d),yI(e,T,_,y),l=l+4|0,d=t[l>>2]|0,d;)y=y+1|0,_=_+1|0;if(l=u8()|0,d=t[l>>2]|0,d|0)do os(T,d),t[P>>2]=t[l+4>>2],wI(n,T,P),l=l+8|0,d=t[l>>2]|0;while((d|0)!=0);if(l=t[(sa()|0)>>2]|0,l|0)do n=t[l+4>>2]|0,os(T,t[(la(n)|0)>>2]|0),t[P>>2]=A4(n)|0,DI(r,T,P),l=t[l>>2]|0;while((l|0)!=0);if(os(k,0),l=O4()|0,t[T>>2]=t[k>>2],s8(T,l,s),l=t[(sa()|0)>>2]|0,l|0){e=T+4|0,n=T+8|0,r=T+8|0;do{if(y=t[l+4>>2]|0,os(P,t[(la(y)|0)>>2]|0),EI(q,_8(y)|0),d=t[q>>2]|0,d|0){t[T>>2]=0,t[e>>2]=0,t[n>>2]=0;do os(we,t[(la(t[d+4>>2]|0)|0)>>2]|0),_=t[e>>2]|0,_>>>0<(t[r>>2]|0)>>>0?(t[_>>2]=t[we>>2],t[e>>2]=(t[e>>2]|0)+4):P4(T,we),d=t[d>>2]|0;while((d|0)!=0);SI(o,P,T),Rl(T)}t[le>>2]=t[P>>2],k=y8(y)|0,t[T>>2]=t[le>>2],s8(T,k,s),bd(q),l=t[l>>2]|0}while((l|0)!=0)}h=ie}function yI(e,n,r,o){e=e|0,n=n|0,r=r|0,o=o|0,RI(e,n,r,o)}function wI(e,n,r){e=e|0,n=n|0,r=r|0,LI(e,n,r)}function la(e){return e=e|0,e|0}function DI(e,n,r){e=e|0,n=n|0,r=r|0,II(e,n,r)}function _8(e){return e=e|0,e+16|0}function EI(e,n){e=e|0,n=n|0;var r=0,o=0,s=0,l=0,d=0,_=0,y=0;if(l=h,h=h+16|0,s=l+8|0,r=l,t[e>>2]=0,o=t[n>>2]|0,t[s>>2]=o,t[r>>2]=e,r=OI(r)|0,o|0){if(o=Tt(12)|0,d=(w8(s)|0)+4|0,e=t[d+4>>2]|0,n=o+4|0,t[n>>2]=t[d>>2],t[n+4>>2]=e,n=t[t[s>>2]>>2]|0,t[s>>2]=n,!n)e=o;else for(n=o;e=Tt(12)|0,y=(w8(s)|0)+4|0,_=t[y+4>>2]|0,d=e+4|0,t[d>>2]=t[y>>2],t[d+4>>2]=_,t[n>>2]=e,d=t[t[s>>2]>>2]|0,t[s>>2]=d,d;)n=e;t[e>>2]=t[r>>2],t[r>>2]=o}h=l}function SI(e,n,r){e=e|0,n=n|0,r=r|0,CI(e,n,r)}function y8(e){return e=e|0,e+24|0}function CI(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0,_=0;o=h,h=h+32|0,d=o+24|0,s=o+16|0,_=o+12|0,l=o,Zo(s),e=Oi(e)|0,t[_>>2]=t[n>>2],F4(l,r),t[d>>2]=t[_>>2],TI(e,d,l),Rl(l),eu(s),h=o}function TI(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0,_=0;o=h,h=h+32|0,d=o+16|0,_=o+12|0,s=o,l=ko(xI()|0)|0,t[_>>2]=t[n>>2],t[d>>2]=t[_>>2],n=lc(d)|0,t[s>>2]=t[r>>2],d=r+4|0,t[s+4>>2]=t[d>>2],_=r+8|0,t[s+8>>2]=t[_>>2],t[_>>2]=0,t[d>>2]=0,t[r>>2]=0,Ts(0,l|0,e|0,n|0,R4(s)|0)|0,Rl(s),h=o}function xI(){var e=0;return c[7976]|0||(kI(10720),e=7976,t[e>>2]=1,t[e+4>>2]=0),10720}function kI(e){e=e|0,Ao(e,AI()|0,2)}function AI(){return 1732}function OI(e){return e=e|0,t[e>>2]|0}function w8(e){return e=e|0,t[e>>2]|0}function II(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0;o=h,h=h+32|0,l=o+16|0,s=o+8|0,d=o,Zo(s),e=Oi(e)|0,t[d>>2]=t[n>>2],r=t[r>>2]|0,t[l>>2]=t[d>>2],D8(e,l,r),eu(s),h=o}function D8(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0;o=h,h=h+16|0,l=o+4|0,d=o,s=ko(PI()|0)|0,t[d>>2]=t[n>>2],t[l>>2]=t[d>>2],n=lc(l)|0,Ts(0,s|0,e|0,n|0,l8(r)|0)|0,h=o}function PI(){var e=0;return c[7984]|0||(MI(10732),e=7984,t[e>>2]=1,t[e+4>>2]=0),10732}function MI(e){e=e|0,Ao(e,FI()|0,2)}function FI(){return 1744}function LI(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0;o=h,h=h+32|0,l=o+16|0,s=o+8|0,d=o,Zo(s),e=Oi(e)|0,t[d>>2]=t[n>>2],r=t[r>>2]|0,t[l>>2]=t[d>>2],D8(e,l,r),eu(s),h=o}function RI(e,n,r,o){e=e|0,n=n|0,r=r|0,o=o|0;var s=0,l=0,d=0,_=0;s=h,h=h+32|0,d=s+16|0,l=s+8|0,_=s,Zo(l),e=Oi(e)|0,t[_>>2]=t[n>>2],r=c[r>>0]|0,o=c[o>>0]|0,t[d>>2]=t[_>>2],NI(e,d,r,o),eu(l),h=s}function NI(e,n,r,o){e=e|0,n=n|0,r=r|0,o=o|0;var s=0,l=0,d=0,_=0;s=h,h=h+16|0,d=s+4|0,_=s,l=ko(BI()|0)|0,t[_>>2]=t[n>>2],t[d>>2]=t[_>>2],n=lc(d)|0,r=fa(r)|0,Bu(0,l|0,e|0,n|0,r|0,fa(o)|0)|0,h=s}function BI(){var e=0;return c[7992]|0||(UI(10744),e=7992,t[e>>2]=1,t[e+4>>2]=0),10744}function fa(e){return e=e|0,jI(e)|0}function jI(e){return e=e|0,e&255|0}function UI(e){e=e|0,Ao(e,qI()|0,3)}function qI(){return 1756}function zI(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0,_=0,y=0,k=0,T=0,P=0,q=0;switch(q=h,h=h+32|0,_=q+8|0,y=q+4|0,k=q+20|0,T=q,_1(e,0),o=jF(n)|0,t[_>>2]=0,P=_+4|0,t[P>>2]=0,t[_+8>>2]=0,o<<24>>24){case 0:{c[k>>0]=0,WI(y,r,k),rh(e,y)|0,ei(y);break}case 8:{P=z4(n)|0,c[k>>0]=8,os(T,t[P+4>>2]|0),HI(y,r,k,T,P+8|0),rh(e,y)|0,ei(y);break}case 9:{if(l=z4(n)|0,n=t[l+4>>2]|0,n|0)for(d=_+8|0,s=l+12|0;n=n+-1|0,os(y,t[s>>2]|0),o=t[P>>2]|0,o>>>0<(t[d>>2]|0)>>>0?(t[o>>2]=t[y>>2],t[P>>2]=(t[P>>2]|0)+4):P4(_,y),n;)s=s+4|0;c[k>>0]=9,os(T,t[l+8>>2]|0),bI(y,r,k,T,_),rh(e,y)|0,ei(y);break}default:P=z4(n)|0,c[k>>0]=o,os(T,t[P+4>>2]|0),GI(y,r,k,T),rh(e,y)|0,ei(y)}Rl(_),h=q}function WI(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0;o=h,h=h+16|0,s=o,Zo(s),n=Oi(n)|0,iP(e,n,c[r>>0]|0),eu(s),h=o}function rh(e,n){e=e|0,n=n|0;var r=0;return r=t[e>>2]|0,r|0&&ju(r|0),t[e>>2]=t[n>>2],t[n>>2]=0,e|0}function HI(e,n,r,o,s){e=e|0,n=n|0,r=r|0,o=o|0,s=s|0;var l=0,d=0,_=0,y=0;l=h,h=h+32|0,_=l+16|0,d=l+8|0,y=l,Zo(d),n=Oi(n)|0,r=c[r>>0]|0,t[y>>2]=t[o>>2],s=t[s>>2]|0,t[_>>2]=t[y>>2],eP(e,n,r,_,s),eu(d),h=l}function bI(e,n,r,o,s){e=e|0,n=n|0,r=r|0,o=o|0,s=s|0;var l=0,d=0,_=0,y=0,k=0;l=h,h=h+32|0,y=l+24|0,d=l+16|0,k=l+12|0,_=l,Zo(d),n=Oi(n)|0,r=c[r>>0]|0,t[k>>2]=t[o>>2],F4(_,s),t[y>>2]=t[k>>2],XI(e,n,r,y,_),Rl(_),eu(d),h=l}function GI(e,n,r,o){e=e|0,n=n|0,r=r|0,o=o|0;var s=0,l=0,d=0,_=0;s=h,h=h+32|0,d=s+16|0,l=s+8|0,_=s,Zo(l),n=Oi(n)|0,r=c[r>>0]|0,t[_>>2]=t[o>>2],t[d>>2]=t[_>>2],VI(e,n,r,d),eu(l),h=s}function VI(e,n,r,o){e=e|0,n=n|0,r=r|0,o=o|0;var s=0,l=0,d=0,_=0;s=h,h=h+16|0,l=s+4|0,_=s,d=ko(YI()|0)|0,r=fa(r)|0,t[_>>2]=t[o>>2],t[l>>2]=t[_>>2],ih(e,Ts(0,d|0,n|0,r|0,lc(l)|0)|0),h=s}function YI(){var e=0;return c[8e3]|0||($I(10756),e=8e3,t[e>>2]=1,t[e+4>>2]=0),10756}function ih(e,n){e=e|0,n=n|0,_1(e,n)}function $I(e){e=e|0,Ao(e,KI()|0,2)}function KI(){return 1772}function XI(e,n,r,o,s){e=e|0,n=n|0,r=r|0,o=o|0,s=s|0;var l=0,d=0,_=0,y=0,k=0;l=h,h=h+32|0,y=l+16|0,k=l+12|0,d=l,_=ko(JI()|0)|0,r=fa(r)|0,t[k>>2]=t[o>>2],t[y>>2]=t[k>>2],o=lc(y)|0,t[d>>2]=t[s>>2],y=s+4|0,t[d+4>>2]=t[y>>2],k=s+8|0,t[d+8>>2]=t[k>>2],t[k>>2]=0,t[y>>2]=0,t[s>>2]=0,ih(e,Bu(0,_|0,n|0,r|0,o|0,R4(d)|0)|0),Rl(d),h=l}function JI(){var e=0;return c[8008]|0||(QI(10768),e=8008,t[e>>2]=1,t[e+4>>2]=0),10768}function QI(e){e=e|0,Ao(e,ZI()|0,3)}function ZI(){return 1784}function eP(e,n,r,o,s){e=e|0,n=n|0,r=r|0,o=o|0,s=s|0;var l=0,d=0,_=0,y=0;l=h,h=h+16|0,_=l+4|0,y=l,d=ko(tP()|0)|0,r=fa(r)|0,t[y>>2]=t[o>>2],t[_>>2]=t[y>>2],o=lc(_)|0,ih(e,Bu(0,d|0,n|0,r|0,o|0,L4(s)|0)|0),h=l}function tP(){var e=0;return c[8016]|0||(nP(10780),e=8016,t[e>>2]=1,t[e+4>>2]=0),10780}function nP(e){e=e|0,Ao(e,rP()|0,3)}function rP(){return 1800}function iP(e,n,r){e=e|0,n=n|0,r=r|0;var o=0;o=ko(oP()|0)|0,ih(e,sf(0,o|0,n|0,fa(r)|0)|0)}function oP(){var e=0;return c[8024]|0||(uP(10792),e=8024,t[e>>2]=1,t[e+4>>2]=0),10792}function uP(e){e=e|0,Ao(e,sP()|0,1)}function sP(){return 1816}function lP(){fP(),cP(),aP()}function fP(){t[2702]=K8(65536)|0}function cP(){PP(10856)}function aP(){dP(10816)}function dP(e){e=e|0,pP(e,5044),hP(e)|0}function pP(e,n){e=e|0,n=n|0;var r=0;r=a8()|0,t[e>>2]=r,TP(r,n),Cf(t[e>>2]|0)}function hP(e){e=e|0;var n=0;return n=t[e>>2]|0,uc(n,mP()|0),e|0}function mP(){var e=0;return c[8032]|0||(E8(10820),Bt(64,10820,Q|0)|0,e=8032,t[e>>2]=1,t[e+4>>2]=0),Dn(10820)|0||E8(10820),10820}function E8(e){e=e|0,_P(e),sc(e,25)}function vP(e){e=e|0,gP(e+24|0)}function gP(e){e=e|0;var n=0,r=0,o=0;r=t[e>>2]|0,o=r,r|0&&(e=e+4|0,n=t[e>>2]|0,(n|0)!=(r|0)&&(t[e>>2]=n+(~((n+-8-o|0)>>>3)<<3)),Ve(r))}function _P(e){e=e|0;var n=0;n=An()|0,Nn(e,5,18,n,EP()|0,1),t[e+24>>2]=0,t[e+28>>2]=0,t[e+32>>2]=0}function yP(e,n){e=e|0,n=n|0,wP(e,n)}function wP(e,n){e=e|0,n=n|0;var r=0,o=0,s=0;r=h,h=h+16|0,o=r,s=r+4|0,Ml(s,n),t[o>>2]=Fl(s,n)|0,DP(e,o),h=r}function DP(e,n){e=e|0,n=n|0,S8(e+4|0,t[n>>2]|0),c[e+8>>0]=1}function S8(e,n){e=e|0,n=n|0,t[e>>2]=n}function EP(){return 1824}function SP(e){return e=e|0,CP(e)|0}function CP(e){e=e|0;var n=0,r=0,o=0,s=0,l=0,d=0,_=0;return r=h,h=h+16|0,s=r+4|0,d=r,o=Qo(8)|0,n=o,_=Tt(4)|0,Ml(s,e),S8(_,Fl(s,e)|0),l=n+4|0,t[l>>2]=_,e=Tt(8)|0,l=t[l>>2]|0,t[d>>2]=0,t[s>>2]=t[d>>2],d8(e,l,s),t[o>>2]=e,h=r,n|0}function Qo(e){e=e|0;var n=0,r=0;return e=e+7&-8,(e>>>0<=32768?(n=t[2701]|0,e>>>0<=(65536-n|0)>>>0):0)?(r=(t[2702]|0)+n|0,t[2701]=n+e,e=r):(e=K8(e+8|0)|0,t[e>>2]=t[2703],t[2703]=e,e=e+8|0),e|0}function TP(e,n){e=e|0,n=n|0,t[e>>2]=xP()|0,t[e+4>>2]=kP()|0,t[e+12>>2]=n,t[e+8>>2]=AP()|0,t[e+32>>2]=9}function xP(){return 11744}function kP(){return 1832}function AP(){return th()|0}function OP(e,n,r,o){e=e|0,n=n|0,r=r|0,o=o|0,(Sf(o,896)|0)==512?r|0&&(IP(r),Ve(r)):n|0&&Ve(n)}function IP(e){e=e|0,e=t[e+4>>2]|0,e|0&&Tf(e)}function PP(e){e=e|0,MP(e,5052),FP(e)|0,LP(e,5058,26)|0,RP(e,5069,1)|0,NP(e,5077,10)|0,BP(e,5087,19)|0,jP(e,5094,27)|0}function MP(e,n){e=e|0,n=n|0;var r=0;r=IF()|0,t[e>>2]=r,PF(r,n),Cf(t[e>>2]|0)}function FP(e){e=e|0;var n=0;return n=t[e>>2]|0,uc(n,vF()|0),e|0}function LP(e,n,r){return e=e|0,n=n|0,r=r|0,QM(e,Zn(n)|0,r,0),e|0}function RP(e,n,r){return e=e|0,n=n|0,r=r|0,BM(e,Zn(n)|0,r,0),e|0}function NP(e,n,r){return e=e|0,n=n|0,r=r|0,mM(e,Zn(n)|0,r,0),e|0}function BP(e,n,r){return e=e|0,n=n|0,r=r|0,eM(e,Zn(n)|0,r,0),e|0}function C8(e,n){e=e|0,n=n|0;var r=0,o=0;e:for(;;){for(r=t[2703]|0;;){if((r|0)==(n|0))break e;if(o=t[r>>2]|0,t[2703]=o,!r)r=o;else break}Ve(r)}t[2701]=e}function jP(e,n,r){return e=e|0,n=n|0,r=r|0,UP(e,Zn(n)|0,r,0),e|0}function UP(e,n,r,o){e=e|0,n=n|0,r=r|0,o=o|0;var s=0,l=0;l=t[e>>2]|0,s=N4()|0,e=qP(r)|0,ur(l,n,s,e,zP(r,o)|0,o)}function N4(){var e=0,n=0;if(c[8040]|0||(x8(10860),Bt(65,10860,Q|0)|0,n=8040,t[n>>2]=1,t[n+4>>2]=0),!(Dn(10860)|0)){e=10860,n=e+36|0;do t[e>>2]=0,e=e+4|0;while((e|0)<(n|0));x8(10860)}return 10860}function qP(e){return e=e|0,e|0}function zP(e,n){e=e|0,n=n|0;var r=0,o=0,s=0,l=0,d=0,_=0,y=0;return _=h,h=h+16|0,s=_,l=_+4|0,t[s>>2]=e,y=N4()|0,d=y+24|0,n=Lt(n,4)|0,t[l>>2]=n,r=y+28|0,o=t[r>>2]|0,o>>>0<(t[y+32>>2]|0)>>>0?(T8(o,e,n),n=(t[r>>2]|0)+8|0,t[r>>2]=n):(WP(d,s,l),n=t[r>>2]|0),h=_,(n-(t[d>>2]|0)>>3)+-1|0}function T8(e,n,r){e=e|0,n=n|0,r=r|0,t[e>>2]=n,t[e+4>>2]=r}function WP(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0,_=0,y=0,k=0,T=0;if(_=h,h=h+32|0,s=_,l=e+4|0,d=((t[l>>2]|0)-(t[e>>2]|0)>>3)+1|0,o=HP(e)|0,o>>>0>>0)$n(e);else{y=t[e>>2]|0,T=(t[e+8>>2]|0)-y|0,k=T>>2,bP(s,T>>3>>>0>>1>>>0?k>>>0>>0?d:k:o,(t[l>>2]|0)-y>>3,e+8|0),d=s+8|0,T8(t[d>>2]|0,t[n>>2]|0,t[r>>2]|0),t[d>>2]=(t[d>>2]|0)+8,GP(e,s),VP(s),h=_;return}}function HP(e){return e=e|0,536870911}function bP(e,n,r,o){e=e|0,n=n|0,r=r|0,o=o|0;var s=0;t[e+12>>2]=0,t[e+16>>2]=o;do if(n)if(n>>>0>536870911)_n();else{s=Tt(n<<3)|0;break}else s=0;while(0);t[e>>2]=s,o=s+(r<<3)|0,t[e+8>>2]=o,t[e+4>>2]=o,t[e+12>>2]=s+(n<<3)}function GP(e,n){e=e|0,n=n|0;var r=0,o=0,s=0,l=0,d=0;o=t[e>>2]|0,d=e+4|0,l=n+4|0,s=(t[d>>2]|0)-o|0,r=(t[l>>2]|0)+(0-(s>>3)<<3)|0,t[l>>2]=r,(s|0)>0?(vn(r|0,o|0,s|0)|0,o=l,r=t[l>>2]|0):o=l,l=t[e>>2]|0,t[e>>2]=r,t[o>>2]=l,l=n+8|0,s=t[d>>2]|0,t[d>>2]=t[l>>2],t[l>>2]=s,l=e+8|0,d=n+12|0,e=t[l>>2]|0,t[l>>2]=t[d>>2],t[d>>2]=e,t[n>>2]=t[o>>2]}function VP(e){e=e|0;var n=0,r=0,o=0;n=t[e+4>>2]|0,r=e+8|0,o=t[r>>2]|0,(o|0)!=(n|0)&&(t[r>>2]=o+(~((o+-8-n|0)>>>3)<<3)),e=t[e>>2]|0,e|0&&Ve(e)}function x8(e){e=e|0,KP(e)}function YP(e){e=e|0,$P(e+24|0)}function $P(e){e=e|0;var n=0,r=0,o=0;r=t[e>>2]|0,o=r,r|0&&(e=e+4|0,n=t[e>>2]|0,(n|0)!=(r|0)&&(t[e>>2]=n+(~((n+-8-o|0)>>>3)<<3)),Ve(r))}function KP(e){e=e|0;var n=0;n=An()|0,Nn(e,1,11,n,XP()|0,2),t[e+24>>2]=0,t[e+28>>2]=0,t[e+32>>2]=0}function XP(){return 1840}function JP(e,n,r){e=e|0,n=n|0,r=r|0,ZP(t[(QP(e)|0)>>2]|0,n,r)}function QP(e){return e=e|0,(t[(N4()|0)+24>>2]|0)+(e<<3)|0}function ZP(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0;o=h,h=h+16|0,l=o+1|0,s=o,Ml(l,n),n=Fl(l,n)|0,Ml(s,r),r=Fl(s,r)|0,Bl[e&31](n,r),h=o}function eM(e,n,r,o){e=e|0,n=n|0,r=r|0,o=o|0;var s=0,l=0;l=t[e>>2]|0,s=B4()|0,e=tM(r)|0,ur(l,n,s,e,nM(r,o)|0,o)}function B4(){var e=0,n=0;if(c[8048]|0||(A8(10896),Bt(66,10896,Q|0)|0,n=8048,t[n>>2]=1,t[n+4>>2]=0),!(Dn(10896)|0)){e=10896,n=e+36|0;do t[e>>2]=0,e=e+4|0;while((e|0)<(n|0));A8(10896)}return 10896}function tM(e){return e=e|0,e|0}function nM(e,n){e=e|0,n=n|0;var r=0,o=0,s=0,l=0,d=0,_=0,y=0;return _=h,h=h+16|0,s=_,l=_+4|0,t[s>>2]=e,y=B4()|0,d=y+24|0,n=Lt(n,4)|0,t[l>>2]=n,r=y+28|0,o=t[r>>2]|0,o>>>0<(t[y+32>>2]|0)>>>0?(k8(o,e,n),n=(t[r>>2]|0)+8|0,t[r>>2]=n):(rM(d,s,l),n=t[r>>2]|0),h=_,(n-(t[d>>2]|0)>>3)+-1|0}function k8(e,n,r){e=e|0,n=n|0,r=r|0,t[e>>2]=n,t[e+4>>2]=r}function rM(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0,_=0,y=0,k=0,T=0;if(_=h,h=h+32|0,s=_,l=e+4|0,d=((t[l>>2]|0)-(t[e>>2]|0)>>3)+1|0,o=iM(e)|0,o>>>0>>0)$n(e);else{y=t[e>>2]|0,T=(t[e+8>>2]|0)-y|0,k=T>>2,oM(s,T>>3>>>0>>1>>>0?k>>>0>>0?d:k:o,(t[l>>2]|0)-y>>3,e+8|0),d=s+8|0,k8(t[d>>2]|0,t[n>>2]|0,t[r>>2]|0),t[d>>2]=(t[d>>2]|0)+8,uM(e,s),sM(s),h=_;return}}function iM(e){return e=e|0,536870911}function oM(e,n,r,o){e=e|0,n=n|0,r=r|0,o=o|0;var s=0;t[e+12>>2]=0,t[e+16>>2]=o;do if(n)if(n>>>0>536870911)_n();else{s=Tt(n<<3)|0;break}else s=0;while(0);t[e>>2]=s,o=s+(r<<3)|0,t[e+8>>2]=o,t[e+4>>2]=o,t[e+12>>2]=s+(n<<3)}function uM(e,n){e=e|0,n=n|0;var r=0,o=0,s=0,l=0,d=0;o=t[e>>2]|0,d=e+4|0,l=n+4|0,s=(t[d>>2]|0)-o|0,r=(t[l>>2]|0)+(0-(s>>3)<<3)|0,t[l>>2]=r,(s|0)>0?(vn(r|0,o|0,s|0)|0,o=l,r=t[l>>2]|0):o=l,l=t[e>>2]|0,t[e>>2]=r,t[o>>2]=l,l=n+8|0,s=t[d>>2]|0,t[d>>2]=t[l>>2],t[l>>2]=s,l=e+8|0,d=n+12|0,e=t[l>>2]|0,t[l>>2]=t[d>>2],t[d>>2]=e,t[n>>2]=t[o>>2]}function sM(e){e=e|0;var n=0,r=0,o=0;n=t[e+4>>2]|0,r=e+8|0,o=t[r>>2]|0,(o|0)!=(n|0)&&(t[r>>2]=o+(~((o+-8-n|0)>>>3)<<3)),e=t[e>>2]|0,e|0&&Ve(e)}function A8(e){e=e|0,cM(e)}function lM(e){e=e|0,fM(e+24|0)}function fM(e){e=e|0;var n=0,r=0,o=0;r=t[e>>2]|0,o=r,r|0&&(e=e+4|0,n=t[e>>2]|0,(n|0)!=(r|0)&&(t[e>>2]=n+(~((n+-8-o|0)>>>3)<<3)),Ve(r))}function cM(e){e=e|0;var n=0;n=An()|0,Nn(e,1,11,n,aM()|0,1),t[e+24>>2]=0,t[e+28>>2]=0,t[e+32>>2]=0}function aM(){return 1852}function dM(e,n){return e=e|0,n=n|0,hM(t[(pM(e)|0)>>2]|0,n)|0}function pM(e){return e=e|0,(t[(B4()|0)+24>>2]|0)+(e<<3)|0}function hM(e,n){e=e|0,n=n|0;var r=0,o=0;return r=h,h=h+16|0,o=r,Ml(o,n),n=Fl(o,n)|0,n=ea(dc[e&31](n)|0)|0,h=r,n|0}function mM(e,n,r,o){e=e|0,n=n|0,r=r|0,o=o|0;var s=0,l=0;l=t[e>>2]|0,s=j4()|0,e=vM(r)|0,ur(l,n,s,e,gM(r,o)|0,o)}function j4(){var e=0,n=0;if(c[8056]|0||(I8(10932),Bt(67,10932,Q|0)|0,n=8056,t[n>>2]=1,t[n+4>>2]=0),!(Dn(10932)|0)){e=10932,n=e+36|0;do t[e>>2]=0,e=e+4|0;while((e|0)<(n|0));I8(10932)}return 10932}function vM(e){return e=e|0,e|0}function gM(e,n){e=e|0,n=n|0;var r=0,o=0,s=0,l=0,d=0,_=0,y=0;return _=h,h=h+16|0,s=_,l=_+4|0,t[s>>2]=e,y=j4()|0,d=y+24|0,n=Lt(n,4)|0,t[l>>2]=n,r=y+28|0,o=t[r>>2]|0,o>>>0<(t[y+32>>2]|0)>>>0?(O8(o,e,n),n=(t[r>>2]|0)+8|0,t[r>>2]=n):(_M(d,s,l),n=t[r>>2]|0),h=_,(n-(t[d>>2]|0)>>3)+-1|0}function O8(e,n,r){e=e|0,n=n|0,r=r|0,t[e>>2]=n,t[e+4>>2]=r}function _M(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0,_=0,y=0,k=0,T=0;if(_=h,h=h+32|0,s=_,l=e+4|0,d=((t[l>>2]|0)-(t[e>>2]|0)>>3)+1|0,o=yM(e)|0,o>>>0>>0)$n(e);else{y=t[e>>2]|0,T=(t[e+8>>2]|0)-y|0,k=T>>2,wM(s,T>>3>>>0>>1>>>0?k>>>0>>0?d:k:o,(t[l>>2]|0)-y>>3,e+8|0),d=s+8|0,O8(t[d>>2]|0,t[n>>2]|0,t[r>>2]|0),t[d>>2]=(t[d>>2]|0)+8,DM(e,s),EM(s),h=_;return}}function yM(e){return e=e|0,536870911}function wM(e,n,r,o){e=e|0,n=n|0,r=r|0,o=o|0;var s=0;t[e+12>>2]=0,t[e+16>>2]=o;do if(n)if(n>>>0>536870911)_n();else{s=Tt(n<<3)|0;break}else s=0;while(0);t[e>>2]=s,o=s+(r<<3)|0,t[e+8>>2]=o,t[e+4>>2]=o,t[e+12>>2]=s+(n<<3)}function DM(e,n){e=e|0,n=n|0;var r=0,o=0,s=0,l=0,d=0;o=t[e>>2]|0,d=e+4|0,l=n+4|0,s=(t[d>>2]|0)-o|0,r=(t[l>>2]|0)+(0-(s>>3)<<3)|0,t[l>>2]=r,(s|0)>0?(vn(r|0,o|0,s|0)|0,o=l,r=t[l>>2]|0):o=l,l=t[e>>2]|0,t[e>>2]=r,t[o>>2]=l,l=n+8|0,s=t[d>>2]|0,t[d>>2]=t[l>>2],t[l>>2]=s,l=e+8|0,d=n+12|0,e=t[l>>2]|0,t[l>>2]=t[d>>2],t[d>>2]=e,t[n>>2]=t[o>>2]}function EM(e){e=e|0;var n=0,r=0,o=0;n=t[e+4>>2]|0,r=e+8|0,o=t[r>>2]|0,(o|0)!=(n|0)&&(t[r>>2]=o+(~((o+-8-n|0)>>>3)<<3)),e=t[e>>2]|0,e|0&&Ve(e)}function I8(e){e=e|0,TM(e)}function SM(e){e=e|0,CM(e+24|0)}function CM(e){e=e|0;var n=0,r=0,o=0;r=t[e>>2]|0,o=r,r|0&&(e=e+4|0,n=t[e>>2]|0,(n|0)!=(r|0)&&(t[e>>2]=n+(~((n+-8-o|0)>>>3)<<3)),Ve(r))}function TM(e){e=e|0;var n=0;n=An()|0,Nn(e,1,7,n,xM()|0,2),t[e+24>>2]=0,t[e+28>>2]=0,t[e+32>>2]=0}function xM(){return 1860}function kM(e,n,r){return e=e|0,n=n|0,r=r|0,OM(t[(AM(e)|0)>>2]|0,n,r)|0}function AM(e){return e=e|0,(t[(j4()|0)+24>>2]|0)+(e<<3)|0}function OM(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0,_=0,y=0;return o=h,h=h+32|0,d=o+12|0,l=o+8|0,_=o,y=o+16|0,s=o+4|0,IM(y,n),PM(_,y,n),$s(s,r),r=Ks(s,r)|0,t[d>>2]=t[_>>2],X1[e&15](l,d,r),r=MM(l)|0,ei(l),Xs(s),h=o,r|0}function IM(e,n){e=e|0,n=n|0}function PM(e,n,r){e=e|0,n=n|0,r=r|0,FM(e,r)}function MM(e){return e=e|0,Oi(e)|0}function FM(e,n){e=e|0,n=n|0;var r=0,o=0,s=0;s=h,h=h+16|0,r=s,o=n,o&1?(LM(r,0),c0(o|0,r|0)|0,RM(e,r),NM(r)):t[e>>2]=t[n>>2],h=s}function LM(e,n){e=e|0,n=n|0,wd(e,n),t[e+4>>2]=0,c[e+8>>0]=0}function RM(e,n){e=e|0,n=n|0,t[e>>2]=t[n+4>>2]}function NM(e){e=e|0,c[e+8>>0]=0}function BM(e,n,r,o){e=e|0,n=n|0,r=r|0,o=o|0;var s=0,l=0;l=t[e>>2]|0,s=U4()|0,e=jM(r)|0,ur(l,n,s,e,UM(r,o)|0,o)}function U4(){var e=0,n=0;if(c[8064]|0||(M8(10968),Bt(68,10968,Q|0)|0,n=8064,t[n>>2]=1,t[n+4>>2]=0),!(Dn(10968)|0)){e=10968,n=e+36|0;do t[e>>2]=0,e=e+4|0;while((e|0)<(n|0));M8(10968)}return 10968}function jM(e){return e=e|0,e|0}function UM(e,n){e=e|0,n=n|0;var r=0,o=0,s=0,l=0,d=0,_=0,y=0;return _=h,h=h+16|0,s=_,l=_+4|0,t[s>>2]=e,y=U4()|0,d=y+24|0,n=Lt(n,4)|0,t[l>>2]=n,r=y+28|0,o=t[r>>2]|0,o>>>0<(t[y+32>>2]|0)>>>0?(P8(o,e,n),n=(t[r>>2]|0)+8|0,t[r>>2]=n):(qM(d,s,l),n=t[r>>2]|0),h=_,(n-(t[d>>2]|0)>>3)+-1|0}function P8(e,n,r){e=e|0,n=n|0,r=r|0,t[e>>2]=n,t[e+4>>2]=r}function qM(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0,_=0,y=0,k=0,T=0;if(_=h,h=h+32|0,s=_,l=e+4|0,d=((t[l>>2]|0)-(t[e>>2]|0)>>3)+1|0,o=zM(e)|0,o>>>0>>0)$n(e);else{y=t[e>>2]|0,T=(t[e+8>>2]|0)-y|0,k=T>>2,WM(s,T>>3>>>0>>1>>>0?k>>>0>>0?d:k:o,(t[l>>2]|0)-y>>3,e+8|0),d=s+8|0,P8(t[d>>2]|0,t[n>>2]|0,t[r>>2]|0),t[d>>2]=(t[d>>2]|0)+8,HM(e,s),bM(s),h=_;return}}function zM(e){return e=e|0,536870911}function WM(e,n,r,o){e=e|0,n=n|0,r=r|0,o=o|0;var s=0;t[e+12>>2]=0,t[e+16>>2]=o;do if(n)if(n>>>0>536870911)_n();else{s=Tt(n<<3)|0;break}else s=0;while(0);t[e>>2]=s,o=s+(r<<3)|0,t[e+8>>2]=o,t[e+4>>2]=o,t[e+12>>2]=s+(n<<3)}function HM(e,n){e=e|0,n=n|0;var r=0,o=0,s=0,l=0,d=0;o=t[e>>2]|0,d=e+4|0,l=n+4|0,s=(t[d>>2]|0)-o|0,r=(t[l>>2]|0)+(0-(s>>3)<<3)|0,t[l>>2]=r,(s|0)>0?(vn(r|0,o|0,s|0)|0,o=l,r=t[l>>2]|0):o=l,l=t[e>>2]|0,t[e>>2]=r,t[o>>2]=l,l=n+8|0,s=t[d>>2]|0,t[d>>2]=t[l>>2],t[l>>2]=s,l=e+8|0,d=n+12|0,e=t[l>>2]|0,t[l>>2]=t[d>>2],t[d>>2]=e,t[n>>2]=t[o>>2]}function bM(e){e=e|0;var n=0,r=0,o=0;n=t[e+4>>2]|0,r=e+8|0,o=t[r>>2]|0,(o|0)!=(n|0)&&(t[r>>2]=o+(~((o+-8-n|0)>>>3)<<3)),e=t[e>>2]|0,e|0&&Ve(e)}function M8(e){e=e|0,YM(e)}function GM(e){e=e|0,VM(e+24|0)}function VM(e){e=e|0;var n=0,r=0,o=0;r=t[e>>2]|0,o=r,r|0&&(e=e+4|0,n=t[e>>2]|0,(n|0)!=(r|0)&&(t[e>>2]=n+(~((n+-8-o|0)>>>3)<<3)),Ve(r))}function YM(e){e=e|0;var n=0;n=An()|0,Nn(e,1,1,n,$M()|0,5),t[e+24>>2]=0,t[e+28>>2]=0,t[e+32>>2]=0}function $M(){return 1872}function KM(e,n,r,o,s,l){e=e|0,n=n|0,r=r|0,o=o|0,s=s|0,l=l|0,JM(t[(XM(e)|0)>>2]|0,n,r,o,s,l)}function XM(e){return e=e|0,(t[(U4()|0)+24>>2]|0)+(e<<3)|0}function JM(e,n,r,o,s,l){e=e|0,n=n|0,r=r|0,o=o|0,s=s|0,l=l|0;var d=0,_=0,y=0,k=0,T=0,P=0;d=h,h=h+32|0,_=d+16|0,y=d+12|0,k=d+8|0,T=d+4|0,P=d,$s(_,n),n=Ks(_,n)|0,$s(y,r),r=Ks(y,r)|0,$s(k,o),o=Ks(k,o)|0,$s(T,s),s=Ks(T,s)|0,$s(P,l),l=Ks(P,l)|0,eD[e&1](n,r,o,s,l),Xs(P),Xs(T),Xs(k),Xs(y),Xs(_),h=d}function QM(e,n,r,o){e=e|0,n=n|0,r=r|0,o=o|0;var s=0,l=0;l=t[e>>2]|0,s=q4()|0,e=ZM(r)|0,ur(l,n,s,e,eF(r,o)|0,o)}function q4(){var e=0,n=0;if(c[8072]|0||(L8(11004),Bt(69,11004,Q|0)|0,n=8072,t[n>>2]=1,t[n+4>>2]=0),!(Dn(11004)|0)){e=11004,n=e+36|0;do t[e>>2]=0,e=e+4|0;while((e|0)<(n|0));L8(11004)}return 11004}function ZM(e){return e=e|0,e|0}function eF(e,n){e=e|0,n=n|0;var r=0,o=0,s=0,l=0,d=0,_=0,y=0;return _=h,h=h+16|0,s=_,l=_+4|0,t[s>>2]=e,y=q4()|0,d=y+24|0,n=Lt(n,4)|0,t[l>>2]=n,r=y+28|0,o=t[r>>2]|0,o>>>0<(t[y+32>>2]|0)>>>0?(F8(o,e,n),n=(t[r>>2]|0)+8|0,t[r>>2]=n):(tF(d,s,l),n=t[r>>2]|0),h=_,(n-(t[d>>2]|0)>>3)+-1|0}function F8(e,n,r){e=e|0,n=n|0,r=r|0,t[e>>2]=n,t[e+4>>2]=r}function tF(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0,_=0,y=0,k=0,T=0;if(_=h,h=h+32|0,s=_,l=e+4|0,d=((t[l>>2]|0)-(t[e>>2]|0)>>3)+1|0,o=nF(e)|0,o>>>0>>0)$n(e);else{y=t[e>>2]|0,T=(t[e+8>>2]|0)-y|0,k=T>>2,rF(s,T>>3>>>0>>1>>>0?k>>>0>>0?d:k:o,(t[l>>2]|0)-y>>3,e+8|0),d=s+8|0,F8(t[d>>2]|0,t[n>>2]|0,t[r>>2]|0),t[d>>2]=(t[d>>2]|0)+8,iF(e,s),oF(s),h=_;return}}function nF(e){return e=e|0,536870911}function rF(e,n,r,o){e=e|0,n=n|0,r=r|0,o=o|0;var s=0;t[e+12>>2]=0,t[e+16>>2]=o;do if(n)if(n>>>0>536870911)_n();else{s=Tt(n<<3)|0;break}else s=0;while(0);t[e>>2]=s,o=s+(r<<3)|0,t[e+8>>2]=o,t[e+4>>2]=o,t[e+12>>2]=s+(n<<3)}function iF(e,n){e=e|0,n=n|0;var r=0,o=0,s=0,l=0,d=0;o=t[e>>2]|0,d=e+4|0,l=n+4|0,s=(t[d>>2]|0)-o|0,r=(t[l>>2]|0)+(0-(s>>3)<<3)|0,t[l>>2]=r,(s|0)>0?(vn(r|0,o|0,s|0)|0,o=l,r=t[l>>2]|0):o=l,l=t[e>>2]|0,t[e>>2]=r,t[o>>2]=l,l=n+8|0,s=t[d>>2]|0,t[d>>2]=t[l>>2],t[l>>2]=s,l=e+8|0,d=n+12|0,e=t[l>>2]|0,t[l>>2]=t[d>>2],t[d>>2]=e,t[n>>2]=t[o>>2]}function oF(e){e=e|0;var n=0,r=0,o=0;n=t[e+4>>2]|0,r=e+8|0,o=t[r>>2]|0,(o|0)!=(n|0)&&(t[r>>2]=o+(~((o+-8-n|0)>>>3)<<3)),e=t[e>>2]|0,e|0&&Ve(e)}function L8(e){e=e|0,lF(e)}function uF(e){e=e|0,sF(e+24|0)}function sF(e){e=e|0;var n=0,r=0,o=0;r=t[e>>2]|0,o=r,r|0&&(e=e+4|0,n=t[e>>2]|0,(n|0)!=(r|0)&&(t[e>>2]=n+(~((n+-8-o|0)>>>3)<<3)),Ve(r))}function lF(e){e=e|0;var n=0;n=An()|0,Nn(e,1,12,n,fF()|0,2),t[e+24>>2]=0,t[e+28>>2]=0,t[e+32>>2]=0}function fF(){return 1896}function cF(e,n,r){e=e|0,n=n|0,r=r|0,dF(t[(aF(e)|0)>>2]|0,n,r)}function aF(e){return e=e|0,(t[(q4()|0)+24>>2]|0)+(e<<3)|0}function dF(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0;o=h,h=h+16|0,l=o+4|0,s=o,pF(l,n),n=hF(l,n)|0,$s(s,r),r=Ks(s,r)|0,Bl[e&31](n,r),Xs(s),h=o}function pF(e,n){e=e|0,n=n|0}function hF(e,n){return e=e|0,n=n|0,mF(n)|0}function mF(e){return e=e|0,e|0}function vF(){var e=0;return c[8080]|0||(R8(11040),Bt(70,11040,Q|0)|0,e=8080,t[e>>2]=1,t[e+4>>2]=0),Dn(11040)|0||R8(11040),11040}function R8(e){e=e|0,yF(e),sc(e,71)}function gF(e){e=e|0,_F(e+24|0)}function _F(e){e=e|0;var n=0,r=0,o=0;r=t[e>>2]|0,o=r,r|0&&(e=e+4|0,n=t[e>>2]|0,(n|0)!=(r|0)&&(t[e>>2]=n+(~((n+-8-o|0)>>>3)<<3)),Ve(r))}function yF(e){e=e|0;var n=0;n=An()|0,Nn(e,5,7,n,SF()|0,0),t[e+24>>2]=0,t[e+28>>2]=0,t[e+32>>2]=0}function wF(e){e=e|0,DF(e)}function DF(e){e=e|0,EF(e)}function EF(e){e=e|0,c[e+8>>0]=1}function SF(){return 1936}function CF(){return TF()|0}function TF(){var e=0,n=0,r=0,o=0,s=0,l=0,d=0;return n=h,h=h+16|0,s=n+4|0,d=n,r=Qo(8)|0,e=r,l=e+4|0,t[l>>2]=Tt(1)|0,o=Tt(8)|0,l=t[l>>2]|0,t[d>>2]=0,t[s>>2]=t[d>>2],xF(o,l,s),t[r>>2]=o,h=n,e|0}function xF(e,n,r){e=e|0,n=n|0,r=r|0,t[e>>2]=n,r=Tt(16)|0,t[r+4>>2]=0,t[r+8>>2]=0,t[r>>2]=1916,t[r+12>>2]=n,t[e+4>>2]=r}function kF(e){e=e|0,da(e),Ve(e)}function AF(e){e=e|0,e=t[e+12>>2]|0,e|0&&Ve(e)}function OF(e){e=e|0,Ve(e)}function IF(){var e=0;return c[8088]|0||(BF(11076),Bt(25,11076,Q|0)|0,e=8088,t[e>>2]=1,t[e+4>>2]=0),11076}function PF(e,n){e=e|0,n=n|0,t[e>>2]=MF()|0,t[e+4>>2]=FF()|0,t[e+12>>2]=n,t[e+8>>2]=LF()|0,t[e+32>>2]=10}function MF(){return 11745}function FF(){return 1940}function LF(){return eh()|0}function RF(e,n,r,o){e=e|0,n=n|0,r=r|0,o=o|0,(Sf(o,896)|0)==512?r|0&&(NF(r),Ve(r)):n|0&&Ve(n)}function NF(e){e=e|0,e=t[e+4>>2]|0,e|0&&Tf(e)}function BF(e){e=e|0,Ys(e)}function os(e,n){e=e|0,n=n|0,t[e>>2]=n}function z4(e){return e=e|0,t[e>>2]|0}function jF(e){return e=e|0,c[t[e>>2]>>0]|0}function UF(e,n){e=e|0,n=n|0;var r=0,o=0;r=h,h=h+16|0,o=r,t[o>>2]=t[e>>2],qF(n,o)|0,h=r}function qF(e,n){e=e|0,n=n|0;var r=0;return r=zF(t[e>>2]|0,n)|0,n=e+4|0,t[(t[n>>2]|0)+8>>2]=r,t[(t[n>>2]|0)+8>>2]|0}function zF(e,n){e=e|0,n=n|0;var r=0,o=0;return r=h,h=h+16|0,o=r,Zo(o),e=Oi(e)|0,n=WF(e,t[n>>2]|0)|0,eu(o),h=r,n|0}function Zo(e){e=e|0,t[e>>2]=t[2701],t[e+4>>2]=t[2703]}function WF(e,n){e=e|0,n=n|0;var r=0;return r=ko(HF()|0)|0,sf(0,r|0,e|0,L4(n)|0)|0}function eu(e){e=e|0,C8(t[e>>2]|0,t[e+4>>2]|0)}function HF(){var e=0;return c[8096]|0||(bF(11120),e=8096,t[e>>2]=1,t[e+4>>2]=0),11120}function bF(e){e=e|0,Ao(e,GF()|0,1)}function GF(){return 1948}function VF(){YF()}function YF(){var e=0,n=0,r=0,o=0,s=0,l=0,d=0,_=0,y=0,k=0,T=0,P=0,q=0,we=0,le=0,ie=0;if(le=h,h=h+16|0,T=le+4|0,P=le,si(65536,10804,t[2702]|0,10812),r=o8()|0,n=t[r>>2]|0,e=t[n>>2]|0,e|0)for(o=t[r+8>>2]|0,r=t[r+4>>2]|0;As(e|0,C[r>>0]|0|0,c[o>>0]|0),n=n+4|0,e=t[n>>2]|0,e;)o=o+1|0,r=r+1|0;if(e=u8()|0,n=t[e>>2]|0,n|0)do uu(n|0,t[e+4>>2]|0),e=e+8|0,n=t[e>>2]|0;while((n|0)!=0);uu($F()|0,5167),k=sa()|0,e=t[k>>2]|0;e:do if(e|0){do KF(t[e+4>>2]|0),e=t[e>>2]|0;while((e|0)!=0);if(e=t[k>>2]|0,e|0){y=k;do{for(;s=e,e=t[e>>2]|0,s=t[s+4>>2]|0,!!(XF(s)|0);)if(t[P>>2]=y,t[T>>2]=t[P>>2],JF(k,T)|0,!e)break e;if(QF(s),y=t[y>>2]|0,n=N8(s)|0,l=Wo()|0,d=h,h=h+((1*(n<<2)|0)+15&-16)|0,_=h,h=h+((1*(n<<2)|0)+15&-16)|0,n=t[(_8(s)|0)>>2]|0,n|0)for(r=d,o=_;t[r>>2]=t[(la(t[n+4>>2]|0)|0)>>2],t[o>>2]=t[n+8>>2],n=t[n>>2]|0,n;)r=r+4|0,o=o+4|0;ie=la(s)|0,n=ZF(s)|0,r=N8(s)|0,o=eL(s)|0,Is(ie|0,n|0,d|0,_|0,r|0,o|0,A4(s)|0),b0(l|0)}while((e|0)!=0)}}while(0);if(e=t[(O4()|0)>>2]|0,e|0)do ie=e+4|0,k=I4(ie)|0,s=V1(k)|0,l=b1(k)|0,d=(G1(k)|0)+1|0,_=oh(k)|0,y=B8(ie)|0,k=Dn(k)|0,T=nh(ie)|0,P=W4(ie)|0,zo(0,s|0,l|0,d|0,_|0,y|0,k|0,T|0,P|0,H4(ie)|0),e=t[e>>2]|0;while((e|0)!=0);e=t[(sa()|0)>>2]|0;e:do if(e|0){t:for(;;){if(n=t[e+4>>2]|0,n|0?(q=t[(la(n)|0)>>2]|0,we=t[(y8(n)|0)>>2]|0,we|0):0){r=we;do{n=r+4|0,o=I4(n)|0;n:do if(o|0)switch(Dn(o)|0){case 0:break t;case 4:case 3:case 2:{_=V1(o)|0,y=b1(o)|0,k=(G1(o)|0)+1|0,T=oh(o)|0,P=Dn(o)|0,ie=nh(n)|0,zo(q|0,_|0,y|0,k|0,T|0,0,P|0,ie|0,W4(n)|0,H4(n)|0);break n}case 1:{d=V1(o)|0,_=b1(o)|0,y=(G1(o)|0)+1|0,k=oh(o)|0,T=B8(n)|0,P=Dn(o)|0,ie=nh(n)|0,zo(q|0,d|0,_|0,y|0,k|0,T|0,P|0,ie|0,W4(n)|0,H4(n)|0);break n}case 5:{k=V1(o)|0,T=b1(o)|0,P=(G1(o)|0)+1|0,ie=oh(o)|0,zo(q|0,k|0,T|0,P|0,ie|0,tL(o)|0,Dn(o)|0,0,0,0);break n}default:break n}while(0);r=t[r>>2]|0}while((r|0)!=0)}if(e=t[e>>2]|0,!e)break e}_n()}while(0);uf(),h=le}function $F(){return 11703}function KF(e){e=e|0,c[e+40>>0]=0}function XF(e){return e=e|0,(c[e+40>>0]|0)!=0|0}function JF(e,n){return e=e|0,n=n|0,n=nL(n)|0,e=t[n>>2]|0,t[n>>2]=t[e>>2],Ve(e),t[n>>2]|0}function QF(e){e=e|0,c[e+40>>0]=1}function N8(e){return e=e|0,t[e+20>>2]|0}function ZF(e){return e=e|0,t[e+8>>2]|0}function eL(e){return e=e|0,t[e+32>>2]|0}function oh(e){return e=e|0,t[e+4>>2]|0}function B8(e){return e=e|0,t[e+4>>2]|0}function W4(e){return e=e|0,t[e+8>>2]|0}function H4(e){return e=e|0,t[e+16>>2]|0}function tL(e){return e=e|0,t[e+20>>2]|0}function nL(e){return e=e|0,t[e>>2]|0}function uh(e){e=e|0;var n=0,r=0,o=0,s=0,l=0,d=0,_=0,y=0,k=0,T=0,P=0,q=0,we=0,le=0,ie=0,Pe=0,ke=0,qe=0,pe=0,_e=0,vt=0;vt=h,h=h+16|0,q=vt;do if(e>>>0<245){if(k=e>>>0<11?16:e+11&-8,e=k>>>3,P=t[2783]|0,r=P>>>e,r&3|0)return n=(r&1^1)+e|0,e=11172+(n<<1<<2)|0,r=e+8|0,o=t[r>>2]|0,s=o+8|0,l=t[s>>2]|0,(e|0)==(l|0)?t[2783]=P&~(1<>2]=e,t[r>>2]=l),_e=n<<3,t[o+4>>2]=_e|3,_e=o+_e+4|0,t[_e>>2]=t[_e>>2]|1,_e=s,h=vt,_e|0;if(T=t[2785]|0,k>>>0>T>>>0){if(r|0)return n=2<>>12&16,n=n>>>d,r=n>>>5&8,n=n>>>r,s=n>>>2&4,n=n>>>s,e=n>>>1&2,n=n>>>e,o=n>>>1&1,o=(r|d|s|e|o)+(n>>>o)|0,n=11172+(o<<1<<2)|0,e=n+8|0,s=t[e>>2]|0,d=s+8|0,r=t[d>>2]|0,(n|0)==(r|0)?(e=P&~(1<>2]=n,t[e>>2]=r,e=P),l=(o<<3)-k|0,t[s+4>>2]=k|3,o=s+k|0,t[o+4>>2]=l|1,t[o+l>>2]=l,T|0&&(s=t[2788]|0,n=T>>>3,r=11172+(n<<1<<2)|0,n=1<>2]|0):(t[2783]=e|n,n=r,e=r+8|0),t[e>>2]=s,t[n+12>>2]=s,t[s+8>>2]=n,t[s+12>>2]=r),t[2785]=l,t[2788]=o,_e=d,h=vt,_e|0;if(_=t[2784]|0,_){if(r=(_&0-_)+-1|0,d=r>>>12&16,r=r>>>d,l=r>>>5&8,r=r>>>l,y=r>>>2&4,r=r>>>y,o=r>>>1&2,r=r>>>o,e=r>>>1&1,e=t[11436+((l|d|y|o|e)+(r>>>e)<<2)>>2]|0,r=(t[e+4>>2]&-8)-k|0,o=t[e+16+(((t[e+16>>2]|0)==0&1)<<2)>>2]|0,!o)y=e,l=r;else{do d=(t[o+4>>2]&-8)-k|0,y=d>>>0>>0,r=y?d:r,e=y?o:e,o=t[o+16+(((t[o+16>>2]|0)==0&1)<<2)>>2]|0;while((o|0)!=0);y=e,l=r}if(d=y+k|0,y>>>0>>0){s=t[y+24>>2]|0,n=t[y+12>>2]|0;do if((n|0)==(y|0)){if(e=y+20|0,n=t[e>>2]|0,!n&&(e=y+16|0,n=t[e>>2]|0,!n)){r=0;break}for(;;){if(r=n+20|0,o=t[r>>2]|0,o|0){n=o,e=r;continue}if(r=n+16|0,o=t[r>>2]|0,o)n=o,e=r;else break}t[e>>2]=0,r=n}else r=t[y+8>>2]|0,t[r+12>>2]=n,t[n+8>>2]=r,r=n;while(0);do if(s|0){if(n=t[y+28>>2]|0,e=11436+(n<<2)|0,(y|0)==(t[e>>2]|0)){if(t[e>>2]=r,!r){t[2784]=_&~(1<>2]|0)!=(y|0)&1)<<2)>>2]=r,!r)break;t[r+24>>2]=s,n=t[y+16>>2]|0,n|0&&(t[r+16>>2]=n,t[n+24>>2]=r),n=t[y+20>>2]|0,n|0&&(t[r+20>>2]=n,t[n+24>>2]=r)}while(0);return l>>>0<16?(_e=l+k|0,t[y+4>>2]=_e|3,_e=y+_e+4|0,t[_e>>2]=t[_e>>2]|1):(t[y+4>>2]=k|3,t[d+4>>2]=l|1,t[d+l>>2]=l,T|0&&(o=t[2788]|0,n=T>>>3,r=11172+(n<<1<<2)|0,n=1<>2]|0):(t[2783]=P|n,n=r,e=r+8|0),t[e>>2]=o,t[n+12>>2]=o,t[o+8>>2]=n,t[o+12>>2]=r),t[2785]=l,t[2788]=d),_e=y+8|0,h=vt,_e|0}else P=k}else P=k}else P=k}else if(e>>>0<=4294967231)if(e=e+11|0,k=e&-8,y=t[2784]|0,y){o=0-k|0,e=e>>>8,e?k>>>0>16777215?_=31:(P=(e+1048320|0)>>>16&8,pe=e<>>16&4,pe=pe<>>16&2,_=14-(T|P|_)+(pe<<_>>>15)|0,_=k>>>(_+7|0)&1|_<<1):_=0,r=t[11436+(_<<2)>>2]|0;e:do if(!r)r=0,e=0,pe=57;else for(e=0,d=k<<((_|0)==31?0:25-(_>>>1)|0),l=0;;){if(s=(t[r+4>>2]&-8)-k|0,s>>>0>>0)if(s)e=r,o=s;else{e=r,o=0,s=r,pe=61;break e}if(s=t[r+20>>2]|0,r=t[r+16+(d>>>31<<2)>>2]|0,l=(s|0)==0|(s|0)==(r|0)?l:s,s=(r|0)==0,s){r=l,pe=57;break}else d=d<<((s^1)&1)}while(0);if((pe|0)==57){if((r|0)==0&(e|0)==0){if(e=2<<_,e=y&(e|0-e),!e){P=k;break}P=(e&0-e)+-1|0,d=P>>>12&16,P=P>>>d,l=P>>>5&8,P=P>>>l,_=P>>>2&4,P=P>>>_,T=P>>>1&2,P=P>>>T,r=P>>>1&1,e=0,r=t[11436+((l|d|_|T|r)+(P>>>r)<<2)>>2]|0}r?(s=r,pe=61):(_=e,d=o)}if((pe|0)==61)for(;;)if(pe=0,r=(t[s+4>>2]&-8)-k|0,P=r>>>0>>0,r=P?r:o,e=P?s:e,s=t[s+16+(((t[s+16>>2]|0)==0&1)<<2)>>2]|0,s)o=r,pe=61;else{_=e,d=r;break}if((_|0)!=0?d>>>0<((t[2785]|0)-k|0)>>>0:0){if(l=_+k|0,_>>>0>=l>>>0)return _e=0,h=vt,_e|0;s=t[_+24>>2]|0,n=t[_+12>>2]|0;do if((n|0)==(_|0)){if(e=_+20|0,n=t[e>>2]|0,!n&&(e=_+16|0,n=t[e>>2]|0,!n)){n=0;break}for(;;){if(r=n+20|0,o=t[r>>2]|0,o|0){n=o,e=r;continue}if(r=n+16|0,o=t[r>>2]|0,o)n=o,e=r;else break}t[e>>2]=0}else _e=t[_+8>>2]|0,t[_e+12>>2]=n,t[n+8>>2]=_e;while(0);do if(s){if(e=t[_+28>>2]|0,r=11436+(e<<2)|0,(_|0)==(t[r>>2]|0)){if(t[r>>2]=n,!n){o=y&~(1<>2]|0)!=(_|0)&1)<<2)>>2]=n,!n){o=y;break}t[n+24>>2]=s,e=t[_+16>>2]|0,e|0&&(t[n+16>>2]=e,t[e+24>>2]=n),e=t[_+20>>2]|0,e&&(t[n+20>>2]=e,t[e+24>>2]=n),o=y}else o=y;while(0);do if(d>>>0>=16){if(t[_+4>>2]=k|3,t[l+4>>2]=d|1,t[l+d>>2]=d,n=d>>>3,d>>>0<256){r=11172+(n<<1<<2)|0,e=t[2783]|0,n=1<>2]|0):(t[2783]=e|n,n=r,e=r+8|0),t[e>>2]=l,t[n+12>>2]=l,t[l+8>>2]=n,t[l+12>>2]=r;break}if(n=d>>>8,n?d>>>0>16777215?n=31:(pe=(n+1048320|0)>>>16&8,_e=n<>>16&4,_e=_e<>>16&2,n=14-(qe|pe|n)+(_e<>>15)|0,n=d>>>(n+7|0)&1|n<<1):n=0,r=11436+(n<<2)|0,t[l+28>>2]=n,e=l+16|0,t[e+4>>2]=0,t[e>>2]=0,e=1<>2]=l,t[l+24>>2]=r,t[l+12>>2]=l,t[l+8>>2]=l;break}for(e=d<<((n|0)==31?0:25-(n>>>1)|0),r=t[r>>2]|0;;){if((t[r+4>>2]&-8|0)==(d|0)){pe=97;break}if(o=r+16+(e>>>31<<2)|0,n=t[o>>2]|0,n)e=e<<1,r=n;else{pe=96;break}}if((pe|0)==96){t[o>>2]=l,t[l+24>>2]=r,t[l+12>>2]=l,t[l+8>>2]=l;break}else if((pe|0)==97){pe=r+8|0,_e=t[pe>>2]|0,t[_e+12>>2]=l,t[pe>>2]=l,t[l+8>>2]=_e,t[l+12>>2]=r,t[l+24>>2]=0;break}}else _e=d+k|0,t[_+4>>2]=_e|3,_e=_+_e+4|0,t[_e>>2]=t[_e>>2]|1;while(0);return _e=_+8|0,h=vt,_e|0}else P=k}else P=k;else P=-1;while(0);if(r=t[2785]|0,r>>>0>=P>>>0)return n=r-P|0,e=t[2788]|0,n>>>0>15?(_e=e+P|0,t[2788]=_e,t[2785]=n,t[_e+4>>2]=n|1,t[_e+n>>2]=n,t[e+4>>2]=P|3):(t[2785]=0,t[2788]=0,t[e+4>>2]=r|3,_e=e+r+4|0,t[_e>>2]=t[_e>>2]|1),_e=e+8|0,h=vt,_e|0;if(d=t[2786]|0,d>>>0>P>>>0)return qe=d-P|0,t[2786]=qe,_e=t[2789]|0,pe=_e+P|0,t[2789]=pe,t[pe+4>>2]=qe|1,t[_e+4>>2]=P|3,_e=_e+8|0,h=vt,_e|0;if(t[2901]|0?e=t[2903]|0:(t[2903]=4096,t[2902]=4096,t[2904]=-1,t[2905]=-1,t[2906]=0,t[2894]=0,e=q&-16^1431655768,t[q>>2]=e,t[2901]=e,e=4096),_=P+48|0,y=P+47|0,l=e+y|0,s=0-e|0,k=l&s,k>>>0<=P>>>0||(e=t[2893]|0,e|0?(T=t[2891]|0,q=T+k|0,q>>>0<=T>>>0|q>>>0>e>>>0):0))return _e=0,h=vt,_e|0;e:do if(t[2894]&4)n=0,pe=133;else{r=t[2789]|0;t:do if(r){for(o=11580;e=t[o>>2]|0,!(e>>>0<=r>>>0?(ie=o+4|0,(e+(t[ie>>2]|0)|0)>>>0>r>>>0):0);)if(e=t[o+8>>2]|0,e)o=e;else{pe=118;break t}if(n=l-d&s,n>>>0<2147483647)if(e=xf(n|0)|0,(e|0)==((t[o>>2]|0)+(t[ie>>2]|0)|0)){if((e|0)!=(-1|0)){d=n,l=e,pe=135;break e}}else o=e,pe=126;else n=0}else pe=118;while(0);do if((pe|0)==118)if(r=xf(0)|0,(r|0)!=(-1|0)?(n=r,we=t[2902]|0,le=we+-1|0,n=((le&n|0)==0?0:(le+n&0-we)-n|0)+k|0,we=t[2891]|0,le=n+we|0,n>>>0>P>>>0&n>>>0<2147483647):0){if(ie=t[2893]|0,ie|0?le>>>0<=we>>>0|le>>>0>ie>>>0:0){n=0;break}if(e=xf(n|0)|0,(e|0)==(r|0)){d=n,l=r,pe=135;break e}else o=e,pe=126}else n=0;while(0);do if((pe|0)==126){if(r=0-n|0,!(_>>>0>n>>>0&(n>>>0<2147483647&(o|0)!=(-1|0))))if((o|0)==(-1|0)){n=0;break}else{d=n,l=o,pe=135;break e}if(e=t[2903]|0,e=y-n+e&0-e,e>>>0>=2147483647){d=n,l=o,pe=135;break e}if((xf(e|0)|0)==(-1|0)){xf(r|0)|0,n=0;break}else{d=e+n|0,l=o,pe=135;break e}}while(0);t[2894]=t[2894]|4,pe=133}while(0);if((((pe|0)==133?k>>>0<2147483647:0)?(qe=xf(k|0)|0,ie=xf(0)|0,Pe=ie-qe|0,ke=Pe>>>0>(P+40|0)>>>0,!((qe|0)==(-1|0)|ke^1|qe>>>0>>0&((qe|0)!=(-1|0)&(ie|0)!=(-1|0))^1)):0)&&(d=ke?Pe:n,l=qe,pe=135),(pe|0)==135){n=(t[2891]|0)+d|0,t[2891]=n,n>>>0>(t[2892]|0)>>>0&&(t[2892]=n),y=t[2789]|0;do if(y){for(n=11580;;){if(e=t[n>>2]|0,r=n+4|0,o=t[r>>2]|0,(l|0)==(e+o|0)){pe=145;break}if(s=t[n+8>>2]|0,s)n=s;else break}if(((pe|0)==145?(t[n+12>>2]&8|0)==0:0)?y>>>0>>0&y>>>0>=e>>>0:0){t[r>>2]=o+d,_e=y+8|0,_e=(_e&7|0)==0?0:0-_e&7,pe=y+_e|0,_e=(t[2786]|0)+(d-_e)|0,t[2789]=pe,t[2786]=_e,t[pe+4>>2]=_e|1,t[pe+_e+4>>2]=40,t[2790]=t[2905];break}for(l>>>0<(t[2787]|0)>>>0&&(t[2787]=l),r=l+d|0,n=11580;;){if((t[n>>2]|0)==(r|0)){pe=153;break}if(e=t[n+8>>2]|0,e)n=e;else break}if((pe|0)==153?(t[n+12>>2]&8|0)==0:0){t[n>>2]=l,T=n+4|0,t[T>>2]=(t[T>>2]|0)+d,T=l+8|0,T=l+((T&7|0)==0?0:0-T&7)|0,n=r+8|0,n=r+((n&7|0)==0?0:0-n&7)|0,k=T+P|0,_=n-T-P|0,t[T+4>>2]=P|3;do if((n|0)!=(y|0)){if((n|0)==(t[2788]|0)){_e=(t[2785]|0)+_|0,t[2785]=_e,t[2788]=k,t[k+4>>2]=_e|1,t[k+_e>>2]=_e;break}if(e=t[n+4>>2]|0,(e&3|0)==1){d=e&-8,o=e>>>3;e:do if(e>>>0<256)if(e=t[n+8>>2]|0,r=t[n+12>>2]|0,(r|0)==(e|0)){t[2783]=t[2783]&~(1<>2]=r,t[r+8>>2]=e;break}else{l=t[n+24>>2]|0,e=t[n+12>>2]|0;do if((e|0)==(n|0)){if(o=n+16|0,r=o+4|0,e=t[r>>2]|0,!e)if(e=t[o>>2]|0,e)r=o;else{e=0;break}for(;;){if(o=e+20|0,s=t[o>>2]|0,s|0){e=s,r=o;continue}if(o=e+16|0,s=t[o>>2]|0,s)e=s,r=o;else break}t[r>>2]=0}else _e=t[n+8>>2]|0,t[_e+12>>2]=e,t[e+8>>2]=_e;while(0);if(!l)break;r=t[n+28>>2]|0,o=11436+(r<<2)|0;do if((n|0)!=(t[o>>2]|0)){if(t[l+16+(((t[l+16>>2]|0)!=(n|0)&1)<<2)>>2]=e,!e)break e}else{if(t[o>>2]=e,e|0)break;t[2784]=t[2784]&~(1<>2]=l,r=n+16|0,o=t[r>>2]|0,o|0&&(t[e+16>>2]=o,t[o+24>>2]=e),r=t[r+4>>2]|0,!r)break;t[e+20>>2]=r,t[r+24>>2]=e}while(0);n=n+d|0,s=d+_|0}else s=_;if(n=n+4|0,t[n>>2]=t[n>>2]&-2,t[k+4>>2]=s|1,t[k+s>>2]=s,n=s>>>3,s>>>0<256){r=11172+(n<<1<<2)|0,e=t[2783]|0,n=1<>2]|0):(t[2783]=e|n,n=r,e=r+8|0),t[e>>2]=k,t[n+12>>2]=k,t[k+8>>2]=n,t[k+12>>2]=r;break}n=s>>>8;do if(!n)n=0;else{if(s>>>0>16777215){n=31;break}pe=(n+1048320|0)>>>16&8,_e=n<>>16&4,_e=_e<>>16&2,n=14-(qe|pe|n)+(_e<>>15)|0,n=s>>>(n+7|0)&1|n<<1}while(0);if(o=11436+(n<<2)|0,t[k+28>>2]=n,e=k+16|0,t[e+4>>2]=0,t[e>>2]=0,e=t[2784]|0,r=1<>2]=k,t[k+24>>2]=o,t[k+12>>2]=k,t[k+8>>2]=k;break}for(e=s<<((n|0)==31?0:25-(n>>>1)|0),r=t[o>>2]|0;;){if((t[r+4>>2]&-8|0)==(s|0)){pe=194;break}if(o=r+16+(e>>>31<<2)|0,n=t[o>>2]|0,n)e=e<<1,r=n;else{pe=193;break}}if((pe|0)==193){t[o>>2]=k,t[k+24>>2]=r,t[k+12>>2]=k,t[k+8>>2]=k;break}else if((pe|0)==194){pe=r+8|0,_e=t[pe>>2]|0,t[_e+12>>2]=k,t[pe>>2]=k,t[k+8>>2]=_e,t[k+12>>2]=r,t[k+24>>2]=0;break}}else _e=(t[2786]|0)+_|0,t[2786]=_e,t[2789]=k,t[k+4>>2]=_e|1;while(0);return _e=T+8|0,h=vt,_e|0}for(n=11580;e=t[n>>2]|0,!(e>>>0<=y>>>0?(_e=e+(t[n+4>>2]|0)|0,_e>>>0>y>>>0):0);)n=t[n+8>>2]|0;s=_e+-47|0,e=s+8|0,e=s+((e&7|0)==0?0:0-e&7)|0,s=y+16|0,e=e>>>0>>0?y:e,n=e+8|0,r=l+8|0,r=(r&7|0)==0?0:0-r&7,pe=l+r|0,r=d+-40-r|0,t[2789]=pe,t[2786]=r,t[pe+4>>2]=r|1,t[pe+r+4>>2]=40,t[2790]=t[2905],r=e+4|0,t[r>>2]=27,t[n>>2]=t[2895],t[n+4>>2]=t[2896],t[n+8>>2]=t[2897],t[n+12>>2]=t[2898],t[2895]=l,t[2896]=d,t[2898]=0,t[2897]=n,n=e+24|0;do pe=n,n=n+4|0,t[n>>2]=7;while((pe+8|0)>>>0<_e>>>0);if((e|0)!=(y|0)){if(l=e-y|0,t[r>>2]=t[r>>2]&-2,t[y+4>>2]=l|1,t[e>>2]=l,n=l>>>3,l>>>0<256){r=11172+(n<<1<<2)|0,e=t[2783]|0,n=1<>2]|0):(t[2783]=e|n,n=r,e=r+8|0),t[e>>2]=y,t[n+12>>2]=y,t[y+8>>2]=n,t[y+12>>2]=r;break}if(n=l>>>8,n?l>>>0>16777215?r=31:(pe=(n+1048320|0)>>>16&8,_e=n<>>16&4,_e=_e<>>16&2,r=14-(qe|pe|r)+(_e<>>15)|0,r=l>>>(r+7|0)&1|r<<1):r=0,o=11436+(r<<2)|0,t[y+28>>2]=r,t[y+20>>2]=0,t[s>>2]=0,n=t[2784]|0,e=1<>2]=y,t[y+24>>2]=o,t[y+12>>2]=y,t[y+8>>2]=y;break}for(e=l<<((r|0)==31?0:25-(r>>>1)|0),r=t[o>>2]|0;;){if((t[r+4>>2]&-8|0)==(l|0)){pe=216;break}if(o=r+16+(e>>>31<<2)|0,n=t[o>>2]|0,n)e=e<<1,r=n;else{pe=215;break}}if((pe|0)==215){t[o>>2]=y,t[y+24>>2]=r,t[y+12>>2]=y,t[y+8>>2]=y;break}else if((pe|0)==216){pe=r+8|0,_e=t[pe>>2]|0,t[_e+12>>2]=y,t[pe>>2]=y,t[y+8>>2]=_e,t[y+12>>2]=r,t[y+24>>2]=0;break}}}else{_e=t[2787]|0,(_e|0)==0|l>>>0<_e>>>0&&(t[2787]=l),t[2895]=l,t[2896]=d,t[2898]=0,t[2792]=t[2901],t[2791]=-1,n=0;do _e=11172+(n<<1<<2)|0,t[_e+12>>2]=_e,t[_e+8>>2]=_e,n=n+1|0;while((n|0)!=32);_e=l+8|0,_e=(_e&7|0)==0?0:0-_e&7,pe=l+_e|0,_e=d+-40-_e|0,t[2789]=pe,t[2786]=_e,t[pe+4>>2]=_e|1,t[pe+_e+4>>2]=40,t[2790]=t[2905]}while(0);if(n=t[2786]|0,n>>>0>P>>>0)return qe=n-P|0,t[2786]=qe,_e=t[2789]|0,pe=_e+P|0,t[2789]=pe,t[pe+4>>2]=qe|1,t[_e+4>>2]=P|3,_e=_e+8|0,h=vt,_e|0}return t[(ca()|0)>>2]=12,_e=0,h=vt,_e|0}function sh(e){e=e|0;var n=0,r=0,o=0,s=0,l=0,d=0,_=0,y=0;if(!!e){r=e+-8|0,s=t[2787]|0,e=t[e+-4>>2]|0,n=e&-8,y=r+n|0;do if(e&1)_=r,d=r;else{if(o=t[r>>2]|0,!(e&3)||(d=r+(0-o)|0,l=o+n|0,d>>>0>>0))return;if((d|0)==(t[2788]|0)){if(e=y+4|0,n=t[e>>2]|0,(n&3|0)!=3){_=d,n=l;break}t[2785]=l,t[e>>2]=n&-2,t[d+4>>2]=l|1,t[d+l>>2]=l;return}if(r=o>>>3,o>>>0<256)if(e=t[d+8>>2]|0,n=t[d+12>>2]|0,(n|0)==(e|0)){t[2783]=t[2783]&~(1<>2]=n,t[n+8>>2]=e,_=d,n=l;break}s=t[d+24>>2]|0,e=t[d+12>>2]|0;do if((e|0)==(d|0)){if(r=d+16|0,n=r+4|0,e=t[n>>2]|0,!e)if(e=t[r>>2]|0,e)n=r;else{e=0;break}for(;;){if(r=e+20|0,o=t[r>>2]|0,o|0){e=o,n=r;continue}if(r=e+16|0,o=t[r>>2]|0,o)e=o,n=r;else break}t[n>>2]=0}else _=t[d+8>>2]|0,t[_+12>>2]=e,t[e+8>>2]=_;while(0);if(s){if(n=t[d+28>>2]|0,r=11436+(n<<2)|0,(d|0)==(t[r>>2]|0)){if(t[r>>2]=e,!e){t[2784]=t[2784]&~(1<>2]|0)!=(d|0)&1)<<2)>>2]=e,!e){_=d,n=l;break}t[e+24>>2]=s,n=d+16|0,r=t[n>>2]|0,r|0&&(t[e+16>>2]=r,t[r+24>>2]=e),n=t[n+4>>2]|0,n?(t[e+20>>2]=n,t[n+24>>2]=e,_=d,n=l):(_=d,n=l)}else _=d,n=l}while(0);if(!(d>>>0>=y>>>0)&&(e=y+4|0,o=t[e>>2]|0,!!(o&1))){if(o&2)t[e>>2]=o&-2,t[_+4>>2]=n|1,t[d+n>>2]=n,s=n;else{if(e=t[2788]|0,(y|0)==(t[2789]|0)){if(y=(t[2786]|0)+n|0,t[2786]=y,t[2789]=_,t[_+4>>2]=y|1,(_|0)!=(e|0))return;t[2788]=0,t[2785]=0;return}if((y|0)==(e|0)){y=(t[2785]|0)+n|0,t[2785]=y,t[2788]=d,t[_+4>>2]=y|1,t[d+y>>2]=y;return}s=(o&-8)+n|0,r=o>>>3;do if(o>>>0<256)if(n=t[y+8>>2]|0,e=t[y+12>>2]|0,(e|0)==(n|0)){t[2783]=t[2783]&~(1<>2]=e,t[e+8>>2]=n;break}else{l=t[y+24>>2]|0,e=t[y+12>>2]|0;do if((e|0)==(y|0)){if(r=y+16|0,n=r+4|0,e=t[n>>2]|0,!e)if(e=t[r>>2]|0,e)n=r;else{r=0;break}for(;;){if(r=e+20|0,o=t[r>>2]|0,o|0){e=o,n=r;continue}if(r=e+16|0,o=t[r>>2]|0,o)e=o,n=r;else break}t[n>>2]=0,r=e}else r=t[y+8>>2]|0,t[r+12>>2]=e,t[e+8>>2]=r,r=e;while(0);if(l|0){if(e=t[y+28>>2]|0,n=11436+(e<<2)|0,(y|0)==(t[n>>2]|0)){if(t[n>>2]=r,!r){t[2784]=t[2784]&~(1<>2]|0)!=(y|0)&1)<<2)>>2]=r,!r)break;t[r+24>>2]=l,e=y+16|0,n=t[e>>2]|0,n|0&&(t[r+16>>2]=n,t[n+24>>2]=r),e=t[e+4>>2]|0,e|0&&(t[r+20>>2]=e,t[e+24>>2]=r)}}while(0);if(t[_+4>>2]=s|1,t[d+s>>2]=s,(_|0)==(t[2788]|0)){t[2785]=s;return}}if(e=s>>>3,s>>>0<256){r=11172+(e<<1<<2)|0,n=t[2783]|0,e=1<>2]|0):(t[2783]=n|e,e=r,n=r+8|0),t[n>>2]=_,t[e+12>>2]=_,t[_+8>>2]=e,t[_+12>>2]=r;return}e=s>>>8,e?s>>>0>16777215?e=31:(d=(e+1048320|0)>>>16&8,y=e<>>16&4,y=y<>>16&2,e=14-(l|d|e)+(y<>>15)|0,e=s>>>(e+7|0)&1|e<<1):e=0,o=11436+(e<<2)|0,t[_+28>>2]=e,t[_+20>>2]=0,t[_+16>>2]=0,n=t[2784]|0,r=1<>>1)|0),r=t[o>>2]|0;;){if((t[r+4>>2]&-8|0)==(s|0)){e=73;break}if(o=r+16+(n>>>31<<2)|0,e=t[o>>2]|0,e)n=n<<1,r=e;else{e=72;break}}if((e|0)==72){t[o>>2]=_,t[_+24>>2]=r,t[_+12>>2]=_,t[_+8>>2]=_;break}else if((e|0)==73){d=r+8|0,y=t[d>>2]|0,t[y+12>>2]=_,t[d>>2]=_,t[_+8>>2]=y,t[_+12>>2]=r,t[_+24>>2]=0;break}}else t[2784]=n|r,t[o>>2]=_,t[_+24>>2]=o,t[_+12>>2]=_,t[_+8>>2]=_;while(0);if(y=(t[2791]|0)+-1|0,t[2791]=y,!y)e=11588;else return;for(;e=t[e>>2]|0,e;)e=e+8|0;t[2791]=-1}}}function rL(){return 11628}function iL(e){e=e|0;var n=0,r=0;return n=h,h=h+16|0,r=n,t[r>>2]=sL(t[e+60>>2]|0)|0,e=lh(Ms(6,r|0)|0)|0,h=n,e|0}function j8(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0,_=0,y=0,k=0,T=0,P=0,q=0,we=0;P=h,h=h+48|0,k=P+16|0,l=P,s=P+32|0,_=e+28|0,o=t[_>>2]|0,t[s>>2]=o,y=e+20|0,o=(t[y>>2]|0)-o|0,t[s+4>>2]=o,t[s+8>>2]=n,t[s+12>>2]=r,o=o+r|0,d=e+60|0,t[l>>2]=t[d>>2],t[l+4>>2]=s,t[l+8>>2]=2,l=lh(G0(146,l|0)|0)|0;e:do if((o|0)!=(l|0)){for(n=2;!((l|0)<0);)if(o=o-l|0,we=t[s+4>>2]|0,q=l>>>0>we>>>0,s=q?s+8|0:s,n=(q<<31>>31)+n|0,we=l-(q?we:0)|0,t[s>>2]=(t[s>>2]|0)+we,q=s+4|0,t[q>>2]=(t[q>>2]|0)-we,t[k>>2]=t[d>>2],t[k+4>>2]=s,t[k+8>>2]=n,l=lh(G0(146,k|0)|0)|0,(o|0)==(l|0)){T=3;break e}t[e+16>>2]=0,t[_>>2]=0,t[y>>2]=0,t[e>>2]=t[e>>2]|32,(n|0)==2?r=0:r=r-(t[s+4>>2]|0)|0}else T=3;while(0);return(T|0)==3&&(we=t[e+44>>2]|0,t[e+16>>2]=we+(t[e+48>>2]|0),t[_>>2]=we,t[y>>2]=we),h=P,r|0}function oL(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0;return s=h,h=h+32|0,l=s,o=s+20|0,t[l>>2]=t[e+60>>2],t[l+4>>2]=0,t[l+8>>2]=n,t[l+12>>2]=o,t[l+16>>2]=r,(lh(Uu(140,l|0)|0)|0)<0?(t[o>>2]=-1,e=-1):e=t[o>>2]|0,h=s,e|0}function lh(e){return e=e|0,e>>>0>4294963200&&(t[(ca()|0)>>2]=0-e,e=-1),e|0}function ca(){return(uL()|0)+64|0}function uL(){return b4()|0}function b4(){return 2084}function sL(e){return e=e|0,e|0}function lL(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0;return s=h,h=h+32|0,o=s,t[e+36>>2]=1,((t[e>>2]&64|0)==0?(t[o>>2]=t[e+60>>2],t[o+4>>2]=21523,t[o+8>>2]=s+16,su(54,o|0)|0):0)&&(c[e+75>>0]=-1),o=j8(e,n,r)|0,h=s,o|0}function U8(e,n){e=e|0,n=n|0;var r=0,o=0;if(r=c[e>>0]|0,o=c[n>>0]|0,r<<24>>24==0?1:r<<24>>24!=o<<24>>24)e=o;else{do e=e+1|0,n=n+1|0,r=c[e>>0]|0,o=c[n>>0]|0;while(!(r<<24>>24==0?1:r<<24>>24!=o<<24>>24));e=o}return(r&255)-(e&255)|0}function fL(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0;e:do if(!r)e=0;else{for(;o=c[e>>0]|0,s=c[n>>0]|0,o<<24>>24==s<<24>>24;)if(r=r+-1|0,r)e=e+1|0,n=n+1|0;else{e=0;break e}e=(o&255)-(s&255)|0}while(0);return e|0}function q8(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0,_=0,y=0,k=0,T=0,P=0,q=0,we=0,le=0,ie=0;ie=h,h=h+224|0,T=ie+120|0,P=ie+80|0,we=ie,le=ie+136|0,o=P,s=o+40|0;do t[o>>2]=0,o=o+4|0;while((o|0)<(s|0));return t[T>>2]=t[r>>2],(G4(0,n,T,we,P)|0)<0?r=-1:((t[e+76>>2]|0)>-1?q=cL(e)|0:q=0,r=t[e>>2]|0,k=r&32,(c[e+74>>0]|0)<1&&(t[e>>2]=r&-33),o=e+48|0,t[o>>2]|0?r=G4(e,n,T,we,P)|0:(s=e+44|0,l=t[s>>2]|0,t[s>>2]=le,d=e+28|0,t[d>>2]=le,_=e+20|0,t[_>>2]=le,t[o>>2]=80,y=e+16|0,t[y>>2]=le+80,r=G4(e,n,T,we,P)|0,l&&(dh[t[e+36>>2]&7](e,0,0)|0,r=(t[_>>2]|0)==0?-1:r,t[s>>2]=l,t[o>>2]=0,t[y>>2]=0,t[d>>2]=0,t[_>>2]=0)),o=t[e>>2]|0,t[e>>2]=o|k,q|0&&aL(e),r=(o&32|0)==0?r:-1),h=ie,r|0}function G4(e,n,r,o,s){e=e|0,n=n|0,r=r|0,o=o|0,s=s|0;var l=0,d=0,_=0,y=0,k=0,T=0,P=0,q=0,we=0,le=0,ie=0,Pe=0,ke=0,qe=0,pe=0,_e=0,vt=0,Ln=0,Ht=0,It=0,gn=0,Pn=0,zt=0;zt=h,h=h+64|0,Ht=zt+16|0,It=zt,vt=zt+24|0,gn=zt+8|0,Pn=zt+20|0,t[Ht>>2]=n,qe=(e|0)!=0,pe=vt+40|0,_e=pe,vt=vt+39|0,Ln=gn+4|0,d=0,l=0,T=0;e:for(;;){do if((l|0)>-1)if((d|0)>(2147483647-l|0)){t[(ca()|0)>>2]=75,l=-1;break}else{l=d+l|0;break}while(0);if(d=c[n>>0]|0,d<<24>>24)_=n;else{ke=87;break}t:for(;;){switch(d<<24>>24){case 37:{d=_,ke=9;break t}case 0:{d=_;break t}default:}Pe=_+1|0,t[Ht>>2]=Pe,d=c[Pe>>0]|0,_=Pe}t:do if((ke|0)==9)for(;;){if(ke=0,(c[_+1>>0]|0)!=37)break t;if(d=d+1|0,_=_+2|0,t[Ht>>2]=_,(c[_>>0]|0)==37)ke=9;else break}while(0);if(d=d-n|0,qe&&ri(e,n,d),d|0){n=_;continue}y=_+1|0,d=(c[y>>0]|0)+-48|0,d>>>0<10?(Pe=(c[_+2>>0]|0)==36,ie=Pe?d:-1,T=Pe?1:T,y=Pe?_+3|0:y):ie=-1,t[Ht>>2]=y,d=c[y>>0]|0,_=(d<<24>>24)+-32|0;t:do if(_>>>0<32)for(k=0,P=d;;){if(d=1<<_,!(d&75913)){d=P;break t}if(k=d|k,y=y+1|0,t[Ht>>2]=y,d=c[y>>0]|0,_=(d<<24>>24)+-32|0,_>>>0>=32)break;P=d}else k=0;while(0);if(d<<24>>24==42){if(_=y+1|0,d=(c[_>>0]|0)+-48|0,d>>>0<10?(c[y+2>>0]|0)==36:0)t[s+(d<<2)>>2]=10,d=t[o+((c[_>>0]|0)+-48<<3)>>2]|0,T=1,y=y+3|0;else{if(T|0){l=-1;break}qe?(T=(t[r>>2]|0)+(4-1)&~(4-1),d=t[T>>2]|0,t[r>>2]=T+4,T=0,y=_):(d=0,T=0,y=_)}t[Ht>>2]=y,Pe=(d|0)<0,d=Pe?0-d|0:d,k=Pe?k|8192:k}else{if(d=z8(Ht)|0,(d|0)<0){l=-1;break}y=t[Ht>>2]|0}do if((c[y>>0]|0)==46){if((c[y+1>>0]|0)!=42){t[Ht>>2]=y+1,_=z8(Ht)|0,y=t[Ht>>2]|0;break}if(P=y+2|0,_=(c[P>>0]|0)+-48|0,_>>>0<10?(c[y+3>>0]|0)==36:0){t[s+(_<<2)>>2]=10,_=t[o+((c[P>>0]|0)+-48<<3)>>2]|0,y=y+4|0,t[Ht>>2]=y;break}if(T|0){l=-1;break e}qe?(Pe=(t[r>>2]|0)+(4-1)&~(4-1),_=t[Pe>>2]|0,t[r>>2]=Pe+4):_=0,t[Ht>>2]=P,y=P}else _=-1;while(0);for(le=0;;){if(((c[y>>0]|0)+-65|0)>>>0>57){l=-1;break e}if(Pe=y+1|0,t[Ht>>2]=Pe,P=c[(c[y>>0]|0)+-65+(5178+(le*58|0))>>0]|0,q=P&255,(q+-1|0)>>>0<8)le=q,y=Pe;else break}if(!(P<<24>>24)){l=-1;break}we=(ie|0)>-1;do if(P<<24>>24==19)if(we){l=-1;break e}else ke=49;else{if(we){t[s+(ie<<2)>>2]=q,we=o+(ie<<3)|0,ie=t[we+4>>2]|0,ke=It,t[ke>>2]=t[we>>2],t[ke+4>>2]=ie,ke=49;break}if(!qe){l=0;break e}W8(It,q,r)}while(0);if((ke|0)==49?(ke=0,!qe):0){d=0,n=Pe;continue}y=c[y>>0]|0,y=(le|0)!=0&(y&15|0)==3?y&-33:y,we=k&-65537,ie=(k&8192|0)==0?k:we;t:do switch(y|0){case 110:switch((le&255)<<24>>24){case 0:{t[t[It>>2]>>2]=l,d=0,n=Pe;continue e}case 1:{t[t[It>>2]>>2]=l,d=0,n=Pe;continue e}case 2:{d=t[It>>2]|0,t[d>>2]=l,t[d+4>>2]=((l|0)<0)<<31>>31,d=0,n=Pe;continue e}case 3:{g[t[It>>2]>>1]=l,d=0,n=Pe;continue e}case 4:{c[t[It>>2]>>0]=l,d=0,n=Pe;continue e}case 6:{t[t[It>>2]>>2]=l,d=0,n=Pe;continue e}case 7:{d=t[It>>2]|0,t[d>>2]=l,t[d+4>>2]=((l|0)<0)<<31>>31,d=0,n=Pe;continue e}default:{d=0,n=Pe;continue e}}case 112:{y=120,_=_>>>0>8?_:8,n=ie|8,ke=61;break}case 88:case 120:{n=ie,ke=61;break}case 111:{y=It,n=t[y>>2]|0,y=t[y+4>>2]|0,q=pL(n,y,pe)|0,we=_e-q|0,k=0,P=5642,_=(ie&8|0)==0|(_|0)>(we|0)?_:we+1|0,we=ie,ke=67;break}case 105:case 100:if(y=It,n=t[y>>2]|0,y=t[y+4>>2]|0,(y|0)<0){n=fh(0,0,n|0,y|0)|0,y=be,k=It,t[k>>2]=n,t[k+4>>2]=y,k=1,P=5642,ke=66;break t}else{k=(ie&2049|0)!=0&1,P=(ie&2048|0)==0?(ie&1|0)==0?5642:5644:5643,ke=66;break t}case 117:{y=It,k=0,P=5642,n=t[y>>2]|0,y=t[y+4>>2]|0,ke=66;break}case 99:{c[vt>>0]=t[It>>2],n=vt,k=0,P=5642,q=pe,y=1,_=we;break}case 109:{y=hL(t[(ca()|0)>>2]|0)|0,ke=71;break}case 115:{y=t[It>>2]|0,y=y|0?y:5652,ke=71;break}case 67:{t[gn>>2]=t[It>>2],t[Ln>>2]=0,t[It>>2]=gn,q=-1,y=gn,ke=75;break}case 83:{n=t[It>>2]|0,_?(q=_,y=n,ke=75):(wi(e,32,d,0,ie),n=0,ke=84);break}case 65:case 71:case 70:case 69:case 97:case 103:case 102:case 101:{d=vL(e,+L[It>>3],d,_,ie,y)|0,n=Pe;continue e}default:k=0,P=5642,q=pe,y=_,_=ie}while(0);t:do if((ke|0)==61)ie=It,le=t[ie>>2]|0,ie=t[ie+4>>2]|0,q=dL(le,ie,pe,y&32)|0,P=(n&8|0)==0|(le|0)==0&(ie|0)==0,k=P?0:2,P=P?5642:5642+(y>>4)|0,we=n,n=le,y=ie,ke=67;else if((ke|0)==66)q=aa(n,y,pe)|0,we=ie,ke=67;else if((ke|0)==71)ke=0,ie=mL(y,0,_)|0,le=(ie|0)==0,n=y,k=0,P=5642,q=le?y+_|0:ie,y=le?_:ie-y|0,_=we;else if((ke|0)==75){for(ke=0,P=y,n=0,_=0;k=t[P>>2]|0,!(!k||(_=H8(Pn,k)|0,(_|0)<0|_>>>0>(q-n|0)>>>0));)if(n=_+n|0,q>>>0>n>>>0)P=P+4|0;else break;if((_|0)<0){l=-1;break e}if(wi(e,32,d,n,ie),!n)n=0,ke=84;else for(k=0;;){if(_=t[y>>2]|0,!_){ke=84;break t}if(_=H8(Pn,_)|0,k=_+k|0,(k|0)>(n|0)){ke=84;break t}if(ri(e,Pn,_),k>>>0>=n>>>0){ke=84;break}else y=y+4|0}}while(0);if((ke|0)==67)ke=0,y=(n|0)!=0|(y|0)!=0,ie=(_|0)!=0|y,y=((y^1)&1)+(_e-q)|0,n=ie?q:pe,q=pe,y=ie?(_|0)>(y|0)?_:y:_,_=(_|0)>-1?we&-65537:we;else if((ke|0)==84){ke=0,wi(e,32,d,n,ie^8192),d=(d|0)>(n|0)?d:n,n=Pe;continue}le=q-n|0,we=(y|0)<(le|0)?le:y,ie=we+k|0,d=(d|0)<(ie|0)?ie:d,wi(e,32,d,ie,_),ri(e,P,k),wi(e,48,d,ie,_^65536),wi(e,48,we,le,0),ri(e,n,le),wi(e,32,d,ie,_^8192),n=Pe}e:do if((ke|0)==87&&!e)if(!T)l=0;else{for(l=1;n=t[s+(l<<2)>>2]|0,!!n;)if(W8(o+(l<<3)|0,n,r),l=l+1|0,(l|0)>=10){l=1;break e}for(;;){if(t[s+(l<<2)>>2]|0){l=-1;break e}if(l=l+1|0,(l|0)>=10){l=1;break}}}while(0);return h=zt,l|0}function cL(e){return e=e|0,0}function aL(e){e=e|0}function ri(e,n,r){e=e|0,n=n|0,r=r|0,t[e>>2]&32||TL(n,r,e)|0}function z8(e){e=e|0;var n=0,r=0,o=0;if(r=t[e>>2]|0,o=(c[r>>0]|0)+-48|0,o>>>0<10){n=0;do n=o+(n*10|0)|0,r=r+1|0,t[e>>2]=r,o=(c[r>>0]|0)+-48|0;while(o>>>0<10)}else n=0;return n|0}function W8(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0;e:do if(n>>>0<=20)do switch(n|0){case 9:{o=(t[r>>2]|0)+(4-1)&~(4-1),n=t[o>>2]|0,t[r>>2]=o+4,t[e>>2]=n;break e}case 10:{o=(t[r>>2]|0)+(4-1)&~(4-1),n=t[o>>2]|0,t[r>>2]=o+4,o=e,t[o>>2]=n,t[o+4>>2]=((n|0)<0)<<31>>31;break e}case 11:{o=(t[r>>2]|0)+(4-1)&~(4-1),n=t[o>>2]|0,t[r>>2]=o+4,o=e,t[o>>2]=n,t[o+4>>2]=0;break e}case 12:{o=(t[r>>2]|0)+(8-1)&~(8-1),n=o,s=t[n>>2]|0,n=t[n+4>>2]|0,t[r>>2]=o+8,o=e,t[o>>2]=s,t[o+4>>2]=n;break e}case 13:{s=(t[r>>2]|0)+(4-1)&~(4-1),o=t[s>>2]|0,t[r>>2]=s+4,o=(o&65535)<<16>>16,s=e,t[s>>2]=o,t[s+4>>2]=((o|0)<0)<<31>>31;break e}case 14:{s=(t[r>>2]|0)+(4-1)&~(4-1),o=t[s>>2]|0,t[r>>2]=s+4,s=e,t[s>>2]=o&65535,t[s+4>>2]=0;break e}case 15:{s=(t[r>>2]|0)+(4-1)&~(4-1),o=t[s>>2]|0,t[r>>2]=s+4,o=(o&255)<<24>>24,s=e,t[s>>2]=o,t[s+4>>2]=((o|0)<0)<<31>>31;break e}case 16:{s=(t[r>>2]|0)+(4-1)&~(4-1),o=t[s>>2]|0,t[r>>2]=s+4,s=e,t[s>>2]=o&255,t[s+4>>2]=0;break e}case 17:{s=(t[r>>2]|0)+(8-1)&~(8-1),l=+L[s>>3],t[r>>2]=s+8,L[e>>3]=l;break e}case 18:{s=(t[r>>2]|0)+(8-1)&~(8-1),l=+L[s>>3],t[r>>2]=s+8,L[e>>3]=l;break e}default:break e}while(0);while(0)}function dL(e,n,r,o){if(e=e|0,n=n|0,r=r|0,o=o|0,!((e|0)==0&(n|0)==0))do r=r+-1|0,c[r>>0]=C[5694+(e&15)>>0]|0|o,e=ch(e|0,n|0,4)|0,n=be;while(!((e|0)==0&(n|0)==0));return r|0}function pL(e,n,r){if(e=e|0,n=n|0,r=r|0,!((e|0)==0&(n|0)==0))do r=r+-1|0,c[r>>0]=e&7|48,e=ch(e|0,n|0,3)|0,n=be;while(!((e|0)==0&(n|0)==0));return r|0}function aa(e,n,r){e=e|0,n=n|0,r=r|0;var o=0;if(n>>>0>0|(n|0)==0&e>>>0>4294967295){for(;o=K4(e|0,n|0,10,0)|0,r=r+-1|0,c[r>>0]=o&255|48,o=e,e=$4(e|0,n|0,10,0)|0,n>>>0>9|(n|0)==9&o>>>0>4294967295;)n=be;n=e}else n=e;if(n)for(;r=r+-1|0,c[r>>0]=(n>>>0)%10|0|48,!(n>>>0<10);)n=(n>>>0)/10|0;return r|0}function hL(e){return e=e|0,DL(e,t[(wL()|0)+188>>2]|0)|0}function mL(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0;l=n&255,o=(r|0)!=0;e:do if(o&(e&3|0)!=0)for(s=n&255;;){if((c[e>>0]|0)==s<<24>>24){d=6;break e}if(e=e+1|0,r=r+-1|0,o=(r|0)!=0,!(o&(e&3|0)!=0)){d=5;break}}else d=5;while(0);(d|0)==5&&(o?d=6:r=0);e:do if((d|0)==6&&(s=n&255,(c[e>>0]|0)!=s<<24>>24)){o=Un(l,16843009)|0;t:do if(r>>>0>3){for(;l=t[e>>2]^o,!((l&-2139062144^-2139062144)&l+-16843009|0);)if(e=e+4|0,r=r+-4|0,r>>>0<=3){d=11;break t}}else d=11;while(0);if((d|0)==11&&!r){r=0;break}for(;;){if((c[e>>0]|0)==s<<24>>24)break e;if(e=e+1|0,r=r+-1|0,!r){r=0;break}}}while(0);return(r|0?e:0)|0}function wi(e,n,r,o,s){e=e|0,n=n|0,r=r|0,o=o|0,s=s|0;var l=0,d=0;if(d=h,h=h+256|0,l=d,(r|0)>(o|0)&(s&73728|0)==0){if(s=r-o|0,pa(l|0,n|0,(s>>>0<256?s:256)|0)|0,s>>>0>255){n=r-o|0;do ri(e,l,256),s=s+-256|0;while(s>>>0>255);s=n&255}ri(e,l,s)}h=d}function H8(e,n){return e=e|0,n=n|0,e?e=_L(e,n,0)|0:e=0,e|0}function vL(e,n,r,o,s,l){e=e|0,n=+n,r=r|0,o=o|0,s=s|0,l=l|0;var d=0,_=0,y=0,k=0,T=0,P=0,q=0,we=0,le=0,ie=0,Pe=0,ke=0,qe=0,pe=0,_e=0,vt=0,Ln=0,Ht=0,It=0,gn=0,Pn=0,zt=0,Dr=0;Dr=h,h=h+560|0,y=Dr+8|0,Pe=Dr,zt=Dr+524|0,Pn=zt,k=Dr+512|0,t[Pe>>2]=0,gn=k+12|0,b8(n)|0,(be|0)<0?(n=-n,Ht=1,Ln=5659):(Ht=(s&2049|0)!=0&1,Ln=(s&2048|0)==0?(s&1|0)==0?5660:5665:5662),b8(n)|0,It=be&2146435072;do if(It>>>0<2146435072|(It|0)==2146435072&0<0){if(we=+gL(n,Pe)*2,d=we!=0,d&&(t[Pe>>2]=(t[Pe>>2]|0)+-1),qe=l|32,(qe|0)==97){le=l&32,q=(le|0)==0?Ln:Ln+9|0,P=Ht|2,d=12-o|0;do if(o>>>0>11|(d|0)==0)n=we;else{n=8;do d=d+-1|0,n=n*16;while((d|0)!=0);if((c[q>>0]|0)==45){n=-(n+(-we-n));break}else{n=we+n-n;break}}while(0);_=t[Pe>>2]|0,d=(_|0)<0?0-_|0:_,d=aa(d,((d|0)<0)<<31>>31,gn)|0,(d|0)==(gn|0)&&(d=k+11|0,c[d>>0]=48),c[d+-1>>0]=(_>>31&2)+43,T=d+-2|0,c[T>>0]=l+15,k=(o|0)<1,y=(s&8|0)==0,d=zt;do It=~~n,_=d+1|0,c[d>>0]=C[5694+It>>0]|le,n=(n-+(It|0))*16,((_-Pn|0)==1?!(y&(k&n==0)):0)?(c[_>>0]=46,d=d+2|0):d=_;while(n!=0);It=d-Pn|0,Pn=gn-T|0,gn=(o|0)!=0&(It+-2|0)<(o|0)?o+2|0:It,d=Pn+P+gn|0,wi(e,32,r,d,s),ri(e,q,P),wi(e,48,r,d,s^65536),ri(e,zt,It),wi(e,48,gn-It|0,0,0),ri(e,T,Pn),wi(e,32,r,d,s^8192);break}_=(o|0)<0?6:o,d?(d=(t[Pe>>2]|0)+-28|0,t[Pe>>2]=d,n=we*268435456):(n=we,d=t[Pe>>2]|0),It=(d|0)<0?y:y+288|0,y=It;do _e=~~n>>>0,t[y>>2]=_e,y=y+4|0,n=(n-+(_e>>>0))*1e9;while(n!=0);if((d|0)>0)for(k=It,P=y;;){if(T=(d|0)<29?d:29,d=P+-4|0,d>>>0>=k>>>0){y=0;do pe=X8(t[d>>2]|0,0,T|0)|0,pe=Y4(pe|0,be|0,y|0,0)|0,_e=be,ke=K4(pe|0,_e|0,1e9,0)|0,t[d>>2]=ke,y=$4(pe|0,_e|0,1e9,0)|0,d=d+-4|0;while(d>>>0>=k>>>0);y&&(k=k+-4|0,t[k>>2]=y)}for(y=P;!(y>>>0<=k>>>0);)if(d=y+-4|0,!(t[d>>2]|0))y=d;else break;if(d=(t[Pe>>2]|0)-T|0,t[Pe>>2]=d,(d|0)>0)P=y;else break}else k=It;if((d|0)<0){o=((_+25|0)/9|0)+1|0,ie=(qe|0)==102;do{if(le=0-d|0,le=(le|0)<9?le:9,k>>>0>>0){T=(1<>>le,q=0,d=k;do _e=t[d>>2]|0,t[d>>2]=(_e>>>le)+q,q=Un(_e&T,P)|0,d=d+4|0;while(d>>>0>>0);d=(t[k>>2]|0)==0?k+4|0:k,q?(t[y>>2]=q,k=d,d=y+4|0):(k=d,d=y)}else k=(t[k>>2]|0)==0?k+4|0:k,d=y;y=ie?It:k,y=(d-y>>2|0)>(o|0)?y+(o<<2)|0:d,d=(t[Pe>>2]|0)+le|0,t[Pe>>2]=d}while((d|0)<0);d=k,o=y}else d=k,o=y;if(_e=It,d>>>0>>0){if(y=(_e-d>>2)*9|0,T=t[d>>2]|0,T>>>0>=10){k=10;do k=k*10|0,y=y+1|0;while(T>>>0>=k>>>0)}}else y=0;if(ie=(qe|0)==103,ke=(_|0)!=0,k=_-((qe|0)!=102?y:0)+((ke&ie)<<31>>31)|0,(k|0)<(((o-_e>>2)*9|0)+-9|0)){if(k=k+9216|0,le=It+4+(((k|0)/9|0)+-1024<<2)|0,k=((k|0)%9|0)+1|0,(k|0)<9){T=10;do T=T*10|0,k=k+1|0;while((k|0)!=9)}else T=10;if(P=t[le>>2]|0,q=(P>>>0)%(T>>>0)|0,k=(le+4|0)==(o|0),k&(q|0)==0)k=le;else if(we=(((P>>>0)/(T>>>0)|0)&1|0)==0?9007199254740992:9007199254740994,pe=(T|0)/2|0,n=q>>>0>>0?.5:k&(q|0)==(pe|0)?1:1.5,Ht&&(pe=(c[Ln>>0]|0)==45,n=pe?-n:n,we=pe?-we:we),k=P-q|0,t[le>>2]=k,we+n!=we){if(pe=k+T|0,t[le>>2]=pe,pe>>>0>999999999)for(y=le;k=y+-4|0,t[y>>2]=0,k>>>0>>0&&(d=d+-4|0,t[d>>2]=0),pe=(t[k>>2]|0)+1|0,t[k>>2]=pe,pe>>>0>999999999;)y=k;else k=le;if(y=(_e-d>>2)*9|0,P=t[d>>2]|0,P>>>0>=10){T=10;do T=T*10|0,y=y+1|0;while(P>>>0>=T>>>0)}}else k=le;k=k+4|0,k=o>>>0>k>>>0?k:o,pe=d}else k=o,pe=d;for(qe=k;;){if(qe>>>0<=pe>>>0){Pe=0;break}if(d=qe+-4|0,!(t[d>>2]|0))qe=d;else{Pe=1;break}}o=0-y|0;do if(ie)if(d=((ke^1)&1)+_|0,(d|0)>(y|0)&(y|0)>-5?(T=l+-1|0,_=d+-1-y|0):(T=l+-2|0,_=d+-1|0),d=s&8,d)le=d;else{if(Pe?(vt=t[qe+-4>>2]|0,(vt|0)!=0):0)if((vt>>>0)%10|0)k=0;else{k=0,d=10;do d=d*10|0,k=k+1|0;while(!((vt>>>0)%(d>>>0)|0|0))}else k=9;if(d=((qe-_e>>2)*9|0)+-9|0,(T|32|0)==102){le=d-k|0,le=(le|0)>0?le:0,_=(_|0)<(le|0)?_:le,le=0;break}else{le=d+y-k|0,le=(le|0)>0?le:0,_=(_|0)<(le|0)?_:le,le=0;break}}else T=l,le=s&8;while(0);if(ie=_|le,P=(ie|0)!=0&1,q=(T|32|0)==102,q)ke=0,d=(y|0)>0?y:0;else{if(d=(y|0)<0?o:y,d=aa(d,((d|0)<0)<<31>>31,gn)|0,k=gn,(k-d|0)<2)do d=d+-1|0,c[d>>0]=48;while((k-d|0)<2);c[d+-1>>0]=(y>>31&2)+43,d=d+-2|0,c[d>>0]=T,ke=d,d=k-d|0}if(d=Ht+1+_+P+d|0,wi(e,32,r,d,s),ri(e,Ln,Ht),wi(e,48,r,d,s^65536),q){T=pe>>>0>It>>>0?It:pe,le=zt+9|0,P=le,q=zt+8|0,k=T;do{if(y=aa(t[k>>2]|0,0,le)|0,(k|0)==(T|0))(y|0)==(le|0)&&(c[q>>0]=48,y=q);else if(y>>>0>zt>>>0){pa(zt|0,48,y-Pn|0)|0;do y=y+-1|0;while(y>>>0>zt>>>0)}ri(e,y,P-y|0),k=k+4|0}while(k>>>0<=It>>>0);if(ie|0&&ri(e,5710,1),k>>>0>>0&(_|0)>0)for(;;){if(y=aa(t[k>>2]|0,0,le)|0,y>>>0>zt>>>0){pa(zt|0,48,y-Pn|0)|0;do y=y+-1|0;while(y>>>0>zt>>>0)}if(ri(e,y,(_|0)<9?_:9),k=k+4|0,y=_+-9|0,k>>>0>>0&(_|0)>9)_=y;else{_=y;break}}wi(e,48,_+9|0,9,0)}else{if(ie=Pe?qe:pe+4|0,(_|0)>-1){Pe=zt+9|0,le=(le|0)==0,o=Pe,P=0-Pn|0,q=zt+8|0,T=pe;do{y=aa(t[T>>2]|0,0,Pe)|0,(y|0)==(Pe|0)&&(c[q>>0]=48,y=q);do if((T|0)==(pe|0)){if(k=y+1|0,ri(e,y,1),le&(_|0)<1){y=k;break}ri(e,5710,1),y=k}else{if(y>>>0<=zt>>>0)break;pa(zt|0,48,y+P|0)|0;do y=y+-1|0;while(y>>>0>zt>>>0)}while(0);Pn=o-y|0,ri(e,y,(_|0)>(Pn|0)?Pn:_),_=_-Pn|0,T=T+4|0}while(T>>>0>>0&(_|0)>-1)}wi(e,48,_+18|0,18,0),ri(e,ke,gn-ke|0)}wi(e,32,r,d,s^8192)}else zt=(l&32|0)!=0,d=Ht+3|0,wi(e,32,r,d,s&-65537),ri(e,Ln,Ht),ri(e,n!=n|!1?zt?5686:5690:zt?5678:5682,3),wi(e,32,r,d,s^8192);while(0);return h=Dr,((d|0)<(r|0)?r:d)|0}function b8(e){e=+e;var n=0;return L[j>>3]=e,n=t[j>>2]|0,be=t[j+4>>2]|0,n|0}function gL(e,n){return e=+e,n=n|0,+ +G8(e,n)}function G8(e,n){e=+e,n=n|0;var r=0,o=0,s=0;switch(L[j>>3]=e,r=t[j>>2]|0,o=t[j+4>>2]|0,s=ch(r|0,o|0,52)|0,s&2047){case 0:{e!=0?(e=+G8(e*18446744073709552e3,n),r=(t[n>>2]|0)+-64|0):r=0,t[n>>2]=r;break}case 2047:break;default:t[n>>2]=(s&2047)+-1022,t[j>>2]=r,t[j+4>>2]=o&-2146435073|1071644672,e=+L[j>>3]}return+e}function _L(e,n,r){e=e|0,n=n|0,r=r|0;do if(e){if(n>>>0<128){c[e>>0]=n,e=1;break}if(!(t[t[(yL()|0)+188>>2]>>2]|0))if((n&-128|0)==57216){c[e>>0]=n,e=1;break}else{t[(ca()|0)>>2]=84,e=-1;break}if(n>>>0<2048){c[e>>0]=n>>>6|192,c[e+1>>0]=n&63|128,e=2;break}if(n>>>0<55296|(n&-8192|0)==57344){c[e>>0]=n>>>12|224,c[e+1>>0]=n>>>6&63|128,c[e+2>>0]=n&63|128,e=3;break}if((n+-65536|0)>>>0<1048576){c[e>>0]=n>>>18|240,c[e+1>>0]=n>>>12&63|128,c[e+2>>0]=n>>>6&63|128,c[e+3>>0]=n&63|128,e=4;break}else{t[(ca()|0)>>2]=84,e=-1;break}}else e=1;while(0);return e|0}function yL(){return b4()|0}function wL(){return b4()|0}function DL(e,n){e=e|0,n=n|0;var r=0,o=0;for(o=0;;){if((C[5712+o>>0]|0)==(e|0)){e=2;break}if(r=o+1|0,(r|0)==87){r=5800,o=87,e=5;break}else o=r}if((e|0)==2&&(o?(r=5800,e=5):r=5800),(e|0)==5)for(;;){do e=r,r=r+1|0;while((c[e>>0]|0)!=0);if(o=o+-1|0,o)e=5;else break}return EL(r,t[n+20>>2]|0)|0}function EL(e,n){return e=e|0,n=n|0,SL(e,n)|0}function SL(e,n){return e=e|0,n=n|0,n?n=CL(t[n>>2]|0,t[n+4>>2]|0,e)|0:n=0,(n|0?n:e)|0}function CL(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0,_=0,y=0,k=0,T=0,P=0,q=0;q=(t[e>>2]|0)+1794895138|0,l=fc(t[e+8>>2]|0,q)|0,o=fc(t[e+12>>2]|0,q)|0,s=fc(t[e+16>>2]|0,q)|0;e:do if((l>>>0>>2>>>0?(P=n-(l<<2)|0,o>>>0

>>0&s>>>0

>>0):0)?((s|o)&3|0)==0:0){for(P=o>>>2,T=s>>>2,k=0;;){if(_=l>>>1,y=k+_|0,d=y<<1,s=d+P|0,o=fc(t[e+(s<<2)>>2]|0,q)|0,s=fc(t[e+(s+1<<2)>>2]|0,q)|0,!(s>>>0>>0&o>>>0<(n-s|0)>>>0)){o=0;break e}if(c[e+(s+o)>>0]|0){o=0;break e}if(o=U8(r,e+s|0)|0,!o)break;if(o=(o|0)<0,(l|0)==1){o=0;break e}else k=o?k:y,l=o?_:l-_|0}o=d+T|0,s=fc(t[e+(o<<2)>>2]|0,q)|0,o=fc(t[e+(o+1<<2)>>2]|0,q)|0,o>>>0>>0&s>>>0<(n-o|0)>>>0?o=(c[e+(o+s)>>0]|0)==0?e+o|0:0:o=0}else o=0;while(0);return o|0}function fc(e,n){e=e|0,n=n|0;var r=0;return r=Z8(e|0)|0,((n|0)==0?e:r)|0}function TL(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0,_=0;o=r+16|0,s=t[o>>2]|0,s?l=5:xL(r)|0?o=0:(s=t[o>>2]|0,l=5);e:do if((l|0)==5){if(_=r+20|0,d=t[_>>2]|0,o=d,(s-d|0)>>>0>>0){o=dh[t[r+36>>2]&7](r,e,n)|0;break}t:do if((c[r+75>>0]|0)>-1){for(d=n;;){if(!d){l=0,s=e;break t}if(s=d+-1|0,(c[e+s>>0]|0)==10)break;d=s}if(o=dh[t[r+36>>2]&7](r,e,d)|0,o>>>0>>0)break e;l=d,s=e+d|0,n=n-d|0,o=t[_>>2]|0}else l=0,s=e;while(0);vn(o|0,s|0,n|0)|0,t[_>>2]=(t[_>>2]|0)+n,o=l+n|0}while(0);return o|0}function xL(e){e=e|0;var n=0,r=0;return n=e+74|0,r=c[n>>0]|0,c[n>>0]=r+255|r,n=t[e>>2]|0,n&8?(t[e>>2]=n|32,e=-1):(t[e+8>>2]=0,t[e+4>>2]=0,r=t[e+44>>2]|0,t[e+28>>2]=r,t[e+20>>2]=r,t[e+16>>2]=r+(t[e+48>>2]|0),e=0),e|0}function Ur(e,n){e=w(e),n=w(n);var r=0,o=0;r=V8(e)|0;do if((r&2147483647)>>>0<=2139095040){if(o=V8(n)|0,(o&2147483647)>>>0<=2139095040)if((o^r|0)<0){e=(r|0)<0?n:e;break}else{e=e>2]=e,t[j>>2]|0|0}function cc(e,n){e=w(e),n=w(n);var r=0,o=0;r=Y8(e)|0;do if((r&2147483647)>>>0<=2139095040){if(o=Y8(n)|0,(o&2147483647)>>>0<=2139095040)if((o^r|0)<0){e=(r|0)<0?e:n;break}else{e=e>2]=e,t[j>>2]|0|0}function V4(e,n){e=w(e),n=w(n);var r=0,o=0,s=0,l=0,d=0,_=0,y=0,k=0;l=(D[j>>2]=e,t[j>>2]|0),_=(D[j>>2]=n,t[j>>2]|0),r=l>>>23&255,d=_>>>23&255,y=l&-2147483648,s=_<<1;e:do if((s|0)!=0?!((r|0)==255|((kL(n)|0)&2147483647)>>>0>2139095040):0){if(o=l<<1,o>>>0<=s>>>0)return n=w(e*w(0)),w((o|0)==(s|0)?n:e);if(r)o=l&8388607|8388608;else{if(r=l<<9,(r|0)>-1){o=r,r=0;do r=r+-1|0,o=o<<1;while((o|0)>-1)}else r=0;o=l<<1-r}if(d)_=_&8388607|8388608;else{if(l=_<<9,(l|0)>-1){s=0;do s=s+-1|0,l=l<<1;while((l|0)>-1)}else s=0;d=s,_=_<<1-s}s=o-_|0,l=(s|0)>-1;t:do if((r|0)>(d|0)){for(;;){if(l)if(s)o=s;else break;if(o=o<<1,r=r+-1|0,s=o-_|0,l=(s|0)>-1,(r|0)<=(d|0))break t}n=w(e*w(0));break e}while(0);if(l)if(s)o=s;else{n=w(e*w(0));break}if(o>>>0<8388608)do o=o<<1,r=r+-1|0;while(o>>>0<8388608);(r|0)>0?r=o+-8388608|r<<23:r=o>>>(1-r|0),n=(t[j>>2]=r|y,w(D[j>>2]))}else k=3;while(0);return(k|0)==3&&(n=w(e*n),n=w(n/n)),w(n)}function kL(e){return e=w(e),D[j>>2]=e,t[j>>2]|0|0}function AL(e,n){return e=e|0,n=n|0,q8(t[582]|0,e,n)|0}function $n(e){e=e|0,_n()}function da(e){e=e|0}function OL(e,n){return e=e|0,n=n|0,0}function IL(e){return e=e|0,($8(e+4|0)|0)==-1?(Nl[t[(t[e>>2]|0)+8>>2]&127](e),e=1):e=0,e|0}function $8(e){e=e|0;var n=0;return n=t[e>>2]|0,t[e>>2]=n+-1,n+-1|0}function Tf(e){e=e|0,IL(e)|0&&PL(e)}function PL(e){e=e|0;var n=0;n=e+8|0,((t[n>>2]|0)!=0?($8(n)|0)!=-1:0)||Nl[t[(t[e>>2]|0)+16>>2]&127](e)}function Tt(e){e=e|0;var n=0;for(n=(e|0)==0?1:e;e=uh(n)|0,!(e|0);){if(e=FL()|0,!e){e=0;break}fD[e&0]()}return e|0}function K8(e){return e=e|0,Tt(e)|0}function Ve(e){e=e|0,sh(e)}function ML(e){e=e|0,(c[e+11>>0]|0)<0&&Ve(t[e>>2]|0)}function FL(){var e=0;return e=t[2923]|0,t[2923]=e+0,e|0}function LL(){}function fh(e,n,r,o){return e=e|0,n=n|0,r=r|0,o=o|0,o=n-o-(r>>>0>e>>>0|0)>>>0,be=o,e-r>>>0|0|0}function Y4(e,n,r,o){return e=e|0,n=n|0,r=r|0,o=o|0,r=e+r>>>0,be=n+o+(r>>>0>>0|0)>>>0,r|0|0}function pa(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0,d=0;if(l=e+r|0,n=n&255,(r|0)>=67){for(;e&3;)c[e>>0]=n,e=e+1|0;for(o=l&-4|0,s=o-64|0,d=n|n<<8|n<<16|n<<24;(e|0)<=(s|0);)t[e>>2]=d,t[e+4>>2]=d,t[e+8>>2]=d,t[e+12>>2]=d,t[e+16>>2]=d,t[e+20>>2]=d,t[e+24>>2]=d,t[e+28>>2]=d,t[e+32>>2]=d,t[e+36>>2]=d,t[e+40>>2]=d,t[e+44>>2]=d,t[e+48>>2]=d,t[e+52>>2]=d,t[e+56>>2]=d,t[e+60>>2]=d,e=e+64|0;for(;(e|0)<(o|0);)t[e>>2]=d,e=e+4|0}for(;(e|0)<(l|0);)c[e>>0]=n,e=e+1|0;return l-r|0}function X8(e,n,r){return e=e|0,n=n|0,r=r|0,(r|0)<32?(be=n<>>32-r,e<>>r,e>>>r|(n&(1<>>r-32|0)}function vn(e,n,r){e=e|0,n=n|0,r=r|0;var o=0,s=0,l=0;if((r|0)>=8192)return wo(e|0,n|0,r|0)|0;if(l=e|0,s=e+r|0,(e&3)==(n&3)){for(;e&3;){if(!r)return l|0;c[e>>0]=c[n>>0]|0,e=e+1|0,n=n+1|0,r=r-1|0}for(r=s&-4|0,o=r-64|0;(e|0)<=(o|0);)t[e>>2]=t[n>>2],t[e+4>>2]=t[n+4>>2],t[e+8>>2]=t[n+8>>2],t[e+12>>2]=t[n+12>>2],t[e+16>>2]=t[n+16>>2],t[e+20>>2]=t[n+20>>2],t[e+24>>2]=t[n+24>>2],t[e+28>>2]=t[n+28>>2],t[e+32>>2]=t[n+32>>2],t[e+36>>2]=t[n+36>>2],t[e+40>>2]=t[n+40>>2],t[e+44>>2]=t[n+44>>2],t[e+48>>2]=t[n+48>>2],t[e+52>>2]=t[n+52>>2],t[e+56>>2]=t[n+56>>2],t[e+60>>2]=t[n+60>>2],e=e+64|0,n=n+64|0;for(;(e|0)<(r|0);)t[e>>2]=t[n>>2],e=e+4|0,n=n+4|0}else for(r=s-4|0;(e|0)<(r|0);)c[e>>0]=c[n>>0]|0,c[e+1>>0]=c[n+1>>0]|0,c[e+2>>0]=c[n+2>>0]|0,c[e+3>>0]=c[n+3>>0]|0,e=e+4|0,n=n+4|0;for(;(e|0)<(s|0);)c[e>>0]=c[n>>0]|0,e=e+1|0,n=n+1|0;return l|0}function J8(e){e=e|0;var n=0;return n=c[ce+(e&255)>>0]|0,(n|0)<8?n|0:(n=c[ce+(e>>8&255)>>0]|0,(n|0)<8?n+8|0:(n=c[ce+(e>>16&255)>>0]|0,(n|0)<8?n+16|0:(c[ce+(e>>>24)>>0]|0)+24|0))}function Q8(e,n,r,o,s){e=e|0,n=n|0,r=r|0,o=o|0,s=s|0;var l=0,d=0,_=0,y=0,k=0,T=0,P=0,q=0,we=0,le=0;if(T=e,y=n,k=y,d=r,q=o,_=q,!k)return l=(s|0)!=0,_?l?(t[s>>2]=e|0,t[s+4>>2]=n&0,q=0,s=0,be=q,s|0):(q=0,s=0,be=q,s|0):(l&&(t[s>>2]=(T>>>0)%(d>>>0),t[s+4>>2]=0),q=0,s=(T>>>0)/(d>>>0)>>>0,be=q,s|0);l=(_|0)==0;do if(d){if(!l){if(l=(cr(_|0)|0)-(cr(k|0)|0)|0,l>>>0<=31){P=l+1|0,_=31-l|0,n=l-31>>31,d=P,e=T>>>(P>>>0)&n|k<<_,n=k>>>(P>>>0)&n,l=0,_=T<<_;break}return s?(t[s>>2]=e|0,t[s+4>>2]=y|n&0,q=0,s=0,be=q,s|0):(q=0,s=0,be=q,s|0)}if(l=d-1|0,l&d|0){_=(cr(d|0)|0)+33-(cr(k|0)|0)|0,le=64-_|0,P=32-_|0,y=P>>31,we=_-32|0,n=we>>31,d=_,e=P-1>>31&k>>>(we>>>0)|(k<>>(_>>>0))&n,n=n&k>>>(_>>>0),l=T<>>(we>>>0))&y|T<>31;break}return s|0&&(t[s>>2]=l&T,t[s+4>>2]=0),(d|0)==1?(we=y|n&0,le=e|0|0,be=we,le|0):(le=J8(d|0)|0,we=k>>>(le>>>0)|0,le=k<<32-le|T>>>(le>>>0)|0,be=we,le|0)}else{if(l)return s|0&&(t[s>>2]=(k>>>0)%(d>>>0),t[s+4>>2]=0),we=0,le=(k>>>0)/(d>>>0)>>>0,be=we,le|0;if(!T)return s|0&&(t[s>>2]=0,t[s+4>>2]=(k>>>0)%(_>>>0)),we=0,le=(k>>>0)/(_>>>0)>>>0,be=we,le|0;if(l=_-1|0,!(l&_))return s|0&&(t[s>>2]=e|0,t[s+4>>2]=l&k|n&0),we=0,le=k>>>((J8(_|0)|0)>>>0),be=we,le|0;if(l=(cr(_|0)|0)-(cr(k|0)|0)|0,l>>>0<=30){n=l+1|0,_=31-l|0,d=n,e=k<<_|T>>>(n>>>0),n=k>>>(n>>>0),l=0,_=T<<_;break}return s?(t[s>>2]=e|0,t[s+4>>2]=y|n&0,we=0,le=0,be=we,le|0):(we=0,le=0,be=we,le|0)}while(0);if(!d)k=_,y=0,_=0;else{P=r|0|0,T=q|o&0,k=Y4(P|0,T|0,-1,-1)|0,r=be,y=_,_=0;do o=y,y=l>>>31|y<<1,l=_|l<<1,o=e<<1|o>>>31|0,q=e>>>31|n<<1|0,fh(k|0,r|0,o|0,q|0)|0,le=be,we=le>>31|((le|0)<0?-1:0)<<1,_=we&1,e=fh(o|0,q|0,we&P|0,(((le|0)<0?-1:0)>>31|((le|0)<0?-1:0)<<1)&T|0)|0,n=be,d=d-1|0;while((d|0)!=0);k=y,y=0}return d=0,s|0&&(t[s>>2]=e,t[s+4>>2]=n),we=(l|0)>>>31|(k|d)<<1|(d<<1|l>>>31)&0|y,le=(l<<1|0>>>31)&-2|_,be=we,le|0}function $4(e,n,r,o){return e=e|0,n=n|0,r=r|0,o=o|0,Q8(e,n,r,o,0)|0}function xf(e){e=e|0;var n=0,r=0;return r=e+15&-16|0,n=t[N>>2]|0,e=n+r|0,(r|0)>0&(e|0)<(n|0)|(e|0)<0?(vr()|0,Os(12),-1):(t[N>>2]=e,((e|0)>(Xn()|0)?(Bn()|0)==0:0)?(t[N>>2]=n,Os(12),-1):n|0)}function Y1(e,n,r){e=e|0,n=n|0,r=r|0;var o=0;if((n|0)<(e|0)&(e|0)<(n+r|0)){for(o=e,n=n+r|0,e=e+r|0;(r|0)>0;)e=e-1|0,n=n-1|0,r=r-1|0,c[e>>0]=c[n>>0]|0;e=o}else vn(e,n,r)|0;return e|0}function K4(e,n,r,o){e=e|0,n=n|0,r=r|0,o=o|0;var s=0,l=0;return l=h,h=h+16|0,s=l|0,Q8(e,n,r,o,s)|0,h=l,be=t[s+4>>2]|0,t[s>>2]|0|0}function Z8(e){return e=e|0,(e&255)<<24|(e>>8&255)<<16|(e>>16&255)<<8|e>>>24|0}function RL(e,n,r,o,s,l){e=e|0,n=n|0,r=r|0,o=o|0,s=s|0,l=l|0,eD[e&1](n|0,r|0,o|0,s|0,l|0)}function NL(e,n,r){e=e|0,n=n|0,r=w(r),tD[e&1](n|0,w(r))}function BL(e,n,r){e=e|0,n=n|0,r=+r,nD[e&31](n|0,+r)}function jL(e,n,r,o){return e=e|0,n=n|0,r=w(r),o=w(o),w(rD[e&0](n|0,w(r),w(o)))}function UL(e,n){e=e|0,n=n|0,Nl[e&127](n|0)}function qL(e,n,r){e=e|0,n=n|0,r=r|0,Bl[e&31](n|0,r|0)}function zL(e,n){return e=e|0,n=n|0,dc[e&31](n|0)|0}function WL(e,n,r,o,s){e=e|0,n=n|0,r=+r,o=+o,s=s|0,iD[e&1](n|0,+r,+o,s|0)}function HL(e,n,r,o){e=e|0,n=n|0,r=+r,o=+o,CR[e&1](n|0,+r,+o)}function bL(e,n,r,o){return e=e|0,n=n|0,r=r|0,o=o|0,dh[e&7](n|0,r|0,o|0)|0}function VL(e,n,r,o){return e=e|0,n=n|0,r=r|0,o=o|0,+TR[e&1](n|0,r|0,o|0)}function YL(e,n){return e=e|0,n=n|0,+oD[e&15](n|0)}function $L(e,n,r){return e=e|0,n=n|0,r=+r,xR[e&1](n|0,+r)|0}function KL(e,n,r){return e=e|0,n=n|0,r=r|0,J4[e&15](n|0,r|0)|0}function XL(e,n,r,o,s,l){e=e|0,n=n|0,r=r|0,o=+o,s=+s,l=l|0,kR[e&1](n|0,r|0,+o,+s,l|0)}function JL(e,n,r,o,s,l,d){e=e|0,n=n|0,r=r|0,o=o|0,s=s|0,l=l|0,d=d|0,AR[e&1](n|0,r|0,o|0,s|0,l|0,d|0)}function QL(e,n,r){return e=e|0,n=n|0,r=r|0,+uD[e&7](n|0,r|0)}function ZL(e){return e=e|0,ph[e&7]()|0}function eR(e,n,r,o,s,l){return e=e|0,n=n|0,r=r|0,o=o|0,s=s|0,l=l|0,sD[e&1](n|0,r|0,o|0,s|0,l|0)|0}function tR(e,n,r,o,s){e=e|0,n=n|0,r=r|0,o=o|0,s=+s,OR[e&1](n|0,r|0,o|0,+s)}function nR(e,n,r,o,s,l,d){e=e|0,n=n|0,r=r|0,o=w(o),s=s|0,l=w(l),d=d|0,lD[e&1](n|0,r|0,w(o),s|0,w(l),d|0)}function rR(e,n,r,o){e=e|0,n=n|0,r=r|0,o=o|0,X1[e&15](n|0,r|0,o|0)}function iR(e){e=e|0,fD[e&0]()}function oR(e,n,r,o){e=e|0,n=n|0,r=r|0,o=+o,cD[e&15](n|0,r|0,+o)}function uR(e,n,r){return e=e|0,n=+n,r=+r,IR[e&1](+n,+r)|0}function sR(e,n,r,o,s){e=e|0,n=n|0,r=r|0,o=o|0,s=s|0,Q4[e&15](n|0,r|0,o|0,s|0)}function lR(e,n,r,o,s){e=e|0,n=n|0,r=r|0,o=o|0,s=s|0,pt(0)}function fR(e,n){e=e|0,n=w(n),pt(1)}function Lo(e,n){e=e|0,n=+n,pt(2)}function cR(e,n,r){return e=e|0,n=w(n),r=w(r),pt(3),tt}function tn(e){e=e|0,pt(4)}function $1(e,n){e=e|0,n=n|0,pt(5)}function tu(e){return e=e|0,pt(6),0}function aR(e,n,r,o){e=e|0,n=+n,r=+r,o=o|0,pt(7)}function dR(e,n,r){e=e|0,n=+n,r=+r,pt(8)}function pR(e,n,r){return e=e|0,n=n|0,r=r|0,pt(9),0}function hR(e,n,r){return e=e|0,n=n|0,r=r|0,pt(10),0}function ac(e){return e=e|0,pt(11),0}function mR(e,n){return e=e|0,n=+n,pt(12),0}function K1(e,n){return e=e|0,n=n|0,pt(13),0}function vR(e,n,r,o,s){e=e|0,n=n|0,r=+r,o=+o,s=s|0,pt(14)}function gR(e,n,r,o,s,l){e=e|0,n=n|0,r=r|0,o=o|0,s=s|0,l=l|0,pt(15)}function X4(e,n){return e=e|0,n=n|0,pt(16),0}function _R(){return pt(17),0}function yR(e,n,r,o,s){return e=e|0,n=n|0,r=r|0,o=o|0,s=s|0,pt(18),0}function wR(e,n,r,o){e=e|0,n=n|0,r=r|0,o=+o,pt(19)}function DR(e,n,r,o,s,l){e=e|0,n=n|0,r=w(r),o=o|0,s=w(s),l=l|0,pt(20)}function ah(e,n,r){e=e|0,n=n|0,r=r|0,pt(21)}function ER(){pt(22)}function ha(e,n,r){e=e|0,n=n|0,r=+r,pt(23)}function SR(e,n){return e=+e,n=+n,pt(24),0}function ma(e,n,r,o){e=e|0,n=n|0,r=r|0,o=o|0,pt(25)}var eD=[lR,_I],tD=[fR,x0],nD=[Lo,Kf,Tl,xl,hf,xo,mf,Wa,Hs,mi,Xf,Rc,Jf,ao,$o,kl,Nc,Al,vf,Lo,Lo,Lo,Lo,Lo,Lo,Lo,Lo,Lo,Lo,Lo,Lo,Lo],rD=[cR],Nl=[tn,da,Km,Xm,es,a_,d_,p_,YA,$A,KA,oI,uI,sI,kF,AF,OF,Sn,Oc,pf,ti,vi,Nm,Uc,r1,Hd,Pl,mv,Av,Kc,Jc,yp,Eg,na,Ug,Yg,u_,k_,q_,J_,a4,Ct,w9,U9,ex,hx,Ix,_0,s7,S7,W7,uk,Dk,Wk,Qk,tA,_A,DA,jA,JA,eO,gO,RO,d1,vP,YP,lM,SM,GM,uF,gF,wF,tn,tn,tn,tn,tn,tn,tn,tn,tn,tn,tn,tn,tn,tn,tn,tn,tn,tn,tn,tn,tn,tn,tn,tn,tn,tn,tn,tn,tn,tn,tn,tn,tn,tn,tn,tn,tn,tn,tn,tn,tn,tn,tn,tn,tn,tn,tn,tn,tn,tn,tn,tn,tn,tn,tn,tn],Bl=[$1,ja,Ua,$f,gu,co,qa,Ws,za,Mc,Fc,Lc,po,Ce,ze,Et,on,sr,mn,Zf,gd,xd,H9,rx,ck,yP,HO,C8,$1,$1,$1,$1],dc=[tu,iL,Ba,m,b,ee,Ye,Ze,ut,In,jr,gi,Pm,Ha,Ya,Fx,Tk,wO,SP,Qo,tu,tu,tu,tu,tu,tu,tu,tu,tu,tu,tu,tu],iD=[aR,Sd],CR=[dR,zA],dh=[pR,j8,oL,lL,Gv,P_,a7,kM],TR=[hR,Op],oD=[ac,_i,Re,pr,Cd,ho,bs,$a,Td,qc,ac,ac,ac,ac,ac,ac],xR=[mR,Kk],J4=[K1,OL,vd,Vc,_v,ig,pg,f_,H_,_x,Xu,dM,K1,K1,K1,K1],kR=[vR,iv],AR=[gR,KM],uD=[X4,Hr,Ka,kd,Xa,Jg,X4,X4],ph=[_R,Ja,Z0,g0,oA,TA,iO,CF],sD=[yR,or],OR=[wR,m4],lD=[DR,Bc],X1=[ah,S,A0,Vn,ni,Mv,Tg,dn,C9,fo,zI,JP,cF,ah,ah,ah],fD=[ER],cD=[ha,Ic,vu,Pc,Qu,Qf,k0,v,W1,k7,Gk,ha,ha,ha,ha,ha],IR=[SR,GA],Q4=[ma,Fg,zx,V7,Lk,aA,PA,aO,qO,OP,RF,ma,ma,ma,ma,ma];return{_llvm_bswap_i32:Z8,dynCall_idd:uR,dynCall_i:ZL,_i64Subtract:fh,___udivdi3:$4,dynCall_vif:NL,setThrew:vl,dynCall_viii:rR,_bitshift64Lshr:ch,_bitshift64Shl:X8,dynCall_vi:UL,dynCall_viiddi:XL,dynCall_diii:VL,dynCall_iii:KL,_memset:pa,_sbrk:xf,_memcpy:vn,__GLOBAL__sub_I_Yoga_cpp:t0,dynCall_vii:qL,___uremdi3:K4,dynCall_vid:BL,stackAlloc:zi,_nbind_init:VF,getTempRet0:fu,dynCall_di:YL,dynCall_iid:$L,setTempRet0:gl,_i64Add:Y4,dynCall_fiff:jL,dynCall_iiii:bL,_emscripten_get_global_libc:rL,dynCall_viid:oR,dynCall_viiid:tR,dynCall_viififi:nR,dynCall_ii:zL,__GLOBAL__sub_I_Binding_cc:lP,dynCall_viiii:sR,dynCall_iiiiii:eR,stackSave:lu,dynCall_viiiii:RL,__GLOBAL__sub_I_nbind_cc:Gs,dynCall_vidd:HL,_free:sh,runPostSets:LL,dynCall_viiiiii:JL,establishStackSpace:O0,_memmove:Y1,stackRestore:Ho,_malloc:uh,__GLOBAL__sub_I_common_cc:AO,dynCall_viddi:WL,dynCall_dii:QL,dynCall_v:iR}}(Module.asmGlobalArg,Module.asmLibraryArg,buffer),_llvm_bswap_i32=Module._llvm_bswap_i32=asm._llvm_bswap_i32,getTempRet0=Module.getTempRet0=asm.getTempRet0,___udivdi3=Module.___udivdi3=asm.___udivdi3,setThrew=Module.setThrew=asm.setThrew,_bitshift64Lshr=Module._bitshift64Lshr=asm._bitshift64Lshr,_bitshift64Shl=Module._bitshift64Shl=asm._bitshift64Shl,_memset=Module._memset=asm._memset,_sbrk=Module._sbrk=asm._sbrk,_memcpy=Module._memcpy=asm._memcpy,stackAlloc=Module.stackAlloc=asm.stackAlloc,___uremdi3=Module.___uremdi3=asm.___uremdi3,_nbind_init=Module._nbind_init=asm._nbind_init,_i64Subtract=Module._i64Subtract=asm._i64Subtract,setTempRet0=Module.setTempRet0=asm.setTempRet0,_i64Add=Module._i64Add=asm._i64Add,_emscripten_get_global_libc=Module._emscripten_get_global_libc=asm._emscripten_get_global_libc,__GLOBAL__sub_I_Yoga_cpp=Module.__GLOBAL__sub_I_Yoga_cpp=asm.__GLOBAL__sub_I_Yoga_cpp,__GLOBAL__sub_I_Binding_cc=Module.__GLOBAL__sub_I_Binding_cc=asm.__GLOBAL__sub_I_Binding_cc,stackSave=Module.stackSave=asm.stackSave,__GLOBAL__sub_I_nbind_cc=Module.__GLOBAL__sub_I_nbind_cc=asm.__GLOBAL__sub_I_nbind_cc,_free=Module._free=asm._free,runPostSets=Module.runPostSets=asm.runPostSets,establishStackSpace=Module.establishStackSpace=asm.establishStackSpace,_memmove=Module._memmove=asm._memmove,stackRestore=Module.stackRestore=asm.stackRestore,_malloc=Module._malloc=asm._malloc,__GLOBAL__sub_I_common_cc=Module.__GLOBAL__sub_I_common_cc=asm.__GLOBAL__sub_I_common_cc,dynCall_viiiii=Module.dynCall_viiiii=asm.dynCall_viiiii,dynCall_vif=Module.dynCall_vif=asm.dynCall_vif,dynCall_vid=Module.dynCall_vid=asm.dynCall_vid,dynCall_fiff=Module.dynCall_fiff=asm.dynCall_fiff,dynCall_vi=Module.dynCall_vi=asm.dynCall_vi,dynCall_vii=Module.dynCall_vii=asm.dynCall_vii,dynCall_ii=Module.dynCall_ii=asm.dynCall_ii,dynCall_viddi=Module.dynCall_viddi=asm.dynCall_viddi,dynCall_vidd=Module.dynCall_vidd=asm.dynCall_vidd,dynCall_iiii=Module.dynCall_iiii=asm.dynCall_iiii,dynCall_diii=Module.dynCall_diii=asm.dynCall_diii,dynCall_di=Module.dynCall_di=asm.dynCall_di,dynCall_iid=Module.dynCall_iid=asm.dynCall_iid,dynCall_iii=Module.dynCall_iii=asm.dynCall_iii,dynCall_viiddi=Module.dynCall_viiddi=asm.dynCall_viiddi,dynCall_viiiiii=Module.dynCall_viiiiii=asm.dynCall_viiiiii,dynCall_dii=Module.dynCall_dii=asm.dynCall_dii,dynCall_i=Module.dynCall_i=asm.dynCall_i,dynCall_iiiiii=Module.dynCall_iiiiii=asm.dynCall_iiiiii,dynCall_viiid=Module.dynCall_viiid=asm.dynCall_viiid,dynCall_viififi=Module.dynCall_viififi=asm.dynCall_viififi,dynCall_viii=Module.dynCall_viii=asm.dynCall_viii,dynCall_v=Module.dynCall_v=asm.dynCall_v,dynCall_viid=Module.dynCall_viid=asm.dynCall_viid,dynCall_idd=Module.dynCall_idd=asm.dynCall_idd,dynCall_viiii=Module.dynCall_viiii=asm.dynCall_viiii;Runtime.stackAlloc=Module.stackAlloc,Runtime.stackSave=Module.stackSave,Runtime.stackRestore=Module.stackRestore,Runtime.establishStackSpace=Module.establishStackSpace,Runtime.setTempRet0=Module.setTempRet0,Runtime.getTempRet0=Module.getTempRet0,Module.asm=asm;function ExitStatus(i){this.name="ExitStatus",this.message="Program terminated with exit("+i+")",this.status=i}ExitStatus.prototype=new Error,ExitStatus.prototype.constructor=ExitStatus;var initialStackTop,preloadStartTime=null,calledMain=!1;dependenciesFulfilled=function i(){Module.calledRun||run(),Module.calledRun||(dependenciesFulfilled=i)},Module.callMain=Module.callMain=function(u){u=u||[],ensureInitRuntime();var f=u.length+1;function c(){for(var x=0;x<4-1;x++)g.push(0)}var g=[allocate(intArrayFromString(Module.thisProgram),"i8",ALLOC_NORMAL)];c();for(var t=0;t0||(preRun(),runDependencies>0)||Module.calledRun)return;function u(){Module.calledRun||(Module.calledRun=!0,!ABORT&&(ensureInitRuntime(),preMain(),Module.onRuntimeInitialized&&Module.onRuntimeInitialized(),Module._main&&shouldRunNow&&Module.callMain(i),postRun()))}Module.setStatus?(Module.setStatus("Running..."),setTimeout(function(){setTimeout(function(){Module.setStatus("")},1),u()},1)):u()}Module.run=Module.run=run;function exit(i,u){u&&Module.noExitRuntime||(Module.noExitRuntime||(ABORT=!0,EXITSTATUS=i,STACKTOP=initialStackTop,exitRuntime(),Module.onExit&&Module.onExit(i)),ENVIRONMENT_IS_NODE&&process.exit(i),Module.quit(i,new ExitStatus(i)))}Module.exit=Module.exit=exit;var abortDecorators=[];function abort(i){Module.onAbort&&Module.onAbort(i),i!==void 0?(Module.print(i),Module.printErr(i),i=JSON.stringify(i)):i="",ABORT=!0,EXITSTATUS=1;var u=` +If this abort() is unexpected, build with -s ASSERTIONS=1 which can give more information.`,f="abort("+i+") at "+stackTrace()+u;throw abortDecorators&&abortDecorators.forEach(function(c){f=c(f,i)}),f}if(Module.abort=Module.abort=abort,Module.preInit)for(typeof Module.preInit=="function"&&(Module.preInit=[Module.preInit]);Module.preInit.length>0;)Module.preInit.pop()();var shouldRunNow=!0;Module.noInitialRun&&(shouldRunNow=!1),run()})});var hc=Me((hb,vE)=>{"use strict";var wN=hE(),DN=mE(),Py=!1,My=null;DN({},function(i,u){if(!Py){if(Py=!0,i)throw i;My=u}});if(!Py)throw new Error("Failed to load the yoga module - it needed to be loaded synchronously, but didn't");vE.exports=wN(My.bind,My.lib)});var _E=Me((mb,gE)=>{"use strict";gE.exports=({onlyFirst:i=!1}={})=>{let u=["[\\u001B\\u009B][[\\]()#;?]*(?:(?:(?:[a-zA-Z\\d]*(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]*)*)?\\u0007)","(?:(?:\\d{1,4}(?:;\\d{0,4})*)?[\\dA-PR-TZcf-ntqry=><~]))"].join("|");return new RegExp(u,i?void 0:"g")}});var Fy=Me((vb,yE)=>{"use strict";var EN=_E();yE.exports=i=>typeof i=="string"?i.replace(EN(),""):i});var Ry=Me((gb,Ly)=>{"use strict";var wE=i=>Number.isNaN(i)?!1:i>=4352&&(i<=4447||i===9001||i===9002||11904<=i&&i<=12871&&i!==12351||12880<=i&&i<=19903||19968<=i&&i<=42182||43360<=i&&i<=43388||44032<=i&&i<=55203||63744<=i&&i<=64255||65040<=i&&i<=65049||65072<=i&&i<=65131||65281<=i&&i<=65376||65504<=i&&i<=65510||110592<=i&&i<=110593||127488<=i&&i<=127569||131072<=i&&i<=262141);Ly.exports=wE;Ly.exports.default=wE});var EE=Me((_b,DE)=>{"use strict";DE.exports=function(){return/\uD83C\uDFF4\uDB40\uDC67\uDB40\uDC62(?:\uDB40\uDC65\uDB40\uDC6E\uDB40\uDC67|\uDB40\uDC73\uDB40\uDC63\uDB40\uDC74|\uDB40\uDC77\uDB40\uDC6C\uDB40\uDC73)\uDB40\uDC7F|\uD83D\uDC68(?:\uD83C\uDFFC\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68\uD83C\uDFFB|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFF\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFE])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFE\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFD])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFD\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB\uDFFC])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\u200D(?:\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83D\uDC68|(?:\uD83D[\uDC68\uDC69])\u200D(?:\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67]))|\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67])|(?:\uD83D[\uDC68\uDC69])\u200D(?:\uD83D[\uDC66\uDC67])|[\u2695\u2696\u2708]\uFE0F|\uD83D[\uDC66\uDC67]|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|(?:\uD83C\uDFFB\u200D[\u2695\u2696\u2708]|\uD83C\uDFFF\u200D[\u2695\u2696\u2708]|\uD83C\uDFFE\u200D[\u2695\u2696\u2708]|\uD83C\uDFFD\u200D[\u2695\u2696\u2708]|\uD83C\uDFFC\u200D[\u2695\u2696\u2708])\uFE0F|\uD83C\uDFFB\u200D(?:\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C[\uDFFB-\uDFFF])|(?:\uD83E\uDDD1\uD83C\uDFFB\u200D\uD83E\uDD1D\u200D\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFC\u200D\uD83E\uDD1D\u200D\uD83D\uDC69)\uD83C\uDFFB|\uD83E\uDDD1(?:\uD83C\uDFFF\u200D\uD83E\uDD1D\u200D\uD83E\uDDD1(?:\uD83C[\uDFFB-\uDFFF])|\u200D\uD83E\uDD1D\u200D\uD83E\uDDD1)|(?:\uD83E\uDDD1\uD83C\uDFFE\u200D\uD83E\uDD1D\u200D\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFF\u200D\uD83E\uDD1D\u200D(?:\uD83D[\uDC68\uDC69]))(?:\uD83C[\uDFFB-\uDFFE])|(?:\uD83E\uDDD1\uD83C\uDFFC\u200D\uD83E\uDD1D\u200D\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFD\u200D\uD83E\uDD1D\u200D\uD83D\uDC69)(?:\uD83C[\uDFFB\uDFFC])|\uD83D\uDC69(?:\uD83C\uDFFE\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFD\uDFFF])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFC\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB\uDFFD-\uDFFF])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFB\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFC-\uDFFF])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFD\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\u200D(?:\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D(?:\uD83D[\uDC68\uDC69])|\uD83D[\uDC68\uDC69])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFF\u200D(?:\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD]))|\uD83D\uDC69\u200D\uD83D\uDC69\u200D(?:\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67]))|(?:\uD83E\uDDD1\uD83C\uDFFD\u200D\uD83E\uDD1D\u200D\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFE\u200D\uD83E\uDD1D\u200D\uD83D\uDC69)(?:\uD83C[\uDFFB-\uDFFD])|\uD83D\uDC69\u200D\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC69\u200D\uD83D\uDC69\u200D(?:\uD83D[\uDC66\uDC67])|(?:\uD83D\uDC41\uFE0F\u200D\uD83D\uDDE8|\uD83D\uDC69(?:\uD83C\uDFFF\u200D[\u2695\u2696\u2708]|\uD83C\uDFFE\u200D[\u2695\u2696\u2708]|\uD83C\uDFFC\u200D[\u2695\u2696\u2708]|\uD83C\uDFFB\u200D[\u2695\u2696\u2708]|\uD83C\uDFFD\u200D[\u2695\u2696\u2708]|\u200D[\u2695\u2696\u2708])|(?:(?:\u26F9|\uD83C[\uDFCB\uDFCC]|\uD83D\uDD75)\uFE0F|\uD83D\uDC6F|\uD83E[\uDD3C\uDDDE\uDDDF])\u200D[\u2640\u2642]|(?:\u26F9|\uD83C[\uDFCB\uDFCC]|\uD83D\uDD75)(?:\uD83C[\uDFFB-\uDFFF])\u200D[\u2640\u2642]|(?:\uD83C[\uDFC3\uDFC4\uDFCA]|\uD83D[\uDC6E\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4-\uDEB6]|\uD83E[\uDD26\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD-\uDDCF\uDDD6-\uDDDD])(?:(?:\uD83C[\uDFFB-\uDFFF])\u200D[\u2640\u2642]|\u200D[\u2640\u2642])|\uD83C\uDFF4\u200D\u2620)\uFE0F|\uD83D\uDC69\u200D\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67])|\uD83C\uDFF3\uFE0F\u200D\uD83C\uDF08|\uD83D\uDC15\u200D\uD83E\uDDBA|\uD83D\uDC69\u200D\uD83D\uDC66|\uD83D\uDC69\u200D\uD83D\uDC67|\uD83C\uDDFD\uD83C\uDDF0|\uD83C\uDDF4\uD83C\uDDF2|\uD83C\uDDF6\uD83C\uDDE6|[#\*0-9]\uFE0F\u20E3|\uD83C\uDDE7(?:\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEF\uDDF1-\uDDF4\uDDF6-\uDDF9\uDDFB\uDDFC\uDDFE\uDDFF])|\uD83C\uDDF9(?:\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDED\uDDEF-\uDDF4\uDDF7\uDDF9\uDDFB\uDDFC\uDDFF])|\uD83C\uDDEA(?:\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDED\uDDF7-\uDDFA])|\uD83E\uDDD1(?:\uD83C[\uDFFB-\uDFFF])|\uD83C\uDDF7(?:\uD83C[\uDDEA\uDDF4\uDDF8\uDDFA\uDDFC])|\uD83D\uDC69(?:\uD83C[\uDFFB-\uDFFF])|\uD83C\uDDF2(?:\uD83C[\uDDE6\uDDE8-\uDDED\uDDF0-\uDDFF])|\uD83C\uDDE6(?:\uD83C[\uDDE8-\uDDEC\uDDEE\uDDF1\uDDF2\uDDF4\uDDF6-\uDDFA\uDDFC\uDDFD\uDDFF])|\uD83C\uDDF0(?:\uD83C[\uDDEA\uDDEC-\uDDEE\uDDF2\uDDF3\uDDF5\uDDF7\uDDFC\uDDFE\uDDFF])|\uD83C\uDDED(?:\uD83C[\uDDF0\uDDF2\uDDF3\uDDF7\uDDF9\uDDFA])|\uD83C\uDDE9(?:\uD83C[\uDDEA\uDDEC\uDDEF\uDDF0\uDDF2\uDDF4\uDDFF])|\uD83C\uDDFE(?:\uD83C[\uDDEA\uDDF9])|\uD83C\uDDEC(?:\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEE\uDDF1-\uDDF3\uDDF5-\uDDFA\uDDFC\uDDFE])|\uD83C\uDDF8(?:\uD83C[\uDDE6-\uDDEA\uDDEC-\uDDF4\uDDF7-\uDDF9\uDDFB\uDDFD-\uDDFF])|\uD83C\uDDEB(?:\uD83C[\uDDEE-\uDDF0\uDDF2\uDDF4\uDDF7])|\uD83C\uDDF5(?:\uD83C[\uDDE6\uDDEA-\uDDED\uDDF0-\uDDF3\uDDF7-\uDDF9\uDDFC\uDDFE])|\uD83C\uDDFB(?:\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDEE\uDDF3\uDDFA])|\uD83C\uDDF3(?:\uD83C[\uDDE6\uDDE8\uDDEA-\uDDEC\uDDEE\uDDF1\uDDF4\uDDF5\uDDF7\uDDFA\uDDFF])|\uD83C\uDDE8(?:\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDEE\uDDF0-\uDDF5\uDDF7\uDDFA-\uDDFF])|\uD83C\uDDF1(?:\uD83C[\uDDE6-\uDDE8\uDDEE\uDDF0\uDDF7-\uDDFB\uDDFE])|\uD83C\uDDFF(?:\uD83C[\uDDE6\uDDF2\uDDFC])|\uD83C\uDDFC(?:\uD83C[\uDDEB\uDDF8])|\uD83C\uDDFA(?:\uD83C[\uDDE6\uDDEC\uDDF2\uDDF3\uDDF8\uDDFE\uDDFF])|\uD83C\uDDEE(?:\uD83C[\uDDE8-\uDDEA\uDDF1-\uDDF4\uDDF6-\uDDF9])|\uD83C\uDDEF(?:\uD83C[\uDDEA\uDDF2\uDDF4\uDDF5])|(?:\uD83C[\uDFC3\uDFC4\uDFCA]|\uD83D[\uDC6E\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4-\uDEB6]|\uD83E[\uDD26\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD-\uDDCF\uDDD6-\uDDDD])(?:\uD83C[\uDFFB-\uDFFF])|(?:\u26F9|\uD83C[\uDFCB\uDFCC]|\uD83D\uDD75)(?:\uD83C[\uDFFB-\uDFFF])|(?:[\u261D\u270A-\u270D]|\uD83C[\uDF85\uDFC2\uDFC7]|\uD83D[\uDC42\uDC43\uDC46-\uDC50\uDC66\uDC67\uDC6B-\uDC6D\uDC70\uDC72\uDC74-\uDC76\uDC78\uDC7C\uDC83\uDC85\uDCAA\uDD74\uDD7A\uDD90\uDD95\uDD96\uDE4C\uDE4F\uDEC0\uDECC]|\uD83E[\uDD0F\uDD18-\uDD1C\uDD1E\uDD1F\uDD30-\uDD36\uDDB5\uDDB6\uDDBB\uDDD2-\uDDD5])(?:\uD83C[\uDFFB-\uDFFF])|(?:[\u231A\u231B\u23E9-\u23EC\u23F0\u23F3\u25FD\u25FE\u2614\u2615\u2648-\u2653\u267F\u2693\u26A1\u26AA\u26AB\u26BD\u26BE\u26C4\u26C5\u26CE\u26D4\u26EA\u26F2\u26F3\u26F5\u26FA\u26FD\u2705\u270A\u270B\u2728\u274C\u274E\u2753-\u2755\u2757\u2795-\u2797\u27B0\u27BF\u2B1B\u2B1C\u2B50\u2B55]|\uD83C[\uDC04\uDCCF\uDD8E\uDD91-\uDD9A\uDDE6-\uDDFF\uDE01\uDE1A\uDE2F\uDE32-\uDE36\uDE38-\uDE3A\uDE50\uDE51\uDF00-\uDF20\uDF2D-\uDF35\uDF37-\uDF7C\uDF7E-\uDF93\uDFA0-\uDFCA\uDFCF-\uDFD3\uDFE0-\uDFF0\uDFF4\uDFF8-\uDFFF]|\uD83D[\uDC00-\uDC3E\uDC40\uDC42-\uDCFC\uDCFF-\uDD3D\uDD4B-\uDD4E\uDD50-\uDD67\uDD7A\uDD95\uDD96\uDDA4\uDDFB-\uDE4F\uDE80-\uDEC5\uDECC\uDED0-\uDED2\uDED5\uDEEB\uDEEC\uDEF4-\uDEFA\uDFE0-\uDFEB]|\uD83E[\uDD0D-\uDD3A\uDD3C-\uDD45\uDD47-\uDD71\uDD73-\uDD76\uDD7A-\uDDA2\uDDA5-\uDDAA\uDDAE-\uDDCA\uDDCD-\uDDFF\uDE70-\uDE73\uDE78-\uDE7A\uDE80-\uDE82\uDE90-\uDE95])|(?:[#\*0-9\xA9\xAE\u203C\u2049\u2122\u2139\u2194-\u2199\u21A9\u21AA\u231A\u231B\u2328\u23CF\u23E9-\u23F3\u23F8-\u23FA\u24C2\u25AA\u25AB\u25B6\u25C0\u25FB-\u25FE\u2600-\u2604\u260E\u2611\u2614\u2615\u2618\u261D\u2620\u2622\u2623\u2626\u262A\u262E\u262F\u2638-\u263A\u2640\u2642\u2648-\u2653\u265F\u2660\u2663\u2665\u2666\u2668\u267B\u267E\u267F\u2692-\u2697\u2699\u269B\u269C\u26A0\u26A1\u26AA\u26AB\u26B0\u26B1\u26BD\u26BE\u26C4\u26C5\u26C8\u26CE\u26CF\u26D1\u26D3\u26D4\u26E9\u26EA\u26F0-\u26F5\u26F7-\u26FA\u26FD\u2702\u2705\u2708-\u270D\u270F\u2712\u2714\u2716\u271D\u2721\u2728\u2733\u2734\u2744\u2747\u274C\u274E\u2753-\u2755\u2757\u2763\u2764\u2795-\u2797\u27A1\u27B0\u27BF\u2934\u2935\u2B05-\u2B07\u2B1B\u2B1C\u2B50\u2B55\u3030\u303D\u3297\u3299]|\uD83C[\uDC04\uDCCF\uDD70\uDD71\uDD7E\uDD7F\uDD8E\uDD91-\uDD9A\uDDE6-\uDDFF\uDE01\uDE02\uDE1A\uDE2F\uDE32-\uDE3A\uDE50\uDE51\uDF00-\uDF21\uDF24-\uDF93\uDF96\uDF97\uDF99-\uDF9B\uDF9E-\uDFF0\uDFF3-\uDFF5\uDFF7-\uDFFF]|\uD83D[\uDC00-\uDCFD\uDCFF-\uDD3D\uDD49-\uDD4E\uDD50-\uDD67\uDD6F\uDD70\uDD73-\uDD7A\uDD87\uDD8A-\uDD8D\uDD90\uDD95\uDD96\uDDA4\uDDA5\uDDA8\uDDB1\uDDB2\uDDBC\uDDC2-\uDDC4\uDDD1-\uDDD3\uDDDC-\uDDDE\uDDE1\uDDE3\uDDE8\uDDEF\uDDF3\uDDFA-\uDE4F\uDE80-\uDEC5\uDECB-\uDED2\uDED5\uDEE0-\uDEE5\uDEE9\uDEEB\uDEEC\uDEF0\uDEF3-\uDEFA\uDFE0-\uDFEB]|\uD83E[\uDD0D-\uDD3A\uDD3C-\uDD45\uDD47-\uDD71\uDD73-\uDD76\uDD7A-\uDDA2\uDDA5-\uDDAA\uDDAE-\uDDCA\uDDCD-\uDDFF\uDE70-\uDE73\uDE78-\uDE7A\uDE80-\uDE82\uDE90-\uDE95])\uFE0F|(?:[\u261D\u26F9\u270A-\u270D]|\uD83C[\uDF85\uDFC2-\uDFC4\uDFC7\uDFCA-\uDFCC]|\uD83D[\uDC42\uDC43\uDC46-\uDC50\uDC66-\uDC78\uDC7C\uDC81-\uDC83\uDC85-\uDC87\uDC8F\uDC91\uDCAA\uDD74\uDD75\uDD7A\uDD90\uDD95\uDD96\uDE45-\uDE47\uDE4B-\uDE4F\uDEA3\uDEB4-\uDEB6\uDEC0\uDECC]|\uD83E[\uDD0F\uDD18-\uDD1F\uDD26\uDD30-\uDD39\uDD3C-\uDD3E\uDDB5\uDDB6\uDDB8\uDDB9\uDDBB\uDDCD-\uDDCF\uDDD1-\uDDDD])/g}});var Mh=Me((yb,Ny)=>{"use strict";var SN=Fy(),CN=Ry(),TN=EE(),SE=i=>{if(i=i.replace(TN()," "),typeof i!="string"||i.length===0)return 0;i=SN(i);let u=0;for(let f=0;f=127&&c<=159||c>=768&&c<=879||(c>65535&&f++,u+=CN(c)?2:1)}return u};Ny.exports=SE;Ny.exports.default=SE});var jy=Me((wb,By)=>{"use strict";var xN=Mh(),CE=i=>{let u=0;for(let f of i.split(` +`))u=Math.max(u,xN(f));return u};By.exports=CE;By.exports.default=CE});var TE=Me(a2=>{"use strict";var kN=a2&&a2.__importDefault||function(i){return i&&i.__esModule?i:{default:i}};Object.defineProperty(a2,"__esModule",{value:!0});var AN=kN(jy()),Uy={};a2.default=i=>{if(i.length===0)return{width:0,height:0};if(Uy[i])return Uy[i];let u=AN.default(i),f=i.split(` +`).length;return Uy[i]={width:u,height:f},{width:u,height:f}}});var xE=Me(d2=>{"use strict";var ON=d2&&d2.__importDefault||function(i){return i&&i.__esModule?i:{default:i}};Object.defineProperty(d2,"__esModule",{value:!0});var hr=ON(hc()),IN=(i,u)=>{"position"in u&&i.setPositionType(u.position==="absolute"?hr.default.POSITION_TYPE_ABSOLUTE:hr.default.POSITION_TYPE_RELATIVE)},PN=(i,u)=>{"marginLeft"in u&&i.setMargin(hr.default.EDGE_START,u.marginLeft||0),"marginRight"in u&&i.setMargin(hr.default.EDGE_END,u.marginRight||0),"marginTop"in u&&i.setMargin(hr.default.EDGE_TOP,u.marginTop||0),"marginBottom"in u&&i.setMargin(hr.default.EDGE_BOTTOM,u.marginBottom||0)},MN=(i,u)=>{"paddingLeft"in u&&i.setPadding(hr.default.EDGE_LEFT,u.paddingLeft||0),"paddingRight"in u&&i.setPadding(hr.default.EDGE_RIGHT,u.paddingRight||0),"paddingTop"in u&&i.setPadding(hr.default.EDGE_TOP,u.paddingTop||0),"paddingBottom"in u&&i.setPadding(hr.default.EDGE_BOTTOM,u.paddingBottom||0)},FN=(i,u)=>{var f;"flexGrow"in u&&i.setFlexGrow((f=u.flexGrow)!==null&&f!==void 0?f:0),"flexShrink"in u&&i.setFlexShrink(typeof u.flexShrink=="number"?u.flexShrink:1),"flexDirection"in u&&(u.flexDirection==="row"&&i.setFlexDirection(hr.default.FLEX_DIRECTION_ROW),u.flexDirection==="row-reverse"&&i.setFlexDirection(hr.default.FLEX_DIRECTION_ROW_REVERSE),u.flexDirection==="column"&&i.setFlexDirection(hr.default.FLEX_DIRECTION_COLUMN),u.flexDirection==="column-reverse"&&i.setFlexDirection(hr.default.FLEX_DIRECTION_COLUMN_REVERSE)),"flexBasis"in u&&(typeof u.flexBasis=="number"?i.setFlexBasis(u.flexBasis):typeof u.flexBasis=="string"?i.setFlexBasisPercent(Number.parseInt(u.flexBasis,10)):i.setFlexBasis(NaN)),"alignItems"in u&&((u.alignItems==="stretch"||!u.alignItems)&&i.setAlignItems(hr.default.ALIGN_STRETCH),u.alignItems==="flex-start"&&i.setAlignItems(hr.default.ALIGN_FLEX_START),u.alignItems==="center"&&i.setAlignItems(hr.default.ALIGN_CENTER),u.alignItems==="flex-end"&&i.setAlignItems(hr.default.ALIGN_FLEX_END)),"alignSelf"in u&&((u.alignSelf==="auto"||!u.alignSelf)&&i.setAlignSelf(hr.default.ALIGN_AUTO),u.alignSelf==="flex-start"&&i.setAlignSelf(hr.default.ALIGN_FLEX_START),u.alignSelf==="center"&&i.setAlignSelf(hr.default.ALIGN_CENTER),u.alignSelf==="flex-end"&&i.setAlignSelf(hr.default.ALIGN_FLEX_END)),"justifyContent"in u&&((u.justifyContent==="flex-start"||!u.justifyContent)&&i.setJustifyContent(hr.default.JUSTIFY_FLEX_START),u.justifyContent==="center"&&i.setJustifyContent(hr.default.JUSTIFY_CENTER),u.justifyContent==="flex-end"&&i.setJustifyContent(hr.default.JUSTIFY_FLEX_END),u.justifyContent==="space-between"&&i.setJustifyContent(hr.default.JUSTIFY_SPACE_BETWEEN),u.justifyContent==="space-around"&&i.setJustifyContent(hr.default.JUSTIFY_SPACE_AROUND))},LN=(i,u)=>{var f,c;"width"in u&&(typeof u.width=="number"?i.setWidth(u.width):typeof u.width=="string"?i.setWidthPercent(Number.parseInt(u.width,10)):i.setWidthAuto()),"height"in u&&(typeof u.height=="number"?i.setHeight(u.height):typeof u.height=="string"?i.setHeightPercent(Number.parseInt(u.height,10)):i.setHeightAuto()),"minWidth"in u&&(typeof u.minWidth=="string"?i.setMinWidthPercent(Number.parseInt(u.minWidth,10)):i.setMinWidth((f=u.minWidth)!==null&&f!==void 0?f:0)),"minHeight"in u&&(typeof u.minHeight=="string"?i.setMinHeightPercent(Number.parseInt(u.minHeight,10)):i.setMinHeight((c=u.minHeight)!==null&&c!==void 0?c:0))},RN=(i,u)=>{"display"in u&&i.setDisplay(u.display==="flex"?hr.default.DISPLAY_FLEX:hr.default.DISPLAY_NONE)},NN=(i,u)=>{if("borderStyle"in u){let f=typeof u.borderStyle=="string"?1:0;i.setBorder(hr.default.EDGE_TOP,f),i.setBorder(hr.default.EDGE_BOTTOM,f),i.setBorder(hr.default.EDGE_LEFT,f),i.setBorder(hr.default.EDGE_RIGHT,f)}};d2.default=(i,u={})=>{IN(i,u),PN(i,u),MN(i,u),FN(i,u),LN(i,u),RN(i,u),NN(i,u)}});var AE=Me((Sb,kE)=>{"use strict";kE.exports={aliceblue:[240,248,255],antiquewhite:[250,235,215],aqua:[0,255,255],aquamarine:[127,255,212],azure:[240,255,255],beige:[245,245,220],bisque:[255,228,196],black:[0,0,0],blanchedalmond:[255,235,205],blue:[0,0,255],blueviolet:[138,43,226],brown:[165,42,42],burlywood:[222,184,135],cadetblue:[95,158,160],chartreuse:[127,255,0],chocolate:[210,105,30],coral:[255,127,80],cornflowerblue:[100,149,237],cornsilk:[255,248,220],crimson:[220,20,60],cyan:[0,255,255],darkblue:[0,0,139],darkcyan:[0,139,139],darkgoldenrod:[184,134,11],darkgray:[169,169,169],darkgreen:[0,100,0],darkgrey:[169,169,169],darkkhaki:[189,183,107],darkmagenta:[139,0,139],darkolivegreen:[85,107,47],darkorange:[255,140,0],darkorchid:[153,50,204],darkred:[139,0,0],darksalmon:[233,150,122],darkseagreen:[143,188,143],darkslateblue:[72,61,139],darkslategray:[47,79,79],darkslategrey:[47,79,79],darkturquoise:[0,206,209],darkviolet:[148,0,211],deeppink:[255,20,147],deepskyblue:[0,191,255],dimgray:[105,105,105],dimgrey:[105,105,105],dodgerblue:[30,144,255],firebrick:[178,34,34],floralwhite:[255,250,240],forestgreen:[34,139,34],fuchsia:[255,0,255],gainsboro:[220,220,220],ghostwhite:[248,248,255],gold:[255,215,0],goldenrod:[218,165,32],gray:[128,128,128],green:[0,128,0],greenyellow:[173,255,47],grey:[128,128,128],honeydew:[240,255,240],hotpink:[255,105,180],indianred:[205,92,92],indigo:[75,0,130],ivory:[255,255,240],khaki:[240,230,140],lavender:[230,230,250],lavenderblush:[255,240,245],lawngreen:[124,252,0],lemonchiffon:[255,250,205],lightblue:[173,216,230],lightcoral:[240,128,128],lightcyan:[224,255,255],lightgoldenrodyellow:[250,250,210],lightgray:[211,211,211],lightgreen:[144,238,144],lightgrey:[211,211,211],lightpink:[255,182,193],lightsalmon:[255,160,122],lightseagreen:[32,178,170],lightskyblue:[135,206,250],lightslategray:[119,136,153],lightslategrey:[119,136,153],lightsteelblue:[176,196,222],lightyellow:[255,255,224],lime:[0,255,0],limegreen:[50,205,50],linen:[250,240,230],magenta:[255,0,255],maroon:[128,0,0],mediumaquamarine:[102,205,170],mediumblue:[0,0,205],mediumorchid:[186,85,211],mediumpurple:[147,112,219],mediumseagreen:[60,179,113],mediumslateblue:[123,104,238],mediumspringgreen:[0,250,154],mediumturquoise:[72,209,204],mediumvioletred:[199,21,133],midnightblue:[25,25,112],mintcream:[245,255,250],mistyrose:[255,228,225],moccasin:[255,228,181],navajowhite:[255,222,173],navy:[0,0,128],oldlace:[253,245,230],olive:[128,128,0],olivedrab:[107,142,35],orange:[255,165,0],orangered:[255,69,0],orchid:[218,112,214],palegoldenrod:[238,232,170],palegreen:[152,251,152],paleturquoise:[175,238,238],palevioletred:[219,112,147],papayawhip:[255,239,213],peachpuff:[255,218,185],peru:[205,133,63],pink:[255,192,203],plum:[221,160,221],powderblue:[176,224,230],purple:[128,0,128],rebeccapurple:[102,51,153],red:[255,0,0],rosybrown:[188,143,143],royalblue:[65,105,225],saddlebrown:[139,69,19],salmon:[250,128,114],sandybrown:[244,164,96],seagreen:[46,139,87],seashell:[255,245,238],sienna:[160,82,45],silver:[192,192,192],skyblue:[135,206,235],slateblue:[106,90,205],slategray:[112,128,144],slategrey:[112,128,144],snow:[255,250,250],springgreen:[0,255,127],steelblue:[70,130,180],tan:[210,180,140],teal:[0,128,128],thistle:[216,191,216],tomato:[255,99,71],turquoise:[64,224,208],violet:[238,130,238],wheat:[245,222,179],white:[255,255,255],whitesmoke:[245,245,245],yellow:[255,255,0],yellowgreen:[154,205,50]}});var qy=Me((Cb,OE)=>{var p2=AE(),IE={};for(let i of Object.keys(p2))IE[p2[i]]=i;var Xt={rgb:{channels:3,labels:"rgb"},hsl:{channels:3,labels:"hsl"},hsv:{channels:3,labels:"hsv"},hwb:{channels:3,labels:"hwb"},cmyk:{channels:4,labels:"cmyk"},xyz:{channels:3,labels:"xyz"},lab:{channels:3,labels:"lab"},lch:{channels:3,labels:"lch"},hex:{channels:1,labels:["hex"]},keyword:{channels:1,labels:["keyword"]},ansi16:{channels:1,labels:["ansi16"]},ansi256:{channels:1,labels:["ansi256"]},hcg:{channels:3,labels:["h","c","g"]},apple:{channels:3,labels:["r16","g16","b16"]},gray:{channels:1,labels:["gray"]}};OE.exports=Xt;for(let i of Object.keys(Xt)){if(!("channels"in Xt[i]))throw new Error("missing channels property: "+i);if(!("labels"in Xt[i]))throw new Error("missing channel labels property: "+i);if(Xt[i].labels.length!==Xt[i].channels)throw new Error("channel and label counts mismatch: "+i);let{channels:u,labels:f}=Xt[i];delete Xt[i].channels,delete Xt[i].labels,Object.defineProperty(Xt[i],"channels",{value:u}),Object.defineProperty(Xt[i],"labels",{value:f})}Xt.rgb.hsl=function(i){let u=i[0]/255,f=i[1]/255,c=i[2]/255,g=Math.min(u,f,c),t=Math.max(u,f,c),C=t-g,A,x;t===g?A=0:u===t?A=(f-c)/C:f===t?A=2+(c-u)/C:c===t&&(A=4+(u-f)/C),A=Math.min(A*60,360),A<0&&(A+=360);let D=(g+t)/2;return t===g?x=0:D<=.5?x=C/(t+g):x=C/(2-t-g),[A,x*100,D*100]};Xt.rgb.hsv=function(i){let u,f,c,g,t,C=i[0]/255,A=i[1]/255,x=i[2]/255,D=Math.max(C,A,x),L=D-Math.min(C,A,x),N=function(j){return(D-j)/6/L+1/2};return L===0?(g=0,t=0):(t=L/D,u=N(C),f=N(A),c=N(x),C===D?g=c-f:A===D?g=1/3+u-c:x===D&&(g=2/3+f-u),g<0?g+=1:g>1&&(g-=1)),[g*360,t*100,D*100]};Xt.rgb.hwb=function(i){let u=i[0],f=i[1],c=i[2],g=Xt.rgb.hsl(i)[0],t=1/255*Math.min(u,Math.min(f,c));return c=1-1/255*Math.max(u,Math.max(f,c)),[g,t*100,c*100]};Xt.rgb.cmyk=function(i){let u=i[0]/255,f=i[1]/255,c=i[2]/255,g=Math.min(1-u,1-f,1-c),t=(1-u-g)/(1-g)||0,C=(1-f-g)/(1-g)||0,A=(1-c-g)/(1-g)||0;return[t*100,C*100,A*100,g*100]};function BN(i,u){return(i[0]-u[0])**2+(i[1]-u[1])**2+(i[2]-u[2])**2}Xt.rgb.keyword=function(i){let u=IE[i];if(u)return u;let f=Infinity,c;for(let g of Object.keys(p2)){let t=p2[g],C=BN(i,t);C.04045?((u+.055)/1.055)**2.4:u/12.92,f=f>.04045?((f+.055)/1.055)**2.4:f/12.92,c=c>.04045?((c+.055)/1.055)**2.4:c/12.92;let g=u*.4124+f*.3576+c*.1805,t=u*.2126+f*.7152+c*.0722,C=u*.0193+f*.1192+c*.9505;return[g*100,t*100,C*100]};Xt.rgb.lab=function(i){let u=Xt.rgb.xyz(i),f=u[0],c=u[1],g=u[2];f/=95.047,c/=100,g/=108.883,f=f>.008856?f**(1/3):7.787*f+16/116,c=c>.008856?c**(1/3):7.787*c+16/116,g=g>.008856?g**(1/3):7.787*g+16/116;let t=116*c-16,C=500*(f-c),A=200*(c-g);return[t,C,A]};Xt.hsl.rgb=function(i){let u=i[0]/360,f=i[1]/100,c=i[2]/100,g,t,C;if(f===0)return C=c*255,[C,C,C];c<.5?g=c*(1+f):g=c+f-c*f;let A=2*c-g,x=[0,0,0];for(let D=0;D<3;D++)t=u+1/3*-(D-1),t<0&&t++,t>1&&t--,6*t<1?C=A+(g-A)*6*t:2*t<1?C=g:3*t<2?C=A+(g-A)*(2/3-t)*6:C=A,x[D]=C*255;return x};Xt.hsl.hsv=function(i){let u=i[0],f=i[1]/100,c=i[2]/100,g=f,t=Math.max(c,.01);c*=2,f*=c<=1?c:2-c,g*=t<=1?t:2-t;let C=(c+f)/2,A=c===0?2*g/(t+g):2*f/(c+f);return[u,A*100,C*100]};Xt.hsv.rgb=function(i){let u=i[0]/60,f=i[1]/100,c=i[2]/100,g=Math.floor(u)%6,t=u-Math.floor(u),C=255*c*(1-f),A=255*c*(1-f*t),x=255*c*(1-f*(1-t));switch(c*=255,g){case 0:return[c,x,C];case 1:return[A,c,C];case 2:return[C,c,x];case 3:return[C,A,c];case 4:return[x,C,c];case 5:return[c,C,A]}};Xt.hsv.hsl=function(i){let u=i[0],f=i[1]/100,c=i[2]/100,g=Math.max(c,.01),t,C;C=(2-f)*c;let A=(2-f)*g;return t=f*g,t/=A<=1?A:2-A,t=t||0,C/=2,[u,t*100,C*100]};Xt.hwb.rgb=function(i){let u=i[0]/360,f=i[1]/100,c=i[2]/100,g=f+c,t;g>1&&(f/=g,c/=g);let C=Math.floor(6*u),A=1-c;t=6*u-C,(C&1)!=0&&(t=1-t);let x=f+t*(A-f),D,L,N;switch(C){default:case 6:case 0:D=A,L=x,N=f;break;case 1:D=x,L=A,N=f;break;case 2:D=f,L=A,N=x;break;case 3:D=f,L=x,N=A;break;case 4:D=x,L=f,N=A;break;case 5:D=A,L=f,N=x;break}return[D*255,L*255,N*255]};Xt.cmyk.rgb=function(i){let u=i[0]/100,f=i[1]/100,c=i[2]/100,g=i[3]/100,t=1-Math.min(1,u*(1-g)+g),C=1-Math.min(1,f*(1-g)+g),A=1-Math.min(1,c*(1-g)+g);return[t*255,C*255,A*255]};Xt.xyz.rgb=function(i){let u=i[0]/100,f=i[1]/100,c=i[2]/100,g,t,C;return g=u*3.2406+f*-1.5372+c*-.4986,t=u*-.9689+f*1.8758+c*.0415,C=u*.0557+f*-.204+c*1.057,g=g>.0031308?1.055*g**(1/2.4)-.055:g*12.92,t=t>.0031308?1.055*t**(1/2.4)-.055:t*12.92,C=C>.0031308?1.055*C**(1/2.4)-.055:C*12.92,g=Math.min(Math.max(0,g),1),t=Math.min(Math.max(0,t),1),C=Math.min(Math.max(0,C),1),[g*255,t*255,C*255]};Xt.xyz.lab=function(i){let u=i[0],f=i[1],c=i[2];u/=95.047,f/=100,c/=108.883,u=u>.008856?u**(1/3):7.787*u+16/116,f=f>.008856?f**(1/3):7.787*f+16/116,c=c>.008856?c**(1/3):7.787*c+16/116;let g=116*f-16,t=500*(u-f),C=200*(f-c);return[g,t,C]};Xt.lab.xyz=function(i){let u=i[0],f=i[1],c=i[2],g,t,C;t=(u+16)/116,g=f/500+t,C=t-c/200;let A=t**3,x=g**3,D=C**3;return t=A>.008856?A:(t-16/116)/7.787,g=x>.008856?x:(g-16/116)/7.787,C=D>.008856?D:(C-16/116)/7.787,g*=95.047,t*=100,C*=108.883,[g,t,C]};Xt.lab.lch=function(i){let u=i[0],f=i[1],c=i[2],g;g=Math.atan2(c,f)*360/2/Math.PI,g<0&&(g+=360);let C=Math.sqrt(f*f+c*c);return[u,C,g]};Xt.lch.lab=function(i){let u=i[0],f=i[1],g=i[2]/360*2*Math.PI,t=f*Math.cos(g),C=f*Math.sin(g);return[u,t,C]};Xt.rgb.ansi16=function(i,u=null){let[f,c,g]=i,t=u===null?Xt.rgb.hsv(i)[2]:u;if(t=Math.round(t/50),t===0)return 30;let C=30+(Math.round(g/255)<<2|Math.round(c/255)<<1|Math.round(f/255));return t===2&&(C+=60),C};Xt.hsv.ansi16=function(i){return Xt.rgb.ansi16(Xt.hsv.rgb(i),i[2])};Xt.rgb.ansi256=function(i){let u=i[0],f=i[1],c=i[2];return u===f&&f===c?u<8?16:u>248?231:Math.round((u-8)/247*24)+232:16+36*Math.round(u/255*5)+6*Math.round(f/255*5)+Math.round(c/255*5)};Xt.ansi16.rgb=function(i){let u=i%10;if(u===0||u===7)return i>50&&(u+=3.5),u=u/10.5*255,[u,u,u];let f=(~~(i>50)+1)*.5,c=(u&1)*f*255,g=(u>>1&1)*f*255,t=(u>>2&1)*f*255;return[c,g,t]};Xt.ansi256.rgb=function(i){if(i>=232){let t=(i-232)*10+8;return[t,t,t]}i-=16;let u,f=Math.floor(i/36)/5*255,c=Math.floor((u=i%36)/6)/5*255,g=u%6/5*255;return[f,c,g]};Xt.rgb.hex=function(i){let f=(((Math.round(i[0])&255)<<16)+((Math.round(i[1])&255)<<8)+(Math.round(i[2])&255)).toString(16).toUpperCase();return"000000".substring(f.length)+f};Xt.hex.rgb=function(i){let u=i.toString(16).match(/[a-f0-9]{6}|[a-f0-9]{3}/i);if(!u)return[0,0,0];let f=u[0];u[0].length===3&&(f=f.split("").map(A=>A+A).join(""));let c=parseInt(f,16),g=c>>16&255,t=c>>8&255,C=c&255;return[g,t,C]};Xt.rgb.hcg=function(i){let u=i[0]/255,f=i[1]/255,c=i[2]/255,g=Math.max(Math.max(u,f),c),t=Math.min(Math.min(u,f),c),C=g-t,A,x;return C<1?A=t/(1-C):A=0,C<=0?x=0:g===u?x=(f-c)/C%6:g===f?x=2+(c-u)/C:x=4+(u-f)/C,x/=6,x%=1,[x*360,C*100,A*100]};Xt.hsl.hcg=function(i){let u=i[1]/100,f=i[2]/100,c=f<.5?2*u*f:2*u*(1-f),g=0;return c<1&&(g=(f-.5*c)/(1-c)),[i[0],c*100,g*100]};Xt.hsv.hcg=function(i){let u=i[1]/100,f=i[2]/100,c=u*f,g=0;return c<1&&(g=(f-c)/(1-c)),[i[0],c*100,g*100]};Xt.hcg.rgb=function(i){let u=i[0]/360,f=i[1]/100,c=i[2]/100;if(f===0)return[c*255,c*255,c*255];let g=[0,0,0],t=u%1*6,C=t%1,A=1-C,x=0;switch(Math.floor(t)){case 0:g[0]=1,g[1]=C,g[2]=0;break;case 1:g[0]=A,g[1]=1,g[2]=0;break;case 2:g[0]=0,g[1]=1,g[2]=C;break;case 3:g[0]=0,g[1]=A,g[2]=1;break;case 4:g[0]=C,g[1]=0,g[2]=1;break;default:g[0]=1,g[1]=0,g[2]=A}return x=(1-f)*c,[(f*g[0]+x)*255,(f*g[1]+x)*255,(f*g[2]+x)*255]};Xt.hcg.hsv=function(i){let u=i[1]/100,f=i[2]/100,c=u+f*(1-u),g=0;return c>0&&(g=u/c),[i[0],g*100,c*100]};Xt.hcg.hsl=function(i){let u=i[1]/100,c=i[2]/100*(1-u)+.5*u,g=0;return c>0&&c<.5?g=u/(2*c):c>=.5&&c<1&&(g=u/(2*(1-c))),[i[0],g*100,c*100]};Xt.hcg.hwb=function(i){let u=i[1]/100,f=i[2]/100,c=u+f*(1-u);return[i[0],(c-u)*100,(1-c)*100]};Xt.hwb.hcg=function(i){let u=i[1]/100,f=i[2]/100,c=1-f,g=c-u,t=0;return g<1&&(t=(c-g)/(1-g)),[i[0],g*100,t*100]};Xt.apple.rgb=function(i){return[i[0]/65535*255,i[1]/65535*255,i[2]/65535*255]};Xt.rgb.apple=function(i){return[i[0]/255*65535,i[1]/255*65535,i[2]/255*65535]};Xt.gray.rgb=function(i){return[i[0]/100*255,i[0]/100*255,i[0]/100*255]};Xt.gray.hsl=function(i){return[0,0,i[0]]};Xt.gray.hsv=Xt.gray.hsl;Xt.gray.hwb=function(i){return[0,100,i[0]]};Xt.gray.cmyk=function(i){return[0,0,0,i[0]]};Xt.gray.lab=function(i){return[i[0],0,0]};Xt.gray.hex=function(i){let u=Math.round(i[0]/100*255)&255,c=((u<<16)+(u<<8)+u).toString(16).toUpperCase();return"000000".substring(c.length)+c};Xt.rgb.gray=function(i){return[(i[0]+i[1]+i[2])/3/255*100]}});var ME=Me((Tb,PE)=>{var Fh=qy();function jN(){let i={},u=Object.keys(Fh);for(let f=u.length,c=0;c{var zy=qy(),WN=ME(),Ca={},HN=Object.keys(zy);function bN(i){let u=function(...f){let c=f[0];return c==null?c:(c.length>1&&(f=c),i(f))};return"conversion"in i&&(u.conversion=i.conversion),u}function GN(i){let u=function(...f){let c=f[0];if(c==null)return c;c.length>1&&(f=c);let g=i(f);if(typeof g=="object")for(let t=g.length,C=0;C{Ca[i]={},Object.defineProperty(Ca[i],"channels",{value:zy[i].channels}),Object.defineProperty(Ca[i],"labels",{value:zy[i].labels});let u=WN(i);Object.keys(u).forEach(c=>{let g=u[c];Ca[i][c]=GN(g),Ca[i][c].raw=bN(g)})});FE.exports=Ca});var Rh=Me((kb,RE)=>{"use strict";var NE=(i,u)=>(...f)=>`[${i(...f)+u}m`,BE=(i,u)=>(...f)=>{let c=i(...f);return`[${38+u};5;${c}m`},jE=(i,u)=>(...f)=>{let c=i(...f);return`[${38+u};2;${c[0]};${c[1]};${c[2]}m`},Lh=i=>i,UE=(i,u,f)=>[i,u,f],Ta=(i,u,f)=>{Object.defineProperty(i,u,{get:()=>{let c=f();return Object.defineProperty(i,u,{value:c,enumerable:!0,configurable:!0}),c},enumerable:!0,configurable:!0})},Wy,xa=(i,u,f,c)=>{Wy===void 0&&(Wy=LE());let g=c?10:0,t={};for(let[C,A]of Object.entries(Wy)){let x=C==="ansi16"?"ansi":C;C===u?t[x]=i(f,g):typeof A=="object"&&(t[x]=i(A[u],g))}return t};function VN(){let i=new Map,u={modifier:{reset:[0,0],bold:[1,22],dim:[2,22],italic:[3,23],underline:[4,24],inverse:[7,27],hidden:[8,28],strikethrough:[9,29]},color:{black:[30,39],red:[31,39],green:[32,39],yellow:[33,39],blue:[34,39],magenta:[35,39],cyan:[36,39],white:[37,39],blackBright:[90,39],redBright:[91,39],greenBright:[92,39],yellowBright:[93,39],blueBright:[94,39],magentaBright:[95,39],cyanBright:[96,39],whiteBright:[97,39]},bgColor:{bgBlack:[40,49],bgRed:[41,49],bgGreen:[42,49],bgYellow:[43,49],bgBlue:[44,49],bgMagenta:[45,49],bgCyan:[46,49],bgWhite:[47,49],bgBlackBright:[100,49],bgRedBright:[101,49],bgGreenBright:[102,49],bgYellowBright:[103,49],bgBlueBright:[104,49],bgMagentaBright:[105,49],bgCyanBright:[106,49],bgWhiteBright:[107,49]}};u.color.gray=u.color.blackBright,u.bgColor.bgGray=u.bgColor.bgBlackBright,u.color.grey=u.color.blackBright,u.bgColor.bgGrey=u.bgColor.bgBlackBright;for(let[f,c]of Object.entries(u)){for(let[g,t]of Object.entries(c))u[g]={open:`[${t[0]}m`,close:`[${t[1]}m`},c[g]=u[g],i.set(t[0],t[1]);Object.defineProperty(u,f,{value:c,enumerable:!1})}return Object.defineProperty(u,"codes",{value:i,enumerable:!1}),u.color.close="",u.bgColor.close="",Ta(u.color,"ansi",()=>xa(NE,"ansi16",Lh,!1)),Ta(u.color,"ansi256",()=>xa(BE,"ansi256",Lh,!1)),Ta(u.color,"ansi16m",()=>xa(jE,"rgb",UE,!1)),Ta(u.bgColor,"ansi",()=>xa(NE,"ansi16",Lh,!0)),Ta(u.bgColor,"ansi256",()=>xa(BE,"ansi256",Lh,!0)),Ta(u.bgColor,"ansi16m",()=>xa(jE,"rgb",UE,!0)),u}Object.defineProperty(RE,"exports",{enumerable:!0,get:VN})});var WE=Me((Ab,qE)=>{"use strict";var h2=Mh(),YN=Fy(),$N=Rh(),Hy=new Set(["","\x9B"]),KN=39,zE=i=>`${Hy.values().next().value}[${i}m`,XN=i=>i.split(" ").map(u=>h2(u)),by=(i,u,f)=>{let c=[...u],g=!1,t=h2(YN(i[i.length-1]));for(let[C,A]of c.entries()){let x=h2(A);if(t+x<=f?i[i.length-1]+=A:(i.push(A),t=0),Hy.has(A))g=!0;else if(g&&A==="m"){g=!1;continue}g||(t+=x,t===f&&C0&&i.length>1&&(i[i.length-2]+=i.pop())},JN=i=>{let u=i.split(" "),f=u.length;for(;f>0&&!(h2(u[f-1])>0);)f--;return f===u.length?i:u.slice(0,f).join(" ")+u.slice(f).join("")},QN=(i,u,f={})=>{if(f.trim!==!1&&i.trim()==="")return"";let c="",g="",t,C=XN(i),A=[""];for(let[x,D]of i.split(" ").entries()){f.trim!==!1&&(A[A.length-1]=A[A.length-1].trimLeft());let L=h2(A[A.length-1]);if(x!==0&&(L>=u&&(f.wordWrap===!1||f.trim===!1)&&(A.push(""),L=0),(L>0||f.trim===!1)&&(A[A.length-1]+=" ",L++)),f.hard&&C[x]>u){let N=u-L,j=1+Math.floor((C[x]-N-1)/u);Math.floor((C[x]-1)/u)u&&L>0&&C[x]>0){if(f.wordWrap===!1&&Lu&&f.wordWrap===!1){by(A,D,u);continue}A[A.length-1]+=D}f.trim!==!1&&(A=A.map(JN)),c=A.join(` +`);for(let[x,D]of[...c].entries()){if(g+=D,Hy.has(D)){let N=parseFloat(/\d[^m]*/.exec(c.slice(x,x+4)));t=N===KN?null:N}let L=$N.codes.get(Number(t));t&&L&&(c[x+1]===` +`?g+=zE(L):D===` +`&&(g+=zE(t)))}return g};qE.exports=(i,u,f)=>String(i).normalize().replace(/\r\n/g,` +`).split(` +`).map(c=>QN(c,u,f)).join(` +`)});var GE=Me((Ob,HE)=>{"use strict";var bE="[\uD800-\uDBFF][\uDC00-\uDFFF]",ZN=i=>i&&i.exact?new RegExp(`^${bE}$`):new RegExp(bE,"g");HE.exports=ZN});var Gy=Me((Ib,VE)=>{"use strict";var eB=Ry(),tB=GE(),YE=Rh(),$E=["","\x9B"],Nh=i=>`${$E[0]}[${i}m`,KE=(i,u,f)=>{let c=[];i=[...i];for(let g of i){let t=g;g.match(";")&&(g=g.split(";")[0][0]+"0");let C=YE.codes.get(parseInt(g,10));if(C){let A=i.indexOf(C.toString());A>=0?i.splice(A,1):c.push(Nh(u?C:t))}else if(u){c.push(Nh(0));break}else c.push(Nh(t))}if(u&&(c=c.filter((g,t)=>c.indexOf(g)===t),f!==void 0)){let g=Nh(YE.codes.get(parseInt(f,10)));c=c.reduce((t,C)=>C===g?[C,...t]:[...t,C],[])}return c.join("")};VE.exports=(i,u,f)=>{let c=[...i.normalize()],g=[];f=typeof f=="number"?f:c.length;let t=!1,C,A=0,x="";for(let[D,L]of c.entries()){let N=!1;if($E.includes(L)){let j=/\d[^m]*/.exec(i.slice(D,D+18));C=j&&j.length>0?j[0]:void 0,Au&&A<=f)x+=L;else if(A===u&&!t&&C!==void 0)x=KE(g);else if(A>=f){x+=KE(g,!0,C);break}}return x}});var JE=Me((Pb,XE)=>{"use strict";var Bf=Gy(),nB=Mh();function Bh(i,u,f){if(i.charAt(u)===" ")return u;for(let c=1;c<=3;c++)if(f){if(i.charAt(u+c)===" ")return u+c}else if(i.charAt(u-c)===" ")return u-c;return u}XE.exports=(i,u,f)=>{f=dt({position:"end",preferTruncationOnSpace:!1},f);let{position:c,space:g,preferTruncationOnSpace:t}=f,C="\u2026",A=1;if(typeof i!="string")throw new TypeError(`Expected \`input\` to be a string, got ${typeof i}`);if(typeof u!="number")throw new TypeError(`Expected \`columns\` to be a number, got ${typeof u}`);if(u<1)return"";if(u===1)return C;let x=nB(i);if(x<=u)return i;if(c==="start"){if(t){let D=Bh(i,x-u+1,!0);return C+Bf(i,D,x).trim()}return g===!0&&(C+=" ",A=2),C+Bf(i,x-u+A,x)}if(c==="middle"){g===!0&&(C=" "+C+" ",A=3);let D=Math.floor(u/2);if(t){let L=Bh(i,D),N=Bh(i,x-(u-D)+1,!0);return Bf(i,0,L)+C+Bf(i,N,x).trim()}return Bf(i,0,D)+C+Bf(i,x-(u-D)+A,x)}if(c==="end"){if(t){let D=Bh(i,u-1);return Bf(i,0,D)+C}return g===!0&&(C=" "+C,A=2),Bf(i,0,u-A)+C}throw new Error(`Expected \`options.position\` to be either \`start\`, \`middle\` or \`end\`, got ${c}`)}});var Yy=Me(m2=>{"use strict";var QE=m2&&m2.__importDefault||function(i){return i&&i.__esModule?i:{default:i}};Object.defineProperty(m2,"__esModule",{value:!0});var rB=QE(WE()),iB=QE(JE()),Vy={};m2.default=(i,u,f)=>{let c=i+String(u)+String(f);if(Vy[c])return Vy[c];let g=i;if(f==="wrap"&&(g=rB.default(i,u,{trim:!1,hard:!0})),f.startsWith("truncate")){let t="end";f==="truncate-middle"&&(t="middle"),f==="truncate-start"&&(t="start"),g=iB.default(i,u,{position:t})}return Vy[c]=g,g}});var Ky=Me($y=>{"use strict";Object.defineProperty($y,"__esModule",{value:!0});var ZE=i=>{let u="";if(i.childNodes.length>0)for(let f of i.childNodes){let c="";f.nodeName==="#text"?c=f.nodeValue:((f.nodeName==="ink-text"||f.nodeName==="ink-virtual-text")&&(c=ZE(f)),c.length>0&&typeof f.internal_transform=="function"&&(c=f.internal_transform(c))),u+=c}return u};$y.default=ZE});var Xy=Me(Zr=>{"use strict";var v2=Zr&&Zr.__importDefault||function(i){return i&&i.__esModule?i:{default:i}};Object.defineProperty(Zr,"__esModule",{value:!0});Zr.setTextNodeValue=Zr.createTextNode=Zr.setStyle=Zr.setAttribute=Zr.removeChildNode=Zr.insertBeforeNode=Zr.appendChildNode=Zr.createNode=Zr.TEXT_NAME=void 0;var oB=v2(hc()),e6=v2(TE()),uB=v2(xE()),sB=v2(Yy()),lB=v2(Ky());Zr.TEXT_NAME="#text";Zr.createNode=i=>{var u;let f={nodeName:i,style:{},attributes:{},childNodes:[],parentNode:null,yogaNode:i==="ink-virtual-text"?void 0:oB.default.Node.create()};return i==="ink-text"&&((u=f.yogaNode)===null||u===void 0||u.setMeasureFunc(fB.bind(null,f))),f};Zr.appendChildNode=(i,u)=>{var f;u.parentNode&&Zr.removeChildNode(u.parentNode,u),u.parentNode=i,i.childNodes.push(u),u.yogaNode&&((f=i.yogaNode)===null||f===void 0||f.insertChild(u.yogaNode,i.yogaNode.getChildCount())),(i.nodeName==="ink-text"||i.nodeName==="ink-virtual-text")&&jh(i)};Zr.insertBeforeNode=(i,u,f)=>{var c,g;u.parentNode&&Zr.removeChildNode(u.parentNode,u),u.parentNode=i;let t=i.childNodes.indexOf(f);if(t>=0){i.childNodes.splice(t,0,u),u.yogaNode&&((c=i.yogaNode)===null||c===void 0||c.insertChild(u.yogaNode,t));return}i.childNodes.push(u),u.yogaNode&&((g=i.yogaNode)===null||g===void 0||g.insertChild(u.yogaNode,i.yogaNode.getChildCount())),(i.nodeName==="ink-text"||i.nodeName==="ink-virtual-text")&&jh(i)};Zr.removeChildNode=(i,u)=>{var f,c;u.yogaNode&&((c=(f=u.parentNode)===null||f===void 0?void 0:f.yogaNode)===null||c===void 0||c.removeChild(u.yogaNode)),u.parentNode=null;let g=i.childNodes.indexOf(u);g>=0&&i.childNodes.splice(g,1),(i.nodeName==="ink-text"||i.nodeName==="ink-virtual-text")&&jh(i)};Zr.setAttribute=(i,u,f)=>{i.attributes[u]=f};Zr.setStyle=(i,u)=>{i.style=u,i.yogaNode&&uB.default(i.yogaNode,u)};Zr.createTextNode=i=>{let u={nodeName:"#text",nodeValue:i,yogaNode:void 0,parentNode:null,style:{}};return Zr.setTextNodeValue(u,i),u};var fB=function(i,u){var f,c;let g=i.nodeName==="#text"?i.nodeValue:lB.default(i),t=e6.default(g);if(t.width<=u||t.width>=1&&u>0&&u<1)return t;let C=(c=(f=i.style)===null||f===void 0?void 0:f.textWrap)!==null&&c!==void 0?c:"wrap",A=sB.default(g,u,C);return e6.default(A)},t6=i=>{var u;if(!(!i||!i.parentNode))return(u=i.yogaNode)!==null&&u!==void 0?u:t6(i.parentNode)},jh=i=>{let u=t6(i);u==null||u.markDirty()};Zr.setTextNodeValue=(i,u)=>{typeof u!="string"&&(u=String(u)),i.nodeValue=u,jh(i)}});var mc=Me((Rb,n6)=>{"use strict";n6.exports={BINARY_TYPES:["nodebuffer","arraybuffer","fragments"],GUID:"258EAFA5-E914-47DA-95CA-C5AB0DC85B11",kStatusCode:Symbol("status-code"),kWebSocket:Symbol("websocket"),EMPTY_BUFFER:Buffer.alloc(0),NOOP:()=>{}}});var g2=Me((Nb,Jy)=>{"use strict";var{EMPTY_BUFFER:cB}=mc();function r6(i,u){if(i.length===0)return cB;if(i.length===1)return i[0];let f=Buffer.allocUnsafe(u),c=0;for(let g=0;g{"use strict";var l6=Symbol("kDone"),Qy=Symbol("kRun"),f6=class{constructor(u){this[l6]=()=>{this.pending--,this[Qy]()},this.concurrency=u||Infinity,this.jobs=[],this.pending=0}add(u){this.jobs.push(u),this[Qy]()}[Qy](){if(this.pending!==this.concurrency&&this.jobs.length){let u=this.jobs.shift();this.pending++,u(this[l6])}}};s6.exports=f6});var w2=Me((jb,a6)=>{"use strict";var _2=require("zlib"),d6=g2(),aB=c6(),{kStatusCode:p6,NOOP:dB}=mc(),pB=Buffer.from([0,0,255,255]),qh=Symbol("permessage-deflate"),Xl=Symbol("total-length"),y2=Symbol("callback"),jf=Symbol("buffers"),Zy=Symbol("error"),zh,h6=class{constructor(u,f,c){if(this._maxPayload=c|0,this._options=u||{},this._threshold=this._options.threshold!==void 0?this._options.threshold:1024,this._isServer=!!f,this._deflate=null,this._inflate=null,this.params=null,!zh){let g=this._options.concurrencyLimit!==void 0?this._options.concurrencyLimit:10;zh=new aB(g)}}static get extensionName(){return"permessage-deflate"}offer(){let u={};return this._options.serverNoContextTakeover&&(u.server_no_context_takeover=!0),this._options.clientNoContextTakeover&&(u.client_no_context_takeover=!0),this._options.serverMaxWindowBits&&(u.server_max_window_bits=this._options.serverMaxWindowBits),this._options.clientMaxWindowBits?u.client_max_window_bits=this._options.clientMaxWindowBits:this._options.clientMaxWindowBits==null&&(u.client_max_window_bits=!0),u}accept(u){return u=this.normalizeParams(u),this.params=this._isServer?this.acceptAsServer(u):this.acceptAsClient(u),this.params}cleanup(){if(this._inflate&&(this._inflate.close(),this._inflate=null),this._deflate){let u=this._deflate[y2];this._deflate.close(),this._deflate=null,u&&u(new Error("The deflate stream was closed while data was being processed"))}}acceptAsServer(u){let f=this._options,c=u.find(g=>!(f.serverNoContextTakeover===!1&&g.server_no_context_takeover||g.server_max_window_bits&&(f.serverMaxWindowBits===!1||typeof f.serverMaxWindowBits=="number"&&f.serverMaxWindowBits>g.server_max_window_bits)||typeof f.clientMaxWindowBits=="number"&&!g.client_max_window_bits));if(!c)throw new Error("None of the extension offers can be accepted");return f.serverNoContextTakeover&&(c.server_no_context_takeover=!0),f.clientNoContextTakeover&&(c.client_no_context_takeover=!0),typeof f.serverMaxWindowBits=="number"&&(c.server_max_window_bits=f.serverMaxWindowBits),typeof f.clientMaxWindowBits=="number"?c.client_max_window_bits=f.clientMaxWindowBits:(c.client_max_window_bits===!0||f.clientMaxWindowBits===!1)&&delete c.client_max_window_bits,c}acceptAsClient(u){let f=u[0];if(this._options.clientNoContextTakeover===!1&&f.client_no_context_takeover)throw new Error('Unexpected parameter "client_no_context_takeover"');if(!f.client_max_window_bits)typeof this._options.clientMaxWindowBits=="number"&&(f.client_max_window_bits=this._options.clientMaxWindowBits);else if(this._options.clientMaxWindowBits===!1||typeof this._options.clientMaxWindowBits=="number"&&f.client_max_window_bits>this._options.clientMaxWindowBits)throw new Error('Unexpected or invalid parameter "client_max_window_bits"');return f}normalizeParams(u){return u.forEach(f=>{Object.keys(f).forEach(c=>{let g=f[c];if(g.length>1)throw new Error(`Parameter "${c}" must have only a single value`);if(g=g[0],c==="client_max_window_bits"){if(g!==!0){let t=+g;if(!Number.isInteger(t)||t<8||t>15)throw new TypeError(`Invalid value for parameter "${c}": ${g}`);g=t}else if(!this._isServer)throw new TypeError(`Invalid value for parameter "${c}": ${g}`)}else if(c==="server_max_window_bits"){let t=+g;if(!Number.isInteger(t)||t<8||t>15)throw new TypeError(`Invalid value for parameter "${c}": ${g}`);g=t}else if(c==="client_no_context_takeover"||c==="server_no_context_takeover"){if(g!==!0)throw new TypeError(`Invalid value for parameter "${c}": ${g}`)}else throw new Error(`Unknown parameter "${c}"`);f[c]=g})}),u}decompress(u,f,c){zh.add(g=>{this._decompress(u,f,(t,C)=>{g(),c(t,C)})})}compress(u,f,c){zh.add(g=>{this._compress(u,f,(t,C)=>{g(),c(t,C)})})}_decompress(u,f,c){let g=this._isServer?"client":"server";if(!this._inflate){let t=`${g}_max_window_bits`,C=typeof this.params[t]!="number"?_2.Z_DEFAULT_WINDOWBITS:this.params[t];this._inflate=_2.createInflateRaw(zn(dt({},this._options.zlibInflateOptions),{windowBits:C})),this._inflate[qh]=this,this._inflate[Xl]=0,this._inflate[jf]=[],this._inflate.on("error",mB),this._inflate.on("data",m6)}this._inflate[y2]=c,this._inflate.write(u),f&&this._inflate.write(pB),this._inflate.flush(()=>{let t=this._inflate[Zy];if(t){this._inflate.close(),this._inflate=null,c(t);return}let C=d6.concat(this._inflate[jf],this._inflate[Xl]);this._inflate._readableState.endEmitted?(this._inflate.close(),this._inflate=null):(this._inflate[Xl]=0,this._inflate[jf]=[],f&&this.params[`${g}_no_context_takeover`]&&this._inflate.reset()),c(null,C)})}_compress(u,f,c){let g=this._isServer?"server":"client";if(!this._deflate){let t=`${g}_max_window_bits`,C=typeof this.params[t]!="number"?_2.Z_DEFAULT_WINDOWBITS:this.params[t];this._deflate=_2.createDeflateRaw(zn(dt({},this._options.zlibDeflateOptions),{windowBits:C})),this._deflate[Xl]=0,this._deflate[jf]=[],this._deflate.on("error",dB),this._deflate.on("data",hB)}this._deflate[y2]=c,this._deflate.write(u),this._deflate.flush(_2.Z_SYNC_FLUSH,()=>{if(!this._deflate)return;let t=d6.concat(this._deflate[jf],this._deflate[Xl]);f&&(t=t.slice(0,t.length-4)),this._deflate[y2]=null,this._deflate[Xl]=0,this._deflate[jf]=[],f&&this.params[`${g}_no_context_takeover`]&&this._deflate.reset(),c(null,t)})}};a6.exports=h6;function hB(i){this[jf].push(i),this[Xl]+=i.length}function m6(i){if(this[Xl]+=i.length,this[qh]._maxPayload<1||this[Xl]<=this[qh]._maxPayload){this[jf].push(i);return}this[Zy]=new RangeError("Max payload size exceeded"),this[Zy][p6]=1009,this.removeListener("data",m6),this.reset()}function mB(i){this[qh]._inflate=null,i[p6]=1007,this[y2](i)}});var t3=Me((Ub,e3)=>{"use strict";function v6(i){return i>=1e3&&i<=1014&&i!==1004&&i!==1005&&i!==1006||i>=3e3&&i<=4999}function g6(i){let u=i.length,f=0;for(;f=u||(i[f+1]&192)!=128||(i[f+2]&192)!=128||i[f]===224&&(i[f+1]&224)==128||i[f]===237&&(i[f+1]&224)==160)return!1;f+=3}else if((i[f]&248)==240){if(f+3>=u||(i[f+1]&192)!=128||(i[f+2]&192)!=128||(i[f+3]&192)!=128||i[f]===240&&(i[f+1]&240)==128||i[f]===244&&i[f+1]>143||i[f]>244)return!1;f+=4}else return!1;return!0}try{let i=require("utf-8-validate");typeof i=="object"&&(i=i.Validation.isValidUTF8),e3.exports={isValidStatusCode:v6,isValidUTF8(u){return u.length<150?g6(u):i(u)}}}catch(i){e3.exports={isValidStatusCode:v6,isValidUTF8:g6}}});var i3=Me((qb,_6)=>{"use strict";var{Writable:vB}=require("stream"),y6=w2(),{BINARY_TYPES:gB,EMPTY_BUFFER:_B,kStatusCode:yB,kWebSocket:wB}=mc(),{concat:n3,toArrayBuffer:DB,unmask:EB}=g2(),{isValidStatusCode:SB,isValidUTF8:w6}=t3(),D2=0,D6=1,E6=2,S6=3,r3=4,CB=5,C6=class extends vB{constructor(u,f,c,g){super();this._binaryType=u||gB[0],this[wB]=void 0,this._extensions=f||{},this._isServer=!!c,this._maxPayload=g|0,this._bufferedBytes=0,this._buffers=[],this._compressed=!1,this._payloadLength=0,this._mask=void 0,this._fragmented=0,this._masked=!1,this._fin=!1,this._opcode=0,this._totalPayloadLength=0,this._messageLength=0,this._fragments=[],this._state=D2,this._loop=!1}_write(u,f,c){if(this._opcode===8&&this._state==D2)return c();this._bufferedBytes+=u.length,this._buffers.push(u),this.startLoop(c)}consume(u){if(this._bufferedBytes-=u,u===this._buffers[0].length)return this._buffers.shift();if(u=c.length?f.set(this._buffers.shift(),g):(f.set(new Uint8Array(c.buffer,c.byteOffset,u),g),this._buffers[0]=c.slice(u)),u-=c.length}while(u>0);return f}startLoop(u){let f;this._loop=!0;do switch(this._state){case D2:f=this.getInfo();break;case D6:f=this.getPayloadLength16();break;case E6:f=this.getPayloadLength64();break;case S6:this.getMask();break;case r3:f=this.getData(u);break;default:this._loop=!1;return}while(this._loop);u(f)}getInfo(){if(this._bufferedBytes<2){this._loop=!1;return}let u=this.consume(2);if((u[0]&48)!=0)return this._loop=!1,ii(RangeError,"RSV2 and RSV3 must be clear",!0,1002);let f=(u[0]&64)==64;if(f&&!this._extensions[y6.extensionName])return this._loop=!1,ii(RangeError,"RSV1 must be clear",!0,1002);if(this._fin=(u[0]&128)==128,this._opcode=u[0]&15,this._payloadLength=u[1]&127,this._opcode===0){if(f)return this._loop=!1,ii(RangeError,"RSV1 must be clear",!0,1002);if(!this._fragmented)return this._loop=!1,ii(RangeError,"invalid opcode 0",!0,1002);this._opcode=this._fragmented}else if(this._opcode===1||this._opcode===2){if(this._fragmented)return this._loop=!1,ii(RangeError,`invalid opcode ${this._opcode}`,!0,1002);this._compressed=f}else if(this._opcode>7&&this._opcode<11){if(!this._fin)return this._loop=!1,ii(RangeError,"FIN must be set",!0,1002);if(f)return this._loop=!1,ii(RangeError,"RSV1 must be clear",!0,1002);if(this._payloadLength>125)return this._loop=!1,ii(RangeError,`invalid payload length ${this._payloadLength}`,!0,1002)}else return this._loop=!1,ii(RangeError,`invalid opcode ${this._opcode}`,!0,1002);if(!this._fin&&!this._fragmented&&(this._fragmented=this._opcode),this._masked=(u[1]&128)==128,this._isServer){if(!this._masked)return this._loop=!1,ii(RangeError,"MASK must be set",!0,1002)}else if(this._masked)return this._loop=!1,ii(RangeError,"MASK must be clear",!0,1002);if(this._payloadLength===126)this._state=D6;else if(this._payloadLength===127)this._state=E6;else return this.haveLength()}getPayloadLength16(){if(this._bufferedBytes<2){this._loop=!1;return}return this._payloadLength=this.consume(2).readUInt16BE(0),this.haveLength()}getPayloadLength64(){if(this._bufferedBytes<8){this._loop=!1;return}let u=this.consume(8),f=u.readUInt32BE(0);return f>Math.pow(2,53-32)-1?(this._loop=!1,ii(RangeError,"Unsupported WebSocket frame: payload length > 2^53 - 1",!1,1009)):(this._payloadLength=f*Math.pow(2,32)+u.readUInt32BE(4),this.haveLength())}haveLength(){if(this._payloadLength&&this._opcode<8&&(this._totalPayloadLength+=this._payloadLength,this._totalPayloadLength>this._maxPayload&&this._maxPayload>0))return this._loop=!1,ii(RangeError,"Max payload size exceeded",!1,1009);this._masked?this._state=S6:this._state=r3}getMask(){if(this._bufferedBytes<4){this._loop=!1;return}this._mask=this.consume(4),this._state=r3}getData(u){let f=_B;if(this._payloadLength){if(this._bufferedBytes7)return this.controlMessage(f);if(this._compressed){this._state=CB,this.decompress(f,u);return}return f.length&&(this._messageLength=this._totalPayloadLength,this._fragments.push(f)),this.dataMessage()}decompress(u,f){this._extensions[y6.extensionName].decompress(u,this._fin,(g,t)=>{if(g)return f(g);if(t.length){if(this._messageLength+=t.length,this._messageLength>this._maxPayload&&this._maxPayload>0)return f(ii(RangeError,"Max payload size exceeded",!1,1009));this._fragments.push(t)}let C=this.dataMessage();if(C)return f(C);this.startLoop(f)})}dataMessage(){if(this._fin){let u=this._messageLength,f=this._fragments;if(this._totalPayloadLength=0,this._messageLength=0,this._fragmented=0,this._fragments=[],this._opcode===2){let c;this._binaryType==="nodebuffer"?c=n3(f,u):this._binaryType==="arraybuffer"?c=DB(n3(f,u)):c=f,this.emit("message",c)}else{let c=n3(f,u);if(!w6(c))return this._loop=!1,ii(Error,"invalid UTF-8 sequence",!0,1007);this.emit("message",c.toString())}}this._state=D2}controlMessage(u){if(this._opcode===8)if(this._loop=!1,u.length===0)this.emit("conclude",1005,""),this.end();else{if(u.length===1)return ii(RangeError,"invalid payload length 1",!0,1002);{let f=u.readUInt16BE(0);if(!SB(f))return ii(RangeError,`invalid status code ${f}`,!0,1002);let c=u.slice(2);if(!w6(c))return ii(Error,"invalid UTF-8 sequence",!0,1007);this.emit("conclude",f,c.toString()),this.end()}}else this._opcode===9?this.emit("ping",u):this.emit("pong",u);this._state=D2}};_6.exports=C6;function ii(i,u,f,c){let g=new i(f?`Invalid WebSocket frame: ${u}`:u);return Error.captureStackTrace(g,ii),g[yB]=c,g}});var o3=Me((zb,T6)=>{"use strict";var{randomFillSync:TB}=require("crypto"),x6=w2(),{EMPTY_BUFFER:xB}=mc(),{isValidStatusCode:kB}=t3(),{mask:k6,toBuffer:Jl}=g2(),vc=Buffer.alloc(4),Ql=class{constructor(u,f){this._extensions=f||{},this._socket=u,this._firstFragment=!0,this._compress=!1,this._bufferedBytes=0,this._deflating=!1,this._queue=[]}static frame(u,f){let c=f.mask&&f.readOnly,g=f.mask?6:2,t=u.length;u.length>=65536?(g+=8,t=127):u.length>125&&(g+=2,t=126);let C=Buffer.allocUnsafe(c?u.length+g:g);return C[0]=f.fin?f.opcode|128:f.opcode,f.rsv1&&(C[0]|=64),C[1]=t,t===126?C.writeUInt16BE(u.length,2):t===127&&(C.writeUInt32BE(0,2),C.writeUInt32BE(u.length,6)),f.mask?(TB(vc,0,4),C[1]|=128,C[g-4]=vc[0],C[g-3]=vc[1],C[g-2]=vc[2],C[g-1]=vc[3],c?(k6(u,vc,C,g,u.length),[C]):(k6(u,vc,u,0,u.length),[C,u])):[C,u]}close(u,f,c,g){let t;if(u===void 0)t=xB;else{if(typeof u!="number"||!kB(u))throw new TypeError("First argument must be a valid error code number");if(f===void 0||f==="")t=Buffer.allocUnsafe(2),t.writeUInt16BE(u,0);else{let C=Buffer.byteLength(f);if(C>123)throw new RangeError("The message must not be greater than 123 bytes");t=Buffer.allocUnsafe(2+C),t.writeUInt16BE(u,0),t.write(f,2)}}this._deflating?this.enqueue([this.doClose,t,c,g]):this.doClose(t,c,g)}doClose(u,f,c){this.sendFrame(Ql.frame(u,{fin:!0,rsv1:!1,opcode:8,mask:f,readOnly:!1}),c)}ping(u,f,c){let g=Jl(u);if(g.length>125)throw new RangeError("The data size must not be greater than 125 bytes");this._deflating?this.enqueue([this.doPing,g,f,Jl.readOnly,c]):this.doPing(g,f,Jl.readOnly,c)}doPing(u,f,c,g){this.sendFrame(Ql.frame(u,{fin:!0,rsv1:!1,opcode:9,mask:f,readOnly:c}),g)}pong(u,f,c){let g=Jl(u);if(g.length>125)throw new RangeError("The data size must not be greater than 125 bytes");this._deflating?this.enqueue([this.doPong,g,f,Jl.readOnly,c]):this.doPong(g,f,Jl.readOnly,c)}doPong(u,f,c,g){this.sendFrame(Ql.frame(u,{fin:!0,rsv1:!1,opcode:10,mask:f,readOnly:c}),g)}send(u,f,c){let g=Jl(u),t=this._extensions[x6.extensionName],C=f.binary?2:1,A=f.compress;if(this._firstFragment?(this._firstFragment=!1,A&&t&&(A=g.length>=t._threshold),this._compress=A):(A=!1,C=0),f.fin&&(this._firstFragment=!0),t){let x={fin:f.fin,rsv1:A,opcode:C,mask:f.mask,readOnly:Jl.readOnly};this._deflating?this.enqueue([this.dispatch,g,this._compress,x,c]):this.dispatch(g,this._compress,x,c)}else this.sendFrame(Ql.frame(g,{fin:f.fin,rsv1:!1,opcode:C,mask:f.mask,readOnly:Jl.readOnly}),c)}dispatch(u,f,c,g){if(!f){this.sendFrame(Ql.frame(u,c),g);return}let t=this._extensions[x6.extensionName];this._bufferedBytes+=u.length,this._deflating=!0,t.compress(u,c.fin,(C,A)=>{if(this._socket.destroyed){let x=new Error("The socket was closed while data was being compressed");typeof g=="function"&&g(x);for(let D=0;D{"use strict";var E2=class{constructor(u,f){this.target=f,this.type=u}},O6=class extends E2{constructor(u,f){super("message",f);this.data=u}},I6=class extends E2{constructor(u,f,c){super("close",c);this.wasClean=c._closeFrameReceived&&c._closeFrameSent,this.reason=f,this.code=u}},P6=class extends E2{constructor(u){super("open",u)}},M6=class extends E2{constructor(u,f){super("error",f);this.message=u.message,this.error=u}},AB={addEventListener(i,u,f){if(typeof u!="function")return;function c(x){u.call(this,new O6(x,this))}function g(x,D){u.call(this,new I6(x,D,this))}function t(x){u.call(this,new M6(x,this))}function C(){u.call(this,new P6(this))}let A=f&&f.once?"once":"on";i==="message"?(c._listener=u,this[A](i,c)):i==="close"?(g._listener=u,this[A](i,g)):i==="error"?(t._listener=u,this[A](i,t)):i==="open"?(C._listener=u,this[A](i,C)):this[A](i,u)},removeEventListener(i,u){let f=this.listeners(i);for(let c=0;c{"use strict";var S2=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,1,1,1,1,1,0,0,1,1,0,1,1,0,1,1,1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,1,0,1,0];function rl(i,u,f){i[u]===void 0?i[u]=[f]:i[u].push(f)}function OB(i){let u=Object.create(null);if(i===void 0||i==="")return u;let f=Object.create(null),c=!1,g=!1,t=!1,C,A,x=-1,D=-1,L=0;for(;L{let f=i[u];return Array.isArray(f)||(f=[f]),f.map(c=>[u].concat(Object.keys(c).map(g=>{let t=c[g];return Array.isArray(t)||(t=[t]),t.map(C=>C===!0?g:`${g}=${C}`).join("; ")})).join("; ")).join(", ")}).join(", ")}L6.exports={format:IB,parse:OB}});var a3=Me((bb,R6)=>{"use strict";var PB=require("events"),MB=require("https"),FB=require("http"),N6=require("net"),LB=require("tls"),{randomBytes:RB,createHash:NB}=require("crypto"),{URL:s3}=require("url"),Uf=w2(),BB=i3(),jB=o3(),{BINARY_TYPES:B6,EMPTY_BUFFER:l3,GUID:UB,kStatusCode:qB,kWebSocket:No,NOOP:j6}=mc(),{addEventListener:zB,removeEventListener:WB}=F6(),{format:HB,parse:bB}=u3(),{toBuffer:GB}=g2(),U6=["CONNECTING","OPEN","CLOSING","CLOSED"],f3=[8,13],VB=30*1e3,mr=class extends PB{constructor(u,f,c){super();this._binaryType=B6[0],this._closeCode=1006,this._closeFrameReceived=!1,this._closeFrameSent=!1,this._closeMessage="",this._closeTimer=null,this._extensions={},this._protocol="",this._readyState=mr.CONNECTING,this._receiver=null,this._sender=null,this._socket=null,u!==null?(this._bufferedAmount=0,this._isServer=!1,this._redirects=0,Array.isArray(f)?f=f.join(", "):typeof f=="object"&&f!==null&&(c=f,f=void 0),q6(this,u,f,c)):this._isServer=!0}get binaryType(){return this._binaryType}set binaryType(u){!B6.includes(u)||(this._binaryType=u,this._receiver&&(this._receiver._binaryType=u))}get bufferedAmount(){return this._socket?this._socket._writableState.length+this._sender._bufferedBytes:this._bufferedAmount}get extensions(){return Object.keys(this._extensions).join()}get protocol(){return this._protocol}get readyState(){return this._readyState}get url(){return this._url}setSocket(u,f,c){let g=new BB(this.binaryType,this._extensions,this._isServer,c);this._sender=new jB(u,this._extensions),this._receiver=g,this._socket=u,g[No]=this,u[No]=this,g.on("conclude",YB),g.on("drain",$B),g.on("error",KB),g.on("message",XB),g.on("ping",JB),g.on("pong",QB),u.setTimeout(0),u.setNoDelay(),f.length>0&&u.unshift(f),u.on("close",z6),u.on("data",Wh),u.on("end",W6),u.on("error",H6),this._readyState=mr.OPEN,this.emit("open")}emitClose(){if(!this._socket){this._readyState=mr.CLOSED,this.emit("close",this._closeCode,this._closeMessage);return}this._extensions[Uf.extensionName]&&this._extensions[Uf.extensionName].cleanup(),this._receiver.removeAllListeners(),this._readyState=mr.CLOSED,this.emit("close",this._closeCode,this._closeMessage)}close(u,f){if(this.readyState!==mr.CLOSED){if(this.readyState===mr.CONNECTING){let c="WebSocket was closed before the connection was established";return Zl(this,this._req,c)}if(this.readyState===mr.CLOSING){this._closeFrameSent&&this._closeFrameReceived&&this._socket.end();return}this._readyState=mr.CLOSING,this._sender.close(u,f,!this._isServer,c=>{c||(this._closeFrameSent=!0,this._closeFrameReceived&&this._socket.end())}),this._closeTimer=setTimeout(this._socket.destroy.bind(this._socket),VB)}}ping(u,f,c){if(this.readyState===mr.CONNECTING)throw new Error("WebSocket is not open: readyState 0 (CONNECTING)");if(typeof u=="function"?(c=u,u=f=void 0):typeof f=="function"&&(c=f,f=void 0),typeof u=="number"&&(u=u.toString()),this.readyState!==mr.OPEN){c3(this,u,c);return}f===void 0&&(f=!this._isServer),this._sender.ping(u||l3,f,c)}pong(u,f,c){if(this.readyState===mr.CONNECTING)throw new Error("WebSocket is not open: readyState 0 (CONNECTING)");if(typeof u=="function"?(c=u,u=f=void 0):typeof f=="function"&&(c=f,f=void 0),typeof u=="number"&&(u=u.toString()),this.readyState!==mr.OPEN){c3(this,u,c);return}f===void 0&&(f=!this._isServer),this._sender.pong(u||l3,f,c)}send(u,f,c){if(this.readyState===mr.CONNECTING)throw new Error("WebSocket is not open: readyState 0 (CONNECTING)");if(typeof f=="function"&&(c=f,f={}),typeof u=="number"&&(u=u.toString()),this.readyState!==mr.OPEN){c3(this,u,c);return}let g=dt({binary:typeof u!="string",mask:!this._isServer,compress:!0,fin:!0},f);this._extensions[Uf.extensionName]||(g.compress=!1),this._sender.send(u||l3,g,c)}terminate(){if(this.readyState!==mr.CLOSED){if(this.readyState===mr.CONNECTING){let u="WebSocket was closed before the connection was established";return Zl(this,this._req,u)}this._socket&&(this._readyState=mr.CLOSING,this._socket.destroy())}}};U6.forEach((i,u)=>{let f={enumerable:!0,value:u};Object.defineProperty(mr.prototype,i,f),Object.defineProperty(mr,i,f)});["binaryType","bufferedAmount","extensions","protocol","readyState","url"].forEach(i=>{Object.defineProperty(mr.prototype,i,{enumerable:!0})});["open","error","close","message"].forEach(i=>{Object.defineProperty(mr.prototype,`on${i}`,{configurable:!0,enumerable:!0,get(){let u=this.listeners(i);for(let f=0;f{Zl(i,j,"Opening handshake has timed out")}),j.on("error",$=>{j===null||j.aborted||(j=i._req=null,i._readyState=mr.CLOSING,i.emit("error",$),i.emitClose())}),j.on("response",$=>{let h=$.headers.location,re=$.statusCode;if(h&&g.followRedirects&&re>=300&&re<400){if(++i._redirects>g.maxRedirects){Zl(i,j,"Maximum redirects exceeded");return}j.abort();let ce=new s3(h,u);q6(i,ce,f,c)}else i.emit("unexpected-response",j,$)||Zl(i,j,`Unexpected server response: ${$.statusCode}`)}),j.on("upgrade",($,h,re)=>{if(i.emit("upgrade",$),i.readyState!==mr.CONNECTING)return;j=i._req=null;let ce=NB("sha1").update(D+UB).digest("base64");if($.headers["sec-websocket-accept"]!==ce){Zl(i,h,"Invalid Sec-WebSocket-Accept header");return}let Q=$.headers["sec-websocket-protocol"],oe=(f||"").split(/, */),Se;if(!f&&Q?Se="Server sent a subprotocol but none was requested":f&&!Q?Se="Server sent no subprotocol":Q&&!oe.includes(Q)&&(Se="Server sent an invalid subprotocol"),Se){Zl(i,h,Se);return}if(Q&&(i._protocol=Q),N)try{let me=bB($.headers["sec-websocket-extensions"]);me[Uf.extensionName]&&(N.accept(me[Uf.extensionName]),i._extensions[Uf.extensionName]=N)}catch(me){Zl(i,h,"Invalid Sec-WebSocket-Extensions header");return}i.setSocket(h,re,g.maxPayload)})}function ZB(i){return i.path=i.socketPath,N6.connect(i)}function ej(i){return i.path=void 0,!i.servername&&i.servername!==""&&(i.servername=N6.isIP(i.host)?"":i.host),LB.connect(i)}function Zl(i,u,f){i._readyState=mr.CLOSING;let c=new Error(f);Error.captureStackTrace(c,Zl),u.setHeader?(u.abort(),u.socket&&!u.socket.destroyed&&u.socket.destroy(),u.once("abort",i.emitClose.bind(i)),i.emit("error",c)):(u.destroy(c),u.once("error",i.emit.bind(i,"error")),u.once("close",i.emitClose.bind(i)))}function c3(i,u,f){if(u){let c=GB(u).length;i._socket?i._sender._bufferedBytes+=c:i._bufferedAmount+=c}if(f){let c=new Error(`WebSocket is not open: readyState ${i.readyState} (${U6[i.readyState]})`);f(c)}}function YB(i,u){let f=this[No];f._socket.removeListener("data",Wh),f._socket.resume(),f._closeFrameReceived=!0,f._closeMessage=u,f._closeCode=i,i===1005?f.close():f.close(i,u)}function $B(){this[No]._socket.resume()}function KB(i){let u=this[No];u._socket.removeListener("data",Wh),u._readyState=mr.CLOSING,u._closeCode=i[qB],u.emit("error",i),u._socket.destroy()}function b6(){this[No].emitClose()}function XB(i){this[No].emit("message",i)}function JB(i){let u=this[No];u.pong(i,!u._isServer,j6),u.emit("ping",i)}function QB(i){this[No].emit("pong",i)}function z6(){let i=this[No];this.removeListener("close",z6),this.removeListener("end",W6),i._readyState=mr.CLOSING,i._socket.read(),i._receiver.end(),this.removeListener("data",Wh),this[No]=void 0,clearTimeout(i._closeTimer),i._receiver._writableState.finished||i._receiver._writableState.errorEmitted?i.emitClose():(i._receiver.on("error",b6),i._receiver.on("finish",b6))}function Wh(i){this[No]._receiver.write(i)||this.pause()}function W6(){let i=this[No];i._readyState=mr.CLOSING,i._receiver.end(),this.end()}function H6(){let i=this[No];this.removeListener("error",H6),this.on("error",j6),i&&(i._readyState=mr.CLOSING,this.destroy())}});var $6=Me((Gb,G6)=>{"use strict";var{Duplex:tj}=require("stream");function V6(i){i.emit("close")}function nj(){!this.destroyed&&this._writableState.finished&&this.destroy()}function Y6(i){this.removeListener("error",Y6),this.destroy(),this.listenerCount("error")===0&&this.emit("error",i)}function rj(i,u){let f=!0;function c(){f&&i._socket.resume()}i.readyState===i.CONNECTING?i.once("open",function(){i._receiver.removeAllListeners("drain"),i._receiver.on("drain",c)}):(i._receiver.removeAllListeners("drain"),i._receiver.on("drain",c));let g=new tj(zn(dt({},u),{autoDestroy:!1,emitClose:!1,objectMode:!1,writableObjectMode:!1}));return i.on("message",function(C){g.push(C)||(f=!1,i._socket.pause())}),i.once("error",function(C){g.destroyed||g.destroy(C)}),i.once("close",function(){g.destroyed||g.push(null)}),g._destroy=function(t,C){if(i.readyState===i.CLOSED){C(t),process.nextTick(V6,g);return}let A=!1;i.once("error",function(D){A=!0,C(D)}),i.once("close",function(){A||C(t),process.nextTick(V6,g)}),i.terminate()},g._final=function(t){if(i.readyState===i.CONNECTING){i.once("open",function(){g._final(t)});return}i._socket!==null&&(i._socket._writableState.finished?(t(),g._readableState.endEmitted&&g.destroy()):(i._socket.once("finish",function(){t()}),i.close()))},g._read=function(){i.readyState===i.OPEN&&!f&&(f=!0,i._receiver._writableState.needDrain||i._socket.resume())},g._write=function(t,C,A){if(i.readyState===i.CONNECTING){i.once("open",function(){g._write(t,C,A)});return}i.send(t,A)},g.on("end",nj),g.on("error",Y6),g}G6.exports=rj});var J6=Me((Vb,K6)=>{"use strict";var ij=require("events"),{createHash:oj}=require("crypto"),{createServer:uj,STATUS_CODES:d3}=require("http"),gc=w2(),sj=a3(),{format:lj,parse:fj}=u3(),{GUID:cj,kWebSocket:aj}=mc(),dj=/^[+/0-9A-Za-z]{22}==$/,X6=class extends ij{constructor(u,f){super();if(u=dt({maxPayload:100*1024*1024,perMessageDeflate:!1,handleProtocols:null,clientTracking:!0,verifyClient:null,noServer:!1,backlog:null,server:null,host:null,path:null,port:null},u),u.port==null&&!u.server&&!u.noServer)throw new TypeError('One of the "port", "server", or "noServer" options must be specified');if(u.port!=null?(this._server=uj((c,g)=>{let t=d3[426];g.writeHead(426,{"Content-Length":t.length,"Content-Type":"text/plain"}),g.end(t)}),this._server.listen(u.port,u.host,u.backlog,f)):u.server&&(this._server=u.server),this._server){let c=this.emit.bind(this,"connection");this._removeListeners=pj(this._server,{listening:this.emit.bind(this,"listening"),error:this.emit.bind(this,"error"),upgrade:(g,t,C)=>{this.handleUpgrade(g,t,C,c)}})}u.perMessageDeflate===!0&&(u.perMessageDeflate={}),u.clientTracking&&(this.clients=new Set),this.options=u}address(){if(this.options.noServer)throw new Error('The server is operating in "noServer" mode');return this._server?this._server.address():null}close(u){if(u&&this.once("close",u),this.clients)for(let c of this.clients)c.terminate();let f=this._server;if(f&&(this._removeListeners(),this._removeListeners=this._server=null,this.options.port!=null)){f.close(()=>this.emit("close"));return}process.nextTick(hj,this)}shouldHandle(u){if(this.options.path){let f=u.url.indexOf("?");if((f!==-1?u.url.slice(0,f):u.url)!==this.options.path)return!1}return!0}handleUpgrade(u,f,c,g){f.on("error",p3);let t=u.headers["sec-websocket-key"]!==void 0?u.headers["sec-websocket-key"].trim():!1,C=+u.headers["sec-websocket-version"],A={};if(u.method!=="GET"||u.headers.upgrade.toLowerCase()!=="websocket"||!t||!dj.test(t)||C!==8&&C!==13||!this.shouldHandle(u))return Hh(f,400);if(this.options.perMessageDeflate){let x=new gc(this.options.perMessageDeflate,!0,this.options.maxPayload);try{let D=fj(u.headers["sec-websocket-extensions"]);D[gc.extensionName]&&(x.accept(D[gc.extensionName]),A[gc.extensionName]=x)}catch(D){return Hh(f,400)}}if(this.options.verifyClient){let x={origin:u.headers[`${C===8?"sec-websocket-origin":"origin"}`],secure:!!(u.socket.authorized||u.socket.encrypted),req:u};if(this.options.verifyClient.length===2){this.options.verifyClient(x,(D,L,N,j)=>{if(!D)return Hh(f,L||401,N,j);this.completeUpgrade(t,A,u,f,c,g)});return}if(!this.options.verifyClient(x))return Hh(f,401)}this.completeUpgrade(t,A,u,f,c,g)}completeUpgrade(u,f,c,g,t,C){if(!g.readable||!g.writable)return g.destroy();if(g[aj])throw new Error("server.handleUpgrade() was called more than once with the same socket, possibly due to a misconfiguration");let A=oj("sha1").update(u+cj).digest("base64"),x=["HTTP/1.1 101 Switching Protocols","Upgrade: websocket","Connection: Upgrade",`Sec-WebSocket-Accept: ${A}`],D=new sj(null),L=c.headers["sec-websocket-protocol"];if(L&&(L=L.split(",").map(mj),this.options.handleProtocols?L=this.options.handleProtocols(L,c):L=L[0],L&&(x.push(`Sec-WebSocket-Protocol: ${L}`),D._protocol=L)),f[gc.extensionName]){let N=f[gc.extensionName].params,j=lj({[gc.extensionName]:[N]});x.push(`Sec-WebSocket-Extensions: ${j}`),D._extensions=f}this.emit("headers",x,c),g.write(x.concat(`\r +`).join(`\r +`)),g.removeListener("error",p3),D.setSocket(g,t,this.options.maxPayload),this.clients&&(this.clients.add(D),D.on("close",()=>this.clients.delete(D))),C(D,c)}};K6.exports=X6;function pj(i,u){for(let f of Object.keys(u))i.on(f,u[f]);return function(){for(let c of Object.keys(u))i.removeListener(c,u[c])}}function hj(i){i.emit("close")}function p3(){this.destroy()}function Hh(i,u,f,c){i.writable&&(f=f||d3[u],c=dt({Connection:"close","Content-Type":"text/html","Content-Length":Buffer.byteLength(f)},c),i.write(`HTTP/1.1 ${u} ${d3[u]}\r +`+Object.keys(c).map(g=>`${g}: ${c[g]}`).join(`\r +`)+`\r +\r +`+f)),i.removeListener("error",p3),i.destroy()}function mj(i){return i.trim()}});var Z6=Me((Yb,Q6)=>{"use strict";var C2=a3();C2.createWebSocketStream=$6();C2.Server=J6();C2.Receiver=i3();C2.Sender=o3();Q6.exports=C2});var eS=Me(bh=>{"use strict";var vj=bh&&bh.__importDefault||function(i){return i&&i.__esModule?i:{default:i}};Object.defineProperty(bh,"__esModule",{value:!0});var gj=vj(Z6()),T2=global;T2.WebSocket||(T2.WebSocket=gj.default);T2.window||(T2.window=global);T2.window.__REACT_DEVTOOLS_COMPONENT_FILTERS__=[{type:1,value:7,isEnabled:!0},{type:2,value:"InternalApp",isEnabled:!0,isValid:!0},{type:2,value:"InternalAppContext",isEnabled:!0,isValid:!0},{type:2,value:"InternalStdoutContext",isEnabled:!0,isValid:!0},{type:2,value:"InternalStderrContext",isEnabled:!0,isValid:!0},{type:2,value:"InternalStdinContext",isEnabled:!0,isValid:!0},{type:2,value:"InternalFocusContext",isEnabled:!0,isValid:!0}]});var tS=Me((Gh,h3)=>{(function(i,u){typeof Gh=="object"&&typeof h3=="object"?h3.exports=u():typeof define=="function"&&define.amd?define([],u):typeof Gh=="object"?Gh.ReactDevToolsBackend=u():i.ReactDevToolsBackend=u()})(window,function(){return function(i){var u={};function f(c){if(u[c])return u[c].exports;var g=u[c]={i:c,l:!1,exports:{}};return i[c].call(g.exports,g,g.exports,f),g.l=!0,g.exports}return f.m=i,f.c=u,f.d=function(c,g,t){f.o(c,g)||Object.defineProperty(c,g,{enumerable:!0,get:t})},f.r=function(c){typeof Symbol!="undefined"&&Symbol.toStringTag&&Object.defineProperty(c,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(c,"__esModule",{value:!0})},f.t=function(c,g){if(1&g&&(c=f(c)),8&g||4&g&&typeof c=="object"&&c&&c.__esModule)return c;var t=Object.create(null);if(f.r(t),Object.defineProperty(t,"default",{enumerable:!0,value:c}),2&g&&typeof c!="string")for(var C in c)f.d(t,C,function(A){return c[A]}.bind(null,C));return t},f.n=function(c){var g=c&&c.__esModule?function(){return c.default}:function(){return c};return f.d(g,"a",g),g},f.o=function(c,g){return Object.prototype.hasOwnProperty.call(c,g)},f.p="",f(f.s=20)}([function(i,u,f){"use strict";i.exports=f(12)},function(i,u,f){"use strict";var c=Object.getOwnPropertySymbols,g=Object.prototype.hasOwnProperty,t=Object.prototype.propertyIsEnumerable;function C(A){if(A==null)throw new TypeError("Object.assign cannot be called with null or undefined");return Object(A)}i.exports=function(){try{if(!Object.assign)return!1;var A=new String("abc");if(A[5]="de",Object.getOwnPropertyNames(A)[0]==="5")return!1;for(var x={},D=0;D<10;D++)x["_"+String.fromCharCode(D)]=D;if(Object.getOwnPropertyNames(x).map(function(N){return x[N]}).join("")!=="0123456789")return!1;var L={};return"abcdefghijklmnopqrst".split("").forEach(function(N){L[N]=N}),Object.keys(Object.assign({},L)).join("")==="abcdefghijklmnopqrst"}catch(N){return!1}}()?Object.assign:function(A,x){for(var D,L,N=C(A),j=1;j=J||Ft<0||Nt&&it-At>=ot}function Z(){var it=ce();if(ge(it))return Ae(it);Ue=setTimeout(Z,function(Ft){var jt=J-(Ft-be);return Nt?re(jt,ot-(Ft-At)):jt}(it))}function Ae(it){return Ue=void 0,Je&&Oe?V(it):(Oe=Le=void 0,ct)}function at(){var it=ce(),Ft=ge(it);if(Oe=arguments,Le=this,be=it,Ft){if(Ue===void 0)return ne(be);if(Nt)return Ue=setTimeout(Z,J),V(be)}return Ue===void 0&&(Ue=setTimeout(Z,J)),ct}return J=me(J)||0,oe(Te)&&(Ot=!!Te.leading,ot=(Nt="maxWait"in Te)?h(me(Te.maxWait)||0,J):ot,Je="trailing"in Te?!!Te.trailing:Je),at.cancel=function(){Ue!==void 0&&clearTimeout(Ue),At=0,Oe=be=Le=Ue=void 0},at.flush=function(){return Ue===void 0?ct:Ae(ce())},at}function oe(De){var J=g(De);return!!De&&(J=="object"||J=="function")}function Se(De){return g(De)=="symbol"||function(J){return!!J&&g(J)=="object"}(De)&&$.call(De)=="[object Symbol]"}function me(De){if(typeof De=="number")return De;if(Se(De))return NaN;if(oe(De)){var J=typeof De.valueOf=="function"?De.valueOf():De;De=oe(J)?J+"":J}if(typeof De!="string")return De===0?De:+De;De=De.replace(t,"");var Te=A.test(De);return Te||x.test(De)?D(De.slice(2),Te?2:8):C.test(De)?NaN:+De}i.exports=function(De,J,Te){var Oe=!0,Le=!0;if(typeof De!="function")throw new TypeError("Expected a function");return oe(Te)&&(Oe="leading"in Te?!!Te.leading:Oe,Le="trailing"in Te?!!Te.trailing:Le),Q(De,J,{leading:Oe,maxWait:J,trailing:Le})}}).call(this,f(4))},function(i,u,f){(function(c){function g(V){return(g=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(ne){return typeof ne}:function(ne){return ne&&typeof Symbol=="function"&&ne.constructor===Symbol&&ne!==Symbol.prototype?"symbol":typeof ne})(V)}var t;u=i.exports=h,t=(c===void 0?"undefined":g(c))==="object"&&c.env&&c.env.NODE_DEBUG&&/\bsemver\b/i.test(c.env.NODE_DEBUG)?function(){var V=Array.prototype.slice.call(arguments,0);V.unshift("SEMVER"),console.log.apply(console,V)}:function(){},u.SEMVER_SPEC_VERSION="2.0.0";var C=Number.MAX_SAFE_INTEGER||9007199254740991,A=u.re=[],x=u.src=[],D=u.tokens={},L=0;function N(V){D[V]=L++}N("NUMERICIDENTIFIER"),x[D.NUMERICIDENTIFIER]="0|[1-9]\\d*",N("NUMERICIDENTIFIERLOOSE"),x[D.NUMERICIDENTIFIERLOOSE]="[0-9]+",N("NONNUMERICIDENTIFIER"),x[D.NONNUMERICIDENTIFIER]="\\d*[a-zA-Z-][a-zA-Z0-9-]*",N("MAINVERSION"),x[D.MAINVERSION]="("+x[D.NUMERICIDENTIFIER]+")\\.("+x[D.NUMERICIDENTIFIER]+")\\.("+x[D.NUMERICIDENTIFIER]+")",N("MAINVERSIONLOOSE"),x[D.MAINVERSIONLOOSE]="("+x[D.NUMERICIDENTIFIERLOOSE]+")\\.("+x[D.NUMERICIDENTIFIERLOOSE]+")\\.("+x[D.NUMERICIDENTIFIERLOOSE]+")",N("PRERELEASEIDENTIFIER"),x[D.PRERELEASEIDENTIFIER]="(?:"+x[D.NUMERICIDENTIFIER]+"|"+x[D.NONNUMERICIDENTIFIER]+")",N("PRERELEASEIDENTIFIERLOOSE"),x[D.PRERELEASEIDENTIFIERLOOSE]="(?:"+x[D.NUMERICIDENTIFIERLOOSE]+"|"+x[D.NONNUMERICIDENTIFIER]+")",N("PRERELEASE"),x[D.PRERELEASE]="(?:-("+x[D.PRERELEASEIDENTIFIER]+"(?:\\."+x[D.PRERELEASEIDENTIFIER]+")*))",N("PRERELEASELOOSE"),x[D.PRERELEASELOOSE]="(?:-?("+x[D.PRERELEASEIDENTIFIERLOOSE]+"(?:\\."+x[D.PRERELEASEIDENTIFIERLOOSE]+")*))",N("BUILDIDENTIFIER"),x[D.BUILDIDENTIFIER]="[0-9A-Za-z-]+",N("BUILD"),x[D.BUILD]="(?:\\+("+x[D.BUILDIDENTIFIER]+"(?:\\."+x[D.BUILDIDENTIFIER]+")*))",N("FULL"),N("FULLPLAIN"),x[D.FULLPLAIN]="v?"+x[D.MAINVERSION]+x[D.PRERELEASE]+"?"+x[D.BUILD]+"?",x[D.FULL]="^"+x[D.FULLPLAIN]+"$",N("LOOSEPLAIN"),x[D.LOOSEPLAIN]="[v=\\s]*"+x[D.MAINVERSIONLOOSE]+x[D.PRERELEASELOOSE]+"?"+x[D.BUILD]+"?",N("LOOSE"),x[D.LOOSE]="^"+x[D.LOOSEPLAIN]+"$",N("GTLT"),x[D.GTLT]="((?:<|>)?=?)",N("XRANGEIDENTIFIERLOOSE"),x[D.XRANGEIDENTIFIERLOOSE]=x[D.NUMERICIDENTIFIERLOOSE]+"|x|X|\\*",N("XRANGEIDENTIFIER"),x[D.XRANGEIDENTIFIER]=x[D.NUMERICIDENTIFIER]+"|x|X|\\*",N("XRANGEPLAIN"),x[D.XRANGEPLAIN]="[v=\\s]*("+x[D.XRANGEIDENTIFIER]+")(?:\\.("+x[D.XRANGEIDENTIFIER]+")(?:\\.("+x[D.XRANGEIDENTIFIER]+")(?:"+x[D.PRERELEASE]+")?"+x[D.BUILD]+"?)?)?",N("XRANGEPLAINLOOSE"),x[D.XRANGEPLAINLOOSE]="[v=\\s]*("+x[D.XRANGEIDENTIFIERLOOSE]+")(?:\\.("+x[D.XRANGEIDENTIFIERLOOSE]+")(?:\\.("+x[D.XRANGEIDENTIFIERLOOSE]+")(?:"+x[D.PRERELEASELOOSE]+")?"+x[D.BUILD]+"?)?)?",N("XRANGE"),x[D.XRANGE]="^"+x[D.GTLT]+"\\s*"+x[D.XRANGEPLAIN]+"$",N("XRANGELOOSE"),x[D.XRANGELOOSE]="^"+x[D.GTLT]+"\\s*"+x[D.XRANGEPLAINLOOSE]+"$",N("COERCE"),x[D.COERCE]="(^|[^\\d])(\\d{1,16})(?:\\.(\\d{1,16}))?(?:\\.(\\d{1,16}))?(?:$|[^\\d])",N("COERCERTL"),A[D.COERCERTL]=new RegExp(x[D.COERCE],"g"),N("LONETILDE"),x[D.LONETILDE]="(?:~>?)",N("TILDETRIM"),x[D.TILDETRIM]="(\\s*)"+x[D.LONETILDE]+"\\s+",A[D.TILDETRIM]=new RegExp(x[D.TILDETRIM],"g"),N("TILDE"),x[D.TILDE]="^"+x[D.LONETILDE]+x[D.XRANGEPLAIN]+"$",N("TILDELOOSE"),x[D.TILDELOOSE]="^"+x[D.LONETILDE]+x[D.XRANGEPLAINLOOSE]+"$",N("LONECARET"),x[D.LONECARET]="(?:\\^)",N("CARETTRIM"),x[D.CARETTRIM]="(\\s*)"+x[D.LONECARET]+"\\s+",A[D.CARETTRIM]=new RegExp(x[D.CARETTRIM],"g"),N("CARET"),x[D.CARET]="^"+x[D.LONECARET]+x[D.XRANGEPLAIN]+"$",N("CARETLOOSE"),x[D.CARETLOOSE]="^"+x[D.LONECARET]+x[D.XRANGEPLAINLOOSE]+"$",N("COMPARATORLOOSE"),x[D.COMPARATORLOOSE]="^"+x[D.GTLT]+"\\s*("+x[D.LOOSEPLAIN]+")$|^$",N("COMPARATOR"),x[D.COMPARATOR]="^"+x[D.GTLT]+"\\s*("+x[D.FULLPLAIN]+")$|^$",N("COMPARATORTRIM"),x[D.COMPARATORTRIM]="(\\s*)"+x[D.GTLT]+"\\s*("+x[D.LOOSEPLAIN]+"|"+x[D.XRANGEPLAIN]+")",A[D.COMPARATORTRIM]=new RegExp(x[D.COMPARATORTRIM],"g"),N("HYPHENRANGE"),x[D.HYPHENRANGE]="^\\s*("+x[D.XRANGEPLAIN]+")\\s+-\\s+("+x[D.XRANGEPLAIN]+")\\s*$",N("HYPHENRANGELOOSE"),x[D.HYPHENRANGELOOSE]="^\\s*("+x[D.XRANGEPLAINLOOSE]+")\\s+-\\s+("+x[D.XRANGEPLAINLOOSE]+")\\s*$",N("STAR"),x[D.STAR]="(<|>)?=?\\s*\\*";for(var j=0;j256||!(ne.loose?A[D.LOOSE]:A[D.FULL]).test(V))return null;try{return new h(V,ne)}catch(ge){return null}}function h(V,ne){if(ne&&g(ne)==="object"||(ne={loose:!!ne,includePrerelease:!1}),V instanceof h){if(V.loose===ne.loose)return V;V=V.version}else if(typeof V!="string")throw new TypeError("Invalid Version: "+V);if(V.length>256)throw new TypeError("version is longer than 256 characters");if(!(this instanceof h))return new h(V,ne);t("SemVer",V,ne),this.options=ne,this.loose=!!ne.loose;var ge=V.trim().match(ne.loose?A[D.LOOSE]:A[D.FULL]);if(!ge)throw new TypeError("Invalid Version: "+V);if(this.raw=V,this.major=+ge[1],this.minor=+ge[2],this.patch=+ge[3],this.major>C||this.major<0)throw new TypeError("Invalid major version");if(this.minor>C||this.minor<0)throw new TypeError("Invalid minor version");if(this.patch>C||this.patch<0)throw new TypeError("Invalid patch version");ge[4]?this.prerelease=ge[4].split(".").map(function(Z){if(/^[0-9]+$/.test(Z)){var Ae=+Z;if(Ae>=0&&Ae=0;)typeof this.prerelease[ge]=="number"&&(this.prerelease[ge]++,ge=-2);ge===-1&&this.prerelease.push(0)}ne&&(this.prerelease[0]===ne?isNaN(this.prerelease[1])&&(this.prerelease=[ne,0]):this.prerelease=[ne,0]);break;default:throw new Error("invalid increment argument: "+V)}return this.format(),this.raw=this.version,this},u.inc=function(V,ne,ge,Z){typeof ge=="string"&&(Z=ge,ge=void 0);try{return new h(V,ge).inc(ne,Z).version}catch(Ae){return null}},u.diff=function(V,ne){if(me(V,ne))return null;var ge=$(V),Z=$(ne),Ae="";if(ge.prerelease.length||Z.prerelease.length){Ae="pre";var at="prerelease"}for(var it in ge)if((it==="major"||it==="minor"||it==="patch")&&ge[it]!==Z[it])return Ae+it;return at},u.compareIdentifiers=ce;var re=/^[0-9]+$/;function ce(V,ne){var ge=re.test(V),Z=re.test(ne);return ge&&Z&&(V=+V,ne=+ne),V===ne?0:ge&&!Z?-1:Z&&!ge?1:V0}function Se(V,ne,ge){return Q(V,ne,ge)<0}function me(V,ne,ge){return Q(V,ne,ge)===0}function De(V,ne,ge){return Q(V,ne,ge)!==0}function J(V,ne,ge){return Q(V,ne,ge)>=0}function Te(V,ne,ge){return Q(V,ne,ge)<=0}function Oe(V,ne,ge,Z){switch(ne){case"===":return g(V)==="object"&&(V=V.version),g(ge)==="object"&&(ge=ge.version),V===ge;case"!==":return g(V)==="object"&&(V=V.version),g(ge)==="object"&&(ge=ge.version),V!==ge;case"":case"=":case"==":return me(V,ge,Z);case"!=":return De(V,ge,Z);case">":return oe(V,ge,Z);case">=":return J(V,ge,Z);case"<":return Se(V,ge,Z);case"<=":return Te(V,ge,Z);default:throw new TypeError("Invalid operator: "+ne)}}function Le(V,ne){if(ne&&g(ne)==="object"||(ne={loose:!!ne,includePrerelease:!1}),V instanceof Le){if(V.loose===!!ne.loose)return V;V=V.value}if(!(this instanceof Le))return new Le(V,ne);t("comparator",V,ne),this.options=ne,this.loose=!!ne.loose,this.parse(V),this.semver===ot?this.value="":this.value=this.operator+this.semver.version,t("comp",this)}u.rcompareIdentifiers=function(V,ne){return ce(ne,V)},u.major=function(V,ne){return new h(V,ne).major},u.minor=function(V,ne){return new h(V,ne).minor},u.patch=function(V,ne){return new h(V,ne).patch},u.compare=Q,u.compareLoose=function(V,ne){return Q(V,ne,!0)},u.compareBuild=function(V,ne,ge){var Z=new h(V,ge),Ae=new h(ne,ge);return Z.compare(Ae)||Z.compareBuild(Ae)},u.rcompare=function(V,ne,ge){return Q(ne,V,ge)},u.sort=function(V,ne){return V.sort(function(ge,Z){return u.compareBuild(ge,Z,ne)})},u.rsort=function(V,ne){return V.sort(function(ge,Z){return u.compareBuild(Z,ge,ne)})},u.gt=oe,u.lt=Se,u.eq=me,u.neq=De,u.gte=J,u.lte=Te,u.cmp=Oe,u.Comparator=Le;var ot={};function ct(V,ne){if(ne&&g(ne)==="object"||(ne={loose:!!ne,includePrerelease:!1}),V instanceof ct)return V.loose===!!ne.loose&&V.includePrerelease===!!ne.includePrerelease?V:new ct(V.raw,ne);if(V instanceof Le)return new ct(V.value,ne);if(!(this instanceof ct))return new ct(V,ne);if(this.options=ne,this.loose=!!ne.loose,this.includePrerelease=!!ne.includePrerelease,this.raw=V,this.set=V.split(/\s*\|\|\s*/).map(function(ge){return this.parseRange(ge.trim())},this).filter(function(ge){return ge.length}),!this.set.length)throw new TypeError("Invalid SemVer Range: "+V);this.format()}function Ue(V,ne){for(var ge=!0,Z=V.slice(),Ae=Z.pop();ge&&Z.length;)ge=Z.every(function(at){return Ae.intersects(at,ne)}),Ae=Z.pop();return ge}function be(V){return!V||V.toLowerCase()==="x"||V==="*"}function At(V,ne,ge,Z,Ae,at,it,Ft,jt,hn,Un,Jt,Yt){return((ne=be(ge)?"":be(Z)?">="+ge+".0.0":be(Ae)?">="+ge+"."+Z+".0":">="+ne)+" "+(Ft=be(jt)?"":be(hn)?"<"+(+jt+1)+".0.0":be(Un)?"<"+jt+"."+(+hn+1)+".0":Jt?"<="+jt+"."+hn+"."+Un+"-"+Jt:"<="+Ft)).trim()}function Ot(V,ne,ge){for(var Z=0;Z0){var Ae=V[Z].semver;if(Ae.major===ne.major&&Ae.minor===ne.minor&&Ae.patch===ne.patch)return!0}return!1}return!0}function Nt(V,ne,ge){try{ne=new ct(ne,ge)}catch(Z){return!1}return ne.test(V)}function Je(V,ne,ge,Z){var Ae,at,it,Ft,jt;switch(V=new h(V,Z),ne=new ct(ne,Z),ge){case">":Ae=oe,at=Te,it=Se,Ft=">",jt=">=";break;case"<":Ae=Se,at=J,it=oe,Ft="<",jt="<=";break;default:throw new TypeError('Must provide a hilo val of "<" or ">"')}if(Nt(V,ne,Z))return!1;for(var hn=0;hn=0.0.0")),Jt=Jt||cr,Yt=Yt||cr,Ae(cr.semver,Jt.semver,Z)?Jt=cr:it(cr.semver,Yt.semver,Z)&&(Yt=cr)}),Jt.operator===Ft||Jt.operator===jt||(!Yt.operator||Yt.operator===Ft)&&at(V,Yt.semver)||Yt.operator===jt&&it(V,Yt.semver))return!1}return!0}Le.prototype.parse=function(V){var ne=this.options.loose?A[D.COMPARATORLOOSE]:A[D.COMPARATOR],ge=V.match(ne);if(!ge)throw new TypeError("Invalid comparator: "+V);this.operator=ge[1]!==void 0?ge[1]:"",this.operator==="="&&(this.operator=""),ge[2]?this.semver=new h(ge[2],this.options.loose):this.semver=ot},Le.prototype.toString=function(){return this.value},Le.prototype.test=function(V){if(t("Comparator.test",V,this.options.loose),this.semver===ot||V===ot)return!0;if(typeof V=="string")try{V=new h(V,this.options)}catch(ne){return!1}return Oe(V,this.operator,this.semver,this.options)},Le.prototype.intersects=function(V,ne){if(!(V instanceof Le))throw new TypeError("a Comparator is required");var ge;if(ne&&g(ne)==="object"||(ne={loose:!!ne,includePrerelease:!1}),this.operator==="")return this.value===""||(ge=new ct(V.value,ne),Nt(this.value,ge,ne));if(V.operator==="")return V.value===""||(ge=new ct(this.value,ne),Nt(V.semver,ge,ne));var Z=!(this.operator!==">="&&this.operator!==">"||V.operator!==">="&&V.operator!==">"),Ae=!(this.operator!=="<="&&this.operator!=="<"||V.operator!=="<="&&V.operator!=="<"),at=this.semver.version===V.semver.version,it=!(this.operator!==">="&&this.operator!=="<="||V.operator!==">="&&V.operator!=="<="),Ft=Oe(this.semver,"<",V.semver,ne)&&(this.operator===">="||this.operator===">")&&(V.operator==="<="||V.operator==="<"),jt=Oe(this.semver,">",V.semver,ne)&&(this.operator==="<="||this.operator==="<")&&(V.operator===">="||V.operator===">");return Z||Ae||at&&it||Ft||jt},u.Range=ct,ct.prototype.format=function(){return this.range=this.set.map(function(V){return V.join(" ").trim()}).join("||").trim(),this.range},ct.prototype.toString=function(){return this.range},ct.prototype.parseRange=function(V){var ne=this.options.loose;V=V.trim();var ge=ne?A[D.HYPHENRANGELOOSE]:A[D.HYPHENRANGE];V=V.replace(ge,At),t("hyphen replace",V),V=V.replace(A[D.COMPARATORTRIM],"$1$2$3"),t("comparator trim",V,A[D.COMPARATORTRIM]),V=(V=(V=V.replace(A[D.TILDETRIM],"$1~")).replace(A[D.CARETTRIM],"$1^")).split(/\s+/).join(" ");var Z=ne?A[D.COMPARATORLOOSE]:A[D.COMPARATOR],Ae=V.split(" ").map(function(at){return function(it,Ft){return t("comp",it,Ft),it=function(jt,hn){return jt.trim().split(/\s+/).map(function(Un){return function(Jt,Yt){t("caret",Jt,Yt);var cr=Yt.loose?A[D.CARETLOOSE]:A[D.CARET];return Jt.replace(cr,function(w,pt,Mn,Bn,Xn){var vr;return t("caret",Jt,w,pt,Mn,Bn,Xn),be(pt)?vr="":be(Mn)?vr=">="+pt+".0.0 <"+(+pt+1)+".0.0":be(Bn)?vr=pt==="0"?">="+pt+"."+Mn+".0 <"+pt+"."+(+Mn+1)+".0":">="+pt+"."+Mn+".0 <"+(+pt+1)+".0.0":Xn?(t("replaceCaret pr",Xn),vr=pt==="0"?Mn==="0"?">="+pt+"."+Mn+"."+Bn+"-"+Xn+" <"+pt+"."+Mn+"."+(+Bn+1):">="+pt+"."+Mn+"."+Bn+"-"+Xn+" <"+pt+"."+(+Mn+1)+".0":">="+pt+"."+Mn+"."+Bn+"-"+Xn+" <"+(+pt+1)+".0.0"):(t("no pr"),vr=pt==="0"?Mn==="0"?">="+pt+"."+Mn+"."+Bn+" <"+pt+"."+Mn+"."+(+Bn+1):">="+pt+"."+Mn+"."+Bn+" <"+pt+"."+(+Mn+1)+".0":">="+pt+"."+Mn+"."+Bn+" <"+(+pt+1)+".0.0"),t("caret return",vr),vr})}(Un,hn)}).join(" ")}(it,Ft),t("caret",it),it=function(jt,hn){return jt.trim().split(/\s+/).map(function(Un){return function(Jt,Yt){var cr=Yt.loose?A[D.TILDELOOSE]:A[D.TILDE];return Jt.replace(cr,function(w,pt,Mn,Bn,Xn){var vr;return t("tilde",Jt,w,pt,Mn,Bn,Xn),be(pt)?vr="":be(Mn)?vr=">="+pt+".0.0 <"+(+pt+1)+".0.0":be(Bn)?vr=">="+pt+"."+Mn+".0 <"+pt+"."+(+Mn+1)+".0":Xn?(t("replaceTilde pr",Xn),vr=">="+pt+"."+Mn+"."+Bn+"-"+Xn+" <"+pt+"."+(+Mn+1)+".0"):vr=">="+pt+"."+Mn+"."+Bn+" <"+pt+"."+(+Mn+1)+".0",t("tilde return",vr),vr})}(Un,hn)}).join(" ")}(it,Ft),t("tildes",it),it=function(jt,hn){return t("replaceXRanges",jt,hn),jt.split(/\s+/).map(function(Un){return function(Jt,Yt){Jt=Jt.trim();var cr=Yt.loose?A[D.XRANGELOOSE]:A[D.XRANGE];return Jt.replace(cr,function(w,pt,Mn,Bn,Xn,vr){t("xRange",Jt,w,pt,Mn,Bn,Xn,vr);var gr=be(Mn),r0=gr||be(Bn),Ci=r0||be(Xn),yo=Ci;return pt==="="&&yo&&(pt=""),vr=Yt.includePrerelease?"-0":"",gr?w=pt===">"||pt==="<"?"<0.0.0-0":"*":pt&&yo?(r0&&(Bn=0),Xn=0,pt===">"?(pt=">=",r0?(Mn=+Mn+1,Bn=0,Xn=0):(Bn=+Bn+1,Xn=0)):pt==="<="&&(pt="<",r0?Mn=+Mn+1:Bn=+Bn+1),w=pt+Mn+"."+Bn+"."+Xn+vr):r0?w=">="+Mn+".0.0"+vr+" <"+(+Mn+1)+".0.0"+vr:Ci&&(w=">="+Mn+"."+Bn+".0"+vr+" <"+Mn+"."+(+Bn+1)+".0"+vr),t("xRange return",w),w})}(Un,hn)}).join(" ")}(it,Ft),t("xrange",it),it=function(jt,hn){return t("replaceStars",jt,hn),jt.trim().replace(A[D.STAR],"")}(it,Ft),t("stars",it),it}(at,this.options)},this).join(" ").split(/\s+/);return this.options.loose&&(Ae=Ae.filter(function(at){return!!at.match(Z)})),Ae=Ae.map(function(at){return new Le(at,this.options)},this)},ct.prototype.intersects=function(V,ne){if(!(V instanceof ct))throw new TypeError("a Range is required");return this.set.some(function(ge){return Ue(ge,ne)&&V.set.some(function(Z){return Ue(Z,ne)&&ge.every(function(Ae){return Z.every(function(at){return Ae.intersects(at,ne)})})})})},u.toComparators=function(V,ne){return new ct(V,ne).set.map(function(ge){return ge.map(function(Z){return Z.value}).join(" ").trim().split(" ")})},ct.prototype.test=function(V){if(!V)return!1;if(typeof V=="string")try{V=new h(V,this.options)}catch(ge){return!1}for(var ne=0;ne":at.prerelease.length===0?at.patch++:at.prerelease.push(0),at.raw=at.format();case"":case">=":ge&&!oe(ge,at)||(ge=at);break;case"<":case"<=":break;default:throw new Error("Unexpected operation: "+Ae.operator)}});return ge&&V.test(ge)?ge:null},u.validRange=function(V,ne){try{return new ct(V,ne).range||"*"}catch(ge){return null}},u.ltr=function(V,ne,ge){return Je(V,ne,"<",ge)},u.gtr=function(V,ne,ge){return Je(V,ne,">",ge)},u.outside=Je,u.prerelease=function(V,ne){var ge=$(V,ne);return ge&&ge.prerelease.length?ge.prerelease:null},u.intersects=function(V,ne,ge){return V=new ct(V,ge),ne=new ct(ne,ge),V.intersects(ne)},u.coerce=function(V,ne){if(V instanceof h)return V;if(typeof V=="number"&&(V=String(V)),typeof V!="string")return null;var ge=null;if((ne=ne||{}).rtl){for(var Z;(Z=A[D.COERCERTL].exec(V))&&(!ge||ge.index+ge[0].length!==V.length);)ge&&Z.index+Z[0].length===ge.index+ge[0].length||(ge=Z),A[D.COERCERTL].lastIndex=Z.index+Z[1].length+Z[2].length;A[D.COERCERTL].lastIndex=-1}else ge=V.match(A[D.COERCE]);return ge===null?null:$(ge[2]+"."+(ge[3]||"0")+"."+(ge[4]||"0"),ne)}}).call(this,f(5))},function(i,u){function f(g){return(f=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t})(g)}var c;c=function(){return this}();try{c=c||new Function("return this")()}catch(g){(typeof window=="undefined"?"undefined":f(window))==="object"&&(c=window)}i.exports=c},function(i,u){var f,c,g=i.exports={};function t(){throw new Error("setTimeout has not been defined")}function C(){throw new Error("clearTimeout has not been defined")}function A(ce){if(f===setTimeout)return setTimeout(ce,0);if((f===t||!f)&&setTimeout)return f=setTimeout,setTimeout(ce,0);try{return f(ce,0)}catch(Q){try{return f.call(null,ce,0)}catch(oe){return f.call(this,ce,0)}}}(function(){try{f=typeof setTimeout=="function"?setTimeout:t}catch(ce){f=t}try{c=typeof clearTimeout=="function"?clearTimeout:C}catch(ce){c=C}})();var x,D=[],L=!1,N=-1;function j(){L&&x&&(L=!1,x.length?D=x.concat(D):N=-1,D.length&&$())}function $(){if(!L){var ce=A(j);L=!0;for(var Q=D.length;Q;){for(x=D,D=[];++N1)for(var oe=1;oethis[C])return De(this,this[h].get(Ue)),!1;var Je=this[h].get(Ue).value;return this[N]&&(this[j]||this[N](Ue,Je.value)),Je.now=Ot,Je.maxAge=At,Je.value=be,this[A]+=Nt-Je.length,Je.length=Nt,this.get(Ue),me(this),!0}var V=new J(Ue,be,Nt,Ot,At);return V.length>this[C]?(this[N]&&this[N](Ue,be),!1):(this[A]+=V.length,this[$].unshift(V),this[h].set(Ue,this[$].head),me(this),!0)}},{key:"has",value:function(Ue){if(!this[h].has(Ue))return!1;var be=this[h].get(Ue).value;return!Se(this,be)}},{key:"get",value:function(Ue){return oe(this,Ue,!0)}},{key:"peek",value:function(Ue){return oe(this,Ue,!1)}},{key:"pop",value:function(){var Ue=this[$].tail;return Ue?(De(this,Ue),Ue.value):null}},{key:"del",value:function(Ue){De(this,this[h].get(Ue))}},{key:"load",value:function(Ue){this.reset();for(var be=Date.now(),At=Ue.length-1;At>=0;At--){var Ot=Ue[At],Nt=Ot.e||0;if(Nt===0)this.set(Ot.k,Ot.v);else{var Je=Nt-be;Je>0&&this.set(Ot.k,Ot.v,Je)}}}},{key:"prune",value:function(){var Ue=this;this[h].forEach(function(be,At){return oe(Ue,At,!1)})}},{key:"max",set:function(Ue){if(typeof Ue!="number"||Ue<0)throw new TypeError("max must be a non-negative number");this[C]=Ue||1/0,me(this)},get:function(){return this[C]}},{key:"allowStale",set:function(Ue){this[D]=!!Ue},get:function(){return this[D]}},{key:"maxAge",set:function(Ue){if(typeof Ue!="number")throw new TypeError("maxAge must be a non-negative number");this[L]=Ue,me(this)},get:function(){return this[L]}},{key:"lengthCalculator",set:function(Ue){var be=this;typeof Ue!="function"&&(Ue=ce),Ue!==this[x]&&(this[x]=Ue,this[A]=0,this[$].forEach(function(At){At.length=be[x](At.value,At.key),be[A]+=At.length})),me(this)},get:function(){return this[x]}},{key:"length",get:function(){return this[A]}},{key:"itemCount",get:function(){return this[$].length}}])&&g(Le.prototype,ot),ct&&g(Le,ct),Oe}(),oe=function(Oe,Le,ot){var ct=Oe[h].get(Le);if(ct){var Ue=ct.value;if(Se(Oe,Ue)){if(De(Oe,ct),!Oe[D])return}else ot&&(Oe[re]&&(ct.value.now=Date.now()),Oe[$].unshiftNode(ct));return Ue.value}},Se=function(Oe,Le){if(!Le||!Le.maxAge&&!Oe[L])return!1;var ot=Date.now()-Le.now;return Le.maxAge?ot>Le.maxAge:Oe[L]&&ot>Oe[L]},me=function(Oe){if(Oe[A]>Oe[C])for(var Le=Oe[$].tail;Oe[A]>Oe[C]&&Le!==null;){var ot=Le.prev;De(Oe,Le),Le=ot}},De=function(Oe,Le){if(Le){var ot=Le.value;Oe[N]&&Oe[N](ot.key,ot.value),Oe[A]-=ot.length,Oe[h].delete(ot.key),Oe[$].removeNode(Le)}},J=function Oe(Le,ot,ct,Ue,be){c(this,Oe),this.key=Le,this.value=ot,this.length=ct,this.now=Ue,this.maxAge=be||0},Te=function(Oe,Le,ot,ct){var Ue=ot.value;Se(Oe,Ue)&&(De(Oe,ot),Oe[D]||(Ue=void 0)),Ue&&Le.call(ct,Ue.value,Ue.key,Oe)};i.exports=Q},function(i,u,f){(function(c){function g(t){return(g=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(C){return typeof C}:function(C){return C&&typeof Symbol=="function"&&C.constructor===Symbol&&C!==Symbol.prototype?"symbol":typeof C})(t)}i.exports=function(){if(typeof document=="undefined"||!document.addEventListener)return null;var t,C,A,x={};return x.copy=function(){var D=!1,L=null,N=!1;function j(){D=!1,L=null,N&&window.getSelection().removeAllRanges(),N=!1}return document.addEventListener("copy",function($){if(D){for(var h in L)$.clipboardData.setData(h,L[h]);$.preventDefault()}}),function($){return new Promise(function(h,re){D=!0,typeof $=="string"?L={"text/plain":$}:$ instanceof Node?L={"text/html":new XMLSerializer().serializeToString($)}:$ instanceof Object?L=$:re("Invalid data type. Must be string, DOM node, or an object mapping MIME types to strings."),function ce(Q){try{if(document.execCommand("copy"))j(),h();else{if(Q)throw j(),new Error("Unable to copy. Perhaps it's not available in your browser?");(function(){var oe=document.getSelection();if(!document.queryCommandEnabled("copy")&&oe.isCollapsed){var Se=document.createRange();Se.selectNodeContents(document.body),oe.removeAllRanges(),oe.addRange(Se),N=!0}})(),ce(!0)}}catch(oe){j(),re(oe)}}(!1)})}}(),x.paste=(A=!1,document.addEventListener("paste",function(D){if(A){A=!1,D.preventDefault();var L=t;t=null,L(D.clipboardData.getData(C))}}),function(D){return new Promise(function(L,N){A=!0,t=L,C=D||"text/plain";try{document.execCommand("paste")||(A=!1,N(new Error("Unable to paste. Pasting only works in Internet Explorer at the moment.")))}catch(j){A=!1,N(new Error(j))}})}),typeof ClipboardEvent=="undefined"&&window.clipboardData!==void 0&&window.clipboardData.setData!==void 0&&(function(D){function L(me,De){return function(){me.apply(De,arguments)}}function N(me){if(g(this)!="object")throw new TypeError("Promises must be constructed via new");if(typeof me!="function")throw new TypeError("not a function");this._state=null,this._value=null,this._deferreds=[],Q(me,L($,this),L(h,this))}function j(me){var De=this;return this._state===null?void this._deferreds.push(me):void oe(function(){var J=De._state?me.onFulfilled:me.onRejected;if(J!==null){var Te;try{Te=J(De._value)}catch(Oe){return void me.reject(Oe)}me.resolve(Te)}else(De._state?me.resolve:me.reject)(De._value)})}function $(me){try{if(me===this)throw new TypeError("A promise cannot be resolved with itself.");if(me&&(g(me)=="object"||typeof me=="function")){var De=me.then;if(typeof De=="function")return void Q(L(De,me),L($,this),L(h,this))}this._state=!0,this._value=me,re.call(this)}catch(J){h.call(this,J)}}function h(me){this._state=!1,this._value=me,re.call(this)}function re(){for(var me=0,De=this._deferreds.length;De>me;me++)j.call(this,this._deferreds[me]);this._deferreds=null}function ce(me,De,J,Te){this.onFulfilled=typeof me=="function"?me:null,this.onRejected=typeof De=="function"?De:null,this.resolve=J,this.reject=Te}function Q(me,De,J){var Te=!1;try{me(function(Oe){Te||(Te=!0,De(Oe))},function(Oe){Te||(Te=!0,J(Oe))})}catch(Oe){if(Te)return;Te=!0,J(Oe)}}var oe=N.immediateFn||typeof c=="function"&&c||function(me){setTimeout(me,1)},Se=Array.isArray||function(me){return Object.prototype.toString.call(me)==="[object Array]"};N.prototype.catch=function(me){return this.then(null,me)},N.prototype.then=function(me,De){var J=this;return new N(function(Te,Oe){j.call(J,new ce(me,De,Te,Oe))})},N.all=function(){var me=Array.prototype.slice.call(arguments.length===1&&Se(arguments[0])?arguments[0]:arguments);return new N(function(De,J){function Te(ot,ct){try{if(ct&&(g(ct)=="object"||typeof ct=="function")){var Ue=ct.then;if(typeof Ue=="function")return void Ue.call(ct,function(be){Te(ot,be)},J)}me[ot]=ct,--Oe==0&&De(me)}catch(be){J(be)}}if(me.length===0)return De([]);for(var Oe=me.length,Le=0;LeTe;Te++)me[Te].then(De,J)})},i.exports?i.exports=N:D.Promise||(D.Promise=N)}(this),x.copy=function(D){return new Promise(function(L,N){if(typeof D!="string"&&!("text/plain"in D))throw new Error("You must provide a text/plain type.");var j=typeof D=="string"?D:D["text/plain"];window.clipboardData.setData("Text",j)?L():N(new Error("Copying was rejected."))})},x.paste=function(){return new Promise(function(D,L){var N=window.clipboardData.getData("Text");N?D(N):L(new Error("Pasting was rejected."))})}),x}()}).call(this,f(13).setImmediate)},function(i,u,f){"use strict";i.exports=f(15)},function(i,u,f){"use strict";f.r(u),u.default=`:root { + /** + * IMPORTANT: When new theme variables are added below\u2013 also add them to SettingsContext updateThemeVariables() + */ + + /* Light theme */ + --light-color-attribute-name: #ef6632; + --light-color-attribute-name-not-editable: #23272f; + --light-color-attribute-name-inverted: rgba(255, 255, 255, 0.7); + --light-color-attribute-value: #1a1aa6; + --light-color-attribute-value-inverted: #ffffff; + --light-color-attribute-editable-value: #1a1aa6; + --light-color-background: #ffffff; + --light-color-background-hover: rgba(0, 136, 250, 0.1); + --light-color-background-inactive: #e5e5e5; + --light-color-background-invalid: #fff0f0; + --light-color-background-selected: #0088fa; + --light-color-button-background: #ffffff; + --light-color-button-background-focus: #ededed; + --light-color-button: #5f6673; + --light-color-button-disabled: #cfd1d5; + --light-color-button-active: #0088fa; + --light-color-button-focus: #23272f; + --light-color-button-hover: #23272f; + --light-color-border: #eeeeee; + --light-color-commit-did-not-render-fill: #cfd1d5; + --light-color-commit-did-not-render-fill-text: #000000; + --light-color-commit-did-not-render-pattern: #cfd1d5; + --light-color-commit-did-not-render-pattern-text: #333333; + --light-color-commit-gradient-0: #37afa9; + --light-color-commit-gradient-1: #63b19e; + --light-color-commit-gradient-2: #80b393; + --light-color-commit-gradient-3: #97b488; + --light-color-commit-gradient-4: #abb67d; + --light-color-commit-gradient-5: #beb771; + --light-color-commit-gradient-6: #cfb965; + --light-color-commit-gradient-7: #dfba57; + --light-color-commit-gradient-8: #efbb49; + --light-color-commit-gradient-9: #febc38; + --light-color-commit-gradient-text: #000000; + --light-color-component-name: #6a51b2; + --light-color-component-name-inverted: #ffffff; + --light-color-component-badge-background: rgba(0, 0, 0, 0.1); + --light-color-component-badge-background-inverted: rgba(255, 255, 255, 0.25); + --light-color-component-badge-count: #777d88; + --light-color-component-badge-count-inverted: rgba(255, 255, 255, 0.7); + --light-color-context-background: rgba(0,0,0,.9); + --light-color-context-background-hover: rgba(255, 255, 255, 0.1); + --light-color-context-background-selected: #178fb9; + --light-color-context-border: #3d424a; + --light-color-context-text: #ffffff; + --light-color-context-text-selected: #ffffff; + --light-color-dim: #777d88; + --light-color-dimmer: #cfd1d5; + --light-color-dimmest: #eff0f1; + --light-color-error-background: hsl(0, 100%, 97%); + --light-color-error-border: hsl(0, 100%, 92%); + --light-color-error-text: #ff0000; + --light-color-expand-collapse-toggle: #777d88; + --light-color-link: #0000ff; + --light-color-modal-background: rgba(255, 255, 255, 0.75); + --light-color-record-active: #fc3a4b; + --light-color-record-hover: #3578e5; + --light-color-record-inactive: #0088fa; + --light-color-scroll-thumb: #c2c2c2; + --light-color-scroll-track: #fafafa; + --light-color-search-match: yellow; + --light-color-search-match-current: #f7923b; + --light-color-selected-tree-highlight-active: rgba(0, 136, 250, 0.1); + --light-color-selected-tree-highlight-inactive: rgba(0, 0, 0, 0.05); + --light-color-shadow: rgba(0, 0, 0, 0.25); + --light-color-tab-selected-border: #0088fa; + --light-color-text: #000000; + --light-color-text-invalid: #ff0000; + --light-color-text-selected: #ffffff; + --light-color-toggle-background-invalid: #fc3a4b; + --light-color-toggle-background-on: #0088fa; + --light-color-toggle-background-off: #cfd1d5; + --light-color-toggle-text: #ffffff; + --light-color-tooltip-background: rgba(0, 0, 0, 0.9); + --light-color-tooltip-text: #ffffff; + + /* Dark theme */ + --dark-color-attribute-name: #9d87d2; + --dark-color-attribute-name-not-editable: #ededed; + --dark-color-attribute-name-inverted: #282828; + --dark-color-attribute-value: #cedae0; + --dark-color-attribute-value-inverted: #ffffff; + --dark-color-attribute-editable-value: yellow; + --dark-color-background: #282c34; + --dark-color-background-hover: rgba(255, 255, 255, 0.1); + --dark-color-background-inactive: #3d424a; + --dark-color-background-invalid: #5c0000; + --dark-color-background-selected: #178fb9; + --dark-color-button-background: #282c34; + --dark-color-button-background-focus: #3d424a; + --dark-color-button: #afb3b9; + --dark-color-button-active: #61dafb; + --dark-color-button-disabled: #4f5766; + --dark-color-button-focus: #a2e9fc; + --dark-color-button-hover: #ededed; + --dark-color-border: #3d424a; + --dark-color-commit-did-not-render-fill: #777d88; + --dark-color-commit-did-not-render-fill-text: #000000; + --dark-color-commit-did-not-render-pattern: #666c77; + --dark-color-commit-did-not-render-pattern-text: #ffffff; + --dark-color-commit-gradient-0: #37afa9; + --dark-color-commit-gradient-1: #63b19e; + --dark-color-commit-gradient-2: #80b393; + --dark-color-commit-gradient-3: #97b488; + --dark-color-commit-gradient-4: #abb67d; + --dark-color-commit-gradient-5: #beb771; + --dark-color-commit-gradient-6: #cfb965; + --dark-color-commit-gradient-7: #dfba57; + --dark-color-commit-gradient-8: #efbb49; + --dark-color-commit-gradient-9: #febc38; + --dark-color-commit-gradient-text: #000000; + --dark-color-component-name: #61dafb; + --dark-color-component-name-inverted: #282828; + --dark-color-component-badge-background: rgba(255, 255, 255, 0.25); + --dark-color-component-badge-background-inverted: rgba(0, 0, 0, 0.25); + --dark-color-component-badge-count: #8f949d; + --dark-color-component-badge-count-inverted: rgba(255, 255, 255, 0.7); + --dark-color-context-background: rgba(255,255,255,.9); + --dark-color-context-background-hover: rgba(0, 136, 250, 0.1); + --dark-color-context-background-selected: #0088fa; + --dark-color-context-border: #eeeeee; + --dark-color-context-text: #000000; + --dark-color-context-text-selected: #ffffff; + --dark-color-dim: #8f949d; + --dark-color-dimmer: #777d88; + --dark-color-dimmest: #4f5766; + --dark-color-error-background: #200; + --dark-color-error-border: #900; + --dark-color-error-text: #f55; + --dark-color-expand-collapse-toggle: #8f949d; + --dark-color-link: #61dafb; + --dark-color-modal-background: rgba(0, 0, 0, 0.75); + --dark-color-record-active: #fc3a4b; + --dark-color-record-hover: #a2e9fc; + --dark-color-record-inactive: #61dafb; + --dark-color-scroll-thumb: #afb3b9; + --dark-color-scroll-track: #313640; + --dark-color-search-match: yellow; + --dark-color-search-match-current: #f7923b; + --dark-color-selected-tree-highlight-active: rgba(23, 143, 185, 0.15); + --dark-color-selected-tree-highlight-inactive: rgba(255, 255, 255, 0.05); + --dark-color-shadow: rgba(0, 0, 0, 0.5); + --dark-color-tab-selected-border: #178fb9; + --dark-color-text: #ffffff; + --dark-color-text-invalid: #ff8080; + --dark-color-text-selected: #ffffff; + --dark-color-toggle-background-invalid: #fc3a4b; + --dark-color-toggle-background-on: #178fb9; + --dark-color-toggle-background-off: #777d88; + --dark-color-toggle-text: #ffffff; + --dark-color-tooltip-background: rgba(255, 255, 255, 0.9); + --dark-color-tooltip-text: #000000; + + /* Font smoothing */ + --light-font-smoothing: auto; + --dark-font-smoothing: antialiased; + --font-smoothing: auto; + + /* Compact density */ + --compact-font-size-monospace-small: 9px; + --compact-font-size-monospace-normal: 11px; + --compact-font-size-monospace-large: 15px; + --compact-font-size-sans-small: 10px; + --compact-font-size-sans-normal: 12px; + --compact-font-size-sans-large: 14px; + --compact-line-height-data: 18px; + --compact-root-font-size: 16px; + + /* Comfortable density */ + --comfortable-font-size-monospace-small: 10px; + --comfortable-font-size-monospace-normal: 13px; + --comfortable-font-size-monospace-large: 17px; + --comfortable-font-size-sans-small: 12px; + --comfortable-font-size-sans-normal: 14px; + --comfortable-font-size-sans-large: 16px; + --comfortable-line-height-data: 22px; + --comfortable-root-font-size: 20px; + + /* GitHub.com system fonts */ + --font-family-monospace: 'SFMono-Regular', Consolas, 'Liberation Mono', Menlo, + Courier, monospace; + --font-family-sans: -apple-system, BlinkMacSystemFont, Segoe UI, Helvetica, + Arial, sans-serif, Apple Color Emoji, Segoe UI Emoji, Segoe UI Symbol; + + /* Constant values shared between JS and CSS */ + --interaction-commit-size: 10px; + --interaction-label-width: 200px; +} +`},function(i,u,f){"use strict";function c(x){var D=this;if(D instanceof c||(D=new c),D.tail=null,D.head=null,D.length=0,x&&typeof x.forEach=="function")x.forEach(function(j){D.push(j)});else if(arguments.length>0)for(var L=0,N=arguments.length;L1)L=D;else{if(!this.head)throw new TypeError("Reduce of empty list with no initial value");N=this.head.next,L=this.head.value}for(var j=0;N!==null;j++)L=x(L,N.value,j),N=N.next;return L},c.prototype.reduceReverse=function(x,D){var L,N=this.tail;if(arguments.length>1)L=D;else{if(!this.tail)throw new TypeError("Reduce of empty list with no initial value");N=this.tail.prev,L=this.tail.value}for(var j=this.length-1;N!==null;j--)L=x(L,N.value,j),N=N.prev;return L},c.prototype.toArray=function(){for(var x=new Array(this.length),D=0,L=this.head;L!==null;D++)x[D]=L.value,L=L.next;return x},c.prototype.toArrayReverse=function(){for(var x=new Array(this.length),D=0,L=this.tail;L!==null;D++)x[D]=L.value,L=L.prev;return x},c.prototype.slice=function(x,D){(D=D||this.length)<0&&(D+=this.length),(x=x||0)<0&&(x+=this.length);var L=new c;if(Dthis.length&&(D=this.length);for(var N=0,j=this.head;j!==null&&Nthis.length&&(D=this.length);for(var N=this.length,j=this.tail;j!==null&&N>D;N--)j=j.prev;for(;j!==null&&N>x;N--,j=j.prev)L.push(j.value);return L},c.prototype.splice=function(x,D){x>this.length&&(x=this.length-1),x<0&&(x=this.length+x);for(var L=0,N=this.head;N!==null&&L=0&&(A._idleTimeoutId=setTimeout(function(){A._onTimeout&&A._onTimeout()},x))},f(14),u.setImmediate=typeof self!="undefined"&&self.setImmediate||c!==void 0&&c.setImmediate||this&&this.setImmediate,u.clearImmediate=typeof self!="undefined"&&self.clearImmediate||c!==void 0&&c.clearImmediate||this&&this.clearImmediate}).call(this,f(4))},function(i,u,f){(function(c,g){(function(t,C){"use strict";if(!t.setImmediate){var A,x,D,L,N,j=1,$={},h=!1,re=t.document,ce=Object.getPrototypeOf&&Object.getPrototypeOf(t);ce=ce&&ce.setTimeout?ce:t,{}.toString.call(t.process)==="[object process]"?A=function(Se){g.nextTick(function(){oe(Se)})}:function(){if(t.postMessage&&!t.importScripts){var Se=!0,me=t.onmessage;return t.onmessage=function(){Se=!1},t.postMessage("","*"),t.onmessage=me,Se}}()?(L="setImmediate$"+Math.random()+"$",N=function(Se){Se.source===t&&typeof Se.data=="string"&&Se.data.indexOf(L)===0&&oe(+Se.data.slice(L.length))},t.addEventListener?t.addEventListener("message",N,!1):t.attachEvent("onmessage",N),A=function(Se){t.postMessage(L+Se,"*")}):t.MessageChannel?((D=new MessageChannel).port1.onmessage=function(Se){oe(Se.data)},A=function(Se){D.port2.postMessage(Se)}):re&&"onreadystatechange"in re.createElement("script")?(x=re.documentElement,A=function(Se){var me=re.createElement("script");me.onreadystatechange=function(){oe(Se),me.onreadystatechange=null,x.removeChild(me),me=null},x.appendChild(me)}):A=function(Se){setTimeout(oe,0,Se)},ce.setImmediate=function(Se){typeof Se!="function"&&(Se=new Function(""+Se));for(var me=new Array(arguments.length-1),De=0;Dene;ne++)if((V=Q(Je,Ot,ne))!==-1){ce=ne,Ot=V;break e}Ot=-1}}e:{if(Je=Nt,(V=j().get(At.primitive))!==void 0){for(ne=0;neOt-Je?null:Nt.slice(Je,Ot-1))!==null){if(Ot=0,Le!==null){for(;OtOt;Le--)ot=Ue.pop()}for(Le=Nt.length-Ot-1;1<=Le;Le--)Ot=[],ot.push({id:null,isStateEditable:!1,name:Se(Nt[Le-1].functionName),value:void 0,subHooks:Ot}),Ue.push(ot),ot=Ot;Le=Nt}Ot=(Nt=At.primitive)==="Context"||Nt==="DebugValue"?null:ct++,ot.push({id:Ot,isStateEditable:Nt==="Reducer"||Nt==="State",name:Nt,value:At.value,subHooks:[]})}return function ge(Z,Ae){for(var at=[],it=0;it-1&&($=$.replace(/eval code/g,"eval").replace(/(\(eval at [^()]*)|(\),.*$)/g,""));var h=$.replace(/^\s+/,"").replace(/\(eval code/g,"("),re=h.match(/ (\((.+):(\d+):(\d+)\)$)/),ce=(h=re?h.replace(re[0],""):h).split(/\s+/).slice(1),Q=this.extractLocation(re?re[1]:ce.pop()),oe=ce.join(" ")||void 0,Se=["eval",""].indexOf(Q[0])>-1?void 0:Q[0];return new x({functionName:oe,fileName:Se,lineNumber:Q[1],columnNumber:Q[2],source:$})},this)},parseFFOrSafari:function(j){return j.stack.split(` +`).filter(function($){return!$.match(N)},this).map(function($){if($.indexOf(" > eval")>-1&&($=$.replace(/ line (\d+)(?: > eval line \d+)* > eval:\d+:\d+/g,":$1")),$.indexOf("@")===-1&&$.indexOf(":")===-1)return new x({functionName:$});var h=/((.*".+"[^@]*)?[^@]*)(?:@)/,re=$.match(h),ce=re&&re[1]?re[1]:void 0,Q=this.extractLocation($.replace(h,""));return new x({functionName:ce,fileName:Q[0],lineNumber:Q[1],columnNumber:Q[2],source:$})},this)},parseOpera:function(j){return!j.stacktrace||j.message.indexOf(` +`)>-1&&j.message.split(` +`).length>j.stacktrace.split(` +`).length?this.parseOpera9(j):j.stack?this.parseOpera11(j):this.parseOpera10(j)},parseOpera9:function(j){for(var $=/Line (\d+).*script (?:in )?(\S+)/i,h=j.message.split(` +`),re=[],ce=2,Q=h.length;ce/,"$2").replace(/\([^)]*\)/g,"")||void 0;Q.match(/\(([^)]*)\)/)&&(h=Q.replace(/^[^(]+\(([^)]*)\)$/,"$1"));var Se=h===void 0||h==="[arguments not available]"?void 0:h.split(",");return new x({functionName:oe,args:Se,fileName:ce[0],lineNumber:ce[1],columnNumber:ce[2],source:$})},this)}}})=="function"?c.apply(u,g):c)===void 0||(i.exports=t)})()},function(i,u,f){var c,g,t;(function(C,A){"use strict";g=[],(t=typeof(c=function(){function x(oe){return oe.charAt(0).toUpperCase()+oe.substring(1)}function D(oe){return function(){return this[oe]}}var L=["isConstructor","isEval","isNative","isToplevel"],N=["columnNumber","lineNumber"],j=["fileName","functionName","source"],$=L.concat(N,j,["args"]);function h(oe){if(oe)for(var Se=0;Se<$.length;Se++)oe[$[Se]]!==void 0&&this["set"+x($[Se])](oe[$[Se]])}h.prototype={getArgs:function(){return this.args},setArgs:function(oe){if(Object.prototype.toString.call(oe)!=="[object Array]")throw new TypeError("Args must be an Array");this.args=oe},getEvalOrigin:function(){return this.evalOrigin},setEvalOrigin:function(oe){if(oe instanceof h)this.evalOrigin=oe;else{if(!(oe instanceof Object))throw new TypeError("Eval Origin must be an Object or StackFrame");this.evalOrigin=new h(oe)}},toString:function(){var oe=this.getFileName()||"",Se=this.getLineNumber()||"",me=this.getColumnNumber()||"",De=this.getFunctionName()||"";return this.getIsEval()?oe?"[eval] ("+oe+":"+Se+":"+me+")":"[eval]:"+Se+":"+me:De?De+" ("+oe+":"+Se+":"+me+")":oe+":"+Se+":"+me}},h.fromString=function(oe){var Se=oe.indexOf("("),me=oe.lastIndexOf(")"),De=oe.substring(0,Se),J=oe.substring(Se+1,me).split(","),Te=oe.substring(me+1);if(Te.indexOf("@")===0)var Oe=/@(.+?)(?::(\d+))?(?::(\d+))?$/.exec(Te,""),Le=Oe[1],ot=Oe[2],ct=Oe[3];return new h({functionName:De,args:J||void 0,fileName:Le,lineNumber:ot||void 0,columnNumber:ct||void 0})};for(var re=0;re1?de-1:0),ve=1;ve=0&&de.splice(W,1)}}}])&&c(R.prototype,U),H&&c(R,H),F}(),t=f(2),C=f.n(t);try{var A=f(9).default,x=function(F){var R=new RegExp("".concat(F,": ([0-9]+)")),U=A.match(R);return parseInt(U[1],10)};x("comfortable-line-height-data"),x("compact-line-height-data")}catch(F){}function D(F){try{return sessionStorage.getItem(F)}catch(R){return null}}function L(F){try{sessionStorage.removeItem(F)}catch(R){}}function N(F,R){try{return sessionStorage.setItem(F,R)}catch(U){}}var j=function(F,R){return F===R},$=f(1),h=f.n($);function re(F){return F.ownerDocument?F.ownerDocument.defaultView:null}function ce(F){var R=re(F);return R?R.frameElement:null}function Q(F){var R=me(F);return oe([F.getBoundingClientRect(),{top:R.borderTop,left:R.borderLeft,bottom:R.borderBottom,right:R.borderRight,width:0,height:0}])}function oe(F){return F.reduce(function(R,U){return R==null?U:{top:R.top+U.top,left:R.left+U.left,width:R.width,height:R.height,bottom:R.bottom+U.bottom,right:R.right+U.right}})}function Se(F,R){var U=ce(F);if(U&&U!==R){for(var H=[F.getBoundingClientRect()],fe=U,ue=!1;fe;){var de=Q(fe);if(H.push(de),fe=ce(fe),ue)break;fe&&re(fe)===R&&(ue=!0)}return oe(H)}return F.getBoundingClientRect()}function me(F){var R=window.getComputedStyle(F);return{borderLeft:parseInt(R.borderLeftWidth,10),borderRight:parseInt(R.borderRightWidth,10),borderTop:parseInt(R.borderTopWidth,10),borderBottom:parseInt(R.borderBottomWidth,10),marginLeft:parseInt(R.marginLeft,10),marginRight:parseInt(R.marginRight,10),marginTop:parseInt(R.marginTop,10),marginBottom:parseInt(R.marginBottom,10),paddingLeft:parseInt(R.paddingLeft,10),paddingRight:parseInt(R.paddingRight,10),paddingTop:parseInt(R.paddingTop,10),paddingBottom:parseInt(R.paddingBottom,10)}}function De(F,R){var U;if(typeof Symbol=="undefined"||F[Symbol.iterator]==null){if(Array.isArray(F)||(U=function(ve,Fe){if(!!ve){if(typeof ve=="string")return J(ve,Fe);var Ge=Object.prototype.toString.call(ve).slice(8,-1);if(Ge==="Object"&&ve.constructor&&(Ge=ve.constructor.name),Ge==="Map"||Ge==="Set")return Array.from(ve);if(Ge==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(Ge))return J(ve,Fe)}}(F))||R&&F&&typeof F.length=="number"){U&&(F=U);var H=0,fe=function(){};return{s:fe,n:function(){return H>=F.length?{done:!0}:{done:!1,value:F[H++]}},e:function(ve){throw ve},f:fe}}throw new TypeError(`Invalid attempt to iterate non-iterable instance. +In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}var ue,de=!0,W=!1;return{s:function(){U=F[Symbol.iterator]()},n:function(){var ve=U.next();return de=ve.done,ve},e:function(ve){W=!0,ue=ve},f:function(){try{de||U.return==null||U.return()}finally{if(W)throw ue}}}}function J(F,R){(R==null||R>F.length)&&(R=F.length);for(var U=0,H=new Array(R);Ude.left+de.width&&(K=de.left+de.width-Ge-5),{style:{top:ve+="px",left:K+="px"}}}(R,U,{width:H.width,height:H.height});h()(this.tip.style,fe.style)}}]),F}(),Ue=function(){function F(){Te(this,F);var R=window.__REACT_DEVTOOLS_TARGET_WINDOW__||window;this.window=R;var U=window.__REACT_DEVTOOLS_TARGET_WINDOW__||window;this.tipBoundsWindow=U;var H=R.document;this.container=H.createElement("div"),this.container.style.zIndex="10000000",this.tip=new ct(H,this.container),this.rects=[],H.body.appendChild(this.container)}return Le(F,[{key:"remove",value:function(){this.tip.remove(),this.rects.forEach(function(R){R.remove()}),this.rects.length=0,this.container.parentNode&&this.container.parentNode.removeChild(this.container)}},{key:"inspect",value:function(R,U){for(var H=this,fe=R.filter(function(Xe){return Xe.nodeType===Node.ELEMENT_NODE});this.rects.length>fe.length;)this.rects.pop().remove();if(fe.length!==0){for(;this.rects.length1&&arguments[1]!==void 0?arguments[1]:j,je=void 0,Xe=[],rt=void 0,st=!1,xt=function(lt,Rt){return xe(lt,Xe[Rt])},wt=function(){for(var lt=arguments.length,Rt=Array(lt),yn=0;yn5&&arguments[5]!==void 0?arguments[5]:0,W=cl(F);switch(W){case"html_element":return R.push(H),{inspectable:!1,preview_short:Mr(F,!1),preview_long:Mr(F,!0),name:F.tagName,type:W};case"function":return R.push(H),{inspectable:!1,preview_short:Mr(F,!1),preview_long:Mr(F,!0),name:typeof F.name!="function"&&F.name?F.name:"function",type:W};case"string":return F.length<=500?F:F.slice(0,500)+"...";case"bigint":case"symbol":return R.push(H),{inspectable:!1,preview_short:Mr(F,!1),preview_long:Mr(F,!0),name:F.toString(),type:W};case"react_element":return R.push(H),{inspectable:!1,preview_short:Mr(F,!1),preview_long:Mr(F,!0),name:al(F)||"Unknown",type:W};case"array_buffer":case"data_view":return R.push(H),{inspectable:!1,preview_short:Mr(F,!1),preview_long:Mr(F,!0),name:W==="data_view"?"DataView":"ArrayBuffer",size:F.byteLength,type:W};case"array":return ue=fe(H),de>=2&&!ue?yo(W,!0,F,R,H):F.map(function(Ge,K){return Ds(Ge,R,U,H.concat([K]),fe,ue?1:de+1)});case"html_all_collection":case"typed_array":case"iterator":if(ue=fe(H),de>=2&&!ue)return yo(W,!0,F,R,H);var ve={unserializable:!0,type:W,readonly:!0,size:W==="typed_array"?F.length:void 0,preview_short:Mr(F,!1),preview_long:Mr(F,!0),name:F.constructor&&F.constructor.name!=="Object"?F.constructor.name:""};return r0(F[Symbol.iterator])&&Array.from(F).forEach(function(Ge,K){return ve[K]=Ds(Ge,R,U,H.concat([K]),fe,ue?1:de+1)}),U.push(H),ve;case"opaque_iterator":return R.push(H),{inspectable:!1,preview_short:Mr(F,!1),preview_long:Mr(F,!0),name:F[Symbol.toStringTag],type:W};case"date":case"regexp":return R.push(H),{inspectable:!1,preview_short:Mr(F,!1),preview_long:Mr(F,!0),name:F.toString(),type:W};case"object":if(ue=fe(H),de>=2&&!ue)return yo(W,!0,F,R,H);var Fe={};return Es(F).forEach(function(Ge){var K=Ge.toString();Fe[K]=Ds(F[Ge],R,U,H.concat([K]),fe,ue?1:de+1)}),Fe;case"infinity":case"nan":case"undefined":return R.push(H),{type:W};default:return F}}function Mu(F){return(Mu=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(R){return typeof R}:function(R){return R&&typeof Symbol=="function"&&R.constructor===Symbol&&R!==Symbol.prototype?"symbol":typeof R})(F)}function Gf(F){return function(R){if(Array.isArray(R))return iu(R)}(F)||function(R){if(typeof Symbol!="undefined"&&Symbol.iterator in Object(R))return Array.from(R)}(F)||function(R,U){if(!!R){if(typeof R=="string")return iu(R,U);var H=Object.prototype.toString.call(R).slice(8,-1);if(H==="Object"&&R.constructor&&(H=R.constructor.name),H==="Map"||H==="Set")return Array.from(R);if(H==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(H))return iu(R,U)}}(F)||function(){throw new TypeError(`Invalid attempt to spread non-iterable instance. +In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}()}function iu(F,R){(R==null||R>F.length)&&(R=F.length);for(var U=0,H=new Array(R);UR.toString()?1:R.toString()>F.toString()?-1:0}function Es(F){for(var R=[],U=F,H=function(){var fe=[].concat(Gf(Object.keys(U)),Gf(Object.getOwnPropertySymbols(U))),ue=Object.getOwnPropertyDescriptors(U);fe.forEach(function(de){ue[de].enumerable&&R.push(de)}),U=Object.getPrototypeOf(U)};U!=null;)H();return R}function Uo(F){var R=arguments.length>1&&arguments[1]!==void 0?arguments[1]:"Anonymous",U=ou.get(F);if(U!=null)return U;var H=R;return typeof F.displayName=="string"?H=F.displayName:typeof F.name=="string"&&F.name!==""&&(H=F.name),ou.set(F,H),H}var sl=0;function Ss(){return++sl}function Cs(F){var R=ol.get(F);if(R!==void 0)return R;for(var U=new Array(F.length),H=0;H1&&arguments[1]!==void 0?arguments[1]:50;return F.length>R?F.substr(0,R)+"\u2026":F}function Mr(F,R){if(F!=null&&hasOwnProperty.call(F,Ci.type))return R?F[Ci.preview_long]:F[Ci.preview_short];switch(cl(F)){case"html_element":return"<".concat(Ui(F.tagName.toLowerCase())," />");case"function":return Ui("\u0192 ".concat(typeof F.name=="function"?"":F.name,"() {}"));case"string":return'"'.concat(F,'"');case"bigint":return Ui(F.toString()+"n");case"regexp":case"symbol":return Ui(F.toString());case"react_element":return"<".concat(Ui(al(F)||"Unknown")," />");case"array_buffer":return"ArrayBuffer(".concat(F.byteLength,")");case"data_view":return"DataView(".concat(F.buffer.byteLength,")");case"array":if(R){for(var U="",H=0;H0&&(U+=", "),!((U+=Mr(F[H],!1)).length>50));H++);return"[".concat(Ui(U),"]")}var fe=hasOwnProperty.call(F,Ci.size)?F[Ci.size]:F.length;return"Array(".concat(fe,")");case"typed_array":var ue="".concat(F.constructor.name,"(").concat(F.length,")");if(R){for(var de="",W=0;W0&&(de+=", "),!((de+=F[W]).length>50));W++);return"".concat(ue," [").concat(Ui(de),"]")}return ue;case"iterator":var ve=F.constructor.name;if(R){for(var Fe=Array.from(F),Ge="",K=0;K0&&(Ge+=", "),Array.isArray(xe)){var je=Mr(xe[0],!0),Xe=Mr(xe[1],!1);Ge+="".concat(je," => ").concat(Xe)}else Ge+=Mr(xe,!1);if(Ge.length>50)break}return"".concat(ve,"(").concat(F.size,") {").concat(Ui(Ge),"}")}return"".concat(ve,"(").concat(F.size,")");case"opaque_iterator":return F[Symbol.toStringTag];case"date":return F.toString();case"object":if(R){for(var rt=Es(F).sort(ul),st="",xt=0;xt0&&(st+=", "),(st+="".concat(wt.toString(),": ").concat(Mr(F[wt],!1))).length>50)break}return"{".concat(Ui(st),"}")}return"{\u2026}";case"boolean":case"number":case"infinity":case"nan":case"null":case"undefined":return F;default:try{return Ui(""+F)}catch(lt){return"unserializable"}}}var Ac=f(7);function of(F){return(of=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(R){return typeof R}:function(R){return R&&typeof Symbol=="function"&&R.constructor===Symbol&&R!==Symbol.prototype?"symbol":typeof R})(F)}function Ts(F,R){var U=Object.keys(F);if(Object.getOwnPropertySymbols){var H=Object.getOwnPropertySymbols(F);R&&(H=H.filter(function(fe){return Object.getOwnPropertyDescriptor(F,fe).enumerable})),U.push.apply(U,H)}return U}function xs(F){for(var R=1;R2&&arguments[2]!==void 0?arguments[2]:[];if(F!==null){var H=[],fe=[],ue=Ds(F,H,fe,U,R);return{data:ue,cleaned:H,unserializable:fe}}return null}function qo(F){var R,U,H=(R=F,U=new Set,JSON.stringify(R,function(de,W){if(of(W)==="object"&&W!==null){if(U.has(W))return;U.add(W)}return typeof W=="bigint"?W.toString()+"n":W})),fe=H===void 0?"undefined":H,ue=window.__REACT_DEVTOOLS_GLOBAL_HOOK__.clipboardCopyText;typeof ue=="function"?ue(fe).catch(function(de){}):Object(Ac.copy)(fe)}function kr(F,R){var U=arguments.length>2&&arguments[2]!==void 0?arguments[2]:0,H=R[U],fe=Array.isArray(F)?F.slice():xs({},F);return U+1===R.length?Array.isArray(fe)?fe.splice(H,1):delete fe[H]:fe[H]=kr(F[H],R,U+1),fe}function Fr(F,R,U){var H=arguments.length>3&&arguments[3]!==void 0?arguments[3]:0,fe=R[H],ue=Array.isArray(F)?F.slice():xs({},F);if(H+1===R.length){var de=U[H];ue[de]=ue[fe],Array.isArray(ue)?ue.splice(fe,1):delete ue[fe]}else ue[fe]=Fr(F[fe],R,U,H+1);return ue}function si(F,R,U){var H=arguments.length>3&&arguments[3]!==void 0?arguments[3]:0;if(H>=R.length)return U;var fe=R[H],ue=Array.isArray(F)?F.slice():xs({},F);return ue[fe]=si(F[fe],R,U,H+1),ue}var H0=f(8);function b0(F,R){var U=Object.keys(F);if(Object.getOwnPropertySymbols){var H=Object.getOwnPropertySymbols(F);R&&(H=H.filter(function(fe){return Object.getOwnPropertyDescriptor(F,fe).enumerable})),U.push.apply(U,H)}return U}function Bt(F){for(var R=1;R=F.length?{done:!0}:{done:!1,value:F[H++]}},e:function(ve){throw ve},f:fe}}throw new TypeError(`Invalid attempt to iterate non-iterable instance. +In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}var ue,de=!0,W=!1;return{s:function(){U=F[Symbol.iterator]()},n:function(){var ve=U.next();return de=ve.done,ve},e:function(ve){W=!0,ue=ve},f:function(){try{de||U.return==null||U.return()}finally{if(W)throw ue}}}}function As(F,R){if(F){if(typeof F=="string")return uu(F,R);var U=Object.prototype.toString.call(F).slice(8,-1);return U==="Object"&&F.constructor&&(U=F.constructor.name),U==="Map"||U==="Set"?Array.from(F):U==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(U)?uu(F,R):void 0}}function uu(F,R){(R==null||R>F.length)&&(R=F.length);for(var U=0,H=new Array(R);U0){var et=ue(X);if(et!=null){var Dt,bt=ks(du);try{for(bt.s();!(Dt=bt.n()).done;)if(Dt.value.test(et))return!0}catch(fn){bt.e(fn)}finally{bt.f()}}}if(Y!=null&&Yu.size>0){var Zt,qt=Y.fileName,Ut=ks(Yu);try{for(Ut.s();!(Zt=Ut.n()).done;)if(Zt.value.test(qt))return!0}catch(fn){Ut.e(fn)}finally{Ut.f()}}return!1}function Gr(X){var Y=X.type;switch(X.tag){case Xe:case ar:return 1;case je:case rn:return 5;case wt:return 6;case lt:return 11;case yn:return 7;case Rt:case sn:case xt:return 9;case Hn:case Cr:return 8;case He:return 12;case Qe:return 13;default:switch(de(Y)){case 60111:case"Symbol(react.concurrent_mode)":case"Symbol(react.async_mode)":return 9;case 60109:case"Symbol(react.provider)":return 2;case 60110:case"Symbol(react.context)":return 2;case 60108:case"Symbol(react.strict_mode)":return 9;case 60114:case"Symbol(react.profiler)":return 10;default:return 9}}}function ir(X){if(Co.has(X))return X;var Y=X.alternate;return Y!=null&&Co.has(Y)?Y:(Co.add(X),X)}window.__REACT_DEVTOOLS_COMPONENT_FILTERS__!=null?qs(window.__REACT_DEVTOOLS_COMPONENT_FILTERS__):qs([{type:1,value:7,isEnabled:!0}]);var L0=new Map,Y0=new Map,Co=new Set,$u=new Map,Vo=new Map,Rr=-1;function Jn(X){if(!L0.has(X)){var Y=Ss();L0.set(X,Y),Y0.set(Y,X)}return L0.get(X)}function ai(X){switch(Gr(X)){case 1:if(N0!==null){var Y=Jn(ir(X)),ye=Vr(X);ye!==null&&N0.set(Y,ye)}}}var o0={};function Vr(X){switch(Gr(X)){case 1:var Y=X.stateNode,ye=o0,he=o0;return Y!=null&&(Y.constructor&&Y.constructor.contextType!=null?he=Y.context:(ye=Y.context)&&Object.keys(ye).length===0&&(ye=o0)),[ye,he];default:return null}}function ff(X){switch(Gr(X)){case 1:if(N0!==null){var Y=Jn(ir(X)),ye=N0.has(Y)?N0.get(Y):null,he=Vr(X);if(ye==null||he==null)return null;var We=Ru(ye,2),et=We[0],Dt=We[1],bt=Ru(he,2),Zt=bt[0],qt=bt[1];if(Zt!==o0)return $0(et,Zt);if(qt!==o0)return Dt!==qt}}return null}function cf(X,Y){if(X==null||Y==null)return!1;if(Y.hasOwnProperty("baseState")&&Y.hasOwnProperty("memoizedState")&&Y.hasOwnProperty("next")&&Y.hasOwnProperty("queue"))for(;Y!==null;){if(Y.memoizedState!==X.memoizedState)return!0;Y=Y.next,X=X.next}return!1}function $0(X,Y){if(X==null||Y==null||Y.hasOwnProperty("baseState")&&Y.hasOwnProperty("memoizedState")&&Y.hasOwnProperty("next")&&Y.hasOwnProperty("queue"))return null;var ye,he=[],We=ks(new Set([].concat(c0(Object.keys(X)),c0(Object.keys(Y)))));try{for(We.s();!(ye=We.n()).done;){var et=ye.value;X[et]!==Y[et]&&he.push(et)}}catch(Dt){We.e(Dt)}finally{We.f()}return he}function K0(X,Y){switch(Y.tag){case Xe:case je:case rt:case Hn:case Cr:return(zo(Y)&K)===K;default:return X.memoizedProps!==Y.memoizedProps||X.memoizedState!==Y.memoizedState||X.ref!==Y.ref}}var ae=[],Be=[],Ie=[],ht=[],mt=new Map,wn=0,Gn=null;function $t(X){ae.push(X)}function X0(X){if(ae.length!==0||Be.length!==0||Ie.length!==0||Gn!==null||u0){var Y=Be.length+Ie.length+(Gn===null?0:1),ye=new Array(3+wn+(Y>0?2+Y:0)+ae.length),he=0;if(ye[he++]=R,ye[he++]=Rr,ye[he++]=wn,mt.forEach(function(bt,Zt){ye[he++]=Zt.length;for(var qt=Cs(Zt),Ut=0;Ut0){ye[he++]=2,ye[he++]=Y;for(var We=Be.length-1;We>=0;We--)ye[he++]=Be[We];for(var et=0;et0?X.forEach(function(Y){F.emit("operations",Y)}):(Fn!==null&&(zr=!0),F.getFiberRoots(R).forEach(function(Y){T0(Rr=Jn(ir(Y.current)),Y.current),u0&&Y.memoizedInteractions!=null&&(uo={changeDescriptions:To?new Map:null,durations:[],commitTime:Os()-v0,interactions:Array.from(Y.memoizedInteractions).map(function(ye){return Bt(Bt({},ye),{},{timestamp:ye.timestamp-v0})}),maxActualDuration:0,priorityLevel:null}),$r(Y.current,null,!1,!1),X0(),Rr=-1}))},getBestMatchForTrackedPath:function(){if(Fn===null||pi===null)return null;for(var X=pi;X!==null&&F0(X);)X=X.return;return X===null?null:{id:Jn(ir(X)),isFullMatch:Br===Fn.length-1}},getDisplayNameForFiberID:function(X){var Y=Y0.get(X);return Y!=null?ue(Y):null},getFiberIDForNative:function(X){var Y=arguments.length>1&&arguments[1]!==void 0&&arguments[1],ye=U.findFiberByHostInstance(X);if(ye!=null){if(Y)for(;ye!==null&&F0(ye);)ye=ye.return;return Jn(ir(ye))}return null},getInstanceAndStyle:function(X){var Y=null,ye=null,he=J0(X);return he!==null&&(Y=he.stateNode,he.memoizedProps!==null&&(ye=he.memoizedProps.style)),{instance:Y,style:ye}},getOwnersList:function(X){var Y=J0(X);if(Y==null)return null;var ye=Y._debugOwner,he=[{displayName:ue(Y)||"Anonymous",id:X,type:Gr(Y)}];if(ye)for(var We=ye;We!==null;)he.unshift({displayName:ue(We)||"Anonymous",id:Jn(ir(We)),type:Gr(We)}),We=We._debugOwner||null;return he},getPathForElement:function(X){var Y=Y0.get(X);if(Y==null)return null;for(var ye=[];Y!==null;)ye.push(Ai(Y)),Y=Y.return;return ye.reverse(),ye},getProfilingData:function(){var X=[];if(pu===null)throw Error("getProfilingData() called before any profiling data was recorded");return pu.forEach(function(Y,ye){var he=[],We=[],et=new Map,Dt=new Map,bt=so!==null&&so.get(ye)||"Unknown";C0!=null&&C0.forEach(function(Zt,qt){di!=null&&di.get(qt)===ye&&We.push([qt,Zt])}),Y.forEach(function(Zt,qt){var Ut=Zt.changeDescriptions,fn=Zt.durations,_t=Zt.interactions,_r=Zt.maxActualDuration,Wr=Zt.priorityLevel,Ar=Zt.commitTime,z=[];_t.forEach(function(s0){et.has(s0.id)||et.set(s0.id,s0),z.push(s0.id);var t0=Dt.get(s0.id);t0!=null?t0.push(qt):Dt.set(s0.id,[qt])});for(var dr=[],Or=[],Qn=0;Qn1?kn.set(Ut,fn-1):kn.delete(Ut),wr.delete(Zt)}(Rr),Yr(ye,!1))}else T0(Rr,ye),$r(ye,null,!1,!1);if(u0&&We){var bt=pu.get(Rr);bt!=null?bt.push(uo):pu.set(Rr,[uo])}X0(),oo&&F.emit("traceUpdates",Hi),Rr=-1},handleCommitFiberUnmount:function(X){Yr(X,!1)},inspectElement:function(X,Y){if(Tr(X)){if(Y!=null){R0(Y);var ye=null;return Y[0]==="hooks"&&(ye="hooks"),{id:X,type:"hydrated-path",path:Y,value:qi(Ti(S0,Y),Nr(null,ye),Y)}}return{id:X,type:"no-change"}}if(El=!1,S0!==null&&S0.id===X||(Q0={}),(S0=af(X))===null)return{id:X,type:"not-found"};Y!=null&&R0(Y),function(We){var et=We.hooks,Dt=We.id,bt=We.props,Zt=Y0.get(Dt);if(Zt!=null){var qt=Zt.elementType,Ut=Zt.stateNode,fn=Zt.tag,_t=Zt.type;switch(fn){case Xe:case ar:case rn:H.$r=Ut;break;case je:H.$r={hooks:et,props:bt,type:_t};break;case wt:H.$r={props:bt,type:_t.render};break;case Hn:case Cr:H.$r={props:bt,type:qt!=null&&qt.type!=null?qt.type:_t};break;default:H.$r=null}}else console.warn('Could not find Fiber with id "'.concat(Dt,'"'))}(S0);var he=Bt({},S0);return he.context=qi(he.context,Nr("context",null)),he.hooks=qi(he.hooks,Nr("hooks","hooks")),he.props=qi(he.props,Nr("props",null)),he.state=qi(he.state,Nr("state",null)),{id:X,type:"full-data",value:he}},logElementToConsole:function(X){var Y=Tr(X)?S0:af(X);if(Y!==null){var ye=typeof console.groupCollapsed=="function";ye&&console.groupCollapsed("[Click to expand] %c<".concat(Y.displayName||"Component"," />"),"color: var(--dom-tag-name-color); font-weight: normal;"),Y.props!==null&&console.log("Props:",Y.props),Y.state!==null&&console.log("State:",Y.state),Y.hooks!==null&&console.log("Hooks:",Y.hooks);var he=zs(X);he!==null&&console.log("Nodes:",he),Y.source!==null&&console.log("Location:",Y.source),(window.chrome||/firefox/i.test(navigator.userAgent))&&console.log("Right-click any value to save it as a global variable for further inspection."),ye&&console.groupEnd()}else console.warn('Could not find Fiber with id "'.concat(X,'"'))},prepareViewAttributeSource:function(X,Y){Tr(X)&&(window.$attribute=Ti(S0,Y))},prepareViewElementSource:function(X){var Y=Y0.get(X);if(Y!=null){var ye=Y.elementType,he=Y.tag,We=Y.type;switch(he){case Xe:case ar:case rn:case je:H.$type=We;break;case wt:H.$type=We.render;break;case Hn:case Cr:H.$type=ye!=null&&ye.type!=null?ye.type:We;break;default:H.$type=null}}else console.warn('Could not find Fiber with id "'.concat(X,'"'))},overrideSuspense:function(X,Y){if(typeof Eo!="function"||typeof So!="function")throw new Error("Expected overrideSuspense() to not get called for earlier React versions.");Y?(B0.add(X),B0.size===1&&Eo(hu)):(B0.delete(X),B0.size===0&&Eo(Cl));var ye=Y0.get(X);ye!=null&&So(ye)},overrideValueAtPath:function(X,Y,ye,he,We){var et=J0(Y);if(et!==null){var Dt=et.stateNode;switch(X){case"context":switch(he=he.slice(1),et.tag){case Xe:he.length===0?Dt.context=We:fl(Dt.context,he,We),Dt.forceUpdate()}break;case"hooks":typeof p0=="function"&&p0(et,ye,he,We);break;case"props":switch(et.tag){case Xe:et.pendingProps=si(Dt.props,he,We),Dt.forceUpdate();break;default:typeof xi=="function"&&xi(et,he,We)}break;case"state":switch(et.tag){case Xe:fl(Dt.state,he,We),Dt.forceUpdate()}}}},renamePath:function(X,Y,ye,he,We){var et=J0(Y);if(et!==null){var Dt=et.stateNode;switch(X){case"context":switch(he=he.slice(1),We=We.slice(1),et.tag){case Xe:he.length===0||ll(Dt.context,he,We),Dt.forceUpdate()}break;case"hooks":typeof ci=="function"&&ci(et,ye,he,We);break;case"props":Dt===null?typeof qr=="function"&&qr(et,he,We):(et.pendingProps=Fr(Dt.props,he,We),Dt.forceUpdate());break;case"state":ll(Dt.state,he,We),Dt.forceUpdate()}}},renderer:U,setTraceUpdatesEnabled:function(X){oo=X},setTrackedPath:lo,startProfiling:Sl,stopProfiling:function(){u0=!1,To=!1},storeAsGlobal:function(X,Y,ye){if(Tr(X)){var he=Ti(S0,Y),We="$reactTemp".concat(ye);window[We]=he,console.log(We),console.log(he)}},updateComponentFilters:function(X){if(u0)throw Error("Cannot modify filter preferences while profiling");F.getFiberRoots(R).forEach(function(Y){Rr=Jn(ir(Y.current)),m0(Y.current),Yr(Y.current,!1),Rr=-1}),qs(X),kn.clear(),F.getFiberRoots(R).forEach(function(Y){T0(Rr=Jn(ir(Y.current)),Y.current),$r(Y.current,null,!1,!1),X0(Y),Rr=-1})}}}var _n;function Nu(F){return(Nu=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(R){return typeof R}:function(R){return R&&typeof Symbol=="function"&&R.constructor===Symbol&&R!==Symbol.prototype?"symbol":typeof R})(F)}function Wo(F,R,U){if(_n===void 0)try{throw Error()}catch(fe){var H=fe.stack.trim().match(/\n( *(at )?)/);_n=H&&H[1]||""}return` +`+_n+F}var su=!1;function Ps(F,R,U){if(!F||su)return"";var H,fe=Error.prepareStackTrace;Error.prepareStackTrace=void 0,su=!0;var ue=U.current;U.current=null;try{if(R){var de=function(){throw Error()};if(Object.defineProperty(de.prototype,"props",{set:function(){throw Error()}}),(typeof Reflect=="undefined"?"undefined":Nu(Reflect))==="object"&&Reflect.construct){try{Reflect.construct(de,[])}catch(xe){H=xe}Reflect.construct(F,[],de)}else{try{de.call()}catch(xe){H=xe}F.call(de.prototype)}}else{try{throw Error()}catch(xe){H=xe}F()}}catch(xe){if(xe&&H&&typeof xe.stack=="string"){for(var W=xe.stack.split(` +`),ve=H.stack.split(` +`),Fe=W.length-1,Ge=ve.length-1;Fe>=1&&Ge>=0&&W[Fe]!==ve[Ge];)Ge--;for(;Fe>=1&&Ge>=0;Fe--,Ge--)if(W[Fe]!==ve[Ge]){if(Fe!==1||Ge!==1)do if(Fe--,--Ge<0||W[Fe]!==ve[Ge])return` +`+W[Fe].replace(" at new "," at ");while(Fe>=1&&Ge>=0);break}}}finally{su=!1,Error.prepareStackTrace=fe,U.current=ue}var K=F?F.displayName||F.name:"";return K?Wo(K):""}function pl(F,R,U,H){return Ps(F,!1,H)}function Vf(F,R,U){var H=F.HostComponent,fe=F.LazyComponent,ue=F.SuspenseComponent,de=F.SuspenseListComponent,W=F.FunctionComponent,ve=F.IndeterminateComponent,Fe=F.SimpleMemoComponent,Ge=F.ForwardRef,K=F.Block,xe=F.ClassComponent;switch(R.tag){case H:return Wo(R.type);case fe:return Wo("Lazy");case ue:return Wo("Suspense");case de:return Wo("SuspenseList");case W:case ve:case Fe:return pl(R.type,0,0,U);case Ge:return pl(R.type.render,0,0,U);case K:return pl(R.type._render,0,0,U);case xe:return function(je,Xe,rt,st){return Ps(je,!0,st)}(R.type,0,0,U);default:return""}}function hl(F,R,U){try{var H="",fe=R;do H+=Vf(F,fe,U),fe=fe.return;while(fe);return H}catch(ue){return` +Error generating stack: `+ue.message+` +`+ue.stack}}function Bu(F,R){var U;if(typeof Symbol=="undefined"||F[Symbol.iterator]==null){if(Array.isArray(F)||(U=function(ve,Fe){if(!!ve){if(typeof ve=="string")return ju(ve,Fe);var Ge=Object.prototype.toString.call(ve).slice(8,-1);if(Ge==="Object"&&ve.constructor&&(Ge=ve.constructor.name),Ge==="Map"||Ge==="Set")return Array.from(ve);if(Ge==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(Ge))return ju(ve,Fe)}}(F))||R&&F&&typeof F.length=="number"){U&&(F=U);var H=0,fe=function(){};return{s:fe,n:function(){return H>=F.length?{done:!0}:{done:!1,value:F[H++]}},e:function(ve){throw ve},f:fe}}throw new TypeError(`Invalid attempt to iterate non-iterable instance. +In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}var ue,de=!0,W=!1;return{s:function(){U=F[Symbol.iterator]()},n:function(){var ve=U.next();return de=ve.done,ve},e:function(ve){W=!0,ue=ve},f:function(){try{de||U.return==null||U.return()}finally{if(W)throw ue}}}}function ju(F,R){(R==null||R>F.length)&&(R=F.length);for(var U=0,H=new Array(R);U0?Fe[Fe.length-1]:null,xe=K!==null&&(ro.test(K)||Ms.test(K));if(!xe){var je,Xe=Bu(ml.values());try{for(Xe.s();!(je=Xe.n()).done;){var rt=je.value,st=rt.currentDispatcherRef,xt=rt.getCurrentFiber,wt=rt.workTagMap,lt=xt();if(lt!=null){var Rt=hl(wt,lt,st);Rt!==""&&Fe.push(Rt);break}}}catch(yn){Xe.e(yn)}finally{Xe.f()}}}catch(yn){}ue.apply(void 0,Fe)};de.__REACT_DEVTOOLS_ORIGINAL_METHOD__=ue,Uu[fe]=de}catch(W){}})}}function O0(F){return(O0=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(R){return typeof R}:function(R){return R&&typeof Symbol=="function"&&R.constructor===Symbol&&R!==Symbol.prototype?"symbol":typeof R})(F)}function vl(F,R){for(var U=0;UF.length)&&(R=F.length);for(var U=0,H=new Array(R);U1?W-1:0),Fe=1;Fe0?K[K.length-1]:0),K.push(St),W.set(Ne,Fe(ft._topLevelWrapper));try{var Qt=He.apply(this,Qe);return K.pop(),Qt}catch(bn){throw K=[],bn}finally{if(K.length===0){var Cn=W.get(Ne);if(Cn===void 0)throw new Error("Expected to find root ID.");yn(Cn)}}},performUpdateIfNecessary:function(He,Qe){var Ne=Qe[0];if(P0(Ne)===9)return He.apply(this,Qe);var ft=Fe(Ne);K.push(ft);var St=ln(Ne);try{var Qt=He.apply(this,Qe),Cn=ln(Ne);return Ge(St,Cn)||Xe(Ne,ft,Cn),K.pop(),Qt}catch(p0){throw K=[],p0}finally{if(K.length===0){var bn=W.get(Ne);if(bn===void 0)throw new Error("Expected to find root ID.");yn(bn)}}},receiveComponent:function(He,Qe){var Ne=Qe[0];if(P0(Ne)===9)return He.apply(this,Qe);var ft=Fe(Ne);K.push(ft);var St=ln(Ne);try{var Qt=He.apply(this,Qe),Cn=ln(Ne);return Ge(St,Cn)||Xe(Ne,ft,Cn),K.pop(),Qt}catch(p0){throw K=[],p0}finally{if(K.length===0){var bn=W.get(Ne);if(bn===void 0)throw new Error("Expected to find root ID.");yn(bn)}}},unmountComponent:function(He,Qe){var Ne=Qe[0];if(P0(Ne)===9)return He.apply(this,Qe);var ft=Fe(Ne);K.push(ft);try{var St=He.apply(this,Qe);return K.pop(),function(Cn,bn){wt.push(bn),ue.delete(bn)}(0,ft),St}catch(Cn){throw K=[],Cn}finally{if(K.length===0){var Qt=W.get(Ne);if(Qt===void 0)throw new Error("Expected to find root ID.");yn(Qt)}}}}));var st=[],xt=new Map,wt=[],lt=0,Rt=null;function yn(He){if(st.length!==0||wt.length!==0||Rt!==null){var Qe=wt.length+(Rt===null?0:1),Ne=new Array(3+lt+(Qe>0?2+Qe:0)+st.length),ft=0;if(Ne[ft++]=R,Ne[ft++]=He,Ne[ft++]=lt,xt.forEach(function(Cn,bn){Ne[ft++]=bn.length;for(var p0=Cs(bn),h0=0;h00){Ne[ft++]=2,Ne[ft++]=Qe;for(var St=0;St"),"color: var(--dom-tag-name-color); font-weight: normal;"),Qe.props!==null&&console.log("Props:",Qe.props),Qe.state!==null&&console.log("State:",Qe.state),Qe.context!==null&&console.log("Context:",Qe.context);var ft=fe(He);ft!==null&&console.log("Node:",ft),(window.chrome||/firefox/i.test(navigator.userAgent))&&console.log("Right-click any value to save it as a global variable for further inspection."),Ne&&console.groupEnd()}else console.warn('Could not find element with id "'.concat(He,'"'))},overrideSuspense:function(){throw new Error("overrideSuspense not supported by this renderer")},overrideValueAtPath:function(He,Qe,Ne,ft,St){var Qt=ue.get(Qe);if(Qt!=null){var Cn=Qt._instance;if(Cn!=null)switch(He){case"context":fl(Cn.context,ft,St),a0(Cn);break;case"hooks":throw new Error("Hooks not supported by this renderer");case"props":var bn=Qt._currentElement;Qt._currentElement=V0(V0({},bn),{},{props:si(bn.props,ft,St)}),a0(Cn);break;case"state":fl(Cn.state,ft,St),a0(Cn)}}},renamePath:function(He,Qe,Ne,ft,St){var Qt=ue.get(Qe);if(Qt!=null){var Cn=Qt._instance;if(Cn!=null)switch(He){case"context":ll(Cn.context,ft,St),a0(Cn);break;case"hooks":throw new Error("Hooks not supported by this renderer");case"props":var bn=Qt._currentElement;Qt._currentElement=V0(V0({},bn),{},{props:Fr(bn.props,ft,St)}),a0(Cn);break;case"state":ll(Cn.state,ft,St),a0(Cn)}}},prepareViewAttributeSource:function(He,Qe){var Ne=Cr(He);Ne!==null&&(window.$attribute=Ti(Ne,Qe))},prepareViewElementSource:function(He){var Qe=ue.get(He);if(Qe!=null){var Ne=Qe._currentElement;Ne!=null?H.$type=Ne.type:console.warn('Could not find element with id "'.concat(He,'"'))}else console.warn('Could not find instance with id "'.concat(He,'"'))},renderer:U,setTraceUpdatesEnabled:function(He){},setTrackedPath:function(He){},startProfiling:function(){},stopProfiling:function(){},storeAsGlobal:function(He,Qe,Ne){var ft=Cr(He);if(ft!==null){var St=Ti(ft,Qe),Qt="$reactTemp".concat(Ne);window[Qt]=St,console.log(Qt),console.log(St)}},updateComponentFilters:function(He){}}}function nr(F,R){var U=!1,H={bottom:0,left:0,right:0,top:0},fe=R[F];if(fe!=null){for(var ue=0,de=Object.keys(H);ue0?"development":"production";var st=Function.prototype.toString;if(rt.Mount&&rt.Mount._renderNewRootComponent){var xt=st.call(rt.Mount._renderNewRootComponent);return xt.indexOf("function")!==0?"production":xt.indexOf("storedMeasure")!==-1?"development":xt.indexOf("should be a pure function")!==-1?xt.indexOf("NODE_ENV")!==-1||xt.indexOf("development")!==-1||xt.indexOf("true")!==-1?"development":xt.indexOf("nextElement")!==-1||xt.indexOf("nextComponent")!==-1?"unminified":"development":xt.indexOf("nextElement")!==-1||xt.indexOf("nextComponent")!==-1?"unminified":"outdated"}}catch(wt){}return"production"}(ve);try{var K=window.__REACT_DEVTOOLS_APPEND_COMPONENT_STACK__!==!1,xe=window.__REACT_DEVTOOLS_BREAK_ON_CONSOLE_ERRORS__===!0;(K||xe)&&(zi(ve),Ho({appendComponentStack:K,breakOnConsoleErrors:xe}))}catch(rt){}var je=F.__REACT_DEVTOOLS_ATTACH__;if(typeof je=="function"){var Xe=je(W,Fe,ve,F);W.rendererInterfaces.set(Fe,Xe)}return W.emit("renderer",{id:Fe,renderer:ve,reactBuildType:Ge}),Fe},on:function(ve,Fe){ue[ve]||(ue[ve]=[]),ue[ve].push(Fe)},off:function(ve,Fe){if(ue[ve]){var Ge=ue[ve].indexOf(Fe);Ge!==-1&&ue[ve].splice(Ge,1),ue[ve].length||delete ue[ve]}},sub:function(ve,Fe){return W.on(ve,Fe),function(){return W.off(ve,Fe)}},supportsFiber:!0,checkDCE:function(ve){try{Function.prototype.toString.call(ve).indexOf("^_^")>-1&&(U=!0,setTimeout(function(){throw new Error("React is running in production mode, but dead code elimination has not been applied. Read how to correctly configure React for production: https://reactjs.org/link/perf-use-production-build")}))}catch(Fe){}},onCommitFiberUnmount:function(ve,Fe){var Ge=fe.get(ve);Ge!=null&&Ge.handleCommitFiberUnmount(Fe)},onCommitFiberRoot:function(ve,Fe,Ge){var K=W.getFiberRoots(ve),xe=Fe.current,je=K.has(Fe),Xe=xe.memoizedState==null||xe.memoizedState.element==null;je||Xe?je&&Xe&&K.delete(Fe):K.add(Fe);var rt=fe.get(ve);rt!=null&&rt.handleCommitFiberRoot(Fe,Ge)}};Object.defineProperty(F,"__REACT_DEVTOOLS_GLOBAL_HOOK__",{configurable:!1,enumerable:!1,get:function(){return W}})})(window);var M0=window.__REACT_DEVTOOLS_GLOBAL_HOOK__,au=[{type:1,value:7,isEnabled:!0}];function Lr(F){if(M0!=null){var R=F||{},U=R.host,H=U===void 0?"localhost":U,fe=R.nativeStyleEditorValidAttributes,ue=R.useHttps,de=ue!==void 0&&ue,W=R.port,ve=W===void 0?8097:W,Fe=R.websocket,Ge=R.resolveRNStyle,K=Ge===void 0?null:Ge,xe=R.isAppActive,je=de?"wss":"ws",Xe=null;if((xe===void 0?function(){return!0}:xe)()){var rt=null,st=[],xt=je+"://"+H+":"+ve,wt=Fe||new window.WebSocket(xt);wt.onclose=function(){rt!==null&&rt.emit("shutdown"),lt()},wt.onerror=function(){lt()},wt.onmessage=function(Rt){var yn;try{if(typeof Rt.data!="string")throw Error();yn=JSON.parse(Rt.data)}catch(sn){return void console.error("[React DevTools] Failed to parse JSON: "+Rt.data)}st.forEach(function(sn){try{sn(yn)}catch(ar){throw console.log("[React DevTools] Error calling listener",yn),console.log("error:",ar),ar}})},wt.onopen=function(){(rt=new Do({listen:function(rn){return st.push(rn),function(){var Hn=st.indexOf(rn);Hn>=0&&st.splice(Hn,1)}},send:function(rn,Hn,d0){wt.readyState===wt.OPEN?wt.send(JSON.stringify({event:rn,payload:Hn})):(rt!==null&&rt.shutdown(),lt())}})).addListener("inspectElement",function(rn){var Hn=rn.id,d0=rn.rendererID,Cr=Rt.rendererInterfaces[d0];if(Cr!=null){var He=Cr.findNativeNodesForFiberID(Hn);He!=null&&He[0]!=null&&Rt.emit("showNativeHighlight",He[0])}}),rt.addListener("updateComponentFilters",function(rn){au=rn}),window.__REACT_DEVTOOLS_COMPONENT_FILTERS__==null&&rt.send("overrideComponentFilters",au);var Rt=new I0(rt);if(Rt.addListener("shutdown",function(){M0.emit("shutdown")}),function(rn,Hn,d0){if(rn==null)return function(){};var Cr=[rn.sub("renderer-attached",function(Ne){var ft=Ne.id,St=(Ne.renderer,Ne.rendererInterface);Hn.setRendererInterface(ft,St),St.flushInitialOperations()}),rn.sub("unsupported-renderer-version",function(Ne){Hn.onUnsupportedRenderer(Ne)}),rn.sub("operations",Hn.onHookOperations),rn.sub("traceUpdates",Hn.onTraceUpdates)],He=function(Ne,ft){var St=rn.rendererInterfaces.get(Ne);St==null&&(typeof ft.findFiberByHostInstance=="function"?St=uf(rn,Ne,ft,d0):ft.ComponentTree&&(St=lf(rn,Ne,ft,d0)),St!=null&&rn.rendererInterfaces.set(Ne,St)),St!=null?rn.emit("renderer-attached",{id:Ne,renderer:ft,rendererInterface:St}):rn.emit("unsupported-renderer-version",Ne)};rn.renderers.forEach(function(Ne,ft){He(ft,Ne)}),Cr.push(rn.sub("renderer",function(Ne){var ft=Ne.id,St=Ne.renderer;He(ft,St)})),rn.emit("react-devtools",Hn),rn.reactDevtoolsAgent=Hn;var Qe=function(){Cr.forEach(function(Ne){return Ne()}),rn.rendererInterfaces.forEach(function(Ne){Ne.cleanup()}),rn.reactDevtoolsAgent=null};Hn.addListener("shutdown",Qe),Cr.push(function(){Hn.removeListener("shutdown",Qe)})}(M0,Rt,window),K!=null||M0.resolveRNStyle!=null)Gu(rt,Rt,K||M0.resolveRNStyle,fe||M0.nativeStyleEditorValidAttributes||null);else{var yn,sn,ar=function(){rt!==null&&Gu(rt,Rt,yn,sn)};M0.hasOwnProperty("resolveRNStyle")||Object.defineProperty(M0,"resolveRNStyle",{enumerable:!1,get:function(){return yn},set:function(rn){yn=rn,ar()}}),M0.hasOwnProperty("nativeStyleEditorValidAttributes")||Object.defineProperty(M0,"nativeStyleEditorValidAttributes",{enumerable:!1,get:function(){return sn},set:function(rn){sn=rn,ar()}})}}}else lt()}function lt(){Xe===null&&(Xe=setTimeout(function(){return Lr(F)},2e3))}}}])})});var rS=Me(nS=>{"use strict";Object.defineProperty(nS,"__esModule",{value:!0});eS();var _j=tS();_j.connectToDevTools()});var lS=Me(x2=>{"use strict";var iS=x2&&x2.__importDefault||function(i){return i&&i.__esModule?i:{default:i}};Object.defineProperty(x2,"__esModule",{value:!0});var oS=Ay(),yj=iS(lE()),uS=iS(hc()),no=Xy();process.env.DEV==="true"&&rS();var sS=i=>{i==null||i.unsetMeasureFunc(),i==null||i.freeRecursive()};x2.default=yj.default({schedulePassiveEffects:oS.unstable_scheduleCallback,cancelPassiveEffects:oS.unstable_cancelCallback,now:Date.now,getRootHostContext:()=>({isInsideText:!1}),prepareForCommit:()=>{},resetAfterCommit:i=>{if(i.isStaticDirty){i.isStaticDirty=!1,typeof i.onImmediateRender=="function"&&i.onImmediateRender();return}typeof i.onRender=="function"&&i.onRender()},getChildHostContext:(i,u)=>{let f=i.isInsideText,c=u==="ink-text"||u==="ink-virtual-text";return f===c?i:{isInsideText:c}},shouldSetTextContent:()=>!1,createInstance:(i,u,f,c)=>{if(c.isInsideText&&i==="ink-box")throw new Error(" can\u2019t be nested inside component");let g=i==="ink-text"&&c.isInsideText?"ink-virtual-text":i,t=no.createNode(g);for(let[C,A]of Object.entries(u))C!=="children"&&(C==="style"?no.setStyle(t,A):C==="internal_transform"?t.internal_transform=A:C==="internal_static"?t.internal_static=!0:no.setAttribute(t,C,A));return t},createTextInstance:(i,u,f)=>{if(!f.isInsideText)throw new Error(`Text string "${i}" must be rendered inside component`);return no.createTextNode(i)},resetTextContent:()=>{},hideTextInstance:i=>{no.setTextNodeValue(i,"")},unhideTextInstance:(i,u)=>{no.setTextNodeValue(i,u)},getPublicInstance:i=>i,hideInstance:i=>{var u;(u=i.yogaNode)===null||u===void 0||u.setDisplay(uS.default.DISPLAY_NONE)},unhideInstance:i=>{var u;(u=i.yogaNode)===null||u===void 0||u.setDisplay(uS.default.DISPLAY_FLEX)},appendInitialChild:no.appendChildNode,appendChild:no.appendChildNode,insertBefore:no.insertBeforeNode,finalizeInitialChildren:(i,u,f,c)=>(i.internal_static&&(c.isStaticDirty=!0,c.staticNode=i),!1),supportsMutation:!0,appendChildToContainer:no.appendChildNode,insertInContainerBefore:no.insertBeforeNode,removeChildFromContainer:(i,u)=>{no.removeChildNode(i,u),sS(u.yogaNode)},prepareUpdate:(i,u,f,c,g)=>{i.internal_static&&(g.isStaticDirty=!0);let t={},C=Object.keys(c);for(let A of C)if(c[A]!==f[A]){if(A==="style"&&typeof c.style=="object"&&typeof f.style=="object"){let D=c.style,L=f.style,N=Object.keys(D);for(let j of N){if(j==="borderStyle"||j==="borderColor"){if(typeof t.style!="object"){let $={};t.style=$}t.style.borderStyle=D.borderStyle,t.style.borderColor=D.borderColor}if(D[j]!==L[j]){if(typeof t.style!="object"){let $={};t.style=$}t.style[j]=D[j]}}continue}t[A]=c[A]}return t},commitUpdate:(i,u)=>{for(let[f,c]of Object.entries(u))f!=="children"&&(f==="style"?no.setStyle(i,c):f==="internal_transform"?i.internal_transform=c:f==="internal_static"?i.internal_static=!0:no.setAttribute(i,f,c))},commitTextUpdate:(i,u,f)=>{no.setTextNodeValue(i,f)},removeChild:(i,u)=>{no.removeChildNode(i,u),sS(u.yogaNode)}})});var cS=Me((Jb,fS)=>{"use strict";fS.exports=(i,u=1,f)=>{if(f=dt({indent:" ",includeEmptyLines:!1},f),typeof i!="string")throw new TypeError(`Expected \`input\` to be a \`string\`, got \`${typeof i}\``);if(typeof u!="number")throw new TypeError(`Expected \`count\` to be a \`number\`, got \`${typeof u}\``);if(typeof f.indent!="string")throw new TypeError(`Expected \`options.indent\` to be a \`string\`, got \`${typeof f.indent}\``);if(u===0)return i;let c=f.includeEmptyLines?/^/gm:/^(?!\s*$)/gm;return i.replace(c,f.indent.repeat(u))}});var aS=Me(k2=>{"use strict";var wj=k2&&k2.__importDefault||function(i){return i&&i.__esModule?i:{default:i}};Object.defineProperty(k2,"__esModule",{value:!0});var Vh=wj(hc());k2.default=i=>i.getComputedWidth()-i.getComputedPadding(Vh.default.EDGE_LEFT)-i.getComputedPadding(Vh.default.EDGE_RIGHT)-i.getComputedBorder(Vh.default.EDGE_LEFT)-i.getComputedBorder(Vh.default.EDGE_RIGHT)});var pS=Me((Zb,dS)=>{dS.exports={single:{topLeft:"\u250C",topRight:"\u2510",bottomRight:"\u2518",bottomLeft:"\u2514",vertical:"\u2502",horizontal:"\u2500"},double:{topLeft:"\u2554",topRight:"\u2557",bottomRight:"\u255D",bottomLeft:"\u255A",vertical:"\u2551",horizontal:"\u2550"},round:{topLeft:"\u256D",topRight:"\u256E",bottomRight:"\u256F",bottomLeft:"\u2570",vertical:"\u2502",horizontal:"\u2500"},bold:{topLeft:"\u250F",topRight:"\u2513",bottomRight:"\u251B",bottomLeft:"\u2517",vertical:"\u2503",horizontal:"\u2501"},singleDouble:{topLeft:"\u2553",topRight:"\u2556",bottomRight:"\u255C",bottomLeft:"\u2559",vertical:"\u2551",horizontal:"\u2500"},doubleSingle:{topLeft:"\u2552",topRight:"\u2555",bottomRight:"\u255B",bottomLeft:"\u2558",vertical:"\u2502",horizontal:"\u2550"},classic:{topLeft:"+",topRight:"+",bottomRight:"+",bottomLeft:"+",vertical:"|",horizontal:"-"}}});var mS=Me((eG,m3)=>{"use strict";var hS=pS();m3.exports=hS;m3.exports.default=hS});var gS=Me((tG,vS)=>{"use strict";vS.exports=(i,u=process.argv)=>{let f=i.startsWith("-")?"":i.length===1?"-":"--",c=u.indexOf(f+i),g=u.indexOf("--");return c!==-1&&(g===-1||c{"use strict";var Dj=require("os"),yS=require("tty"),Pu=gS(),{env:oi}=process,qf;Pu("no-color")||Pu("no-colors")||Pu("color=false")||Pu("color=never")?qf=0:(Pu("color")||Pu("colors")||Pu("color=true")||Pu("color=always"))&&(qf=1);"FORCE_COLOR"in oi&&(oi.FORCE_COLOR==="true"?qf=1:oi.FORCE_COLOR==="false"?qf=0:qf=oi.FORCE_COLOR.length===0?1:Math.min(parseInt(oi.FORCE_COLOR,10),3));function v3(i){return i===0?!1:{level:i,hasBasic:!0,has256:i>=2,has16m:i>=3}}function g3(i,u){if(qf===0)return 0;if(Pu("color=16m")||Pu("color=full")||Pu("color=truecolor"))return 3;if(Pu("color=256"))return 2;if(i&&!u&&qf===void 0)return 0;let f=qf||0;if(oi.TERM==="dumb")return f;if(process.platform==="win32"){let c=Dj.release().split(".");return Number(c[0])>=10&&Number(c[2])>=10586?Number(c[2])>=14931?3:2:1}if("CI"in oi)return["TRAVIS","CIRCLECI","APPVEYOR","GITLAB_CI"].some(c=>c in oi)||oi.CI_NAME==="codeship"?1:f;if("TEAMCITY_VERSION"in oi)return/^(9\.(0*[1-9]\d*)\.|\d{2,}\.)/.test(oi.TEAMCITY_VERSION)?1:0;if("GITHUB_ACTIONS"in oi)return 1;if(oi.COLORTERM==="truecolor")return 3;if("TERM_PROGRAM"in oi){let c=parseInt((oi.TERM_PROGRAM_VERSION||"").split(".")[0],10);switch(oi.TERM_PROGRAM){case"iTerm.app":return c>=3?3:2;case"Apple_Terminal":return 2}}return/-256(color)?$/i.test(oi.TERM)?2:/^screen|^xterm|^vt100|^vt220|^rxvt|color|ansi|cygwin|linux/i.test(oi.TERM)||"COLORTERM"in oi?1:f}function Ej(i){let u=g3(i,i&&i.isTTY);return v3(u)}_S.exports={supportsColor:Ej,stdout:v3(g3(!0,yS.isatty(1))),stderr:v3(g3(!0,yS.isatty(2)))}});var ES=Me((rG,DS)=>{"use strict";var Sj=(i,u,f)=>{let c=i.indexOf(u);if(c===-1)return i;let g=u.length,t=0,C="";do C+=i.substr(t,c-t)+u+f,t=c+g,c=i.indexOf(u,t);while(c!==-1);return C+=i.substr(t),C},Cj=(i,u,f,c)=>{let g=0,t="";do{let C=i[c-1]==="\r";t+=i.substr(g,(C?c-1:c)-g)+u+(C?`\r +`:` +`)+f,g=c+1,c=i.indexOf(` +`,g)}while(c!==-1);return t+=i.substr(g),t};DS.exports={stringReplaceAll:Sj,stringEncaseCRLFWithFirstIndex:Cj}});var kS=Me((iG,SS)=>{"use strict";var Tj=/(?:\\(u(?:[a-f\d]{4}|\{[a-f\d]{1,6}\})|x[a-f\d]{2}|.))|(?:\{(~)?(\w+(?:\([^)]*\))?(?:\.\w+(?:\([^)]*\))?)*)(?:[ \t]|(?=\r?\n)))|(\})|((?:.|[\r\n\f])+?)/gi,CS=/(?:^|\.)(\w+)(?:\(([^)]*)\))?/g,xj=/^(['"])((?:\\.|(?!\1)[^\\])*)\1$/,kj=/\\(u(?:[a-f\d]{4}|{[a-f\d]{1,6}})|x[a-f\d]{2}|.)|([^\\])/gi,Aj=new Map([["n",` +`],["r","\r"],["t"," "],["b","\b"],["f","\f"],["v","\v"],["0","\0"],["\\","\\"],["e",""],["a","\x07"]]);function TS(i){let u=i[0]==="u",f=i[1]==="{";return u&&!f&&i.length===5||i[0]==="x"&&i.length===3?String.fromCharCode(parseInt(i.slice(1),16)):u&&f?String.fromCodePoint(parseInt(i.slice(2,-1),16)):Aj.get(i)||i}function Oj(i,u){let f=[],c=u.trim().split(/\s*,\s*/g),g;for(let t of c){let C=Number(t);if(!Number.isNaN(C))f.push(C);else if(g=t.match(xj))f.push(g[2].replace(kj,(A,x,D)=>x?TS(x):D));else throw new Error(`Invalid Chalk template style argument: ${t} (in style '${i}')`)}return f}function Ij(i){CS.lastIndex=0;let u=[],f;for(;(f=CS.exec(i))!==null;){let c=f[1];if(f[2]){let g=Oj(c,f[2]);u.push([c].concat(g))}else u.push([c])}return u}function xS(i,u){let f={};for(let g of u)for(let t of g.styles)f[t[0]]=g.inverse?null:t.slice(1);let c=i;for(let[g,t]of Object.entries(f))if(!!Array.isArray(t)){if(!(g in c))throw new Error(`Unknown Chalk style: ${g}`);c=t.length>0?c[g](...t):c[g]}return c}SS.exports=(i,u)=>{let f=[],c=[],g=[];if(u.replace(Tj,(t,C,A,x,D,L)=>{if(C)g.push(TS(C));else if(x){let N=g.join("");g=[],c.push(f.length===0?N:xS(i,f)(N)),f.push({inverse:A,styles:Ij(x)})}else if(D){if(f.length===0)throw new Error("Found extraneous } in Chalk template literal");c.push(xS(i,f)(g.join(""))),g=[],f.pop()}else g.push(L)}),c.push(g.join("")),f.length>0){let t=`Chalk template literal is missing ${f.length} closing bracket${f.length===1?"":"s"} (\`}\`)`;throw new Error(t)}return c.join("")}});var Jh=Me((oG,AS)=>{"use strict";var A2=Rh(),{stdout:_3,stderr:y3}=wS(),{stringReplaceAll:Pj,stringEncaseCRLFWithFirstIndex:Mj}=ES(),{isArray:Yh}=Array,OS=["ansi","ansi","ansi256","ansi16m"],ka=Object.create(null),Fj=(i,u={})=>{if(u.level&&!(Number.isInteger(u.level)&&u.level>=0&&u.level<=3))throw new Error("The `level` option should be an integer from 0 to 3");let f=_3?_3.level:0;i.level=u.level===void 0?f:u.level},IS=class{constructor(u){return PS(u)}},PS=i=>{let u={};return Fj(u,i),u.template=(...f)=>MS(u.template,...f),Object.setPrototypeOf(u,$h.prototype),Object.setPrototypeOf(u.template,u),u.template.constructor=()=>{throw new Error("`chalk.constructor()` is deprecated. Use `new chalk.Instance()` instead.")},u.template.Instance=IS,u.template};function $h(i){return PS(i)}for(let[i,u]of Object.entries(A2))ka[i]={get(){let f=Kh(this,w3(u.open,u.close,this._styler),this._isEmpty);return Object.defineProperty(this,i,{value:f}),f}};ka.visible={get(){let i=Kh(this,this._styler,!0);return Object.defineProperty(this,"visible",{value:i}),i}};var LS=["rgb","hex","keyword","hsl","hsv","hwb","ansi","ansi256"];for(let i of LS)ka[i]={get(){let{level:u}=this;return function(...f){let c=w3(A2.color[OS[u]][i](...f),A2.color.close,this._styler);return Kh(this,c,this._isEmpty)}}};for(let i of LS){let u="bg"+i[0].toUpperCase()+i.slice(1);ka[u]={get(){let{level:f}=this;return function(...c){let g=w3(A2.bgColor[OS[f]][i](...c),A2.bgColor.close,this._styler);return Kh(this,g,this._isEmpty)}}}}var Lj=Object.defineProperties(()=>{},zn(dt({},ka),{level:{enumerable:!0,get(){return this._generator.level},set(i){this._generator.level=i}}})),w3=(i,u,f)=>{let c,g;return f===void 0?(c=i,g=u):(c=f.openAll+i,g=u+f.closeAll),{open:i,close:u,openAll:c,closeAll:g,parent:f}},Kh=(i,u,f)=>{let c=(...g)=>Yh(g[0])&&Yh(g[0].raw)?RS(c,MS(c,...g)):RS(c,g.length===1?""+g[0]:g.join(" "));return Object.setPrototypeOf(c,Lj),c._generator=i,c._styler=u,c._isEmpty=f,c},RS=(i,u)=>{if(i.level<=0||!u)return i._isEmpty?"":u;let f=i._styler;if(f===void 0)return u;let{openAll:c,closeAll:g}=f;if(u.indexOf("")!==-1)for(;f!==void 0;)u=Pj(u,f.close,f.open),f=f.parent;let t=u.indexOf(` +`);return t!==-1&&(u=Mj(u,g,c,t)),c+u+g},D3,MS=(i,...u)=>{let[f]=u;if(!Yh(f)||!Yh(f.raw))return u.join(" ");let c=u.slice(1),g=[f.raw[0]];for(let t=1;t{"use strict";var Rj=O2&&O2.__importDefault||function(i){return i&&i.__esModule?i:{default:i}};Object.defineProperty(O2,"__esModule",{value:!0});var I2=Rj(Jh()),Nj=/^(rgb|hsl|hsv|hwb)\(\s?(\d+),\s?(\d+),\s?(\d+)\s?\)$/,Bj=/^(ansi|ansi256)\(\s?(\d+)\s?\)$/,Qh=(i,u)=>u==="foreground"?i:"bg"+i[0].toUpperCase()+i.slice(1);O2.default=(i,u,f)=>{if(!u)return i;if(u in I2.default){let g=Qh(u,f);return I2.default[g](i)}if(u.startsWith("#")){let g=Qh("hex",f);return I2.default[g](u)(i)}if(u.startsWith("ansi")){let g=Bj.exec(u);if(!g)return i;let t=Qh(g[1],f),C=Number(g[2]);return I2.default[t](C)(i)}if(u.startsWith("rgb")||u.startsWith("hsl")||u.startsWith("hsv")||u.startsWith("hwb")){let g=Nj.exec(u);if(!g)return i;let t=Qh(g[1],f),C=Number(g[2]),A=Number(g[3]),x=Number(g[4]);return I2.default[t](C,A,x)(i)}return i}});var BS=Me(P2=>{"use strict";var NS=P2&&P2.__importDefault||function(i){return i&&i.__esModule?i:{default:i}};Object.defineProperty(P2,"__esModule",{value:!0});var jj=NS(mS()),S3=NS(E3());P2.default=(i,u,f,c)=>{if(typeof f.style.borderStyle=="string"){let g=f.yogaNode.getComputedWidth(),t=f.yogaNode.getComputedHeight(),C=f.style.borderColor,A=jj.default[f.style.borderStyle],x=S3.default(A.topLeft+A.horizontal.repeat(g-2)+A.topRight,C,"foreground"),D=(S3.default(A.vertical,C,"foreground")+` +`).repeat(t-2),L=S3.default(A.bottomLeft+A.horizontal.repeat(g-2)+A.bottomRight,C,"foreground");c.write(i,u,x,{transformers:[]}),c.write(i,u+1,D,{transformers:[]}),c.write(i+g-1,u+1,D,{transformers:[]}),c.write(i,u+t-1,L,{transformers:[]})}}});var US=Me(M2=>{"use strict";var _c=M2&&M2.__importDefault||function(i){return i&&i.__esModule?i:{default:i}};Object.defineProperty(M2,"__esModule",{value:!0});var Uj=_c(hc()),qj=_c(jy()),zj=_c(cS()),Wj=_c(Yy()),Hj=_c(aS()),bj=_c(Ky()),Gj=_c(BS()),Vj=(i,u)=>{var f;let c=(f=i.childNodes[0])===null||f===void 0?void 0:f.yogaNode;if(c){let g=c.getComputedLeft(),t=c.getComputedTop();u=` +`.repeat(t)+zj.default(u,g)}return u},jS=(i,u,f)=>{var c;let{offsetX:g=0,offsetY:t=0,transformers:C=[],skipStaticElements:A}=f;if(A&&i.internal_static)return;let{yogaNode:x}=i;if(x){if(x.getDisplay()===Uj.default.DISPLAY_NONE)return;let D=g+x.getComputedLeft(),L=t+x.getComputedTop(),N=C;if(typeof i.internal_transform=="function"&&(N=[i.internal_transform,...C]),i.nodeName==="ink-text"){let j=bj.default(i);if(j.length>0){let $=qj.default(j),h=Hj.default(x);if($>h){let re=(c=i.style.textWrap)!==null&&c!==void 0?c:"wrap";j=Wj.default(j,h,re)}j=Vj(i,j),u.write(D,L,j,{transformers:N})}return}if(i.nodeName==="ink-box"&&Gj.default(D,L,i,u),i.nodeName==="ink-root"||i.nodeName==="ink-box")for(let j of i.childNodes)jS(j,u,{offsetX:D,offsetY:L,transformers:N,skipStaticElements:A})}};M2.default=jS});var zS=Me((fG,qS)=>{"use strict";qS.exports=i=>{i=Object.assign({onlyFirst:!1},i);let u=["[\\u001B\\u009B][[\\]()#;?]*(?:(?:(?:[a-zA-Z\\d]*(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]*)*)?\\u0007)","(?:(?:\\d{1,4}(?:;\\d{0,4})*)?[\\dA-PR-TZcf-ntqry=><~]))"].join("|");return new RegExp(u,i.onlyFirst?void 0:"g")}});var HS=Me((cG,C3)=>{"use strict";var Yj=zS(),WS=i=>typeof i=="string"?i.replace(Yj(),""):i;C3.exports=WS;C3.exports.default=WS});var VS=Me((aG,bS)=>{"use strict";var GS="[\uD800-\uDBFF][\uDC00-\uDFFF]";bS.exports=i=>i&&i.exact?new RegExp(`^${GS}$`):new RegExp(GS,"g")});var $S=Me((dG,T3)=>{"use strict";var $j=HS(),Kj=VS(),YS=i=>$j(i).replace(Kj()," ").length;T3.exports=YS;T3.exports.default=YS});var QS=Me(F2=>{"use strict";var KS=F2&&F2.__importDefault||function(i){return i&&i.__esModule?i:{default:i}};Object.defineProperty(F2,"__esModule",{value:!0});var XS=KS(Gy()),Xj=KS($S()),JS=class{constructor(u){this.writes=[];let{width:f,height:c}=u;this.width=f,this.height=c}write(u,f,c,g){let{transformers:t}=g;!c||this.writes.push({x:u,y:f,text:c,transformers:t})}get(){let u=[];for(let c=0;cc.trimRight()).join(` +`),height:u.length}}};F2.default=JS});var t5=Me(L2=>{"use strict";var x3=L2&&L2.__importDefault||function(i){return i&&i.__esModule?i:{default:i}};Object.defineProperty(L2,"__esModule",{value:!0});var Jj=x3(hc()),ZS=x3(US()),e5=x3(QS());L2.default=(i,u)=>{var f;if(i.yogaNode.setWidth(u),i.yogaNode){i.yogaNode.calculateLayout(void 0,void 0,Jj.default.DIRECTION_LTR);let c=new e5.default({width:i.yogaNode.getComputedWidth(),height:i.yogaNode.getComputedHeight()});ZS.default(i,c,{skipStaticElements:!0});let g;((f=i.staticNode)===null||f===void 0?void 0:f.yogaNode)&&(g=new e5.default({width:i.staticNode.yogaNode.getComputedWidth(),height:i.staticNode.yogaNode.getComputedHeight()}),ZS.default(i.staticNode,g,{skipStaticElements:!1}));let{output:t,height:C}=c.get();return{output:t,outputHeight:C,staticOutput:g?`${g.get().output} +`:""}}return{output:"",outputHeight:0,staticOutput:""}}});var o5=Me((mG,n5)=>{"use strict";var r5=require("stream"),i5=["assert","count","countReset","debug","dir","dirxml","error","group","groupCollapsed","groupEnd","info","log","table","time","timeEnd","timeLog","trace","warn"],k3={},Qj=i=>{let u=new r5.PassThrough,f=new r5.PassThrough;u.write=g=>i("stdout",g),f.write=g=>i("stderr",g);let c=new console.Console(u,f);for(let g of i5)k3[g]=console[g],console[g]=c[g];return()=>{for(let g of i5)console[g]=k3[g];k3={}}};n5.exports=Qj});var O3=Me(A3=>{"use strict";Object.defineProperty(A3,"__esModule",{value:!0});A3.default=new WeakMap});var P3=Me(I3=>{"use strict";Object.defineProperty(I3,"__esModule",{value:!0});var Zj=lr(),u5=Zj.createContext({exit:()=>{}});u5.displayName="InternalAppContext";I3.default=u5});var F3=Me(M3=>{"use strict";Object.defineProperty(M3,"__esModule",{value:!0});var eU=lr(),s5=eU.createContext({stdin:void 0,setRawMode:()=>{},isRawModeSupported:!1,internal_exitOnCtrlC:!0});s5.displayName="InternalStdinContext";M3.default=s5});var R3=Me(L3=>{"use strict";Object.defineProperty(L3,"__esModule",{value:!0});var tU=lr(),l5=tU.createContext({stdout:void 0,write:()=>{}});l5.displayName="InternalStdoutContext";L3.default=l5});var B3=Me(N3=>{"use strict";Object.defineProperty(N3,"__esModule",{value:!0});var nU=lr(),f5=nU.createContext({stderr:void 0,write:()=>{}});f5.displayName="InternalStderrContext";N3.default=f5});var Zh=Me(j3=>{"use strict";Object.defineProperty(j3,"__esModule",{value:!0});var rU=lr(),c5=rU.createContext({activeId:void 0,add:()=>{},remove:()=>{},activate:()=>{},deactivate:()=>{},enableFocus:()=>{},disableFocus:()=>{},focusNext:()=>{},focusPrevious:()=>{}});c5.displayName="InternalFocusContext";j3.default=c5});var d5=Me((EG,a5)=>{"use strict";var iU=/[|\\{}()[\]^$+*?.-]/g;a5.exports=i=>{if(typeof i!="string")throw new TypeError("Expected a string");return i.replace(iU,"\\$&")}});var v5=Me((SG,p5)=>{"use strict";var oU=d5(),h5=[].concat(require("module").builtinModules,"bootstrap_node","node").map(i=>new RegExp(`(?:\\(${i}\\.js:\\d+:\\d+\\)$|^\\s*at ${i}\\.js:\\d+:\\d+$)`));h5.push(/\(internal\/[^:]+:\d+:\d+\)$/,/\s*at internal\/[^:]+:\d+:\d+$/,/\/\.node-spawn-wrap-\w+-\w+\/node:\d+:\d+\)?$/);var em=class{constructor(u){u=dt({ignoredPackages:[]},u),"internals"in u||(u.internals=em.nodeInternals()),"cwd"in u||(u.cwd=process.cwd()),this._cwd=u.cwd.replace(/\\/g,"/"),this._internals=[].concat(u.internals,uU(u.ignoredPackages)),this._wrapCallSite=u.wrapCallSite||!1}static nodeInternals(){return[...h5]}clean(u,f=0){f=" ".repeat(f),Array.isArray(u)||(u=u.split(` +`)),!/^\s*at /.test(u[0])&&/^\s*at /.test(u[1])&&(u=u.slice(1));let c=!1,g=null,t=[];return u.forEach(C=>{if(C=C.replace(/\\/g,"/"),this._internals.some(x=>x.test(C)))return;let A=/^\s*at /.test(C);c?C=C.trimEnd().replace(/^(\s+)at /,"$1"):(C=C.trim(),A&&(C=C.slice(3))),C=C.replace(`${this._cwd}/`,""),C&&(A?(g&&(t.push(g),g=null),t.push(C)):(c=!0,g=C))}),t.map(C=>`${f}${C} +`).join("")}captureString(u,f=this.captureString){typeof u=="function"&&(f=u,u=Infinity);let{stackTraceLimit:c}=Error;u&&(Error.stackTraceLimit=u);let g={};Error.captureStackTrace(g,f);let{stack:t}=g;return Error.stackTraceLimit=c,this.clean(t)}capture(u,f=this.capture){typeof u=="function"&&(f=u,u=Infinity);let{prepareStackTrace:c,stackTraceLimit:g}=Error;Error.prepareStackTrace=(A,x)=>this._wrapCallSite?x.map(this._wrapCallSite):x,u&&(Error.stackTraceLimit=u);let t={};Error.captureStackTrace(t,f);let{stack:C}=t;return Object.assign(Error,{prepareStackTrace:c,stackTraceLimit:g}),C}at(u=this.at){let[f]=this.capture(1,u);if(!f)return{};let c={line:f.getLineNumber(),column:f.getColumnNumber()};m5(c,f.getFileName(),this._cwd),f.isConstructor()&&(c.constructor=!0),f.isEval()&&(c.evalOrigin=f.getEvalOrigin()),f.isNative()&&(c.native=!0);let g;try{g=f.getTypeName()}catch(A){}g&&g!=="Object"&&g!=="[object Object]"&&(c.type=g);let t=f.getFunctionName();t&&(c.function=t);let C=f.getMethodName();return C&&t!==C&&(c.method=C),c}parseLine(u){let f=u&&u.match(sU);if(!f)return null;let c=f[1]==="new",g=f[2],t=f[3],C=f[4],A=Number(f[5]),x=Number(f[6]),D=f[7],L=f[8],N=f[9],j=f[10]==="native",$=f[11]===")",h,re={};if(L&&(re.line=Number(L)),N&&(re.column=Number(N)),$&&D){let ce=0;for(let Q=D.length-1;Q>0;Q--)if(D.charAt(Q)===")")ce++;else if(D.charAt(Q)==="("&&D.charAt(Q-1)===" "&&(ce--,ce===-1&&D.charAt(Q-1)===" ")){let oe=D.slice(0,Q-1);D=D.slice(Q+1),g+=` (${oe}`;break}}if(g){let ce=g.match(lU);ce&&(g=ce[1],h=ce[2])}return m5(re,D,this._cwd),c&&(re.constructor=!0),t&&(re.evalOrigin=t,re.evalLine=A,re.evalColumn=x,re.evalFile=C&&C.replace(/\\/g,"/")),j&&(re.native=!0),g&&(re.function=g),h&&g!==h&&(re.method=h),re}};function m5(i,u,f){u&&(u=u.replace(/\\/g,"/"),u.startsWith(`${f}/`)&&(u=u.slice(f.length+1)),i.file=u)}function uU(i){if(i.length===0)return[];let u=i.map(f=>oU(f));return new RegExp(`[/\\\\]node_modules[/\\\\](?:${u.join("|")})[/\\\\][^:]+:\\d+:\\d+`)}var sU=new RegExp("^(?:\\s*at )?(?:(new) )?(?:(.*?) \\()?(?:eval at ([^ ]+) \\((.+?):(\\d+):(\\d+)\\), )?(?:(.+?):(\\d+):(\\d+)|(native))(\\)?)$"),lU=/^(.*?) \[as (.*?)\]$/;p5.exports=em});var _5=Me((CG,g5)=>{"use strict";g5.exports=(i,u)=>i.replace(/^\t+/gm,f=>" ".repeat(f.length*(u||2)))});var w5=Me((TG,y5)=>{"use strict";var fU=_5(),cU=(i,u)=>{let f=[],c=i-u,g=i+u;for(let t=c;t<=g;t++)f.push(t);return f};y5.exports=(i,u,f)=>{if(typeof i!="string")throw new TypeError("Source code is missing.");if(!u||u<1)throw new TypeError("Line number must start from `1`.");if(i=fU(i).split(/\r?\n/),!(u>i.length))return f=dt({around:3},f),cU(u,f.around).filter(c=>i[c-1]!==void 0).map(c=>({line:c,value:i[c-1]}))}});var tm=Me(hs=>{"use strict";var aU=hs&&hs.__createBinding||(Object.create?function(i,u,f,c){c===void 0&&(c=f),Object.defineProperty(i,c,{enumerable:!0,get:function(){return u[f]}})}:function(i,u,f,c){c===void 0&&(c=f),i[c]=u[f]}),dU=hs&&hs.__setModuleDefault||(Object.create?function(i,u){Object.defineProperty(i,"default",{enumerable:!0,value:u})}:function(i,u){i.default=u}),pU=hs&&hs.__importStar||function(i){if(i&&i.__esModule)return i;var u={};if(i!=null)for(var f in i)f!=="default"&&Object.hasOwnProperty.call(i,f)&&aU(u,i,f);return dU(u,i),u},hU=hs&&hs.__rest||function(i,u){var f={};for(var c in i)Object.prototype.hasOwnProperty.call(i,c)&&u.indexOf(c)<0&&(f[c]=i[c]);if(i!=null&&typeof Object.getOwnPropertySymbols=="function")for(var g=0,c=Object.getOwnPropertySymbols(i);g{var{children:f}=i,c=hU(i,["children"]);let g=Object.assign(Object.assign({},c),{marginLeft:c.marginLeft||c.marginX||c.margin||0,marginRight:c.marginRight||c.marginX||c.margin||0,marginTop:c.marginTop||c.marginY||c.margin||0,marginBottom:c.marginBottom||c.marginY||c.margin||0,paddingLeft:c.paddingLeft||c.paddingX||c.padding||0,paddingRight:c.paddingRight||c.paddingX||c.padding||0,paddingTop:c.paddingTop||c.paddingY||c.padding||0,paddingBottom:c.paddingBottom||c.paddingY||c.padding||0});return D5.default.createElement("ink-box",{ref:u,style:g},f)});U3.displayName="Box";U3.defaultProps={flexDirection:"row",flexGrow:0,flexShrink:1};hs.default=U3});var W3=Me(R2=>{"use strict";var q3=R2&&R2.__importDefault||function(i){return i&&i.__esModule?i:{default:i}};Object.defineProperty(R2,"__esModule",{value:!0});var mU=q3(lr()),Aa=q3(Jh()),E5=q3(E3()),z3=({color:i,backgroundColor:u,dimColor:f,bold:c,italic:g,underline:t,strikethrough:C,inverse:A,wrap:x,children:D})=>{if(D==null)return null;let L=N=>(f&&(N=Aa.default.dim(N)),i&&(N=E5.default(N,i,"foreground")),u&&(N=E5.default(N,u,"background")),c&&(N=Aa.default.bold(N)),g&&(N=Aa.default.italic(N)),t&&(N=Aa.default.underline(N)),C&&(N=Aa.default.strikethrough(N)),A&&(N=Aa.default.inverse(N)),N);return mU.default.createElement("ink-text",{style:{flexGrow:0,flexShrink:1,flexDirection:"row",textWrap:x},internal_transform:L},D)};z3.displayName="Text";z3.defaultProps={dimColor:!1,bold:!1,italic:!1,underline:!1,strikethrough:!1,wrap:"wrap"};R2.default=z3});var x5=Me(ms=>{"use strict";var vU=ms&&ms.__createBinding||(Object.create?function(i,u,f,c){c===void 0&&(c=f),Object.defineProperty(i,c,{enumerable:!0,get:function(){return u[f]}})}:function(i,u,f,c){c===void 0&&(c=f),i[c]=u[f]}),gU=ms&&ms.__setModuleDefault||(Object.create?function(i,u){Object.defineProperty(i,"default",{enumerable:!0,value:u})}:function(i,u){i.default=u}),_U=ms&&ms.__importStar||function(i){if(i&&i.__esModule)return i;var u={};if(i!=null)for(var f in i)f!=="default"&&Object.hasOwnProperty.call(i,f)&&vU(u,i,f);return gU(u,i),u},N2=ms&&ms.__importDefault||function(i){return i&&i.__esModule?i:{default:i}};Object.defineProperty(ms,"__esModule",{value:!0});var S5=_U(require("fs")),ui=N2(lr()),C5=N2(v5()),yU=N2(w5()),ef=N2(tm()),il=N2(W3()),T5=new C5.default({cwd:process.cwd(),internals:C5.default.nodeInternals()}),wU=({error:i})=>{let u=i.stack?i.stack.split(` +`).slice(1):void 0,f=u?T5.parseLine(u[0]):void 0,c,g=0;if((f==null?void 0:f.file)&&(f==null?void 0:f.line)&&S5.existsSync(f.file)){let t=S5.readFileSync(f.file,"utf8");if(c=yU.default(t,f.line),c)for(let{line:C}of c)g=Math.max(g,String(C).length)}return ui.default.createElement(ef.default,{flexDirection:"column",padding:1},ui.default.createElement(ef.default,null,ui.default.createElement(il.default,{backgroundColor:"red",color:"white"}," ","ERROR"," "),ui.default.createElement(il.default,null," ",i.message)),f&&ui.default.createElement(ef.default,{marginTop:1},ui.default.createElement(il.default,{dimColor:!0},f.file,":",f.line,":",f.column)),f&&c&&ui.default.createElement(ef.default,{marginTop:1,flexDirection:"column"},c.map(({line:t,value:C})=>ui.default.createElement(ef.default,{key:t},ui.default.createElement(ef.default,{width:g+1},ui.default.createElement(il.default,{dimColor:t!==f.line,backgroundColor:t===f.line?"red":void 0,color:t===f.line?"white":void 0},String(t).padStart(g," "),":")),ui.default.createElement(il.default,{key:t,backgroundColor:t===f.line?"red":void 0,color:t===f.line?"white":void 0}," "+C)))),i.stack&&ui.default.createElement(ef.default,{marginTop:1,flexDirection:"column"},i.stack.split(` +`).slice(1).map(t=>{let C=T5.parseLine(t);return C?ui.default.createElement(ef.default,{key:t},ui.default.createElement(il.default,{dimColor:!0},"- "),ui.default.createElement(il.default,{dimColor:!0,bold:!0},C.function),ui.default.createElement(il.default,{dimColor:!0,color:"gray"}," ","(",C.file,":",C.line,":",C.column,")")):ui.default.createElement(ef.default,{key:t},ui.default.createElement(il.default,{dimColor:!0},"- "),ui.default.createElement(il.default,{dimColor:!0,bold:!0},t))})))};ms.default=wU});var A5=Me(vs=>{"use strict";var DU=vs&&vs.__createBinding||(Object.create?function(i,u,f,c){c===void 0&&(c=f),Object.defineProperty(i,c,{enumerable:!0,get:function(){return u[f]}})}:function(i,u,f,c){c===void 0&&(c=f),i[c]=u[f]}),EU=vs&&vs.__setModuleDefault||(Object.create?function(i,u){Object.defineProperty(i,"default",{enumerable:!0,value:u})}:function(i,u){i.default=u}),SU=vs&&vs.__importStar||function(i){if(i&&i.__esModule)return i;var u={};if(i!=null)for(var f in i)f!=="default"&&Object.hasOwnProperty.call(i,f)&&DU(u,i,f);return EU(u,i),u},yc=vs&&vs.__importDefault||function(i){return i&&i.__esModule?i:{default:i}};Object.defineProperty(vs,"__esModule",{value:!0});var wc=SU(lr()),k5=yc(gy()),CU=yc(P3()),TU=yc(F3()),xU=yc(R3()),kU=yc(B3()),AU=yc(Zh()),OU=yc(x5()),IU=" ",PU="",MU="",H3=class extends wc.PureComponent{constructor(){super(...arguments);this.state={isFocusEnabled:!0,activeFocusId:void 0,focusables:[],error:void 0},this.rawModeEnabledCount=0,this.handleSetRawMode=u=>{let{stdin:f}=this.props;if(!this.isRawModeSupported())throw f===process.stdin?new Error(`Raw mode is not supported on the current process.stdin, which Ink uses as input stream by default. +Read about how to prevent this error on https://github.com/vadimdemedes/ink/#israwmodesupported`):new Error(`Raw mode is not supported on the stdin provided to Ink. +Read about how to prevent this error on https://github.com/vadimdemedes/ink/#israwmodesupported`);if(f.setEncoding("utf8"),u){this.rawModeEnabledCount===0&&(f.addListener("data",this.handleInput),f.resume(),f.setRawMode(!0)),this.rawModeEnabledCount++;return}--this.rawModeEnabledCount==0&&(f.setRawMode(!1),f.removeListener("data",this.handleInput),f.pause())},this.handleInput=u=>{u===""&&this.props.exitOnCtrlC&&this.handleExit(),u===MU&&this.state.activeFocusId&&this.setState({activeFocusId:void 0}),this.state.isFocusEnabled&&this.state.focusables.length>0&&(u===IU&&this.focusNext(),u===PU&&this.focusPrevious())},this.handleExit=u=>{this.isRawModeSupported()&&this.handleSetRawMode(!1),this.props.onExit(u)},this.enableFocus=()=>{this.setState({isFocusEnabled:!0})},this.disableFocus=()=>{this.setState({isFocusEnabled:!1})},this.focusNext=()=>{this.setState(u=>{let f=u.focusables[0].id;return{activeFocusId:this.findNextFocusable(u)||f}})},this.focusPrevious=()=>{this.setState(u=>{let f=u.focusables[u.focusables.length-1].id;return{activeFocusId:this.findPreviousFocusable(u)||f}})},this.addFocusable=(u,{autoFocus:f})=>{this.setState(c=>{let g=c.activeFocusId;return!g&&f&&(g=u),{activeFocusId:g,focusables:[...c.focusables,{id:u,isActive:!0}]}})},this.removeFocusable=u=>{this.setState(f=>({activeFocusId:f.activeFocusId===u?void 0:f.activeFocusId,focusables:f.focusables.filter(c=>c.id!==u)}))},this.activateFocusable=u=>{this.setState(f=>({focusables:f.focusables.map(c=>c.id!==u?c:{id:u,isActive:!0})}))},this.deactivateFocusable=u=>{this.setState(f=>({activeFocusId:f.activeFocusId===u?void 0:f.activeFocusId,focusables:f.focusables.map(c=>c.id!==u?c:{id:u,isActive:!1})}))},this.findNextFocusable=u=>{let f=u.focusables.findIndex(c=>c.id===u.activeFocusId);for(let c=f+1;c{let f=u.focusables.findIndex(c=>c.id===u.activeFocusId);for(let c=f-1;c>=0;c--)if(u.focusables[c].isActive)return u.focusables[c].id}}static getDerivedStateFromError(u){return{error:u}}isRawModeSupported(){return this.props.stdin.isTTY}render(){return wc.default.createElement(CU.default.Provider,{value:{exit:this.handleExit}},wc.default.createElement(TU.default.Provider,{value:{stdin:this.props.stdin,setRawMode:this.handleSetRawMode,isRawModeSupported:this.isRawModeSupported(),internal_exitOnCtrlC:this.props.exitOnCtrlC}},wc.default.createElement(xU.default.Provider,{value:{stdout:this.props.stdout,write:this.props.writeToStdout}},wc.default.createElement(kU.default.Provider,{value:{stderr:this.props.stderr,write:this.props.writeToStderr}},wc.default.createElement(AU.default.Provider,{value:{activeId:this.state.activeFocusId,add:this.addFocusable,remove:this.removeFocusable,activate:this.activateFocusable,deactivate:this.deactivateFocusable,enableFocus:this.enableFocus,disableFocus:this.disableFocus,focusNext:this.focusNext,focusPrevious:this.focusPrevious}},this.state.error?wc.default.createElement(OU.default,{error:this.state.error}):this.props.children)))))}componentDidMount(){k5.default.hide(this.props.stdout)}componentWillUnmount(){k5.default.show(this.props.stdout),this.isRawModeSupported()&&this.handleSetRawMode(!1)}componentDidCatch(u){this.handleExit(u)}};vs.default=H3;H3.displayName="InternalApp"});var M5=Me(gs=>{"use strict";var FU=gs&&gs.__createBinding||(Object.create?function(i,u,f,c){c===void 0&&(c=f),Object.defineProperty(i,c,{enumerable:!0,get:function(){return u[f]}})}:function(i,u,f,c){c===void 0&&(c=f),i[c]=u[f]}),LU=gs&&gs.__setModuleDefault||(Object.create?function(i,u){Object.defineProperty(i,"default",{enumerable:!0,value:u})}:function(i,u){i.default=u}),RU=gs&&gs.__importStar||function(i){if(i&&i.__esModule)return i;var u={};if(i!=null)for(var f in i)f!=="default"&&Object.hasOwnProperty.call(i,f)&&FU(u,i,f);return LU(u,i),u},_s=gs&&gs.__importDefault||function(i){return i&&i.__esModule?i:{default:i}};Object.defineProperty(gs,"__esModule",{value:!0});var NU=_s(lr()),O5=AD(),BU=_s(WD()),jU=_s(ay()),UU=_s(KD()),qU=_s(JD()),nm=_s(lS()),zU=_s(t5()),WU=_s(vy()),HU=_s(o5()),bU=RU(Xy()),GU=_s(O3()),VU=_s(A5()),Oa=process.env.CI==="false"?!1:UU.default,I5=()=>{},P5=class{constructor(u){this.resolveExitPromise=()=>{},this.rejectExitPromise=()=>{},this.unsubscribeExit=()=>{},this.onRender=()=>{if(this.isUnmounted)return;let{output:f,outputHeight:c,staticOutput:g}=zU.default(this.rootNode,this.options.stdout.columns||80),t=g&&g!==` +`;if(this.options.debug){t&&(this.fullStaticOutput+=g),this.options.stdout.write(this.fullStaticOutput+f);return}if(Oa){t&&this.options.stdout.write(g),this.lastOutput=f;return}if(t&&(this.fullStaticOutput+=g),c>=this.options.stdout.rows){this.options.stdout.write(jU.default.clearTerminal+this.fullStaticOutput+f),this.lastOutput=f;return}t&&(this.log.clear(),this.options.stdout.write(g),this.log(f)),!t&&f!==this.lastOutput&&this.throttledLog(f),this.lastOutput=f},qU.default(this),this.options=u,this.rootNode=bU.createNode("ink-root"),this.rootNode.onRender=u.debug?this.onRender:O5.throttle(this.onRender,32,{leading:!0,trailing:!0}),this.rootNode.onImmediateRender=this.onRender,this.log=BU.default.create(u.stdout),this.throttledLog=u.debug?this.log:O5.throttle(this.log,void 0,{leading:!0,trailing:!0}),this.isUnmounted=!1,this.lastOutput="",this.fullStaticOutput="",this.container=nm.default.createContainer(this.rootNode,!1,!1),this.unsubscribeExit=WU.default(this.unmount,{alwaysLast:!1}),process.env.DEV==="true"&&nm.default.injectIntoDevTools({bundleType:0,version:"16.13.1",rendererPackageName:"ink"}),u.patchConsole&&this.patchConsole(),Oa||(u.stdout.on("resize",this.onRender),this.unsubscribeResize=()=>{u.stdout.off("resize",this.onRender)})}render(u){let f=NU.default.createElement(VU.default,{stdin:this.options.stdin,stdout:this.options.stdout,stderr:this.options.stderr,writeToStdout:this.writeToStdout,writeToStderr:this.writeToStderr,exitOnCtrlC:this.options.exitOnCtrlC,onExit:this.unmount},u);nm.default.updateContainer(f,this.container,null,I5)}writeToStdout(u){if(!this.isUnmounted){if(this.options.debug){this.options.stdout.write(u+this.fullStaticOutput+this.lastOutput);return}if(Oa){this.options.stdout.write(u);return}this.log.clear(),this.options.stdout.write(u),this.log(this.lastOutput)}}writeToStderr(u){if(!this.isUnmounted){if(this.options.debug){this.options.stderr.write(u),this.options.stdout.write(this.fullStaticOutput+this.lastOutput);return}if(Oa){this.options.stderr.write(u);return}this.log.clear(),this.options.stderr.write(u),this.log(this.lastOutput)}}unmount(u){this.isUnmounted||(this.onRender(),this.unsubscribeExit(),typeof this.restoreConsole=="function"&&this.restoreConsole(),typeof this.unsubscribeResize=="function"&&this.unsubscribeResize(),Oa?this.options.stdout.write(this.lastOutput+` +`):this.options.debug||this.log.done(),this.isUnmounted=!0,nm.default.updateContainer(null,this.container,null,I5),GU.default.delete(this.options.stdout),u instanceof Error?this.rejectExitPromise(u):this.resolveExitPromise())}waitUntilExit(){return this.exitPromise||(this.exitPromise=new Promise((u,f)=>{this.resolveExitPromise=u,this.rejectExitPromise=f})),this.exitPromise}clear(){!Oa&&!this.options.debug&&this.log.clear()}patchConsole(){this.options.debug||(this.restoreConsole=HU.default((u,f)=>{u==="stdout"&&this.writeToStdout(f),u==="stderr"&&(f.startsWith("The above error occurred")||this.writeToStderr(f))}))}};gs.default=P5});var L5=Me(B2=>{"use strict";var F5=B2&&B2.__importDefault||function(i){return i&&i.__esModule?i:{default:i}};Object.defineProperty(B2,"__esModule",{value:!0});var YU=F5(M5()),rm=F5(O3()),$U=require("stream"),JU=(i,u)=>{let f=Object.assign({stdout:process.stdout,stdin:process.stdin,stderr:process.stderr,debug:!1,exitOnCtrlC:!0,patchConsole:!0},KU(u)),c=XU(f.stdout,()=>new YU.default(f));return c.render(i),{rerender:c.render,unmount:()=>c.unmount(),waitUntilExit:c.waitUntilExit,cleanup:()=>rm.default.delete(f.stdout),clear:c.clear}};B2.default=JU;var KU=(i={})=>i instanceof $U.Stream?{stdout:i,stdin:process.stdin}:i,XU=(i,u)=>{let f;return rm.default.has(i)?f=rm.default.get(i):(f=u(),rm.default.set(i,f)),f}});var N5=Me(tf=>{"use strict";var QU=tf&&tf.__createBinding||(Object.create?function(i,u,f,c){c===void 0&&(c=f),Object.defineProperty(i,c,{enumerable:!0,get:function(){return u[f]}})}:function(i,u,f,c){c===void 0&&(c=f),i[c]=u[f]}),ZU=tf&&tf.__setModuleDefault||(Object.create?function(i,u){Object.defineProperty(i,"default",{enumerable:!0,value:u})}:function(i,u){i.default=u}),eq=tf&&tf.__importStar||function(i){if(i&&i.__esModule)return i;var u={};if(i!=null)for(var f in i)f!=="default"&&Object.hasOwnProperty.call(i,f)&&QU(u,i,f);return ZU(u,i),u};Object.defineProperty(tf,"__esModule",{value:!0});var j2=eq(lr()),R5=i=>{let{items:u,children:f,style:c}=i,[g,t]=j2.useState(0),C=j2.useMemo(()=>u.slice(g),[u,g]);j2.useLayoutEffect(()=>{t(u.length)},[u.length]);let A=C.map((D,L)=>f(D,g+L)),x=j2.useMemo(()=>Object.assign({position:"absolute",flexDirection:"column"},c),[c]);return j2.default.createElement("ink-box",{internal_static:!0,style:x},A)};R5.displayName="Static";tf.default=R5});var j5=Me(U2=>{"use strict";var tq=U2&&U2.__importDefault||function(i){return i&&i.__esModule?i:{default:i}};Object.defineProperty(U2,"__esModule",{value:!0});var nq=tq(lr()),B5=({children:i,transform:u})=>i==null?null:nq.default.createElement("ink-text",{style:{flexGrow:0,flexShrink:1,flexDirection:"row"},internal_transform:u},i);B5.displayName="Transform";U2.default=B5});var q5=Me(q2=>{"use strict";var rq=q2&&q2.__importDefault||function(i){return i&&i.__esModule?i:{default:i}};Object.defineProperty(q2,"__esModule",{value:!0});var iq=rq(lr()),U5=({count:i=1})=>iq.default.createElement("ink-text",null,` +`.repeat(i));U5.displayName="Newline";q2.default=U5});var H5=Me(z2=>{"use strict";var z5=z2&&z2.__importDefault||function(i){return i&&i.__esModule?i:{default:i}};Object.defineProperty(z2,"__esModule",{value:!0});var oq=z5(lr()),uq=z5(tm()),W5=()=>oq.default.createElement(uq.default,{flexGrow:1});W5.displayName="Spacer";z2.default=W5});var im=Me(W2=>{"use strict";var sq=W2&&W2.__importDefault||function(i){return i&&i.__esModule?i:{default:i}};Object.defineProperty(W2,"__esModule",{value:!0});var lq=lr(),fq=sq(F3()),cq=()=>lq.useContext(fq.default);W2.default=cq});var G5=Me(H2=>{"use strict";var aq=H2&&H2.__importDefault||function(i){return i&&i.__esModule?i:{default:i}};Object.defineProperty(H2,"__esModule",{value:!0});var b5=lr(),dq=aq(im()),pq=(i,u={})=>{let{stdin:f,setRawMode:c,internal_exitOnCtrlC:g}=dq.default();b5.useEffect(()=>{if(u.isActive!==!1)return c(!0),()=>{c(!1)}},[u.isActive,c]),b5.useEffect(()=>{if(u.isActive===!1)return;let t=C=>{let A=String(C),x={upArrow:A==="",downArrow:A==="",leftArrow:A==="",rightArrow:A==="",pageDown:A==="[6~",pageUp:A==="[5~",return:A==="\r",escape:A==="",ctrl:!1,shift:!1,tab:A===" "||A==="",backspace:A==="\b",delete:A==="\x7F"||A==="[3~",meta:!1};A<=""&&!x.return&&(A=String.fromCharCode(A.charCodeAt(0)+"a".charCodeAt(0)-1),x.ctrl=!0),A.startsWith("")&&(A=A.slice(1),x.meta=!0);let D=A>="A"&&A<="Z",L=A>="\u0410"&&A<="\u042F";A.length===1&&(D||L)&&(x.shift=!0),x.tab&&A==="[Z"&&(x.shift=!0),(x.tab||x.backspace||x.delete)&&(A=""),(!(A==="c"&&x.ctrl)||!g)&&i(A,x)};return f==null||f.on("data",t),()=>{f==null||f.off("data",t)}},[u.isActive,f,g,i])};H2.default=pq});var V5=Me(b2=>{"use strict";var hq=b2&&b2.__importDefault||function(i){return i&&i.__esModule?i:{default:i}};Object.defineProperty(b2,"__esModule",{value:!0});var mq=lr(),vq=hq(P3()),gq=()=>mq.useContext(vq.default);b2.default=gq});var Y5=Me(G2=>{"use strict";var _q=G2&&G2.__importDefault||function(i){return i&&i.__esModule?i:{default:i}};Object.defineProperty(G2,"__esModule",{value:!0});var yq=lr(),wq=_q(R3()),Dq=()=>yq.useContext(wq.default);G2.default=Dq});var $5=Me(V2=>{"use strict";var Eq=V2&&V2.__importDefault||function(i){return i&&i.__esModule?i:{default:i}};Object.defineProperty(V2,"__esModule",{value:!0});var Sq=lr(),Cq=Eq(B3()),Tq=()=>Sq.useContext(Cq.default);V2.default=Tq});var X5=Me(Y2=>{"use strict";var K5=Y2&&Y2.__importDefault||function(i){return i&&i.__esModule?i:{default:i}};Object.defineProperty(Y2,"__esModule",{value:!0});var $2=lr(),xq=K5(Zh()),kq=K5(im()),Aq=({isActive:i=!0,autoFocus:u=!1}={})=>{let{isRawModeSupported:f,setRawMode:c}=kq.default(),{activeId:g,add:t,remove:C,activate:A,deactivate:x}=$2.useContext(xq.default),D=$2.useMemo(()=>Math.random().toString().slice(2,7),[]);return $2.useEffect(()=>(t(D,{autoFocus:u}),()=>{C(D)}),[D,u]),$2.useEffect(()=>{i?A(D):x(D)},[i,D]),$2.useEffect(()=>{if(!(!f||!i))return c(!0),()=>{c(!1)}},[i]),{isFocused:Boolean(D)&&g===D}};Y2.default=Aq});var J5=Me(K2=>{"use strict";var Oq=K2&&K2.__importDefault||function(i){return i&&i.__esModule?i:{default:i}};Object.defineProperty(K2,"__esModule",{value:!0});var Iq=lr(),Pq=Oq(Zh()),Mq=()=>{let i=Iq.useContext(Pq.default);return{enableFocus:i.enableFocus,disableFocus:i.disableFocus,focusNext:i.focusNext,focusPrevious:i.focusPrevious}};K2.default=Mq});var Q5=Me(b3=>{"use strict";Object.defineProperty(b3,"__esModule",{value:!0});b3.default=i=>{var u,f,c,g;return{width:(f=(u=i.yogaNode)===null||u===void 0?void 0:u.getComputedWidth())!==null&&f!==void 0?f:0,height:(g=(c=i.yogaNode)===null||c===void 0?void 0:c.getComputedHeight())!==null&&g!==void 0?g:0}}});var ys=Me(ji=>{"use strict";Object.defineProperty(ji,"__esModule",{value:!0});var Fq=L5();Object.defineProperty(ji,"render",{enumerable:!0,get:function(){return Fq.default}});var Lq=tm();Object.defineProperty(ji,"Box",{enumerable:!0,get:function(){return Lq.default}});var Rq=W3();Object.defineProperty(ji,"Text",{enumerable:!0,get:function(){return Rq.default}});var Nq=N5();Object.defineProperty(ji,"Static",{enumerable:!0,get:function(){return Nq.default}});var Bq=j5();Object.defineProperty(ji,"Transform",{enumerable:!0,get:function(){return Bq.default}});var jq=q5();Object.defineProperty(ji,"Newline",{enumerable:!0,get:function(){return jq.default}});var Uq=H5();Object.defineProperty(ji,"Spacer",{enumerable:!0,get:function(){return Uq.default}});var qq=G5();Object.defineProperty(ji,"useInput",{enumerable:!0,get:function(){return qq.default}});var zq=V5();Object.defineProperty(ji,"useApp",{enumerable:!0,get:function(){return zq.default}});var Wq=im();Object.defineProperty(ji,"useStdin",{enumerable:!0,get:function(){return Wq.default}});var Hq=Y5();Object.defineProperty(ji,"useStdout",{enumerable:!0,get:function(){return Hq.default}});var bq=$5();Object.defineProperty(ji,"useStderr",{enumerable:!0,get:function(){return bq.default}});var Gq=X5();Object.defineProperty(ji,"useFocus",{enumerable:!0,get:function(){return Gq.default}});var Vq=J5();Object.defineProperty(ji,"useFocusManager",{enumerable:!0,get:function(){return Vq.default}});var Yq=Q5();Object.defineProperty(ji,"measureElement",{enumerable:!0,get:function(){return Yq.default}})});var lC=Me(X2=>{"use strict";Object.defineProperty(X2,"__esModule",{value:!0});X2.UncontrolledTextInput=void 0;var oC=lr(),Y3=lr(),uC=ys(),Sc=Jh(),sC=({value:i,placeholder:u="",focus:f=!0,mask:c,highlightPastedText:g=!1,showCursor:t=!0,onChange:C,onSubmit:A})=>{let[{cursorOffset:x,cursorWidth:D},L]=Y3.useState({cursorOffset:(i||"").length,cursorWidth:0});Y3.useEffect(()=>{L(re=>{if(!f||!t)return re;let ce=i||"";return re.cursorOffset>ce.length-1?{cursorOffset:ce.length,cursorWidth:0}:re})},[i,f,t]);let N=g?D:0,j=c?c.repeat(i.length):i,$=j,h=u?Sc.grey(u):void 0;if(t&&f){h=u.length>0?Sc.inverse(u[0])+Sc.grey(u.slice(1)):Sc.inverse(" "),$=j.length>0?"":Sc.inverse(" ");let re=0;for(let ce of j)re>=x-N&&re<=x?$+=Sc.inverse(ce):$+=ce,re++;j.length>0&&x===j.length&&($+=Sc.inverse(" "))}return uC.useInput((re,ce)=>{if(ce.upArrow||ce.downArrow||ce.ctrl&&re==="c"||ce.tab||ce.shift&&ce.tab)return;if(ce.return){A&&A(i);return}let Q=x,oe=i,Se=0;ce.leftArrow?t&&Q--:ce.rightArrow?t&&Q++:ce.backspace||ce.delete?x>0&&(oe=i.slice(0,x-1)+i.slice(x,i.length),Q--):(oe=i.slice(0,x)+re+i.slice(x,i.length),Q+=re.length,re.length>1&&(Se=re.length)),x<0&&(Q=0),x>i.length&&(Q=i.length),L({cursorOffset:Q,cursorWidth:Se}),oe!==i&&C(oe)},{isActive:f}),oC.createElement(uC.Text,null,u?j.length>0?$:h:$)};X2.default=sC;X2.UncontrolledTextInput=i=>{let[u,f]=Y3.useState("");return oC.createElement(sC,Object.assign({},i,{value:u,onChange:f}))}});var cC=Me(pm=>{"use strict";Object.defineProperty(pm,"__esModule",{value:!0});function J2(i){let u=[...i.caches],f=u.shift();return f===void 0?fC():{get(c,g,t={miss:()=>Promise.resolve()}){return f.get(c,g,t).catch(()=>J2({caches:u}).get(c,g,t))},set(c,g){return f.set(c,g).catch(()=>J2({caches:u}).set(c,g))},delete(c){return f.delete(c).catch(()=>J2({caches:u}).delete(c))},clear(){return f.clear().catch(()=>J2({caches:u}).clear())}}}function fC(){return{get(i,u,f={miss:()=>Promise.resolve()}){return u().then(g=>Promise.all([g,f.miss(g)])).then(([g])=>g)},set(i,u){return Promise.resolve(u)},delete(i){return Promise.resolve()},clear(){return Promise.resolve()}}}pm.createFallbackableCache=J2;pm.createNullCache=fC});var dC=Me((fV,aC)=>{aC.exports=cC()});var pC=Me($3=>{"use strict";Object.defineProperty($3,"__esModule",{value:!0});function $q(i={serializable:!0}){let u={};return{get(f,c,g={miss:()=>Promise.resolve()}){let t=JSON.stringify(f);if(t in u)return Promise.resolve(i.serializable?JSON.parse(u[t]):u[t]);let C=c(),A=g&&g.miss||(()=>Promise.resolve());return C.then(x=>A(x)).then(()=>C)},set(f,c){return u[JSON.stringify(f)]=i.serializable?JSON.stringify(c):c,Promise.resolve(c)},delete(f){return delete u[JSON.stringify(f)],Promise.resolve()},clear(){return u={},Promise.resolve()}}}$3.createInMemoryCache=$q});var mC=Me((aV,hC)=>{hC.exports=pC()});var gC=Me(ws=>{"use strict";Object.defineProperty(ws,"__esModule",{value:!0});function Kq(i,u,f){let c={"x-algolia-api-key":f,"x-algolia-application-id":u};return{headers(){return i===K3.WithinHeaders?c:{}},queryParameters(){return i===K3.WithinQueryParameters?c:{}}}}function Xq(i){let u=0,f=()=>(u++,new Promise(c=>{setTimeout(()=>{c(i(f))},Math.min(100*u,1e3))}));return i(f)}function vC(i,u=(f,c)=>Promise.resolve()){return Object.assign(i,{wait(f){return vC(i.then(c=>Promise.all([u(c,f),c])).then(c=>c[1]))}})}function Jq(i){let u=i.length-1;for(u;u>0;u--){let f=Math.floor(Math.random()*(u+1)),c=i[u];i[u]=i[f],i[f]=c}return i}function Qq(i,u){return Object.keys(u!==void 0?u:{}).forEach(f=>{i[f]=u[f](i)}),i}function Zq(i,...u){let f=0;return i.replace(/%s/g,()=>encodeURIComponent(u[f++]))}var ez="4.2.0",tz=i=>()=>i.transporter.requester.destroy(),K3={WithinQueryParameters:0,WithinHeaders:1};ws.AuthMode=K3;ws.addMethods=Qq;ws.createAuth=Kq;ws.createRetryablePromise=Xq;ws.createWaitablePromise=vC;ws.destroy=tz;ws.encode=Zq;ws.shuffle=Jq;ws.version=ez});var Q2=Me((pV,_C)=>{_C.exports=gC()});var yC=Me(X3=>{"use strict";Object.defineProperty(X3,"__esModule",{value:!0});var nz={Delete:"DELETE",Get:"GET",Post:"POST",Put:"PUT"};X3.MethodEnum=nz});var Z2=Me((mV,wC)=>{wC.exports=yC()});var RC=Me(y0=>{"use strict";Object.defineProperty(y0,"__esModule",{value:!0});var DC=Z2();function J3(i,u){let f=i||{},c=f.data||{};return Object.keys(f).forEach(g=>{["timeout","headers","queryParameters","data","cacheable"].indexOf(g)===-1&&(c[g]=f[g])}),{data:Object.entries(c).length>0?c:void 0,timeout:f.timeout||u,headers:f.headers||{},queryParameters:f.queryParameters||{},cacheable:f.cacheable}}var hm={Read:1,Write:2,Any:3},Ia={Up:1,Down:2,Timeouted:3},EC=2*60*1e3;function Q3(i,u=Ia.Up){return zn(dt({},i),{status:u,lastUpdate:Date.now()})}function SC(i){return i.status===Ia.Up||Date.now()-i.lastUpdate>EC}function CC(i){return i.status===Ia.Timeouted&&Date.now()-i.lastUpdate<=EC}function Z3(i){return{protocol:i.protocol||"https",url:i.url,accept:i.accept||hm.Any}}function rz(i,u){return Promise.all(u.map(f=>i.get(f,()=>Promise.resolve(Q3(f))))).then(f=>{let c=f.filter(A=>SC(A)),g=f.filter(A=>CC(A)),t=[...c,...g],C=t.length>0?t.map(A=>Z3(A)):u;return{getTimeout(A,x){return(g.length===0&&A===0?1:g.length+3+A)*x},statelessHosts:C}})}var iz=({isTimedOut:i,status:u})=>!i&&~~u==0,oz=i=>{let u=i.status;return i.isTimedOut||iz(i)||~~(u/100)!=2&&~~(u/100)!=4},uz=({status:i})=>~~(i/100)==2,sz=(i,u)=>oz(i)?u.onRetry(i):uz(i)?u.onSucess(i):u.onFail(i);function PC(i,u,f,c){let g=[],t=AC(f,c),C=OC(i,c),A=f.method,x=f.method!==DC.MethodEnum.Get?{}:dt(dt({},f.data),c.data),D=dt(dt(dt({"x-algolia-agent":i.userAgent.value},i.queryParameters),x),c.queryParameters),L=0,N=(j,$)=>{let h=j.pop();if(h===void 0)throw IC(ew(g));let re={data:t,headers:C,method:A,url:kC(h,f.path,D),connectTimeout:$(L,i.timeouts.connect),responseTimeout:$(L,c.timeout)},ce=oe=>{let Se={request:re,response:oe,host:h,triesLeft:j.length};return g.push(Se),Se},Q={onSucess:oe=>TC(oe),onRetry(oe){let Se=ce(oe);return oe.isTimedOut&&L++,Promise.all([i.logger.info("Retryable failure",tw(Se)),i.hostsCache.set(h,Q3(h,oe.isTimedOut?Ia.Timeouted:Ia.Down))]).then(()=>N(j,$))},onFail(oe){throw ce(oe),xC(oe,ew(g))}};return i.requester.send(re).then(oe=>sz(oe,Q))};return rz(i.hostsCache,u).then(j=>N([...j.statelessHosts].reverse(),j.getTimeout))}function lz(i){let{hostsCache:u,logger:f,requester:c,requestsCache:g,responsesCache:t,timeouts:C,userAgent:A,hosts:x,queryParameters:D,headers:L}=i,N={hostsCache:u,logger:f,requester:c,requestsCache:g,responsesCache:t,timeouts:C,userAgent:A,headers:L,queryParameters:D,hosts:x.map(j=>Z3(j)),read(j,$){let h=J3($,N.timeouts.read),re=()=>PC(N,N.hosts.filter(oe=>(oe.accept&hm.Read)!=0),j,h);if((h.cacheable!==void 0?h.cacheable:j.cacheable)!==!0)return re();let Q={request:j,mappedRequestOptions:h,transporter:{queryParameters:N.queryParameters,headers:N.headers}};return N.responsesCache.get(Q,()=>N.requestsCache.get(Q,()=>N.requestsCache.set(Q,re()).then(oe=>Promise.all([N.requestsCache.delete(Q),oe]),oe=>Promise.all([N.requestsCache.delete(Q),Promise.reject(oe)])).then(([oe,Se])=>Se)),{miss:oe=>N.responsesCache.set(Q,oe)})},write(j,$){return PC(N,N.hosts.filter(h=>(h.accept&hm.Write)!=0),j,J3($,N.timeouts.write))}};return N}function fz(i){let u={value:`Algolia for JavaScript (${i})`,add(f){let c=`; ${f.segment}${f.version!==void 0?` (${f.version})`:""}`;return u.value.indexOf(c)===-1&&(u.value=`${u.value}${c}`),u}};return u}function TC(i){try{return JSON.parse(i.content)}catch(u){throw MC(u.message,i)}}function xC({content:i,status:u},f){let c=i;try{c=JSON.parse(i).message}catch(g){}return FC(c,u,f)}function cz(i,...u){let f=0;return i.replace(/%s/g,()=>encodeURIComponent(u[f++]))}function kC(i,u,f){let c=LC(f),g=`${i.protocol}://${i.url}/${u.charAt(0)==="/"?u.substr(1):u}`;return c.length&&(g+=`?${c}`),g}function LC(i){let u=f=>Object.prototype.toString.call(f)==="[object Object]"||Object.prototype.toString.call(f)==="[object Array]";return Object.keys(i).map(f=>cz("%s=%s",f,u(i[f])?JSON.stringify(i[f]):i[f])).join("&")}function AC(i,u){if(i.method===DC.MethodEnum.Get||i.data===void 0&&u.data===void 0)return;let f=Array.isArray(i.data)?i.data:dt(dt({},i.data),u.data);return JSON.stringify(f)}function OC(i,u){let f=dt(dt({},i.headers),u.headers),c={};return Object.keys(f).forEach(g=>{let t=f[g];c[g.toLowerCase()]=t}),c}function ew(i){return i.map(u=>tw(u))}function tw(i){let u=i.request.headers["x-algolia-api-key"]?{"x-algolia-api-key":"*****"}:{};return zn(dt({},i),{request:zn(dt({},i.request),{headers:dt(dt({},i.request.headers),u)})})}function FC(i,u,f){return{name:"ApiError",message:i,status:u,transporterStackTrace:f}}function MC(i,u){return{name:"DeserializationError",message:i,response:u}}function IC(i){return{name:"RetryError",message:"Unreachable hosts - your application id may be incorrect. If the error persists, contact support@algolia.com.",transporterStackTrace:i}}y0.CallEnum=hm;y0.HostStatusEnum=Ia;y0.createApiError=FC;y0.createDeserializationError=MC;y0.createMappedRequestOptions=J3;y0.createRetryError=IC;y0.createStatefulHost=Q3;y0.createStatelessHost=Z3;y0.createTransporter=lz;y0.createUserAgent=fz;y0.deserializeFailure=xC;y0.deserializeSuccess=TC;y0.isStatefulHostTimeouted=CC;y0.isStatefulHostUp=SC;y0.serializeData=AC;y0.serializeHeaders=OC;y0.serializeQueryParameters=LC;y0.serializeUrl=kC;y0.stackFrameWithoutCredentials=tw;y0.stackTraceWithoutCredentials=ew});var ed=Me((gV,NC)=>{NC.exports=RC()});var BC=Me(Hf=>{"use strict";Object.defineProperty(Hf,"__esModule",{value:!0});var Pa=Q2(),az=ed(),td=Z2(),dz=i=>{let u=i.region||"us",f=Pa.createAuth(Pa.AuthMode.WithinHeaders,i.appId,i.apiKey),c=az.createTransporter(zn(dt({hosts:[{url:`analytics.${u}.algolia.com`}]},i),{headers:dt(zn(dt({},f.headers()),{"content-type":"application/json"}),i.headers),queryParameters:dt(dt({},f.queryParameters()),i.queryParameters)})),g=i.appId;return Pa.addMethods({appId:g,transporter:c},i.methods)},pz=i=>(u,f)=>i.transporter.write({method:td.MethodEnum.Post,path:"2/abtests",data:u},f),hz=i=>(u,f)=>i.transporter.write({method:td.MethodEnum.Delete,path:Pa.encode("2/abtests/%s",u)},f),mz=i=>(u,f)=>i.transporter.read({method:td.MethodEnum.Get,path:Pa.encode("2/abtests/%s",u)},f),vz=i=>u=>i.transporter.read({method:td.MethodEnum.Get,path:"2/abtests"},u),gz=i=>(u,f)=>i.transporter.write({method:td.MethodEnum.Post,path:Pa.encode("2/abtests/%s/stop",u)},f);Hf.addABTest=pz;Hf.createAnalyticsClient=dz;Hf.deleteABTest=hz;Hf.getABTest=mz;Hf.getABTests=vz;Hf.stopABTest=gz});var UC=Me((yV,jC)=>{jC.exports=BC()});var zC=Me(nd=>{"use strict";Object.defineProperty(nd,"__esModule",{value:!0});var nw=Q2(),_z=ed(),qC=Z2(),yz=i=>{let u=i.region||"us",f=nw.createAuth(nw.AuthMode.WithinHeaders,i.appId,i.apiKey),c=_z.createTransporter(zn(dt({hosts:[{url:`recommendation.${u}.algolia.com`}]},i),{headers:dt(zn(dt({},f.headers()),{"content-type":"application/json"}),i.headers),queryParameters:dt(dt({},f.queryParameters()),i.queryParameters)}));return nw.addMethods({appId:i.appId,transporter:c},i.methods)},wz=i=>u=>i.transporter.read({method:qC.MethodEnum.Get,path:"1/strategies/personalization"},u),Dz=i=>(u,f)=>i.transporter.write({method:qC.MethodEnum.Post,path:"1/strategies/personalization",data:u},f);nd.createRecommendationClient=yz;nd.getPersonalizationStrategy=wz;nd.setPersonalizationStrategy=Dz});var HC=Me((DV,WC)=>{WC.exports=zC()});var nT=Me(yt=>{"use strict";Object.defineProperty(yt,"__esModule",{value:!0});var Wt=Q2(),jo=ed(),Rn=Z2(),Ez=require("crypto");function mm(i){let u=f=>i.request(f).then(c=>{if(i.batch!==void 0&&i.batch(c.hits),!i.shouldStop(c))return c.cursor?u({cursor:c.cursor}):u({page:(f.page||0)+1})});return u({})}var Sz=i=>{let u=i.appId,f=Wt.createAuth(i.authMode!==void 0?i.authMode:Wt.AuthMode.WithinHeaders,u,i.apiKey),c=jo.createTransporter(zn(dt({hosts:[{url:`${u}-dsn.algolia.net`,accept:jo.CallEnum.Read},{url:`${u}.algolia.net`,accept:jo.CallEnum.Write}].concat(Wt.shuffle([{url:`${u}-1.algolianet.com`},{url:`${u}-2.algolianet.com`},{url:`${u}-3.algolianet.com`}]))},i),{headers:dt(zn(dt({},f.headers()),{"content-type":"application/x-www-form-urlencoded"}),i.headers),queryParameters:dt(dt({},f.queryParameters()),i.queryParameters)})),g={transporter:c,appId:u,addAlgoliaAgent(t,C){c.userAgent.add({segment:t,version:C})},clearCache(){return Promise.all([c.requestsCache.clear(),c.responsesCache.clear()]).then(()=>{})}};return Wt.addMethods(g,i.methods)};function bC(){return{name:"MissingObjectIDError",message:"All objects must have an unique objectID (like a primary key) to be valid. Algolia is also able to generate objectIDs automatically but *it's not recommended*. To do it, use the `{'autoGenerateObjectIDIfNotExist': true}` option."}}function GC(){return{name:"ObjectNotFoundError",message:"Object not found."}}function VC(){return{name:"ValidUntilNotFoundError",message:"ValidUntil not found in given secured api key."}}var Cz=i=>(u,f)=>{let A=f||{},{queryParameters:c}=A,g=Si(A,["queryParameters"]),t=dt({acl:u},c!==void 0?{queryParameters:c}:{}),C=(x,D)=>Wt.createRetryablePromise(L=>rd(i)(x.key,D).catch(N=>{if(N.status!==404)throw N;return L()}));return Wt.createWaitablePromise(i.transporter.write({method:Rn.MethodEnum.Post,path:"1/keys",data:t},g),C)},Tz=i=>(u,f,c)=>{let g=jo.createMappedRequestOptions(c);return g.queryParameters["X-Algolia-User-ID"]=u,i.transporter.write({method:Rn.MethodEnum.Post,path:"1/clusters/mapping",data:{cluster:f}},g)},xz=i=>(u,f,c)=>i.transporter.write({method:Rn.MethodEnum.Post,path:"1/clusters/mapping/batch",data:{users:u,cluster:f}},c),vm=i=>(u,f,c)=>{let g=(t,C)=>id(i)(u,{methods:{waitTask:z0}}).waitTask(t.taskID,C);return Wt.createWaitablePromise(i.transporter.write({method:Rn.MethodEnum.Post,path:Wt.encode("1/indexes/%s/operation",u),data:{operation:"copy",destination:f}},c),g)},kz=i=>(u,f,c)=>vm(i)(u,f,zn(dt({},c),{scope:[gm.Rules]})),Az=i=>(u,f,c)=>vm(i)(u,f,zn(dt({},c),{scope:[gm.Settings]})),Oz=i=>(u,f,c)=>vm(i)(u,f,zn(dt({},c),{scope:[gm.Synonyms]})),Iz=i=>(u,f)=>{let c=(g,t)=>Wt.createRetryablePromise(C=>rd(i)(u,t).then(C).catch(A=>{if(A.status!==404)throw A}));return Wt.createWaitablePromise(i.transporter.write({method:Rn.MethodEnum.Delete,path:Wt.encode("1/keys/%s",u)},f),c)},Pz=()=>(i,u)=>{let f=jo.serializeQueryParameters(u),c=Ez.createHmac("sha256",i).update(f).digest("hex");return Buffer.from(c+f).toString("base64")},rd=i=>(u,f)=>i.transporter.read({method:Rn.MethodEnum.Get,path:Wt.encode("1/keys/%s",u)},f),Mz=i=>u=>i.transporter.read({method:Rn.MethodEnum.Get,path:"1/logs"},u),Fz=()=>i=>{let u=Buffer.from(i,"base64").toString("ascii"),f=/validUntil=(\d+)/,c=u.match(f);if(c===null)throw VC();return parseInt(c[1],10)-Math.round(new Date().getTime()/1e3)},Lz=i=>u=>i.transporter.read({method:Rn.MethodEnum.Get,path:"1/clusters/mapping/top"},u),Rz=i=>(u,f)=>i.transporter.read({method:Rn.MethodEnum.Get,path:Wt.encode("1/clusters/mapping/%s",u)},f),Nz=i=>u=>{let g=u||{},{retrieveMappings:f}=g,c=Si(g,["retrieveMappings"]);return f===!0&&(c.getClusters=!0),i.transporter.read({method:Rn.MethodEnum.Get,path:"1/clusters/mapping/pending"},c)},id=i=>(u,f={})=>{let c={transporter:i.transporter,appId:i.appId,indexName:u};return Wt.addMethods(c,f.methods)},Bz=i=>u=>i.transporter.read({method:Rn.MethodEnum.Get,path:"1/keys"},u),jz=i=>u=>i.transporter.read({method:Rn.MethodEnum.Get,path:"1/clusters"},u),Uz=i=>u=>i.transporter.read({method:Rn.MethodEnum.Get,path:"1/indexes"},u),qz=i=>u=>i.transporter.read({method:Rn.MethodEnum.Get,path:"1/clusters/mapping"},u),zz=i=>(u,f,c)=>{let g=(t,C)=>id(i)(u,{methods:{waitTask:z0}}).waitTask(t.taskID,C);return Wt.createWaitablePromise(i.transporter.write({method:Rn.MethodEnum.Post,path:Wt.encode("1/indexes/%s/operation",u),data:{operation:"move",destination:f}},c),g)},Wz=i=>(u,f)=>{let c=(g,t)=>Promise.all(Object.keys(g.taskID).map(C=>id(i)(C,{methods:{waitTask:z0}}).waitTask(g.taskID[C],t)));return Wt.createWaitablePromise(i.transporter.write({method:Rn.MethodEnum.Post,path:"1/indexes/*/batch",data:{requests:u}},f),c)},Hz=i=>(u,f)=>i.transporter.read({method:Rn.MethodEnum.Post,path:"1/indexes/*/objects",data:{requests:u}},f),bz=i=>(u,f)=>{let c=u.map(g=>zn(dt({},g),{params:jo.serializeQueryParameters(g.params||{})}));return i.transporter.read({method:Rn.MethodEnum.Post,path:"1/indexes/*/queries",data:{requests:c},cacheable:!0},f)},Gz=i=>(u,f)=>Promise.all(u.map(c=>{let A=c.params,{facetName:g,facetQuery:t}=A,C=Si(A,["facetName","facetQuery"]);return id(i)(c.indexName,{methods:{searchForFacetValues:YC}}).searchForFacetValues(g,t,dt(dt({},f),C))})),Vz=i=>(u,f)=>{let c=jo.createMappedRequestOptions(f);return c.queryParameters["X-Algolia-User-ID"]=u,i.transporter.write({method:Rn.MethodEnum.Delete,path:"1/clusters/mapping"},c)},Yz=i=>(u,f)=>{let c=(g,t)=>Wt.createRetryablePromise(C=>rd(i)(u,t).catch(A=>{if(A.status!==404)throw A;return C()}));return Wt.createWaitablePromise(i.transporter.write({method:Rn.MethodEnum.Post,path:Wt.encode("1/keys/%s/restore",u)},f),c)},$z=i=>(u,f)=>i.transporter.read({method:Rn.MethodEnum.Post,path:"1/clusters/mapping/search",data:{query:u}},f),Kz=i=>(u,f)=>{let c=Object.assign({},f),L=f||{},{queryParameters:g}=L,t=Si(L,["queryParameters"]),C=g?{queryParameters:g}:{},A=["acl","indexes","referers","restrictSources","queryParameters","description","maxQueriesPerIPPerHour","maxHitsPerQuery"],x=N=>Object.keys(c).filter(j=>A.indexOf(j)!==-1).every(j=>N[j]===c[j]),D=(N,j)=>Wt.createRetryablePromise($=>rd(i)(u,j).then(h=>x(h)?Promise.resolve():$()));return Wt.createWaitablePromise(i.transporter.write({method:Rn.MethodEnum.Put,path:Wt.encode("1/keys/%s",u),data:C},t),D)},$C=i=>(u,f)=>{let c=(g,t)=>z0(i)(g.taskID,t);return Wt.createWaitablePromise(i.transporter.write({method:Rn.MethodEnum.Post,path:Wt.encode("1/indexes/%s/batch",i.indexName),data:{requests:u}},f),c)},Xz=i=>u=>mm(zn(dt({},u),{shouldStop:f=>f.cursor===void 0,request:f=>i.transporter.read({method:Rn.MethodEnum.Post,path:Wt.encode("1/indexes/%s/browse",i.indexName),data:f},u)})),Jz=i=>u=>{let f=dt({hitsPerPage:1e3},u);return mm(zn(dt({},f),{shouldStop:c=>c.hits.lengthzn(dt({},g),{hits:g.hits.map(t=>(delete t._highlightResult,t))}))}}))},Qz=i=>u=>{let f=dt({hitsPerPage:1e3},u);return mm(zn(dt({},f),{shouldStop:c=>c.hits.lengthzn(dt({},g),{hits:g.hits.map(t=>(delete t._highlightResult,t))}))}}))},_m=i=>(u,f,c)=>{let x=c||{},{batchSize:g}=x,t=Si(x,["batchSize"]),C={taskIDs:[],objectIDs:[]},A=(D=0)=>{let L=[],N;for(N=D;N({action:f,body:j})),t).then(j=>(C.objectIDs=C.objectIDs.concat(j.objectIDs),C.taskIDs.push(j.taskID),N++,A(N)))};return Wt.createWaitablePromise(A(),(D,L)=>Promise.all(D.taskIDs.map(N=>z0(i)(N,L))))},Zz=i=>u=>Wt.createWaitablePromise(i.transporter.write({method:Rn.MethodEnum.Post,path:Wt.encode("1/indexes/%s/clear",i.indexName)},u),(f,c)=>z0(i)(f.taskID,c)),eW=i=>u=>{let t=u||{},{forwardToReplicas:f}=t,c=Si(t,["forwardToReplicas"]),g=jo.createMappedRequestOptions(c);return f&&(g.queryParameters.forwardToReplicas=1),Wt.createWaitablePromise(i.transporter.write({method:Rn.MethodEnum.Post,path:Wt.encode("1/indexes/%s/rules/clear",i.indexName)},g),(C,A)=>z0(i)(C.taskID,A))},tW=i=>u=>{let t=u||{},{forwardToReplicas:f}=t,c=Si(t,["forwardToReplicas"]),g=jo.createMappedRequestOptions(c);return f&&(g.queryParameters.forwardToReplicas=1),Wt.createWaitablePromise(i.transporter.write({method:Rn.MethodEnum.Post,path:Wt.encode("1/indexes/%s/synonyms/clear",i.indexName)},g),(C,A)=>z0(i)(C.taskID,A))},nW=i=>(u,f)=>Wt.createWaitablePromise(i.transporter.write({method:Rn.MethodEnum.Post,path:Wt.encode("1/indexes/%s/deleteByQuery",i.indexName),data:u},f),(c,g)=>z0(i)(c.taskID,g)),rW=i=>u=>Wt.createWaitablePromise(i.transporter.write({method:Rn.MethodEnum.Delete,path:Wt.encode("1/indexes/%s",i.indexName)},u),(f,c)=>z0(i)(f.taskID,c)),iW=i=>(u,f)=>Wt.createWaitablePromise(JC(i)([u],f).then(c=>({taskID:c.taskIDs[0]})),(c,g)=>z0(i)(c.taskID,g)),JC=i=>(u,f)=>{let c=u.map(g=>({objectID:g}));return _m(i)(c,Cc.DeleteObject,f)},oW=i=>(u,f)=>{let C=f||{},{forwardToReplicas:c}=C,g=Si(C,["forwardToReplicas"]),t=jo.createMappedRequestOptions(g);return c&&(t.queryParameters.forwardToReplicas=1),Wt.createWaitablePromise(i.transporter.write({method:Rn.MethodEnum.Delete,path:Wt.encode("1/indexes/%s/rules/%s",i.indexName,u)},t),(A,x)=>z0(i)(A.taskID,x))},uW=i=>(u,f)=>{let C=f||{},{forwardToReplicas:c}=C,g=Si(C,["forwardToReplicas"]),t=jo.createMappedRequestOptions(g);return c&&(t.queryParameters.forwardToReplicas=1),Wt.createWaitablePromise(i.transporter.write({method:Rn.MethodEnum.Delete,path:Wt.encode("1/indexes/%s/synonyms/%s",i.indexName,u)},t),(A,x)=>z0(i)(A.taskID,x))},sW=i=>u=>QC(i)(u).then(()=>!0).catch(f=>{if(f.status!==404)throw f;return!1}),lW=i=>(u,f)=>{let x=f||{},{query:c,paginate:g}=x,t=Si(x,["query","paginate"]),C=0,A=()=>ZC(i)(c||"",zn(dt({},t),{page:C})).then(D=>{for(let[L,N]of Object.entries(D.hits))if(u(N))return{object:N,position:parseInt(L,10),page:C};if(C++,g===!1||C>=D.nbPages)throw GC();return A()});return A()},fW=i=>(u,f)=>i.transporter.read({method:Rn.MethodEnum.Get,path:Wt.encode("1/indexes/%s/%s",i.indexName,u)},f),cW=()=>(i,u)=>{for(let[f,c]of Object.entries(i.hits))if(c.objectID===u)return parseInt(f,10);return-1},aW=i=>(u,f)=>{let C=f||{},{attributesToRetrieve:c}=C,g=Si(C,["attributesToRetrieve"]),t=u.map(A=>dt({indexName:i.indexName,objectID:A},c?{attributesToRetrieve:c}:{}));return i.transporter.read({method:Rn.MethodEnum.Post,path:"1/indexes/*/objects",data:{requests:t}},g)},dW=i=>(u,f)=>i.transporter.read({method:Rn.MethodEnum.Get,path:Wt.encode("1/indexes/%s/rules/%s",i.indexName,u)},f),QC=i=>u=>i.transporter.read({method:Rn.MethodEnum.Get,path:Wt.encode("1/indexes/%s/settings",i.indexName),data:{getVersion:2}},u),pW=i=>(u,f)=>i.transporter.read({method:Rn.MethodEnum.Get,path:Wt.encode("1/indexes/%s/synonyms/%s",i.indexName,u)},f),eT=i=>(u,f)=>i.transporter.read({method:Rn.MethodEnum.Get,path:Wt.encode("1/indexes/%s/task/%s",i.indexName,u.toString())},f),hW=i=>(u,f)=>Wt.createWaitablePromise(tT(i)([u],f).then(c=>({objectID:c.objectIDs[0],taskID:c.taskIDs[0]})),(c,g)=>z0(i)(c.taskID,g)),tT=i=>(u,f)=>{let C=f||{},{createIfNotExists:c}=C,g=Si(C,["createIfNotExists"]),t=c?Cc.PartialUpdateObject:Cc.PartialUpdateObjectNoCreate;return _m(i)(u,t,g)},mW=i=>(u,f)=>{let h=f||{},{safe:c,autoGenerateObjectIDIfNotExist:g,batchSize:t}=h,C=Si(h,["safe","autoGenerateObjectIDIfNotExist","batchSize"]),A=(re,ce,Q,oe)=>Wt.createWaitablePromise(i.transporter.write({method:Rn.MethodEnum.Post,path:Wt.encode("1/indexes/%s/operation",re),data:{operation:Q,destination:ce}},oe),(Se,me)=>z0(i)(Se.taskID,me)),x=Math.random().toString(36).substring(7),D=`${i.indexName}_tmp_${x}`,L=rw({appId:i.appId,transporter:i.transporter,indexName:D}),N=[],j=A(i.indexName,D,"copy",zn(dt({},C),{scope:["settings","synonyms","rules"]}));N.push(j);let $=(c?j.wait(C):j).then(()=>{let re=L(u,zn(dt({},C),{autoGenerateObjectIDIfNotExist:g,batchSize:t}));return N.push(re),c?re.wait(C):re}).then(()=>{let re=A(D,i.indexName,"move",C);return N.push(re),c?re.wait(C):re}).then(()=>Promise.all(N)).then(([re,ce,Q])=>({objectIDs:ce.objectIDs,taskIDs:[re.taskID,...ce.taskIDs,Q.taskID]}));return Wt.createWaitablePromise($,(re,ce)=>Promise.all(N.map(Q=>Q.wait(ce))))},vW=i=>(u,f)=>iw(i)(u,zn(dt({},f),{clearExistingRules:!0})),gW=i=>(u,f)=>ow(i)(u,zn(dt({},f),{replaceExistingSynonyms:!0})),_W=i=>(u,f)=>Wt.createWaitablePromise(rw(i)([u],f).then(c=>({objectID:c.objectIDs[0],taskID:c.taskIDs[0]})),(c,g)=>z0(i)(c.taskID,g)),rw=i=>(u,f)=>{let C=f||{},{autoGenerateObjectIDIfNotExist:c}=C,g=Si(C,["autoGenerateObjectIDIfNotExist"]),t=c?Cc.AddObject:Cc.UpdateObject;if(t===Cc.UpdateObject){for(let A of u)if(A.objectID===void 0)return Wt.createWaitablePromise(Promise.reject(bC()))}return _m(i)(u,t,g)},yW=i=>(u,f)=>iw(i)([u],f),iw=i=>(u,f)=>{let A=f||{},{forwardToReplicas:c,clearExistingRules:g}=A,t=Si(A,["forwardToReplicas","clearExistingRules"]),C=jo.createMappedRequestOptions(t);return c&&(C.queryParameters.forwardToReplicas=1),g&&(C.queryParameters.clearExistingRules=1),Wt.createWaitablePromise(i.transporter.write({method:Rn.MethodEnum.Post,path:Wt.encode("1/indexes/%s/rules/batch",i.indexName),data:u},C),(x,D)=>z0(i)(x.taskID,D))},wW=i=>(u,f)=>ow(i)([u],f),ow=i=>(u,f)=>{let A=f||{},{forwardToReplicas:c,replaceExistingSynonyms:g}=A,t=Si(A,["forwardToReplicas","replaceExistingSynonyms"]),C=jo.createMappedRequestOptions(t);return c&&(C.queryParameters.forwardToReplicas=1),g&&(C.queryParameters.replaceExistingSynonyms=1),Wt.createWaitablePromise(i.transporter.write({method:Rn.MethodEnum.Post,path:Wt.encode("1/indexes/%s/synonyms/batch",i.indexName),data:u},C),(x,D)=>z0(i)(x.taskID,D))},ZC=i=>(u,f)=>i.transporter.read({method:Rn.MethodEnum.Post,path:Wt.encode("1/indexes/%s/query",i.indexName),data:{query:u},cacheable:!0},f),YC=i=>(u,f,c)=>i.transporter.read({method:Rn.MethodEnum.Post,path:Wt.encode("1/indexes/%s/facets/%s/query",i.indexName,u),data:{facetQuery:f},cacheable:!0},c),KC=i=>(u,f)=>i.transporter.read({method:Rn.MethodEnum.Post,path:Wt.encode("1/indexes/%s/rules/search",i.indexName),data:{query:u}},f),XC=i=>(u,f)=>i.transporter.read({method:Rn.MethodEnum.Post,path:Wt.encode("1/indexes/%s/synonyms/search",i.indexName),data:{query:u}},f),DW=i=>(u,f)=>{let C=f||{},{forwardToReplicas:c}=C,g=Si(C,["forwardToReplicas"]),t=jo.createMappedRequestOptions(g);return c&&(t.queryParameters.forwardToReplicas=1),Wt.createWaitablePromise(i.transporter.write({method:Rn.MethodEnum.Put,path:Wt.encode("1/indexes/%s/settings",i.indexName),data:u},t),(A,x)=>z0(i)(A.taskID,x))},z0=i=>(u,f)=>Wt.createRetryablePromise(c=>eT(i)(u,f).then(g=>g.status!=="published"?c():void 0)),EW={AddObject:"addObject",Analytics:"analytics",Browser:"browse",DeleteIndex:"deleteIndex",DeleteObject:"deleteObject",EditSettings:"editSettings",ListIndexes:"listIndexes",Logs:"logs",Recommendation:"recommendation",Search:"search",SeeUnretrievableAttributes:"seeUnretrievableAttributes",Settings:"settings",Usage:"usage"},Cc={AddObject:"addObject",UpdateObject:"updateObject",PartialUpdateObject:"partialUpdateObject",PartialUpdateObjectNoCreate:"partialUpdateObjectNoCreate",DeleteObject:"deleteObject"},gm={Settings:"settings",Synonyms:"synonyms",Rules:"rules"},SW={None:"none",StopIfEnoughMatches:"stopIfEnoughMatches"},CW={Synonym:"synonym",OneWaySynonym:"oneWaySynonym",AltCorrection1:"altCorrection1",AltCorrection2:"altCorrection2",Placeholder:"placeholder"};yt.ApiKeyACLEnum=EW;yt.BatchActionEnum=Cc;yt.ScopeEnum=gm;yt.StrategyEnum=SW;yt.SynonymEnum=CW;yt.addApiKey=Cz;yt.assignUserID=Tz;yt.assignUserIDs=xz;yt.batch=$C;yt.browseObjects=Xz;yt.browseRules=Jz;yt.browseSynonyms=Qz;yt.chunkedBatch=_m;yt.clearObjects=Zz;yt.clearRules=eW;yt.clearSynonyms=tW;yt.copyIndex=vm;yt.copyRules=kz;yt.copySettings=Az;yt.copySynonyms=Oz;yt.createBrowsablePromise=mm;yt.createMissingObjectIDError=bC;yt.createObjectNotFoundError=GC;yt.createSearchClient=Sz;yt.createValidUntilNotFoundError=VC;yt.deleteApiKey=Iz;yt.deleteBy=nW;yt.deleteIndex=rW;yt.deleteObject=iW;yt.deleteObjects=JC;yt.deleteRule=oW;yt.deleteSynonym=uW;yt.exists=sW;yt.findObject=lW;yt.generateSecuredApiKey=Pz;yt.getApiKey=rd;yt.getLogs=Mz;yt.getObject=fW;yt.getObjectPosition=cW;yt.getObjects=aW;yt.getRule=dW;yt.getSecuredApiKeyRemainingValidity=Fz;yt.getSettings=QC;yt.getSynonym=pW;yt.getTask=eT;yt.getTopUserIDs=Lz;yt.getUserID=Rz;yt.hasPendingMappings=Nz;yt.initIndex=id;yt.listApiKeys=Bz;yt.listClusters=jz;yt.listIndices=Uz;yt.listUserIDs=qz;yt.moveIndex=zz;yt.multipleBatch=Wz;yt.multipleGetObjects=Hz;yt.multipleQueries=bz;yt.multipleSearchForFacetValues=Gz;yt.partialUpdateObject=hW;yt.partialUpdateObjects=tT;yt.removeUserID=Vz;yt.replaceAllObjects=mW;yt.replaceAllRules=vW;yt.replaceAllSynonyms=gW;yt.restoreApiKey=Yz;yt.saveObject=_W;yt.saveObjects=rw;yt.saveRule=yW;yt.saveRules=iw;yt.saveSynonym=wW;yt.saveSynonyms=ow;yt.search=ZC;yt.searchForFacetValues=YC;yt.searchRules=KC;yt.searchSynonyms=XC;yt.searchUserIDs=$z;yt.setSettings=DW;yt.updateApiKey=Kz;yt.waitTask=z0});var iT=Me((SV,rT)=>{rT.exports=nT()});var oT=Me(ym=>{"use strict";Object.defineProperty(ym,"__esModule",{value:!0});function TW(){return{debug(i,u){return Promise.resolve()},info(i,u){return Promise.resolve()},error(i,u){return Promise.resolve()}}}var xW={Debug:1,Info:2,Error:3};ym.LogLevelEnum=xW;ym.createNullLogger=TW});var sT=Me((TV,uT)=>{uT.exports=oT()});var cT=Me(uw=>{"use strict";Object.defineProperty(uw,"__esModule",{value:!0});var lT=require("http"),fT=require("https"),kW=require("url");function AW(){let i={keepAlive:!0},u=new lT.Agent(i),f=new fT.Agent(i);return{send(c){return new Promise(g=>{let t=kW.parse(c.url),C=t.query===null?t.pathname:`${t.pathname}?${t.query}`,A=dt({agent:t.protocol==="https:"?f:u,hostname:t.hostname,path:C,method:c.method,headers:c.headers},t.port!==void 0?{port:t.port||""}:{}),x=(t.protocol==="https:"?fT:lT).request(A,j=>{let $="";j.on("data",h=>$+=h),j.on("end",()=>{clearTimeout(L),clearTimeout(N),g({status:j.statusCode||0,content:$,isTimedOut:!1})})}),D=(j,$)=>setTimeout(()=>{x.abort(),g({status:0,content:$,isTimedOut:!0})},j*1e3),L=D(c.connectTimeout,"Connection timeout"),N;x.on("error",j=>{clearTimeout(L),clearTimeout(N),g({status:0,content:j.message,isTimedOut:!1})}),x.once("response",()=>{clearTimeout(L),N=D(c.responseTimeout,"Socket timeout")}),c.data!==void 0&&x.write(c.data),x.end()})},destroy(){return u.destroy(),f.destroy(),Promise.resolve()}}}uw.createNodeHttpRequester=AW});var dT=Me((kV,aT)=>{aT.exports=cT()});var vT=Me((AV,pT)=>{"use strict";var hT=dC(),OW=mC(),Ma=UC(),sw=Q2(),lw=HC(),Mt=iT(),IW=sT(),PW=dT(),MW=ed();function mT(i,u,f){let c={appId:i,apiKey:u,timeouts:{connect:2,read:5,write:30},requester:PW.createNodeHttpRequester(),logger:IW.createNullLogger(),responsesCache:hT.createNullCache(),requestsCache:hT.createNullCache(),hostsCache:OW.createInMemoryCache(),userAgent:MW.createUserAgent(sw.version).add({segment:"Node.js",version:process.versions.node})};return Mt.createSearchClient(zn(dt(dt({},c),f),{methods:{search:Mt.multipleQueries,searchForFacetValues:Mt.multipleSearchForFacetValues,multipleBatch:Mt.multipleBatch,multipleGetObjects:Mt.multipleGetObjects,multipleQueries:Mt.multipleQueries,copyIndex:Mt.copyIndex,copySettings:Mt.copySettings,copyRules:Mt.copyRules,copySynonyms:Mt.copySynonyms,moveIndex:Mt.moveIndex,listIndices:Mt.listIndices,getLogs:Mt.getLogs,listClusters:Mt.listClusters,multipleSearchForFacetValues:Mt.multipleSearchForFacetValues,getApiKey:Mt.getApiKey,addApiKey:Mt.addApiKey,listApiKeys:Mt.listApiKeys,updateApiKey:Mt.updateApiKey,deleteApiKey:Mt.deleteApiKey,restoreApiKey:Mt.restoreApiKey,assignUserID:Mt.assignUserID,assignUserIDs:Mt.assignUserIDs,getUserID:Mt.getUserID,searchUserIDs:Mt.searchUserIDs,listUserIDs:Mt.listUserIDs,getTopUserIDs:Mt.getTopUserIDs,removeUserID:Mt.removeUserID,hasPendingMappings:Mt.hasPendingMappings,generateSecuredApiKey:Mt.generateSecuredApiKey,getSecuredApiKeyRemainingValidity:Mt.getSecuredApiKeyRemainingValidity,destroy:sw.destroy,initIndex:g=>t=>Mt.initIndex(g)(t,{methods:{batch:Mt.batch,delete:Mt.deleteIndex,getObject:Mt.getObject,getObjects:Mt.getObjects,saveObject:Mt.saveObject,saveObjects:Mt.saveObjects,search:Mt.search,searchForFacetValues:Mt.searchForFacetValues,waitTask:Mt.waitTask,setSettings:Mt.setSettings,getSettings:Mt.getSettings,partialUpdateObject:Mt.partialUpdateObject,partialUpdateObjects:Mt.partialUpdateObjects,deleteObject:Mt.deleteObject,deleteObjects:Mt.deleteObjects,deleteBy:Mt.deleteBy,clearObjects:Mt.clearObjects,browseObjects:Mt.browseObjects,getObjectPosition:Mt.getObjectPosition,findObject:Mt.findObject,exists:Mt.exists,saveSynonym:Mt.saveSynonym,saveSynonyms:Mt.saveSynonyms,getSynonym:Mt.getSynonym,searchSynonyms:Mt.searchSynonyms,browseSynonyms:Mt.browseSynonyms,deleteSynonym:Mt.deleteSynonym,clearSynonyms:Mt.clearSynonyms,replaceAllObjects:Mt.replaceAllObjects,replaceAllSynonyms:Mt.replaceAllSynonyms,searchRules:Mt.searchRules,getRule:Mt.getRule,deleteRule:Mt.deleteRule,saveRule:Mt.saveRule,saveRules:Mt.saveRules,replaceAllRules:Mt.replaceAllRules,browseRules:Mt.browseRules,clearRules:Mt.clearRules}}),initAnalytics:()=>g=>Ma.createAnalyticsClient(zn(dt(dt({},c),g),{methods:{addABTest:Ma.addABTest,getABTest:Ma.getABTest,getABTests:Ma.getABTests,stopABTest:Ma.stopABTest,deleteABTest:Ma.deleteABTest}})),initRecommendation:()=>g=>lw.createRecommendationClient(zn(dt(dt({},c),g),{methods:{getPersonalizationStrategy:lw.getPersonalizationStrategy,setPersonalizationStrategy:lw.setPersonalizationStrategy}}))}}))}mT.version=sw.version;pT.exports=mT});var _T=Me((OV,fw)=>{var gT=vT();fw.exports=gT;fw.exports.default=gT});var rf=Me(dw=>{"use strict";Object.defineProperty(dw,"__esModule",{value:!0});dw.default=kT;function kT(){}kT.prototype={diff:function(u,f){var c=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},g=c.callback;typeof c=="function"&&(g=c,c={}),this.options=c;var t=this;function C(re){return g?(setTimeout(function(){g(void 0,re)},0),!0):re}u=this.castInput(u),f=this.castInput(f),u=this.removeEmpty(this.tokenize(u)),f=this.removeEmpty(this.tokenize(f));var A=f.length,x=u.length,D=1,L=A+x,N=[{newPos:-1,components:[]}],j=this.extractCommon(N[0],f,u,0);if(N[0].newPos+1>=A&&j+1>=x)return C([{value:this.join(f),count:f.length}]);function $(){for(var re=-1*D;re<=D;re+=2){var ce=void 0,Q=N[re-1],oe=N[re+1],Se=(oe?oe.newPos:0)-re;Q&&(N[re-1]=void 0);var me=Q&&Q.newPos+1=A&&Se+1>=x)return C(LW(t,ce.components,f,u,t.useLongestToken));N[re]=ce}D++}if(g)(function re(){setTimeout(function(){if(D>L)return g();$()||re()},0)})();else for(;D<=L;){var h=$();if(h)return h}},pushComponent:function(u,f,c){var g=u[u.length-1];g&&g.added===f&&g.removed===c?u[u.length-1]={count:g.count+1,added:f,removed:c}:u.push({count:1,added:f,removed:c})},extractCommon:function(u,f,c,g){for(var t=f.length,C=c.length,A=u.newPos,x=A-g,D=0;A+1$.length?re:$}),D.value=i.join(L)}else D.value=i.join(f.slice(A,A+D.count));A+=D.count,D.added||(x+=D.count)}}var j=u[C-1];return C>1&&typeof j.value=="string"&&(j.added||j.removed)&&i.equals("",j.value)&&(u[C-2].value+=j.value,u.pop()),u}function RW(i){return{newPos:i.newPos,components:i.components.slice(0)}}});var OT=Me(ld=>{"use strict";Object.defineProperty(ld,"__esModule",{value:!0});ld.diffChars=NW;ld.characterDiff=void 0;var jW=BW(rf());function BW(i){return i&&i.__esModule?i:{default:i}}var AT=new jW.default;ld.characterDiff=AT;function NW(i,u,f){return AT.diff(i,u,f)}});var hw=Me(pw=>{"use strict";Object.defineProperty(pw,"__esModule",{value:!0});pw.generateOptions=UW;function UW(i,u){if(typeof i=="function")u.callback=i;else if(i)for(var f in i)i.hasOwnProperty(f)&&(u[f]=i[f]);return u}});var MT=Me(Fa=>{"use strict";Object.defineProperty(Fa,"__esModule",{value:!0});Fa.diffWords=qW;Fa.diffWordsWithSpace=zW;Fa.wordDiff=void 0;var HW=WW(rf()),bW=hw();function WW(i){return i&&i.__esModule?i:{default:i}}var IT=/^[A-Za-z\xC0-\u02C6\u02C8-\u02D7\u02DE-\u02FF\u1E00-\u1EFF]+$/,PT=/\S/,fd=new HW.default;Fa.wordDiff=fd;fd.equals=function(i,u){return this.options.ignoreCase&&(i=i.toLowerCase(),u=u.toLowerCase()),i===u||this.options.ignoreWhitespace&&!PT.test(i)&&!PT.test(u)};fd.tokenize=function(i){for(var u=i.split(/(\s+|[()[\]{}'"]|\b)/),f=0;f{"use strict";Object.defineProperty(La,"__esModule",{value:!0});La.diffLines=GW;La.diffTrimmedLines=VW;La.lineDiff=void 0;var $W=YW(rf()),KW=hw();function YW(i){return i&&i.__esModule?i:{default:i}}var Dm=new $W.default;La.lineDiff=Dm;Dm.tokenize=function(i){var u=[],f=i.split(/(\n|\r\n)/);f[f.length-1]||f.pop();for(var c=0;c{"use strict";Object.defineProperty(cd,"__esModule",{value:!0});cd.diffSentences=XW;cd.sentenceDiff=void 0;var QW=JW(rf());function JW(i){return i&&i.__esModule?i:{default:i}}var mw=new QW.default;cd.sentenceDiff=mw;mw.tokenize=function(i){return i.split(/(\S.+?[.!?])(?=\s+|$)/)};function XW(i,u,f){return mw.diff(i,u,f)}});var LT=Me(ad=>{"use strict";Object.defineProperty(ad,"__esModule",{value:!0});ad.diffCss=ZW;ad.cssDiff=void 0;var tH=eH(rf());function eH(i){return i&&i.__esModule?i:{default:i}}var vw=new tH.default;ad.cssDiff=vw;vw.tokenize=function(i){return i.split(/([{}:;,]|\s+)/)};function ZW(i,u,f){return vw.diff(i,u,f)}});var NT=Me(Ra=>{"use strict";Object.defineProperty(Ra,"__esModule",{value:!0});Ra.diffJson=nH;Ra.canonicalize=Sm;Ra.jsonDiff=void 0;var RT=rH(rf()),iH=Em();function rH(i){return i&&i.__esModule?i:{default:i}}function Cm(i){return typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?Cm=function(f){return typeof f}:Cm=function(f){return f&&typeof Symbol=="function"&&f.constructor===Symbol&&f!==Symbol.prototype?"symbol":typeof f},Cm(i)}var oH=Object.prototype.toString,xc=new RT.default;Ra.jsonDiff=xc;xc.useLongestToken=!0;xc.tokenize=iH.lineDiff.tokenize;xc.castInput=function(i){var u=this.options,f=u.undefinedReplacement,c=u.stringifyReplacer,g=c===void 0?function(t,C){return typeof C=="undefined"?f:C}:c;return typeof i=="string"?i:JSON.stringify(Sm(i,null,null,g),g," ")};xc.equals=function(i,u){return RT.default.prototype.equals.call(xc,i.replace(/,([\r\n])/g,"$1"),u.replace(/,([\r\n])/g,"$1"))};function nH(i,u,f){return xc.diff(i,u,f)}function Sm(i,u,f,c,g){u=u||[],f=f||[],c&&(i=c(g,i));var t;for(t=0;t{"use strict";Object.defineProperty(dd,"__esModule",{value:!0});dd.diffArrays=uH;dd.arrayDiff=void 0;var lH=sH(rf());function sH(i){return i&&i.__esModule?i:{default:i}}var pd=new lH.default;dd.arrayDiff=pd;pd.tokenize=function(i){return i.slice()};pd.join=pd.removeEmpty=function(i){return i};function uH(i,u,f){return pd.diff(i,u,f)}});var Tm=Me(gw=>{"use strict";Object.defineProperty(gw,"__esModule",{value:!0});gw.parsePatch=fH;function fH(i){var u=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},f=i.split(/\r\n|[\n\v\f\r\x85]/),c=i.match(/\r\n|[\n\v\f\r\x85]/g)||[],g=[],t=0;function C(){var D={};for(g.push(D);t{"use strict";Object.defineProperty(_w,"__esModule",{value:!0});_w.default=cH;function cH(i,u,f){var c=!0,g=!1,t=!1,C=1;return function A(){if(c&&!t){if(g?C++:c=!1,i+C<=f)return C;t=!0}if(!g)return t||(c=!0),u<=i-C?-C++:(g=!0,A())}}});var zT=Me(xm=>{"use strict";Object.defineProperty(xm,"__esModule",{value:!0});xm.applyPatch=UT;xm.applyPatches=aH;var qT=Tm(),pH=dH(jT());function dH(i){return i&&i.__esModule?i:{default:i}}function UT(i,u){var f=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};if(typeof u=="string"&&(u=(0,qT.parsePatch)(u)),Array.isArray(u)){if(u.length>1)throw new Error("applyPatch only works with a single input.");u=u[0]}var c=i.split(/\r\n|[\n\v\f\r\x85]/),g=i.match(/\r\n|[\n\v\f\r\x85]/g)||[],t=u.hunks,C=f.compareLine||function(Ot,Nt,Je,V){return Nt===V},A=0,x=f.fuzzFactor||0,D=0,L=0,N,j;function $(Ot,Nt){for(var Je=0;Je0?V[0]:" ",ge=V.length>0?V.substr(1):V;if(ne===" "||ne==="-"){if(!C(Nt+1,c[Nt],ne,ge)&&(A++,A>x))return!1;Nt++}}return!0}for(var h=0;h0?Le[0]:" ",ct=Le.length>0?Le.substr(1):Le,Ue=J.linedelimiters[Oe];if(ot===" ")Te++;else if(ot==="-")c.splice(Te,1),g.splice(Te,1);else if(ot==="+")c.splice(Te,0,ct),g.splice(Te,0,Ue),Te++;else if(ot==="\\"){var be=J.lines[Oe-1]?J.lines[Oe-1][0]:null;be==="+"?N=!0:be==="-"&&(j=!0)}}}if(N)for(;!c[c.length-1];)c.pop(),g.pop();else j&&(c.push(""),g.push(` +`));for(var At=0;At{"use strict";Object.defineProperty(hd,"__esModule",{value:!0});hd.structuredPatch=WT;hd.createTwoFilesPatch=HT;hd.createPatch=hH;var mH=Em();function yw(i){return _H(i)||gH(i)||vH()}function vH(){throw new TypeError("Invalid attempt to spread non-iterable instance")}function gH(i){if(Symbol.iterator in Object(i)||Object.prototype.toString.call(i)==="[object Arguments]")return Array.from(i)}function _H(i){if(Array.isArray(i)){for(var u=0,f=new Array(i.length);u0?x(J.lines.slice(-C.context)):[],L-=j.length,N-=j.length)}(De=j).push.apply(De,yw(me.map(function(At){return(Se.added?"+":"-")+At}))),Se.added?h+=me.length:$+=me.length}else{if(L)if(me.length<=C.context*2&&oe=A.length-2&&me.length<=C.context){var ct=/\n$/.test(f),Ue=/\n$/.test(c),be=me.length==0&&j.length>ot.oldLines;!ct&&be&&j.splice(ot.oldLines,0,"\\ No newline at end of file"),(!ct&&!be||!Ue)&&j.push("\\ No newline at end of file")}D.push(ot),L=0,N=0,j=[]}$+=me.length,h+=me.length}},ce=0;ce{"use strict";Object.defineProperty(km,"__esModule",{value:!0});km.arrayEqual=yH;km.arrayStartsWith=bT;function yH(i,u){return i.length!==u.length?!1:bT(i,u)}function bT(i,u){if(u.length>i.length)return!1;for(var f=0;f{"use strict";Object.defineProperty(Am,"__esModule",{value:!0});Am.calcLineCount=VT;Am.merge=wH;var DH=ww(),EH=Tm(),Dw=GT();function Na(i){return TH(i)||CH(i)||SH()}function SH(){throw new TypeError("Invalid attempt to spread non-iterable instance")}function CH(i){if(Symbol.iterator in Object(i)||Object.prototype.toString.call(i)==="[object Arguments]")return Array.from(i)}function TH(i){if(Array.isArray(i)){for(var u=0,f=new Array(i.length);u{"use strict";Object.defineProperty(Cw,"__esModule",{value:!0});Cw.convertChangesToDMP=OH;function OH(i){for(var u=[],f,c,g=0;g{"use strict";Object.defineProperty(Tw,"__esModule",{value:!0});Tw.convertChangesToXML=IH;function IH(i){for(var u=[],f=0;f"):c.removed&&u.push(""),u.push(PH(c.value)),c.added?u.push(""):c.removed&&u.push("")}return u.join("")}function PH(i){var u=i;return u=u.replace(/&/g,"&"),u=u.replace(//g,">"),u=u.replace(/"/g,"""),u}});var f9=Me(w0=>{"use strict";Object.defineProperty(w0,"__esModule",{value:!0});Object.defineProperty(w0,"Diff",{enumerable:!0,get:function(){return MH.default}});Object.defineProperty(w0,"diffChars",{enumerable:!0,get:function(){return FH.diffChars}});Object.defineProperty(w0,"diffWords",{enumerable:!0,get:function(){return o9.diffWords}});Object.defineProperty(w0,"diffWordsWithSpace",{enumerable:!0,get:function(){return o9.diffWordsWithSpace}});Object.defineProperty(w0,"diffLines",{enumerable:!0,get:function(){return u9.diffLines}});Object.defineProperty(w0,"diffTrimmedLines",{enumerable:!0,get:function(){return u9.diffTrimmedLines}});Object.defineProperty(w0,"diffSentences",{enumerable:!0,get:function(){return LH.diffSentences}});Object.defineProperty(w0,"diffCss",{enumerable:!0,get:function(){return RH.diffCss}});Object.defineProperty(w0,"diffJson",{enumerable:!0,get:function(){return s9.diffJson}});Object.defineProperty(w0,"canonicalize",{enumerable:!0,get:function(){return s9.canonicalize}});Object.defineProperty(w0,"diffArrays",{enumerable:!0,get:function(){return NH.diffArrays}});Object.defineProperty(w0,"applyPatch",{enumerable:!0,get:function(){return l9.applyPatch}});Object.defineProperty(w0,"applyPatches",{enumerable:!0,get:function(){return l9.applyPatches}});Object.defineProperty(w0,"parsePatch",{enumerable:!0,get:function(){return BH.parsePatch}});Object.defineProperty(w0,"merge",{enumerable:!0,get:function(){return jH.merge}});Object.defineProperty(w0,"structuredPatch",{enumerable:!0,get:function(){return xw.structuredPatch}});Object.defineProperty(w0,"createTwoFilesPatch",{enumerable:!0,get:function(){return xw.createTwoFilesPatch}});Object.defineProperty(w0,"createPatch",{enumerable:!0,get:function(){return xw.createPatch}});Object.defineProperty(w0,"convertChangesToDMP",{enumerable:!0,get:function(){return UH.convertChangesToDMP}});Object.defineProperty(w0,"convertChangesToXML",{enumerable:!0,get:function(){return qH.convertChangesToXML}});var MH=zH(rf()),FH=OT(),o9=MT(),u9=Em(),LH=FT(),RH=LT(),s9=NT(),NH=BT(),l9=zT(),BH=Tm(),jH=n9(),xw=ww(),UH=r9(),qH=i9();function zH(i){return i&&i.__esModule?i:{default:i}}});var HH={};jR(HH,{default:()=>GH});var wT=Er(require("@yarnpkg/cli")),Tc=Er(require("@yarnpkg/core"));var Z5=Er(ys()),Dc=Er(lr()),om=(0,Dc.memo)(({active:i})=>{let u=(0,Dc.useMemo)(()=>i?"\u25C9":"\u25EF",[i]),f=(0,Dc.useMemo)(()=>i?"green":"yellow",[i]);return Dc.default.createElement(Z5.Text,{color:f},u)});var Wf=Er(ys()),Bo=Er(lr());var eC=Er(ys()),um=Er(lr());function zf({active:i},u,f){let{stdin:c}=(0,eC.useStdin)(),g=(0,um.useCallback)((t,C)=>u(t,C),f);(0,um.useEffect)(()=>{if(!(!i||!c))return c.on("keypress",g),()=>{c.off("keypress",g)}},[i,g,c])}var sm;(function(f){f.BEFORE="before",f.AFTER="after"})(sm||(sm={}));var tC=function({active:i},u,f){zf({active:i},(c,g)=>{g.name==="tab"&&(g.shift?u(sm.BEFORE):u(sm.AFTER))},f)};var lm=function(i,u,{active:f,minus:c,plus:g,set:t,loop:C=!0}){zf({active:f},(A,x)=>{let D=u.indexOf(i);switch(x.name){case c:{let L=D-1;if(C){t(u[(u.length+L)%u.length]);return}if(L<0)return;t(u[L])}break;case g:{let L=D+1;if(C){t(u[L%u.length]);return}if(L>=u.length)return;t(u[L])}break}},[u,i,g,t,C])};var fm=({active:i=!0,children:u=[],radius:f=10,size:c=1,loop:g=!0,onFocusRequest:t,willReachEnd:C})=>{let A=ce=>{if(ce.key===null)throw new Error("Expected all children to have a key");return ce.key},x=Bo.default.Children.map(u,ce=>A(ce)),D=x[0],[L,N]=(0,Bo.useState)(D),j=x.indexOf(L);(0,Bo.useEffect)(()=>{x.includes(L)||N(D)},[u]),(0,Bo.useEffect)(()=>{C&&j>=x.length-2&&C()},[j]),tC({active:i&&!!t},ce=>{t==null||t(ce)},[t]),lm(L,x,{active:i,minus:"up",plus:"down",set:N,loop:g});let $=j-f,h=j+f;h>x.length&&($-=h-x.length,h=x.length),$<0&&(h+=-$,$=0),h>=x.length&&(h=x.length-1);let re=[];for(let ce=$;ce<=h;++ce){let Q=x[ce],oe=i&&Q===L;re.push(Bo.default.createElement(Wf.Box,{key:Q,height:c},Bo.default.createElement(Wf.Box,{marginLeft:1,marginRight:1},Bo.default.createElement(Wf.Text,null,oe?Bo.default.createElement(Wf.Text,{color:"cyan",bold:!0},">"):" ")),Bo.default.createElement(Wf.Box,null,Bo.default.cloneElement(u[ce],{active:oe}))))}return Bo.default.createElement(Wf.Box,{flexDirection:"column",width:"100%"},re)};var cm=Er(lr());var nC=Er(ys()),nf=Er(lr()),rC=Er(require("readline")),G3=nf.default.createContext(null),iC=({children:i})=>{let{stdin:u,setRawMode:f}=(0,nC.useStdin)();(0,nf.useEffect)(()=>{f&&f(!0),u&&(0,rC.emitKeypressEvents)(u)},[u,f]);let[c,g]=(0,nf.useState)(new Map),t=(0,nf.useMemo)(()=>({getAll:()=>c,get:C=>c.get(C),set:(C,A)=>g(new Map([...c,[C,A]]))}),[c,g]);return nf.default.createElement(G3.Provider,{value:t,children:i})};function Ec(i,u){let f=(0,cm.useContext)(G3);if(f===null)throw new Error("Expected this hook to run with a ministore context attached");if(typeof i=="undefined")return f.getAll();let c=(0,cm.useCallback)(t=>{f.set(i,t)},[i,f.set]),g=f.get(i);return typeof g=="undefined"&&(g=u),[g,c]}var am=Er(ys()),V3=Er(lr());async function dm(i,u){let f,c=t=>{let{exit:C}=(0,am.useApp)();zf({active:!0},(A,x)=>{x.name==="return"&&(f=t,C())},[C,t])},{waitUntilExit:g}=(0,am.render)(V3.default.createElement(iC,null,V3.default.createElement(i,zn(dt({},u),{useSubmit:c}))));return await g(),f}var DT=Er(require("clipanion")),ET=Er(lC()),un=Er(ys()),Pt=Er(lr());var yT=Er(_T()),cw={appId:"OFCNCOG2CU",apiKey:"6fe4476ee5a1832882e326b506d14126",indexName:"npm-search"},FW=(0,yT.default)(cw.appId,cw.apiKey).initIndex(cw.indexName),aw=async(i,u=0)=>await FW.search(i,{analyticsTags:["yarn-plugin-interactive-tools"],attributesToRetrieve:["name","version","owner","repository","humanDownloadsLast30Days"],page:u,hitsPerPage:10});var od=["regular","dev","peer"],ud=class extends wT.BaseCommand{async execute(){let u=await Tc.Configuration.find(this.context.cwd,this.context.plugins),f=()=>Pt.default.createElement(un.Box,{flexDirection:"row"},Pt.default.createElement(un.Box,{flexDirection:"column",width:48},Pt.default.createElement(un.Box,null,Pt.default.createElement(un.Text,null,"Press ",Pt.default.createElement(un.Text,{bold:!0,color:"cyanBright"},""),"/",Pt.default.createElement(un.Text,{bold:!0,color:"cyanBright"},"")," to move between packages.")),Pt.default.createElement(un.Box,null,Pt.default.createElement(un.Text,null,"Press ",Pt.default.createElement(un.Text,{bold:!0,color:"cyanBright"},"")," to select a package.")),Pt.default.createElement(un.Box,null,Pt.default.createElement(un.Text,null,"Press ",Pt.default.createElement(un.Text,{bold:!0,color:"cyanBright"},"")," again to change the target."))),Pt.default.createElement(un.Box,{flexDirection:"column"},Pt.default.createElement(un.Box,{marginLeft:1},Pt.default.createElement(un.Text,null,"Press ",Pt.default.createElement(un.Text,{bold:!0,color:"cyanBright"},"")," to install the selected packages.")),Pt.default.createElement(un.Box,{marginLeft:1},Pt.default.createElement(un.Text,null,"Press ",Pt.default.createElement(un.Text,{bold:!0,color:"cyanBright"},"")," to abort.")))),c=()=>Pt.default.createElement(Pt.default.Fragment,null,Pt.default.createElement(un.Box,{width:15},Pt.default.createElement(un.Text,{bold:!0,underline:!0,color:"gray"},"Owner")),Pt.default.createElement(un.Box,{width:11},Pt.default.createElement(un.Text,{bold:!0,underline:!0,color:"gray"},"Version")),Pt.default.createElement(un.Box,{width:10},Pt.default.createElement(un.Text,{bold:!0,underline:!0,color:"gray"},"Downloads"))),g=()=>Pt.default.createElement(un.Box,{width:17},Pt.default.createElement(un.Text,{bold:!0,underline:!0,color:"gray"},"Target")),t=({hit:$,active:h})=>{let[re,ce]=Ec($.name,null);zf({active:h},(Se,me)=>{if(me.name!=="space")return;if(!re){ce(od[0]);return}let De=od.indexOf(re)+1;De===od.length?ce(null):ce(od[De])},[re,ce]);let Q=Tc.structUtils.parseIdent($.name),oe=Tc.structUtils.prettyIdent(u,Q);return Pt.default.createElement(un.Box,null,Pt.default.createElement(un.Box,{width:45},Pt.default.createElement(un.Text,{bold:!0,wrap:"wrap"},oe)),Pt.default.createElement(un.Box,{width:14,marginLeft:1},Pt.default.createElement(un.Text,{bold:!0,wrap:"truncate"},$.owner.name)),Pt.default.createElement(un.Box,{width:10,marginLeft:1},Pt.default.createElement(un.Text,{italic:!0,wrap:"truncate"},$.version)),Pt.default.createElement(un.Box,{width:16,marginLeft:1},Pt.default.createElement(un.Text,null,$.humanDownloadsLast30Days)))},C=({name:$,active:h})=>{let[re]=Ec($,null),ce=Tc.structUtils.parseIdent($);return Pt.default.createElement(un.Box,null,Pt.default.createElement(un.Box,{width:47},Pt.default.createElement(un.Text,{bold:!0}," - ",Tc.structUtils.prettyIdent(u,ce))),od.map(Q=>Pt.default.createElement(un.Box,{key:Q,width:14,marginLeft:1},Pt.default.createElement(un.Text,null," ",Pt.default.createElement(om,{active:re===Q})," ",Pt.default.createElement(un.Text,{bold:!0},Q)))))},A=()=>Pt.default.createElement(un.Box,{marginTop:1},Pt.default.createElement(un.Text,null,"Powered by Algolia.")),D=await dm(({useSubmit:$})=>{let h=Ec();$(h);let re=Array.from(h.keys()).filter(Le=>h.get(Le)!==null),[ce,Q]=(0,Pt.useState)(""),[oe,Se]=(0,Pt.useState)(0),[me,De]=(0,Pt.useState)([]),J=Le=>{Le.match(/\t| /)||Q(Le)},Te=async()=>{Se(0);let Le=await aw(ce);Le.query===ce&&De(Le.hits)},Oe=async()=>{let Le=await aw(ce,oe+1);Le.query===ce&&Le.page-1===oe&&(Se(Le.page),De([...me,...Le.hits]))};return(0,Pt.useEffect)(()=>{ce?Te():De([])},[ce]),Pt.default.createElement(un.Box,{flexDirection:"column"},Pt.default.createElement(f,null),Pt.default.createElement(un.Box,{flexDirection:"row",marginTop:1},Pt.default.createElement(un.Text,{bold:!0},"Search: "),Pt.default.createElement(un.Box,{width:41},Pt.default.createElement(ET.default,{value:ce,onChange:J,placeholder:"i.e. babel, webpack, react...",showCursor:!1})),Pt.default.createElement(c,null)),me.length?Pt.default.createElement(fm,{radius:2,loop:!1,children:me.map(Le=>Pt.default.createElement(t,{key:Le.name,hit:Le,active:!1})),willReachEnd:Oe}):Pt.default.createElement(un.Text,{color:"gray"},"Start typing..."),Pt.default.createElement(un.Box,{flexDirection:"row",marginTop:1},Pt.default.createElement(un.Box,{width:49},Pt.default.createElement(un.Text,{bold:!0},"Selected:")),Pt.default.createElement(g,null)),re.length?re.map(Le=>Pt.default.createElement(C,{key:Le,name:Le,active:!1})):Pt.default.createElement(un.Text,{color:"gray"},"No selected packages..."),Pt.default.createElement(A,null))},{});if(typeof D=="undefined")return 1;let L=Array.from(D.keys()).filter($=>D.get($)==="regular"),N=Array.from(D.keys()).filter($=>D.get($)==="dev"),j=Array.from(D.keys()).filter($=>D.get($)==="peer");return L.length&&await this.cli.run(["add",...L]),N.length&&await this.cli.run(["add","--dev",...N]),j&&await this.cli.run(["add","--peer",...j]),0}};ud.paths=[["search"]],ud.usage=DT.Command.Usage({category:"Interactive commands",description:"open the search interface",details:` + This command opens a fullscreen terminal interface where you can search for and install packages from the npm registry. + `,examples:[["Open the search window","yarn search"]]});var ST=ud;var Im=Er(require("@yarnpkg/cli")),W0=Er(require("@yarnpkg/core"));var sd=Er(ys()),bf=Er(lr());var CT=Er(ys()),TT=Er(lr()),wm=({length:i,active:u})=>{if(i===0)return null;let f=i>1?` ${"-".repeat(i-1)}`:" ";return TT.default.createElement(CT.Text,{dimColor:!u},f)};var xT=function({active:i,skewer:u,options:f,value:c,onChange:g,sizes:t=[]}){let C=f.filter(({label:x})=>!!x).map(({value:x})=>x),A=f.findIndex(x=>x.value===c&&x.label!="");return lm(c,C,{active:i,minus:"left",plus:"right",set:g}),bf.default.createElement(bf.default.Fragment,null,f.map(({label:x},D)=>{let L=D===A,N=t[D]-1||0,j=x.replace(/[\u001b\u009b][[()#;?]*(?:[0-9]{1,4}(?:;[0-9]{0,4})*)?[0-9A-ORZcf-nqry=><]/g,""),$=Math.max(0,N-j.length-2);return x?bf.default.createElement(sd.Box,{key:x,width:N,marginLeft:1},bf.default.createElement(sd.Text,{wrap:"truncate"},bf.default.createElement(om,{active:L})," ",x),u?bf.default.createElement(wm,{active:i,length:$}):null):bf.default.createElement(sd.Box,{key:`spacer-${D}`,width:N,marginLeft:1})}))};var c9=Er(require("@yarnpkg/plugin-essentials")),a9=Er(require("clipanion")),d9=Er(f9()),tr=Er(ys()),pn=Er(lr()),p9=Er(require("semver")),h9=/^((?:[\^~]|>=?)?)([0-9]+)(\.[0-9]+)(\.[0-9]+)((?:-\S+)?)$/,WH=10,md=class extends Im.BaseCommand{async execute(){let u=await W0.Configuration.find(this.context.cwd,this.context.plugins),{project:f,workspace:c}=await W0.Project.find(u,this.context.cwd),g=await W0.Cache.find(u);if(!c)throw new Im.WorkspaceRequiredError(f.cwd,this.context.cwd);await f.restoreInstallState({restoreResolutions:!1});let t=(Q,oe)=>{let Se=(0,d9.diffWords)(Q,oe),me="";for(let De of Se)De.added?me+=W0.formatUtils.pretty(u,De.value,"green"):De.removed||(me+=De.value);return me},C=(Q,oe)=>{if(Q===oe)return oe;let Se=W0.structUtils.parseRange(Q),me=W0.structUtils.parseRange(oe),De=Se.selector.match(h9),J=me.selector.match(h9);if(!De||!J)return t(Q,oe);let Te=["gray","red","yellow","green","magenta"],Oe=null,Le="";for(let ot=1;ot{let me=await c9.suggestUtils.fetchDescriptorFrom(Q,Se,{project:f,cache:g,preserveModifier:oe,workspace:c});return me!==null?me.range:Q.range},x=async Q=>{let oe=p9.default.valid(Q.range)?`^${Q.range}`:Q.range,[Se,me]=await Promise.all([A(Q,Q.range,oe).catch(()=>null),A(Q,Q.range,"latest").catch(()=>null)]),De=[{value:null,label:Q.range}];return Se&&Se!==Q.range?De.push({value:Se,label:C(Q.range,Se)}):De.push({value:null,label:""}),me&&me!==Se&&me!==Q.range?De.push({value:me,label:C(Q.range,me)}):De.push({value:null,label:""}),De},D=()=>pn.default.createElement(tr.Box,{flexDirection:"row"},pn.default.createElement(tr.Box,{flexDirection:"column",width:49},pn.default.createElement(tr.Box,{marginLeft:1},pn.default.createElement(tr.Text,null,"Press ",pn.default.createElement(tr.Text,{bold:!0,color:"cyanBright"},""),"/",pn.default.createElement(tr.Text,{bold:!0,color:"cyanBright"},"")," to select packages.")),pn.default.createElement(tr.Box,{marginLeft:1},pn.default.createElement(tr.Text,null,"Press ",pn.default.createElement(tr.Text,{bold:!0,color:"cyanBright"},""),"/",pn.default.createElement(tr.Text,{bold:!0,color:"cyanBright"},"")," to select versions."))),pn.default.createElement(tr.Box,{flexDirection:"column"},pn.default.createElement(tr.Box,{marginLeft:1},pn.default.createElement(tr.Text,null,"Press ",pn.default.createElement(tr.Text,{bold:!0,color:"cyanBright"},"")," to install.")),pn.default.createElement(tr.Box,{marginLeft:1},pn.default.createElement(tr.Text,null,"Press ",pn.default.createElement(tr.Text,{bold:!0,color:"cyanBright"},"")," to abort.")))),L=()=>pn.default.createElement(tr.Box,{flexDirection:"row",paddingTop:1,paddingBottom:1},pn.default.createElement(tr.Box,{width:50},pn.default.createElement(tr.Text,{bold:!0},pn.default.createElement(tr.Text,{color:"greenBright"},"?")," Pick the packages you want to upgrade.")),pn.default.createElement(tr.Box,{width:17},pn.default.createElement(tr.Text,{bold:!0,underline:!0,color:"gray"},"Current")),pn.default.createElement(tr.Box,{width:17},pn.default.createElement(tr.Text,{bold:!0,underline:!0,color:"gray"},"Range")),pn.default.createElement(tr.Box,{width:17},pn.default.createElement(tr.Text,{bold:!0,underline:!0,color:"gray"},"Latest"))),N=({active:Q,descriptor:oe,suggestions:Se})=>{let[me,De]=Ec(oe.descriptorHash,null),J=W0.structUtils.stringifyIdent(oe),Te=Math.max(0,45-J.length);return pn.default.createElement(pn.default.Fragment,null,pn.default.createElement(tr.Box,null,pn.default.createElement(tr.Box,{width:45},pn.default.createElement(tr.Text,{bold:!0},W0.structUtils.prettyIdent(u,oe)),pn.default.createElement(wm,{active:Q,length:Te})),Se!==null?pn.default.createElement(xT,{active:Q,options:Se,value:me,skewer:!0,onChange:De,sizes:[17,17,17]}):pn.default.createElement(tr.Box,{marginLeft:2},pn.default.createElement(tr.Text,{color:"gray"},"Fetching suggestions..."))))},j=({dependencies:Q})=>{let[oe,Se]=(0,pn.useState)(null),me=(0,pn.useRef)(!0);return(0,pn.useEffect)(()=>()=>{me.current=!1}),(0,pn.useEffect)(()=>{Promise.all(Q.map(De=>x(De))).then(De=>{let J=Q.map((Te,Oe)=>{let Le=De[Oe];return[Te,Le]}).filter(([Te,Oe])=>Oe.filter(Le=>Le.label!=="").length>1);me.current&&Se(J)})},[]),oe?oe.length?pn.default.createElement(fm,{radius:WH,children:oe.map(([De,J])=>pn.default.createElement(N,{key:De.descriptorHash,active:!1,descriptor:De,suggestions:J}))}):pn.default.createElement(tr.Text,null,"No upgrades found"):pn.default.createElement(tr.Text,null,"Fetching suggestions...")},h=await dm(({useSubmit:Q})=>{Q(Ec());let oe=new Map;for(let me of f.workspaces)for(let De of["dependencies","devDependencies"])for(let J of me.manifest[De].values())f.tryWorkspaceByDescriptor(J)===null&&oe.set(J.descriptorHash,J);let Se=W0.miscUtils.sortMap(oe.values(),me=>W0.structUtils.stringifyDescriptor(me));return pn.default.createElement(tr.Box,{flexDirection:"column"},pn.default.createElement(D,null),pn.default.createElement(L,null),pn.default.createElement(j,{dependencies:Se}))},{});if(typeof h=="undefined")return 1;let re=!1;for(let Q of f.workspaces)for(let oe of["dependencies","devDependencies"]){let Se=Q.manifest[oe];for(let me of Se.values()){let De=h.get(me.descriptorHash);typeof De!="undefined"&&De!==null&&(Se.set(me.identHash,W0.structUtils.makeDescriptor(me,De)),re=!0)}}return re?(await W0.StreamReport.start({configuration:u,stdout:this.context.stdout,includeLogs:!this.context.quiet},async Q=>{await f.install({cache:g,report:Q})})).exitCode():0}};md.paths=[["upgrade-interactive"]],md.usage=a9.Command.Usage({category:"Interactive commands",description:"open the upgrade interface",details:` + This command opens a fullscreen terminal interface where you can see any out of date packages used by your application, their status compared to the latest versions available on the remote registry, and select packages to upgrade. + `,examples:[["Open the upgrade window","yarn upgrade-interactive"]]});var m9=md;var bH={commands:[ST,m9]},GH=bH;return HH;})(); +/* +object-assign +(c) Sindre Sorhus +@license MIT +*/ /** * @license * Lodash @@ -19,35 +309,23 @@ e.exports=function t(r){"use strict";var i=n(9381),o=n(7382),u=n(7181);function * Released under MIT license * Based on Underscore.js 1.8.3 * Copyright Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors - */e=n.nmd(e),function(){var i="Expected a function",o="__lodash_placeholder__",u=[["ary",128],["bind",1],["bindKey",2],["curry",8],["curryRight",16],["flip",512],["partial",32],["partialRight",64],["rearg",256]],a="[object Arguments]",l="[object Array]",s="[object Boolean]",c="[object Date]",f="[object Error]",d="[object Function]",p="[object GeneratorFunction]",h="[object Map]",v="[object Number]",m="[object Object]",g="[object RegExp]",y="[object Set]",_="[object String]",b="[object Symbol]",w="[object WeakMap]",E="[object ArrayBuffer]",D="[object DataView]",S="[object Float32Array]",C="[object Float64Array]",k="[object Int8Array]",T="[object Int16Array]",x="[object Int32Array]",A="[object Uint8Array]",O="[object Uint16Array]",P="[object Uint32Array]",I=/\b__p \+= '';/g,N=/\b(__p \+=) '' \+/g,M=/(__e\(.*?\)|\b__t\)) \+\n'';/g,R=/&(?:amp|lt|gt|quot|#39);/g,F=/[&<>"']/g,L=RegExp(R.source),B=RegExp(F.source),j=/<%-([\s\S]+?)%>/g,U=/<%([\s\S]+?)%>/g,z=/<%=([\s\S]+?)%>/g,W=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,H=/^\w*$/,V=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,q=/[\\^$.*+?()[\]{}|]/g,G=RegExp(q.source),$=/^\s+|\s+$/g,Y=/^\s+/,K=/\s+$/,X=/\{(?:\n\/\* \[wrapped with .+\] \*\/)?\n?/,Q=/\{\n\/\* \[wrapped with (.+)\] \*/,J=/,? & /,Z=/[^\x00-\x2f\x3a-\x40\x5b-\x60\x7b-\x7f]+/g,ee=/\\(\\)?/g,te=/\$\{([^\\}]*(?:\\.[^\\}]*)*)\}/g,ne=/\w*$/,re=/^[-+]0x[0-9a-f]+$/i,ie=/^0b[01]+$/i,oe=/^\[object .+?Constructor\]$/,ue=/^0o[0-7]+$/i,ae=/^(?:0|[1-9]\d*)$/,le=/[\xc0-\xd6\xd8-\xf6\xf8-\xff\u0100-\u017f]/g,se=/($^)/,ce=/['\n\r\u2028\u2029\\]/g,fe="\\u0300-\\u036f\\ufe20-\\ufe2f\\u20d0-\\u20ff",de="\\xac\\xb1\\xd7\\xf7\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf\\u2000-\\u206f \\t\\x0b\\f\\xa0\\ufeff\\n\\r\\u2028\\u2029\\u1680\\u180e\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200a\\u202f\\u205f\\u3000",pe="[\\ud800-\\udfff]",he="["+de+"]",ve="["+fe+"]",me="\\d+",ge="[\\u2700-\\u27bf]",ye="[a-z\\xdf-\\xf6\\xf8-\\xff]",_e="[^\\ud800-\\udfff"+de+me+"\\u2700-\\u27bfa-z\\xdf-\\xf6\\xf8-\\xffA-Z\\xc0-\\xd6\\xd8-\\xde]",be="\\ud83c[\\udffb-\\udfff]",we="[^\\ud800-\\udfff]",Ee="(?:\\ud83c[\\udde6-\\uddff]){2}",De="[\\ud800-\\udbff][\\udc00-\\udfff]",Se="[A-Z\\xc0-\\xd6\\xd8-\\xde]",Ce="(?:"+ye+"|"+_e+")",ke="(?:"+Se+"|"+_e+")",Te="(?:"+ve+"|"+be+")"+"?",xe="[\\ufe0e\\ufe0f]?"+Te+("(?:\\u200d(?:"+[we,Ee,De].join("|")+")[\\ufe0e\\ufe0f]?"+Te+")*"),Ae="(?:"+[ge,Ee,De].join("|")+")"+xe,Oe="(?:"+[we+ve+"?",ve,Ee,De,pe].join("|")+")",Pe=RegExp("['’]","g"),Ie=RegExp(ve,"g"),Ne=RegExp(be+"(?="+be+")|"+Oe+xe,"g"),Me=RegExp([Se+"?"+ye+"+(?:['’](?:d|ll|m|re|s|t|ve))?(?="+[he,Se,"$"].join("|")+")",ke+"+(?:['’](?:D|LL|M|RE|S|T|VE))?(?="+[he,Se+Ce,"$"].join("|")+")",Se+"?"+Ce+"+(?:['’](?:d|ll|m|re|s|t|ve))?",Se+"+(?:['’](?:D|LL|M|RE|S|T|VE))?","\\d*(?:1ST|2ND|3RD|(?![123])\\dTH)(?=\\b|[a-z_])","\\d*(?:1st|2nd|3rd|(?![123])\\dth)(?=\\b|[A-Z_])",me,Ae].join("|"),"g"),Re=RegExp("[\\u200d\\ud800-\\udfff"+fe+"\\ufe0e\\ufe0f]"),Fe=/[a-z][A-Z]|[A-Z]{2}[a-z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/,Le=["Array","Buffer","DataView","Date","Error","Float32Array","Float64Array","Function","Int8Array","Int16Array","Int32Array","Map","Math","Object","Promise","RegExp","Set","String","Symbol","TypeError","Uint8Array","Uint8ClampedArray","Uint16Array","Uint32Array","WeakMap","_","clearTimeout","isFinite","parseInt","setTimeout"],Be=-1,je={};je[S]=je[C]=je[k]=je[T]=je[x]=je[A]=je["[object Uint8ClampedArray]"]=je[O]=je[P]=!0,je[a]=je[l]=je[E]=je[s]=je[D]=je[c]=je[f]=je[d]=je[h]=je[v]=je[m]=je[g]=je[y]=je[_]=je[w]=!1;var Ue={};Ue[a]=Ue[l]=Ue[E]=Ue[D]=Ue[s]=Ue[c]=Ue[S]=Ue[C]=Ue[k]=Ue[T]=Ue[x]=Ue[h]=Ue[v]=Ue[m]=Ue[g]=Ue[y]=Ue[_]=Ue[b]=Ue[A]=Ue["[object Uint8ClampedArray]"]=Ue[O]=Ue[P]=!0,Ue[f]=Ue[d]=Ue[w]=!1;var ze={"\\":"\\","'":"'","\n":"n","\r":"r","\u2028":"u2028","\u2029":"u2029"},We=parseFloat,He=parseInt,Ve="object"==typeof global&&global&&global.Object===Object&&global,qe="object"==typeof self&&self&&self.Object===Object&&self,Ge=Ve||qe||Function("return this")(),$e=t&&!t.nodeType&&t,Ye=$e&&e&&!e.nodeType&&e,Ke=Ye&&Ye.exports===$e,Xe=Ke&&Ve.process,Qe=function(){try{var e=Ye&&Ye.require&&Ye.require("util").types;return e||Xe&&Xe.binding&&Xe.binding("util")}catch(e){}}(),Je=Qe&&Qe.isArrayBuffer,Ze=Qe&&Qe.isDate,et=Qe&&Qe.isMap,tt=Qe&&Qe.isRegExp,nt=Qe&&Qe.isSet,rt=Qe&&Qe.isTypedArray;function it(e,t,n){switch(n.length){case 0:return e.call(t);case 1:return e.call(t,n[0]);case 2:return e.call(t,n[0],n[1]);case 3:return e.call(t,n[0],n[1],n[2])}return e.apply(t,n)}function ot(e,t,n,r){for(var i=-1,o=null==e?0:e.length;++i-1}function ft(e,t,n){for(var r=-1,i=null==e?0:e.length;++r-1;);return n}function Nt(e,t){for(var n=e.length;n--&&bt(t,e[n],0)>-1;);return n}function Mt(e,t){for(var n=e.length,r=0;n--;)e[n]===t&&++r;return r}var Rt=Ct({À:"A",Á:"A",Â:"A",Ã:"A",Ä:"A",Å:"A",à:"a",á:"a",â:"a",ã:"a",ä:"a",å:"a",Ç:"C",ç:"c",Ð:"D",ð:"d",È:"E",É:"E",Ê:"E",Ë:"E",è:"e",é:"e",ê:"e",ë:"e",Ì:"I",Í:"I",Î:"I",Ï:"I",ì:"i",í:"i",î:"i",ï:"i",Ñ:"N",ñ:"n",Ò:"O",Ó:"O",Ô:"O",Õ:"O",Ö:"O",Ø:"O",ò:"o",ó:"o",ô:"o",õ:"o",ö:"o",ø:"o",Ù:"U",Ú:"U",Û:"U",Ü:"U",ù:"u",ú:"u",û:"u",ü:"u",Ý:"Y",ý:"y",ÿ:"y",Æ:"Ae",æ:"ae",Þ:"Th",þ:"th",ß:"ss",Ā:"A",Ă:"A",Ą:"A",ā:"a",ă:"a",ą:"a",Ć:"C",Ĉ:"C",Ċ:"C",Č:"C",ć:"c",ĉ:"c",ċ:"c",č:"c",Ď:"D",Đ:"D",ď:"d",đ:"d",Ē:"E",Ĕ:"E",Ė:"E",Ę:"E",Ě:"E",ē:"e",ĕ:"e",ė:"e",ę:"e",ě:"e",Ĝ:"G",Ğ:"G",Ġ:"G",Ģ:"G",ĝ:"g",ğ:"g",ġ:"g",ģ:"g",Ĥ:"H",Ħ:"H",ĥ:"h",ħ:"h",Ĩ:"I",Ī:"I",Ĭ:"I",Į:"I",İ:"I",ĩ:"i",ī:"i",ĭ:"i",į:"i",ı:"i",Ĵ:"J",ĵ:"j",Ķ:"K",ķ:"k",ĸ:"k",Ĺ:"L",Ļ:"L",Ľ:"L",Ŀ:"L",Ł:"L",ĺ:"l",ļ:"l",ľ:"l",ŀ:"l",ł:"l",Ń:"N",Ņ:"N",Ň:"N",Ŋ:"N",ń:"n",ņ:"n",ň:"n",ŋ:"n",Ō:"O",Ŏ:"O",Ő:"O",ō:"o",ŏ:"o",ő:"o",Ŕ:"R",Ŗ:"R",Ř:"R",ŕ:"r",ŗ:"r",ř:"r",Ś:"S",Ŝ:"S",Ş:"S",Š:"S",ś:"s",ŝ:"s",ş:"s",š:"s",Ţ:"T",Ť:"T",Ŧ:"T",ţ:"t",ť:"t",ŧ:"t",Ũ:"U",Ū:"U",Ŭ:"U",Ů:"U",Ű:"U",Ų:"U",ũ:"u",ū:"u",ŭ:"u",ů:"u",ű:"u",ų:"u",Ŵ:"W",ŵ:"w",Ŷ:"Y",ŷ:"y",Ÿ:"Y",Ź:"Z",Ż:"Z",Ž:"Z",ź:"z",ż:"z",ž:"z",IJ:"IJ",ij:"ij",Œ:"Oe",œ:"oe",ʼn:"'n",ſ:"s"}),Ft=Ct({"&":"&","<":"<",">":">",'"':""","'":"'"});function Lt(e){return"\\"+ze[e]}function Bt(e){return Re.test(e)}function jt(e){var t=-1,n=Array(e.size);return e.forEach((function(e,r){n[++t]=[r,e]})),n}function Ut(e,t){return function(n){return e(t(n))}}function zt(e,t){for(var n=-1,r=e.length,i=0,u=[];++n",""":'"',"'":"'"});var $t=function e(t){var n,r=(t=null==t?Ge:$t.defaults(Ge.Object(),t,$t.pick(Ge,Le))).Array,fe=t.Date,de=t.Error,pe=t.Function,he=t.Math,ve=t.Object,me=t.RegExp,ge=t.String,ye=t.TypeError,_e=r.prototype,be=pe.prototype,we=ve.prototype,Ee=t["__core-js_shared__"],De=be.toString,Se=we.hasOwnProperty,Ce=0,ke=(n=/[^.]+$/.exec(Ee&&Ee.keys&&Ee.keys.IE_PROTO||""))?"Symbol(src)_1."+n:"",Te=we.toString,xe=De.call(ve),Ae=Ge._,Oe=me("^"+De.call(Se).replace(q,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$"),Ne=Ke?t.Buffer:void 0,Re=t.Symbol,ze=t.Uint8Array,Ve=Ne?Ne.allocUnsafe:void 0,qe=Ut(ve.getPrototypeOf,ve),$e=ve.create,Ye=we.propertyIsEnumerable,Xe=_e.splice,Qe=Re?Re.isConcatSpreadable:void 0,gt=Re?Re.iterator:void 0,Ct=Re?Re.toStringTag:void 0,Yt=function(){try{var e=Zi(ve,"defineProperty");return e({},"",{}),e}catch(e){}}(),Kt=t.clearTimeout!==Ge.clearTimeout&&t.clearTimeout,Xt=fe&&fe.now!==Ge.Date.now&&fe.now,Qt=t.setTimeout!==Ge.setTimeout&&t.setTimeout,Jt=he.ceil,Zt=he.floor,en=ve.getOwnPropertySymbols,tn=Ne?Ne.isBuffer:void 0,nn=t.isFinite,rn=_e.join,on=Ut(ve.keys,ve),un=he.max,an=he.min,ln=fe.now,sn=t.parseInt,cn=he.random,fn=_e.reverse,dn=Zi(t,"DataView"),pn=Zi(t,"Map"),hn=Zi(t,"Promise"),vn=Zi(t,"Set"),mn=Zi(t,"WeakMap"),gn=Zi(ve,"create"),yn=mn&&new mn,_n={},bn=To(dn),wn=To(pn),En=To(hn),Dn=To(vn),Sn=To(mn),Cn=Re?Re.prototype:void 0,kn=Cn?Cn.valueOf:void 0,Tn=Cn?Cn.toString:void 0;function xn(e){if(Vu(e)&&!Nu(e)&&!(e instanceof In)){if(e instanceof Pn)return e;if(Se.call(e,"__wrapped__"))return xo(e)}return new Pn(e)}var An=function(){function e(){}return function(t){if(!Hu(t))return{};if($e)return $e(t);e.prototype=t;var n=new e;return e.prototype=void 0,n}}();function On(){}function Pn(e,t){this.__wrapped__=e,this.__actions__=[],this.__chain__=!!t,this.__index__=0,this.__values__=void 0}function In(e){this.__wrapped__=e,this.__actions__=[],this.__dir__=1,this.__filtered__=!1,this.__iteratees__=[],this.__takeCount__=4294967295,this.__views__=[]}function Nn(e){var t=-1,n=null==e?0:e.length;for(this.clear();++t=t?e:t)),e}function Xn(e,t,n,r,i,o){var u,l=1&t,f=2&t,w=4&t;if(n&&(u=i?n(e,r,i,o):n(e)),void 0!==u)return u;if(!Hu(e))return e;var I=Nu(e);if(I){if(u=function(e){var t=e.length,n=new e.constructor(t);t&&"string"==typeof e[0]&&Se.call(e,"index")&&(n.index=e.index,n.input=e.input);return n}(e),!l)return gi(e,u)}else{var N=no(e),M=N==d||N==p;if(Lu(e))return fi(e,l);if(N==m||N==a||M&&!i){if(u=f||M?{}:io(e),!l)return f?function(e,t){return yi(e,to(e),t)}(e,function(e,t){return e&&yi(t,wa(t),e)}(u,e)):function(e,t){return yi(e,eo(e),t)}(e,Gn(u,e))}else{if(!Ue[N])return i?e:{};u=function(e,t,n){var r=e.constructor;switch(t){case E:return di(e);case s:case c:return new r(+e);case D:return function(e,t){var n=t?di(e.buffer):e.buffer;return new e.constructor(n,e.byteOffset,e.byteLength)}(e,n);case S:case C:case k:case T:case x:case A:case"[object Uint8ClampedArray]":case O:case P:return pi(e,n);case h:return new r;case v:case _:return new r(e);case g:return function(e){var t=new e.constructor(e.source,ne.exec(e));return t.lastIndex=e.lastIndex,t}(e);case y:return new r;case b:return i=e,kn?ve(kn.call(i)):{}}var i}(e,N,l)}}o||(o=new Ln);var R=o.get(e);if(R)return R;o.set(e,u),Ku(e)?e.forEach((function(r){u.add(Xn(r,t,n,r,e,o))})):qu(e)&&e.forEach((function(r,i){u.set(i,Xn(r,t,n,i,e,o))}));var F=I?void 0:(w?f?Gi:qi:f?wa:ba)(e);return ut(F||e,(function(r,i){F&&(r=e[i=r]),Hn(u,i,Xn(r,t,n,i,e,o))})),u}function Qn(e,t,n){var r=n.length;if(null==e)return!r;for(e=ve(e);r--;){var i=n[r],o=t[i],u=e[i];if(void 0===u&&!(i in e)||!o(u))return!1}return!0}function Jn(e,t,n){if("function"!=typeof e)throw new ye(i);return bo((function(){e.apply(void 0,n)}),t)}function Zn(e,t,n,r){var i=-1,o=ct,u=!0,a=e.length,l=[],s=t.length;if(!a)return l;n&&(t=dt(t,At(n))),r?(o=ft,u=!1):t.length>=200&&(o=Pt,u=!1,t=new Fn(t));e:for(;++i-1},Mn.prototype.set=function(e,t){var n=this.__data__,r=Vn(n,e);return r<0?(++this.size,n.push([e,t])):n[r][1]=t,this},Rn.prototype.clear=function(){this.size=0,this.__data__={hash:new Nn,map:new(pn||Mn),string:new Nn}},Rn.prototype.delete=function(e){var t=Qi(this,e).delete(e);return this.size-=t?1:0,t},Rn.prototype.get=function(e){return Qi(this,e).get(e)},Rn.prototype.has=function(e){return Qi(this,e).has(e)},Rn.prototype.set=function(e,t){var n=Qi(this,e),r=n.size;return n.set(e,t),this.size+=n.size==r?0:1,this},Fn.prototype.add=Fn.prototype.push=function(e){return this.__data__.set(e,"__lodash_hash_undefined__"),this},Fn.prototype.has=function(e){return this.__data__.has(e)},Ln.prototype.clear=function(){this.__data__=new Mn,this.size=0},Ln.prototype.delete=function(e){var t=this.__data__,n=t.delete(e);return this.size=t.size,n},Ln.prototype.get=function(e){return this.__data__.get(e)},Ln.prototype.has=function(e){return this.__data__.has(e)},Ln.prototype.set=function(e,t){var n=this.__data__;if(n instanceof Mn){var r=n.__data__;if(!pn||r.length<199)return r.push([e,t]),this.size=++n.size,this;n=this.__data__=new Rn(r)}return n.set(e,t),this.size=n.size,this};var er=wi(lr),tr=wi(sr,!0);function nr(e,t){var n=!0;return er(e,(function(e,r,i){return n=!!t(e,r,i)})),n}function rr(e,t,n){for(var r=-1,i=e.length;++r0&&n(a)?t>1?or(a,t-1,n,r,i):pt(i,a):r||(i[i.length]=a)}return i}var ur=Ei(),ar=Ei(!0);function lr(e,t){return e&&ur(e,t,ba)}function sr(e,t){return e&&ar(e,t,ba)}function cr(e,t){return st(t,(function(t){return Uu(e[t])}))}function fr(e,t){for(var n=0,r=(t=ai(t,e)).length;null!=e&&nt}function vr(e,t){return null!=e&&Se.call(e,t)}function mr(e,t){return null!=e&&t in ve(e)}function gr(e,t,n){for(var i=n?ft:ct,o=e[0].length,u=e.length,a=u,l=r(u),s=1/0,c=[];a--;){var f=e[a];a&&t&&(f=dt(f,At(t))),s=an(f.length,s),l[a]=!n&&(t||o>=120&&f.length>=120)?new Fn(a&&f):void 0}f=e[0];var d=-1,p=l[0];e:for(;++d=a)return l;var s=n[r];return l*("desc"==s?-1:1)}}return e.index-t.index}(e,t,n)}))}function Nr(e,t,n){for(var r=-1,i=t.length,o={};++r-1;)a!==e&&Xe.call(a,l,1),Xe.call(e,l,1);return e}function Rr(e,t){for(var n=e?t.length:0,r=n-1;n--;){var i=t[n];if(n==r||i!==o){var o=i;uo(i)?Xe.call(e,i,1):Zr(e,i)}}return e}function Fr(e,t){return e+Zt(cn()*(t-e+1))}function Lr(e,t){var n="";if(!e||t<1||t>9007199254740991)return n;do{t%2&&(n+=e),(t=Zt(t/2))&&(e+=e)}while(t);return n}function Br(e,t){return wo(vo(e,t,Ga),e+"")}function jr(e){return jn(Aa(e))}function Ur(e,t){var n=Aa(e);return So(n,Kn(t,0,n.length))}function zr(e,t,n,r){if(!Hu(e))return e;for(var i=-1,o=(t=ai(t,e)).length,u=o-1,a=e;null!=a&&++io?0:o+t),(n=n>o?o:n)<0&&(n+=o),o=t>n?0:n-t>>>0,t>>>=0;for(var u=r(o);++i>>1,u=e[o];null!==u&&!Qu(u)&&(n?u<=t:u=200){var s=t?null:Li(e);if(s)return Wt(s);u=!1,i=Pt,l=new Fn}else l=t?[]:a;e:for(;++r=r?e:qr(e,t,n)}var ci=Kt||function(e){return Ge.clearTimeout(e)};function fi(e,t){if(t)return e.slice();var n=e.length,r=Ve?Ve(n):new e.constructor(n);return e.copy(r),r}function di(e){var t=new e.constructor(e.byteLength);return new ze(t).set(new ze(e)),t}function pi(e,t){var n=t?di(e.buffer):e.buffer;return new e.constructor(n,e.byteOffset,e.length)}function hi(e,t){if(e!==t){var n=void 0!==e,r=null===e,i=e==e,o=Qu(e),u=void 0!==t,a=null===t,l=t==t,s=Qu(t);if(!a&&!s&&!o&&e>t||o&&u&&l&&!a&&!s||r&&u&&l||!n&&l||!i)return 1;if(!r&&!o&&!s&&e1?n[i-1]:void 0,u=i>2?n[2]:void 0;for(o=e.length>3&&"function"==typeof o?(i--,o):void 0,u&&ao(n[0],n[1],u)&&(o=i<3?void 0:o,i=1),t=ve(t);++r-1?i[o?t[u]:u]:void 0}}function Ti(e){return Vi((function(t){var n=t.length,r=n,o=Pn.prototype.thru;for(e&&t.reverse();r--;){var u=t[r];if("function"!=typeof u)throw new ye(i);if(o&&!a&&"wrapper"==Yi(u))var a=new Pn([],!0)}for(r=a?r:n;++r1&&_.reverse(),f&&sa))return!1;var s=o.get(e),c=o.get(t);if(s&&c)return s==t&&c==e;var f=-1,d=!0,p=2&n?new Fn:void 0;for(o.set(e,t),o.set(t,e);++f-1&&e%1==0&&e1?"& ":"")+t[r],t=t.join(n>2?", ":" "),e.replace(X,"{\n/* [wrapped with "+t+"] */\n")}(r,function(e,t){return ut(u,(function(n){var r="_."+n[0];t&n[1]&&!ct(e,r)&&e.push(r)})),e.sort()}(function(e){var t=e.match(Q);return t?t[1].split(J):[]}(r),n)))}function Do(e){var t=0,n=0;return function(){var r=ln(),i=16-(r-n);if(n=r,i>0){if(++t>=800)return arguments[0]}else t=0;return e.apply(void 0,arguments)}}function So(e,t){var n=-1,r=e.length,i=r-1;for(t=void 0===t?r:t;++n1?e[t-1]:void 0;return n="function"==typeof n?(e.pop(),n):void 0,Yo(e,n)}));function tu(e){var t=xn(e);return t.__chain__=!0,t}function nu(e,t){return t(e)}var ru=Vi((function(e){var t=e.length,n=t?e[0]:0,r=this.__wrapped__,i=function(t){return Yn(t,e)};return!(t>1||this.__actions__.length)&&r instanceof In&&uo(n)?((r=r.slice(n,+n+(t?1:0))).__actions__.push({func:nu,args:[i],thisArg:void 0}),new Pn(r,this.__chain__).thru((function(e){return t&&!e.length&&e.push(void 0),e}))):this.thru(i)}));var iu=_i((function(e,t,n){Se.call(e,n)?++e[n]:$n(e,n,1)}));var ou=ki(Io),uu=ki(No);function au(e,t){return(Nu(e)?ut:er)(e,Xi(t,3))}function lu(e,t){return(Nu(e)?at:tr)(e,Xi(t,3))}var su=_i((function(e,t,n){Se.call(e,n)?e[n].push(t):$n(e,n,[t])}));var cu=Br((function(e,t,n){var i=-1,o="function"==typeof t,u=Ru(e)?r(e.length):[];return er(e,(function(e){u[++i]=o?it(t,e,n):yr(e,t,n)})),u})),fu=_i((function(e,t,n){$n(e,n,t)}));function du(e,t){return(Nu(e)?dt:Tr)(e,Xi(t,3))}var pu=_i((function(e,t,n){e[n?0:1].push(t)}),(function(){return[[],[]]}));var hu=Br((function(e,t){if(null==e)return[];var n=t.length;return n>1&&ao(e,t[0],t[1])?t=[]:n>2&&ao(t[0],t[1],t[2])&&(t=[t[0]]),Ir(e,or(t,1),[])})),vu=Xt||function(){return Ge.Date.now()};function mu(e,t,n){return t=n?void 0:t,ji(e,128,void 0,void 0,void 0,void 0,t=e&&null==t?e.length:t)}function gu(e,t){var n;if("function"!=typeof t)throw new ye(i);return e=ra(e),function(){return--e>0&&(n=t.apply(this,arguments)),e<=1&&(t=void 0),n}}var yu=Br((function(e,t,n){var r=1;if(n.length){var i=zt(n,Ki(yu));r|=32}return ji(e,r,t,n,i)})),_u=Br((function(e,t,n){var r=3;if(n.length){var i=zt(n,Ki(_u));r|=32}return ji(t,r,e,n,i)}));function bu(e,t,n){var r,o,u,a,l,s,c=0,f=!1,d=!1,p=!0;if("function"!=typeof e)throw new ye(i);function h(t){var n=r,i=o;return r=o=void 0,c=t,a=e.apply(i,n)}function v(e){return c=e,l=bo(g,t),f?h(e):a}function m(e){var n=e-s;return void 0===s||n>=t||n<0||d&&e-c>=u}function g(){var e=vu();if(m(e))return y(e);l=bo(g,function(e){var n=t-(e-s);return d?an(n,u-(e-c)):n}(e))}function y(e){return l=void 0,p&&r?h(e):(r=o=void 0,a)}function _(){var e=vu(),n=m(e);if(r=arguments,o=this,s=e,n){if(void 0===l)return v(s);if(d)return ci(l),l=bo(g,t),h(s)}return void 0===l&&(l=bo(g,t)),a}return t=oa(t)||0,Hu(n)&&(f=!!n.leading,u=(d="maxWait"in n)?un(oa(n.maxWait)||0,t):u,p="trailing"in n?!!n.trailing:p),_.cancel=function(){void 0!==l&&ci(l),c=0,r=s=o=l=void 0},_.flush=function(){return void 0===l?a:y(vu())},_}var wu=Br((function(e,t){return Jn(e,1,t)})),Eu=Br((function(e,t,n){return Jn(e,oa(t)||0,n)}));function Du(e,t){if("function"!=typeof e||null!=t&&"function"!=typeof t)throw new ye(i);var n=function(){var r=arguments,i=t?t.apply(this,r):r[0],o=n.cache;if(o.has(i))return o.get(i);var u=e.apply(this,r);return n.cache=o.set(i,u)||o,u};return n.cache=new(Du.Cache||Rn),n}function Su(e){if("function"!=typeof e)throw new ye(i);return function(){var t=arguments;switch(t.length){case 0:return!e.call(this);case 1:return!e.call(this,t[0]);case 2:return!e.call(this,t[0],t[1]);case 3:return!e.call(this,t[0],t[1],t[2])}return!e.apply(this,t)}}Du.Cache=Rn;var Cu=li((function(e,t){var n=(t=1==t.length&&Nu(t[0])?dt(t[0],At(Xi())):dt(or(t,1),At(Xi()))).length;return Br((function(r){for(var i=-1,o=an(r.length,n);++i=t})),Iu=_r(function(){return arguments}())?_r:function(e){return Vu(e)&&Se.call(e,"callee")&&!Ye.call(e,"callee")},Nu=r.isArray,Mu=Je?At(Je):function(e){return Vu(e)&&pr(e)==E};function Ru(e){return null!=e&&Wu(e.length)&&!Uu(e)}function Fu(e){return Vu(e)&&Ru(e)}var Lu=tn||ol,Bu=Ze?At(Ze):function(e){return Vu(e)&&pr(e)==c};function ju(e){if(!Vu(e))return!1;var t=pr(e);return t==f||"[object DOMException]"==t||"string"==typeof e.message&&"string"==typeof e.name&&!$u(e)}function Uu(e){if(!Hu(e))return!1;var t=pr(e);return t==d||t==p||"[object AsyncFunction]"==t||"[object Proxy]"==t}function zu(e){return"number"==typeof e&&e==ra(e)}function Wu(e){return"number"==typeof e&&e>-1&&e%1==0&&e<=9007199254740991}function Hu(e){var t=typeof e;return null!=e&&("object"==t||"function"==t)}function Vu(e){return null!=e&&"object"==typeof e}var qu=et?At(et):function(e){return Vu(e)&&no(e)==h};function Gu(e){return"number"==typeof e||Vu(e)&&pr(e)==v}function $u(e){if(!Vu(e)||pr(e)!=m)return!1;var t=qe(e);if(null===t)return!0;var n=Se.call(t,"constructor")&&t.constructor;return"function"==typeof n&&n instanceof n&&De.call(n)==xe}var Yu=tt?At(tt):function(e){return Vu(e)&&pr(e)==g};var Ku=nt?At(nt):function(e){return Vu(e)&&no(e)==y};function Xu(e){return"string"==typeof e||!Nu(e)&&Vu(e)&&pr(e)==_}function Qu(e){return"symbol"==typeof e||Vu(e)&&pr(e)==b}var Ju=rt?At(rt):function(e){return Vu(e)&&Wu(e.length)&&!!je[pr(e)]};var Zu=Mi(kr),ea=Mi((function(e,t){return e<=t}));function ta(e){if(!e)return[];if(Ru(e))return Xu(e)?qt(e):gi(e);if(gt&&e[gt])return function(e){for(var t,n=[];!(t=e.next()).done;)n.push(t.value);return n}(e[gt]());var t=no(e);return(t==h?jt:t==y?Wt:Aa)(e)}function na(e){return e?(e=oa(e))===1/0||e===-1/0?17976931348623157e292*(e<0?-1:1):e==e?e:0:0===e?e:0}function ra(e){var t=na(e),n=t%1;return t==t?n?t-n:t:0}function ia(e){return e?Kn(ra(e),0,4294967295):0}function oa(e){if("number"==typeof e)return e;if(Qu(e))return NaN;if(Hu(e)){var t="function"==typeof e.valueOf?e.valueOf():e;e=Hu(t)?t+"":t}if("string"!=typeof e)return 0===e?e:+e;e=e.replace($,"");var n=ie.test(e);return n||ue.test(e)?He(e.slice(2),n?2:8):re.test(e)?NaN:+e}function ua(e){return yi(e,wa(e))}function aa(e){return null==e?"":Qr(e)}var la=bi((function(e,t){if(fo(t)||Ru(t))yi(t,ba(t),e);else for(var n in t)Se.call(t,n)&&Hn(e,n,t[n])})),sa=bi((function(e,t){yi(t,wa(t),e)})),ca=bi((function(e,t,n,r){yi(t,wa(t),e,r)})),fa=bi((function(e,t,n,r){yi(t,ba(t),e,r)})),da=Vi(Yn);var pa=Br((function(e,t){e=ve(e);var n=-1,r=t.length,i=r>2?t[2]:void 0;for(i&&ao(t[0],t[1],i)&&(r=1);++n1),t})),yi(e,Gi(e),n),r&&(n=Xn(n,7,Wi));for(var i=t.length;i--;)Zr(n,t[i]);return n}));var Ca=Vi((function(e,t){return null==e?{}:function(e,t){return Nr(e,t,(function(t,n){return ma(e,n)}))}(e,t)}));function ka(e,t){if(null==e)return{};var n=dt(Gi(e),(function(e){return[e]}));return t=Xi(t),Nr(e,n,(function(e,n){return t(e,n[0])}))}var Ta=Bi(ba),xa=Bi(wa);function Aa(e){return null==e?[]:Ot(e,ba(e))}var Oa=Si((function(e,t,n){return t=t.toLowerCase(),e+(n?Pa(t):t)}));function Pa(e){return ja(aa(e).toLowerCase())}function Ia(e){return(e=aa(e))&&e.replace(le,Rt).replace(Ie,"")}var Na=Si((function(e,t,n){return e+(n?"-":"")+t.toLowerCase()})),Ma=Si((function(e,t,n){return e+(n?" ":"")+t.toLowerCase()})),Ra=Di("toLowerCase");var Fa=Si((function(e,t,n){return e+(n?"_":"")+t.toLowerCase()}));var La=Si((function(e,t,n){return e+(n?" ":"")+ja(t)}));var Ba=Si((function(e,t,n){return e+(n?" ":"")+t.toUpperCase()})),ja=Di("toUpperCase");function Ua(e,t,n){return e=aa(e),void 0===(t=n?void 0:t)?function(e){return Fe.test(e)}(e)?function(e){return e.match(Me)||[]}(e):function(e){return e.match(Z)||[]}(e):e.match(t)||[]}var za=Br((function(e,t){try{return it(e,void 0,t)}catch(e){return ju(e)?e:new de(e)}})),Wa=Vi((function(e,t){return ut(t,(function(t){t=ko(t),$n(e,t,yu(e[t],e))})),e}));function Ha(e){return function(){return e}}var Va=Ti(),qa=Ti(!0);function Ga(e){return e}function $a(e){return Dr("function"==typeof e?e:Xn(e,1))}var Ya=Br((function(e,t){return function(n){return yr(n,e,t)}})),Ka=Br((function(e,t){return function(n){return yr(e,n,t)}}));function Xa(e,t,n){var r=ba(t),i=cr(t,r);null!=n||Hu(t)&&(i.length||!r.length)||(n=t,t=e,e=this,i=cr(t,ba(t)));var o=!(Hu(n)&&"chain"in n&&!n.chain),u=Uu(e);return ut(i,(function(n){var r=t[n];e[n]=r,u&&(e.prototype[n]=function(){var t=this.__chain__;if(o||t){var n=e(this.__wrapped__),i=n.__actions__=gi(this.__actions__);return i.push({func:r,args:arguments,thisArg:e}),n.__chain__=t,n}return r.apply(e,pt([this.value()],arguments))})})),e}function Qa(){}var Ja=Pi(dt),Za=Pi(lt),el=Pi(mt);function tl(e){return lo(e)?St(ko(e)):function(e){return function(t){return fr(t,e)}}(e)}var nl=Ni(),rl=Ni(!0);function il(){return[]}function ol(){return!1}var ul=Oi((function(e,t){return e+t}),0),al=Fi("ceil"),ll=Oi((function(e,t){return e/t}),1),sl=Fi("floor");var cl,fl=Oi((function(e,t){return e*t}),1),dl=Fi("round"),pl=Oi((function(e,t){return e-t}),0);return xn.after=function(e,t){if("function"!=typeof t)throw new ye(i);return e=ra(e),function(){if(--e<1)return t.apply(this,arguments)}},xn.ary=mu,xn.assign=la,xn.assignIn=sa,xn.assignInWith=ca,xn.assignWith=fa,xn.at=da,xn.before=gu,xn.bind=yu,xn.bindAll=Wa,xn.bindKey=_u,xn.castArray=function(){if(!arguments.length)return[];var e=arguments[0];return Nu(e)?e:[e]},xn.chain=tu,xn.chunk=function(e,t,n){t=(n?ao(e,t,n):void 0===t)?1:un(ra(t),0);var i=null==e?0:e.length;if(!i||t<1)return[];for(var o=0,u=0,a=r(Jt(i/t));oi?0:i+n),(r=void 0===r||r>i?i:ra(r))<0&&(r+=i),r=n>r?0:ia(r);n>>0)?(e=aa(e))&&("string"==typeof t||null!=t&&!Yu(t))&&!(t=Qr(t))&&Bt(e)?si(qt(e),0,n):e.split(t,n):[]},xn.spread=function(e,t){if("function"!=typeof e)throw new ye(i);return t=null==t?0:un(ra(t),0),Br((function(n){var r=n[t],i=si(n,0,t);return r&&pt(i,r),it(e,this,i)}))},xn.tail=function(e){var t=null==e?0:e.length;return t?qr(e,1,t):[]},xn.take=function(e,t,n){return e&&e.length?qr(e,0,(t=n||void 0===t?1:ra(t))<0?0:t):[]},xn.takeRight=function(e,t,n){var r=null==e?0:e.length;return r?qr(e,(t=r-(t=n||void 0===t?1:ra(t)))<0?0:t,r):[]},xn.takeRightWhile=function(e,t){return e&&e.length?ti(e,Xi(t,3),!1,!0):[]},xn.takeWhile=function(e,t){return e&&e.length?ti(e,Xi(t,3)):[]},xn.tap=function(e,t){return t(e),e},xn.throttle=function(e,t,n){var r=!0,o=!0;if("function"!=typeof e)throw new ye(i);return Hu(n)&&(r="leading"in n?!!n.leading:r,o="trailing"in n?!!n.trailing:o),bu(e,t,{leading:r,maxWait:t,trailing:o})},xn.thru=nu,xn.toArray=ta,xn.toPairs=Ta,xn.toPairsIn=xa,xn.toPath=function(e){return Nu(e)?dt(e,ko):Qu(e)?[e]:gi(Co(aa(e)))},xn.toPlainObject=ua,xn.transform=function(e,t,n){var r=Nu(e),i=r||Lu(e)||Ju(e);if(t=Xi(t,4),null==n){var o=e&&e.constructor;n=i?r?new o:[]:Hu(e)&&Uu(o)?An(qe(e)):{}}return(i?ut:lr)(e,(function(e,r,i){return t(n,e,r,i)})),n},xn.unary=function(e){return mu(e,1)},xn.union=Vo,xn.unionBy=qo,xn.unionWith=Go,xn.uniq=function(e){return e&&e.length?Jr(e):[]},xn.uniqBy=function(e,t){return e&&e.length?Jr(e,Xi(t,2)):[]},xn.uniqWith=function(e,t){return t="function"==typeof t?t:void 0,e&&e.length?Jr(e,void 0,t):[]},xn.unset=function(e,t){return null==e||Zr(e,t)},xn.unzip=$o,xn.unzipWith=Yo,xn.update=function(e,t,n){return null==e?e:ei(e,t,ui(n))},xn.updateWith=function(e,t,n,r){return r="function"==typeof r?r:void 0,null==e?e:ei(e,t,ui(n),r)},xn.values=Aa,xn.valuesIn=function(e){return null==e?[]:Ot(e,wa(e))},xn.without=Ko,xn.words=Ua,xn.wrap=function(e,t){return ku(ui(t),e)},xn.xor=Xo,xn.xorBy=Qo,xn.xorWith=Jo,xn.zip=Zo,xn.zipObject=function(e,t){return ii(e||[],t||[],Hn)},xn.zipObjectDeep=function(e,t){return ii(e||[],t||[],zr)},xn.zipWith=eu,xn.entries=Ta,xn.entriesIn=xa,xn.extend=sa,xn.extendWith=ca,Xa(xn,xn),xn.add=ul,xn.attempt=za,xn.camelCase=Oa,xn.capitalize=Pa,xn.ceil=al,xn.clamp=function(e,t,n){return void 0===n&&(n=t,t=void 0),void 0!==n&&(n=(n=oa(n))==n?n:0),void 0!==t&&(t=(t=oa(t))==t?t:0),Kn(oa(e),t,n)},xn.clone=function(e){return Xn(e,4)},xn.cloneDeep=function(e){return Xn(e,5)},xn.cloneDeepWith=function(e,t){return Xn(e,5,t="function"==typeof t?t:void 0)},xn.cloneWith=function(e,t){return Xn(e,4,t="function"==typeof t?t:void 0)},xn.conformsTo=function(e,t){return null==t||Qn(e,t,ba(t))},xn.deburr=Ia,xn.defaultTo=function(e,t){return null==e||e!=e?t:e},xn.divide=ll,xn.endsWith=function(e,t,n){e=aa(e),t=Qr(t);var r=e.length,i=n=void 0===n?r:Kn(ra(n),0,r);return(n-=t.length)>=0&&e.slice(n,i)==t},xn.eq=Au,xn.escape=function(e){return(e=aa(e))&&B.test(e)?e.replace(F,Ft):e},xn.escapeRegExp=function(e){return(e=aa(e))&&G.test(e)?e.replace(q,"\\$&"):e},xn.every=function(e,t,n){var r=Nu(e)?lt:nr;return n&&ao(e,t,n)&&(t=void 0),r(e,Xi(t,3))},xn.find=ou,xn.findIndex=Io,xn.findKey=function(e,t){return yt(e,Xi(t,3),lr)},xn.findLast=uu,xn.findLastIndex=No,xn.findLastKey=function(e,t){return yt(e,Xi(t,3),sr)},xn.floor=sl,xn.forEach=au,xn.forEachRight=lu,xn.forIn=function(e,t){return null==e?e:ur(e,Xi(t,3),wa)},xn.forInRight=function(e,t){return null==e?e:ar(e,Xi(t,3),wa)},xn.forOwn=function(e,t){return e&&lr(e,Xi(t,3))},xn.forOwnRight=function(e,t){return e&&sr(e,Xi(t,3))},xn.get=va,xn.gt=Ou,xn.gte=Pu,xn.has=function(e,t){return null!=e&&ro(e,t,vr)},xn.hasIn=ma,xn.head=Ro,xn.identity=Ga,xn.includes=function(e,t,n,r){e=Ru(e)?e:Aa(e),n=n&&!r?ra(n):0;var i=e.length;return n<0&&(n=un(i+n,0)),Xu(e)?n<=i&&e.indexOf(t,n)>-1:!!i&&bt(e,t,n)>-1},xn.indexOf=function(e,t,n){var r=null==e?0:e.length;if(!r)return-1;var i=null==n?0:ra(n);return i<0&&(i=un(r+i,0)),bt(e,t,i)},xn.inRange=function(e,t,n){return t=na(t),void 0===n?(n=t,t=0):n=na(n),function(e,t,n){return e>=an(t,n)&&e=-9007199254740991&&e<=9007199254740991},xn.isSet=Ku,xn.isString=Xu,xn.isSymbol=Qu,xn.isTypedArray=Ju,xn.isUndefined=function(e){return void 0===e},xn.isWeakMap=function(e){return Vu(e)&&no(e)==w},xn.isWeakSet=function(e){return Vu(e)&&"[object WeakSet]"==pr(e)},xn.join=function(e,t){return null==e?"":rn.call(e,t)},xn.kebabCase=Na,xn.last=jo,xn.lastIndexOf=function(e,t,n){var r=null==e?0:e.length;if(!r)return-1;var i=r;return void 0!==n&&(i=(i=ra(n))<0?un(r+i,0):an(i,r-1)),t==t?function(e,t,n){for(var r=n+1;r--;)if(e[r]===t)return r;return r}(e,t,i):_t(e,Et,i,!0)},xn.lowerCase=Ma,xn.lowerFirst=Ra,xn.lt=Zu,xn.lte=ea,xn.max=function(e){return e&&e.length?rr(e,Ga,hr):void 0},xn.maxBy=function(e,t){return e&&e.length?rr(e,Xi(t,2),hr):void 0},xn.mean=function(e){return Dt(e,Ga)},xn.meanBy=function(e,t){return Dt(e,Xi(t,2))},xn.min=function(e){return e&&e.length?rr(e,Ga,kr):void 0},xn.minBy=function(e,t){return e&&e.length?rr(e,Xi(t,2),kr):void 0},xn.stubArray=il,xn.stubFalse=ol,xn.stubObject=function(){return{}},xn.stubString=function(){return""},xn.stubTrue=function(){return!0},xn.multiply=fl,xn.nth=function(e,t){return e&&e.length?Pr(e,ra(t)):void 0},xn.noConflict=function(){return Ge._===this&&(Ge._=Ae),this},xn.noop=Qa,xn.now=vu,xn.pad=function(e,t,n){e=aa(e);var r=(t=ra(t))?Vt(e):0;if(!t||r>=t)return e;var i=(t-r)/2;return Ii(Zt(i),n)+e+Ii(Jt(i),n)},xn.padEnd=function(e,t,n){e=aa(e);var r=(t=ra(t))?Vt(e):0;return t&&rt){var r=e;e=t,t=r}if(n||e%1||t%1){var i=cn();return an(e+i*(t-e+We("1e-"+((i+"").length-1))),t)}return Fr(e,t)},xn.reduce=function(e,t,n){var r=Nu(e)?ht:kt,i=arguments.length<3;return r(e,Xi(t,4),n,i,er)},xn.reduceRight=function(e,t,n){var r=Nu(e)?vt:kt,i=arguments.length<3;return r(e,Xi(t,4),n,i,tr)},xn.repeat=function(e,t,n){return t=(n?ao(e,t,n):void 0===t)?1:ra(t),Lr(aa(e),t)},xn.replace=function(){var e=arguments,t=aa(e[0]);return e.length<3?t:t.replace(e[1],e[2])},xn.result=function(e,t,n){var r=-1,i=(t=ai(t,e)).length;for(i||(i=1,e=void 0);++r9007199254740991)return[];var n=4294967295,r=an(e,4294967295);e-=4294967295;for(var i=xt(r,t=Xi(t));++n=o)return e;var a=n-Vt(r);if(a<1)return r;var l=u?si(u,0,a).join(""):e.slice(0,a);if(void 0===i)return l+r;if(u&&(a+=l.length-a),Yu(i)){if(e.slice(a).search(i)){var s,c=l;for(i.global||(i=me(i.source,aa(ne.exec(i))+"g")),i.lastIndex=0;s=i.exec(c);)var f=s.index;l=l.slice(0,void 0===f?a:f)}}else if(e.indexOf(Qr(i),a)!=a){var d=l.lastIndexOf(i);d>-1&&(l=l.slice(0,d))}return l+r},xn.unescape=function(e){return(e=aa(e))&&L.test(e)?e.replace(R,Gt):e},xn.uniqueId=function(e){var t=++Ce;return aa(e)+t},xn.upperCase=Ba,xn.upperFirst=ja,xn.each=au,xn.eachRight=lu,xn.first=Ro,Xa(xn,(cl={},lr(xn,(function(e,t){Se.call(xn.prototype,t)||(cl[t]=e)})),cl),{chain:!1}),xn.VERSION="4.17.20",ut(["bind","bindKey","curry","curryRight","partial","partialRight"],(function(e){xn[e].placeholder=xn})),ut(["drop","take"],(function(e,t){In.prototype[e]=function(n){n=void 0===n?1:un(ra(n),0);var r=this.__filtered__&&!t?new In(this):this.clone();return r.__filtered__?r.__takeCount__=an(n,r.__takeCount__):r.__views__.push({size:an(n,4294967295),type:e+(r.__dir__<0?"Right":"")}),r},In.prototype[e+"Right"]=function(t){return this.reverse()[e](t).reverse()}})),ut(["filter","map","takeWhile"],(function(e,t){var n=t+1,r=1==n||3==n;In.prototype[e]=function(e){var t=this.clone();return t.__iteratees__.push({iteratee:Xi(e,3),type:n}),t.__filtered__=t.__filtered__||r,t}})),ut(["head","last"],(function(e,t){var n="take"+(t?"Right":"");In.prototype[e]=function(){return this[n](1).value()[0]}})),ut(["initial","tail"],(function(e,t){var n="drop"+(t?"":"Right");In.prototype[e]=function(){return this.__filtered__?new In(this):this[n](1)}})),In.prototype.compact=function(){return this.filter(Ga)},In.prototype.find=function(e){return this.filter(e).head()},In.prototype.findLast=function(e){return this.reverse().find(e)},In.prototype.invokeMap=Br((function(e,t){return"function"==typeof e?new In(this):this.map((function(n){return yr(n,e,t)}))})),In.prototype.reject=function(e){return this.filter(Su(Xi(e)))},In.prototype.slice=function(e,t){e=ra(e);var n=this;return n.__filtered__&&(e>0||t<0)?new In(n):(e<0?n=n.takeRight(-e):e&&(n=n.drop(e)),void 0!==t&&(n=(t=ra(t))<0?n.dropRight(-t):n.take(t-e)),n)},In.prototype.takeRightWhile=function(e){return this.reverse().takeWhile(e).reverse()},In.prototype.toArray=function(){return this.take(4294967295)},lr(In.prototype,(function(e,t){var n=/^(?:filter|find|map|reject)|While$/.test(t),r=/^(?:head|last)$/.test(t),i=xn[r?"take"+("last"==t?"Right":""):t],o=r||/^find/.test(t);i&&(xn.prototype[t]=function(){var t=this.__wrapped__,u=r?[1]:arguments,a=t instanceof In,l=u[0],s=a||Nu(t),c=function(e){var t=i.apply(xn,pt([e],u));return r&&f?t[0]:t};s&&n&&"function"==typeof l&&1!=l.length&&(a=s=!1);var f=this.__chain__,d=!!this.__actions__.length,p=o&&!f,h=a&&!d;if(!o&&s){t=h?t:new In(this);var v=e.apply(t,u);return v.__actions__.push({func:nu,args:[c],thisArg:void 0}),new Pn(v,f)}return p&&h?e.apply(this,u):(v=this.thru(c),p?r?v.value()[0]:v.value():v)})})),ut(["pop","push","shift","sort","splice","unshift"],(function(e){var t=_e[e],n=/^(?:push|sort|unshift)$/.test(e)?"tap":"thru",r=/^(?:pop|shift)$/.test(e);xn.prototype[e]=function(){var e=arguments;if(r&&!this.__chain__){var i=this.value();return t.apply(Nu(i)?i:[],e)}return this[n]((function(n){return t.apply(Nu(n)?n:[],e)}))}})),lr(In.prototype,(function(e,t){var n=xn[t];if(n){var r=n.name+"";Se.call(_n,r)||(_n[r]=[]),_n[r].push({name:t,func:n})}})),_n[xi(void 0,2).name]=[{name:"wrapper",func:void 0}],In.prototype.clone=function(){var e=new In(this.__wrapped__);return e.__actions__=gi(this.__actions__),e.__dir__=this.__dir__,e.__filtered__=this.__filtered__,e.__iteratees__=gi(this.__iteratees__),e.__takeCount__=this.__takeCount__,e.__views__=gi(this.__views__),e},In.prototype.reverse=function(){if(this.__filtered__){var e=new In(this);e.__dir__=-1,e.__filtered__=!0}else(e=this.clone()).__dir__*=-1;return e},In.prototype.value=function(){var e=this.__wrapped__.value(),t=this.__dir__,n=Nu(e),r=t<0,i=n?e.length:0,o=function(e,t,n){var r=-1,i=n.length;for(;++r=this.__values__.length;return{done:e,value:e?void 0:this.__values__[this.__index__++]}},xn.prototype.plant=function(e){for(var t,n=this;n instanceof On;){var r=xo(n);r.__index__=0,r.__values__=void 0,t?i.__wrapped__=r:t=r;var i=r;n=n.__wrapped__}return i.__wrapped__=e,t},xn.prototype.reverse=function(){var e=this.__wrapped__;if(e instanceof In){var t=e;return this.__actions__.length&&(t=new In(this)),(t=t.reverse()).__actions__.push({func:nu,args:[Ho],thisArg:void 0}),new Pn(t,this.__chain__)}return this.thru(Ho)},xn.prototype.toJSON=xn.prototype.valueOf=xn.prototype.value=function(){return ni(this.__wrapped__,this.__actions__)},xn.prototype.first=xn.prototype.head,gt&&(xn.prototype[gt]=function(){return this}),xn}();Ge._=$t,void 0===(r=function(){return $t}.call(t,n,t,e))||(e.exports=r)}.call(this)},1573:e=>{"use strict";const t=(e,t)=>{for(const n of Reflect.ownKeys(t))Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(t,n));return e};e.exports=t,e.exports.default=t},9381:e=>{"use strict"; -/* -object-assign -(c) Sindre Sorhus -@license MIT -*/var t=Object.getOwnPropertySymbols,n=Object.prototype.hasOwnProperty,r=Object.prototype.propertyIsEnumerable;function i(e){if(null==e)throw new TypeError("Object.assign cannot be called with null or undefined");return Object(e)}e.exports=function(){try{if(!Object.assign)return!1;var e=new String("abc");if(e[5]="de","5"===Object.getOwnPropertyNames(e)[0])return!1;for(var t={},n=0;n<10;n++)t["_"+String.fromCharCode(n)]=n;if("0123456789"!==Object.getOwnPropertyNames(t).map((function(e){return t[e]})).join(""))return!1;var r={};return"abcdefghijklmnopqrst".split("").forEach((function(e){r[e]=e})),"abcdefghijklmnopqrst"===Object.keys(Object.assign({},r)).join("")}catch(e){return!1}}()?Object.assign:function(e,o){for(var u,a,l=i(e),s=1;s{"use strict";const r=n(1573),i=new WeakMap,o=(e,t={})=>{if("function"!=typeof e)throw new TypeError("Expected a function");let n,o=!1,u=0;const a=e.displayName||e.name||"",l=function(...r){if(i.set(l,++u),o){if(!0===t.throw)throw new Error(`Function \`${a}\` can only be called once`);return n}return o=!0,n=e.apply(this,r),e=null,n};return r(l,e),i.set(l,u),l};e.exports=o,e.exports.default=o,e.exports.callCount=e=>{if(!i.has(e))throw new Error(`The given function \`${e.name}\` is not wrapped by the \`onetime\` package`);return i.get(e)}},8070:(e,t,n)=>{"use strict";const r=n(2413),i=["assert","count","countReset","debug","dir","dirxml","error","group","groupCollapsed","groupEnd","info","log","table","time","timeEnd","timeLog","trace","warn"];let o={};e.exports=e=>{const t=new r.PassThrough,n=new r.PassThrough;t.write=t=>e("stdout",t),n.write=t=>e("stderr",t);const u=new console.Console(t,n);for(const e of i)o[e]=console[e],console[e]=u[e];return()=>{for(const e of i)console[e]=o[e];o={}}}},5187:e=>{window,e.exports=function(e){var t={};function n(r){if(t[r])return t[r].exports;var i=t[r]={i:r,l:!1,exports:{}};return e[r].call(i.exports,i,i.exports,n),i.l=!0,i.exports}return n.m=e,n.c=t,n.d=function(e,t,r){n.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:r})},n.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},n.t=function(e,t){if(1&t&&(e=n(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var r=Object.create(null);if(n.r(r),Object.defineProperty(r,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var i in e)n.d(r,i,function(t){return e[t]}.bind(null,i));return r},n.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return n.d(t,"a",t),t},n.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},n.p="",n(n.s=20)}([function(e,t,n){"use strict";e.exports=n(12)},function(e,t,n){"use strict"; -/* -object-assign -(c) Sindre Sorhus -@license MIT -*/var r=Object.getOwnPropertySymbols,i=Object.prototype.hasOwnProperty,o=Object.prototype.propertyIsEnumerable;function u(e){if(null==e)throw new TypeError("Object.assign cannot be called with null or undefined");return Object(e)}e.exports=function(){try{if(!Object.assign)return!1;var e=new String("abc");if(e[5]="de","5"===Object.getOwnPropertyNames(e)[0])return!1;for(var t={},n=0;n<10;n++)t["_"+String.fromCharCode(n)]=n;if("0123456789"!==Object.getOwnPropertyNames(t).map((function(e){return t[e]})).join(""))return!1;var r={};return"abcdefghijklmnopqrst".split("").forEach((function(e){r[e]=e})),"abcdefghijklmnopqrst"===Object.keys(Object.assign({},r)).join("")}catch(e){return!1}}()?Object.assign:function(e,t){for(var n,a,l=u(e),s=1;s=t||n<0||f&&e-s>=o}function w(){var e=h();if(b(e))return E(e);a=setTimeout(w,function(e){var n=t-(e-l);return f?p(n,o-(e-s)):n}(e))}function E(e){return a=void 0,m&&r?y(e):(r=i=void 0,u)}function D(){var e=h(),n=b(e);if(r=arguments,i=this,l=e,n){if(void 0===a)return _(l);if(f)return a=setTimeout(w,t),y(l)}return void 0===a&&(a=setTimeout(w,t)),u}return t=g(t)||0,v(n)&&(c=!!n.leading,o=(f="maxWait"in n)?d(g(n.maxWait)||0,t):o,m="trailing"in n?!!n.trailing:m),D.cancel=function(){void 0!==a&&clearTimeout(a),s=0,r=l=i=a=void 0},D.flush=function(){return void 0===a?u:E(h())},D}(e,t,{leading:r,maxWait:t,trailing:i})}}).call(this,n(4))},function(e,t,n){(function(n){function r(e){return(r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}var i;t=e.exports=p,i="object"===(void 0===n?"undefined":r(n))&&n.env&&n.env.NODE_DEBUG&&/\bsemver\b/i.test(n.env.NODE_DEBUG)?function(){var e=Array.prototype.slice.call(arguments,0);e.unshift("SEMVER"),console.log.apply(console,e)}:function(){},t.SEMVER_SPEC_VERSION="2.0.0";var o=Number.MAX_SAFE_INTEGER||9007199254740991,u=t.re=[],a=t.src=[],l=t.tokens={},s=0;function c(e){l[e]=s++}c("NUMERICIDENTIFIER"),a[l.NUMERICIDENTIFIER]="0|[1-9]\\d*",c("NUMERICIDENTIFIERLOOSE"),a[l.NUMERICIDENTIFIERLOOSE]="[0-9]+",c("NONNUMERICIDENTIFIER"),a[l.NONNUMERICIDENTIFIER]="\\d*[a-zA-Z-][a-zA-Z0-9-]*",c("MAINVERSION"),a[l.MAINVERSION]="("+a[l.NUMERICIDENTIFIER]+")\\.("+a[l.NUMERICIDENTIFIER]+")\\.("+a[l.NUMERICIDENTIFIER]+")",c("MAINVERSIONLOOSE"),a[l.MAINVERSIONLOOSE]="("+a[l.NUMERICIDENTIFIERLOOSE]+")\\.("+a[l.NUMERICIDENTIFIERLOOSE]+")\\.("+a[l.NUMERICIDENTIFIERLOOSE]+")",c("PRERELEASEIDENTIFIER"),a[l.PRERELEASEIDENTIFIER]="(?:"+a[l.NUMERICIDENTIFIER]+"|"+a[l.NONNUMERICIDENTIFIER]+")",c("PRERELEASEIDENTIFIERLOOSE"),a[l.PRERELEASEIDENTIFIERLOOSE]="(?:"+a[l.NUMERICIDENTIFIERLOOSE]+"|"+a[l.NONNUMERICIDENTIFIER]+")",c("PRERELEASE"),a[l.PRERELEASE]="(?:-("+a[l.PRERELEASEIDENTIFIER]+"(?:\\."+a[l.PRERELEASEIDENTIFIER]+")*))",c("PRERELEASELOOSE"),a[l.PRERELEASELOOSE]="(?:-?("+a[l.PRERELEASEIDENTIFIERLOOSE]+"(?:\\."+a[l.PRERELEASEIDENTIFIERLOOSE]+")*))",c("BUILDIDENTIFIER"),a[l.BUILDIDENTIFIER]="[0-9A-Za-z-]+",c("BUILD"),a[l.BUILD]="(?:\\+("+a[l.BUILDIDENTIFIER]+"(?:\\."+a[l.BUILDIDENTIFIER]+")*))",c("FULL"),c("FULLPLAIN"),a[l.FULLPLAIN]="v?"+a[l.MAINVERSION]+a[l.PRERELEASE]+"?"+a[l.BUILD]+"?",a[l.FULL]="^"+a[l.FULLPLAIN]+"$",c("LOOSEPLAIN"),a[l.LOOSEPLAIN]="[v=\\s]*"+a[l.MAINVERSIONLOOSE]+a[l.PRERELEASELOOSE]+"?"+a[l.BUILD]+"?",c("LOOSE"),a[l.LOOSE]="^"+a[l.LOOSEPLAIN]+"$",c("GTLT"),a[l.GTLT]="((?:<|>)?=?)",c("XRANGEIDENTIFIERLOOSE"),a[l.XRANGEIDENTIFIERLOOSE]=a[l.NUMERICIDENTIFIERLOOSE]+"|x|X|\\*",c("XRANGEIDENTIFIER"),a[l.XRANGEIDENTIFIER]=a[l.NUMERICIDENTIFIER]+"|x|X|\\*",c("XRANGEPLAIN"),a[l.XRANGEPLAIN]="[v=\\s]*("+a[l.XRANGEIDENTIFIER]+")(?:\\.("+a[l.XRANGEIDENTIFIER]+")(?:\\.("+a[l.XRANGEIDENTIFIER]+")(?:"+a[l.PRERELEASE]+")?"+a[l.BUILD]+"?)?)?",c("XRANGEPLAINLOOSE"),a[l.XRANGEPLAINLOOSE]="[v=\\s]*("+a[l.XRANGEIDENTIFIERLOOSE]+")(?:\\.("+a[l.XRANGEIDENTIFIERLOOSE]+")(?:\\.("+a[l.XRANGEIDENTIFIERLOOSE]+")(?:"+a[l.PRERELEASELOOSE]+")?"+a[l.BUILD]+"?)?)?",c("XRANGE"),a[l.XRANGE]="^"+a[l.GTLT]+"\\s*"+a[l.XRANGEPLAIN]+"$",c("XRANGELOOSE"),a[l.XRANGELOOSE]="^"+a[l.GTLT]+"\\s*"+a[l.XRANGEPLAINLOOSE]+"$",c("COERCE"),a[l.COERCE]="(^|[^\\d])(\\d{1,16})(?:\\.(\\d{1,16}))?(?:\\.(\\d{1,16}))?(?:$|[^\\d])",c("COERCERTL"),u[l.COERCERTL]=new RegExp(a[l.COERCE],"g"),c("LONETILDE"),a[l.LONETILDE]="(?:~>?)",c("TILDETRIM"),a[l.TILDETRIM]="(\\s*)"+a[l.LONETILDE]+"\\s+",u[l.TILDETRIM]=new RegExp(a[l.TILDETRIM],"g"),c("TILDE"),a[l.TILDE]="^"+a[l.LONETILDE]+a[l.XRANGEPLAIN]+"$",c("TILDELOOSE"),a[l.TILDELOOSE]="^"+a[l.LONETILDE]+a[l.XRANGEPLAINLOOSE]+"$",c("LONECARET"),a[l.LONECARET]="(?:\\^)",c("CARETTRIM"),a[l.CARETTRIM]="(\\s*)"+a[l.LONECARET]+"\\s+",u[l.CARETTRIM]=new RegExp(a[l.CARETTRIM],"g"),c("CARET"),a[l.CARET]="^"+a[l.LONECARET]+a[l.XRANGEPLAIN]+"$",c("CARETLOOSE"),a[l.CARETLOOSE]="^"+a[l.LONECARET]+a[l.XRANGEPLAINLOOSE]+"$",c("COMPARATORLOOSE"),a[l.COMPARATORLOOSE]="^"+a[l.GTLT]+"\\s*("+a[l.LOOSEPLAIN]+")$|^$",c("COMPARATOR"),a[l.COMPARATOR]="^"+a[l.GTLT]+"\\s*("+a[l.FULLPLAIN]+")$|^$",c("COMPARATORTRIM"),a[l.COMPARATORTRIM]="(\\s*)"+a[l.GTLT]+"\\s*("+a[l.LOOSEPLAIN]+"|"+a[l.XRANGEPLAIN]+")",u[l.COMPARATORTRIM]=new RegExp(a[l.COMPARATORTRIM],"g"),c("HYPHENRANGE"),a[l.HYPHENRANGE]="^\\s*("+a[l.XRANGEPLAIN]+")\\s+-\\s+("+a[l.XRANGEPLAIN]+")\\s*$",c("HYPHENRANGELOOSE"),a[l.HYPHENRANGELOOSE]="^\\s*("+a[l.XRANGEPLAINLOOSE]+")\\s+-\\s+("+a[l.XRANGEPLAINLOOSE]+")\\s*$",c("STAR"),a[l.STAR]="(<|>)?=?\\s*\\*";for(var f=0;f256)return null;if(!(t.loose?u[l.LOOSE]:u[l.FULL]).test(e))return null;try{return new p(e,t)}catch(e){return null}}function p(e,t){if(t&&"object"===r(t)||(t={loose:!!t,includePrerelease:!1}),e instanceof p){if(e.loose===t.loose)return e;e=e.version}else if("string"!=typeof e)throw new TypeError("Invalid Version: "+e);if(e.length>256)throw new TypeError("version is longer than 256 characters");if(!(this instanceof p))return new p(e,t);i("SemVer",e,t),this.options=t,this.loose=!!t.loose;var n=e.trim().match(t.loose?u[l.LOOSE]:u[l.FULL]);if(!n)throw new TypeError("Invalid Version: "+e);if(this.raw=e,this.major=+n[1],this.minor=+n[2],this.patch=+n[3],this.major>o||this.major<0)throw new TypeError("Invalid major version");if(this.minor>o||this.minor<0)throw new TypeError("Invalid minor version");if(this.patch>o||this.patch<0)throw new TypeError("Invalid patch version");n[4]?this.prerelease=n[4].split(".").map((function(e){if(/^[0-9]+$/.test(e)){var t=+e;if(t>=0&&t=0;)"number"==typeof this.prerelease[n]&&(this.prerelease[n]++,n=-2);-1===n&&this.prerelease.push(0)}t&&(this.prerelease[0]===t?isNaN(this.prerelease[1])&&(this.prerelease=[t,0]):this.prerelease=[t,0]);break;default:throw new Error("invalid increment argument: "+e)}return this.format(),this.raw=this.version,this},t.inc=function(e,t,n,r){"string"==typeof n&&(r=n,n=void 0);try{return new p(e,n).inc(t,r).version}catch(e){return null}},t.diff=function(e,t){if(_(e,t))return null;var n=d(e),r=d(t),i="";if(n.prerelease.length||r.prerelease.length){i="pre";var o="prerelease"}for(var u in n)if(("major"===u||"minor"===u||"patch"===u)&&n[u]!==r[u])return i+u;return o},t.compareIdentifiers=v;var h=/^[0-9]+$/;function v(e,t){var n=h.test(e),r=h.test(t);return n&&r&&(e=+e,t=+t),e===t?0:n&&!r?-1:r&&!n?1:e0}function y(e,t,n){return m(e,t,n)<0}function _(e,t,n){return 0===m(e,t,n)}function b(e,t,n){return 0!==m(e,t,n)}function w(e,t,n){return m(e,t,n)>=0}function E(e,t,n){return m(e,t,n)<=0}function D(e,t,n,i){switch(t){case"===":return"object"===r(e)&&(e=e.version),"object"===r(n)&&(n=n.version),e===n;case"!==":return"object"===r(e)&&(e=e.version),"object"===r(n)&&(n=n.version),e!==n;case"":case"=":case"==":return _(e,n,i);case"!=":return b(e,n,i);case">":return g(e,n,i);case">=":return w(e,n,i);case"<":return y(e,n,i);case"<=":return E(e,n,i);default:throw new TypeError("Invalid operator: "+t)}}function S(e,t){if(t&&"object"===r(t)||(t={loose:!!t,includePrerelease:!1}),e instanceof S){if(e.loose===!!t.loose)return e;e=e.value}if(!(this instanceof S))return new S(e,t);i("comparator",e,t),this.options=t,this.loose=!!t.loose,this.parse(e),this.semver===C?this.value="":this.value=this.operator+this.semver.version,i("comp",this)}t.rcompareIdentifiers=function(e,t){return v(t,e)},t.major=function(e,t){return new p(e,t).major},t.minor=function(e,t){return new p(e,t).minor},t.patch=function(e,t){return new p(e,t).patch},t.compare=m,t.compareLoose=function(e,t){return m(e,t,!0)},t.compareBuild=function(e,t,n){var r=new p(e,n),i=new p(t,n);return r.compare(i)||r.compareBuild(i)},t.rcompare=function(e,t,n){return m(t,e,n)},t.sort=function(e,n){return e.sort((function(e,r){return t.compareBuild(e,r,n)}))},t.rsort=function(e,n){return e.sort((function(e,r){return t.compareBuild(r,e,n)}))},t.gt=g,t.lt=y,t.eq=_,t.neq=b,t.gte=w,t.lte=E,t.cmp=D,t.Comparator=S;var C={};function k(e,t){if(t&&"object"===r(t)||(t={loose:!!t,includePrerelease:!1}),e instanceof k)return e.loose===!!t.loose&&e.includePrerelease===!!t.includePrerelease?e:new k(e.raw,t);if(e instanceof S)return new k(e.value,t);if(!(this instanceof k))return new k(e,t);if(this.options=t,this.loose=!!t.loose,this.includePrerelease=!!t.includePrerelease,this.raw=e,this.set=e.split(/\s*\|\|\s*/).map((function(e){return this.parseRange(e.trim())}),this).filter((function(e){return e.length})),!this.set.length)throw new TypeError("Invalid SemVer Range: "+e);this.format()}function T(e,t){for(var n=!0,r=e.slice(),i=r.pop();n&&r.length;)n=r.every((function(e){return i.intersects(e,t)})),i=r.pop();return n}function x(e){return!e||"x"===e.toLowerCase()||"*"===e}function A(e,t,n,r,i,o,u,a,l,s,c,f,d){return((t=x(n)?"":x(r)?">="+n+".0.0":x(i)?">="+n+"."+r+".0":">="+t)+" "+(a=x(l)?"":x(s)?"<"+(+l+1)+".0.0":x(c)?"<"+l+"."+(+s+1)+".0":f?"<="+l+"."+s+"."+c+"-"+f:"<="+a)).trim()}function O(e,t,n){for(var r=0;r0){var o=e[r].semver;if(o.major===t.major&&o.minor===t.minor&&o.patch===t.patch)return!0}return!1}return!0}function P(e,t,n){try{t=new k(t,n)}catch(e){return!1}return t.test(e)}function I(e,t,n,r){var i,o,u,a,l;switch(e=new p(e,r),t=new k(t,r),n){case">":i=g,o=E,u=y,a=">",l=">=";break;case"<":i=y,o=w,u=g,a="<",l="<=";break;default:throw new TypeError('Must provide a hilo val of "<" or ">"')}if(P(e,t,r))return!1;for(var s=0;s=0.0.0")),f=f||e,d=d||e,i(e.semver,f.semver,r)?f=e:u(e.semver,d.semver,r)&&(d=e)})),f.operator===a||f.operator===l)return!1;if((!d.operator||d.operator===a)&&o(e,d.semver))return!1;if(d.operator===l&&u(e,d.semver))return!1}return!0}S.prototype.parse=function(e){var t=this.options.loose?u[l.COMPARATORLOOSE]:u[l.COMPARATOR],n=e.match(t);if(!n)throw new TypeError("Invalid comparator: "+e);this.operator=void 0!==n[1]?n[1]:"","="===this.operator&&(this.operator=""),n[2]?this.semver=new p(n[2],this.options.loose):this.semver=C},S.prototype.toString=function(){return this.value},S.prototype.test=function(e){if(i("Comparator.test",e,this.options.loose),this.semver===C||e===C)return!0;if("string"==typeof e)try{e=new p(e,this.options)}catch(e){return!1}return D(e,this.operator,this.semver,this.options)},S.prototype.intersects=function(e,t){if(!(e instanceof S))throw new TypeError("a Comparator is required");var n;if(t&&"object"===r(t)||(t={loose:!!t,includePrerelease:!1}),""===this.operator)return""===this.value||(n=new k(e.value,t),P(this.value,n,t));if(""===e.operator)return""===e.value||(n=new k(this.value,t),P(e.semver,n,t));var i=!(">="!==this.operator&&">"!==this.operator||">="!==e.operator&&">"!==e.operator),o=!("<="!==this.operator&&"<"!==this.operator||"<="!==e.operator&&"<"!==e.operator),u=this.semver.version===e.semver.version,a=!(">="!==this.operator&&"<="!==this.operator||">="!==e.operator&&"<="!==e.operator),l=D(this.semver,"<",e.semver,t)&&(">="===this.operator||">"===this.operator)&&("<="===e.operator||"<"===e.operator),s=D(this.semver,">",e.semver,t)&&("<="===this.operator||"<"===this.operator)&&(">="===e.operator||">"===e.operator);return i||o||u&&a||l||s},t.Range=k,k.prototype.format=function(){return this.range=this.set.map((function(e){return e.join(" ").trim()})).join("||").trim(),this.range},k.prototype.toString=function(){return this.range},k.prototype.parseRange=function(e){var t=this.options.loose;e=e.trim();var n=t?u[l.HYPHENRANGELOOSE]:u[l.HYPHENRANGE];e=e.replace(n,A),i("hyphen replace",e),e=e.replace(u[l.COMPARATORTRIM],"$1$2$3"),i("comparator trim",e,u[l.COMPARATORTRIM]),e=(e=(e=e.replace(u[l.TILDETRIM],"$1~")).replace(u[l.CARETTRIM],"$1^")).split(/\s+/).join(" ");var r=t?u[l.COMPARATORLOOSE]:u[l.COMPARATOR],o=e.split(" ").map((function(e){return function(e,t){return i("comp",e,t),e=function(e,t){return e.trim().split(/\s+/).map((function(e){return function(e,t){i("caret",e,t);var n=t.loose?u[l.CARETLOOSE]:u[l.CARET];return e.replace(n,(function(t,n,r,o,u){var a;return i("caret",e,t,n,r,o,u),x(n)?a="":x(r)?a=">="+n+".0.0 <"+(+n+1)+".0.0":x(o)?a="0"===n?">="+n+"."+r+".0 <"+n+"."+(+r+1)+".0":">="+n+"."+r+".0 <"+(+n+1)+".0.0":u?(i("replaceCaret pr",u),a="0"===n?"0"===r?">="+n+"."+r+"."+o+"-"+u+" <"+n+"."+r+"."+(+o+1):">="+n+"."+r+"."+o+"-"+u+" <"+n+"."+(+r+1)+".0":">="+n+"."+r+"."+o+"-"+u+" <"+(+n+1)+".0.0"):(i("no pr"),a="0"===n?"0"===r?">="+n+"."+r+"."+o+" <"+n+"."+r+"."+(+o+1):">="+n+"."+r+"."+o+" <"+n+"."+(+r+1)+".0":">="+n+"."+r+"."+o+" <"+(+n+1)+".0.0"),i("caret return",a),a}))}(e,t)})).join(" ")}(e,t),i("caret",e),e=function(e,t){return e.trim().split(/\s+/).map((function(e){return function(e,t){var n=t.loose?u[l.TILDELOOSE]:u[l.TILDE];return e.replace(n,(function(t,n,r,o,u){var a;return i("tilde",e,t,n,r,o,u),x(n)?a="":x(r)?a=">="+n+".0.0 <"+(+n+1)+".0.0":x(o)?a=">="+n+"."+r+".0 <"+n+"."+(+r+1)+".0":u?(i("replaceTilde pr",u),a=">="+n+"."+r+"."+o+"-"+u+" <"+n+"."+(+r+1)+".0"):a=">="+n+"."+r+"."+o+" <"+n+"."+(+r+1)+".0",i("tilde return",a),a}))}(e,t)})).join(" ")}(e,t),i("tildes",e),e=function(e,t){return i("replaceXRanges",e,t),e.split(/\s+/).map((function(e){return function(e,t){e=e.trim();var n=t.loose?u[l.XRANGELOOSE]:u[l.XRANGE];return e.replace(n,(function(n,r,o,u,a,l){i("xRange",e,n,r,o,u,a,l);var s=x(o),c=s||x(u),f=c||x(a),d=f;return"="===r&&d&&(r=""),l=t.includePrerelease?"-0":"",s?n=">"===r||"<"===r?"<0.0.0-0":"*":r&&d?(c&&(u=0),a=0,">"===r?(r=">=",c?(o=+o+1,u=0,a=0):(u=+u+1,a=0)):"<="===r&&(r="<",c?o=+o+1:u=+u+1),n=r+o+"."+u+"."+a+l):c?n=">="+o+".0.0"+l+" <"+(+o+1)+".0.0"+l:f&&(n=">="+o+"."+u+".0"+l+" <"+o+"."+(+u+1)+".0"+l),i("xRange return",n),n}))}(e,t)})).join(" ")}(e,t),i("xrange",e),e=function(e,t){return i("replaceStars",e,t),e.trim().replace(u[l.STAR],"")}(e,t),i("stars",e),e}(e,this.options)}),this).join(" ").split(/\s+/);return this.options.loose&&(o=o.filter((function(e){return!!e.match(r)}))),o.map((function(e){return new S(e,this.options)}),this)},k.prototype.intersects=function(e,t){if(!(e instanceof k))throw new TypeError("a Range is required");return this.set.some((function(n){return T(n,t)&&e.set.some((function(e){return T(e,t)&&n.every((function(n){return e.every((function(e){return n.intersects(e,t)}))}))}))}))},t.toComparators=function(e,t){return new k(e,t).set.map((function(e){return e.map((function(e){return e.value})).join(" ").trim().split(" ")}))},k.prototype.test=function(e){if(!e)return!1;if("string"==typeof e)try{e=new p(e,this.options)}catch(e){return!1}for(var t=0;t":0===t.prerelease.length?t.patch++:t.prerelease.push(0),t.raw=t.format();case"":case">=":n&&!g(n,t)||(n=t);break;case"<":case"<=":break;default:throw new Error("Unexpected operation: "+e.operator)}}));return n&&e.test(n)?n:null},t.validRange=function(e,t){try{return new k(e,t).range||"*"}catch(e){return null}},t.ltr=function(e,t,n){return I(e,t,"<",n)},t.gtr=function(e,t,n){return I(e,t,">",n)},t.outside=I,t.prerelease=function(e,t){var n=d(e,t);return n&&n.prerelease.length?n.prerelease:null},t.intersects=function(e,t,n){return e=new k(e,n),t=new k(t,n),e.intersects(t)},t.coerce=function(e,t){if(e instanceof p)return e;if("number"==typeof e&&(e=String(e)),"string"!=typeof e)return null;var n=null;if((t=t||{}).rtl){for(var r;(r=u[l.COERCERTL].exec(e))&&(!n||n.index+n[0].length!==e.length);)n&&r.index+r[0].length===n.index+n[0].length||(n=r),u[l.COERCERTL].lastIndex=r.index+r[1].length+r[2].length;u[l.COERCERTL].lastIndex=-1}else n=e.match(u[l.COERCE]);return null===n?null:d(n[2]+"."+(n[3]||"0")+"."+(n[4]||"0"),t)}}).call(this,n(5))},function(e,t){function n(e){return(n="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}var r;r=function(){return this}();try{r=r||new Function("return this")()}catch(e){"object"===("undefined"==typeof window?"undefined":n(window))&&(r=window)}e.exports=r},function(e,t){var n,r,i=e.exports={};function o(){throw new Error("setTimeout has not been defined")}function u(){throw new Error("clearTimeout has not been defined")}function a(e){if(n===setTimeout)return setTimeout(e,0);if((n===o||!n)&&setTimeout)return n=setTimeout,setTimeout(e,0);try{return n(e,0)}catch(t){try{return n.call(null,e,0)}catch(t){return n.call(this,e,0)}}}!function(){try{n="function"==typeof setTimeout?setTimeout:o}catch(e){n=o}try{r="function"==typeof clearTimeout?clearTimeout:u}catch(e){r=u}}();var l,s=[],c=!1,f=-1;function d(){c&&l&&(c=!1,l.length?s=l.concat(s):f=-1,s.length&&p())}function p(){if(!c){var e=a(d);c=!0;for(var t=s.length;t;){for(l=s,s=[];++f1)for(var n=1;nthis[u])return w(this,this[h].get(e)),!1;var o=this[h].get(e).value;return this[f]&&(this[d]||this[f](e,o.value)),o.now=r,o.maxAge=n,o.value=t,this[a]+=i-o.length,o.length=i,this.get(e),b(this),!0}var s=new E(e,t,i,r,n);return s.length>this[u]?(this[f]&&this[f](e,t),!1):(this[a]+=s.length,this[p].unshift(s),this[h].set(e,this[p].head),b(this),!0)}},{key:"has",value:function(e){if(!this[h].has(e))return!1;var t=this[h].get(e).value;return!_(this,t)}},{key:"get",value:function(e){return y(this,e,!0)}},{key:"peek",value:function(e){return y(this,e,!1)}},{key:"pop",value:function(){var e=this[p].tail;return e?(w(this,e),e.value):null}},{key:"del",value:function(e){w(this,this[h].get(e))}},{key:"load",value:function(e){this.reset();for(var t=Date.now(),n=e.length-1;n>=0;n--){var r=e[n],i=r.e||0;if(0===i)this.set(r.k,r.v);else{var o=i-t;o>0&&this.set(r.k,r.v,o)}}}},{key:"prune",value:function(){var e=this;this[h].forEach((function(t,n){return y(e,n,!1)}))}},{key:"max",set:function(e){if("number"!=typeof e||e<0)throw new TypeError("max must be a non-negative number");this[u]=e||1/0,b(this)},get:function(){return this[u]}},{key:"allowStale",set:function(e){this[s]=!!e},get:function(){return this[s]}},{key:"maxAge",set:function(e){if("number"!=typeof e)throw new TypeError("maxAge must be a non-negative number");this[c]=e,b(this)},get:function(){return this[c]}},{key:"lengthCalculator",set:function(e){var t=this;"function"!=typeof e&&(e=m),e!==this[l]&&(this[l]=e,this[a]=0,this[p].forEach((function(e){e.length=t[l](e.value,e.key),t[a]+=e.length}))),b(this)},get:function(){return this[l]}},{key:"length",get:function(){return this[a]}},{key:"itemCount",get:function(){return this[p].length}}])&&i(t.prototype,n),e}(),y=function(e,t,n){var r=e[h].get(t);if(r){var i=r.value;if(_(e,i)){if(w(e,r),!e[s])return}else n&&(e[v]&&(r.value.now=Date.now()),e[p].unshiftNode(r));return i.value}},_=function(e,t){if(!t||!t.maxAge&&!e[c])return!1;var n=Date.now()-t.now;return t.maxAge?n>t.maxAge:e[c]&&n>e[c]},b=function(e){if(e[a]>e[u])for(var t=e[p].tail;e[a]>e[u]&&null!==t;){var n=t.prev;w(e,t),t=n}},w=function(e,t){if(t){var n=t.value;e[f]&&e[f](n.key,n.value),e[a]-=n.length,e[h].delete(n.key),e[p].removeNode(t)}},E=function e(t,n,i,o,u){r(this,e),this.key=t,this.value=n,this.length=i,this.now=o,this.maxAge=u||0},D=function(e,t,n,r){var i=n.value;_(e,i)&&(w(e,n),e[s]||(i=void 0)),i&&t.call(r,i.value,i.key,e)};e.exports=g},function(e,t,n){(function(t){function n(e){return(n="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}e.exports=function(){if("undefined"==typeof document||!document.addEventListener)return null;var r,i,o,u={};return u.copy=function(){var e=!1,t=null,n=!1;function r(){e=!1,t=null,n&&window.getSelection().removeAllRanges(),n=!1}return document.addEventListener("copy",(function(n){if(e){for(var r in t)n.clipboardData.setData(r,t[r]);n.preventDefault()}})),function(i){return new Promise((function(o,u){e=!0,"string"==typeof i?t={"text/plain":i}:i instanceof Node?t={"text/html":(new XMLSerializer).serializeToString(i)}:i instanceof Object?t=i:u("Invalid data type. Must be string, DOM node, or an object mapping MIME types to strings."),function e(t){try{if(document.execCommand("copy"))r(),o();else{if(t)throw r(),new Error("Unable to copy. Perhaps it's not available in your browser?");!function(){var e=document.getSelection();if(!document.queryCommandEnabled("copy")&&e.isCollapsed){var t=document.createRange();t.selectNodeContents(document.body),e.removeAllRanges(),e.addRange(t),n=!0}}(),e(!0)}}catch(e){r(),u(e)}}(!1)}))}}(),u.paste=(o=!1,document.addEventListener("paste",(function(e){if(o){o=!1,e.preventDefault();var t=r;r=null,t(e.clipboardData.getData(i))}})),function(e){return new Promise((function(t,n){o=!0,r=t,i=e||"text/plain";try{document.execCommand("paste")||(o=!1,n(new Error("Unable to paste. Pasting only works in Internet Explorer at the moment.")))}catch(e){o=!1,n(new Error(e))}}))}),"undefined"==typeof ClipboardEvent&&void 0!==window.clipboardData&&void 0!==window.clipboardData.setData&&( -/*! promise-polyfill 2.0.1 */ -function(r){function i(e,t){return function(){e.apply(t,arguments)}}function o(e){if("object"!=n(this))throw new TypeError("Promises must be constructed via new");if("function"!=typeof e)throw new TypeError("not a function");this._state=null,this._value=null,this._deferreds=[],f(e,i(a,this),i(l,this))}function u(e){var t=this;return null===this._state?void this._deferreds.push(e):void d((function(){var n=t._state?e.onFulfilled:e.onRejected;if(null!==n){var r;try{r=n(t._value)}catch(t){return void e.reject(t)}e.resolve(r)}else(t._state?e.resolve:e.reject)(t._value)}))}function a(e){try{if(e===this)throw new TypeError("A promise cannot be resolved with itself.");if(e&&("object"==n(e)||"function"==typeof e)){var t=e.then;if("function"==typeof t)return void f(i(t,e),i(a,this),i(l,this))}this._state=!0,this._value=e,s.call(this)}catch(e){l.call(this,e)}}function l(e){this._state=!1,this._value=e,s.call(this)}function s(){for(var e=0,t=this._deferreds.length;t>e;e++)u.call(this,this._deferreds[e]);this._deferreds=null}function c(e,t,n,r){this.onFulfilled="function"==typeof e?e:null,this.onRejected="function"==typeof t?t:null,this.resolve=n,this.reject=r}function f(e,t,n){var r=!1;try{e((function(e){r||(r=!0,t(e))}),(function(e){r||(r=!0,n(e))}))}catch(e){if(r)return;r=!0,n(e)}}var d=o.immediateFn||"function"==typeof t&&t||function(e){setTimeout(e,1)},p=Array.isArray||function(e){return"[object Array]"===Object.prototype.toString.call(e)};o.prototype.catch=function(e){return this.then(null,e)},o.prototype.then=function(e,t){var n=this;return new o((function(r,i){u.call(n,new c(e,t,r,i))}))},o.all=function(){var e=Array.prototype.slice.call(1===arguments.length&&p(arguments[0])?arguments[0]:arguments);return new o((function(t,r){function i(u,a){try{if(a&&("object"==n(a)||"function"==typeof a)){var l=a.then;if("function"==typeof l)return void l.call(a,(function(e){i(u,e)}),r)}e[u]=a,0==--o&&t(e)}catch(e){r(e)}}if(0===e.length)return t([]);for(var o=e.length,u=0;ur;r++)e[r].then(t,n)}))},e.exports?e.exports=o:r.Promise||(r.Promise=o)}(this),u.copy=function(e){return new Promise((function(t,n){if("string"!=typeof e&&!("text/plain"in e))throw new Error("You must provide a text/plain type.");var r="string"==typeof e?e:e["text/plain"];window.clipboardData.setData("Text",r)?t():n(new Error("Copying was rejected."))}))},u.paste=function(){return new Promise((function(e,t){var n=window.clipboardData.getData("Text");n?e(n):t(new Error("Pasting was rejected."))}))}),u}()}).call(this,n(13).setImmediate)},function(e,t,n){"use strict";e.exports=n(15)},function(e,t,n){"use strict";n.r(t),t.default=":root {\n /**\n * IMPORTANT: When new theme variables are added below– also add them to SettingsContext updateThemeVariables()\n */\n\n /* Light theme */\n --light-color-attribute-name: #ef6632;\n --light-color-attribute-name-not-editable: #23272f;\n --light-color-attribute-name-inverted: rgba(255, 255, 255, 0.7);\n --light-color-attribute-value: #1a1aa6;\n --light-color-attribute-value-inverted: #ffffff;\n --light-color-attribute-editable-value: #1a1aa6;\n --light-color-background: #ffffff;\n --light-color-background-hover: rgba(0, 136, 250, 0.1);\n --light-color-background-inactive: #e5e5e5;\n --light-color-background-invalid: #fff0f0;\n --light-color-background-selected: #0088fa;\n --light-color-button-background: #ffffff;\n --light-color-button-background-focus: #ededed;\n --light-color-button: #5f6673;\n --light-color-button-disabled: #cfd1d5;\n --light-color-button-active: #0088fa;\n --light-color-button-focus: #23272f;\n --light-color-button-hover: #23272f;\n --light-color-border: #eeeeee;\n --light-color-commit-did-not-render-fill: #cfd1d5;\n --light-color-commit-did-not-render-fill-text: #000000;\n --light-color-commit-did-not-render-pattern: #cfd1d5;\n --light-color-commit-did-not-render-pattern-text: #333333;\n --light-color-commit-gradient-0: #37afa9;\n --light-color-commit-gradient-1: #63b19e;\n --light-color-commit-gradient-2: #80b393;\n --light-color-commit-gradient-3: #97b488;\n --light-color-commit-gradient-4: #abb67d;\n --light-color-commit-gradient-5: #beb771;\n --light-color-commit-gradient-6: #cfb965;\n --light-color-commit-gradient-7: #dfba57;\n --light-color-commit-gradient-8: #efbb49;\n --light-color-commit-gradient-9: #febc38;\n --light-color-commit-gradient-text: #000000;\n --light-color-component-name: #6a51b2;\n --light-color-component-name-inverted: #ffffff;\n --light-color-component-badge-background: rgba(0, 0, 0, 0.1);\n --light-color-component-badge-background-inverted: rgba(255, 255, 255, 0.25);\n --light-color-component-badge-count: #777d88;\n --light-color-component-badge-count-inverted: rgba(255, 255, 255, 0.7);\n --light-color-context-background: rgba(0,0,0,.9);\n --light-color-context-background-hover: rgba(255, 255, 255, 0.1);\n --light-color-context-background-selected: #178fb9;\n --light-color-context-border: #3d424a;\n --light-color-context-text: #ffffff;\n --light-color-context-text-selected: #ffffff;\n --light-color-dim: #777d88;\n --light-color-dimmer: #cfd1d5;\n --light-color-dimmest: #eff0f1;\n --light-color-error-background: hsl(0, 100%, 97%);\n --light-color-error-border: hsl(0, 100%, 92%);\n --light-color-error-text: #ff0000;\n --light-color-expand-collapse-toggle: #777d88;\n --light-color-link: #0000ff;\n --light-color-modal-background: rgba(255, 255, 255, 0.75);\n --light-color-record-active: #fc3a4b;\n --light-color-record-hover: #3578e5;\n --light-color-record-inactive: #0088fa;\n --light-color-scroll-thumb: #c2c2c2;\n --light-color-scroll-track: #fafafa;\n --light-color-search-match: yellow;\n --light-color-search-match-current: #f7923b;\n --light-color-selected-tree-highlight-active: rgba(0, 136, 250, 0.1);\n --light-color-selected-tree-highlight-inactive: rgba(0, 0, 0, 0.05);\n --light-color-shadow: rgba(0, 0, 0, 0.25);\n --light-color-tab-selected-border: #0088fa;\n --light-color-text: #000000;\n --light-color-text-invalid: #ff0000;\n --light-color-text-selected: #ffffff;\n --light-color-toggle-background-invalid: #fc3a4b;\n --light-color-toggle-background-on: #0088fa;\n --light-color-toggle-background-off: #cfd1d5;\n --light-color-toggle-text: #ffffff;\n --light-color-tooltip-background: rgba(0, 0, 0, 0.9);\n --light-color-tooltip-text: #ffffff;\n\n /* Dark theme */\n --dark-color-attribute-name: #9d87d2;\n --dark-color-attribute-name-not-editable: #ededed;\n --dark-color-attribute-name-inverted: #282828;\n --dark-color-attribute-value: #cedae0;\n --dark-color-attribute-value-inverted: #ffffff;\n --dark-color-attribute-editable-value: yellow;\n --dark-color-background: #282c34;\n --dark-color-background-hover: rgba(255, 255, 255, 0.1);\n --dark-color-background-inactive: #3d424a;\n --dark-color-background-invalid: #5c0000;\n --dark-color-background-selected: #178fb9;\n --dark-color-button-background: #282c34;\n --dark-color-button-background-focus: #3d424a;\n --dark-color-button: #afb3b9;\n --dark-color-button-active: #61dafb;\n --dark-color-button-disabled: #4f5766;\n --dark-color-button-focus: #a2e9fc;\n --dark-color-button-hover: #ededed;\n --dark-color-border: #3d424a;\n --dark-color-commit-did-not-render-fill: #777d88;\n --dark-color-commit-did-not-render-fill-text: #000000;\n --dark-color-commit-did-not-render-pattern: #666c77;\n --dark-color-commit-did-not-render-pattern-text: #ffffff;\n --dark-color-commit-gradient-0: #37afa9;\n --dark-color-commit-gradient-1: #63b19e;\n --dark-color-commit-gradient-2: #80b393;\n --dark-color-commit-gradient-3: #97b488;\n --dark-color-commit-gradient-4: #abb67d;\n --dark-color-commit-gradient-5: #beb771;\n --dark-color-commit-gradient-6: #cfb965;\n --dark-color-commit-gradient-7: #dfba57;\n --dark-color-commit-gradient-8: #efbb49;\n --dark-color-commit-gradient-9: #febc38;\n --dark-color-commit-gradient-text: #000000;\n --dark-color-component-name: #61dafb;\n --dark-color-component-name-inverted: #282828;\n --dark-color-component-badge-background: rgba(255, 255, 255, 0.25);\n --dark-color-component-badge-background-inverted: rgba(0, 0, 0, 0.25);\n --dark-color-component-badge-count: #8f949d;\n --dark-color-component-badge-count-inverted: rgba(255, 255, 255, 0.7);\n --dark-color-context-background: rgba(255,255,255,.9);\n --dark-color-context-background-hover: rgba(0, 136, 250, 0.1);\n --dark-color-context-background-selected: #0088fa;\n --dark-color-context-border: #eeeeee;\n --dark-color-context-text: #000000;\n --dark-color-context-text-selected: #ffffff;\n --dark-color-dim: #8f949d;\n --dark-color-dimmer: #777d88;\n --dark-color-dimmest: #4f5766;\n --dark-color-error-background: #200;\n --dark-color-error-border: #900;\n --dark-color-error-text: #f55;\n --dark-color-expand-collapse-toggle: #8f949d;\n --dark-color-link: #61dafb;\n --dark-color-modal-background: rgba(0, 0, 0, 0.75);\n --dark-color-record-active: #fc3a4b;\n --dark-color-record-hover: #a2e9fc;\n --dark-color-record-inactive: #61dafb;\n --dark-color-scroll-thumb: #afb3b9;\n --dark-color-scroll-track: #313640;\n --dark-color-search-match: yellow;\n --dark-color-search-match-current: #f7923b;\n --dark-color-selected-tree-highlight-active: rgba(23, 143, 185, 0.15);\n --dark-color-selected-tree-highlight-inactive: rgba(255, 255, 255, 0.05);\n --dark-color-shadow: rgba(0, 0, 0, 0.5);\n --dark-color-tab-selected-border: #178fb9;\n --dark-color-text: #ffffff;\n --dark-color-text-invalid: #ff8080;\n --dark-color-text-selected: #ffffff;\n --dark-color-toggle-background-invalid: #fc3a4b;\n --dark-color-toggle-background-on: #178fb9;\n --dark-color-toggle-background-off: #777d88;\n --dark-color-toggle-text: #ffffff;\n --dark-color-tooltip-background: rgba(255, 255, 255, 0.9);\n --dark-color-tooltip-text: #000000;\n\n /* Font smoothing */\n --light-font-smoothing: auto;\n --dark-font-smoothing: antialiased;\n --font-smoothing: auto;\n\n /* Compact density */\n --compact-font-size-monospace-small: 9px;\n --compact-font-size-monospace-normal: 11px;\n --compact-font-size-monospace-large: 15px;\n --compact-font-size-sans-small: 10px;\n --compact-font-size-sans-normal: 12px;\n --compact-font-size-sans-large: 14px;\n --compact-line-height-data: 18px;\n --compact-root-font-size: 16px;\n\n /* Comfortable density */\n --comfortable-font-size-monospace-small: 10px;\n --comfortable-font-size-monospace-normal: 13px;\n --comfortable-font-size-monospace-large: 17px;\n --comfortable-font-size-sans-small: 12px;\n --comfortable-font-size-sans-normal: 14px;\n --comfortable-font-size-sans-large: 16px;\n --comfortable-line-height-data: 22px;\n --comfortable-root-font-size: 20px;\n\n /* GitHub.com system fonts */\n --font-family-monospace: 'SFMono-Regular', Consolas, 'Liberation Mono', Menlo,\n Courier, monospace;\n --font-family-sans: -apple-system, BlinkMacSystemFont, Segoe UI, Helvetica,\n Arial, sans-serif, Apple Color Emoji, Segoe UI Emoji, Segoe UI Symbol;\n\n /* Constant values shared between JS and CSS */\n --interaction-commit-size: 10px;\n --interaction-label-width: 200px;\n}\n"},function(e,t,n){"use strict";function r(e){var t=this;if(t instanceof r||(t=new r),t.tail=null,t.head=null,t.length=0,e&&"function"==typeof e.forEach)e.forEach((function(e){t.push(e)}));else if(arguments.length>0)for(var n=0,i=arguments.length;n1)n=t;else{if(!this.head)throw new TypeError("Reduce of empty list with no initial value");r=this.head.next,n=this.head.value}for(var i=0;null!==r;i++)n=e(n,r.value,i),r=r.next;return n},r.prototype.reduceReverse=function(e,t){var n,r=this.tail;if(arguments.length>1)n=t;else{if(!this.tail)throw new TypeError("Reduce of empty list with no initial value");r=this.tail.prev,n=this.tail.value}for(var i=this.length-1;null!==r;i--)n=e(n,r.value,i),r=r.prev;return n},r.prototype.toArray=function(){for(var e=new Array(this.length),t=0,n=this.head;null!==n;t++)e[t]=n.value,n=n.next;return e},r.prototype.toArrayReverse=function(){for(var e=new Array(this.length),t=0,n=this.tail;null!==n;t++)e[t]=n.value,n=n.prev;return e},r.prototype.slice=function(e,t){(t=t||this.length)<0&&(t+=this.length),(e=e||0)<0&&(e+=this.length);var n=new r;if(tthis.length&&(t=this.length);for(var i=0,o=this.head;null!==o&&ithis.length&&(t=this.length);for(var i=this.length,o=this.tail;null!==o&&i>t;i--)o=o.prev;for(;null!==o&&i>e;i--,o=o.prev)n.push(o.value);return n},r.prototype.splice=function(e,t){e>this.length&&(e=this.length-1),e<0&&(e=this.length+e);for(var n=0,r=this.head;null!==r&&n=0&&(e._idleTimeoutId=setTimeout((function(){e._onTimeout&&e._onTimeout()}),t))},n(14),t.setImmediate="undefined"!=typeof self&&self.setImmediate||void 0!==e&&e.setImmediate||this&&this.setImmediate,t.clearImmediate="undefined"!=typeof self&&self.clearImmediate||void 0!==e&&e.clearImmediate||this&&this.clearImmediate}).call(this,n(4))},function(e,t,n){(function(e,t){!function(e,n){"use strict";if(!e.setImmediate){var r,i,o,u,a,l=1,s={},c=!1,f=e.document,d=Object.getPrototypeOf&&Object.getPrototypeOf(e);d=d&&d.setTimeout?d:e,"[object process]"==={}.toString.call(e.process)?r=function(e){t.nextTick((function(){h(e)}))}:function(){if(e.postMessage&&!e.importScripts){var t=!0,n=e.onmessage;return e.onmessage=function(){t=!1},e.postMessage("","*"),e.onmessage=n,t}}()?(u="setImmediate$"+Math.random()+"$",a=function(t){t.source===e&&"string"==typeof t.data&&0===t.data.indexOf(u)&&h(+t.data.slice(u.length))},e.addEventListener?e.addEventListener("message",a,!1):e.attachEvent("onmessage",a),r=function(t){e.postMessage(u+t,"*")}):e.MessageChannel?((o=new MessageChannel).port1.onmessage=function(e){h(e.data)},r=function(e){o.port2.postMessage(e)}):f&&"onreadystatechange"in f.createElement("script")?(i=f.documentElement,r=function(e){var t=f.createElement("script");t.onreadystatechange=function(){h(e),t.onreadystatechange=null,i.removeChild(t),t=null},i.appendChild(t)}):r=function(e){setTimeout(h,0,e)},d.setImmediate=function(e){"function"!=typeof e&&(e=new Function(""+e));for(var t=new Array(arguments.length-1),n=0;nv;v++)if(-1!==(h=g(p,c,v))){m=v,c=h;break e}c=-1}}e:{if(p=f,void 0!==(h=d().get(s.primitive)))for(v=0;vc-p?null:f.slice(p,c-1))){if(c=0,null!==r){for(;cc;r--)i=a.pop()}for(r=f.length-c-1;1<=r;r--)c=[],i.push({id:null,isStateEditable:!1,name:_(f[r-1].functionName),value:void 0,subHooks:c}),a.push(i),i=c;r=f}c="Context"===(f=s.primitive)||"DebugValue"===f?null:u++,i.push({id:c,isStateEditable:"Reducer"===f||"State"===f,name:f,value:s.value,subHooks:[]})}return function e(t,n){for(var r=[],i=0;i-1&&(t=t.replace(/eval code/g,"eval").replace(/(\(eval at [^()]*)|(\),.*$)/g,""));var n=t.replace(/^\s+/,"").replace(/\(eval code/g,"("),r=n.match(/ (\((.+):(\d+):(\d+)\)$)/),i=(n=r?n.replace(r[0],""):n).split(/\s+/).slice(1),o=this.extractLocation(r?r[1]:i.pop()),u=i.join(" ")||void 0,a=["eval",""].indexOf(o[0])>-1?void 0:o[0];return new e({functionName:u,fileName:a,lineNumber:o[1],columnNumber:o[2],source:t})}),this)},parseFFOrSafari:function(t){return t.stack.split("\n").filter((function(e){return!e.match(r)}),this).map((function(t){if(t.indexOf(" > eval")>-1&&(t=t.replace(/ line (\d+)(?: > eval line \d+)* > eval:\d+:\d+/g,":$1")),-1===t.indexOf("@")&&-1===t.indexOf(":"))return new e({functionName:t});var n=/((.*".+"[^@]*)?[^@]*)(?:@)/,r=t.match(n),i=r&&r[1]?r[1]:void 0,o=this.extractLocation(t.replace(n,""));return new e({functionName:i,fileName:o[0],lineNumber:o[1],columnNumber:o[2],source:t})}),this)},parseOpera:function(e){return!e.stacktrace||e.message.indexOf("\n")>-1&&e.message.split("\n").length>e.stacktrace.split("\n").length?this.parseOpera9(e):e.stack?this.parseOpera11(e):this.parseOpera10(e)},parseOpera9:function(t){for(var n=/Line (\d+).*script (?:in )?(\S+)/i,r=t.message.split("\n"),i=[],o=2,u=r.length;o/,"$2").replace(/\([^)]*\)/g,"")||void 0;o.match(/\(([^)]*)\)/)&&(n=o.replace(/^[^(]+\(([^)]*)\)$/,"$1"));var a=void 0===n||"[arguments not available]"===n?void 0:n.split(",");return new e({functionName:u,args:a,fileName:i[0],lineNumber:i[1],columnNumber:i[2],source:t})}),this)}}})?r.apply(t,i):r)||(e.exports=o)}()},function(e,t,n){var r,i,o;!function(n,u){"use strict";i=[],void 0===(o="function"==typeof(r=function(){function e(e){return e.charAt(0).toUpperCase()+e.substring(1)}function t(e){return function(){return this[e]}}var n=["isConstructor","isEval","isNative","isToplevel"],r=["columnNumber","lineNumber"],i=["fileName","functionName","source"],o=n.concat(r,i,["args"]);function u(t){if(t)for(var n=0;n1?n-1:0),i=1;i=0&&n.splice(r,1)}}}])&&r(t.prototype,n),e}(),o=n(2),u=n.n(o);try{var a=n(9).default,l=function(e){var t=new RegExp("".concat(e,": ([0-9]+)")),n=a.match(t);return parseInt(n[1],10)};l("comfortable-line-height-data"),l("compact-line-height-data")}catch(e){}function s(e){try{return sessionStorage.getItem(e)}catch(e){return null}}function c(e){try{sessionStorage.removeItem(e)}catch(e){}}function f(e,t){try{return sessionStorage.setItem(e,t)}catch(e){}}var d=function(e,t){return e===t},p=n(1),h=n.n(p);function v(e){return e.ownerDocument?e.ownerDocument.defaultView:null}function m(e){var t=v(e);return t?t.frameElement:null}function g(e){var t=b(e);return y([e.getBoundingClientRect(),{top:t.borderTop,left:t.borderLeft,bottom:t.borderBottom,right:t.borderRight,width:0,height:0}])}function y(e){return e.reduce((function(e,t){return null==e?t:{top:e.top+t.top,left:e.left+t.left,width:e.width,height:e.height,bottom:e.bottom+t.bottom,right:e.right+t.right}}))}function _(e,t){var n=m(e);if(n&&n!==t){for(var r=[e.getBoundingClientRect()],i=n,o=!1;i;){var u=g(i);if(r.push(u),i=m(i),o)break;i&&v(i)===t&&(o=!0)}return y(r)}return e.getBoundingClientRect()}function b(e){var t=window.getComputedStyle(e);return{borderLeft:parseInt(t.borderLeftWidth,10),borderRight:parseInt(t.borderRightWidth,10),borderTop:parseInt(t.borderTopWidth,10),borderBottom:parseInt(t.borderBottomWidth,10),marginLeft:parseInt(t.marginLeft,10),marginRight:parseInt(t.marginRight,10),marginTop:parseInt(t.marginTop,10),marginBottom:parseInt(t.marginBottom,10),paddingLeft:parseInt(t.paddingLeft,10),paddingRight:parseInt(t.paddingRight,10),paddingTop:parseInt(t.paddingTop,10),paddingBottom:parseInt(t.paddingBottom,10)}}function w(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);nt.left+t.width&&(u=t.left+t.width-o-5),{style:{top:r+="px",left:u+="px"}}}(e,t,{width:n.width,height:n.height});h()(this.tip.style,r.style)}}]),e}(),T=function(){function e(){E(this,e);var t=window.__REACT_DEVTOOLS_TARGET_WINDOW__||window;this.window=t;var n=window.__REACT_DEVTOOLS_TARGET_WINDOW__||window;this.tipBoundsWindow=n;var r=t.document;this.container=r.createElement("div"),this.container.style.zIndex="10000000",this.tip=new k(r,this.container),this.rects=[],r.body.appendChild(this.container)}return S(e,[{key:"remove",value:function(){this.tip.remove(),this.rects.forEach((function(e){e.remove()})),this.rects.length=0,this.container.parentNode&&this.container.parentNode.removeChild(this.container)}},{key:"inspect",value:function(e,t){for(var n=this,r=e.filter((function(e){return e.nodeType===Node.ELEMENT_NODE}));this.rects.length>r.length;)this.rects.pop().remove();if(0!==r.length){for(;this.rects.length=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:i}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var o,u=!0,a=!1;return{s:function(){n=e[Symbol.iterator]()},n:function(){var e=n.next();return u=e.done,e},e:function(e){a=!0,o=e},f:function(){try{u||null==n.return||n.return()}finally{if(a)throw o}}}}(u.rendererInterfaces.values());try{for(s.s();!(a=s.n()).done;){var c=a.value,f=c.getFiberIDForNative(o,!0);if(null!==f){l=c.getDisplayNameForFiberID(f,!0);break}}}catch(e){s.e(e)}finally{s.f()}l&&(t+=" (in "+l+")")}}this.tip.updateText(t,i.right-i.left,i.bottom-i.top);var d=_(this.tipBoundsWindow.document.documentElement,this.window);this.tip.updatePosition({top:i.top,left:i.left,height:i.bottom-i.top,width:i.right-i.left},{top:d.top+this.tipBoundsWindow.scrollY,left:d.left+this.tipBoundsWindow.scrollX,height:this.tipBoundsWindow.innerHeight,width:this.tipBoundsWindow.innerWidth})}}}]),e}();function x(e,t,n){h()(n.style,{borderTopWidth:e[t+"Top"]+"px",borderLeftWidth:e[t+"Left"]+"px",borderRightWidth:e[t+"Right"]+"px",borderBottomWidth:e[t+"Bottom"]+"px",borderStyle:"solid"})}var A={background:"rgba(120, 170, 210, 0.7)",padding:"rgba(77, 200, 0, 0.3)",margin:"rgba(255, 155, 0, 0.3)",border:"rgba(255, 200, 50, 0.3)"},O=null,P=null;function I(){O=null,null!==P&&(P.remove(),P=null)}function N(e,t,n){null!=window.document&&(null!==O&&clearTimeout(O),null!=e&&(null===P&&(P=new T),P.inspect(e,t),n&&(O=setTimeout(I,2e3))))}var M=new Set,R=["#37afa9","#63b19e","#80b393","#97b488","#abb67d","#beb771","#cfb965","#dfba57","#efbb49","#febc38"],F=null;function L(e){return(L="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}var B="object"===("undefined"==typeof performance?"undefined":L(performance))&&"function"==typeof performance.now?function(){return performance.now()}:function(){return Date.now()},j=new Map,U=null,z=!1,W=null;function H(e){z&&(e.forEach((function(e){var t=j.get(e),n=B(),r=null!=t?t.lastMeasuredAt:0,i=null!=t?t.rect:null;(null===i||r+2505&&void 0!==arguments[5]?arguments[5]:0,a=me(e);switch(a){case"html_element":return t.push(r),{inspectable:!1,preview_short:_e(e,!1),preview_long:_e(e,!0),name:e.tagName,type:a};case"function":return t.push(r),{inspectable:!1,preview_short:_e(e,!1),preview_long:_e(e,!0),name:"function"!=typeof e.name&&e.name?e.name:"function",type:a};case"string":return e.length<=500?e:e.slice(0,500)+"...";case"bigint":case"symbol":return t.push(r),{inspectable:!1,preview_short:_e(e,!1),preview_long:_e(e,!0),name:e.toString(),type:a};case"react_element":return t.push(r),{inspectable:!1,preview_short:_e(e,!1),preview_long:_e(e,!0),name:ge(e)||"Unknown",type:a};case"array_buffer":case"data_view":return t.push(r),{inspectable:!1,preview_short:_e(e,!1),preview_long:_e(e,!0),name:"data_view"===a?"DataView":"ArrayBuffer",size:e.byteLength,type:a};case"array":return o=i(r),u>=2&&!o?Z(a,!0,e,t,r):e.map((function(e,a){return ee(e,t,n,r.concat([a]),i,o?1:u+1)}));case"html_all_collection":case"typed_array":case"iterator":if(o=i(r),u>=2&&!o)return Z(a,!0,e,t,r);var l={unserializable:!0,type:a,readonly:!0,size:"typed_array"===a?e.length:void 0,preview_short:_e(e,!1),preview_long:_e(e,!0),name:e.constructor&&"Object"!==e.constructor.name?e.constructor.name:""};return Q(e[Symbol.iterator])&&Array.from(e).forEach((function(e,a){return l[a]=ee(e,t,n,r.concat([a]),i,o?1:u+1)})),n.push(r),l;case"opaque_iterator":return t.push(r),{inspectable:!1,preview_short:_e(e,!1),preview_long:_e(e,!0),name:e[Symbol.toStringTag],type:a};case"date":case"regexp":return t.push(r),{inspectable:!1,preview_short:_e(e,!1),preview_long:_e(e,!0),name:e.toString(),type:a};case"object":if(o=i(r),u>=2&&!o)return Z(a,!0,e,t,r);var s={};return ae(e).forEach((function(a){var l=a.toString();s[l]=ee(e[a],t,n,r.concat([l]),i,o?1:u+1)})),s;case"infinity":case"nan":case"undefined":return t.push(r),{type:a};default:return e}}function te(e){return(te="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function ne(e){return function(e){if(Array.isArray(e))return re(e)}(e)||function(e){if("undefined"!=typeof Symbol&&Symbol.iterator in Object(e))return Array.from(e)}(e)||function(e,t){if(e){if("string"==typeof e)return re(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?re(e,t):void 0}}(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function re(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);nt.toString()?1:t.toString()>e.toString()?-1:0}function ae(e){for(var t=[],n=e,r=function(){var e=[].concat(ne(Object.keys(n)),ne(Object.getOwnPropertySymbols(n))),r=Object.getOwnPropertyDescriptors(n);e.forEach((function(e){r[e].enumerable&&t.push(e)})),n=Object.getPrototypeOf(n)};null!=n;)r();return t}function le(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"Anonymous",n=ie.get(e);if(null!=n)return n;var r=t;return"string"==typeof e.displayName?r=e.displayName:"string"==typeof e.name&&""!==e.name&&(r=e.name),ie.set(e,r),r}var se=0;function ce(){return++se}function fe(e){var t=oe.get(e);if(void 0!==t)return t;for(var n=new Array(e.length),r=0;r1&&void 0!==arguments[1]?arguments[1]:50;return e.length>t?e.substr(0,t)+"…":e}function _e(e,t){if(null!=e&&hasOwnProperty.call(e,J.type))return t?e[J.preview_long]:e[J.preview_short];switch(me(e)){case"html_element":return"<".concat(ye(e.tagName.toLowerCase())," />");case"function":return ye("ƒ ".concat("function"==typeof e.name?"":e.name,"() {}"));case"string":return'"'.concat(e,'"');case"bigint":return ye(e.toString()+"n");case"regexp":case"symbol":return ye(e.toString());case"react_element":return"<".concat(ye(ge(e)||"Unknown")," />");case"array_buffer":return"ArrayBuffer(".concat(e.byteLength,")");case"data_view":return"DataView(".concat(e.buffer.byteLength,")");case"array":if(t){for(var n="",r=0;r0&&(n+=", "),!((n+=_e(e[r],!1)).length>50));r++);return"[".concat(ye(n),"]")}var i=hasOwnProperty.call(e,J.size)?e[J.size]:e.length;return"Array(".concat(i,")");case"typed_array":var o="".concat(e.constructor.name,"(").concat(e.length,")");if(t){for(var u="",a=0;a0&&(u+=", "),!((u+=e[a]).length>50));a++);return"".concat(o," [").concat(ye(u),"]")}return o;case"iterator":var l=e.constructor.name;if(t){for(var s=Array.from(e),c="",f=0;f0&&(c+=", "),Array.isArray(d)){var p=_e(d[0],!0),h=_e(d[1],!1);c+="".concat(p," => ").concat(h)}else c+=_e(d,!1);if(c.length>50)break}return"".concat(l,"(").concat(e.size,") {").concat(ye(c),"}")}return"".concat(l,"(").concat(e.size,")");case"opaque_iterator":return e[Symbol.toStringTag];case"date":return e.toString();case"object":if(t){for(var v=ae(e).sort(ue),m="",g=0;g0&&(m+=", "),(m+="".concat(y.toString(),": ").concat(_e(e[y],!1))).length>50)break}return"{".concat(ye(m),"}")}return"{…}";case"boolean":case"number":case"infinity":case"nan":case"null":case"undefined":return e;default:try{return ye(""+e)}catch(e){return"unserializable"}}}var be=n(7);function we(e){return(we="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function Ee(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function De(e){for(var t=1;t2&&void 0!==arguments[2]?arguments[2]:[];if(null!==e){var r=[],i=[],o=ee(e,r,i,n,t);return{data:o,cleaned:r,unserializable:i}}return null}function ke(e){var t,n,r=(t=e,n=new Set,JSON.stringify(t,(function(e,t){if("object"===we(t)&&null!==t){if(n.has(t))return;n.add(t)}return"bigint"==typeof t?t.toString()+"n":t}))),i=void 0===r?"undefined":r,o=window.__REACT_DEVTOOLS_GLOBAL_HOOK__.clipboardCopyText;"function"==typeof o?o(i).catch((function(e){})):Object(be.copy)(i)}function Te(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:0,r=t[n],i=Array.isArray(e)?e.slice():De({},e);return n+1===t.length?Array.isArray(i)?i.splice(r,1):delete i[r]:i[r]=Te(e[r],t,n+1),i}function xe(e,t,n){var r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:0,i=t[r],o=Array.isArray(e)?e.slice():De({},e);if(r+1===t.length){var u=n[r];o[u]=o[i],Array.isArray(o)?o.splice(i,1):delete o[i]}else o[i]=xe(e[i],t,n,r+1);return o}function Ae(e,t,n){var r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:0;if(r>=t.length)return n;var i=t[r],o=Array.isArray(e)?e.slice():De({},e);return o[i]=Ae(e[i],t,n,r+1),o}var Oe=n(8);function Pe(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function Ie(e){for(var t=1;t=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:i}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var o,u=!0,a=!1;return{s:function(){n=e[Symbol.iterator]()},n:function(){var e=n.next();return u=e.done,e},e:function(e){a=!0,o=e},f:function(){try{u||null==n.return||n.return()}finally{if(a)throw o}}}}function Le(e,t){if(e){if("string"==typeof e)return Be(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?Be(e,t):void 0}}function Be(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n0){var a=o(e);if(null!=a){var l,s=Fe(Y);try{for(s.s();!(l=s.n()).done;)if(l.value.test(a))return!0}catch(e){s.e(e)}finally{s.f()}}}if(null!=t&&K.size>0){var c,f=t.fileName,d=Fe(K);try{for(d.s();!(c=d.n()).done;)if(c.value.test(f))return!0}catch(e){d.e(e)}finally{d.f()}}return!1}function te(e){var t=e.type;switch(e.tag){case v:case S:return 1;case h:case C:return 5;case _:return 6;case b:return 11;case E:return 7;case w:case D:case y:return 9;case k:case x:return 8;case A:return 12;case O:return 13;default:switch(u(t)){case 60111:case"Symbol(react.concurrent_mode)":case"Symbol(react.async_mode)":return 9;case 60109:case"Symbol(react.provider)":return 2;case 60110:case"Symbol(react.context)":return 2;case 60108:case"Symbol(react.strict_mode)":return 9;case 60114:case"Symbol(react.profiler)":return 10;default:return 9}}}function ne(e){if(oe.has(e))return e;var t=e.alternate;return null!=t&&oe.has(t)?t:(oe.add(e),e)}null!=window.__REACT_DEVTOOLS_COMPONENT_FILTERS__?Z(window.__REACT_DEVTOOLS_COMPONENT_FILTERS__):Z([{type:1,value:7,isEnabled:!0}]);var re=new Map,ie=new Map,oe=new Set,ue=new Map,ae=new Map,le=-1;function se(e){if(!re.has(e)){var t=ce();re.set(e,t),ie.set(t,e)}return re.get(e)}function me(e){switch(te(e)){case 1:if(null!==dt){var t=se(ne(e)),n=ye(e);null!==n&&dt.set(t,n)}}}var ge={};function ye(e){switch(te(e)){case 1:var t=e.stateNode,n=ge,r=ge;return null!=t&&(t.constructor&&null!=t.constructor.contextType?r=t.context:(n=t.context)&&0===Object.keys(n).length&&(n=ge)),[n,r];default:return null}}function _e(e){switch(te(e)){case 1:if(null!==dt){var t=se(ne(e)),n=dt.has(t)?dt.get(t):null,r=ye(e);if(null==n||null==r)return null;var i=Re(n,2),o=i[0],u=i[1],a=Re(r,2),l=a[0],s=a[1];if(l!==ge)return we(o,l);if(s!==ge)return u!==s}}return null}function be(e,t){if(null==e||null==t)return!1;if(t.hasOwnProperty("baseState")&&t.hasOwnProperty("memoizedState")&&t.hasOwnProperty("next")&&t.hasOwnProperty("queue"))for(;null!==t;){if(t.memoizedState!==e.memoizedState)return!0;t=t.next,e=e.next}return!1}function we(e,t){if(null==e||null==t)return null;if(t.hasOwnProperty("baseState")&&t.hasOwnProperty("memoizedState")&&t.hasOwnProperty("next")&&t.hasOwnProperty("queue"))return null;var n,r=[],i=Fe(new Set([].concat(Me(Object.keys(e)),Me(Object.keys(t)))));try{for(i.s();!(n=i.n()).done;){var o=n.value;e[o]!==t[o]&&r.push(o)}}catch(e){i.e(e)}finally{i.f()}return r}function Ee(e,t){switch(t.tag){case v:case h:case m:case k:case x:return(Ue(t)&d)===d;default:return e.memoizedProps!==t.memoizedProps||e.memoizedState!==t.memoizedState||e.ref!==t.ref}}var De=[],Se=[],Pe=[],Ne=[],Le=new Map,Be=0,je=null;function ze(e){De.push(e)}function Ve(n){if(0!==De.length||0!==Se.length||0!==Pe.length||null!==je||vt){var r=Se.length+Pe.length+(null===je?0:1),i=new Array(3+Be+(r>0?2+r:0)+De.length),o=0;if(i[o++]=t,i[o++]=le,i[o++]=Be,Le.forEach((function(e,t){i[o++]=t.length;for(var n=fe(t),r=0;r0){i[o++]=2,i[o++]=r;for(var u=Se.length-1;u>=0;u--)i[o++]=Se[u];for(var a=0;a0?n.forEach((function(t){e.emit("operations",t)})):(null!==Dt&&(kt=!0),e.getFiberRoots(t).forEach((function(e){Ot(le=se(ne(e.current)),e.current),vt&&null!=e.memoizedInteractions&&(st={changeDescriptions:gt?new Map:null,durations:[],commitTime:We()-mt,interactions:Array.from(e.memoizedInteractions).map((function(e){return Ie(Ie({},e),{},{timestamp:e.timestamp-mt})})),maxActualDuration:0,priorityLevel:null}),$e(e.current,null,!1,!1),Ve(),le=-1})))},getBestMatchForTrackedPath:function(){if(null===Dt)return null;if(null===St)return null;for(var e=St;null!==e&&ee(e);)e=e.return;return null===e?null:{id:se(ne(e)),isFullMatch:Ct===Dt.length-1}},getDisplayNameForFiberID:function(e){var t=ie.get(e);return null!=t?o(t):null},getFiberIDForNative:function(e){var t=arguments.length>1&&void 0!==arguments[1]&&arguments[1],r=n.findFiberByHostInstance(e);if(null!=r){if(t)for(;null!==r&&ee(r);)r=r.return;return se(ne(r))}return null},getInstanceAndStyle:function(e){var t=null,n=null,r=et(e);return null!==r&&(t=r.stateNode,null!==r.memoizedProps&&(n=r.memoizedProps.style)),{instance:t,style:n}},getOwnersList:function(e){var t=et(e);if(null==t)return null;var n=t._debugOwner,r=[{displayName:o(t)||"Anonymous",id:e,type:te(t)}];if(n)for(var i=n;null!==i;)r.unshift({displayName:o(i)||"Anonymous",id:se(ne(i)),type:te(i)}),i=i._debugOwner||null;return r},getPathForElement:function(e){var t=ie.get(e);if(null==t)return null;for(var n=[];null!==t;)n.push(It(t)),t=t.return;return n.reverse(),n},getProfilingData:function(){var e=[];if(null===yt)throw Error("getProfilingData() called before any profiling data was recorded");return yt.forEach((function(t,n){var r=[],i=[],o=new Map,u=new Map,a=null!==ft&&ft.get(n)||"Unknown";null!=pt&&pt.forEach((function(e,t){null!=ht&&ht.get(t)===n&&i.push([t,e])})),t.forEach((function(e,t){var n=e.changeDescriptions,i=e.durations,a=e.interactions,l=e.maxActualDuration,s=e.priorityLevel,c=e.commitTime,f=[];a.forEach((function(e){o.has(e.id)||o.set(e.id,e),f.push(e.id);var n=u.get(e.id);null!=n?n.push(t):u.set(e.id,[t])}));for(var d=[],p=[],h=0;h1?At.set(n,r-1):At.delete(n),xt.delete(e)}(le),Ge(r,!1))}else Ot(le,r),$e(r,null,!1,!1);if(vt&&o){var l=yt.get(le);null!=l?l.push(st):yt.set(le,[st])}Ve(),Q&&e.emit("traceUpdates",J),le=-1},handleCommitFiberUnmount:function(e){Ge(e,!1)},inspectElement:function(e,t){if(ot(e)){if(null!=t){ut(t);var n=null;return"hooks"===t[0]&&(n="hooks"),{id:e,type:"hydrated-path",path:t,value:Ce(de(nt,t),at(null,n),t)}}return{id:e,type:"no-change"}}if(rt=!1,null!==nt&&nt.id===e||(it={}),null===(nt=tt(e)))return{id:e,type:"not-found"};null!=t&&ut(t),function(e){var t=e.hooks,n=e.id,i=e.props,o=ie.get(n);if(null!=o){var u=o.elementType,a=o.stateNode,l=o.tag,s=o.type;switch(l){case v:case S:case C:r.$r=a;break;case h:r.$r={hooks:t,props:i,type:s};break;case _:r.$r={props:i,type:s.render};break;case k:case x:r.$r={props:i,type:null!=u&&null!=u.type?u.type:s};break;default:r.$r=null}}else console.warn('Could not find Fiber with id "'.concat(n,'"'))}(nt);var i=Ie({},nt);return i.context=Ce(i.context,at("context",null)),i.hooks=Ce(i.hooks,at("hooks","hooks")),i.props=Ce(i.props,at("props",null)),i.state=Ce(i.state,at("state",null)),{id:e,type:"full-data",value:i}},logElementToConsole:function(e){var t=ot(e)?nt:tt(e);if(null!==t){var n="function"==typeof console.groupCollapsed;n&&console.groupCollapsed("[Click to expand] %c<".concat(t.displayName||"Component"," />"),"color: var(--dom-tag-name-color); font-weight: normal;"),null!==t.props&&console.log("Props:",t.props),null!==t.state&&console.log("State:",t.state),null!==t.hooks&&console.log("Hooks:",t.hooks);var r=Je(e);null!==r&&console.log("Nodes:",r),null!==t.source&&console.log("Location:",t.source),(window.chrome||/firefox/i.test(navigator.userAgent))&&console.log("Right-click any value to save it as a global variable for further inspection."),n&&console.groupEnd()}else console.warn('Could not find Fiber with id "'.concat(e,'"'))},prepareViewAttributeSource:function(e,t){ot(e)&&(window.$attribute=de(nt,t))},prepareViewElementSource:function(e){var t=ie.get(e);if(null!=t){var n=t.elementType,i=t.tag,o=t.type;switch(i){case v:case S:case C:case h:r.$type=o;break;case _:r.$type=o.render;break;case k:case x:r.$type=null!=n&&null!=n.type?n.type:o;break;default:r.$type=null}}else console.warn('Could not find Fiber with id "'.concat(e,'"'))},overrideSuspense:function(e,t){if("function"!=typeof H||"function"!=typeof V)throw new Error("Expected overrideSuspense() to not get called for earlier React versions.");t?(wt.add(e),1===wt.size&&H(Et)):(wt.delete(e),0===wt.size&&H(bt));var n=ie.get(e);null!=n&&V(n)},overrideValueAtPath:function(e,t,n,r,i){var o=et(t);if(null!==o){var u=o.stateNode;switch(e){case"context":switch(r=r.slice(1),o.tag){case v:0===r.length?u.context=i:ve(u.context,r,i),u.forceUpdate()}break;case"hooks":"function"==typeof L&&L(o,n,r,i);break;case"props":switch(o.tag){case v:o.pendingProps=Ae(u.props,r,i),u.forceUpdate();break;default:"function"==typeof U&&U(o,r,i)}break;case"state":switch(o.tag){case v:ve(u.state,r,i),u.forceUpdate()}}}},renamePath:function(e,t,n,r,i){var o=et(t);if(null!==o){var u=o.stateNode;switch(e){case"context":switch(r=r.slice(1),i=i.slice(1),o.tag){case v:0===r.length||he(u.context,r,i),u.forceUpdate()}break;case"hooks":"function"==typeof j&&j(o,n,r,i);break;case"props":null===u?"function"==typeof W&&W(o,r,i):(o.pendingProps=xe(u.props,r,i),u.forceUpdate());break;case"state":he(u.state,r,i),u.forceUpdate()}}},renderer:n,setTraceUpdatesEnabled:function(e){Q=e},setTrackedPath:Tt,startProfiling:_t,stopProfiling:function(){vt=!1,gt=!1},storeAsGlobal:function(e,t,n){if(ot(e)){var r=de(nt,t),i="$reactTemp".concat(n);window[i]=r,console.log(i),console.log(r)}},updateComponentFilters:function(n){if(vt)throw Error("Cannot modify filter preferences while profiling");e.getFiberRoots(t).forEach((function(e){le=se(ne(e.current)),Ye(e.current),Ge(e.current,!1),le=-1})),Z(n),At.clear(),e.getFiberRoots(t).forEach((function(e){Ot(le=se(ne(e.current)),e.current),$e(e.current,null,!1,!1),Ve(),le=-1}))}}}function qe(e){return(qe="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function Ge(e,t,n){if(void 0===ze)try{throw Error()}catch(e){var r=e.stack.trim().match(/\n( *(at )?)/);ze=r&&r[1]||""}return"\n"+ze+e}var $e=!1;function Ye(e,t,n){if(!e||$e)return"";var r,i=Error.prepareStackTrace;Error.prepareStackTrace=void 0,$e=!0;var o=n.current;n.current=null;try{if(t){var u=function(){throw Error()};if(Object.defineProperty(u.prototype,"props",{set:function(){throw Error()}}),"object"===("undefined"==typeof Reflect?"undefined":qe(Reflect))&&Reflect.construct){try{Reflect.construct(u,[])}catch(e){r=e}Reflect.construct(e,[],u)}else{try{u.call()}catch(e){r=e}e.call(u.prototype)}}else{try{throw Error()}catch(e){r=e}e()}}catch(e){if(e&&r&&"string"==typeof e.stack){for(var a=e.stack.split("\n"),l=r.stack.split("\n"),s=a.length-1,c=l.length-1;s>=1&&c>=0&&a[s]!==l[c];)c--;for(;s>=1&&c>=0;s--,c--)if(a[s]!==l[c]){if(1!==s||1!==c)do{if(s--,--c<0||a[s]!==l[c])return"\n"+a[s].replace(" at new "," at ")}while(s>=1&&c>=0);break}}}finally{$e=!1,Error.prepareStackTrace=i,n.current=o}var f=e?e.displayName||e.name:"";return f?Ge(f):""}function Ke(e,t,n,r){return Ye(e,!1,r)}function Xe(e,t,n){var r=e.HostComponent,i=e.LazyComponent,o=e.SuspenseComponent,u=e.SuspenseListComponent,a=e.FunctionComponent,l=e.IndeterminateComponent,s=e.SimpleMemoComponent,c=e.ForwardRef,f=e.Block,d=e.ClassComponent;switch(t.tag){case r:return Ge(t.type);case i:return Ge("Lazy");case o:return Ge("Suspense");case u:return Ge("SuspenseList");case a:case l:case s:return Ke(t.type,0,0,n);case c:return Ke(t.type.render,0,0,n);case f:return Ke(t.type._render,0,0,n);case d:return function(e,t,n,r){return Ye(e,!0,r)}(t.type,0,0,n);default:return""}}function Qe(e,t,n){try{var r="",i=t;do{r+=Xe(e,i,n),i=i.return}while(i);return r}catch(e){return"\nError generating stack: "+e.message+"\n"+e.stack}}function Je(e,t){var n;if("undefined"==typeof Symbol||null==e[Symbol.iterator]){if(Array.isArray(e)||(n=function(e,t){if(e){if("string"==typeof e)return Ze(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?Ze(e,t):void 0}}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,i=function(){};return{s:i,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:i}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var o,u=!0,a=!1;return{s:function(){n=e[Symbol.iterator]()},n:function(){var e=n.next();return u=e.done,e},e:function(e){a=!0,o=e},f:function(){try{u||null==n.return||n.return()}finally{if(a)throw o}}}}function Ze(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n0?r[r.length-1]:null,u=null!==o&&(tt.test(o)||nt.test(o));if(!u){var a,l=Je(rt.values());try{for(l.s();!(a=l.n()).done;){var s=a.value,c=s.currentDispatcherRef,f=s.getCurrentFiber,d=s.workTagMap,p=f();if(null!=p){var h=Qe(d,p,c);""!==h&&r.push(h);break}}}catch(e){l.e(e)}finally{l.f()}}}catch(e){}t.apply(void 0,r)};n.__REACT_DEVTOOLS_ORIGINAL_METHOD__=t,it[e]=n}catch(e){}}))}}function ft(e){return(ft="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function dt(e,t){for(var n=0;n1&&void 0!==arguments[1]?arguments[1]:d,n=void 0,r=[],i=void 0,o=!1,u=function(e,n){return t(e,r[n])},a=function(){for(var t=arguments.length,a=Array(t),l=0;le.length)&&(t=e.length);for(var n=0,r=new Array(t);n1?t-1:0),r=1;r0?"development":"production";var t=Function.prototype.toString;if(e.Mount&&e.Mount._renderNewRootComponent){var n=t.call(e.Mount._renderNewRootComponent);return 0!==n.indexOf("function")?"production":-1!==n.indexOf("storedMeasure")?"development":-1!==n.indexOf("should be a pure function")?-1!==n.indexOf("NODE_ENV")||-1!==n.indexOf("development")||-1!==n.indexOf("true")?"development":-1!==n.indexOf("nextElement")||-1!==n.indexOf("nextComponent")?"unminified":"development":-1!==n.indexOf("nextElement")||-1!==n.indexOf("nextComponent")?"unminified":"outdated"}}catch(e){}return"production"}(r);try{var l=!1!==window.__REACT_DEVTOOLS_APPEND_COMPONENT_STACK__,s=!0===window.__REACT_DEVTOOLS_BREAK_ON_CONSOLE_ERRORS__;(l||s)&&(lt(r),ct({appendComponentStack:l,breakOnConsoleErrors:s}))}catch(e){}var c=e.__REACT_DEVTOOLS_ATTACH__;if("function"==typeof c){var f=c(a,i,r,e);a.rendererInterfaces.set(i,f)}return a.emit("renderer",{id:i,renderer:r,reactBuildType:o}),i},on:function(e,t){o[e]||(o[e]=[]),o[e].push(t)},off:function(e,t){if(o[e]){var n=o[e].indexOf(t);-1!==n&&o[e].splice(n,1),o[e].length||delete o[e]}},sub:function(e,t){return a.on(e,t),function(){return a.off(e,t)}},supportsFiber:!0,checkDCE:function(e){try{Function.prototype.toString.call(e).indexOf("^_^")>-1&&(n=!0,setTimeout((function(){throw new Error("React is running in production mode, but dead code elimination has not been applied. Read how to correctly configure React for production: https://reactjs.org/link/perf-use-production-build")})))}catch(e){}},onCommitFiberUnmount:function(e,t){var n=i.get(e);null!=n&&n.handleCommitFiberUnmount(t)},onCommitFiberRoot:function(e,t,n){var r=a.getFiberRoots(e),o=t.current,u=r.has(t),l=null==o.memoizedState||null==o.memoizedState.element;u||l?u&&l&&r.delete(t):r.add(t);var s=i.get(e);null!=s&&s.handleCommitFiberRoot(t,n)}};Object.defineProperty(e,"__REACT_DEVTOOLS_GLOBAL_HOOK__",{configurable:!1,enumerable:!1,get:function(){return a}})}(window);var $t=window.__REACT_DEVTOOLS_GLOBAL_HOOK__,Yt=[{type:1,value:7,isEnabled:!0}];function Kt(e){if(null!=$t){var t=e||{},n=t.host,r=void 0===n?"localhost":n,i=t.nativeStyleEditorValidAttributes,o=t.useHttps,u=void 0!==o&&o,a=t.port,l=void 0===a?8097:a,s=t.websocket,c=t.resolveRNStyle,f=void 0===c?null:c,d=t.isAppActive,p=u?"wss":"ws",h=null;if((void 0===d?function(){return!0}:d)()){var v=null,m=[],g=p+"://"+r+":"+l,y=s||new window.WebSocket(g);y.onclose=function(){null!==v&&v.emit("shutdown"),_()},y.onerror=function(){_()},y.onmessage=function(e){var t;try{if("string"!=typeof e.data)throw Error();t=JSON.parse(e.data)}catch(t){return void console.error("[React DevTools] Failed to parse JSON: "+e.data)}m.forEach((function(e){try{e(t)}catch(e){throw console.log("[React DevTools] Error calling listener",t),console.log("error:",e),e}}))},y.onopen=function(){(v=new xt({listen:function(e){return m.push(e),function(){var t=m.indexOf(e);t>=0&&m.splice(t,1)}},send:function(e,t,n){y.readyState===y.OPEN?y.send(JSON.stringify({event:e,payload:t})):(null!==v&&v.shutdown(),_())}})).addListener("inspectElement",(function(t){var n=t.id,r=t.rendererID,i=e.rendererInterfaces[r];if(null!=i){var o=i.findNativeNodesForFiberID(n);null!=o&&null!=o[0]&&e.emit("showNativeHighlight",o[0])}})),v.addListener("updateComponentFilters",(function(e){Yt=e})),null==window.__REACT_DEVTOOLS_COMPONENT_FILTERS__&&v.send("overrideComponentFilters",Yt);var e=new yt(v);if(e.addListener("shutdown",(function(){$t.emit("shutdown")})),function(e,t,n){if(null==e)return function(){};var r=[e.sub("renderer-attached",(function(e){var n=e.id,r=(e.renderer,e.rendererInterface);t.setRendererInterface(n,r),r.flushInitialOperations()})),e.sub("unsupported-renderer-version",(function(e){t.onUnsupportedRenderer(e)})),e.sub("operations",t.onHookOperations),e.sub("traceUpdates",t.onTraceUpdates)],i=function(t,r){var i=e.rendererInterfaces.get(t);null==i&&("function"==typeof r.findFiberByHostInstance?i=Ve(e,t,r,n):r.ComponentTree&&(i=function(e,t,n,r){var i,o=new Map,u=new WeakMap,a=new WeakMap,l=null;function s(e){if("object"!==Rt(e)||null===e)throw new Error("Invalid internal instance: "+e);if(!u.has(e)){var t=ce();u.set(e,t),o.set(t,e)}return u.get(e)}function c(e,t){if(e.length!==t.length)return!1;for(var n=0;n0?f[f.length-1]:0),f.push(i),a.set(n,s(r._topLevelWrapper));try{var o=e.apply(this,t);return f.pop(),o}catch(e){throw f=[],e}finally{if(0===f.length){var u=a.get(n);if(void 0===u)throw new Error("Expected to find root ID.");w(u)}}},performUpdateIfNecessary:function(e,t){var n=t[0];if(9===Lt(n))return e.apply(this,t);var r=s(n);f.push(r);var i=Bt(n);try{var o=e.apply(this,t),u=Bt(n);return c(i,u)||h(0,r,u),f.pop(),o}catch(e){throw f=[],e}finally{if(0===f.length){var l=a.get(n);if(void 0===l)throw new Error("Expected to find root ID.");w(l)}}},receiveComponent:function(e,t){var n=t[0];if(9===Lt(n))return e.apply(this,t);var r=s(n);f.push(r);var i=Bt(n);try{var o=e.apply(this,t),u=Bt(n);return c(i,u)||h(0,r,u),f.pop(),o}catch(e){throw f=[],e}finally{if(0===f.length){var l=a.get(n);if(void 0===l)throw new Error("Expected to find root ID.");w(l)}}},unmountComponent:function(e,t){var n=t[0];if(9===Lt(n))return e.apply(this,t);var r=s(n);f.push(r);try{var i=e.apply(this,t);return f.pop(),function(e,t){y.push(t),o.delete(t)}(0,r),i}catch(e){throw f=[],e}finally{if(0===f.length){var u=a.get(n);if(void 0===u)throw new Error("Expected to find root ID.");w(u)}}}}));var m=[],g=new Map,y=[],_=0,b=null;function w(n){if(0!==m.length||0!==y.length||null!==b){var r=y.length+(null===b?0:1),i=new Array(3+_+(r>0?2+r:0)+m.length),o=0;if(i[o++]=t,i[o++]=n,i[o++]=_,g.forEach((function(e,t){i[o++]=t.length;for(var n=fe(t),r=0;r0){i[o++]=2,i[o++]=r;for(var u=0;u"),"color: var(--dom-tag-name-color); font-weight: normal;"),null!==t.props&&console.log("Props:",t.props),null!==t.state&&console.log("State:",t.state),null!==t.context&&console.log("Context:",t.context);var r=i(e);null!==r&&console.log("Node:",r),(window.chrome||/firefox/i.test(navigator.userAgent))&&console.log("Right-click any value to save it as a global variable for further inspection."),n&&console.groupEnd()}else console.warn('Could not find element with id "'.concat(e,'"'))},overrideSuspense:function(){throw new Error("overrideSuspense not supported by this renderer")},overrideValueAtPath:function(e,t,n,r,i){var u=o.get(t);if(null!=u){var a=u._instance;if(null!=a)switch(e){case"context":ve(a.context,r,i),Pt(a);break;case"hooks":throw new Error("Hooks not supported by this renderer");case"props":var l=u._currentElement;u._currentElement=Nt(Nt({},l),{},{props:Ae(l.props,r,i)}),Pt(a);break;case"state":ve(a.state,r,i),Pt(a)}}},renamePath:function(e,t,n,r,i){var u=o.get(t);if(null!=u){var a=u._instance;if(null!=a)switch(e){case"context":he(a.context,r,i),Pt(a);break;case"hooks":throw new Error("Hooks not supported by this renderer");case"props":var l=u._currentElement;u._currentElement=Nt(Nt({},l),{},{props:xe(l.props,r,i)}),Pt(a);break;case"state":he(a.state,r,i),Pt(a)}}},prepareViewAttributeSource:function(e,t){var n=T(e);null!==n&&(window.$attribute=de(n,t))},prepareViewElementSource:function(e){var t=o.get(e);if(null!=t){var n=t._currentElement;null!=n?r.$type=n.type:console.warn('Could not find element with id "'.concat(e,'"'))}else console.warn('Could not find instance with id "'.concat(e,'"'))},renderer:n,setTraceUpdatesEnabled:function(e){},setTrackedPath:function(e){},startProfiling:function(){},stopProfiling:function(){},storeAsGlobal:function(e,t,n){var r=T(e);if(null!==r){var i=de(r,t),o="$reactTemp".concat(n);window[o]=i,console.log(o),console.log(i)}},updateComponentFilters:function(e){}}}(e,t,r,n)),null!=i&&e.rendererInterfaces.set(t,i)),null!=i?e.emit("renderer-attached",{id:t,renderer:r,rendererInterface:i}):e.emit("unsupported-renderer-version",t)};e.renderers.forEach((function(e,t){i(t,e)})),r.push(e.sub("renderer",(function(e){var t=e.id,n=e.renderer;i(t,n)}))),e.emit("react-devtools",t),e.reactDevtoolsAgent=t;var o=function(){r.forEach((function(e){return e()})),e.rendererInterfaces.forEach((function(e){e.cleanup()})),e.reactDevtoolsAgent=null};t.addListener("shutdown",o),r.push((function(){t.removeListener("shutdown",o)}))}($t,e,window),null!=f||null!=$t.resolveRNStyle)Wt(v,e,f||$t.resolveRNStyle,i||$t.nativeStyleEditorValidAttributes||null);else{var t,n,r=function(){null!==v&&Wt(v,e,t,n)};$t.hasOwnProperty("resolveRNStyle")||Object.defineProperty($t,"resolveRNStyle",{enumerable:!1,get:function(){return t},set:function(e){t=e,r()}}),$t.hasOwnProperty("nativeStyleEditorValidAttributes")||Object.defineProperty($t,"nativeStyleEditorValidAttributes",{enumerable:!1,get:function(){return n},set:function(e){n=e,r()}})}}}else _()}function _(){null===h&&(h=setTimeout((function(){return Kt(e)}),2e3))}}}])},6099:(e,t,n)=>{"use strict"; -/** @license React v16.13.1 - * react.production.min.js + */ +/** @license React v0.18.0 + * scheduler.production.min.js * * Copyright (c) Facebook, Inc. and its affiliates. * * This source code is licensed under the MIT license found in the * LICENSE file in the root directory of this source tree. - */var r=n(9381),i="function"==typeof Symbol&&Symbol.for,o=i?Symbol.for("react.element"):60103,u=i?Symbol.for("react.portal"):60106,a=i?Symbol.for("react.fragment"):60107,l=i?Symbol.for("react.strict_mode"):60108,s=i?Symbol.for("react.profiler"):60114,c=i?Symbol.for("react.provider"):60109,f=i?Symbol.for("react.context"):60110,d=i?Symbol.for("react.forward_ref"):60112,p=i?Symbol.for("react.suspense"):60113,h=i?Symbol.for("react.memo"):60115,v=i?Symbol.for("react.lazy"):60116,m="function"==typeof Symbol&&Symbol.iterator;function g(e){for(var t="https://reactjs.org/docs/error-decoder.html?invariant="+e,n=1;nO.length&&O.push(e)}function N(e,t,n){return null==e?0:function e(t,n,r,i){var a=typeof t;"undefined"!==a&&"boolean"!==a||(t=null);var l=!1;if(null===t)l=!0;else switch(a){case"string":case"number":l=!0;break;case"object":switch(t.$$typeof){case o:case u:l=!0}}if(l)return r(i,t,""===n?"."+M(t,0):n),1;if(l=0,n=""===n?".":n+":",Array.isArray(t))for(var s=0;s{"use strict";e.exports=n(6099)},3390:(e,t,n)=>{"use strict";const r=n(834),i=n(6458);e.exports=r(()=>{i(()=>{process.stderr.write("[?25h")},{alwaysLast:!0})})},706:(e,t)=>{"use strict"; -/** @license React v0.18.0 - * scheduler.production.min.js + */ +/** @license React v0.24.0 + * react-reconciler.production.min.js + * + * Copyright (c) Facebook, Inc. and its affiliates. + * + * This source code is licensed under the MIT license found in the + * LICENSE file in the root directory of this source tree. + */ +/** @license React v16.13.1 + * react.production.min.js * * Copyright (c) Facebook, Inc. and its affiliates. * * This source code is licensed under the MIT license found in the * LICENSE file in the root directory of this source tree. - */var n,r,i,o,u;if(Object.defineProperty(t,"__esModule",{value:!0}),"undefined"==typeof window||"function"!=typeof MessageChannel){var a=null,l=null,s=function(){if(null!==a)try{var e=t.unstable_now();a(!0,e),a=null}catch(e){throw setTimeout(s,0),e}},c=Date.now();t.unstable_now=function(){return Date.now()-c},n=function(e){null!==a?setTimeout(n,0,e):(a=e,setTimeout(s,0))},r=function(e,t){l=setTimeout(e,t)},i=function(){clearTimeout(l)},o=function(){return!1},u=t.unstable_forceFrameRate=function(){}}else{var f=window.performance,d=window.Date,p=window.setTimeout,h=window.clearTimeout;if("undefined"!=typeof console){var v=window.cancelAnimationFrame;"function"!=typeof window.requestAnimationFrame&&console.error("This browser doesn't support requestAnimationFrame. Make sure that you load a polyfill in older browsers. https://fb.me/react-polyfills"),"function"!=typeof v&&console.error("This browser doesn't support cancelAnimationFrame. Make sure that you load a polyfill in older browsers. https://fb.me/react-polyfills")}if("object"==typeof f&&"function"==typeof f.now)t.unstable_now=function(){return f.now()};else{var m=d.now();t.unstable_now=function(){return d.now()-m}}var g=!1,y=null,_=-1,b=5,w=0;o=function(){return t.unstable_now()>=w},u=function(){},t.unstable_forceFrameRate=function(e){0>e||125T(u,n))void 0!==l&&0>T(l,u)?(e[r]=l,e[a]=n,r=a):(e[r]=u,e[o]=n,r=o);else{if(!(void 0!==l&&0>T(l,n)))break e;e[r]=l,e[a]=n,r=a}}}return t}return null}function T(e,t){var n=e.sortIndex-t.sortIndex;return 0!==n?n:e.id-t.id}var x=[],A=[],O=1,P=null,I=3,N=!1,M=!1,R=!1;function F(e){for(var t=C(A);null!==t;){if(null===t.callback)k(A);else{if(!(t.startTime<=e))break;k(A),t.sortIndex=t.expirationTime,S(x,t)}t=C(A)}}function L(e){if(R=!1,F(e),!M)if(null!==C(x))M=!0,n(B);else{var t=C(A);null!==t&&r(L,t.startTime-e)}}function B(e,n){M=!1,R&&(R=!1,i()),N=!0;var u=I;try{for(F(n),P=C(x);null!==P&&(!(P.expirationTime>n)||e&&!o());){var a=P.callback;if(null!==a){P.callback=null,I=P.priorityLevel;var l=a(P.expirationTime<=n);n=t.unstable_now(),"function"==typeof l?P.callback=l:P===C(x)&&k(x),F(n)}else k(x);P=C(x)}if(null!==P)var s=!0;else{var c=C(A);null!==c&&r(L,c.startTime-n),s=!1}return s}finally{P=null,I=u,N=!1}}function j(e){switch(e){case 1:return-1;case 2:return 250;case 5:return 1073741823;case 4:return 1e4;default:return 5e3}}var U=u;t.unstable_ImmediatePriority=1,t.unstable_UserBlockingPriority=2,t.unstable_NormalPriority=3,t.unstable_IdlePriority=5,t.unstable_LowPriority=4,t.unstable_runWithPriority=function(e,t){switch(e){case 1:case 2:case 3:case 4:case 5:break;default:e=3}var n=I;I=e;try{return t()}finally{I=n}},t.unstable_next=function(e){switch(I){case 1:case 2:case 3:var t=3;break;default:t=I}var n=I;I=t;try{return e()}finally{I=n}},t.unstable_scheduleCallback=function(e,o,u){var a=t.unstable_now();if("object"==typeof u&&null!==u){var l=u.delay;l="number"==typeof l&&0a?(e.sortIndex=l,S(A,e),null===C(x)&&e===C(A)&&(R?i():R=!0,r(L,l-a))):(e.sortIndex=u,S(x,e),M||N||(M=!0,n(B))),e},t.unstable_cancelCallback=function(e){e.callback=null},t.unstable_wrapCallback=function(e){var t=I;return function(){var n=I;I=t;try{return e.apply(this,arguments)}finally{I=n}}},t.unstable_getCurrentPriorityLevel=function(){return I},t.unstable_shouldYield=function(){var e=t.unstable_now();F(e);var n=C(x);return n!==P&&null!==P&&null!==n&&null!==n.callback&&n.startTime<=e&&n.expirationTime{"use strict";e.exports=n(706)},6458:(e,t,n)=>{var r,i=n(2357),o=n(8082),u=n(8614);function a(){c&&(c=!1,o.forEach((function(e){try{process.removeListener(e,s[e])}catch(e){}})),process.emit=h,process.reallyExit=d,r.count-=1)}function l(e,t,n){r.emitted[e]||(r.emitted[e]=!0,r.emit(e,t,n))}"function"!=typeof u&&(u=u.EventEmitter),process.__signal_exit_emitter__?r=process.__signal_exit_emitter__:((r=process.__signal_exit_emitter__=new u).count=0,r.emitted={}),r.infinite||(r.setMaxListeners(1/0),r.infinite=!0),e.exports=function(e,t){i.equal(typeof e,"function","a callback must be provided for exit handler"),!1===c&&f();var n="exit";t&&t.alwaysLast&&(n="afterexit");return r.on(n,e),function(){r.removeListener(n,e),0===r.listeners("exit").length&&0===r.listeners("afterexit").length&&a()}},e.exports.unload=a;var s={};o.forEach((function(e){s[e]=function(){process.listeners(e).length===r.count&&(a(),l("exit",null,e),l("afterexit",null,e),process.kill(process.pid,e))}})),e.exports.signals=function(){return o},e.exports.load=f;var c=!1;function f(){c||(c=!0,r.count+=1,o=o.filter((function(e){try{return process.on(e,s[e]),!0}catch(e){return!1}})),process.emit=v,process.reallyExit=p)}var d=process.reallyExit;function p(e){process.exitCode=e||0,l("exit",process.exitCode,null),l("afterexit",process.exitCode,null),d.call(process,process.exitCode)}var h=process.emit;function v(e,t){if("exit"===e){void 0!==t&&(process.exitCode=t);var n=h.apply(this,arguments);return l("exit",process.exitCode,null),l("afterexit",process.exitCode,null),n}return h.apply(this,arguments)}},8082:e=>{e.exports=["SIGABRT","SIGALRM","SIGHUP","SIGINT","SIGTERM"],"win32"!==process.platform&&e.exports.push("SIGVTALRM","SIGXCPU","SIGXFSZ","SIGUSR2","SIGTRAP","SIGSYS","SIGQUIT","SIGIOT"),"linux"===process.platform&&e.exports.push("SIGIO","SIGPOLL","SIGPWR","SIGSTKFLT","SIGUNUSED")},1566:(e,t,n)=>{"use strict";const r=n(7347),i=n(409),o=n(8483),u=["","›"],a=e=>`${u[0]}[${e}m`,l=(e,t,n)=>{let r=[];e=[...e];for(let n of e){const i=n;n.match(";")&&(n=n.split(";")[0][0]+"0");const u=o.codes.get(parseInt(n,10));if(u){const n=e.indexOf(u.toString());n>=0?e.splice(n,1):r.push(a(t?u:i))}else{if(t){r.push(a(0));break}r.push(a(i))}}if(t&&(r=r.filter((e,t)=>r.indexOf(e)===t),void 0!==n)){const e=a(o.codes.get(parseInt(n,10)));r=r.reduce((t,n)=>n===e?[n,...t]:[...t,n],[])}return r.join("")};e.exports=(e,t,n)=>{const o=[...e.normalize()],a=[];n="number"==typeof n?n:o.length;let s,c=!1,f=0,d="";for(const[p,h]of o.entries()){let o=!1;if(u.includes(h)){const t=/\d[^m]*/.exec(e.slice(p,p+18));s=t&&t.length>0?t[0]:void 0,ft&&f<=n)d+=h;else if(f!==t||c||void 0===s){if(f>=n){d+=l(a,!0,s);break}}else d=l(a)}return d}},9796:(e,t,n)=>{"use strict";const r=n(8759),i=[].concat(n(2282).builtinModules,"bootstrap_node","node").map(e=>new RegExp(`(?:\\(${e}\\.js:\\d+:\\d+\\)$|^\\s*at ${e}\\.js:\\d+:\\d+$)`));i.push(/\(internal\/[^:]+:\d+:\d+\)$/,/\s*at internal\/[^:]+:\d+:\d+$/,/\/\.node-spawn-wrap-\w+-\w+\/node:\d+:\d+\)?$/);class o{constructor(e){"internals"in(e={ignoredPackages:[],...e})==!1&&(e.internals=o.nodeInternals()),"cwd"in e==!1&&(e.cwd=process.cwd()),this._cwd=e.cwd.replace(/\\/g,"/"),this._internals=[].concat(e.internals,function(e){if(0===e.length)return[];const t=e.map(e=>r(e));return new RegExp(`[/\\\\]node_modules[/\\\\](?:${t.join("|")})[/\\\\][^:]+:\\d+:\\d+`)}(e.ignoredPackages)),this._wrapCallSite=e.wrapCallSite||!1}static nodeInternals(){return[...i]}clean(e,t=0){t=" ".repeat(t),Array.isArray(e)||(e=e.split("\n")),!/^\s*at /.test(e[0])&&/^\s*at /.test(e[1])&&(e=e.slice(1));let n=!1,r=null;const i=[];return e.forEach(e=>{if(e=e.replace(/\\/g,"/"),this._internals.some(t=>t.test(e)))return;const t=/^\s*at /.test(e);n?e=e.trimEnd().replace(/^(\s+)at /,"$1"):(e=e.trim(),t&&(e=e.slice(3))),(e=e.replace(this._cwd+"/",""))&&(t?(r&&(i.push(r),r=null),i.push(e)):(n=!0,r=e))}),i.map(e=>`${t}${e}\n`).join("")}captureString(e,t=this.captureString){"function"==typeof e&&(t=e,e=1/0);const{stackTraceLimit:n}=Error;e&&(Error.stackTraceLimit=e);const r={};Error.captureStackTrace(r,t);const{stack:i}=r;return Error.stackTraceLimit=n,this.clean(i)}capture(e,t=this.capture){"function"==typeof e&&(t=e,e=1/0);const{prepareStackTrace:n,stackTraceLimit:r}=Error;Error.prepareStackTrace=(e,t)=>this._wrapCallSite?t.map(this._wrapCallSite):t,e&&(Error.stackTraceLimit=e);const i={};Error.captureStackTrace(i,t);const{stack:o}=i;return Object.assign(Error,{prepareStackTrace:n,stackTraceLimit:r}),o}at(e=this.at){const[t]=this.capture(1,e);if(!t)return{};const n={line:t.getLineNumber(),column:t.getColumnNumber()};let r;u(n,t.getFileName(),this._cwd),t.isConstructor()&&(n.constructor=!0),t.isEval()&&(n.evalOrigin=t.getEvalOrigin()),t.isNative()&&(n.native=!0);try{r=t.getTypeName()}catch(e){}r&&"Object"!==r&&"[object Object]"!==r&&(n.type=r);const i=t.getFunctionName();i&&(n.function=i);const o=t.getMethodName();return o&&i!==o&&(n.method=o),n}parseLine(e){const t=e&&e.match(a);if(!t)return null;const n="new"===t[1];let r=t[2];const i=t[3],o=t[4],s=Number(t[5]),c=Number(t[6]);let f=t[7];const d=t[8],p=t[9],h="native"===t[10],v=")"===t[11];let m;const g={};if(d&&(g.line=Number(d)),p&&(g.column=Number(p)),v&&f){let e=0;for(let t=f.length-1;t>0;t--)if(")"===f.charAt(t))e++;else if("("===f.charAt(t)&&" "===f.charAt(t-1)&&(e--,-1===e&&" "===f.charAt(t-1))){const e=f.slice(0,t-1),n=f.slice(t+1);f=n,r+=" ("+e;break}}if(r){const e=r.match(l);e&&(r=e[1],m=e[2])}return u(g,f,this._cwd),n&&(g.constructor=!0),i&&(g.evalOrigin=i,g.evalLine=s,g.evalColumn=c,g.evalFile=o&&o.replace(/\\/g,"/")),h&&(g.native=!0),r&&(g.function=r),m&&r!==m&&(g.method=m),g}}function u(e,t,n){t&&((t=t.replace(/\\/g,"/")).startsWith(n+"/")&&(t=t.slice(n.length+1)),e.file=t)}const a=new RegExp("^(?:\\s*at )?(?:(new) )?(?:(.*?) \\()?(?:eval at ([^ ]+) \\((.+?):(\\d+):(\\d+)\\), )?(?:(.+?):(\\d+):(\\d+)|(native))(\\)?)$"),l=/^(.*?) \[as (.*?)\]$/;e.exports=o},3262:(e,t,n)=>{"use strict";const r=n(7402),i=n(5640),o=e=>r(e).replace(i()," ").length;e.exports=o,e.exports.default=o},5043:(e,t,n)=>{"use strict";const r=n(7915),i=n(7347),o=n(1013),u=e=>{if("string"!=typeof(e=e.replace(o()," "))||0===e.length)return 0;e=r(e);let t=0;for(let n=0;n=127&&r<=159||(r>=768&&r<=879||(r>65535&&n++,t+=i(r)?2:1))}return t};e.exports=u,e.exports.default=u},7402:(e,t,n)=>{"use strict";const r=n(5378),i=e=>"string"==typeof e?e.replace(r(),""):e;e.exports=i,e.exports.default=i},7915:(e,t,n)=>{"use strict";const r=n(1337);e.exports=e=>"string"==typeof e?e.replace(r(),""):e},9428:(e,t,n)=>{"use strict";const r=n(2087),i=n(3867),o=n(2918),{env:u}=process;let a;function l(e){return 0!==e&&{level:e,hasBasic:!0,has256:e>=2,has16m:e>=3}}function s(e,t){if(0===a)return 0;if(o("color=16m")||o("color=full")||o("color=truecolor"))return 3;if(o("color=256"))return 2;if(e&&!t&&void 0===a)return 0;const n=a||0;if("dumb"===u.TERM)return n;if("win32"===process.platform){const e=r.release().split(".");return Number(e[0])>=10&&Number(e[2])>=10586?Number(e[2])>=14931?3:2:1}if("CI"in u)return["TRAVIS","CIRCLECI","APPVEYOR","GITLAB_CI"].some(e=>e in u)||"codeship"===u.CI_NAME?1:n;if("TEAMCITY_VERSION"in u)return/^(9\.(0*[1-9]\d*)\.|\d{2,}\.)/.test(u.TEAMCITY_VERSION)?1:0;if("GITHUB_ACTIONS"in u)return 1;if("truecolor"===u.COLORTERM)return 3;if("TERM_PROGRAM"in u){const e=parseInt((u.TERM_PROGRAM_VERSION||"").split(".")[0],10);switch(u.TERM_PROGRAM){case"iTerm.app":return e>=3?3:2;case"Apple_Terminal":return 2}}return/-256(color)?$/i.test(u.TERM)?2:/^screen|^xterm|^vt100|^vt220|^rxvt|color|ansi|cygwin|linux/i.test(u.TERM)||"COLORTERM"in u?1:n}o("no-color")||o("no-colors")||o("color=false")||o("color=never")?a=0:(o("color")||o("colors")||o("color=true")||o("color=always"))&&(a=1),"FORCE_COLOR"in u&&(a="true"===u.FORCE_COLOR?1:"false"===u.FORCE_COLOR?0:0===u.FORCE_COLOR.length?1:Math.min(parseInt(u.FORCE_COLOR,10),3)),e.exports={supportsColor:function(e){return l(s(e,e&&e.isTTY))},stdout:l(s(!0,i.isatty(1))),stderr:l(s(!0,i.isatty(2)))}},8949:(e,t,n)=>{"use strict";const r=n(5043),i=e=>{let t=0;for(const n of e.split("\n"))t=Math.max(t,r(n));return t};e.exports=i,e.exports.default=i},4332:(e,t,n)=>{"use strict";const r=n(5043),i=n(7915),o=n(8483),u=new Set(["","›"]),a=e=>`${u.values().next().value}[${e}m`,l=(e,t,n)=>{const o=[...t];let a=!1,l=r(i(e[e.length-1]));for(const[t,i]of o.entries()){const s=r(i);if(l+s<=n?e[e.length-1]+=i:(e.push(i),l=0),u.has(i))a=!0;else if(a&&"m"===i){a=!1;continue}a||(l+=s,l===n&&t0&&e.length>1&&(e[e.length-2]+=e.pop())},s=e=>{const t=e.split(" ");let n=t.length;for(;n>0&&!(r(t[n-1])>0);)n--;return n===t.length?e:t.slice(0,n).join(" ")+t.slice(n).join("")},c=(e,t,n={})=>{if(!1!==n.trim&&""===e.trim())return"";let i,c="",f="";const d=(e=>e.split(" ").map(e=>r(e)))(e);let p=[""];for(const[i,o]of e.split(" ").entries()){!1!==n.trim&&(p[p.length-1]=p[p.length-1].trimLeft());let e=r(p[p.length-1]);if(0!==i&&(e>=t&&(!1===n.wordWrap||!1===n.trim)&&(p.push(""),e=0),(e>0||!1===n.trim)&&(p[p.length-1]+=" ",e++)),n.hard&&d[i]>t){const n=t-e,r=1+Math.floor((d[i]-n-1)/t);Math.floor((d[i]-1)/t)t&&e>0&&d[i]>0){if(!1===n.wordWrap&&et&&!1===n.wordWrap?l(p,o,t):p[p.length-1]+=o}}!1!==n.trim&&(p=p.map(s)),c=p.join("\n");for(const[e,t]of[...c].entries()){if(f+=t,u.has(t)){const t=parseFloat(/\d[^m]*/.exec(c.slice(e,e+4)));i=39===t?null:t}const n=o.codes.get(Number(i));i&&n&&("\n"===c[e+1]?f+=a(n):"\n"===t&&(f+=a(i)))}return f};e.exports=(e,t,n)=>String(e).normalize().replace(/\r\n/g,"\n").split("\n").map(e=>c(e,t,n)).join("\n")},3354:function(module,exports){var __WEBPACK_AMD_DEFINE_ARRAY__,__WEBPACK_AMD_DEFINE_RESULT__,wrapper;wrapper=function(Module,cb){var Module;"function"==typeof Module&&(cb=Module,Module={}),Module.onRuntimeInitialized=function(e,t){return function(){e&&e.apply(this,arguments);try{Module.ccall("nbind_init")}catch(e){return void t(e)}t(null,{bind:Module._nbind_value,reflect:Module.NBind.reflect,queryType:Module.NBind.queryType,toggleLightGC:Module.toggleLightGC,lib:Module})}}(Module.onRuntimeInitialized,cb),Module||(Module=(void 0!==Module?Module:null)||{});var moduleOverrides={};for(var key in Module)Module.hasOwnProperty(key)&&(moduleOverrides[key]=Module[key]);var ENVIRONMENT_IS_WEB=!1,ENVIRONMENT_IS_WORKER=!1,ENVIRONMENT_IS_NODE=!1,ENVIRONMENT_IS_SHELL=!1,nodeFS,nodePath;if(Module.ENVIRONMENT)if("WEB"===Module.ENVIRONMENT)ENVIRONMENT_IS_WEB=!0;else if("WORKER"===Module.ENVIRONMENT)ENVIRONMENT_IS_WORKER=!0;else if("NODE"===Module.ENVIRONMENT)ENVIRONMENT_IS_NODE=!0;else{if("SHELL"!==Module.ENVIRONMENT)throw new Error("The provided Module['ENVIRONMENT'] value is not valid. It must be one of: WEB|WORKER|NODE|SHELL.");ENVIRONMENT_IS_SHELL=!0}else ENVIRONMENT_IS_WEB="object"==typeof window,ENVIRONMENT_IS_WORKER="function"==typeof importScripts,ENVIRONMENT_IS_NODE="object"==typeof process&&!ENVIRONMENT_IS_WEB&&!ENVIRONMENT_IS_WORKER,ENVIRONMENT_IS_SHELL=!ENVIRONMENT_IS_WEB&&!ENVIRONMENT_IS_NODE&&!ENVIRONMENT_IS_WORKER;if(ENVIRONMENT_IS_NODE)Module.print||(Module.print=console.log),Module.printErr||(Module.printErr=console.warn),Module.read=function(e,t){nodeFS||(nodeFS={}("")),nodePath||(nodePath={}("")),e=nodePath.normalize(e);var n=nodeFS.readFileSync(e);return t?n:n.toString()},Module.readBinary=function(e){var t=Module.read(e,!0);return t.buffer||(t=new Uint8Array(t)),assert(t.buffer),t},Module.load=function(e){globalEval(read(e))},Module.thisProgram||(process.argv.length>1?Module.thisProgram=process.argv[1].replace(/\\/g,"/"):Module.thisProgram="unknown-program"),Module.arguments=process.argv.slice(2),module.exports=Module,Module.inspect=function(){return"[Emscripten Module object]"};else if(ENVIRONMENT_IS_SHELL)Module.print||(Module.print=print),"undefined"!=typeof printErr&&(Module.printErr=printErr),"undefined"!=typeof read?Module.read=read:Module.read=function(){throw"no read() available"},Module.readBinary=function(e){if("function"==typeof readbuffer)return new Uint8Array(readbuffer(e));var t=read(e,"binary");return assert("object"==typeof t),t},"undefined"!=typeof scriptArgs?Module.arguments=scriptArgs:void 0!==arguments&&(Module.arguments=arguments),"function"==typeof quit&&(Module.quit=function(e,t){quit(e)});else{if(!ENVIRONMENT_IS_WEB&&!ENVIRONMENT_IS_WORKER)throw"Unknown runtime environment. Where are we?";if(Module.read=function(e){var t=new XMLHttpRequest;return t.open("GET",e,!1),t.send(null),t.responseText},ENVIRONMENT_IS_WORKER&&(Module.readBinary=function(e){var t=new XMLHttpRequest;return t.open("GET",e,!1),t.responseType="arraybuffer",t.send(null),new Uint8Array(t.response)}),Module.readAsync=function(e,t,n){var r=new XMLHttpRequest;r.open("GET",e,!0),r.responseType="arraybuffer",r.onload=function(){200==r.status||0==r.status&&r.response?t(r.response):n()},r.onerror=n,r.send(null)},void 0!==arguments&&(Module.arguments=arguments),"undefined"!=typeof console)Module.print||(Module.print=function(e){console.log(e)}),Module.printErr||(Module.printErr=function(e){console.warn(e)});else{var TRY_USE_DUMP=!1;Module.print||(Module.print=TRY_USE_DUMP&&"undefined"!=typeof dump?function(e){dump(e)}:function(e){})}ENVIRONMENT_IS_WORKER&&(Module.load=importScripts),void 0===Module.setWindowTitle&&(Module.setWindowTitle=function(e){document.title=e})}function globalEval(e){eval.call(null,e)}for(var key in!Module.load&&Module.read&&(Module.load=function(e){globalEval(Module.read(e))}),Module.print||(Module.print=function(){}),Module.printErr||(Module.printErr=Module.print),Module.arguments||(Module.arguments=[]),Module.thisProgram||(Module.thisProgram="./this.program"),Module.quit||(Module.quit=function(e,t){throw t}),Module.print=Module.print,Module.printErr=Module.printErr,Module.preRun=[],Module.postRun=[],moduleOverrides)moduleOverrides.hasOwnProperty(key)&&(Module[key]=moduleOverrides[key]);moduleOverrides=void 0;var Runtime={setTempRet0:function(e){return tempRet0=e,e},getTempRet0:function(){return tempRet0},stackSave:function(){return STACKTOP},stackRestore:function(e){STACKTOP=e},getNativeTypeSize:function(e){switch(e){case"i1":case"i8":return 1;case"i16":return 2;case"i32":return 4;case"i64":return 8;case"float":return 4;case"double":return 8;default:if("*"===e[e.length-1])return Runtime.QUANTUM_SIZE;if("i"===e[0]){var t=parseInt(e.substr(1));return assert(t%8==0),t/8}return 0}},getNativeFieldSize:function(e){return Math.max(Runtime.getNativeTypeSize(e),Runtime.QUANTUM_SIZE)},STACK_ALIGN:16,prepVararg:function(e,t){return"double"===t||"i64"===t?7&e&&(assert(4==(7&e)),e+=4):assert(0==(3&e)),e},getAlignSize:function(e,t,n){return n||"i64"!=e&&"double"!=e?e?Math.min(t||(e?Runtime.getNativeFieldSize(e):0),Runtime.QUANTUM_SIZE):Math.min(t,8):8},dynCall:function(e,t,n){return n&&n.length?Module["dynCall_"+e].apply(null,[t].concat(n)):Module["dynCall_"+e].call(null,t)},functionPointers:[],addFunction:function(e){for(var t=0;t>2],n=-16&(t+e+15|0);return HEAP32[DYNAMICTOP_PTR>>2]=n,n>=TOTAL_MEMORY&&!enlargeMemory()?(HEAP32[DYNAMICTOP_PTR>>2]=t,0):t},alignMemory:function(e,t){return e=Math.ceil(e/(t||16))*(t||16)},makeBigInt:function(e,t,n){return n?+(e>>>0)+4294967296*+(t>>>0):+(e>>>0)+4294967296*+(0|t)},GLOBAL_BASE:8,QUANTUM_SIZE:4,__dummy__:0};Module.Runtime=Runtime;var ABORT=0,EXITSTATUS=0,cwrap,ccall;function assert(e,t){e||abort("Assertion failed: "+t)}function getCFunc(ident){var func=Module["_"+ident];if(!func)try{func=eval("_"+ident)}catch(e){}return assert(func,"Cannot call unknown function "+ident+" (perhaps LLVM optimizations or closure removed it?)"),func}function setValue(e,t,n,r){switch("*"===(n=n||"i8").charAt(n.length-1)&&(n="i32"),n){case"i1":case"i8":HEAP8[e>>0]=t;break;case"i16":HEAP16[e>>1]=t;break;case"i32":HEAP32[e>>2]=t;break;case"i64":tempI64=[t>>>0,(tempDouble=t,+Math_abs(tempDouble)>=1?tempDouble>0?(0|Math_min(+Math_floor(tempDouble/4294967296),4294967295))>>>0:~~+Math_ceil((tempDouble-+(~~tempDouble>>>0))/4294967296)>>>0:0)],HEAP32[e>>2]=tempI64[0],HEAP32[e+4>>2]=tempI64[1];break;case"float":HEAPF32[e>>2]=t;break;case"double":HEAPF64[e>>3]=t;break;default:abort("invalid type for setValue: "+n)}}function getValue(e,t,n){switch("*"===(t=t||"i8").charAt(t.length-1)&&(t="i32"),t){case"i1":case"i8":return HEAP8[e>>0];case"i16":return HEAP16[e>>1];case"i32":case"i64":return HEAP32[e>>2];case"float":return HEAPF32[e>>2];case"double":return HEAPF64[e>>3];default:abort("invalid type for setValue: "+t)}return null}!function(){var JSfuncs={stackSave:function(){Runtime.stackSave()},stackRestore:function(){Runtime.stackRestore()},arrayToC:function(e){var t=Runtime.stackAlloc(e.length);return writeArrayToMemory(e,t),t},stringToC:function(e){var t=0;if(null!=e&&0!==e){var n=1+(e.length<<2);stringToUTF8(e,t=Runtime.stackAlloc(n),n)}return t}},toC={string:JSfuncs.stringToC,array:JSfuncs.arrayToC};ccall=function(e,t,n,r,i){var o=getCFunc(e),u=[],a=0;if(r)for(var l=0;l>2]=0;for(l=u+o;r>0]=0;return u}if("i8"===a)return e.subarray||e.slice?HEAPU8.set(e,u):HEAPU8.set(new Uint8Array(e),u),u;for(var s,c,f,d=0;d>0],(0!=n||t)&&(i++,!t||i!=t););t||(t=i);var o="";if(r<128){for(var u;t>0;)u=String.fromCharCode.apply(String,HEAPU8.subarray(e,e+Math.min(t,1024))),o=o?o+u:u,e+=1024,t-=1024;return o}return Module.UTF8ToString(e)}function AsciiToString(e){for(var t="";;){var n=HEAP8[e++>>0];if(!n)return t;t+=String.fromCharCode(n)}}function stringToAscii(e,t){return writeAsciiToMemory(e,t,!1)}Module.ALLOC_NORMAL=ALLOC_NORMAL,Module.ALLOC_STACK=ALLOC_STACK,Module.ALLOC_STATIC=ALLOC_STATIC,Module.ALLOC_DYNAMIC=ALLOC_DYNAMIC,Module.ALLOC_NONE=ALLOC_NONE,Module.allocate=allocate,Module.getMemory=getMemory,Module.Pointer_stringify=Pointer_stringify,Module.AsciiToString=AsciiToString,Module.stringToAscii=stringToAscii;var UTF8Decoder="undefined"!=typeof TextDecoder?new TextDecoder("utf8"):void 0;function UTF8ArrayToString(e,t){for(var n=t;e[n];)++n;if(n-t>16&&e.subarray&&UTF8Decoder)return UTF8Decoder.decode(e.subarray(t,n));for(var r,i,o,u,a,l="";;){if(!(r=e[t++]))return l;if(128&r)if(i=63&e[t++],192!=(224&r))if(o=63&e[t++],224==(240&r)?r=(15&r)<<12|i<<6|o:(u=63&e[t++],240==(248&r)?r=(7&r)<<18|i<<12|o<<6|u:(a=63&e[t++],r=248==(252&r)?(3&r)<<24|i<<18|o<<12|u<<6|a:(1&r)<<30|i<<24|o<<18|u<<12|a<<6|63&e[t++])),r<65536)l+=String.fromCharCode(r);else{var s=r-65536;l+=String.fromCharCode(55296|s>>10,56320|1023&s)}else l+=String.fromCharCode((31&r)<<6|i);else l+=String.fromCharCode(r)}}function UTF8ToString(e){return UTF8ArrayToString(HEAPU8,e)}function stringToUTF8Array(e,t,n,r){if(!(r>0))return 0;for(var i=n,o=n+r-1,u=0;u=55296&&a<=57343&&(a=65536+((1023&a)<<10)|1023&e.charCodeAt(++u)),a<=127){if(n>=o)break;t[n++]=a}else if(a<=2047){if(n+1>=o)break;t[n++]=192|a>>6,t[n++]=128|63&a}else if(a<=65535){if(n+2>=o)break;t[n++]=224|a>>12,t[n++]=128|a>>6&63,t[n++]=128|63&a}else if(a<=2097151){if(n+3>=o)break;t[n++]=240|a>>18,t[n++]=128|a>>12&63,t[n++]=128|a>>6&63,t[n++]=128|63&a}else if(a<=67108863){if(n+4>=o)break;t[n++]=248|a>>24,t[n++]=128|a>>18&63,t[n++]=128|a>>12&63,t[n++]=128|a>>6&63,t[n++]=128|63&a}else{if(n+5>=o)break;t[n++]=252|a>>30,t[n++]=128|a>>24&63,t[n++]=128|a>>18&63,t[n++]=128|a>>12&63,t[n++]=128|a>>6&63,t[n++]=128|63&a}}return t[n]=0,n-i}function stringToUTF8(e,t,n){return stringToUTF8Array(e,HEAPU8,t,n)}function lengthBytesUTF8(e){for(var t=0,n=0;n=55296&&r<=57343&&(r=65536+((1023&r)<<10)|1023&e.charCodeAt(++n)),r<=127?++t:t+=r<=2047?2:r<=65535?3:r<=2097151?4:r<=67108863?5:6}return t}Module.UTF8ArrayToString=UTF8ArrayToString,Module.UTF8ToString=UTF8ToString,Module.stringToUTF8Array=stringToUTF8Array,Module.stringToUTF8=stringToUTF8,Module.lengthBytesUTF8=lengthBytesUTF8;var UTF16Decoder="undefined"!=typeof TextDecoder?new TextDecoder("utf-16le"):void 0,HEAP,buffer,HEAP8,HEAPU8,HEAP16,HEAPU16,HEAP32,HEAPU32,HEAPF32,HEAPF64,STATIC_BASE,STATICTOP,staticSealed,STACK_BASE,STACKTOP,STACK_MAX,DYNAMIC_BASE,DYNAMICTOP_PTR;function demangle(e){var t=Module.___cxa_demangle||Module.__cxa_demangle;if(t){try{var n=e.substr(1),r=lengthBytesUTF8(n)+1,i=_malloc(r);stringToUTF8(n,i,r);var o=_malloc(4),u=t(i,0,0,o);if(0===getValue(o,"i32")&&u)return Pointer_stringify(u)}catch(e){}finally{i&&_free(i),o&&_free(o),u&&_free(u)}return e}return Runtime.warnOnce("warning: build with -s DEMANGLE_SUPPORT=1 to link in libcxxabi demangling"),e}function demangleAll(e){return e.replace(/__Z[\w\d_]+/g,(function(e){var t=demangle(e);return e===t?e:e+" ["+t+"]"}))}function jsStackTrace(){var e=new Error;if(!e.stack){try{throw new Error(0)}catch(t){e=t}if(!e.stack)return"(no stack trace available)"}return e.stack.toString()}function stackTrace(){var e=jsStackTrace();return Module.extraStackTrace&&(e+="\n"+Module.extraStackTrace()),demangleAll(e)}function updateGlobalBufferViews(){Module.HEAP8=HEAP8=new Int8Array(buffer),Module.HEAP16=HEAP16=new Int16Array(buffer),Module.HEAP32=HEAP32=new Int32Array(buffer),Module.HEAPU8=HEAPU8=new Uint8Array(buffer),Module.HEAPU16=HEAPU16=new Uint16Array(buffer),Module.HEAPU32=HEAPU32=new Uint32Array(buffer),Module.HEAPF32=HEAPF32=new Float32Array(buffer),Module.HEAPF64=HEAPF64=new Float64Array(buffer)}function abortOnCannotGrowMemory(){abort("Cannot enlarge memory arrays. Either (1) compile with -s TOTAL_MEMORY=X with X higher than the current value "+TOTAL_MEMORY+", (2) compile with -s ALLOW_MEMORY_GROWTH=1 which allows increasing the size at runtime but prevents some optimizations, (3) set Module.TOTAL_MEMORY to a higher value before the program runs, or (4) if you want malloc to return NULL (0) instead of this abort, compile with -s ABORTING_MALLOC=0 ")}function enlargeMemory(){abortOnCannotGrowMemory()}Module.stackTrace=stackTrace,STATIC_BASE=STATICTOP=STACK_BASE=STACKTOP=STACK_MAX=DYNAMIC_BASE=DYNAMICTOP_PTR=0,staticSealed=!1;var TOTAL_STACK=Module.TOTAL_STACK||5242880,TOTAL_MEMORY=Module.TOTAL_MEMORY||134217728;function getTotalMemory(){return TOTAL_MEMORY}if(TOTAL_MEMORY0;){var t=e.shift();if("function"!=typeof t){var n=t.func;"number"==typeof n?void 0===t.arg?Module.dynCall_v(n):Module.dynCall_vi(n,t.arg):n(void 0===t.arg?null:t.arg)}else t()}}Module.HEAP=HEAP,Module.buffer=buffer,Module.HEAP8=HEAP8,Module.HEAP16=HEAP16,Module.HEAP32=HEAP32,Module.HEAPU8=HEAPU8,Module.HEAPU16=HEAPU16,Module.HEAPU32=HEAPU32,Module.HEAPF32=HEAPF32,Module.HEAPF64=HEAPF64;var __ATPRERUN__=[],__ATINIT__=[],__ATMAIN__=[],__ATEXIT__=[],__ATPOSTRUN__=[],runtimeInitialized=!1,runtimeExited=!1;function preRun(){if(Module.preRun)for("function"==typeof Module.preRun&&(Module.preRun=[Module.preRun]);Module.preRun.length;)addOnPreRun(Module.preRun.shift());callRuntimeCallbacks(__ATPRERUN__)}function ensureInitRuntime(){runtimeInitialized||(runtimeInitialized=!0,callRuntimeCallbacks(__ATINIT__))}function preMain(){callRuntimeCallbacks(__ATMAIN__)}function exitRuntime(){callRuntimeCallbacks(__ATEXIT__),runtimeExited=!0}function postRun(){if(Module.postRun)for("function"==typeof Module.postRun&&(Module.postRun=[Module.postRun]);Module.postRun.length;)addOnPostRun(Module.postRun.shift());callRuntimeCallbacks(__ATPOSTRUN__)}function addOnPreRun(e){__ATPRERUN__.unshift(e)}function addOnInit(e){__ATINIT__.unshift(e)}function addOnPreMain(e){__ATMAIN__.unshift(e)}function addOnExit(e){__ATEXIT__.unshift(e)}function addOnPostRun(e){__ATPOSTRUN__.unshift(e)}function intArrayFromString(e,t,n){var r=n>0?n:lengthBytesUTF8(e)+1,i=new Array(r),o=stringToUTF8Array(e,i,0,i.length);return t&&(i.length=o),i}function intArrayToString(e){for(var t=[],n=0;n255&&(r&=255),t.push(String.fromCharCode(r))}return t.join("")}function writeStringToMemory(e,t,n){var r,i;Runtime.warnOnce("writeStringToMemory is deprecated and should not be called! Use stringToUTF8() instead!"),n&&(i=t+lengthBytesUTF8(e),r=HEAP8[i]),stringToUTF8(e,t,1/0),n&&(HEAP8[i]=r)}function writeArrayToMemory(e,t){HEAP8.set(e,t)}function writeAsciiToMemory(e,t,n){for(var r=0;r>0]=e.charCodeAt(r);n||(HEAP8[t>>0]=0)}if(Module.addOnPreRun=addOnPreRun,Module.addOnInit=addOnInit,Module.addOnPreMain=addOnPreMain,Module.addOnExit=addOnExit,Module.addOnPostRun=addOnPostRun,Module.intArrayFromString=intArrayFromString,Module.intArrayToString=intArrayToString,Module.writeStringToMemory=writeStringToMemory,Module.writeArrayToMemory=writeArrayToMemory,Module.writeAsciiToMemory=writeAsciiToMemory,Math.imul&&-5===Math.imul(4294967295,5)||(Math.imul=function(e,t){var n=65535&e,r=65535&t;return n*r+((e>>>16)*r+n*(t>>>16)<<16)|0}),Math.imul=Math.imul,!Math.fround){var froundBuffer=new Float32Array(1);Math.fround=function(e){return froundBuffer[0]=e,froundBuffer[0]}}Math.fround=Math.fround,Math.clz32||(Math.clz32=function(e){e>>>=0;for(var t=0;t<32;t++)if(e&1<<31-t)return t;return 32}),Math.clz32=Math.clz32,Math.trunc||(Math.trunc=function(e){return e<0?Math.ceil(e):Math.floor(e)}),Math.trunc=Math.trunc;var Math_abs=Math.abs,Math_cos=Math.cos,Math_sin=Math.sin,Math_tan=Math.tan,Math_acos=Math.acos,Math_asin=Math.asin,Math_atan=Math.atan,Math_atan2=Math.atan2,Math_exp=Math.exp,Math_log=Math.log,Math_sqrt=Math.sqrt,Math_ceil=Math.ceil,Math_floor=Math.floor,Math_pow=Math.pow,Math_imul=Math.imul,Math_fround=Math.fround,Math_round=Math.round,Math_min=Math.min,Math_clz32=Math.clz32,Math_trunc=Math.trunc,runDependencies=0,runDependencyWatcher=null,dependenciesFulfilled=null;function getUniqueRunDependency(e){return e}function addRunDependency(e){runDependencies++,Module.monitorRunDependencies&&Module.monitorRunDependencies(runDependencies)}function removeRunDependency(e){if(runDependencies--,Module.monitorRunDependencies&&Module.monitorRunDependencies(runDependencies),0==runDependencies&&(null!==runDependencyWatcher&&(clearInterval(runDependencyWatcher),runDependencyWatcher=null),dependenciesFulfilled)){var t=dependenciesFulfilled;dependenciesFulfilled=null,t()}}Module.addRunDependency=addRunDependency,Module.removeRunDependency=removeRunDependency,Module.preloadedImages={},Module.preloadedAudios={};var ASM_CONSTS=[function(e,t,n,r,i,o,u,a){return _nbind.callbackSignatureList[e].apply(this,arguments)}];function _emscripten_asm_const_iiiiiiii(e,t,n,r,i,o,u,a){return ASM_CONSTS[e](t,n,r,i,o,u,a)}function _emscripten_asm_const_iiiii(e,t,n,r,i){return ASM_CONSTS[e](t,n,r,i)}function _emscripten_asm_const_iiidddddd(e,t,n,r,i,o,u,a,l){return ASM_CONSTS[e](t,n,r,i,o,u,a,l)}function _emscripten_asm_const_iiididi(e,t,n,r,i,o,u){return ASM_CONSTS[e](t,n,r,i,o,u)}function _emscripten_asm_const_iiii(e,t,n,r){return ASM_CONSTS[e](t,n,r)}function _emscripten_asm_const_iiiid(e,t,n,r,i){return ASM_CONSTS[e](t,n,r,i)}function _emscripten_asm_const_iiiiii(e,t,n,r,i,o){return ASM_CONSTS[e](t,n,r,i,o)}STATIC_BASE=Runtime.GLOBAL_BASE,STATICTOP=STATIC_BASE+12800,__ATINIT__.push({func:function(){__GLOBAL__sub_I_Yoga_cpp()}},{func:function(){__GLOBAL__sub_I_nbind_cc()}},{func:function(){__GLOBAL__sub_I_common_cc()}},{func:function(){__GLOBAL__sub_I_Binding_cc()}}),allocate([0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,192,127,0,0,192,127,0,0,192,127,0,0,192,127,3,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,3,0,0,0,0,0,192,127,3,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,192,127,0,0,192,127,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,192,127,0,0,0,0,0,0,0,0,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,192,127,0,0,192,127,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,255,0,0,128,191,0,0,128,191,0,0,192,127,0,0,0,0,0,0,0,0,0,0,128,63,1,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,3,0,0,0,1,0,0,0,2,0,0,0,0,0,0,0,190,12,0,0,200,12,0,0,208,12,0,0,216,12,0,0,230,12,0,0,242,12,0,0,1,0,0,0,3,0,0,0,0,0,0,0,2,0,0,0,0,0,192,127,3,0,0,0,180,45,0,0,181,45,0,0,182,45,0,0,181,45,0,0,182,45,0,0,0,0,0,0,0,0,0,0,1,0,0,0,2,0,0,0,3,0,0,0,1,0,0,0,4,0,0,0,183,45,0,0,181,45,0,0,181,45,0,0,181,45,0,0,181,45,0,0,181,45,0,0,181,45,0,0,184,45,0,0,185,45,0,0,181,45,0,0,181,45,0,0,182,45,0,0,186,45,0,0,185,45,0,0,148,4,0,0,3,0,0,0,187,45,0,0,164,4,0,0,188,45,0,0,2,0,0,0,189,45,0,0,164,4,0,0,188,45,0,0,185,45,0,0,164,4,0,0,185,45,0,0,164,4,0,0,188,45,0,0,181,45,0,0,182,45,0,0,181,45,0,0,0,0,0,0,0,0,0,0,1,0,0,0,5,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,183,45,0,0,182,45,0,0,181,45,0,0,190,45,0,0,190,45,0,0,182,45,0,0,182,45,0,0,185,45,0,0,181,45,0,0,185,45,0,0,182,45,0,0,181,45,0,0,185,45,0,0,182,45,0,0,185,45,0,0,48,5,0,0,3,0,0,0,56,5,0,0,1,0,0,0,189,45,0,0,185,45,0,0,164,4,0,0,76,5,0,0,2,0,0,0,191,45,0,0,186,45,0,0,182,45,0,0,185,45,0,0,192,45,0,0,185,45,0,0,182,45,0,0,186,45,0,0,185,45,0,0,76,5,0,0,76,5,0,0,136,5,0,0,182,45,0,0,181,45,0,0,2,0,0,0,190,45,0,0,136,5,0,0,56,19,0,0,156,5,0,0,2,0,0,0,184,45,0,0,0,0,0,0,0,0,0,0,1,0,0,0,8,0,0,0,9,0,0,0,1,0,0,0,10,0,0,0,204,5,0,0,181,45,0,0,181,45,0,0,2,0,0,0,180,45,0,0,204,5,0,0,2,0,0,0,195,45,0,0,236,5,0,0,97,19,0,0,198,45,0,0,211,45,0,0,212,45,0,0,213,45,0,0,214,45,0,0,215,45,0,0,188,45,0,0,182,45,0,0,216,45,0,0,217,45,0,0,218,45,0,0,219,45,0,0,192,45,0,0,181,45,0,0,0,0,0,0,185,45,0,0,110,19,0,0,186,45,0,0,115,19,0,0,221,45,0,0,120,19,0,0,148,4,0,0,132,19,0,0,96,6,0,0,145,19,0,0,222,45,0,0,164,19,0,0,223,45,0,0,173,19,0,0,0,0,0,0,3,0,0,0,104,6,0,0,1,0,0,0,187,45,0,0,0,0,0,0,0,0,0,0,1,0,0,0,11,0,0,0,12,0,0,0,1,0,0,0,13,0,0,0,185,45,0,0,224,45,0,0,164,6,0,0,188,45,0,0,172,6,0,0,180,6,0,0,2,0,0,0,188,6,0,0,7,0,0,0,224,45,0,0,7,0,0,0,164,6,0,0,1,0,0,0,213,45,0,0,185,45,0,0,224,45,0,0,172,6,0,0,185,45,0,0,224,45,0,0,164,6,0,0,185,45,0,0,224,45,0,0,211,45,0,0,211,45,0,0,222,45,0,0,211,45,0,0,224,45,0,0,222,45,0,0,211,45,0,0,224,45,0,0,172,6,0,0,222,45,0,0,211,45,0,0,224,45,0,0,188,45,0,0,222,45,0,0,211,45,0,0,40,7,0,0,188,45,0,0,2,0,0,0,224,45,0,0,185,45,0,0,188,45,0,0,188,45,0,0,188,45,0,0,188,45,0,0,222,45,0,0,224,45,0,0,148,4,0,0,185,45,0,0,148,4,0,0,148,4,0,0,148,4,0,0,148,4,0,0,148,4,0,0,185,45,0,0,164,6,0,0,148,4,0,0,0,0,0,0,0,0,0,0,1,0,0,0,14,0,0,0,15,0,0,0,1,0,0,0,16,0,0,0,148,7,0,0,2,0,0,0,225,45,0,0,183,45,0,0,188,45,0,0,168,7,0,0,5,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,2,0,0,0,234,45,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,148,45,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,28,9,0,0,5,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,0,0,0,2,0,0,0,242,45,0,0,0,4,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,10,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,67,111,117,108,100,32,110,111,116,32,97,108,108,111,99,97,116,101,32,109,101,109,111,114,121,32,102,111,114,32,110,111,100,101,0,67,97,110,110,111,116,32,114,101,115,101,116,32,97,32,110,111,100,101,32,119,104,105,99,104,32,115,116,105,108,108,32,104,97,115,32,99,104,105,108,100,114,101,110,32,97,116,116,97,99,104,101,100,0,67,97,110,110,111,116,32,114,101,115,101,116,32,97,32,110,111,100,101,32,115,116,105,108,108,32,97,116,116,97,99,104,101,100,32,116,111,32,97,32,112,97,114,101,110,116,0,67,111,117,108,100,32,110,111,116,32,97,108,108,111,99,97,116,101,32,109,101,109,111,114,121,32,102,111,114,32,99,111,110,102,105,103,0,67,97,110,110,111,116,32,115,101,116,32,109,101,97,115,117,114,101,32,102,117,110,99,116,105,111,110,58,32,78,111,100,101,115,32,119,105,116,104,32,109,101,97,115,117,114,101,32,102,117,110,99,116,105,111,110,115,32,99,97,110,110,111,116,32,104,97,118,101,32,99,104,105,108,100,114,101,110,46,0,67,104,105,108,100,32,97,108,114,101,97,100,121,32,104,97,115,32,97,32,112,97,114,101,110,116,44,32,105,116,32,109,117,115,116,32,98,101,32,114,101,109,111,118,101,100,32,102,105,114,115,116,46,0,67,97,110,110,111,116,32,97,100,100,32,99,104,105,108,100,58,32,78,111,100,101,115,32,119,105,116,104,32,109,101,97,115,117,114,101,32,102,117,110,99,116,105,111,110,115,32,99,97,110,110,111,116,32,104,97,118,101,32,99,104,105,108,100,114,101,110,46,0,79,110,108,121,32,108,101,97,102,32,110,111,100,101,115,32,119,105,116,104,32,99,117,115,116,111,109,32,109,101,97,115,117,114,101,32,102,117,110,99,116,105,111,110,115,115,104,111,117,108,100,32,109,97,110,117,97,108,108,121,32,109,97,114,107,32,116,104,101,109,115,101,108,118,101,115,32,97,115,32,100,105,114,116,121,0,67,97,110,110,111,116,32,103,101,116,32,108,97,121,111,117,116,32,112,114,111,112,101,114,116,105,101,115,32,111,102,32,109,117,108,116,105,45,101,100,103,101,32,115,104,111,114,116,104,97,110,100,115,0,37,115,37,100,46,123,91,115,107,105,112,112,101,100,93,32,0,119,109,58,32,37,115,44,32,104,109,58,32,37,115,44,32,97,119,58,32,37,102,32,97,104,58,32,37,102,32,61,62,32,100,58,32,40,37,102,44,32,37,102,41,32,37,115,10,0,37,115,37,100,46,123,37,115,0,42,0,119,109,58,32,37,115,44,32,104,109,58,32,37,115,44,32,97,119,58,32,37,102,32,97,104,58,32,37,102,32,37,115,10,0,37,115,37,100,46,125,37,115,0,119,109,58,32,37,115,44,32,104,109,58,32,37,115,44,32,100,58,32,40,37,102,44,32,37,102,41,32,37,115,10,0,79,117,116,32,111,102,32,99,97,99,104,101,32,101,110,116,114,105,101,115,33,10,0,83,99,97,108,101,32,102,97,99,116,111,114,32,115,104,111,117,108,100,32,110,111,116,32,98,101,32,108,101,115,115,32,116,104,97,110,32,122,101,114,111,0,105,110,105,116,105,97,108,0,37,115,10,0,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,0,85,78,68,69,70,73,78,69,68,0,69,88,65,67,84,76,89,0,65,84,95,77,79,83,84,0,76,65,89,95,85,78,68,69,70,73,78,69,68,0,76,65,89,95,69,88,65,67,84,76,89,0,76,65,89,95,65,84,95,77,79,83,84,0,97,118,97,105,108,97,98,108,101,87,105,100,116,104,32,105,115,32,105,110,100,101,102,105,110,105,116,101,32,115,111,32,119,105,100,116,104,77,101,97,115,117,114,101,77,111,100,101,32,109,117,115,116,32,98,101,32,89,71,77,101,97,115,117,114,101,77,111,100,101,85,110,100,101,102,105,110,101,100,0,97,118,97,105,108,97,98,108,101,72,101,105,103,104,116,32,105,115,32,105,110,100,101,102,105,110,105,116,101,32,115,111,32,104,101,105,103,104,116,77,101,97,115,117,114,101,77,111,100,101,32,109,117,115,116,32,98,101,32,89,71,77,101,97,115,117,114,101,77,111,100,101,85,110,100,101,102,105,110,101,100,0,102,108,101,120,0,115,116,114,101,116,99,104,0,109,117,108,116,105,108,105,110,101,45,115,116,114,101,116,99,104,0,69,120,112,101,99,116,101,100,32,110,111,100,101,32,116,111,32,104,97,118,101,32,99,117,115,116,111,109,32,109,101,97,115,117,114,101,32,102,117,110,99,116,105,111,110,0,109,101,97,115,117,114,101,0,69,120,112,101,99,116,32,99,117,115,116,111,109,32,98,97,115,101,108,105,110,101,32,102,117,110,99,116,105,111,110,32,116,111,32,110,111,116,32,114,101,116,117,114,110,32,78,97,78,0,97,98,115,45,109,101,97,115,117,114,101,0,97,98,115,45,108,97,121,111,117,116,0,78,111,100,101,0,99,114,101,97,116,101,68,101,102,97,117,108,116,0,99,114,101,97,116,101,87,105,116,104,67,111,110,102,105,103,0,100,101,115,116,114,111,121,0,114,101,115,101,116,0,99,111,112,121,83,116,121,108,101,0,115,101,116,80,111,115,105,116,105,111,110,84,121,112,101,0,115,101,116,80,111,115,105,116,105,111,110,0,115,101,116,80,111,115,105,116,105,111,110,80,101,114,99,101,110,116,0,115,101,116,65,108,105,103,110,67,111,110,116,101,110,116,0,115,101,116,65,108,105,103,110,73,116,101,109,115,0,115,101,116,65,108,105,103,110,83,101,108,102,0,115,101,116,70,108,101,120,68,105,114,101,99,116,105,111,110,0,115,101,116,70,108,101,120,87,114,97,112,0,115,101,116,74,117,115,116,105,102,121,67,111,110,116,101,110,116,0,115,101,116,77,97,114,103,105,110,0,115,101,116,77,97,114,103,105,110,80,101,114,99,101,110,116,0,115,101,116,77,97,114,103,105,110,65,117,116,111,0,115,101,116,79,118,101,114,102,108,111,119,0,115,101,116,68,105,115,112,108,97,121,0,115,101,116,70,108,101,120,0,115,101,116,70,108,101,120,66,97,115,105,115,0,115,101,116,70,108,101,120,66,97,115,105,115,80,101,114,99,101,110,116,0,115,101,116,70,108,101,120,71,114,111,119,0,115,101,116,70,108,101,120,83,104,114,105,110,107,0,115,101,116,87,105,100,116,104,0,115,101,116,87,105,100,116,104,80,101,114,99,101,110,116,0,115,101,116,87,105,100,116,104,65,117,116,111,0,115,101,116,72,101,105,103,104,116,0,115,101,116,72,101,105,103,104,116,80,101,114,99,101,110,116,0,115,101,116,72,101,105,103,104,116,65,117,116,111,0,115,101,116,77,105,110,87,105,100,116,104,0,115,101,116,77,105,110,87,105,100,116,104,80,101,114,99,101,110,116,0,115,101,116,77,105,110,72,101,105,103,104,116,0,115,101,116,77,105,110,72,101,105,103,104,116,80,101,114,99,101,110,116,0,115,101,116,77,97,120,87,105,100,116,104,0,115,101,116,77,97,120,87,105,100,116,104,80,101,114,99,101,110,116,0,115,101,116,77,97,120,72,101,105,103,104,116,0,115,101,116,77,97,120,72,101,105,103,104,116,80,101,114,99,101,110,116,0,115,101,116,65,115,112,101,99,116,82,97,116,105,111,0,115,101,116,66,111,114,100,101,114,0,115,101,116,80,97,100,100,105,110,103,0,115,101,116,80,97,100,100,105,110,103,80,101,114,99,101,110,116,0,103,101,116,80,111,115,105,116,105,111,110,84,121,112,101,0,103,101,116,80,111,115,105,116,105,111,110,0,103,101,116,65,108,105,103,110,67,111,110,116,101,110,116,0,103,101,116,65,108,105,103,110,73,116,101,109,115,0,103,101,116,65,108,105,103,110,83,101,108,102,0,103,101,116,70,108,101,120,68,105,114,101,99,116,105,111,110,0,103,101,116,70,108,101,120,87,114,97,112,0,103,101,116,74,117,115,116,105,102,121,67,111,110,116,101,110,116,0,103,101,116,77,97,114,103,105,110,0,103,101,116,70,108,101,120,66,97,115,105,115,0,103,101,116,70,108,101,120,71,114,111,119,0,103,101,116,70,108,101,120,83,104,114,105,110,107,0,103,101,116,87,105,100,116,104,0,103,101,116,72,101,105,103,104,116,0,103,101,116,77,105,110,87,105,100,116,104,0,103,101,116,77,105,110,72,101,105,103,104,116,0,103,101,116,77,97,120,87,105,100,116,104,0,103,101,116,77,97,120,72,101,105,103,104,116,0,103,101,116,65,115,112,101,99,116,82,97,116,105,111,0,103,101,116,66,111,114,100,101,114,0,103,101,116,79,118,101,114,102,108,111,119,0,103,101,116,68,105,115,112,108,97,121,0,103,101,116,80,97,100,100,105,110,103,0,105,110,115,101,114,116,67,104,105,108,100,0,114,101,109,111,118,101,67,104,105,108,100,0,103,101,116,67,104,105,108,100,67,111,117,110,116,0,103,101,116,80,97,114,101,110,116,0,103,101,116,67,104,105,108,100,0,115,101,116,77,101,97,115,117,114,101,70,117,110,99,0,117,110,115,101,116,77,101,97,115,117,114,101,70,117,110,99,0,109,97,114,107,68,105,114,116,121,0,105,115,68,105,114,116,121,0,99,97,108,99,117,108,97,116,101,76,97,121,111,117,116,0,103,101,116,67,111,109,112,117,116,101,100,76,101,102,116,0,103,101,116,67,111,109,112,117,116,101,100,82,105,103,104,116,0,103,101,116,67,111,109,112,117,116,101,100,84,111,112,0,103,101,116,67,111,109,112,117,116,101,100,66,111,116,116,111,109,0,103,101,116,67,111,109,112,117,116,101,100,87,105,100,116,104,0,103,101,116,67,111,109,112,117,116,101,100,72,101,105,103,104,116,0,103,101,116,67,111,109,112,117,116,101,100,76,97,121,111,117,116,0,103,101,116,67,111,109,112,117,116,101,100,77,97,114,103,105,110,0,103,101,116,67,111,109,112,117,116,101,100,66,111,114,100,101,114,0,103,101,116,67,111,109,112,117,116,101,100,80,97,100,100,105,110,103,0,67,111,110,102,105,103,0,99,114,101,97,116,101,0,115,101,116,69,120,112,101,114,105,109,101,110,116,97,108,70,101,97,116,117,114,101,69,110,97,98,108,101,100,0,115,101,116,80,111,105,110,116,83,99,97,108,101,70,97,99,116,111,114,0,105,115,69,120,112,101,114,105,109,101,110,116,97,108,70,101,97,116,117,114,101,69,110,97,98,108,101,100,0,86,97,108,117,101,0,76,97,121,111,117,116,0,83,105,122,101,0,103,101,116,73,110,115,116,97,110,99,101,67,111,117,110,116,0,73,110,116,54,52,0,1,1,1,2,2,4,4,4,4,8,8,4,8,118,111,105,100,0,98,111,111,108,0,115,116,100,58,58,115,116,114,105,110,103,0,99,98,70,117,110,99,116,105,111,110,32,38,0,99,111,110,115,116,32,99,98,70,117,110,99,116,105,111,110,32,38,0,69,120,116,101,114,110,97,108,0,66,117,102,102,101,114,0,78,66,105,110,100,73,68,0,78,66,105,110,100,0,98,105,110,100,95,118,97,108,117,101,0,114,101,102,108,101,99,116,0,113,117,101,114,121,84,121,112,101,0,108,97,108,108,111,99,0,108,114,101,115,101,116,0,123,114,101,116,117,114,110,40,95,110,98,105,110,100,46,99,97,108,108,98,97,99,107,83,105,103,110,97,116,117,114,101,76,105,115,116,91,36,48,93,46,97,112,112,108,121,40,116,104,105,115,44,97,114,103,117,109,101,110,116,115,41,41,59,125,0,95,110,98,105,110,100,95,110,101,119,0,17,0,10,0,17,17,17,0,0,0,0,5,0,0,0,0,0,0,9,0,0,0,0,11,0,0,0,0,0,0,0,0,17,0,15,10,17,17,17,3,10,7,0,1,19,9,11,11,0,0,9,6,11,0,0,11,0,6,17,0,0,0,17,17,17,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,11,0,0,0,0,0,0,0,0,17,0,10,10,17,17,17,0,10,0,0,2,0,9,11,0,0,0,9,0,11,0,0,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,12,0,0,0,0,9,12,0,0,0,0,0,12,0,0,12,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,14,0,0,0,0,0,0,0,0,0,0,0,13,0,0,0,4,13,0,0,0,0,9,14,0,0,0,0,0,14,0,0,14,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,0,0,0,0,15,0,0,0,0,15,0,0,0,0,9,16,0,0,0,0,0,16,0,0,16,0,0,18,0,0,0,18,18,18,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,18,0,0,0,18,18,18,0,0,0,0,0,0,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,11,0,0,0,0,0,0,0,0,0,0,0,10,0,0,0,0,10,0,0,0,0,9,11,0,0,0,0,0,11,0,0,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,12,0,0,0,0,9,12,0,0,0,0,0,12,0,0,12,0,0,45,43,32,32,32,48,88,48,120,0,40,110,117,108,108,41,0,45,48,88,43,48,88,32,48,88,45,48,120,43,48,120,32,48,120,0,105,110,102,0,73,78,70,0,110,97,110,0,78,65,78,0,48,49,50,51,52,53,54,55,56,57,65,66,67,68,69,70,46,0,84,33,34,25,13,1,2,3,17,75,28,12,16,4,11,29,18,30,39,104,110,111,112,113,98,32,5,6,15,19,20,21,26,8,22,7,40,36,23,24,9,10,14,27,31,37,35,131,130,125,38,42,43,60,61,62,63,67,71,74,77,88,89,90,91,92,93,94,95,96,97,99,100,101,102,103,105,106,107,108,114,115,116,121,122,123,124,0,73,108,108,101,103,97,108,32,98,121,116,101,32,115,101,113,117,101,110,99,101,0,68,111,109,97,105,110,32,101,114,114,111,114,0,82,101,115,117,108,116,32,110,111,116,32,114,101,112,114,101,115,101,110,116,97,98,108,101,0,78,111,116,32,97,32,116,116,121,0,80,101,114,109,105,115,115,105,111,110,32,100,101,110,105,101,100,0,79,112,101,114,97,116,105,111,110,32,110,111,116,32,112,101,114,109,105,116,116,101,100,0,78,111,32,115,117,99,104,32,102,105,108,101,32,111,114,32,100,105,114,101,99,116,111,114,121,0,78,111,32,115,117,99,104,32,112,114,111,99,101,115,115,0,70,105,108,101,32,101,120,105,115,116,115,0,86,97,108,117,101,32,116,111,111,32,108,97,114,103,101,32,102,111,114,32,100,97,116,97,32,116,121,112,101,0,78,111,32,115,112,97,99,101,32,108,101,102,116,32,111,110,32,100,101,118,105,99,101,0,79,117,116,32,111,102,32,109,101,109,111,114,121,0,82,101,115,111,117,114,99,101,32,98,117,115,121,0,73,110,116,101,114,114,117,112,116,101,100,32,115,121,115,116,101,109,32,99,97,108,108,0,82,101,115,111,117,114,99,101,32,116,101,109,112,111,114,97,114,105,108,121,32,117,110,97,118,97,105,108,97,98,108,101,0,73,110,118,97,108,105,100,32,115,101,101,107,0,67,114,111,115,115,45,100,101,118,105,99,101,32,108,105,110,107,0,82,101,97,100,45,111,110,108,121,32,102,105,108,101,32,115,121,115,116,101,109,0,68,105,114,101,99,116,111,114,121,32,110,111,116,32,101,109,112,116,121,0,67,111,110,110,101,99,116,105,111,110,32,114,101,115,101,116,32,98,121,32,112,101,101,114,0,79,112,101,114,97,116,105,111,110,32,116,105,109,101,100,32,111,117,116,0,67,111,110,110,101,99,116,105,111,110,32,114,101,102,117,115,101,100,0,72,111,115,116,32,105,115,32,100,111,119,110,0,72,111,115,116,32,105,115,32,117,110,114,101,97,99,104,97,98,108,101,0,65,100,100,114,101,115,115,32,105,110,32,117,115,101,0,66,114,111,107,101,110,32,112,105,112,101,0,73,47,79,32,101,114,114,111,114,0,78,111,32,115,117,99,104,32,100,101,118,105,99,101,32,111,114,32,97,100,100,114,101,115,115,0,66,108,111,99,107,32,100,101,118,105,99,101,32,114,101,113,117,105,114,101,100,0,78,111,32,115,117,99,104,32,100,101,118,105,99,101,0,78,111,116,32,97,32,100,105,114,101,99,116,111,114,121,0,73,115,32,97,32,100,105,114,101,99,116,111,114,121,0,84,101,120,116,32,102,105,108,101,32,98,117,115,121,0,69,120,101,99,32,102,111,114,109,97,116,32,101,114,114,111,114,0,73,110,118,97,108,105,100,32,97,114,103,117,109,101,110,116,0,65,114,103,117,109,101,110,116,32,108,105,115,116,32,116,111,111,32,108,111,110,103,0,83,121,109,98,111,108,105,99,32,108,105,110,107,32,108,111,111,112,0,70,105,108,101,110,97,109,101,32,116,111,111,32,108,111,110,103,0,84,111,111,32,109,97,110,121,32,111,112,101,110,32,102,105,108,101,115,32,105,110,32,115,121,115,116,101,109,0,78,111,32,102,105,108,101,32,100,101,115,99,114,105,112,116,111,114,115,32,97,118,97,105,108,97,98,108,101,0,66,97,100,32,102,105,108,101,32,100,101,115,99,114,105,112,116,111,114,0,78,111,32,99,104,105,108,100,32,112,114,111,99,101,115,115,0,66,97,100,32,97,100,100,114,101,115,115,0,70,105,108,101,32,116,111,111,32,108,97,114,103,101,0,84,111,111,32,109,97,110,121,32,108,105,110,107,115,0,78,111,32,108,111,99,107,115,32,97,118,97,105,108,97,98,108,101,0,82,101,115,111,117,114,99,101,32,100,101,97,100,108,111,99,107,32,119,111,117,108,100,32,111,99,99,117,114,0,83,116,97,116,101,32,110,111,116,32,114,101,99,111,118,101,114,97,98,108,101,0,80,114,101,118,105,111,117,115,32,111,119,110,101,114,32,100,105,101,100,0,79,112,101,114,97,116,105,111,110,32,99,97,110,99,101,108,101,100,0,70,117,110,99,116,105,111,110,32,110,111,116,32,105,109,112,108,101,109,101,110,116,101,100,0,78,111,32,109,101,115,115,97,103,101,32,111,102,32,100,101,115,105,114,101,100,32,116,121,112,101,0,73,100,101,110,116,105,102,105,101,114,32,114,101,109,111,118,101,100,0,68,101,118,105,99,101,32,110,111,116,32,97,32,115,116,114,101,97,109,0,78,111,32,100,97,116,97,32,97,118,97,105,108,97,98,108,101,0,68,101,118,105,99,101,32,116,105,109,101,111,117,116,0,79,117,116,32,111,102,32,115,116,114,101,97,109,115,32,114,101,115,111,117,114,99,101,115,0,76,105,110,107,32,104,97,115,32,98,101,101,110,32,115,101,118,101,114,101,100,0,80,114,111,116,111,99,111,108,32,101,114,114,111,114,0,66,97,100,32,109,101,115,115,97,103,101,0,70,105,108,101,32,100,101,115,99,114,105,112,116,111,114,32,105,110,32,98,97,100,32,115,116,97,116,101,0,78,111,116,32,97,32,115,111,99,107,101,116,0,68,101,115,116,105,110,97,116,105,111,110,32,97,100,100,114,101,115,115,32,114,101,113,117,105,114,101,100,0,77,101,115,115,97,103,101,32,116,111,111,32,108,97,114,103,101,0,80,114,111,116,111,99,111,108,32,119,114,111,110,103,32,116,121,112,101,32,102,111,114,32,115,111,99,107,101,116,0,80,114,111,116,111,99,111,108,32,110,111,116,32,97,118,97,105,108,97,98,108,101,0,80,114,111,116,111,99,111,108,32,110,111,116,32,115,117,112,112,111,114,116,101,100,0,83,111,99,107,101,116,32,116,121,112,101,32,110,111,116,32,115,117,112,112,111,114,116,101,100,0,78,111,116,32,115,117,112,112,111,114,116,101,100,0,80,114,111,116,111,99,111,108,32,102,97,109,105,108,121,32,110,111,116,32,115,117,112,112,111,114,116,101,100,0,65,100,100,114,101,115,115,32,102,97,109,105,108,121,32,110,111,116,32,115,117,112,112,111,114,116,101,100,32,98,121,32,112,114,111,116,111,99,111,108,0,65,100,100,114,101,115,115,32,110,111,116,32,97,118,97,105,108,97,98,108,101,0,78,101,116,119,111,114,107,32,105,115,32,100,111,119,110,0,78,101,116,119,111,114,107,32,117,110,114,101,97,99,104,97,98,108,101,0,67,111,110,110,101,99,116,105,111,110,32,114,101,115,101,116,32,98,121,32,110,101,116,119,111,114,107,0,67,111,110,110,101,99,116,105,111,110,32,97,98,111,114,116,101,100,0,78,111,32,98,117,102,102,101,114,32,115,112,97,99,101,32,97,118,97,105,108,97,98,108,101,0,83,111,99,107,101,116,32,105,115,32,99,111,110,110,101,99,116,101,100,0,83,111,99,107,101,116,32,110,111,116,32,99,111,110,110,101,99,116,101,100,0,67,97,110,110,111,116,32,115,101,110,100,32,97,102,116,101,114,32,115,111,99,107,101,116,32,115,104,117,116,100,111,119,110,0,79,112,101,114,97,116,105,111,110,32,97,108,114,101,97,100,121,32,105,110,32,112,114,111,103,114,101,115,115,0,79,112,101,114,97,116,105,111,110,32,105,110,32,112,114,111,103,114,101,115,115,0,83,116,97,108,101,32,102,105,108,101,32,104,97,110,100,108,101,0,82,101,109,111,116,101,32,73,47,79,32,101,114,114,111,114,0,81,117,111,116,97,32,101,120,99,101,101,100,101,100,0,78,111,32,109,101,100,105,117,109,32,102,111,117,110,100,0,87,114,111,110,103,32,109,101,100,105,117,109,32,116,121,112,101,0,78,111,32,101,114,114,111,114,32,105,110,102,111,114,109,97,116,105,111,110,0,0],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE);var tempDoublePtr=STATICTOP;function _atexit(e,t){__ATEXIT__.unshift({func:e,arg:t})}function ___cxa_atexit(){return _atexit.apply(null,arguments)}function _abort(){Module.abort()}function __ZN8facebook4yoga14YGNodeToStringEPNSt3__212basic_stringIcNS1_11char_traitsIcEENS1_9allocatorIcEEEEP6YGNode14YGPrintOptionsj(){Module.printErr("missing function: _ZN8facebook4yoga14YGNodeToStringEPNSt3__212basic_stringIcNS1_11char_traitsIcEENS1_9allocatorIcEEEEP6YGNode14YGPrintOptionsj"),abort(-1)}function __decorate(e,t,n,r){var i,o=arguments.length,u=o<3?t:null===r?r=Object.getOwnPropertyDescriptor(t,n):r;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)u=Reflect.decorate(e,t,n,r);else for(var a=e.length-1;a>=0;a--)(i=e[a])&&(u=(o<3?i(u):o>3?i(t,n,u):i(t,n))||u);return o>3&&u&&Object.defineProperty(t,n,u),u}function _defineHidden(e){return function(t,n){Object.defineProperty(t,n,{configurable:!1,enumerable:!1,value:e,writable:!0})}}STATICTOP+=16;var _nbind={};function __nbind_free_external(e){_nbind.externalList[e].dereference(e)}function __nbind_reference_external(e){_nbind.externalList[e].reference()}function _llvm_stackrestore(e){var t=_llvm_stacksave,n=t.LLVM_SAVEDSTACKS[e];t.LLVM_SAVEDSTACKS.splice(e,1),Runtime.stackRestore(n)}function __nbind_register_pool(e,t,n,r){_nbind.Pool.pageSize=e,_nbind.Pool.usedPtr=t/4,_nbind.Pool.rootPtr=n,_nbind.Pool.pagePtr=r/4,HEAP32[t/4]=16909060,1==HEAP8[t]&&(_nbind.bigEndian=!0),HEAP32[t/4]=0,_nbind.makeTypeKindTbl=((i={})[1024]=_nbind.PrimitiveType,i[64]=_nbind.Int64Type,i[2048]=_nbind.BindClass,i[3072]=_nbind.BindClassPtr,i[4096]=_nbind.SharedClassPtr,i[5120]=_nbind.ArrayType,i[6144]=_nbind.ArrayType,i[7168]=_nbind.CStringType,i[9216]=_nbind.CallbackType,i[10240]=_nbind.BindType,i),_nbind.makeTypeNameTbl={Buffer:_nbind.BufferType,External:_nbind.ExternalType,Int64:_nbind.Int64Type,_nbind_new:_nbind.CreateValueType,bool:_nbind.BooleanType,"cbFunction &":_nbind.CallbackType,"const cbFunction &":_nbind.CallbackType,"const std::string &":_nbind.StringType,"std::string":_nbind.StringType},Module.toggleLightGC=_nbind.toggleLightGC,_nbind.callUpcast=Module.dynCall_ii;var i,o=_nbind.makeType(_nbind.constructType,{flags:2048,id:0,name:""});o.proto=Module,_nbind.BindClass.list.push(o)}function _emscripten_set_main_loop_timing(e,t){if(Browser.mainLoop.timingMode=e,Browser.mainLoop.timingValue=t,!Browser.mainLoop.func)return 1;if(0==e)Browser.mainLoop.scheduler=function(){var e=0|Math.max(0,Browser.mainLoop.tickStartTime+t-_emscripten_get_now());setTimeout(Browser.mainLoop.runner,e)},Browser.mainLoop.method="timeout";else if(1==e)Browser.mainLoop.scheduler=function(){Browser.requestAnimationFrame(Browser.mainLoop.runner)},Browser.mainLoop.method="rAF";else if(2==e){if(!window.setImmediate){var n=[];window.addEventListener("message",(function(e){e.source===window&&"setimmediate"===e.data&&(e.stopPropagation(),n.shift()())}),!0),window.setImmediate=function(e){n.push(e),ENVIRONMENT_IS_WORKER?(void 0===Module.setImmediates&&(Module.setImmediates=[]),Module.setImmediates.push(e),window.postMessage({target:"setimmediate"})):window.postMessage("setimmediate","*")}}Browser.mainLoop.scheduler=function(){window.setImmediate(Browser.mainLoop.runner)},Browser.mainLoop.method="immediate"}return 0}function _emscripten_get_now(){abort()}function _emscripten_set_main_loop(e,t,n,r,i){var o;Module.noExitRuntime=!0,assert(!Browser.mainLoop.func,"emscripten_set_main_loop: there can only be one main loop function at once: call emscripten_cancel_main_loop to cancel the previous one before setting a new one with different parameters."),Browser.mainLoop.func=e,Browser.mainLoop.arg=r,o=void 0!==r?function(){Module.dynCall_vi(e,r)}:function(){Module.dynCall_v(e)};var u=Browser.mainLoop.currentlyRunningMainloop;if(Browser.mainLoop.runner=function(){if(!ABORT)if(Browser.mainLoop.queue.length>0){var e=Date.now(),t=Browser.mainLoop.queue.shift();if(t.func(t.arg),Browser.mainLoop.remainingBlockers){var n=Browser.mainLoop.remainingBlockers,r=n%1==0?n-1:Math.floor(n);t.counted?Browser.mainLoop.remainingBlockers=r:(r+=.5,Browser.mainLoop.remainingBlockers=(8*n+r)/9)}if(console.log('main loop blocker "'+t.name+'" took '+(Date.now()-e)+" ms"),Browser.mainLoop.updateStatus(),u1&&Browser.mainLoop.currentFrameNumber%Browser.mainLoop.timingValue!=0?Browser.mainLoop.scheduler():(0==Browser.mainLoop.timingMode&&(Browser.mainLoop.tickStartTime=_emscripten_get_now()),"timeout"===Browser.mainLoop.method&&Module.ctx&&(Module.printErr("Looks like you are rendering without using requestAnimationFrame for the main loop. You should use 0 for the frame rate in emscripten_set_main_loop in order to use requestAnimationFrame, as that can greatly improve your frame rates!"),Browser.mainLoop.method=""),Browser.mainLoop.runIter(o),u0?_emscripten_set_main_loop_timing(0,1e3/t):_emscripten_set_main_loop_timing(1,1),Browser.mainLoop.scheduler()),n)throw"SimulateInfiniteLoop"}var Browser={mainLoop:{scheduler:null,method:"",currentlyRunningMainloop:0,func:null,arg:0,timingMode:0,timingValue:0,currentFrameNumber:0,queue:[],pause:function(){Browser.mainLoop.scheduler=null,Browser.mainLoop.currentlyRunningMainloop++},resume:function(){Browser.mainLoop.currentlyRunningMainloop++;var e=Browser.mainLoop.timingMode,t=Browser.mainLoop.timingValue,n=Browser.mainLoop.func;Browser.mainLoop.func=null,_emscripten_set_main_loop(n,0,!1,Browser.mainLoop.arg,!0),_emscripten_set_main_loop_timing(e,t),Browser.mainLoop.scheduler()},updateStatus:function(){if(Module.setStatus){var e=Module.statusMessage||"Please wait...",t=Browser.mainLoop.remainingBlockers,n=Browser.mainLoop.expectedBlockers;t?t=6;){var u=r>>i-6&63;i-=6,n+=t[u]}return 2==i?(n+=t[(3&r)<<4],n+="=="):4==i&&(n+=t[(15&r)<<2],n+="="),n}(e),o(s))},s.src=l,Browser.safeSetTimeout((function(){o(s)}),1e4)}};Module.preloadPlugins.push(t);var n=Module.canvas;n&&(n.requestPointerLock=n.requestPointerLock||n.mozRequestPointerLock||n.webkitRequestPointerLock||n.msRequestPointerLock||function(){},n.exitPointerLock=document.exitPointerLock||document.mozExitPointerLock||document.webkitExitPointerLock||document.msExitPointerLock||function(){},n.exitPointerLock=n.exitPointerLock.bind(document),document.addEventListener("pointerlockchange",r,!1),document.addEventListener("mozpointerlockchange",r,!1),document.addEventListener("webkitpointerlockchange",r,!1),document.addEventListener("mspointerlockchange",r,!1),Module.elementPointerLock&&n.addEventListener("click",(function(e){!Browser.pointerLock&&Module.canvas.requestPointerLock&&(Module.canvas.requestPointerLock(),e.preventDefault())}),!1))}function r(){Browser.pointerLock=document.pointerLockElement===Module.canvas||document.mozPointerLockElement===Module.canvas||document.webkitPointerLockElement===Module.canvas||document.msPointerLockElement===Module.canvas}},createContext:function(e,t,n,r){if(t&&Module.ctx&&e==Module.canvas)return Module.ctx;var i,o;if(t){var u={antialias:!1,alpha:!1};if(r)for(var a in r)u[a]=r[a];(o=GL.createContext(e,u))&&(i=GL.getContext(o).GLctx)}else i=e.getContext("2d");return i?(n&&(t||assert("undefined"==typeof GLctx,"cannot set in module if GLctx is used, but we are a non-GL context that would replace it"),Module.ctx=i,t&&GL.makeContextCurrent(o),Module.useWebGL=t,Browser.moduleContextCreatedCallbacks.forEach((function(e){e()})),Browser.init()),i):null},destroyContext:function(e,t,n){},fullscreenHandlersInstalled:!1,lockPointer:void 0,resizeCanvas:void 0,requestFullscreen:function(e,t,n){Browser.lockPointer=e,Browser.resizeCanvas=t,Browser.vrDevice=n,void 0===Browser.lockPointer&&(Browser.lockPointer=!0),void 0===Browser.resizeCanvas&&(Browser.resizeCanvas=!1),void 0===Browser.vrDevice&&(Browser.vrDevice=null);var r=Module.canvas;function i(){Browser.isFullscreen=!1;var e=r.parentNode;(document.fullscreenElement||document.mozFullScreenElement||document.msFullscreenElement||document.webkitFullscreenElement||document.webkitCurrentFullScreenElement)===e?(r.exitFullscreen=document.exitFullscreen||document.cancelFullScreen||document.mozCancelFullScreen||document.msExitFullscreen||document.webkitCancelFullScreen||function(){},r.exitFullscreen=r.exitFullscreen.bind(document),Browser.lockPointer&&r.requestPointerLock(),Browser.isFullscreen=!0,Browser.resizeCanvas&&Browser.setFullscreenCanvasSize()):(e.parentNode.insertBefore(r,e),e.parentNode.removeChild(e),Browser.resizeCanvas&&Browser.setWindowedCanvasSize()),Module.onFullScreen&&Module.onFullScreen(Browser.isFullscreen),Module.onFullscreen&&Module.onFullscreen(Browser.isFullscreen),Browser.updateCanvasDimensions(r)}Browser.fullscreenHandlersInstalled||(Browser.fullscreenHandlersInstalled=!0,document.addEventListener("fullscreenchange",i,!1),document.addEventListener("mozfullscreenchange",i,!1),document.addEventListener("webkitfullscreenchange",i,!1),document.addEventListener("MSFullscreenChange",i,!1));var o=document.createElement("div");r.parentNode.insertBefore(o,r),o.appendChild(r),o.requestFullscreen=o.requestFullscreen||o.mozRequestFullScreen||o.msRequestFullscreen||(o.webkitRequestFullscreen?function(){o.webkitRequestFullscreen(Element.ALLOW_KEYBOARD_INPUT)}:null)||(o.webkitRequestFullScreen?function(){o.webkitRequestFullScreen(Element.ALLOW_KEYBOARD_INPUT)}:null),n?o.requestFullscreen({vrDisplay:n}):o.requestFullscreen()},requestFullScreen:function(e,t,n){return Module.printErr("Browser.requestFullScreen() is deprecated. Please call Browser.requestFullscreen instead."),Browser.requestFullScreen=function(e,t,n){return Browser.requestFullscreen(e,t,n)},Browser.requestFullscreen(e,t,n)},nextRAF:0,fakeRequestAnimationFrame:function(e){var t=Date.now();if(0===Browser.nextRAF)Browser.nextRAF=t+1e3/60;else for(;t+2>=Browser.nextRAF;)Browser.nextRAF+=1e3/60;var n=Math.max(Browser.nextRAF-t,0);setTimeout(e,n)},requestAnimationFrame:function(e){"undefined"==typeof window?Browser.fakeRequestAnimationFrame(e):(window.requestAnimationFrame||(window.requestAnimationFrame=window.requestAnimationFrame||window.mozRequestAnimationFrame||window.webkitRequestAnimationFrame||window.msRequestAnimationFrame||window.oRequestAnimationFrame||Browser.fakeRequestAnimationFrame),window.requestAnimationFrame(e))},safeCallback:function(e){return function(){if(!ABORT)return e.apply(null,arguments)}},allowAsyncCallbacks:!0,queuedAsyncCallbacks:[],pauseAsyncCallbacks:function(){Browser.allowAsyncCallbacks=!1},resumeAsyncCallbacks:function(){if(Browser.allowAsyncCallbacks=!0,Browser.queuedAsyncCallbacks.length>0){var e=Browser.queuedAsyncCallbacks;Browser.queuedAsyncCallbacks=[],e.forEach((function(e){e()}))}},safeRequestAnimationFrame:function(e){return Browser.requestAnimationFrame((function(){ABORT||(Browser.allowAsyncCallbacks?e():Browser.queuedAsyncCallbacks.push(e))}))},safeSetTimeout:function(e,t){return Module.noExitRuntime=!0,setTimeout((function(){ABORT||(Browser.allowAsyncCallbacks?e():Browser.queuedAsyncCallbacks.push(e))}),t)},safeSetInterval:function(e,t){return Module.noExitRuntime=!0,setInterval((function(){ABORT||Browser.allowAsyncCallbacks&&e()}),t)},getMimetype:function(e){return{jpg:"image/jpeg",jpeg:"image/jpeg",png:"image/png",bmp:"image/bmp",ogg:"audio/ogg",wav:"audio/wav",mp3:"audio/mpeg"}[e.substr(e.lastIndexOf(".")+1)]},getUserMedia:function(e){window.getUserMedia||(window.getUserMedia=navigator.getUserMedia||navigator.mozGetUserMedia),window.getUserMedia(e)},getMovementX:function(e){return e.movementX||e.mozMovementX||e.webkitMovementX||0},getMovementY:function(e){return e.movementY||e.mozMovementY||e.webkitMovementY||0},getMouseWheelDelta:function(e){var t=0;switch(e.type){case"DOMMouseScroll":t=e.detail;break;case"mousewheel":t=e.wheelDelta;break;case"wheel":t=e.deltaY;break;default:throw"unrecognized mouse wheel event: "+e.type}return t},mouseX:0,mouseY:0,mouseMovementX:0,mouseMovementY:0,touches:{},lastTouches:{},calculateMouseEvent:function(e){if(Browser.pointerLock)"mousemove"!=e.type&&"mozMovementX"in e?Browser.mouseMovementX=Browser.mouseMovementY=0:(Browser.mouseMovementX=Browser.getMovementX(e),Browser.mouseMovementY=Browser.getMovementY(e)),"undefined"!=typeof SDL?(Browser.mouseX=SDL.mouseX+Browser.mouseMovementX,Browser.mouseY=SDL.mouseY+Browser.mouseMovementY):(Browser.mouseX+=Browser.mouseMovementX,Browser.mouseY+=Browser.mouseMovementY);else{var t=Module.canvas.getBoundingClientRect(),n=Module.canvas.width,r=Module.canvas.height,i=void 0!==window.scrollX?window.scrollX:window.pageXOffset,o=void 0!==window.scrollY?window.scrollY:window.pageYOffset;if("touchstart"===e.type||"touchend"===e.type||"touchmove"===e.type){var u=e.touch;if(void 0===u)return;var a=u.pageX-(i+t.left),l=u.pageY-(o+t.top),s={x:a*=n/t.width,y:l*=r/t.height};if("touchstart"===e.type)Browser.lastTouches[u.identifier]=s,Browser.touches[u.identifier]=s;else if("touchend"===e.type||"touchmove"===e.type){var c=Browser.touches[u.identifier];c||(c=s),Browser.lastTouches[u.identifier]=c,Browser.touches[u.identifier]=s}return}var f=e.pageX-(i+t.left),d=e.pageY-(o+t.top);f*=n/t.width,d*=r/t.height,Browser.mouseMovementX=f-Browser.mouseX,Browser.mouseMovementY=d-Browser.mouseY,Browser.mouseX=f,Browser.mouseY=d}},asyncLoad:function(e,t,n,r){var i=r?"":getUniqueRunDependency("al "+e);Module.readAsync(e,(function(n){assert(n,'Loading data file "'+e+'" failed (no arrayBuffer).'),t(new Uint8Array(n)),i&&removeRunDependency(i)}),(function(t){if(!n)throw'Loading data file "'+e+'" failed.';n()})),i&&addRunDependency(i)},resizeListeners:[],updateResizeListeners:function(){var e=Module.canvas;Browser.resizeListeners.forEach((function(t){t(e.width,e.height)}))},setCanvasSize:function(e,t,n){var r=Module.canvas;Browser.updateCanvasDimensions(r,e,t),n||Browser.updateResizeListeners()},windowedWidth:0,windowedHeight:0,setFullscreenCanvasSize:function(){if("undefined"!=typeof SDL){var e=HEAPU32[SDL.screen+0*Runtime.QUANTUM_SIZE>>2];e|=8388608,HEAP32[SDL.screen+0*Runtime.QUANTUM_SIZE>>2]=e}Browser.updateResizeListeners()},setWindowedCanvasSize:function(){if("undefined"!=typeof SDL){var e=HEAPU32[SDL.screen+0*Runtime.QUANTUM_SIZE>>2];e&=-8388609,HEAP32[SDL.screen+0*Runtime.QUANTUM_SIZE>>2]=e}Browser.updateResizeListeners()},updateCanvasDimensions:function(e,t,n){t&&n?(e.widthNative=t,e.heightNative=n):(t=e.widthNative,n=e.heightNative);var r=t,i=n;if(Module.forcedAspectRatio&&Module.forcedAspectRatio>0&&(r/i>2]},getStr:function(){return Pointer_stringify(SYSCALLS.get())},get64:function(){var e=SYSCALLS.get(),t=SYSCALLS.get();return assert(e>=0?0===t:-1===t),e},getZero:function(){assert(0===SYSCALLS.get())}};function ___syscall6(e,t){SYSCALLS.varargs=t;try{var n=SYSCALLS.getStreamFromFD();return FS.close(n),0}catch(e){return"undefined"!=typeof FS&&e instanceof FS.ErrnoError||abort(e),-e.errno}}function ___syscall54(e,t){SYSCALLS.varargs=t;try{return 0}catch(e){return"undefined"!=typeof FS&&e instanceof FS.ErrnoError||abort(e),-e.errno}}function _typeModule(e){var t=[[0,1,"X"],[1,1,"const X"],[128,1,"X *"],[256,1,"X &"],[384,1,"X &&"],[512,1,"std::shared_ptr"],[640,1,"std::unique_ptr"],[5120,1,"std::vector"],[6144,2,"std::array"],[9216,-1,"std::function"]];function n(e,t,n,r,i,o){if(1==t){var u=896&r;128!=u&&256!=u&&384!=u||(e="X const")}return(o?n.replace("X",e).replace("Y",i):e.replace("X",n).replace("Y",i)).replace(/([*&]) (?=[*&])/g,"$1")}function r(e,t){var n=t.flags,r=896&n,i=15360&n;return t.name||1024!=i||(1==t.ptrSize?t.name=(16&n?"":(8&n?"un":"")+"signed ")+"char":t.name=(8&n?"u":"")+(32&n?"float":"int")+8*t.ptrSize+"_t"),8!=t.ptrSize||32&n||(i=64),2048==i&&(512==r||640==r?i=4096:r&&(i=3072)),e(i,t)}var i={Type:function(){function e(e){this.id=e.id,this.name=e.name,this.flags=e.flags,this.spec=e}return e.prototype.toString=function(){return this.name},e}(),getComplexType:function e(i,o,u,a,l,s,c,f){void 0===s&&(s="X"),void 0===f&&(f=1);var d=u(i);if(d)return d;var p,h=a(i),v=h.placeholderFlag,m=t[v];c&&m&&(s=n(c[2],c[0],s,m[0],"?",!0)),0==v&&(p="Unbound"),v>=10&&(p="Corrupt"),f>20&&(p="Deeply nested"),p&&function(e,t,n,r,i){throw new Error(e+" type "+n.replace("X",t+"?")+(r?" with flag "+r:"")+" in "+i)}(p,i,s,v,l||"?");var g,y=e(h.paramList[0],o,u,a,l,s,m,f+1),_={flags:m[0],id:i,name:"",paramList:[y]},b=[],w="?";switch(h.placeholderFlag){case 1:g=y.spec;break;case 2:if(1024==(15360&y.flags)&&1==y.spec.ptrSize){_.flags=7168;break}case 3:case 6:case 5:g=y.spec,y.flags;break;case 8:w=""+h.paramList[1],_.paramList.push(h.paramList[1]);break;case 9:for(var E=0,D=h.paramList[1];E>2]=e),e}function _llvm_stacksave(){var e=_llvm_stacksave;return e.LLVM_SAVEDSTACKS||(e.LLVM_SAVEDSTACKS=[]),e.LLVM_SAVEDSTACKS.push(Runtime.stackSave()),e.LLVM_SAVEDSTACKS.length-1}function ___syscall140(e,t){SYSCALLS.varargs=t;try{var n=SYSCALLS.getStreamFromFD(),r=(SYSCALLS.get(),SYSCALLS.get()),i=SYSCALLS.get(),o=SYSCALLS.get(),u=r;return FS.llseek(n,u,o),HEAP32[i>>2]=n.position,n.getdents&&0===u&&0===o&&(n.getdents=null),0}catch(e){return"undefined"!=typeof FS&&e instanceof FS.ErrnoError||abort(e),-e.errno}}function ___syscall146(e,t){SYSCALLS.varargs=t;try{var n=SYSCALLS.get(),r=SYSCALLS.get(),i=SYSCALLS.get(),o=0;___syscall146.buffer||(___syscall146.buffers=[null,[],[]],___syscall146.printChar=function(e,t){var n=___syscall146.buffers[e];assert(n),0===t||10===t?((1===e?Module.print:Module.printErr)(UTF8ArrayToString(n,0)),n.length=0):n.push(t)});for(var u=0;u>2],l=HEAP32[r+(8*u+4)>>2],s=0;se.pageSize/2||t>e.pageSize-n?_nbind.typeNameTbl.NBind.proto.lalloc(t):(HEAPU32[e.usedPtr]=n+t,e.rootPtr+n)},e.lreset=function(t,n){HEAPU32[e.pagePtr]?_nbind.typeNameTbl.NBind.proto.lreset(t,n):HEAPU32[e.usedPtr]=t},e}();function constructType(e,t){var n=new(10240==e?_nbind.makeTypeNameTbl[t.name]||_nbind.BindType:_nbind.makeTypeKindTbl[e])(t);return typeIdTbl[t.id]=n,_nbind.typeNameTbl[t.name]=n,n}function getType(e){return typeIdTbl[e]}function queryType(e){var t=HEAPU8[e],n=_nbind.structureList[t][1];e/=4,n<0&&(++e,n=HEAPU32[e]+1);var r=Array.prototype.slice.call(HEAPU32.subarray(e+1,e+1+n));return 9==t&&(r=[r[0],r.slice(1)]),{paramList:r,placeholderFlag:t}}function getTypes(e,t){return e.map((function(e){return"number"==typeof e?_nbind.getComplexType(e,constructType,getType,queryType,t):_nbind.typeNameTbl[e]}))}function readTypeIdList(e,t){return Array.prototype.slice.call(HEAPU32,e/4,e/4+t)}function readAsciiString(e){for(var t=e;HEAPU8[t++];);return String.fromCharCode.apply("",HEAPU8.subarray(e,t-1))}function readPolicyList(e){var t={};if(e)for(;;){var n=HEAPU32[e/4];if(!n)break;t[readAsciiString(n)]=!0,e+=4}return t}function getDynCall(e,t){var n={float32_t:"d",float64_t:"d",int64_t:"d",uint64_t:"d",void:"v"},r=e.map((function(e){return n[e.name]||"i"})).join(""),i=Module["dynCall_"+r];if(!i)throw new Error("dynCall_"+r+" not found for "+t+"("+e.map((function(e){return e.name})).join(", ")+")");return i}function addMethod(e,t,n,r){var i=e[t];e.hasOwnProperty(t)&&i?((i.arity||0===i.arity)&&(i=_nbind.makeOverloader(i,i.arity),e[t]=i),i.addMethod(n,r)):(n.arity=r,e[t]=n)}function throwError(e){throw new Error(e)}_nbind.Pool=Pool,_nbind.constructType=constructType,_nbind.getType=getType,_nbind.queryType=queryType,_nbind.getTypes=getTypes,_nbind.readTypeIdList=readTypeIdList,_nbind.readAsciiString=readAsciiString,_nbind.readPolicyList=readPolicyList,_nbind.getDynCall=getDynCall,_nbind.addMethod=addMethod,_nbind.throwError=throwError,_nbind.bigEndian=!1,_a=_typeModule(_typeModule),_nbind.Type=_a.Type,_nbind.makeType=_a.makeType,_nbind.getComplexType=_a.getComplexType,_nbind.structureList=_a.structureList;var BindType=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t.heap=HEAPU32,t.ptrSize=4,t}return __extends(t,e),t.prototype.needsWireRead=function(e){return!!this.wireRead||!!this.makeWireRead},t.prototype.needsWireWrite=function(e){return!!this.wireWrite||!!this.makeWireWrite},t}(_nbind.Type);_nbind.BindType=BindType;var PrimitiveType=function(e){function t(t){var n=e.call(this,t)||this,r=32&t.flags?{32:HEAPF32,64:HEAPF64}:8&t.flags?{8:HEAPU8,16:HEAPU16,32:HEAPU32}:{8:HEAP8,16:HEAP16,32:HEAP32};return n.heap=r[8*t.ptrSize],n.ptrSize=t.ptrSize,n}return __extends(t,e),t.prototype.needsWireWrite=function(e){return!!e&&!!e.Strict},t.prototype.makeWireWrite=function(e,t){return t&&t.Strict&&function(e){if("number"==typeof e)return e;throw new Error("Type mismatch")}},t}(BindType);function pushCString(e,t){if(null==e){if(t&&t.Nullable)return 0;throw new Error("Type mismatch")}if(t&&t.Strict){if("string"!=typeof e)throw new Error("Type mismatch")}else e=e.toString();var n=Module.lengthBytesUTF8(e)+1,r=_nbind.Pool.lalloc(n);return Module.stringToUTF8Array(e,HEAPU8,r,n),r}function popCString(e){return 0===e?null:Module.Pointer_stringify(e)}_nbind.PrimitiveType=PrimitiveType,_nbind.pushCString=pushCString,_nbind.popCString=popCString;var CStringType=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t.wireRead=popCString,t.wireWrite=pushCString,t.readResources=[_nbind.resources.pool],t.writeResources=[_nbind.resources.pool],t}return __extends(t,e),t.prototype.makeWireWrite=function(e,t){return function(e){return pushCString(e,t)}},t}(BindType);_nbind.CStringType=CStringType;var BooleanType=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t.wireRead=function(e){return!!e},t}return __extends(t,e),t.prototype.needsWireWrite=function(e){return!!e&&!!e.Strict},t.prototype.makeWireRead=function(e){return"!!("+e+")"},t.prototype.makeWireWrite=function(e,t){return t&&t.Strict&&function(e){if("boolean"==typeof e)return e;throw new Error("Type mismatch")}||e},t}(BindType);_nbind.BooleanType=BooleanType;var Wrapper=function(){function e(){}return e.prototype.persist=function(){this.__nbindState|=1},e}();function makeBound(e,t){var n=function(e){function n(t,r,i,o){var u=e.call(this)||this;if(!(u instanceof n))return new(Function.prototype.bind.apply(n,Array.prototype.concat.apply([null],arguments)));var a=r,l=i,s=o;if(t!==_nbind.ptrMarker){var c=u.__nbindConstructor.apply(u,arguments);a=4608,s=HEAPU32[c/4],l=HEAPU32[c/4+1]}var f={configurable:!0,enumerable:!1,value:null,writable:!1},d={__nbindFlags:a,__nbindPtr:l};s&&(d.__nbindShared=s,_nbind.mark(u));for(var p=0,h=Object.keys(d);p>=1;var n=_nbind.valueList[e];return _nbind.valueList[e]=firstFreeValue,firstFreeValue=e,n}if(t)return _nbind.popShared(e,t);throw new Error("Invalid value slot "+e)}_nbind.pushValue=pushValue,_nbind.popValue=popValue;var valueBase=0x10000000000000000;function push64(e){return"number"==typeof e?e:4096*pushValue(e)+valueBase}function pop64(e){return e=3?Buffer.from(o):new Buffer(o)).copy(r):getBuffer(r).set(o)}}_nbind.BufferType=BufferType,_nbind.commitBuffer=commitBuffer;var dirtyList=[],gcTimer=0;function sweep(){for(var e=0,t=dirtyList;e>2]=DYNAMIC_BASE,staticSealed=!0,Module.asmGlobalArg={Math,Int8Array,Int16Array,Int32Array,Uint8Array,Uint16Array,Uint32Array,Float32Array,Float64Array,NaN:NaN,Infinity:1/0},Module.asmLibraryArg={abort,assert,enlargeMemory,getTotalMemory,abortOnCannotGrowMemory,invoke_viiiii,invoke_vif,invoke_vid,invoke_fiff,invoke_vi,invoke_vii,invoke_ii,invoke_viddi,invoke_vidd,invoke_iiii,invoke_diii,invoke_di,invoke_iid,invoke_iii,invoke_viiddi,invoke_viiiiii,invoke_dii,invoke_i,invoke_iiiiii,invoke_viiid,invoke_viififi,invoke_viii,invoke_v,invoke_viid,invoke_idd,invoke_viiii,_emscripten_asm_const_iiiii,_emscripten_asm_const_iiidddddd,_emscripten_asm_const_iiiid,__nbind_reference_external,_emscripten_asm_const_iiiiiiii,_removeAccessorPrefix,_typeModule,__nbind_register_pool,__decorate,_llvm_stackrestore,___cxa_atexit,__extends,__nbind_get_value_object,__ZN8facebook4yoga14YGNodeToStringEPNSt3__212basic_stringIcNS1_11char_traitsIcEENS1_9allocatorIcEEEEP6YGNode14YGPrintOptionsj,_emscripten_set_main_loop_timing,__nbind_register_primitive,__nbind_register_type,_emscripten_memcpy_big,__nbind_register_function,___setErrNo,__nbind_register_class,__nbind_finish,_abort,_nbind_value,_llvm_stacksave,___syscall54,_defineHidden,_emscripten_set_main_loop,_emscripten_get_now,__nbind_register_callback_signature,_emscripten_asm_const_iiiiii,__nbind_free_external,_emscripten_asm_const_iiii,_emscripten_asm_const_iiididi,___syscall6,_atexit,___syscall140,___syscall146,DYNAMICTOP_PTR,tempDoublePtr,ABORT,STACKTOP,STACK_MAX,cttz_i8,___dso_handle};var asm=function(e,t,n){"use asm";var r=new e.Int8Array(n);var i=new e.Int16Array(n);var o=new e.Int32Array(n);var u=new e.Uint8Array(n);var a=new e.Uint16Array(n);var l=new e.Uint32Array(n);var s=new e.Float32Array(n);var c=new e.Float64Array(n);var f=t.DYNAMICTOP_PTR|0;var d=t.tempDoublePtr|0;var p=t.ABORT|0;var h=t.STACKTOP|0;var v=t.STACK_MAX|0;var m=t.cttz_i8|0;var g=t.___dso_handle|0;var y=0;var _=0;var b=0;var w=0;var E=e.NaN,D=e.Infinity;var S=0,C=0,k=0,T=0,x=0.0;var A=0;var O=e.Math.floor;var P=e.Math.abs;var I=e.Math.sqrt;var N=e.Math.pow;var M=e.Math.cos;var R=e.Math.sin;var F=e.Math.tan;var L=e.Math.acos;var B=e.Math.asin;var j=e.Math.atan;var U=e.Math.atan2;var z=e.Math.exp;var W=e.Math.log;var H=e.Math.ceil;var V=e.Math.imul;var q=e.Math.min;var G=e.Math.max;var $=e.Math.clz32;var Y=e.Math.fround;var K=t.abort;var X=t.assert;var Q=t.enlargeMemory;var J=t.getTotalMemory;var Z=t.abortOnCannotGrowMemory;var ee=t.invoke_viiiii;var te=t.invoke_vif;var ne=t.invoke_vid;var re=t.invoke_fiff;var ie=t.invoke_vi;var oe=t.invoke_vii;var ue=t.invoke_ii;var ae=t.invoke_viddi;var le=t.invoke_vidd;var se=t.invoke_iiii;var ce=t.invoke_diii;var fe=t.invoke_di;var de=t.invoke_iid;var pe=t.invoke_iii;var he=t.invoke_viiddi;var ve=t.invoke_viiiiii;var me=t.invoke_dii;var ge=t.invoke_i;var ye=t.invoke_iiiiii;var _e=t.invoke_viiid;var be=t.invoke_viififi;var we=t.invoke_viii;var Ee=t.invoke_v;var De=t.invoke_viid;var Se=t.invoke_idd;var Ce=t.invoke_viiii;var ke=t._emscripten_asm_const_iiiii;var Te=t._emscripten_asm_const_iiidddddd;var xe=t._emscripten_asm_const_iiiid;var Ae=t.__nbind_reference_external;var Oe=t._emscripten_asm_const_iiiiiiii;var Pe=t._removeAccessorPrefix;var Ie=t._typeModule;var Ne=t.__nbind_register_pool;var Me=t.__decorate;var Re=t._llvm_stackrestore;var Fe=t.___cxa_atexit;var Le=t.__extends;var Be=t.__nbind_get_value_object;var je=t.__ZN8facebook4yoga14YGNodeToStringEPNSt3__212basic_stringIcNS1_11char_traitsIcEENS1_9allocatorIcEEEEP6YGNode14YGPrintOptionsj;var Ue=t._emscripten_set_main_loop_timing;var ze=t.__nbind_register_primitive;var We=t.__nbind_register_type;var He=t._emscripten_memcpy_big;var Ve=t.__nbind_register_function;var qe=t.___setErrNo;var Ge=t.__nbind_register_class;var $e=t.__nbind_finish;var Ye=t._abort;var Ke=t._nbind_value;var Xe=t._llvm_stacksave;var Qe=t.___syscall54;var Je=t._defineHidden;var Ze=t._emscripten_set_main_loop;var et=t._emscripten_get_now;var tt=t.__nbind_register_callback_signature;var nt=t._emscripten_asm_const_iiiiii;var rt=t.__nbind_free_external;var it=t._emscripten_asm_const_iiii;var ot=t._emscripten_asm_const_iiididi;var ut=t.___syscall6;var at=t._atexit;var lt=t.___syscall140;var st=t.___syscall146;var ct=Y(0);const ft=Y(0);function dt(e){e=e|0;var t=0;t=h;h=h+e|0;h=h+15&-16;return t|0}function pt(){return h|0}function ht(e){e=e|0;h=e}function vt(e,t){e=e|0;t=t|0;h=e;v=t}function mt(e,t){e=e|0;t=t|0;if(!y){y=e;_=t}}function gt(e){e=e|0;A=e}function yt(){return A|0}function _t(){var e=0,t=0;ix(8104,8,400)|0;ix(8504,408,540)|0;e=9044;t=e+44|0;do{o[e>>2]=0;e=e+4|0}while((e|0)<(t|0));r[9088]=0;r[9089]=1;o[2273]=0;o[2274]=948;o[2275]=948;Fe(17,8104,g|0)|0;return}function bt(e){e=e|0;qt(e+948|0);return}function wt(e){e=Y(e);return((Ii(e)|0)&2147483647)>>>0>2139095040|0}function Et(e,t,n){e=e|0;t=t|0;n=n|0;e:do{if(!(o[e+(t<<3)+4>>2]|0)){if((t|2|0)==3?o[e+60>>2]|0:0){e=e+56|0;break}switch(t|0){case 0:case 2:case 4:case 5:{if(o[e+52>>2]|0){e=e+48|0;break e}break}default:{}}if(!(o[e+68>>2]|0)){e=(t|1|0)==5?948:n;break}else{e=e+64|0;break}}else e=e+(t<<3)|0}while(0);return e|0}function Dt(e){e=e|0;var t=0;t=qk(1e3)|0;St(e,(t|0)!=0,2456);o[2276]=(o[2276]|0)+1;ix(t|0,8104,1e3)|0;if(r[e+2>>0]|0){o[t+4>>2]=2;o[t+12>>2]=4}o[t+976>>2]=e;return t|0}function St(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0;i=h;h=h+16|0;r=i;if(!t){o[r>>2]=n;Lr(e,5,3197,r)}h=i;return}function Ct(){return Dt(956)|0}function kt(e){e=e|0;var t=0;t=$T(1e3)|0;Tt(t,e);St(o[e+976>>2]|0,1,2456);o[2276]=(o[2276]|0)+1;o[t+944>>2]=0;return t|0}function Tt(e,t){e=e|0;t=t|0;var n=0;ix(e|0,t|0,948)|0;Ur(e+948|0,t+948|0);n=e+960|0;e=t+960|0;t=n+40|0;do{o[n>>2]=o[e>>2];n=n+4|0;e=e+4|0}while((n|0)<(t|0));return}function xt(e){e=e|0;var t=0,n=0,r=0,i=0;t=e+944|0;n=o[t>>2]|0;if(n|0){At(n+948|0,e)|0;o[t>>2]=0}n=Ot(e)|0;if(n|0){t=0;do{o[(Pt(e,t)|0)+944>>2]=0;t=t+1|0}while((t|0)!=(n|0))}n=e+948|0;r=o[n>>2]|0;i=e+952|0;t=o[i>>2]|0;if((t|0)!=(r|0))o[i>>2]=t+(~((t+-4-r|0)>>>2)<<2);It(n);Gk(e);o[2276]=(o[2276]|0)+-1;return}function At(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0,a=0,l=0;r=o[e>>2]|0;l=e+4|0;n=o[l>>2]|0;u=n;e:do{if((r|0)==(n|0)){i=r;a=4}else{e=r;while(1){if((o[e>>2]|0)==(t|0)){i=e;a=4;break e}e=e+4|0;if((e|0)==(n|0)){e=0;break}}}}while(0);if((a|0)==4)if((i|0)!=(n|0)){r=i+4|0;e=u-r|0;t=e>>2;if(t){sx(i|0,r|0,e|0)|0;n=o[l>>2]|0}e=i+(t<<2)|0;if((n|0)==(e|0))e=1;else{o[l>>2]=n+(~((n+-4-e|0)>>>2)<<2);e=1}}else e=0;return e|0}function Ot(e){e=e|0;return(o[e+952>>2]|0)-(o[e+948>>2]|0)>>2|0}function Pt(e,t){e=e|0;t=t|0;var n=0;n=o[e+948>>2]|0;if((o[e+952>>2]|0)-n>>2>>>0>t>>>0)e=o[n+(t<<2)>>2]|0;else e=0;return e|0}function It(e){e=e|0;var t=0,n=0,r=0,i=0;r=h;h=h+32|0;t=r;i=o[e>>2]|0;n=(o[e+4>>2]|0)-i|0;if(((o[e+8>>2]|0)-i|0)>>>0>n>>>0){i=n>>2;Ni(t,i,i,e+8|0);Mi(e,t);Ri(t)}h=r;return}function Nt(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0,a=0,l=0,s=0,c=0;c=Ot(e)|0;do{if(c|0){if((o[(Pt(e,0)|0)+944>>2]|0)==(e|0)){if(!(At(e+948|0,t)|0))break;ix(t+400|0,8504,540)|0;o[t+944>>2]=0;Vt(e);break}a=o[(o[e+976>>2]|0)+12>>2]|0;l=e+948|0;s=(a|0)==0;n=0;u=0;do{r=o[(o[l>>2]|0)+(u<<2)>>2]|0;if((r|0)==(t|0))Vt(e);else{i=kt(r)|0;o[(o[l>>2]|0)+(n<<2)>>2]=i;o[i+944>>2]=e;if(!s)RA[a&15](r,i,e,n);n=n+1|0}u=u+1|0}while((u|0)!=(c|0));if(n>>>0>>0){s=e+948|0;l=e+952|0;a=n;n=o[l>>2]|0;do{u=(o[s>>2]|0)+(a<<2)|0;r=u+4|0;i=n-r|0;t=i>>2;if(!t)i=n;else{sx(u|0,r|0,i|0)|0;n=o[l>>2]|0;i=n}r=u+(t<<2)|0;if((i|0)!=(r|0)){n=i+(~((i+-4-r|0)>>>2)<<2)|0;o[l>>2]=n}a=a+1|0}while((a|0)!=(c|0))}}}while(0);return}function Mt(e){e=e|0;var t=0,n=0,i=0,u=0;Rt(e,(Ot(e)|0)==0,2491);Rt(e,(o[e+944>>2]|0)==0,2545);t=e+948|0;n=o[t>>2]|0;i=e+952|0;u=o[i>>2]|0;if((u|0)!=(n|0))o[i>>2]=u+(~((u+-4-n|0)>>>2)<<2);It(t);t=e+976|0;n=o[t>>2]|0;ix(e|0,8104,1e3)|0;if(r[n+2>>0]|0){o[e+4>>2]=2;o[e+12>>2]=4}o[t>>2]=n;return}function Rt(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0;i=h;h=h+16|0;r=i;if(!t){o[r>>2]=n;Cr(e,5,3197,r)}h=i;return}function Ft(){return o[2276]|0}function Lt(){var e=0;e=qk(20)|0;Bt((e|0)!=0,2592);o[2277]=(o[2277]|0)+1;o[e>>2]=o[239];o[e+4>>2]=o[240];o[e+8>>2]=o[241];o[e+12>>2]=o[242];o[e+16>>2]=o[243];return e|0}function Bt(e,t){e=e|0;t=t|0;var n=0,r=0;r=h;h=h+16|0;n=r;if(!e){o[n>>2]=t;Cr(0,5,3197,n)}h=r;return}function jt(e){e=e|0;Gk(e);o[2277]=(o[2277]|0)+-1;return}function Ut(e,t){e=e|0;t=t|0;var n=0;if(!t){n=0;t=0}else{Rt(e,(Ot(e)|0)==0,2629);n=1}o[e+964>>2]=t;o[e+988>>2]=n;return}function zt(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0;r=h;h=h+16|0;u=r+8|0;i=r+4|0;a=r;o[i>>2]=t;Rt(e,(o[t+944>>2]|0)==0,2709);Rt(e,(o[e+964>>2]|0)==0,2763);Wt(e);t=e+948|0;o[a>>2]=(o[t>>2]|0)+(n<<2);o[u>>2]=o[a>>2];Ht(t,u,i)|0;o[(o[i>>2]|0)+944>>2]=e;Vt(e);h=r;return}function Wt(e){e=e|0;var t=0,n=0,r=0,i=0,u=0,a=0,l=0;n=Ot(e)|0;if(n|0?(o[(Pt(e,0)|0)+944>>2]|0)!=(e|0):0){r=o[(o[e+976>>2]|0)+12>>2]|0;i=e+948|0;u=(r|0)==0;t=0;do{a=o[(o[i>>2]|0)+(t<<2)>>2]|0;l=kt(a)|0;o[(o[i>>2]|0)+(t<<2)>>2]=l;o[l+944>>2]=e;if(!u)RA[r&15](a,l,e,t);t=t+1|0}while((t|0)!=(n|0))}return}function Ht(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0,l=0,s=0,c=0,f=0,d=0,p=0,v=0,m=0,g=0,y=0,_=0;y=h;h=h+64|0;d=y+52|0;l=y+48|0;p=y+28|0;v=y+24|0;m=y+20|0;g=y;r=o[e>>2]|0;u=r;t=r+((o[t>>2]|0)-u>>2<<2)|0;r=e+4|0;i=o[r>>2]|0;a=e+8|0;do{if(i>>>0<(o[a>>2]|0)>>>0){if((t|0)==(i|0)){o[t>>2]=o[n>>2];o[r>>2]=(o[r>>2]|0)+4;break}Fi(e,t,i,t+4|0);if(t>>>0<=n>>>0)n=(o[r>>2]|0)>>>0>n>>>0?n+4|0:n;o[t>>2]=o[n>>2]}else{r=(i-u>>2)+1|0;i=Hr(e)|0;if(i>>>0>>0)UT(e);f=o[e>>2]|0;c=(o[a>>2]|0)-f|0;u=c>>1;Ni(g,c>>2>>>0>>1>>>0?u>>>0>>0?r:u:i,t-f>>2,e+8|0);f=g+8|0;r=o[f>>2]|0;u=g+12|0;c=o[u>>2]|0;a=c;s=r;do{if((r|0)==(c|0)){c=g+4|0;r=o[c>>2]|0;_=o[g>>2]|0;i=_;if(r>>>0<=_>>>0){r=a-i>>1;r=(r|0)==0?1:r;Ni(p,r,r>>>2,o[g+16>>2]|0);o[v>>2]=o[c>>2];o[m>>2]=o[f>>2];o[l>>2]=o[v>>2];o[d>>2]=o[m>>2];Bi(p,l,d);r=o[g>>2]|0;o[g>>2]=o[p>>2];o[p>>2]=r;r=p+4|0;_=o[c>>2]|0;o[c>>2]=o[r>>2];o[r>>2]=_;r=p+8|0;_=o[f>>2]|0;o[f>>2]=o[r>>2];o[r>>2]=_;r=p+12|0;_=o[u>>2]|0;o[u>>2]=o[r>>2];o[r>>2]=_;Ri(p);r=o[f>>2]|0;break}u=r;a=((u-i>>2)+1|0)/-2|0;l=r+(a<<2)|0;i=s-u|0;u=i>>2;if(u){sx(l|0,r|0,i|0)|0;r=o[c>>2]|0}_=l+(u<<2)|0;o[f>>2]=_;o[c>>2]=r+(a<<2);r=_}}while(0);o[r>>2]=o[n>>2];o[f>>2]=(o[f>>2]|0)+4;t=Li(e,g,t)|0;Ri(g)}}while(0);h=y;return t|0}function Vt(e){e=e|0;var t=0;do{t=e+984|0;if(r[t>>0]|0)break;r[t>>0]=1;s[e+504>>2]=Y(E);e=o[e+944>>2]|0}while((e|0)!=0);return}function qt(e){e=e|0;var t=0,n=0,r=0;n=o[e>>2]|0;r=n;if(n|0){e=e+4|0;t=o[e>>2]|0;if((t|0)!=(n|0))o[e>>2]=t+(~((t+-4-r|0)>>>2)<<2);KT(n)}return}function Gt(e){e=e|0;return o[e+944>>2]|0}function $t(e){e=e|0;Rt(e,(o[e+964>>2]|0)!=0,2832);Vt(e);return}function Yt(e){e=e|0;return(r[e+984>>0]|0)!=0|0}function Kt(e,t){e=e|0;t=t|0;if(iT(e,t,400)|0){ix(e|0,t|0,400)|0;Vt(e)}return}function Xt(e){e=e|0;var t=ft;t=Y(s[e+44>>2]);e=wt(t)|0;return Y(e?Y(0.0):t)}function Qt(e){e=e|0;var t=ft;t=Y(s[e+48>>2]);if(wt(t)|0)t=r[(o[e+976>>2]|0)+2>>0]|0?Y(1.0):Y(0.0);return Y(t)}function Jt(e,t){e=e|0;t=t|0;o[e+980>>2]=t;return}function Zt(e){e=e|0;return o[e+980>>2]|0}function en(e,t){e=e|0;t=t|0;var n=0;n=e+4|0;if((o[n>>2]|0)!=(t|0)){o[n>>2]=t;Vt(e)}return}function tn(e){e=e|0;return o[e+4>>2]|0}function nn(e,t){e=e|0;t=t|0;var n=0;n=e+8|0;if((o[n>>2]|0)!=(t|0)){o[n>>2]=t;Vt(e)}return}function rn(e){e=e|0;return o[e+8>>2]|0}function on(e,t){e=e|0;t=t|0;var n=0;n=e+12|0;if((o[n>>2]|0)!=(t|0)){o[n>>2]=t;Vt(e)}return}function un(e){e=e|0;return o[e+12>>2]|0}function an(e,t){e=e|0;t=t|0;var n=0;n=e+16|0;if((o[n>>2]|0)!=(t|0)){o[n>>2]=t;Vt(e)}return}function ln(e){e=e|0;return o[e+16>>2]|0}function sn(e,t){e=e|0;t=t|0;var n=0;n=e+20|0;if((o[n>>2]|0)!=(t|0)){o[n>>2]=t;Vt(e)}return}function cn(e){e=e|0;return o[e+20>>2]|0}function fn(e,t){e=e|0;t=t|0;var n=0;n=e+24|0;if((o[n>>2]|0)!=(t|0)){o[n>>2]=t;Vt(e)}return}function dn(e){e=e|0;return o[e+24>>2]|0}function pn(e,t){e=e|0;t=t|0;var n=0;n=e+28|0;if((o[n>>2]|0)!=(t|0)){o[n>>2]=t;Vt(e)}return}function hn(e){e=e|0;return o[e+28>>2]|0}function vn(e,t){e=e|0;t=t|0;var n=0;n=e+32|0;if((o[n>>2]|0)!=(t|0)){o[n>>2]=t;Vt(e)}return}function mn(e){e=e|0;return o[e+32>>2]|0}function gn(e,t){e=e|0;t=t|0;var n=0;n=e+36|0;if((o[n>>2]|0)!=(t|0)){o[n>>2]=t;Vt(e)}return}function yn(e){e=e|0;return o[e+36>>2]|0}function _n(e,t){e=e|0;t=Y(t);var n=0;n=e+40|0;if(Y(s[n>>2])!=t){s[n>>2]=t;Vt(e)}return}function bn(e,t){e=e|0;t=Y(t);var n=0;n=e+44|0;if(Y(s[n>>2])!=t){s[n>>2]=t;Vt(e)}return}function wn(e,t){e=e|0;t=Y(t);var n=0;n=e+48|0;if(Y(s[n>>2])!=t){s[n>>2]=t;Vt(e)}return}function En(e,t){e=e|0;t=Y(t);var n=0,r=0,i=0,u=0;u=wt(t)|0;n=(u^1)&1;r=e+52|0;i=e+56|0;if(!(u|Y(s[r>>2])==t?(o[i>>2]|0)==(n|0):0)){s[r>>2]=t;o[i>>2]=n;Vt(e)}return}function Dn(e,t){e=e|0;t=Y(t);var n=0,r=0;r=e+52|0;n=e+56|0;if(!(!(Y(s[r>>2])!=t)?(o[n>>2]|0)==2:0)){s[r>>2]=t;r=wt(t)|0;o[n>>2]=r?3:2;Vt(e)}return}function Sn(e,t){e=e|0;t=t|0;var n=0,r=0;r=t+52|0;n=o[r+4>>2]|0;t=e;o[t>>2]=o[r>>2];o[t+4>>2]=n;return}function Cn(e,t,n){e=e|0;t=t|0;n=Y(n);var r=0,i=0,u=0;u=wt(n)|0;r=(u^1)&1;i=e+132+(t<<3)|0;t=e+132+(t<<3)+4|0;if(!(u|Y(s[i>>2])==n?(o[t>>2]|0)==(r|0):0)){s[i>>2]=n;o[t>>2]=r;Vt(e)}return}function kn(e,t,n){e=e|0;t=t|0;n=Y(n);var r=0,i=0,u=0;u=wt(n)|0;r=u?0:2;i=e+132+(t<<3)|0;t=e+132+(t<<3)+4|0;if(!(u|Y(s[i>>2])==n?(o[t>>2]|0)==(r|0):0)){s[i>>2]=n;o[t>>2]=r;Vt(e)}return}function Tn(e,t,n){e=e|0;t=t|0;n=n|0;var r=0;r=t+132+(n<<3)|0;t=o[r+4>>2]|0;n=e;o[n>>2]=o[r>>2];o[n+4>>2]=t;return}function xn(e,t,n){e=e|0;t=t|0;n=Y(n);var r=0,i=0,u=0;u=wt(n)|0;r=(u^1)&1;i=e+60+(t<<3)|0;t=e+60+(t<<3)+4|0;if(!(u|Y(s[i>>2])==n?(o[t>>2]|0)==(r|0):0)){s[i>>2]=n;o[t>>2]=r;Vt(e)}return}function An(e,t,n){e=e|0;t=t|0;n=Y(n);var r=0,i=0,u=0;u=wt(n)|0;r=u?0:2;i=e+60+(t<<3)|0;t=e+60+(t<<3)+4|0;if(!(u|Y(s[i>>2])==n?(o[t>>2]|0)==(r|0):0)){s[i>>2]=n;o[t>>2]=r;Vt(e)}return}function On(e,t,n){e=e|0;t=t|0;n=n|0;var r=0;r=t+60+(n<<3)|0;t=o[r+4>>2]|0;n=e;o[n>>2]=o[r>>2];o[n+4>>2]=t;return}function Pn(e,t){e=e|0;t=t|0;var n=0;n=e+60+(t<<3)+4|0;if((o[n>>2]|0)!=3){s[e+60+(t<<3)>>2]=Y(E);o[n>>2]=3;Vt(e)}return}function In(e,t,n){e=e|0;t=t|0;n=Y(n);var r=0,i=0,u=0;u=wt(n)|0;r=(u^1)&1;i=e+204+(t<<3)|0;t=e+204+(t<<3)+4|0;if(!(u|Y(s[i>>2])==n?(o[t>>2]|0)==(r|0):0)){s[i>>2]=n;o[t>>2]=r;Vt(e)}return}function Nn(e,t,n){e=e|0;t=t|0;n=Y(n);var r=0,i=0,u=0;u=wt(n)|0;r=u?0:2;i=e+204+(t<<3)|0;t=e+204+(t<<3)+4|0;if(!(u|Y(s[i>>2])==n?(o[t>>2]|0)==(r|0):0)){s[i>>2]=n;o[t>>2]=r;Vt(e)}return}function Mn(e,t,n){e=e|0;t=t|0;n=n|0;var r=0;r=t+204+(n<<3)|0;t=o[r+4>>2]|0;n=e;o[n>>2]=o[r>>2];o[n+4>>2]=t;return}function Rn(e,t,n){e=e|0;t=t|0;n=Y(n);var r=0,i=0,u=0;u=wt(n)|0;r=(u^1)&1;i=e+276+(t<<3)|0;t=e+276+(t<<3)+4|0;if(!(u|Y(s[i>>2])==n?(o[t>>2]|0)==(r|0):0)){s[i>>2]=n;o[t>>2]=r;Vt(e)}return}function Fn(e,t){e=e|0;t=t|0;return Y(s[e+276+(t<<3)>>2])}function Ln(e,t){e=e|0;t=Y(t);var n=0,r=0,i=0,u=0;u=wt(t)|0;n=(u^1)&1;r=e+348|0;i=e+352|0;if(!(u|Y(s[r>>2])==t?(o[i>>2]|0)==(n|0):0)){s[r>>2]=t;o[i>>2]=n;Vt(e)}return}function Bn(e,t){e=e|0;t=Y(t);var n=0,r=0;r=e+348|0;n=e+352|0;if(!(!(Y(s[r>>2])!=t)?(o[n>>2]|0)==2:0)){s[r>>2]=t;r=wt(t)|0;o[n>>2]=r?3:2;Vt(e)}return}function jn(e){e=e|0;var t=0;t=e+352|0;if((o[t>>2]|0)!=3){s[e+348>>2]=Y(E);o[t>>2]=3;Vt(e)}return}function Un(e,t){e=e|0;t=t|0;var n=0,r=0;r=t+348|0;n=o[r+4>>2]|0;t=e;o[t>>2]=o[r>>2];o[t+4>>2]=n;return}function zn(e,t){e=e|0;t=Y(t);var n=0,r=0,i=0,u=0;u=wt(t)|0;n=(u^1)&1;r=e+356|0;i=e+360|0;if(!(u|Y(s[r>>2])==t?(o[i>>2]|0)==(n|0):0)){s[r>>2]=t;o[i>>2]=n;Vt(e)}return}function Wn(e,t){e=e|0;t=Y(t);var n=0,r=0;r=e+356|0;n=e+360|0;if(!(!(Y(s[r>>2])!=t)?(o[n>>2]|0)==2:0)){s[r>>2]=t;r=wt(t)|0;o[n>>2]=r?3:2;Vt(e)}return}function Hn(e){e=e|0;var t=0;t=e+360|0;if((o[t>>2]|0)!=3){s[e+356>>2]=Y(E);o[t>>2]=3;Vt(e)}return}function Vn(e,t){e=e|0;t=t|0;var n=0,r=0;r=t+356|0;n=o[r+4>>2]|0;t=e;o[t>>2]=o[r>>2];o[t+4>>2]=n;return}function qn(e,t){e=e|0;t=Y(t);var n=0,r=0,i=0,u=0;u=wt(t)|0;n=(u^1)&1;r=e+364|0;i=e+368|0;if(!(u|Y(s[r>>2])==t?(o[i>>2]|0)==(n|0):0)){s[r>>2]=t;o[i>>2]=n;Vt(e)}return}function Gn(e,t){e=e|0;t=Y(t);var n=0,r=0,i=0,u=0;u=wt(t)|0;n=u?0:2;r=e+364|0;i=e+368|0;if(!(u|Y(s[r>>2])==t?(o[i>>2]|0)==(n|0):0)){s[r>>2]=t;o[i>>2]=n;Vt(e)}return}function $n(e,t){e=e|0;t=t|0;var n=0,r=0;r=t+364|0;n=o[r+4>>2]|0;t=e;o[t>>2]=o[r>>2];o[t+4>>2]=n;return}function Yn(e,t){e=e|0;t=Y(t);var n=0,r=0,i=0,u=0;u=wt(t)|0;n=(u^1)&1;r=e+372|0;i=e+376|0;if(!(u|Y(s[r>>2])==t?(o[i>>2]|0)==(n|0):0)){s[r>>2]=t;o[i>>2]=n;Vt(e)}return}function Kn(e,t){e=e|0;t=Y(t);var n=0,r=0,i=0,u=0;u=wt(t)|0;n=u?0:2;r=e+372|0;i=e+376|0;if(!(u|Y(s[r>>2])==t?(o[i>>2]|0)==(n|0):0)){s[r>>2]=t;o[i>>2]=n;Vt(e)}return}function Xn(e,t){e=e|0;t=t|0;var n=0,r=0;r=t+372|0;n=o[r+4>>2]|0;t=e;o[t>>2]=o[r>>2];o[t+4>>2]=n;return}function Qn(e,t){e=e|0;t=Y(t);var n=0,r=0,i=0,u=0;u=wt(t)|0;n=(u^1)&1;r=e+380|0;i=e+384|0;if(!(u|Y(s[r>>2])==t?(o[i>>2]|0)==(n|0):0)){s[r>>2]=t;o[i>>2]=n;Vt(e)}return}function Jn(e,t){e=e|0;t=Y(t);var n=0,r=0,i=0,u=0;u=wt(t)|0;n=u?0:2;r=e+380|0;i=e+384|0;if(!(u|Y(s[r>>2])==t?(o[i>>2]|0)==(n|0):0)){s[r>>2]=t;o[i>>2]=n;Vt(e)}return}function Zn(e,t){e=e|0;t=t|0;var n=0,r=0;r=t+380|0;n=o[r+4>>2]|0;t=e;o[t>>2]=o[r>>2];o[t+4>>2]=n;return}function er(e,t){e=e|0;t=Y(t);var n=0,r=0,i=0,u=0;u=wt(t)|0;n=(u^1)&1;r=e+388|0;i=e+392|0;if(!(u|Y(s[r>>2])==t?(o[i>>2]|0)==(n|0):0)){s[r>>2]=t;o[i>>2]=n;Vt(e)}return}function tr(e,t){e=e|0;t=Y(t);var n=0,r=0,i=0,u=0;u=wt(t)|0;n=u?0:2;r=e+388|0;i=e+392|0;if(!(u|Y(s[r>>2])==t?(o[i>>2]|0)==(n|0):0)){s[r>>2]=t;o[i>>2]=n;Vt(e)}return}function nr(e,t){e=e|0;t=t|0;var n=0,r=0;r=t+388|0;n=o[r+4>>2]|0;t=e;o[t>>2]=o[r>>2];o[t+4>>2]=n;return}function rr(e,t){e=e|0;t=Y(t);var n=0;n=e+396|0;if(Y(s[n>>2])!=t){s[n>>2]=t;Vt(e)}return}function ir(e){e=e|0;return Y(s[e+396>>2])}function or(e){e=e|0;return Y(s[e+400>>2])}function ur(e){e=e|0;return Y(s[e+404>>2])}function ar(e){e=e|0;return Y(s[e+408>>2])}function lr(e){e=e|0;return Y(s[e+412>>2])}function sr(e){e=e|0;return Y(s[e+416>>2])}function cr(e){e=e|0;return Y(s[e+420>>2])}function fr(e,t){e=e|0;t=t|0;Rt(e,(t|0)<6,2918);switch(t|0){case 0:{t=(o[e+496>>2]|0)==2?5:4;break}case 2:{t=(o[e+496>>2]|0)==2?4:5;break}default:{}}return Y(s[e+424+(t<<2)>>2])}function dr(e,t){e=e|0;t=t|0;Rt(e,(t|0)<6,2918);switch(t|0){case 0:{t=(o[e+496>>2]|0)==2?5:4;break}case 2:{t=(o[e+496>>2]|0)==2?4:5;break}default:{}}return Y(s[e+448+(t<<2)>>2])}function pr(e,t){e=e|0;t=t|0;Rt(e,(t|0)<6,2918);switch(t|0){case 0:{t=(o[e+496>>2]|0)==2?5:4;break}case 2:{t=(o[e+496>>2]|0)==2?4:5;break}default:{}}return Y(s[e+472+(t<<2)>>2])}function hr(e,t){e=e|0;t=t|0;var n=0,r=ft;n=o[e+4>>2]|0;if((n|0)==(o[t+4>>2]|0)){if(!n)e=1;else{r=Y(s[e>>2]);e=Y(P(Y(r-Y(s[t>>2]))))>2]=0;o[i+4>>2]=0;o[i+8>>2]=0;je(i|0,e|0,t|0,0);Cr(e,3,(r[i+11>>0]|0)<0?o[i>>2]|0:i,n);XT(i);h=n;return}function yr(e,t,n,r){e=Y(e);t=Y(t);n=n|0;r=r|0;var i=ft;e=Y(e*t);i=Y(LT(e,Y(1.0)));do{if(!(vr(i,Y(0.0))|0)){e=Y(e-i);if(vr(i,Y(1.0))|0){e=Y(e+Y(1.0));break}if(n){e=Y(e+Y(1.0));break}if(!r){if(i>Y(.5))i=Y(1.0);else{r=vr(i,Y(.5))|0;i=r?Y(1.0):Y(0.0)}e=Y(e+i)}}else e=Y(e-i)}while(0);return Y(e/t)}function _r(e,t,n,r,i,o,u,a,l,c,f,d,p){e=e|0;t=Y(t);n=n|0;r=Y(r);i=i|0;o=Y(o);u=u|0;a=Y(a);l=Y(l);c=Y(c);f=Y(f);d=Y(d);p=p|0;var h=0,v=ft,m=ft,g=ft,y=ft,_=ft,b=ft;if(l>2]),v!=Y(0.0)):0){g=Y(yr(t,v,0,0));y=Y(yr(r,v,0,0));m=Y(yr(o,v,0,0));v=Y(yr(a,v,0,0))}else{m=o;g=t;v=a;y=r}if((i|0)==(e|0))h=vr(m,g)|0;else h=0;if((u|0)==(n|0))p=vr(v,y)|0;else p=0;if((!h?(_=Y(t-f),!(br(e,_,l)|0)):0)?!(wr(e,_,i,l)|0):0)h=Er(e,_,i,o,l)|0;else h=1;if((!p?(b=Y(r-d),!(br(n,b,c)|0)):0)?!(wr(n,b,u,c)|0):0)p=Er(n,b,u,a,c)|0;else p=1;p=h&p}return p|0}function br(e,t,n){e=e|0;t=Y(t);n=Y(n);if((e|0)==1)e=vr(t,n)|0;else e=0;return e|0}function wr(e,t,n,r){e=e|0;t=Y(t);n=n|0;r=Y(r);if((e|0)==2&(n|0)==0){if(!(t>=r))e=vr(t,r)|0;else e=1}else e=0;return e|0}function Er(e,t,n,r,i){e=e|0;t=Y(t);n=n|0;r=Y(r);i=Y(i);if((e|0)==2&(n|0)==2&r>t){if(!(i<=t))e=vr(t,i)|0;else e=1}else e=0;return e|0}function Dr(e,t,n,i,u,a,l,f,d,p,v){e=e|0;t=Y(t);n=Y(n);i=i|0;u=u|0;a=a|0;l=Y(l);f=Y(f);d=d|0;p=p|0;v=v|0;var m=0,g=0,y=0,_=0,b=ft,w=ft,E=0,D=0,S=0,C=0,k=0,T=0,x=0,A=0,O=0,P=0,I=0,N=ft,M=ft,R=ft,F=0.0,L=0.0;I=h;h=h+160|0;A=I+152|0;x=I+120|0;T=I+104|0;S=I+72|0;_=I+56|0;k=I+8|0;D=I;C=(o[2279]|0)+1|0;o[2279]=C;O=e+984|0;if((r[O>>0]|0)!=0?(o[e+512>>2]|0)!=(o[2278]|0):0)E=4;else if((o[e+516>>2]|0)==(i|0))P=0;else E=4;if((E|0)==4){o[e+520>>2]=0;o[e+924>>2]=-1;o[e+928>>2]=-1;s[e+932>>2]=Y(-1.0);s[e+936>>2]=Y(-1.0);P=1}e:do{if(!(o[e+964>>2]|0)){if(d){m=e+916|0;if(!(vr(Y(s[m>>2]),t)|0)){E=21;break}if(!(vr(Y(s[e+920>>2]),n)|0)){E=21;break}if((o[e+924>>2]|0)!=(u|0)){E=21;break}m=(o[e+928>>2]|0)==(a|0)?m:0;E=22;break}y=o[e+520>>2]|0;if(!y)E=21;else{g=0;while(1){m=e+524+(g*24|0)|0;if(((vr(Y(s[m>>2]),t)|0?vr(Y(s[e+524+(g*24|0)+4>>2]),n)|0:0)?(o[e+524+(g*24|0)+8>>2]|0)==(u|0):0)?(o[e+524+(g*24|0)+12>>2]|0)==(a|0):0){E=22;break e}g=g+1|0;if(g>>>0>=y>>>0){E=21;break}}}}else{b=Y(Sr(e,2,l));w=Y(Sr(e,0,l));m=e+916|0;R=Y(s[m>>2]);M=Y(s[e+920>>2]);N=Y(s[e+932>>2]);if(!(_r(u,t,a,n,o[e+924>>2]|0,R,o[e+928>>2]|0,M,N,Y(s[e+936>>2]),b,w,v)|0)){y=o[e+520>>2]|0;if(!y)E=21;else{g=0;while(1){m=e+524+(g*24|0)|0;N=Y(s[m>>2]);M=Y(s[e+524+(g*24|0)+4>>2]);R=Y(s[e+524+(g*24|0)+16>>2]);if(_r(u,t,a,n,o[e+524+(g*24|0)+8>>2]|0,N,o[e+524+(g*24|0)+12>>2]|0,M,R,Y(s[e+524+(g*24|0)+20>>2]),b,w,v)|0){E=22;break e}g=g+1|0;if(g>>>0>=y>>>0){E=21;break}}}}else E=22}}while(0);do{if((E|0)==21){if(!(r[11697]|0)){m=0;E=31}else{m=0;E=28}}else if((E|0)==22){g=(r[11697]|0)!=0;if(!((m|0)!=0&(P^1)))if(g){E=28;break}else{E=31;break}_=m+16|0;o[e+908>>2]=o[_>>2];y=m+20|0;o[e+912>>2]=o[y>>2];if(!((r[11698]|0)==0|g^1)){o[D>>2]=kr(C)|0;o[D+4>>2]=C;Cr(e,4,2972,D);g=o[e+972>>2]|0;if(g|0)hA[g&127](e);u=Tr(u,d)|0;a=Tr(a,d)|0;L=+Y(s[_>>2]);F=+Y(s[y>>2]);o[k>>2]=u;o[k+4>>2]=a;c[k+8>>3]=+t;c[k+16>>3]=+n;c[k+24>>3]=L;c[k+32>>3]=F;o[k+40>>2]=p;Cr(e,4,2989,k)}}}while(0);if((E|0)==28){g=kr(C)|0;o[_>>2]=g;o[_+4>>2]=C;o[_+8>>2]=P?3047:11699;Cr(e,4,3038,_);g=o[e+972>>2]|0;if(g|0)hA[g&127](e);k=Tr(u,d)|0;E=Tr(a,d)|0;o[S>>2]=k;o[S+4>>2]=E;c[S+8>>3]=+t;c[S+16>>3]=+n;o[S+24>>2]=p;Cr(e,4,3049,S);E=31}if((E|0)==31){xr(e,t,n,i,u,a,l,f,d,v);if(r[11697]|0){g=o[2279]|0;k=kr(g)|0;o[T>>2]=k;o[T+4>>2]=g;o[T+8>>2]=P?3047:11699;Cr(e,4,3083,T);g=o[e+972>>2]|0;if(g|0)hA[g&127](e);k=Tr(u,d)|0;T=Tr(a,d)|0;F=+Y(s[e+908>>2]);L=+Y(s[e+912>>2]);o[x>>2]=k;o[x+4>>2]=T;c[x+8>>3]=F;c[x+16>>3]=L;o[x+24>>2]=p;Cr(e,4,3092,x)}o[e+516>>2]=i;if(!m){g=e+520|0;m=o[g>>2]|0;if((m|0)==16){if(r[11697]|0)Cr(e,4,3124,A);o[g>>2]=0;m=0}if(d)m=e+916|0;else{o[g>>2]=m+1;m=e+524+(m*24|0)|0}s[m>>2]=t;s[m+4>>2]=n;o[m+8>>2]=u;o[m+12>>2]=a;o[m+16>>2]=o[e+908>>2];o[m+20>>2]=o[e+912>>2];m=0}}if(d){o[e+416>>2]=o[e+908>>2];o[e+420>>2]=o[e+912>>2];r[e+985>>0]=1;r[O>>0]=0}o[2279]=(o[2279]|0)+-1;o[e+512>>2]=o[2278];h=I;return P|(m|0)==0|0}function Sr(e,t,n){e=e|0;t=t|0;n=Y(n);var r=ft;r=Y(Vr(e,t,n));return Y(r+Y(qr(e,t,n)))}function Cr(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0,u=0;u=h;h=h+16|0;i=u;o[i>>2]=r;if(!e)r=0;else r=o[e+976>>2]|0;Br(r,e,t,n,i);h=u;return}function kr(e){e=e|0;return(e>>>0>60?3201:3201+(60-e)|0)|0}function Tr(e,t){e=e|0;t=t|0;var n=0,r=0,i=0;i=h;h=h+32|0;n=i+12|0;r=i;o[n>>2]=o[254];o[n+4>>2]=o[255];o[n+8>>2]=o[256];o[r>>2]=o[257];o[r+4>>2]=o[258];o[r+8>>2]=o[259];if((e|0)>2)e=11699;else e=o[(t?r:n)+(e<<2)>>2]|0;h=i;return e|0}function xr(e,t,n,i,a,l,c,f,p,v){e=e|0;t=Y(t);n=Y(n);i=i|0;a=a|0;l=l|0;c=Y(c);f=Y(f);p=p|0;v=v|0;var m=0,g=0,y=0,_=0,b=ft,w=ft,E=ft,D=ft,S=ft,C=ft,k=ft,T=0,x=0,A=0,O=ft,P=ft,I=0,N=ft,M=0,R=0,F=0,L=0,B=0,j=0,U=0,z=0,W=0,H=0,V=0,q=0,G=0,$=0,K=0,X=0,Q=0,J=0,Z=ft,ee=ft,te=ft,ne=ft,re=ft,ie=0,oe=0,ue=0,ae=0,le=0,se=ft,ce=ft,fe=ft,de=ft,pe=ft,he=ft,ve=0,me=ft,ge=ft,ye=ft,_e=ft,be=ft,we=ft,Ee=0,De=0,Se=ft,Ce=ft,ke=0,Te=0,xe=0,Ae=0,Oe=ft,Pe=0,Ie=0,Ne=0,Me=0,Re=0,Fe=0,Le=0,Be=ft,je=0,Ue=0;Le=h;h=h+16|0;ie=Le+12|0;oe=Le+8|0;ue=Le+4|0;ae=Le;Rt(e,(a|0)==0|(wt(t)|0)^1,3326);Rt(e,(l|0)==0|(wt(n)|0)^1,3406);Ie=Yr(e,i)|0;o[e+496>>2]=Ie;Re=Kr(2,Ie)|0;Fe=Kr(0,Ie)|0;s[e+440>>2]=Y(Vr(e,Re,c));s[e+444>>2]=Y(qr(e,Re,c));s[e+428>>2]=Y(Vr(e,Fe,c));s[e+436>>2]=Y(qr(e,Fe,c));s[e+464>>2]=Y(Xr(e,Re));s[e+468>>2]=Y(Qr(e,Re));s[e+452>>2]=Y(Xr(e,Fe));s[e+460>>2]=Y(Qr(e,Fe));s[e+488>>2]=Y(Jr(e,Re,c));s[e+492>>2]=Y(Zr(e,Re,c));s[e+476>>2]=Y(Jr(e,Fe,c));s[e+484>>2]=Y(Zr(e,Fe,c));do{if(!(o[e+964>>2]|0)){Ne=e+948|0;Me=(o[e+952>>2]|0)-(o[Ne>>2]|0)>>2;if(!Me){ti(e,t,n,a,l,c,f);break}if(!p?ni(e,t,n,a,l,c,f)|0:0)break;Wt(e);X=e+508|0;r[X>>0]=0;Re=Kr(o[e+4>>2]|0,Ie)|0;Fe=ri(Re,Ie)|0;Pe=Gr(Re)|0;Q=o[e+8>>2]|0;Te=e+28|0;J=(o[Te>>2]|0)!=0;be=Pe?c:f;Se=Pe?f:c;Z=Y(ii(e,Re,c));ee=Y(oi(e,Re,c));b=Y(ii(e,Fe,c));we=Y(ui(e,Re,c));Ce=Y(ui(e,Fe,c));A=Pe?a:l;ke=Pe?l:a;Oe=Pe?we:Ce;S=Pe?Ce:we;_e=Y(Sr(e,2,c));D=Y(Sr(e,0,c));w=Y(Y(Nr(e+364|0,c))-Oe);E=Y(Y(Nr(e+380|0,c))-Oe);C=Y(Y(Nr(e+372|0,f))-S);k=Y(Y(Nr(e+388|0,f))-S);te=Pe?w:C;ne=Pe?E:k;_e=Y(t-_e);t=Y(_e-Oe);if(wt(t)|0)Oe=t;else Oe=Y(NT(Y(RT(t,E)),w));ge=Y(n-D);t=Y(ge-S);if(wt(t)|0)ye=t;else ye=Y(NT(Y(RT(t,k)),C));w=Pe?Oe:ye;me=Pe?ye:Oe;e:do{if((A|0)==1){i=0;g=0;while(1){m=Pt(e,g)|0;if(!i){if(Y(li(m))>Y(0.0)?Y(si(m))>Y(0.0):0)i=m;else i=0}else if(ai(m)|0){_=0;break e}g=g+1|0;if(g>>>0>=Me>>>0){_=i;break}}}else _=0}while(0);T=_+500|0;x=_+504|0;i=0;m=0;t=Y(0.0);y=0;do{g=o[(o[Ne>>2]|0)+(y<<2)>>2]|0;if((o[g+36>>2]|0)==1){ci(g);r[g+985>>0]=1;r[g+984>>0]=0}else{Pr(g);if(p)Mr(g,Yr(g,Ie)|0,w,me,Oe);do{if((o[g+24>>2]|0)!=1){if((g|0)==(_|0)){o[T>>2]=o[2278];s[x>>2]=Y(0.0);break}else{fi(e,g,Oe,a,ye,Oe,ye,l,Ie,v);break}}else{if(m|0)o[m+960>>2]=g;o[g+960>>2]=0;m=g;i=(i|0)==0?g:i}}while(0);he=Y(s[g+504>>2]);t=Y(t+Y(he+Y(Sr(g,Re,Oe))))}y=y+1|0}while((y|0)!=(Me|0));F=t>w;ve=J&((A|0)==2&F)?1:A;M=(ke|0)==1;B=M&(p^1);j=(ve|0)==1;U=(ve|0)==2;z=976+(Re<<2)|0;W=(ke|2|0)==2;$=M&(J^1);H=1040+(Fe<<2)|0;V=1040+(Re<<2)|0;q=976+(Fe<<2)|0;G=(ke|0)!=1;F=J&((A|0)!=0&F);R=e+976|0;M=M^1;t=w;I=0;L=0;he=Y(0.0);re=Y(0.0);while(1){e:do{if(I>>>0>>0){x=o[Ne>>2]|0;y=0;k=Y(0.0);C=Y(0.0);E=Y(0.0);w=Y(0.0);g=0;m=0;_=I;while(1){T=o[x+(_<<2)>>2]|0;if((o[T+36>>2]|0)!=1?(o[T+940>>2]=L,(o[T+24>>2]|0)!=1):0){D=Y(Sr(T,Re,Oe));K=o[z>>2]|0;n=Y(Nr(T+380+(K<<3)|0,be));S=Y(s[T+504>>2]);n=Y(RT(n,S));n=Y(NT(Y(Nr(T+364+(K<<3)|0,be)),n));if(J&(y|0)!=0&Y(D+Y(C+n))>t){l=y;D=k;A=_;break e}D=Y(D+n);n=Y(C+D);D=Y(k+D);if(ai(T)|0){E=Y(E+Y(li(T)));w=Y(w-Y(S*Y(si(T))))}if(m|0)o[m+960>>2]=T;o[T+960>>2]=0;y=y+1|0;m=T;g=(g|0)==0?T:g}else{D=k;n=C}_=_+1|0;if(_>>>0>>0){k=D;C=n}else{l=y;A=_;break}}}else{l=0;D=Y(0.0);E=Y(0.0);w=Y(0.0);g=0;A=I}}while(0);K=E>Y(0.0)&EY(0.0)&wne&((wt(ne)|0)^1))){if(!(r[(o[R>>2]|0)+3>>0]|0)){if(!(O==Y(0.0))?!(Y(li(e))==Y(0.0)):0){K=53;break}t=D;K=53}else K=51}else{t=ne;K=51}}else{t=te;K=51}}else K=51}while(0);if((K|0)==51){K=0;if(wt(t)|0)K=53;else{P=Y(t-D);N=t}}if((K|0)==53){K=0;if(D>2]|0;_=PY(0.0);C=Y(P/O);E=Y(0.0);D=Y(0.0);t=Y(0.0);m=g;do{n=Y(Nr(m+380+(y<<3)|0,be));w=Y(Nr(m+364+(y<<3)|0,be));w=Y(RT(n,Y(NT(w,Y(s[m+504>>2])))));if(_){n=Y(w*Y(si(m)));if(n!=Y(-0.0)?(Be=Y(w-Y(S*n)),se=Y(di(m,Re,Be,N,Oe)),Be!=se):0){E=Y(E-Y(se-w));t=Y(t+n)}}else if((T?(ce=Y(li(m)),ce!=Y(0.0)):0)?(Be=Y(w+Y(C*ce)),fe=Y(di(m,Re,Be,N,Oe)),Be!=fe):0){E=Y(E-Y(fe-w));D=Y(D-ce)}m=o[m+960>>2]|0}while((m|0)!=0);t=Y(k+t);w=Y(P+E);if(!le){S=Y(O+D);_=o[z>>2]|0;T=wY(0.0);S=Y(w/S);t=Y(0.0);do{Be=Y(Nr(g+380+(_<<3)|0,be));E=Y(Nr(g+364+(_<<3)|0,be));E=Y(RT(Be,Y(NT(E,Y(s[g+504>>2])))));if(T){Be=Y(E*Y(si(g)));w=Y(-Be);if(Be!=Y(-0.0)){Be=Y(C*w);w=Y(di(g,Re,Y(E+(x?w:Be)),N,Oe))}else w=E}else if(y?(de=Y(li(g)),de!=Y(0.0)):0)w=Y(di(g,Re,Y(E+Y(S*de)),N,Oe));else w=E;t=Y(t-Y(w-E));D=Y(Sr(g,Re,Oe));n=Y(Sr(g,Fe,Oe));w=Y(w+D);s[oe>>2]=w;o[ae>>2]=1;E=Y(s[g+396>>2]);e:do{if(wt(E)|0){m=wt(me)|0;do{if(!m){if(F|(Ir(g,Fe,me)|0|M))break;if((pi(e,g)|0)!=4)break;if((o[(hi(g,Fe)|0)+4>>2]|0)==3)break;if((o[(vi(g,Fe)|0)+4>>2]|0)==3)break;s[ie>>2]=me;o[ue>>2]=1;break e}}while(0);if(Ir(g,Fe,me)|0){m=o[g+992+(o[q>>2]<<2)>>2]|0;Be=Y(n+Y(Nr(m,me)));s[ie>>2]=Be;m=G&(o[m+4>>2]|0)==2;o[ue>>2]=((wt(Be)|0|m)^1)&1;break}else{s[ie>>2]=me;o[ue>>2]=m?0:2;break}}else{Be=Y(w-D);O=Y(Be/E);Be=Y(E*Be);o[ue>>2]=1;s[ie>>2]=Y(n+(Pe?O:Be))}}while(0);mi(g,Re,N,Oe,ae,oe);mi(g,Fe,me,Oe,ue,ie);do{if(!(Ir(g,Fe,me)|0)?(pi(e,g)|0)==4:0){if((o[(hi(g,Fe)|0)+4>>2]|0)==3){m=0;break}m=(o[(vi(g,Fe)|0)+4>>2]|0)!=3}else m=0}while(0);Be=Y(s[oe>>2]);O=Y(s[ie>>2]);je=o[ae>>2]|0;Ue=o[ue>>2]|0;Dr(g,Pe?Be:O,Pe?O:Be,Ie,Pe?je:Ue,Pe?Ue:je,Oe,ye,p&(m^1),3488,v)|0;r[X>>0]=r[X>>0]|r[g+508>>0];g=o[g+960>>2]|0}while((g|0)!=0)}else t=Y(0.0)}else t=Y(0.0);t=Y(P+t);Ue=t>0]=Ue|u[X>>0];if(U&t>Y(0.0)){m=o[z>>2]|0;if((o[e+364+(m<<3)+4>>2]|0)!=0?(pe=Y(Nr(e+364+(m<<3)|0,be)),pe>=Y(0.0)):0)w=Y(NT(Y(0.0),Y(pe-Y(N-t))));else w=Y(0.0)}else w=t;T=I>>>0>>0;if(T){_=o[Ne>>2]|0;y=I;m=0;do{g=o[_+(y<<2)>>2]|0;if(!(o[g+24>>2]|0)){m=((o[(hi(g,Re)|0)+4>>2]|0)==3&1)+m|0;m=m+((o[(vi(g,Re)|0)+4>>2]|0)==3&1)|0}y=y+1|0}while((y|0)!=(A|0));if(m){D=Y(0.0);n=Y(0.0)}else K=101}else K=101;e:do{if((K|0)==101){K=0;switch(Q|0){case 1:{m=0;D=Y(w*Y(.5));n=Y(0.0);break e}case 2:{m=0;D=w;n=Y(0.0);break e}case 3:{if(l>>>0<=1){m=0;D=Y(0.0);n=Y(0.0);break e}n=Y((l+-1|0)>>>0);m=0;D=Y(0.0);n=Y(Y(NT(w,Y(0.0)))/n);break e}case 5:{n=Y(w/Y((l+1|0)>>>0));m=0;D=n;break e}case 4:{n=Y(w/Y(l>>>0));m=0;D=Y(n*Y(.5));break e}default:{m=0;D=Y(0.0);n=Y(0.0);break e}}}}while(0);t=Y(Z+D);if(T){E=Y(w/Y(m|0));y=o[Ne>>2]|0;g=I;w=Y(0.0);do{m=o[y+(g<<2)>>2]|0;e:do{if((o[m+36>>2]|0)!=1){switch(o[m+24>>2]|0){case 1:{if(gi(m,Re)|0){if(!p)break e;Be=Y(yi(m,Re,N));Be=Y(Be+Y(Xr(e,Re)));Be=Y(Be+Y(Vr(m,Re,Oe)));s[m+400+(o[V>>2]<<2)>>2]=Be;break e}break}case 0:{Ue=(o[(hi(m,Re)|0)+4>>2]|0)==3;Be=Y(E+t);t=Ue?Be:t;if(p){Ue=m+400+(o[V>>2]<<2)|0;s[Ue>>2]=Y(t+Y(s[Ue>>2]))}Ue=(o[(vi(m,Re)|0)+4>>2]|0)==3;Be=Y(E+t);t=Ue?Be:t;if(B){Be=Y(n+Y(Sr(m,Re,Oe)));w=me;t=Y(t+Y(Be+Y(s[m+504>>2])));break e}else{t=Y(t+Y(n+Y(_i(m,Re,Oe))));w=Y(NT(w,Y(_i(m,Fe,Oe))));break e}}default:{}}if(p){Be=Y(D+Y(Xr(e,Re)));Ue=m+400+(o[V>>2]<<2)|0;s[Ue>>2]=Y(Be+Y(s[Ue>>2]))}}}while(0);g=g+1|0}while((g|0)!=(A|0))}else w=Y(0.0);n=Y(ee+t);if(W)D=Y(Y(di(e,Fe,Y(Ce+w),Se,c))-Ce);else D=me;E=Y(Y(di(e,Fe,Y(Ce+($?me:w)),Se,c))-Ce);if(T&p){g=I;do{y=o[(o[Ne>>2]|0)+(g<<2)>>2]|0;do{if((o[y+36>>2]|0)!=1){if((o[y+24>>2]|0)==1){if(gi(y,Fe)|0){Be=Y(yi(y,Fe,me));Be=Y(Be+Y(Xr(e,Fe)));Be=Y(Be+Y(Vr(y,Fe,Oe)));m=o[H>>2]|0;s[y+400+(m<<2)>>2]=Be;if(!(wt(Be)|0))break}else m=o[H>>2]|0;Be=Y(Xr(e,Fe));s[y+400+(m<<2)>>2]=Y(Be+Y(Vr(y,Fe,Oe)));break}m=pi(e,y)|0;do{if((m|0)==4){if((o[(hi(y,Fe)|0)+4>>2]|0)==3){K=139;break}if((o[(vi(y,Fe)|0)+4>>2]|0)==3){K=139;break}if(Ir(y,Fe,me)|0){t=b;break}je=o[y+908+(o[z>>2]<<2)>>2]|0;o[ie>>2]=je;t=Y(s[y+396>>2]);Ue=wt(t)|0;w=(o[d>>2]=je,Y(s[d>>2]));if(Ue)t=E;else{P=Y(Sr(y,Fe,Oe));Be=Y(w/t);t=Y(t*w);t=Y(P+(Pe?Be:t))}s[oe>>2]=t;s[ie>>2]=Y(Y(Sr(y,Re,Oe))+w);o[ue>>2]=1;o[ae>>2]=1;mi(y,Re,N,Oe,ue,ie);mi(y,Fe,me,Oe,ae,oe);t=Y(s[ie>>2]);P=Y(s[oe>>2]);Be=Pe?t:P;t=Pe?P:t;Ue=((wt(Be)|0)^1)&1;Dr(y,Be,t,Ie,Ue,((wt(t)|0)^1)&1,Oe,ye,1,3493,v)|0;t=b}else K=139}while(0);e:do{if((K|0)==139){K=0;t=Y(D-Y(_i(y,Fe,Oe)));do{if((o[(hi(y,Fe)|0)+4>>2]|0)==3){if((o[(vi(y,Fe)|0)+4>>2]|0)!=3)break;t=Y(b+Y(NT(Y(0.0),Y(t*Y(.5)))));break e}}while(0);if((o[(vi(y,Fe)|0)+4>>2]|0)==3){t=b;break}if((o[(hi(y,Fe)|0)+4>>2]|0)==3){t=Y(b+Y(NT(Y(0.0),t)));break}switch(m|0){case 1:{t=b;break e}case 2:{t=Y(b+Y(t*Y(.5)));break e}default:{t=Y(b+t);break e}}}}while(0);Be=Y(he+t);Ue=y+400+(o[H>>2]<<2)|0;s[Ue>>2]=Y(Be+Y(s[Ue>>2]))}}while(0);g=g+1|0}while((g|0)!=(A|0))}he=Y(he+E);re=Y(NT(re,n));l=L+1|0;if(A>>>0>=Me>>>0)break;else{t=N;I=A;L=l}}do{if(p){m=l>>>0>1;if(!m?!(bi(e)|0):0)break;if(!(wt(me)|0)){t=Y(me-he);e:do{switch(o[e+12>>2]|0){case 3:{b=Y(b+t);C=Y(0.0);break}case 2:{b=Y(b+Y(t*Y(.5)));C=Y(0.0);break}case 4:{if(me>he)C=Y(t/Y(l>>>0));else C=Y(0.0);break}case 7:if(me>he){b=Y(b+Y(t/Y(l<<1>>>0)));C=Y(t/Y(l>>>0));C=m?C:Y(0.0);break e}else{b=Y(b+Y(t*Y(.5)));C=Y(0.0);break e}case 6:{C=Y(t/Y(L>>>0));C=me>he&m?C:Y(0.0);break}default:C=Y(0.0)}}while(0);if(l|0){T=1040+(Fe<<2)|0;x=976+(Fe<<2)|0;_=0;g=0;while(1){e:do{if(g>>>0>>0){w=Y(0.0);E=Y(0.0);t=Y(0.0);y=g;while(1){m=o[(o[Ne>>2]|0)+(y<<2)>>2]|0;do{if((o[m+36>>2]|0)!=1?(o[m+24>>2]|0)==0:0){if((o[m+940>>2]|0)!=(_|0))break e;if(wi(m,Fe)|0){Be=Y(s[m+908+(o[x>>2]<<2)>>2]);t=Y(NT(t,Y(Be+Y(Sr(m,Fe,Oe)))))}if((pi(e,m)|0)!=5)break;pe=Y(Ei(m));pe=Y(pe+Y(Vr(m,0,Oe)));Be=Y(s[m+912>>2]);Be=Y(Y(Be+Y(Sr(m,0,Oe)))-pe);pe=Y(NT(E,pe));Be=Y(NT(w,Be));w=Be;E=pe;t=Y(NT(t,Y(pe+Be)))}}while(0);m=y+1|0;if(m>>>0>>0)y=m;else{y=m;break}}}else{E=Y(0.0);t=Y(0.0);y=g}}while(0);S=Y(C+t);n=b;b=Y(b+S);if(g>>>0>>0){D=Y(n+E);m=g;do{g=o[(o[Ne>>2]|0)+(m<<2)>>2]|0;e:do{if((o[g+36>>2]|0)!=1?(o[g+24>>2]|0)==0:0)switch(pi(e,g)|0){case 1:{Be=Y(n+Y(Vr(g,Fe,Oe)));s[g+400+(o[T>>2]<<2)>>2]=Be;break e}case 3:{Be=Y(Y(b-Y(qr(g,Fe,Oe)))-Y(s[g+908+(o[x>>2]<<2)>>2]));s[g+400+(o[T>>2]<<2)>>2]=Be;break e}case 2:{Be=Y(n+Y(Y(S-Y(s[g+908+(o[x>>2]<<2)>>2]))*Y(.5)));s[g+400+(o[T>>2]<<2)>>2]=Be;break e}case 4:{Be=Y(n+Y(Vr(g,Fe,Oe)));s[g+400+(o[T>>2]<<2)>>2]=Be;if(Ir(g,Fe,me)|0)break e;if(Pe){w=Y(s[g+908>>2]);t=Y(w+Y(Sr(g,Re,Oe)));E=S}else{E=Y(s[g+912>>2]);E=Y(E+Y(Sr(g,Fe,Oe)));t=S;w=Y(s[g+908>>2])}if(vr(t,w)|0?vr(E,Y(s[g+912>>2]))|0:0)break e;Dr(g,t,E,Ie,1,1,Oe,ye,1,3501,v)|0;break e}case 5:{s[g+404>>2]=Y(Y(D-Y(Ei(g)))+Y(yi(g,0,me)));break e}default:break e}}while(0);m=m+1|0}while((m|0)!=(y|0))}_=_+1|0;if((_|0)==(l|0))break;else g=y}}}}}while(0);s[e+908>>2]=Y(di(e,2,_e,c,c));s[e+912>>2]=Y(di(e,0,ge,f,c));if((ve|0)!=0?(Ee=o[e+32>>2]|0,De=(ve|0)==2,!(De&(Ee|0)!=2)):0){if(De&(Ee|0)==2){t=Y(we+N);t=Y(NT(Y(RT(t,Y(Di(e,Re,re,be)))),we));K=198}}else{t=Y(di(e,Re,re,be,c));K=198}if((K|0)==198)s[e+908+(o[976+(Re<<2)>>2]<<2)>>2]=t;if((ke|0)!=0?(xe=o[e+32>>2]|0,Ae=(ke|0)==2,!(Ae&(xe|0)!=2)):0){if(Ae&(xe|0)==2){t=Y(Ce+me);t=Y(NT(Y(RT(t,Y(Di(e,Fe,Y(Ce+he),Se)))),Ce));K=204}}else{t=Y(di(e,Fe,Y(Ce+he),Se,c));K=204}if((K|0)==204)s[e+908+(o[976+(Fe<<2)>>2]<<2)>>2]=t;if(p){if((o[Te>>2]|0)==2){g=976+(Fe<<2)|0;y=1040+(Fe<<2)|0;m=0;do{_=Pt(e,m)|0;if(!(o[_+24>>2]|0)){je=o[g>>2]|0;Be=Y(s[e+908+(je<<2)>>2]);Ue=_+400+(o[y>>2]<<2)|0;Be=Y(Be-Y(s[Ue>>2]));s[Ue>>2]=Y(Be-Y(s[_+908+(je<<2)>>2]))}m=m+1|0}while((m|0)!=(Me|0))}if(i|0){m=Pe?ve:a;do{Si(e,i,Oe,m,ye,Ie,v);i=o[i+960>>2]|0}while((i|0)!=0)}m=(Re|2|0)==3;g=(Fe|2|0)==3;if(m|g){i=0;do{y=o[(o[Ne>>2]|0)+(i<<2)>>2]|0;if((o[y+36>>2]|0)!=1){if(m)Ci(e,y,Re);if(g)Ci(e,y,Fe)}i=i+1|0}while((i|0)!=(Me|0))}}}else ei(e,t,n,a,l,c,f)}while(0);h=Le;return}function Ar(e,t){e=e|0;t=Y(t);var n=0;St(e,t>=Y(0.0),3147);n=t==Y(0.0);s[e+4>>2]=n?Y(0.0):t;return}function Or(e,t,n,i){e=e|0;t=Y(t);n=Y(n);i=i|0;var u=ft,a=ft,l=0,c=0,f=0;o[2278]=(o[2278]|0)+1;Pr(e);if(!(Ir(e,2,t)|0)){u=Y(Nr(e+380|0,t));if(!(u>=Y(0.0))){f=((wt(t)|0)^1)&1;u=t}else f=2}else{u=Y(Nr(o[e+992>>2]|0,t));f=1;u=Y(u+Y(Sr(e,2,t)))}if(!(Ir(e,0,n)|0)){a=Y(Nr(e+388|0,n));if(!(a>=Y(0.0))){c=((wt(n)|0)^1)&1;a=n}else c=2}else{a=Y(Nr(o[e+996>>2]|0,n));c=1;a=Y(a+Y(Sr(e,0,t)))}l=e+976|0;if(Dr(e,u,a,i,f,c,t,n,1,3189,o[l>>2]|0)|0?(Mr(e,o[e+496>>2]|0,t,n,t),Rr(e,Y(s[(o[l>>2]|0)+4>>2]),Y(0.0),Y(0.0)),r[11696]|0):0)mr(e,7);return}function Pr(e){e=e|0;var t=0,n=0,r=0,i=0,u=0,a=0,l=0,s=0,c=0,f=0;l=h;h=h+32|0;a=l+24|0;u=l+16|0;r=l+8|0;i=l;n=0;do{t=e+380+(n<<3)|0;if(!((o[e+380+(n<<3)+4>>2]|0)!=0?(s=t,c=o[s+4>>2]|0,f=r,o[f>>2]=o[s>>2],o[f+4>>2]=c,f=e+364+(n<<3)|0,c=o[f+4>>2]|0,s=i,o[s>>2]=o[f>>2],o[s+4>>2]=c,o[u>>2]=o[r>>2],o[u+4>>2]=o[r+4>>2],o[a>>2]=o[i>>2],o[a+4>>2]=o[i+4>>2],hr(u,a)|0):0))t=e+348+(n<<3)|0;o[e+992+(n<<2)>>2]=t;n=n+1|0}while((n|0)!=2);h=l;return}function Ir(e,t,n){e=e|0;t=t|0;n=Y(n);var r=0;e=o[e+992+(o[976+(t<<2)>>2]<<2)>>2]|0;switch(o[e+4>>2]|0){case 0:case 3:{e=0;break}case 1:{if(Y(s[e>>2])>2])>2]|0){case 2:{t=Y(Y(Y(s[e>>2])*t)/Y(100.0));break}case 1:{t=Y(s[e>>2]);break}default:t=Y(E)}return Y(t)}function Mr(e,t,n,r,i){e=e|0;t=t|0;n=Y(n);r=Y(r);i=Y(i);var u=0,a=ft;t=o[e+944>>2]|0?t:1;u=Kr(o[e+4>>2]|0,t)|0;t=ri(u,t)|0;n=Y(Pi(e,u,n));r=Y(Pi(e,t,r));a=Y(n+Y(Vr(e,u,i)));s[e+400+(o[1040+(u<<2)>>2]<<2)>>2]=a;n=Y(n+Y(qr(e,u,i)));s[e+400+(o[1e3+(u<<2)>>2]<<2)>>2]=n;n=Y(r+Y(Vr(e,t,i)));s[e+400+(o[1040+(t<<2)>>2]<<2)>>2]=n;i=Y(r+Y(qr(e,t,i)));s[e+400+(o[1e3+(t<<2)>>2]<<2)>>2]=i;return}function Rr(e,t,n,r){e=e|0;t=Y(t);n=Y(n);r=Y(r);var i=0,u=0,a=ft,l=ft,c=0,f=0,d=ft,p=0,h=ft,v=ft,m=ft,g=ft;if(!(t==Y(0.0))){i=e+400|0;g=Y(s[i>>2]);u=e+404|0;m=Y(s[u>>2]);p=e+416|0;v=Y(s[p>>2]);f=e+420|0;a=Y(s[f>>2]);h=Y(g+n);d=Y(m+r);r=Y(h+v);l=Y(d+a);c=(o[e+988>>2]|0)==1;s[i>>2]=Y(yr(g,t,0,c));s[u>>2]=Y(yr(m,t,0,c));n=Y(LT(Y(v*t),Y(1.0)));if(vr(n,Y(0.0))|0)u=0;else u=(vr(n,Y(1.0))|0)^1;n=Y(LT(Y(a*t),Y(1.0)));if(vr(n,Y(0.0))|0)i=0;else i=(vr(n,Y(1.0))|0)^1;g=Y(yr(r,t,c&u,c&(u^1)));s[p>>2]=Y(g-Y(yr(h,t,0,c)));g=Y(yr(l,t,c&i,c&(i^1)));s[f>>2]=Y(g-Y(yr(d,t,0,c)));u=(o[e+952>>2]|0)-(o[e+948>>2]|0)>>2;if(u|0){i=0;do{Rr(Pt(e,i)|0,t,h,d);i=i+1|0}while((i|0)!=(u|0))}}return}function Fr(e,t,n,r,i){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;switch(n|0){case 5:case 0:{e=oT(o[489]|0,r,i)|0;break}default:e=jT(r,i)|0}return e|0}function Lr(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0,u=0;i=h;h=h+16|0;u=i;o[u>>2]=r;Br(e,0,t,n,u);h=i;return}function Br(e,t,n,r,i){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;e=e|0?e:956;xA[o[e+8>>2]&1](e,t,n,r,i)|0;if((n|0)==5)Ye();else return}function jr(e,t,n){e=e|0;t=t|0;n=n|0;r[e+t>>0]=n&1;return}function Ur(e,t){e=e|0;t=t|0;var n=0,r=0;o[e>>2]=0;o[e+4>>2]=0;o[e+8>>2]=0;n=t+4|0;r=(o[n>>2]|0)-(o[t>>2]|0)>>2;if(r|0){zr(e,r);Wr(e,o[t>>2]|0,o[n>>2]|0,r)}return}function zr(e,t){e=e|0;t=t|0;var n=0;if((Hr(e)|0)>>>0>>0)UT(e);if(t>>>0>1073741823)Ye();else{n=$T(t<<2)|0;o[e+4>>2]=n;o[e>>2]=n;o[e+8>>2]=n+(t<<2);return}}function Wr(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;r=e+4|0;e=n-t|0;if((e|0)>0){ix(o[r>>2]|0,t|0,e|0)|0;o[r>>2]=(o[r>>2]|0)+(e>>>2<<2)}return}function Hr(e){e=e|0;return 1073741823}function Vr(e,t,n){e=e|0;t=t|0;n=Y(n);if(Gr(t)|0?(o[e+96>>2]|0)!=0:0)e=e+92|0;else e=Et(e+60|0,o[1040+(t<<2)>>2]|0,992)|0;return Y($r(e,n))}function qr(e,t,n){e=e|0;t=t|0;n=Y(n);if(Gr(t)|0?(o[e+104>>2]|0)!=0:0)e=e+100|0;else e=Et(e+60|0,o[1e3+(t<<2)>>2]|0,992)|0;return Y($r(e,n))}function Gr(e){e=e|0;return(e|1|0)==3|0}function $r(e,t){e=e|0;t=Y(t);if((o[e+4>>2]|0)==3)t=Y(0.0);else t=Y(Nr(e,t));return Y(t)}function Yr(e,t){e=e|0;t=t|0;e=o[e>>2]|0;return((e|0)==0?(t|0)>1?t:1:e)|0}function Kr(e,t){e=e|0;t=t|0;var n=0;e:do{if((t|0)==2){switch(e|0){case 2:{e=3;break e}case 3:break;default:{n=4;break e}}e=2}else n=4}while(0);return e|0}function Xr(e,t){e=e|0;t=t|0;var n=ft;if(!((Gr(t)|0?(o[e+312>>2]|0)!=0:0)?(n=Y(s[e+308>>2]),n>=Y(0.0)):0))n=Y(NT(Y(s[(Et(e+276|0,o[1040+(t<<2)>>2]|0,992)|0)>>2]),Y(0.0)));return Y(n)}function Qr(e,t){e=e|0;t=t|0;var n=ft;if(!((Gr(t)|0?(o[e+320>>2]|0)!=0:0)?(n=Y(s[e+316>>2]),n>=Y(0.0)):0))n=Y(NT(Y(s[(Et(e+276|0,o[1e3+(t<<2)>>2]|0,992)|0)>>2]),Y(0.0)));return Y(n)}function Jr(e,t,n){e=e|0;t=t|0;n=Y(n);var r=ft;if(!((Gr(t)|0?(o[e+240>>2]|0)!=0:0)?(r=Y(Nr(e+236|0,n)),r>=Y(0.0)):0))r=Y(NT(Y(Nr(Et(e+204|0,o[1040+(t<<2)>>2]|0,992)|0,n)),Y(0.0)));return Y(r)}function Zr(e,t,n){e=e|0;t=t|0;n=Y(n);var r=ft;if(!((Gr(t)|0?(o[e+248>>2]|0)!=0:0)?(r=Y(Nr(e+244|0,n)),r>=Y(0.0)):0))r=Y(NT(Y(Nr(Et(e+204|0,o[1e3+(t<<2)>>2]|0,992)|0,n)),Y(0.0)));return Y(r)}function ei(e,t,n,r,i,u,a){e=e|0;t=Y(t);n=Y(n);r=r|0;i=i|0;u=Y(u);a=Y(a);var l=ft,c=ft,f=ft,d=ft,p=ft,v=ft,m=0,g=0,y=0;y=h;h=h+16|0;m=y;g=e+964|0;Rt(e,(o[g>>2]|0)!=0,3519);l=Y(ui(e,2,t));c=Y(ui(e,0,t));f=Y(Sr(e,2,t));d=Y(Sr(e,0,t));if(wt(t)|0)p=t;else p=Y(NT(Y(0.0),Y(Y(t-f)-l)));if(wt(n)|0)v=n;else v=Y(NT(Y(0.0),Y(Y(n-d)-c)));if((r|0)==1&(i|0)==1){s[e+908>>2]=Y(di(e,2,Y(t-f),u,u));t=Y(di(e,0,Y(n-d),a,u))}else{OA[o[g>>2]&1](m,e,p,r,v,i);p=Y(l+Y(s[m>>2]));v=Y(t-f);s[e+908>>2]=Y(di(e,2,(r|2|0)==2?p:v,u,u));v=Y(c+Y(s[m+4>>2]));t=Y(n-d);t=Y(di(e,0,(i|2|0)==2?v:t,a,u))}s[e+912>>2]=t;h=y;return}function ti(e,t,n,r,i,o,u){e=e|0;t=Y(t);n=Y(n);r=r|0;i=i|0;o=Y(o);u=Y(u);var a=ft,l=ft,c=ft,f=ft;c=Y(ui(e,2,o));a=Y(ui(e,0,o));f=Y(Sr(e,2,o));l=Y(Sr(e,0,o));t=Y(t-f);s[e+908>>2]=Y(di(e,2,(r|2|0)==2?c:t,o,o));n=Y(n-l);s[e+912>>2]=Y(di(e,0,(i|2|0)==2?a:n,u,o));return}function ni(e,t,n,r,i,o,u){e=e|0;t=Y(t);n=Y(n);r=r|0;i=i|0;o=Y(o);u=Y(u);var a=0,l=ft,c=ft;a=(r|0)==2;if((!(t<=Y(0.0)&a)?!(n<=Y(0.0)&(i|0)==2):0)?!((r|0)==1&(i|0)==1):0)e=0;else{l=Y(Sr(e,0,o));c=Y(Sr(e,2,o));a=t>2]=Y(di(e,2,a?Y(0.0):t,o,o));t=Y(n-l);a=n>2]=Y(di(e,0,a?Y(0.0):t,u,o));e=1}return e|0}function ri(e,t){e=e|0;t=t|0;if(ki(e)|0)e=Kr(2,t)|0;else e=0;return e|0}function ii(e,t,n){e=e|0;t=t|0;n=Y(n);n=Y(Jr(e,t,n));return Y(n+Y(Xr(e,t)))}function oi(e,t,n){e=e|0;t=t|0;n=Y(n);n=Y(Zr(e,t,n));return Y(n+Y(Qr(e,t)))}function ui(e,t,n){e=e|0;t=t|0;n=Y(n);var r=ft;r=Y(ii(e,t,n));return Y(r+Y(oi(e,t,n)))}function ai(e){e=e|0;if(!(o[e+24>>2]|0)){if(Y(li(e))!=Y(0.0))e=1;else e=Y(si(e))!=Y(0.0)}else e=0;return e|0}function li(e){e=e|0;var t=ft;if(o[e+944>>2]|0){t=Y(s[e+44>>2]);if(wt(t)|0){t=Y(s[e+40>>2]);e=t>Y(0.0)&((wt(t)|0)^1);return Y(e?t:Y(0.0))}}else t=Y(0.0);return Y(t)}function si(e){e=e|0;var t=ft,n=0,i=ft;do{if(o[e+944>>2]|0){t=Y(s[e+48>>2]);if(wt(t)|0){n=r[(o[e+976>>2]|0)+2>>0]|0;if(n<<24>>24==0?(i=Y(s[e+40>>2]),i>24?Y(1.0):Y(0.0)}}else t=Y(0.0)}while(0);return Y(t)}function ci(e){e=e|0;var t=0,n=0;tx(e+400|0,0,540)|0;r[e+985>>0]=1;Wt(e);n=Ot(e)|0;if(n|0){t=e+948|0;e=0;do{ci(o[(o[t>>2]|0)+(e<<2)>>2]|0);e=e+1|0}while((e|0)!=(n|0))}return}function fi(e,t,n,r,i,u,a,l,c,f){e=e|0;t=t|0;n=Y(n);r=r|0;i=Y(i);u=Y(u);a=Y(a);l=l|0;c=c|0;f=f|0;var d=0,p=ft,v=0,m=0,g=ft,y=ft,_=0,b=ft,w=0,D=ft,S=0,C=0,k=0,T=0,x=0,A=0,O=0,P=0,I=0,N=0;I=h;h=h+16|0;k=I+12|0;T=I+8|0;x=I+4|0;A=I;P=Kr(o[e+4>>2]|0,c)|0;S=Gr(P)|0;p=Y(Nr(Ti(t)|0,S?u:a));C=Ir(t,2,u)|0;O=Ir(t,0,a)|0;do{if(!(wt(p)|0)?!(wt(S?n:i)|0):0){d=t+504|0;if(!(wt(Y(s[d>>2]))|0)){if(!(xi(o[t+976>>2]|0,0)|0))break;if((o[t+500>>2]|0)==(o[2278]|0))break}s[d>>2]=Y(NT(p,Y(ui(t,P,u))))}else v=7}while(0);do{if((v|0)==7){w=S^1;if(!(w|C^1)){a=Y(Nr(o[t+992>>2]|0,u));s[t+504>>2]=Y(NT(a,Y(ui(t,2,u))));break}if(!(S|O^1)){a=Y(Nr(o[t+996>>2]|0,a));s[t+504>>2]=Y(NT(a,Y(ui(t,0,u))));break}s[k>>2]=Y(E);s[T>>2]=Y(E);o[x>>2]=0;o[A>>2]=0;b=Y(Sr(t,2,u));D=Y(Sr(t,0,u));if(C){g=Y(b+Y(Nr(o[t+992>>2]|0,u)));s[k>>2]=g;o[x>>2]=1;m=1}else{m=0;g=Y(E)}if(O){p=Y(D+Y(Nr(o[t+996>>2]|0,a)));s[T>>2]=p;o[A>>2]=1;d=1}else{d=0;p=Y(E)}v=o[e+32>>2]|0;if(!(S&(v|0)==2)){if(wt(g)|0?!(wt(n)|0):0){s[k>>2]=n;o[x>>2]=2;m=2;g=n}}else v=2;if((!((v|0)==2&w)?wt(p)|0:0)?!(wt(i)|0):0){s[T>>2]=i;o[A>>2]=2;d=2;p=i}y=Y(s[t+396>>2]);_=wt(y)|0;do{if(!_){if((m|0)==1&w){s[T>>2]=Y(Y(g-b)/y);o[A>>2]=1;d=1;v=1;break}if(S&(d|0)==1){s[k>>2]=Y(y*Y(p-D));o[x>>2]=1;d=1;v=1}else v=m}else v=m}while(0);N=wt(n)|0;m=(pi(e,t)|0)!=4;if(!(S|C|((r|0)!=1|N)|(m|(v|0)==1))?(s[k>>2]=n,o[x>>2]=1,!_):0){s[T>>2]=Y(Y(n-b)/y);o[A>>2]=1;d=1}if(!(O|w|((l|0)!=1|(wt(i)|0))|(m|(d|0)==1))?(s[T>>2]=i,o[A>>2]=1,!_):0){s[k>>2]=Y(y*Y(i-D));o[x>>2]=1}mi(t,2,u,u,x,k);mi(t,0,a,u,A,T);n=Y(s[k>>2]);i=Y(s[T>>2]);Dr(t,n,i,c,o[x>>2]|0,o[A>>2]|0,u,a,0,3565,f)|0;a=Y(s[t+908+(o[976+(P<<2)>>2]<<2)>>2]);s[t+504>>2]=Y(NT(a,Y(ui(t,P,u))))}}while(0);o[t+500>>2]=o[2278];h=I;return}function di(e,t,n,r,i){e=e|0;t=t|0;n=Y(n);r=Y(r);i=Y(i);r=Y(Di(e,t,n,r));return Y(NT(r,Y(ui(e,t,i))))}function pi(e,t){e=e|0;t=t|0;t=t+20|0;t=o[((o[t>>2]|0)==0?e+16|0:t)>>2]|0;if((t|0)==5?ki(o[e+4>>2]|0)|0:0)t=1;return t|0}function hi(e,t){e=e|0;t=t|0;if(Gr(t)|0?(o[e+96>>2]|0)!=0:0)t=4;else t=o[1040+(t<<2)>>2]|0;return e+60+(t<<3)|0}function vi(e,t){e=e|0;t=t|0;if(Gr(t)|0?(o[e+104>>2]|0)!=0:0)t=5;else t=o[1e3+(t<<2)>>2]|0;return e+60+(t<<3)|0}function mi(e,t,n,r,i,u){e=e|0;t=t|0;n=Y(n);r=Y(r);i=i|0;u=u|0;n=Y(Nr(e+380+(o[976+(t<<2)>>2]<<3)|0,n));n=Y(n+Y(Sr(e,t,r)));switch(o[i>>2]|0){case 2:case 1:{i=wt(n)|0;r=Y(s[u>>2]);s[u>>2]=i|r>2]=2;s[u>>2]=n}break}default:{}}return}function gi(e,t){e=e|0;t=t|0;e=e+132|0;if(Gr(t)|0?(o[(Et(e,4,948)|0)+4>>2]|0)!=0:0)e=1;else e=(o[(Et(e,o[1040+(t<<2)>>2]|0,948)|0)+4>>2]|0)!=0;return e|0}function yi(e,t,n){e=e|0;t=t|0;n=Y(n);var r=0,i=0;e=e+132|0;if(Gr(t)|0?(r=Et(e,4,948)|0,(o[r+4>>2]|0)!=0):0)i=4;else{r=Et(e,o[1040+(t<<2)>>2]|0,948)|0;if(!(o[r+4>>2]|0))n=Y(0.0);else i=4}if((i|0)==4)n=Y(Nr(r,n));return Y(n)}function _i(e,t,n){e=e|0;t=t|0;n=Y(n);var r=ft;r=Y(s[e+908+(o[976+(t<<2)>>2]<<2)>>2]);r=Y(r+Y(Vr(e,t,n)));return Y(r+Y(qr(e,t,n)))}function bi(e){e=e|0;var t=0,n=0,r=0;e:do{if(!(ki(o[e+4>>2]|0)|0)){if((o[e+16>>2]|0)!=5){n=Ot(e)|0;if(!n)t=0;else{t=0;while(1){r=Pt(e,t)|0;if((o[r+24>>2]|0)==0?(o[r+20>>2]|0)==5:0){t=1;break e}t=t+1|0;if(t>>>0>=n>>>0){t=0;break}}}}else t=1}else t=0}while(0);return t|0}function wi(e,t){e=e|0;t=t|0;var n=ft;n=Y(s[e+908+(o[976+(t<<2)>>2]<<2)>>2]);return n>=Y(0.0)&((wt(n)|0)^1)|0}function Ei(e){e=e|0;var t=ft,n=0,r=0,i=0,u=0,a=0,l=0,c=ft;n=o[e+968>>2]|0;if(!n){u=Ot(e)|0;do{if(u|0){n=0;i=0;while(1){r=Pt(e,i)|0;if(o[r+940>>2]|0){a=8;break}if((o[r+24>>2]|0)!=1){l=(pi(e,r)|0)==5;if(l){n=r;break}else n=(n|0)==0?r:n}i=i+1|0;if(i>>>0>=u>>>0){a=8;break}}if((a|0)==8)if(!n)break;t=Y(Ei(n));return Y(t+Y(s[n+404>>2]))}}while(0);t=Y(s[e+912>>2])}else{c=Y(s[e+908>>2]);t=Y(s[e+912>>2]);t=Y(pA[n&0](e,c,t));Rt(e,(wt(t)|0)^1,3573)}return Y(t)}function Di(e,t,n,r){e=e|0;t=t|0;n=Y(n);r=Y(r);var i=ft,o=0;if(!(ki(t)|0)){if(Gr(t)|0){t=0;o=3}else{r=Y(E);i=Y(E)}}else{t=1;o=3}if((o|0)==3){i=Y(Nr(e+364+(t<<3)|0,r));r=Y(Nr(e+380+(t<<3)|0,r))}o=r=Y(0.0)&((wt(r)|0)^1));n=o?r:n;o=i>=Y(0.0)&((wt(i)|0)^1)&n>2]|0,u)|0;m=ri(y,u)|0;g=Gr(y)|0;p=Y(Sr(t,2,n));h=Y(Sr(t,0,n));if(!(Ir(t,2,n)|0)){if(gi(t,2)|0?Ai(t,2)|0:0){l=Y(s[e+908>>2]);c=Y(Xr(e,2));c=Y(l-Y(c+Y(Qr(e,2))));l=Y(yi(t,2,n));l=Y(di(t,2,Y(c-Y(l+Y(Oi(t,2,n)))),n,n))}else l=Y(E)}else l=Y(p+Y(Nr(o[t+992>>2]|0,n)));if(!(Ir(t,0,i)|0)){if(gi(t,0)|0?Ai(t,0)|0:0){c=Y(s[e+912>>2]);b=Y(Xr(e,0));b=Y(c-Y(b+Y(Qr(e,0))));c=Y(yi(t,0,i));c=Y(di(t,0,Y(b-Y(c+Y(Oi(t,0,i)))),i,n))}else c=Y(E)}else c=Y(h+Y(Nr(o[t+996>>2]|0,i)));f=wt(l)|0;d=wt(c)|0;do{if(f^d?(v=Y(s[t+396>>2]),!(wt(v)|0)):0)if(f){l=Y(p+Y(Y(c-h)*v));break}else{b=Y(h+Y(Y(l-p)/v));c=d?b:c;break}}while(0);d=wt(l)|0;f=wt(c)|0;if(d|f){w=(d^1)&1;r=n>Y(0.0)&((r|0)!=0&d);l=g?l:r?n:l;Dr(t,l,c,u,g?w:r?2:w,d&(f^1)&1,l,c,0,3623,a)|0;l=Y(s[t+908>>2]);l=Y(l+Y(Sr(t,2,n)));c=Y(s[t+912>>2]);c=Y(c+Y(Sr(t,0,n)))}Dr(t,l,c,u,1,1,l,c,1,3635,a)|0;if(Ai(t,y)|0?!(gi(t,y)|0):0){w=o[976+(y<<2)>>2]|0;b=Y(s[e+908+(w<<2)>>2]);b=Y(b-Y(s[t+908+(w<<2)>>2]));b=Y(b-Y(Qr(e,y)));b=Y(b-Y(qr(t,y,n)));b=Y(b-Y(Oi(t,y,g?n:i)));s[t+400+(o[1040+(y<<2)>>2]<<2)>>2]=b}else _=21;do{if((_|0)==21){if(!(gi(t,y)|0)?(o[e+8>>2]|0)==1:0){w=o[976+(y<<2)>>2]|0;b=Y(s[e+908+(w<<2)>>2]);b=Y(Y(b-Y(s[t+908+(w<<2)>>2]))*Y(.5));s[t+400+(o[1040+(y<<2)>>2]<<2)>>2]=b;break}if(!(gi(t,y)|0)?(o[e+8>>2]|0)==2:0){w=o[976+(y<<2)>>2]|0;b=Y(s[e+908+(w<<2)>>2]);b=Y(b-Y(s[t+908+(w<<2)>>2]));s[t+400+(o[1040+(y<<2)>>2]<<2)>>2]=b}}}while(0);if(Ai(t,m)|0?!(gi(t,m)|0):0){w=o[976+(m<<2)>>2]|0;b=Y(s[e+908+(w<<2)>>2]);b=Y(b-Y(s[t+908+(w<<2)>>2]));b=Y(b-Y(Qr(e,m)));b=Y(b-Y(qr(t,m,n)));b=Y(b-Y(Oi(t,m,g?i:n)));s[t+400+(o[1040+(m<<2)>>2]<<2)>>2]=b}else _=30;do{if((_|0)==30?!(gi(t,m)|0):0){if((pi(e,t)|0)==2){w=o[976+(m<<2)>>2]|0;b=Y(s[e+908+(w<<2)>>2]);b=Y(Y(b-Y(s[t+908+(w<<2)>>2]))*Y(.5));s[t+400+(o[1040+(m<<2)>>2]<<2)>>2]=b;break}w=(pi(e,t)|0)==3;if(w^(o[e+28>>2]|0)==2){w=o[976+(m<<2)>>2]|0;b=Y(s[e+908+(w<<2)>>2]);b=Y(b-Y(s[t+908+(w<<2)>>2]));s[t+400+(o[1040+(m<<2)>>2]<<2)>>2]=b}}}while(0);return}function Ci(e,t,n){e=e|0;t=t|0;n=n|0;var r=ft,i=0;i=o[976+(n<<2)>>2]|0;r=Y(s[t+908+(i<<2)>>2]);r=Y(Y(s[e+908+(i<<2)>>2])-r);r=Y(r-Y(s[t+400+(o[1040+(n<<2)>>2]<<2)>>2]));s[t+400+(o[1e3+(n<<2)>>2]<<2)>>2]=r;return}function ki(e){e=e|0;return(e|1|0)==1|0}function Ti(e){e=e|0;var t=ft;switch(o[e+56>>2]|0){case 0:case 3:{t=Y(s[e+40>>2]);if(t>Y(0.0)&((wt(t)|0)^1))e=r[(o[e+976>>2]|0)+2>>0]|0?1056:992;else e=1056;break}default:e=e+52|0}return e|0}function xi(e,t){e=e|0;t=t|0;return(r[e+t>>0]|0)!=0|0}function Ai(e,t){e=e|0;t=t|0;e=e+132|0;if(Gr(t)|0?(o[(Et(e,5,948)|0)+4>>2]|0)!=0:0)e=1;else e=(o[(Et(e,o[1e3+(t<<2)>>2]|0,948)|0)+4>>2]|0)!=0;return e|0}function Oi(e,t,n){e=e|0;t=t|0;n=Y(n);var r=0,i=0;e=e+132|0;if(Gr(t)|0?(r=Et(e,5,948)|0,(o[r+4>>2]|0)!=0):0)i=4;else{r=Et(e,o[1e3+(t<<2)>>2]|0,948)|0;if(!(o[r+4>>2]|0))n=Y(0.0);else i=4}if((i|0)==4)n=Y(Nr(r,n));return Y(n)}function Pi(e,t,n){e=e|0;t=t|0;n=Y(n);if(gi(e,t)|0)n=Y(yi(e,t,n));else n=Y(-Y(Oi(e,t,n)));return Y(n)}function Ii(e){e=Y(e);return(s[d>>2]=e,o[d>>2]|0)|0}function Ni(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0;o[e+12>>2]=0;o[e+16>>2]=r;do{if(t){if(t>>>0>1073741823)Ye();else{i=$T(t<<2)|0;break}}else i=0}while(0);o[e>>2]=i;r=i+(n<<2)|0;o[e+8>>2]=r;o[e+4>>2]=r;o[e+12>>2]=i+(t<<2);return}function Mi(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0,a=0;r=o[e>>2]|0;a=e+4|0;u=t+4|0;i=(o[a>>2]|0)-r|0;n=(o[u>>2]|0)+(0-(i>>2)<<2)|0;o[u>>2]=n;if((i|0)>0){ix(n|0,r|0,i|0)|0;r=u;n=o[u>>2]|0}else r=u;u=o[e>>2]|0;o[e>>2]=n;o[r>>2]=u;u=t+8|0;i=o[a>>2]|0;o[a>>2]=o[u>>2];o[u>>2]=i;u=e+8|0;a=t+12|0;e=o[u>>2]|0;o[u>>2]=o[a>>2];o[a>>2]=e;o[t>>2]=o[r>>2];return}function Ri(e){e=e|0;var t=0,n=0,r=0;t=o[e+4>>2]|0;n=e+8|0;r=o[n>>2]|0;if((r|0)!=(t|0))o[n>>2]=r+(~((r+-4-t|0)>>>2)<<2);e=o[e>>2]|0;if(e|0)KT(e);return}function Fi(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0,u=0,a=0,l=0;a=e+4|0;l=o[a>>2]|0;i=l-r|0;u=i>>2;e=t+(u<<2)|0;if(e>>>0>>0){r=l;do{o[r>>2]=o[e>>2];e=e+4|0;r=(o[a>>2]|0)+4|0;o[a>>2]=r}while(e>>>0>>0)}if(u|0)sx(l+(0-u<<2)|0,t|0,i|0)|0;return}function Li(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0,l=0,s=0;l=t+4|0;s=o[l>>2]|0;i=o[e>>2]|0;a=n;u=a-i|0;r=s+(0-(u>>2)<<2)|0;o[l>>2]=r;if((u|0)>0)ix(r|0,i|0,u|0)|0;i=e+4|0;u=t+8|0;r=(o[i>>2]|0)-a|0;if((r|0)>0){ix(o[u>>2]|0,n|0,r|0)|0;o[u>>2]=(o[u>>2]|0)+(r>>>2<<2)}a=o[e>>2]|0;o[e>>2]=o[l>>2];o[l>>2]=a;a=o[i>>2]|0;o[i>>2]=o[u>>2];o[u>>2]=a;a=e+8|0;n=t+12|0;e=o[a>>2]|0;o[a>>2]=o[n>>2];o[n>>2]=e;o[t>>2]=o[l>>2];return s|0}function Bi(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0;a=o[t>>2]|0;u=o[n>>2]|0;if((a|0)!=(u|0)){i=e+8|0;n=((u+-4-a|0)>>>2)+1|0;e=a;r=o[i>>2]|0;do{o[r>>2]=o[e>>2];r=(o[i>>2]|0)+4|0;o[i>>2]=r;e=e+4|0}while((e|0)!=(u|0));o[t>>2]=a+(n<<2)}return}function ji(){_t();return}function Ui(){var e=0;e=$T(4)|0;zi(e);return e|0}function zi(e){e=e|0;o[e>>2]=Lt()|0;return}function Wi(e){e=e|0;if(e|0){Hi(e);KT(e)}return}function Hi(e){e=e|0;jt(o[e>>2]|0);return}function Vi(e,t,n){e=e|0;t=t|0;n=n|0;jr(o[e>>2]|0,t,n);return}function qi(e,t){e=e|0;t=Y(t);Ar(o[e>>2]|0,t);return}function Gi(e,t){e=e|0;t=t|0;return xi(o[e>>2]|0,t)|0}function $i(){var e=0;e=$T(8)|0;Yi(e,0);return e|0}function Yi(e,t){e=e|0;t=t|0;if(!t)t=Ct()|0;else t=Dt(o[t>>2]|0)|0;o[e>>2]=t;o[e+4>>2]=0;Jt(t,e);return}function Ki(e){e=e|0;var t=0;t=$T(8)|0;Yi(t,e);return t|0}function Xi(e){e=e|0;if(e|0){Qi(e);KT(e)}return}function Qi(e){e=e|0;var t=0;xt(o[e>>2]|0);t=e+4|0;e=o[t>>2]|0;o[t>>2]=0;if(e|0){Ji(e);KT(e)}return}function Ji(e){e=e|0;Zi(e);return}function Zi(e){e=e|0;e=o[e>>2]|0;if(e|0)rt(e|0);return}function eo(e){e=e|0;return Zt(e)|0}function to(e){e=e|0;var t=0,n=0;n=e+4|0;t=o[n>>2]|0;o[n>>2]=0;if(t|0){Ji(t);KT(t)}Mt(o[e>>2]|0);return}function no(e,t){e=e|0;t=t|0;Kt(o[e>>2]|0,o[t>>2]|0);return}function ro(e,t){e=e|0;t=t|0;fn(o[e>>2]|0,t);return}function io(e,t,n){e=e|0;t=t|0;n=+n;Cn(o[e>>2]|0,t,Y(n));return}function oo(e,t,n){e=e|0;t=t|0;n=+n;kn(o[e>>2]|0,t,Y(n));return}function uo(e,t){e=e|0;t=t|0;on(o[e>>2]|0,t);return}function ao(e,t){e=e|0;t=t|0;an(o[e>>2]|0,t);return}function lo(e,t){e=e|0;t=t|0;sn(o[e>>2]|0,t);return}function so(e,t){e=e|0;t=t|0;en(o[e>>2]|0,t);return}function co(e,t){e=e|0;t=t|0;pn(o[e>>2]|0,t);return}function fo(e,t){e=e|0;t=t|0;nn(o[e>>2]|0,t);return}function po(e,t,n){e=e|0;t=t|0;n=+n;xn(o[e>>2]|0,t,Y(n));return}function ho(e,t,n){e=e|0;t=t|0;n=+n;An(o[e>>2]|0,t,Y(n));return}function vo(e,t){e=e|0;t=t|0;Pn(o[e>>2]|0,t);return}function mo(e,t){e=e|0;t=t|0;vn(o[e>>2]|0,t);return}function go(e,t){e=e|0;t=t|0;gn(o[e>>2]|0,t);return}function yo(e,t){e=e|0;t=+t;_n(o[e>>2]|0,Y(t));return}function _o(e,t){e=e|0;t=+t;En(o[e>>2]|0,Y(t));return}function bo(e,t){e=e|0;t=+t;Dn(o[e>>2]|0,Y(t));return}function wo(e,t){e=e|0;t=+t;bn(o[e>>2]|0,Y(t));return}function Eo(e,t){e=e|0;t=+t;wn(o[e>>2]|0,Y(t));return}function Do(e,t){e=e|0;t=+t;Ln(o[e>>2]|0,Y(t));return}function So(e,t){e=e|0;t=+t;Bn(o[e>>2]|0,Y(t));return}function Co(e){e=e|0;jn(o[e>>2]|0);return}function ko(e,t){e=e|0;t=+t;zn(o[e>>2]|0,Y(t));return}function To(e,t){e=e|0;t=+t;Wn(o[e>>2]|0,Y(t));return}function xo(e){e=e|0;Hn(o[e>>2]|0);return}function Ao(e,t){e=e|0;t=+t;qn(o[e>>2]|0,Y(t));return}function Oo(e,t){e=e|0;t=+t;Gn(o[e>>2]|0,Y(t));return}function Po(e,t){e=e|0;t=+t;Yn(o[e>>2]|0,Y(t));return}function Io(e,t){e=e|0;t=+t;Kn(o[e>>2]|0,Y(t));return}function No(e,t){e=e|0;t=+t;Qn(o[e>>2]|0,Y(t));return}function Mo(e,t){e=e|0;t=+t;Jn(o[e>>2]|0,Y(t));return}function Ro(e,t){e=e|0;t=+t;er(o[e>>2]|0,Y(t));return}function Fo(e,t){e=e|0;t=+t;tr(o[e>>2]|0,Y(t));return}function Lo(e,t){e=e|0;t=+t;rr(o[e>>2]|0,Y(t));return}function Bo(e,t,n){e=e|0;t=t|0;n=+n;Rn(o[e>>2]|0,t,Y(n));return}function jo(e,t,n){e=e|0;t=t|0;n=+n;In(o[e>>2]|0,t,Y(n));return}function Uo(e,t,n){e=e|0;t=t|0;n=+n;Nn(o[e>>2]|0,t,Y(n));return}function zo(e){e=e|0;return dn(o[e>>2]|0)|0}function Wo(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0;r=h;h=h+16|0;i=r;Tn(i,o[t>>2]|0,n);Ho(e,i);h=r;return}function Ho(e,t){e=e|0;t=t|0;Vo(e,o[t+4>>2]|0,+Y(s[t>>2]));return}function Vo(e,t,n){e=e|0;t=t|0;n=+n;o[e>>2]=t;c[e+8>>3]=n;return}function qo(e){e=e|0;return un(o[e>>2]|0)|0}function Go(e){e=e|0;return ln(o[e>>2]|0)|0}function $o(e){e=e|0;return cn(o[e>>2]|0)|0}function Yo(e){e=e|0;return tn(o[e>>2]|0)|0}function Ko(e){e=e|0;return hn(o[e>>2]|0)|0}function Xo(e){e=e|0;return rn(o[e>>2]|0)|0}function Qo(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0;r=h;h=h+16|0;i=r;On(i,o[t>>2]|0,n);Ho(e,i);h=r;return}function Jo(e){e=e|0;return mn(o[e>>2]|0)|0}function Zo(e){e=e|0;return yn(o[e>>2]|0)|0}function eu(e,t){e=e|0;t=t|0;var n=0,r=0;n=h;h=h+16|0;r=n;Sn(r,o[t>>2]|0);Ho(e,r);h=n;return}function tu(e){e=e|0;return+ +Y(Xt(o[e>>2]|0))}function nu(e){e=e|0;return+ +Y(Qt(o[e>>2]|0))}function ru(e,t){e=e|0;t=t|0;var n=0,r=0;n=h;h=h+16|0;r=n;Un(r,o[t>>2]|0);Ho(e,r);h=n;return}function iu(e,t){e=e|0;t=t|0;var n=0,r=0;n=h;h=h+16|0;r=n;Vn(r,o[t>>2]|0);Ho(e,r);h=n;return}function ou(e,t){e=e|0;t=t|0;var n=0,r=0;n=h;h=h+16|0;r=n;$n(r,o[t>>2]|0);Ho(e,r);h=n;return}function uu(e,t){e=e|0;t=t|0;var n=0,r=0;n=h;h=h+16|0;r=n;Xn(r,o[t>>2]|0);Ho(e,r);h=n;return}function au(e,t){e=e|0;t=t|0;var n=0,r=0;n=h;h=h+16|0;r=n;Zn(r,o[t>>2]|0);Ho(e,r);h=n;return}function lu(e,t){e=e|0;t=t|0;var n=0,r=0;n=h;h=h+16|0;r=n;nr(r,o[t>>2]|0);Ho(e,r);h=n;return}function su(e){e=e|0;return+ +Y(ir(o[e>>2]|0))}function cu(e,t){e=e|0;t=t|0;return+ +Y(Fn(o[e>>2]|0,t))}function fu(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0;r=h;h=h+16|0;i=r;Mn(i,o[t>>2]|0,n);Ho(e,i);h=r;return}function du(e,t,n){e=e|0;t=t|0;n=n|0;zt(o[e>>2]|0,o[t>>2]|0,n);return}function pu(e,t){e=e|0;t=t|0;Nt(o[e>>2]|0,o[t>>2]|0);return}function hu(e){e=e|0;return Ot(o[e>>2]|0)|0}function vu(e){e=e|0;e=Gt(o[e>>2]|0)|0;if(!e)e=0;else e=eo(e)|0;return e|0}function mu(e,t){e=e|0;t=t|0;e=Pt(o[e>>2]|0,t)|0;if(!e)e=0;else e=eo(e)|0;return e|0}function gu(e,t){e=e|0;t=t|0;var n=0,r=0;r=$T(4)|0;yu(r,t);n=e+4|0;t=o[n>>2]|0;o[n>>2]=r;if(t|0){Ji(t);KT(t)}Ut(o[e>>2]|0,1);return}function yu(e,t){e=e|0;t=t|0;Bu(e,t);return}function _u(e,t,n,r,i,o){e=e|0;t=t|0;n=Y(n);r=r|0;i=Y(i);o=o|0;var u=0,a=0;u=h;h=h+16|0;a=u;bu(a,Zt(t)|0,+n,r,+i,o);s[e>>2]=Y(+c[a>>3]);s[e+4>>2]=Y(+c[a+8>>3]);h=u;return}function bu(e,t,n,r,i,u){e=e|0;t=t|0;n=+n;r=r|0;i=+i;u=u|0;var a=0,l=0,s=0,f=0,d=0;a=h;h=h+32|0;d=a+8|0;f=a+20|0;s=a;l=a+16|0;c[d>>3]=n;o[f>>2]=r;c[s>>3]=i;o[l>>2]=u;wu(e,o[t+4>>2]|0,d,f,s,l);h=a;return}function wu(e,t,n,r,i,u){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;u=u|0;var a=0,l=0;a=h;h=h+16|0;l=a;Dk(l);t=Eu(t)|0;Du(e,t,+c[n>>3],o[r>>2]|0,+c[i>>3],o[u>>2]|0);Ck(l);h=a;return}function Eu(e){e=e|0;return o[e>>2]|0}function Du(e,t,n,r,i,o){e=e|0;t=t|0;n=+n;r=r|0;i=+i;o=o|0;var u=0;u=Cu(Su()|0)|0;n=+ku(n);r=Tu(r)|0;i=+ku(i);xu(e,ot(0,u|0,t|0,+n,r|0,+i,Tu(o)|0)|0);return}function Su(){var e=0;if(!(r[7608]|0)){Ru(9120);e=7608;o[e>>2]=1;o[e+4>>2]=0}return 9120}function Cu(e){e=e|0;return o[e+8>>2]|0}function ku(e){e=+e;return+ +Mu(e)}function Tu(e){e=e|0;return Nu(e)|0}function xu(e,t){e=e|0;t=t|0;var n=0,r=0,i=0;i=h;h=h+32|0;n=i;r=t;if(!(r&1)){o[e>>2]=o[t>>2];o[e+4>>2]=o[t+4>>2];o[e+8>>2]=o[t+8>>2];o[e+12>>2]=o[t+12>>2]}else{Au(n,0);Be(r|0,n|0)|0;Ou(e,n);Pu(n)}h=i;return}function Au(e,t){e=e|0;t=t|0;Iu(e,t);o[e+8>>2]=0;r[e+24>>0]=0;return}function Ou(e,t){e=e|0;t=t|0;t=t+8|0;o[e>>2]=o[t>>2];o[e+4>>2]=o[t+4>>2];o[e+8>>2]=o[t+8>>2];o[e+12>>2]=o[t+12>>2];return}function Pu(e){e=e|0;r[e+24>>0]=0;return}function Iu(e,t){e=e|0;t=t|0;o[e>>2]=t;return}function Nu(e){e=e|0;return e|0}function Mu(e){e=+e;return+e}function Ru(e){e=e|0;Lu(e,Fu()|0,4);return}function Fu(){return 1064}function Lu(e,t,n){e=e|0;t=t|0;n=n|0;o[e>>2]=t;o[e+4>>2]=n;o[e+8>>2]=tt(t|0,n+1|0)|0;return}function Bu(e,t){e=e|0;t=t|0;t=o[t>>2]|0;o[e>>2]=t;Ae(t|0);return}function ju(e){e=e|0;var t=0,n=0;n=e+4|0;t=o[n>>2]|0;o[n>>2]=0;if(t|0){Ji(t);KT(t)}Ut(o[e>>2]|0,0);return}function Uu(e){e=e|0;$t(o[e>>2]|0);return}function zu(e){e=e|0;return Yt(o[e>>2]|0)|0}function Wu(e,t,n,r){e=e|0;t=+t;n=+n;r=r|0;Or(o[e>>2]|0,Y(t),Y(n),r);return}function Hu(e){e=e|0;return+ +Y(or(o[e>>2]|0))}function Vu(e){e=e|0;return+ +Y(ar(o[e>>2]|0))}function qu(e){e=e|0;return+ +Y(ur(o[e>>2]|0))}function Gu(e){e=e|0;return+ +Y(lr(o[e>>2]|0))}function $u(e){e=e|0;return+ +Y(sr(o[e>>2]|0))}function Yu(e){e=e|0;return+ +Y(cr(o[e>>2]|0))}function Ku(e,t){e=e|0;t=t|0;c[e>>3]=+Y(or(o[t>>2]|0));c[e+8>>3]=+Y(ar(o[t>>2]|0));c[e+16>>3]=+Y(ur(o[t>>2]|0));c[e+24>>3]=+Y(lr(o[t>>2]|0));c[e+32>>3]=+Y(sr(o[t>>2]|0));c[e+40>>3]=+Y(cr(o[t>>2]|0));return}function Xu(e,t){e=e|0;t=t|0;return+ +Y(fr(o[e>>2]|0,t))}function Qu(e,t){e=e|0;t=t|0;return+ +Y(dr(o[e>>2]|0,t))}function Ju(e,t){e=e|0;t=t|0;return+ +Y(pr(o[e>>2]|0,t))}function Zu(){return Ft()|0}function ea(){ta();na();ra();ia();oa();ua();return}function ta(){zb(11713,4938,1);return}function na(){tb(10448);return}function ra(){R_(10408);return}function ia(){Jy(10324);return}function oa(){qm(10096);return}function ua(){aa(9132);return}function aa(e){e=e|0;var t=0,n=0,r=0,i=0,u=0,a=0,l=0,s=0,c=0,f=0,d=0,p=0,v=0,m=0,g=0,y=0,_=0,b=0,w=0,E=0,D=0,S=0,C=0,k=0,T=0,x=0,A=0,O=0,P=0,I=0,N=0,M=0,R=0,F=0,L=0,B=0,j=0,U=0,z=0,W=0,H=0,V=0,q=0,G=0,$=0,Y=0,K=0,X=0,Q=0,J=0,Z=0,ee=0,te=0,ne=0,re=0,ie=0,oe=0,ue=0,ae=0,le=0,se=0,ce=0,fe=0,de=0,pe=0,he=0,ve=0,me=0,ge=0,ye=0,_e=0,be=0,we=0,Ee=0,De=0,Se=0,Ce=0,ke=0,Te=0,xe=0,Ae=0,Oe=0,Pe=0,Ie=0;t=h;h=h+672|0;n=t+656|0;Ie=t+648|0;Pe=t+640|0;Oe=t+632|0;Ae=t+624|0;xe=t+616|0;Te=t+608|0;ke=t+600|0;Ce=t+592|0;Se=t+584|0;De=t+576|0;Ee=t+568|0;we=t+560|0;be=t+552|0;_e=t+544|0;ye=t+536|0;ge=t+528|0;me=t+520|0;ve=t+512|0;he=t+504|0;pe=t+496|0;de=t+488|0;fe=t+480|0;ce=t+472|0;se=t+464|0;le=t+456|0;ae=t+448|0;ue=t+440|0;oe=t+432|0;ie=t+424|0;re=t+416|0;ne=t+408|0;te=t+400|0;ee=t+392|0;Z=t+384|0;J=t+376|0;Q=t+368|0;X=t+360|0;K=t+352|0;Y=t+344|0;$=t+336|0;G=t+328|0;q=t+320|0;V=t+312|0;H=t+304|0;W=t+296|0;z=t+288|0;U=t+280|0;j=t+272|0;B=t+264|0;L=t+256|0;F=t+248|0;R=t+240|0;M=t+232|0;N=t+224|0;I=t+216|0;P=t+208|0;O=t+200|0;A=t+192|0;x=t+184|0;T=t+176|0;k=t+168|0;C=t+160|0;S=t+152|0;D=t+144|0;E=t+136|0;w=t+128|0;b=t+120|0;_=t+112|0;y=t+104|0;g=t+96|0;m=t+88|0;v=t+80|0;p=t+72|0;d=t+64|0;f=t+56|0;c=t+48|0;s=t+40|0;l=t+32|0;a=t+24|0;u=t+16|0;i=t+8|0;r=t;la(e,3646);sa(e,3651,2)|0;ca(e,3665,2)|0;fa(e,3682,18)|0;o[Ie>>2]=19;o[Ie+4>>2]=0;o[n>>2]=o[Ie>>2];o[n+4>>2]=o[Ie+4>>2];da(e,3690,n)|0;o[Pe>>2]=1;o[Pe+4>>2]=0;o[n>>2]=o[Pe>>2];o[n+4>>2]=o[Pe+4>>2];pa(e,3696,n)|0;o[Oe>>2]=2;o[Oe+4>>2]=0;o[n>>2]=o[Oe>>2];o[n+4>>2]=o[Oe+4>>2];ha(e,3706,n)|0;o[Ae>>2]=1;o[Ae+4>>2]=0;o[n>>2]=o[Ae>>2];o[n+4>>2]=o[Ae+4>>2];va(e,3722,n)|0;o[xe>>2]=2;o[xe+4>>2]=0;o[n>>2]=o[xe>>2];o[n+4>>2]=o[xe+4>>2];va(e,3734,n)|0;o[Te>>2]=3;o[Te+4>>2]=0;o[n>>2]=o[Te>>2];o[n+4>>2]=o[Te+4>>2];ha(e,3753,n)|0;o[ke>>2]=4;o[ke+4>>2]=0;o[n>>2]=o[ke>>2];o[n+4>>2]=o[ke+4>>2];ha(e,3769,n)|0;o[Ce>>2]=5;o[Ce+4>>2]=0;o[n>>2]=o[Ce>>2];o[n+4>>2]=o[Ce+4>>2];ha(e,3783,n)|0;o[Se>>2]=6;o[Se+4>>2]=0;o[n>>2]=o[Se>>2];o[n+4>>2]=o[Se+4>>2];ha(e,3796,n)|0;o[De>>2]=7;o[De+4>>2]=0;o[n>>2]=o[De>>2];o[n+4>>2]=o[De+4>>2];ha(e,3813,n)|0;o[Ee>>2]=8;o[Ee+4>>2]=0;o[n>>2]=o[Ee>>2];o[n+4>>2]=o[Ee+4>>2];ha(e,3825,n)|0;o[we>>2]=3;o[we+4>>2]=0;o[n>>2]=o[we>>2];o[n+4>>2]=o[we+4>>2];va(e,3843,n)|0;o[be>>2]=4;o[be+4>>2]=0;o[n>>2]=o[be>>2];o[n+4>>2]=o[be+4>>2];va(e,3853,n)|0;o[_e>>2]=9;o[_e+4>>2]=0;o[n>>2]=o[_e>>2];o[n+4>>2]=o[_e+4>>2];ha(e,3870,n)|0;o[ye>>2]=10;o[ye+4>>2]=0;o[n>>2]=o[ye>>2];o[n+4>>2]=o[ye+4>>2];ha(e,3884,n)|0;o[ge>>2]=11;o[ge+4>>2]=0;o[n>>2]=o[ge>>2];o[n+4>>2]=o[ge+4>>2];ha(e,3896,n)|0;o[me>>2]=1;o[me+4>>2]=0;o[n>>2]=o[me>>2];o[n+4>>2]=o[me+4>>2];ma(e,3907,n)|0;o[ve>>2]=2;o[ve+4>>2]=0;o[n>>2]=o[ve>>2];o[n+4>>2]=o[ve+4>>2];ma(e,3915,n)|0;o[he>>2]=3;o[he+4>>2]=0;o[n>>2]=o[he>>2];o[n+4>>2]=o[he+4>>2];ma(e,3928,n)|0;o[pe>>2]=4;o[pe+4>>2]=0;o[n>>2]=o[pe>>2];o[n+4>>2]=o[pe+4>>2];ma(e,3948,n)|0;o[de>>2]=5;o[de+4>>2]=0;o[n>>2]=o[de>>2];o[n+4>>2]=o[de+4>>2];ma(e,3960,n)|0;o[fe>>2]=6;o[fe+4>>2]=0;o[n>>2]=o[fe>>2];o[n+4>>2]=o[fe+4>>2];ma(e,3974,n)|0;o[ce>>2]=7;o[ce+4>>2]=0;o[n>>2]=o[ce>>2];o[n+4>>2]=o[ce+4>>2];ma(e,3983,n)|0;o[se>>2]=20;o[se+4>>2]=0;o[n>>2]=o[se>>2];o[n+4>>2]=o[se+4>>2];da(e,3999,n)|0;o[le>>2]=8;o[le+4>>2]=0;o[n>>2]=o[le>>2];o[n+4>>2]=o[le+4>>2];ma(e,4012,n)|0;o[ae>>2]=9;o[ae+4>>2]=0;o[n>>2]=o[ae>>2];o[n+4>>2]=o[ae+4>>2];ma(e,4022,n)|0;o[ue>>2]=21;o[ue+4>>2]=0;o[n>>2]=o[ue>>2];o[n+4>>2]=o[ue+4>>2];da(e,4039,n)|0;o[oe>>2]=10;o[oe+4>>2]=0;o[n>>2]=o[oe>>2];o[n+4>>2]=o[oe+4>>2];ma(e,4053,n)|0;o[ie>>2]=11;o[ie+4>>2]=0;o[n>>2]=o[ie>>2];o[n+4>>2]=o[ie+4>>2];ma(e,4065,n)|0;o[re>>2]=12;o[re+4>>2]=0;o[n>>2]=o[re>>2];o[n+4>>2]=o[re+4>>2];ma(e,4084,n)|0;o[ne>>2]=13;o[ne+4>>2]=0;o[n>>2]=o[ne>>2];o[n+4>>2]=o[ne+4>>2];ma(e,4097,n)|0;o[te>>2]=14;o[te+4>>2]=0;o[n>>2]=o[te>>2];o[n+4>>2]=o[te+4>>2];ma(e,4117,n)|0;o[ee>>2]=15;o[ee+4>>2]=0;o[n>>2]=o[ee>>2];o[n+4>>2]=o[ee+4>>2];ma(e,4129,n)|0;o[Z>>2]=16;o[Z+4>>2]=0;o[n>>2]=o[Z>>2];o[n+4>>2]=o[Z+4>>2];ma(e,4148,n)|0;o[J>>2]=17;o[J+4>>2]=0;o[n>>2]=o[J>>2];o[n+4>>2]=o[J+4>>2];ma(e,4161,n)|0;o[Q>>2]=18;o[Q+4>>2]=0;o[n>>2]=o[Q>>2];o[n+4>>2]=o[Q+4>>2];ma(e,4181,n)|0;o[X>>2]=5;o[X+4>>2]=0;o[n>>2]=o[X>>2];o[n+4>>2]=o[X+4>>2];va(e,4196,n)|0;o[K>>2]=6;o[K+4>>2]=0;o[n>>2]=o[K>>2];o[n+4>>2]=o[K+4>>2];va(e,4206,n)|0;o[Y>>2]=7;o[Y+4>>2]=0;o[n>>2]=o[Y>>2];o[n+4>>2]=o[Y+4>>2];va(e,4217,n)|0;o[$>>2]=3;o[$+4>>2]=0;o[n>>2]=o[$>>2];o[n+4>>2]=o[$+4>>2];ga(e,4235,n)|0;o[G>>2]=1;o[G+4>>2]=0;o[n>>2]=o[G>>2];o[n+4>>2]=o[G+4>>2];ya(e,4251,n)|0;o[q>>2]=4;o[q+4>>2]=0;o[n>>2]=o[q>>2];o[n+4>>2]=o[q+4>>2];ga(e,4263,n)|0;o[V>>2]=5;o[V+4>>2]=0;o[n>>2]=o[V>>2];o[n+4>>2]=o[V+4>>2];ga(e,4279,n)|0;o[H>>2]=6;o[H+4>>2]=0;o[n>>2]=o[H>>2];o[n+4>>2]=o[H+4>>2];ga(e,4293,n)|0;o[W>>2]=7;o[W+4>>2]=0;o[n>>2]=o[W>>2];o[n+4>>2]=o[W+4>>2];ga(e,4306,n)|0;o[z>>2]=8;o[z+4>>2]=0;o[n>>2]=o[z>>2];o[n+4>>2]=o[z+4>>2];ga(e,4323,n)|0;o[U>>2]=9;o[U+4>>2]=0;o[n>>2]=o[U>>2];o[n+4>>2]=o[U+4>>2];ga(e,4335,n)|0;o[j>>2]=2;o[j+4>>2]=0;o[n>>2]=o[j>>2];o[n+4>>2]=o[j+4>>2];ya(e,4353,n)|0;o[B>>2]=12;o[B+4>>2]=0;o[n>>2]=o[B>>2];o[n+4>>2]=o[B+4>>2];_a(e,4363,n)|0;o[L>>2]=1;o[L+4>>2]=0;o[n>>2]=o[L>>2];o[n+4>>2]=o[L+4>>2];ba(e,4376,n)|0;o[F>>2]=2;o[F+4>>2]=0;o[n>>2]=o[F>>2];o[n+4>>2]=o[F+4>>2];ba(e,4388,n)|0;o[R>>2]=13;o[R+4>>2]=0;o[n>>2]=o[R>>2];o[n+4>>2]=o[R+4>>2];_a(e,4402,n)|0;o[M>>2]=14;o[M+4>>2]=0;o[n>>2]=o[M>>2];o[n+4>>2]=o[M+4>>2];_a(e,4411,n)|0;o[N>>2]=15;o[N+4>>2]=0;o[n>>2]=o[N>>2];o[n+4>>2]=o[N+4>>2];_a(e,4421,n)|0;o[I>>2]=16;o[I+4>>2]=0;o[n>>2]=o[I>>2];o[n+4>>2]=o[I+4>>2];_a(e,4433,n)|0;o[P>>2]=17;o[P+4>>2]=0;o[n>>2]=o[P>>2];o[n+4>>2]=o[P+4>>2];_a(e,4446,n)|0;o[O>>2]=18;o[O+4>>2]=0;o[n>>2]=o[O>>2];o[n+4>>2]=o[O+4>>2];_a(e,4458,n)|0;o[A>>2]=3;o[A+4>>2]=0;o[n>>2]=o[A>>2];o[n+4>>2]=o[A+4>>2];ba(e,4471,n)|0;o[x>>2]=1;o[x+4>>2]=0;o[n>>2]=o[x>>2];o[n+4>>2]=o[x+4>>2];wa(e,4486,n)|0;o[T>>2]=10;o[T+4>>2]=0;o[n>>2]=o[T>>2];o[n+4>>2]=o[T+4>>2];ga(e,4496,n)|0;o[k>>2]=11;o[k+4>>2]=0;o[n>>2]=o[k>>2];o[n+4>>2]=o[k+4>>2];ga(e,4508,n)|0;o[C>>2]=3;o[C+4>>2]=0;o[n>>2]=o[C>>2];o[n+4>>2]=o[C+4>>2];ya(e,4519,n)|0;o[S>>2]=4;o[S+4>>2]=0;o[n>>2]=o[S>>2];o[n+4>>2]=o[S+4>>2];Ea(e,4530,n)|0;o[D>>2]=19;o[D+4>>2]=0;o[n>>2]=o[D>>2];o[n+4>>2]=o[D+4>>2];Da(e,4542,n)|0;o[E>>2]=12;o[E+4>>2]=0;o[n>>2]=o[E>>2];o[n+4>>2]=o[E+4>>2];Sa(e,4554,n)|0;o[w>>2]=13;o[w+4>>2]=0;o[n>>2]=o[w>>2];o[n+4>>2]=o[w+4>>2];Ca(e,4568,n)|0;o[b>>2]=2;o[b+4>>2]=0;o[n>>2]=o[b>>2];o[n+4>>2]=o[b+4>>2];ka(e,4578,n)|0;o[_>>2]=20;o[_+4>>2]=0;o[n>>2]=o[_>>2];o[n+4>>2]=o[_+4>>2];Ta(e,4587,n)|0;o[y>>2]=22;o[y+4>>2]=0;o[n>>2]=o[y>>2];o[n+4>>2]=o[y+4>>2];da(e,4602,n)|0;o[g>>2]=23;o[g+4>>2]=0;o[n>>2]=o[g>>2];o[n+4>>2]=o[g+4>>2];da(e,4619,n)|0;o[m>>2]=14;o[m+4>>2]=0;o[n>>2]=o[m>>2];o[n+4>>2]=o[m+4>>2];xa(e,4629,n)|0;o[v>>2]=1;o[v+4>>2]=0;o[n>>2]=o[v>>2];o[n+4>>2]=o[v+4>>2];Aa(e,4637,n)|0;o[p>>2]=4;o[p+4>>2]=0;o[n>>2]=o[p>>2];o[n+4>>2]=o[p+4>>2];ba(e,4653,n)|0;o[d>>2]=5;o[d+4>>2]=0;o[n>>2]=o[d>>2];o[n+4>>2]=o[d+4>>2];ba(e,4669,n)|0;o[f>>2]=6;o[f+4>>2]=0;o[n>>2]=o[f>>2];o[n+4>>2]=o[f+4>>2];ba(e,4686,n)|0;o[c>>2]=7;o[c+4>>2]=0;o[n>>2]=o[c>>2];o[n+4>>2]=o[c+4>>2];ba(e,4701,n)|0;o[s>>2]=8;o[s+4>>2]=0;o[n>>2]=o[s>>2];o[n+4>>2]=o[s+4>>2];ba(e,4719,n)|0;o[l>>2]=9;o[l+4>>2]=0;o[n>>2]=o[l>>2];o[n+4>>2]=o[l+4>>2];ba(e,4736,n)|0;o[a>>2]=21;o[a+4>>2]=0;o[n>>2]=o[a>>2];o[n+4>>2]=o[a+4>>2];Oa(e,4754,n)|0;o[u>>2]=2;o[u+4>>2]=0;o[n>>2]=o[u>>2];o[n+4>>2]=o[u+4>>2];wa(e,4772,n)|0;o[i>>2]=3;o[i+4>>2]=0;o[n>>2]=o[i>>2];o[n+4>>2]=o[i+4>>2];wa(e,4790,n)|0;o[r>>2]=4;o[r+4>>2]=0;o[n>>2]=o[r>>2];o[n+4>>2]=o[r+4>>2];wa(e,4808,n)|0;h=t;return}function la(e,t){e=e|0;t=t|0;var n=0;n=Mm()|0;o[e>>2]=n;Rm(n,t);cw(o[e>>2]|0);return}function sa(e,t,n){e=e|0;t=t|0;n=n|0;gm(e,Ia(t)|0,n,0);return e|0}function ca(e,t,n){e=e|0;t=t|0;n=n|0;Xv(e,Ia(t)|0,n,0);return e|0}function fa(e,t,n){e=e|0;t=t|0;n=n|0;Nv(e,Ia(t)|0,n,0);return e|0}function da(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0;r=h;h=h+16|0;i=r+8|0;u=r;a=o[n+4>>2]|0;o[u>>2]=o[n>>2];o[u+4>>2]=a;o[i>>2]=o[u>>2];o[i+4>>2]=o[u+4>>2];hv(e,t,i);h=r;return e|0}function pa(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0;r=h;h=h+16|0;i=r+8|0;u=r;a=o[n+4>>2]|0;o[u>>2]=o[n>>2];o[u+4>>2]=a;o[i>>2]=o[u>>2];o[i+4>>2]=o[u+4>>2];Gh(e,t,i);h=r;return e|0}function ha(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0;r=h;h=h+16|0;i=r+8|0;u=r;a=o[n+4>>2]|0;o[u>>2]=o[n>>2];o[u+4>>2]=a;o[i>>2]=o[u>>2];o[i+4>>2]=o[u+4>>2];Th(e,t,i);h=r;return e|0}function va(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0;r=h;h=h+16|0;i=r+8|0;u=r;a=o[n+4>>2]|0;o[u>>2]=o[n>>2];o[u+4>>2]=a;o[i>>2]=o[u>>2];o[i+4>>2]=o[u+4>>2];lh(e,t,i);h=r;return e|0}function ma(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0;r=h;h=h+16|0;i=r+8|0;u=r;a=o[n+4>>2]|0;o[u>>2]=o[n>>2];o[u+4>>2]=a;o[i>>2]=o[u>>2];o[i+4>>2]=o[u+4>>2];Hp(e,t,i);h=r;return e|0}function ga(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0;r=h;h=h+16|0;i=r+8|0;u=r;a=o[n+4>>2]|0;o[u>>2]=o[n>>2];o[u+4>>2]=a;o[i>>2]=o[u>>2];o[i+4>>2]=o[u+4>>2];Sp(e,t,i);h=r;return e|0}function ya(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0;r=h;h=h+16|0;i=r+8|0;u=r;a=o[n+4>>2]|0;o[u>>2]=o[n>>2];o[u+4>>2]=a;o[i>>2]=o[u>>2];o[i+4>>2]=o[u+4>>2];op(e,t,i);h=r;return e|0}function _a(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0;r=h;h=h+16|0;i=r+8|0;u=r;a=o[n+4>>2]|0;o[u>>2]=o[n>>2];o[u+4>>2]=a;o[i>>2]=o[u>>2];o[i+4>>2]=o[u+4>>2];Cd(e,t,i);h=r;return e|0}function ba(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0;r=h;h=h+16|0;i=r+8|0;u=r;a=o[n+4>>2]|0;o[u>>2]=o[n>>2];o[u+4>>2]=a;o[i>>2]=o[u>>2];o[i+4>>2]=o[u+4>>2];ud(e,t,i);h=r;return e|0}function wa(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0;r=h;h=h+16|0;i=r+8|0;u=r;a=o[n+4>>2]|0;o[u>>2]=o[n>>2];o[u+4>>2]=a;o[i>>2]=o[u>>2];o[i+4>>2]=o[u+4>>2];zf(e,t,i);h=r;return e|0}function Ea(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0;r=h;h=h+16|0;i=r+8|0;u=r;a=o[n+4>>2]|0;o[u>>2]=o[n>>2];o[u+4>>2]=a;o[i>>2]=o[u>>2];o[i+4>>2]=o[u+4>>2];Ef(e,t,i);h=r;return e|0}function Da(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0;r=h;h=h+16|0;i=r+8|0;u=r;a=o[n+4>>2]|0;o[u>>2]=o[n>>2];o[u+4>>2]=a;o[i>>2]=o[u>>2];o[i+4>>2]=o[u+4>>2];Zc(e,t,i);h=r;return e|0}function Sa(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0;r=h;h=h+16|0;i=r+8|0;u=r;a=o[n+4>>2]|0;o[u>>2]=o[n>>2];o[u+4>>2]=a;o[i>>2]=o[u>>2];o[i+4>>2]=o[u+4>>2];Nc(e,t,i);h=r;return e|0}function Ca(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0;r=h;h=h+16|0;i=r+8|0;u=r;a=o[n+4>>2]|0;o[u>>2]=o[n>>2];o[u+4>>2]=a;o[i>>2]=o[u>>2];o[i+4>>2]=o[u+4>>2];hc(e,t,i);h=r;return e|0}function ka(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0;r=h;h=h+16|0;i=r+8|0;u=r;a=o[n+4>>2]|0;o[u>>2]=o[n>>2];o[u+4>>2]=a;o[i>>2]=o[u>>2];o[i+4>>2]=o[u+4>>2];qs(e,t,i);h=r;return e|0}function Ta(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0;r=h;h=h+16|0;i=r+8|0;u=r;a=o[n+4>>2]|0;o[u>>2]=o[n>>2];o[u+4>>2]=a;o[i>>2]=o[u>>2];o[i+4>>2]=o[u+4>>2];ws(e,t,i);h=r;return e|0}function xa(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0;r=h;h=h+16|0;i=r+8|0;u=r;a=o[n+4>>2]|0;o[u>>2]=o[n>>2];o[u+4>>2]=a;o[i>>2]=o[u>>2];o[i+4>>2]=o[u+4>>2];ts(e,t,i);h=r;return e|0}function Aa(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0;r=h;h=h+16|0;i=r+8|0;u=r;a=o[n+4>>2]|0;o[u>>2]=o[n>>2];o[u+4>>2]=a;o[i>>2]=o[u>>2];o[i+4>>2]=o[u+4>>2];Ol(e,t,i);h=r;return e|0}function Oa(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0;r=h;h=h+16|0;i=r+8|0;u=r;a=o[n+4>>2]|0;o[u>>2]=o[n>>2];o[u+4>>2]=a;o[i>>2]=o[u>>2];o[i+4>>2]=o[u+4>>2];Pa(e,t,i);h=r;return e|0}function Pa(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0,l=0;r=h;h=h+16|0;i=r+8|0;u=r;l=o[n>>2]|0;a=o[n+4>>2]|0;n=Ia(t)|0;o[u>>2]=l;o[u+4>>2]=a;o[i>>2]=o[u>>2];o[i+4>>2]=o[u+4>>2];Na(e,n,i,1);h=r;return}function Ia(e){e=e|0;return e|0}function Na(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0,u=0,a=0,l=0,s=0,c=0,f=0;i=h;h=h+32|0;u=i+16|0;f=i+8|0;l=i;c=o[n>>2]|0;s=o[n+4>>2]|0;a=o[e>>2]|0;e=Ma()|0;o[f>>2]=c;o[f+4>>2]=s;o[u>>2]=o[f>>2];o[u+4>>2]=o[f+4>>2];n=Ra(u)|0;o[l>>2]=c;o[l+4>>2]=s;o[u>>2]=o[l>>2];o[u+4>>2]=o[l+4>>2];La(a,t,e,n,Fa(u,r)|0,r);h=i;return}function Ma(){var e=0,t=0;if(!(r[7616]|0)){Ya(9136);Fe(24,9136,g|0)|0;t=7616;o[t>>2]=1;o[t+4>>2]=0}if(!(Xa(9136)|0)){e=9136;t=e+36|0;do{o[e>>2]=0;e=e+4|0}while((e|0)<(t|0));Ya(9136)}return 9136}function Ra(e){e=e|0;return 0}function Fa(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0,a=0,l=0,s=0,c=0,f=0,d=0;f=h;h=h+32|0;i=f+24|0;a=f+16|0;l=f;s=f+8|0;u=o[e>>2]|0;r=o[e+4>>2]|0;o[l>>2]=u;o[l+4>>2]=r;d=Ma()|0;c=d+24|0;e=za(t,4)|0;o[s>>2]=e;t=d+28|0;n=o[t>>2]|0;if(n>>>0<(o[d+32>>2]|0)>>>0){o[a>>2]=u;o[a+4>>2]=r;o[i>>2]=o[a>>2];o[i+4>>2]=o[a+4>>2];Wa(n,i,e);e=(o[t>>2]|0)+12|0;o[t>>2]=e}else{Ha(c,l,s);e=o[t>>2]|0}h=f;return((e-(o[c>>2]|0)|0)/12|0)+-1|0}function La(e,t,n,r,i,u){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;u=u|0;var a=0,l=0,s=0,c=0,f=0,d=0,p=0,v=0;a=h;h=h+32|0;p=a+24|0;d=a+20|0;s=a+16|0;f=a+12|0;c=a+8|0;l=a+4|0;v=a;o[d>>2]=t;o[s>>2]=n;o[f>>2]=r;o[c>>2]=i;o[l>>2]=u;u=e+28|0;o[v>>2]=o[u>>2];o[p>>2]=o[v>>2];Ba(e+24|0,p,d,f,c,s,l)|0;o[u>>2]=o[o[u>>2]>>2];h=a;return}function Ba(e,t,n,r,i,u,a){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;u=u|0;a=a|0;e=ja(t)|0;t=$T(24)|0;Ua(t+4|0,o[n>>2]|0,o[r>>2]|0,o[i>>2]|0,o[u>>2]|0,o[a>>2]|0);o[t>>2]=o[e>>2];o[e>>2]=t;return t|0}function ja(e){e=e|0;return o[e>>2]|0}function Ua(e,t,n,r,i,u){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;u=u|0;o[e>>2]=t;o[e+4>>2]=n;o[e+8>>2]=r;o[e+12>>2]=i;o[e+16>>2]=u;return}function za(e,t){e=e|0;t=t|0;return t|e|0}function Wa(e,t,n){e=e|0;t=t|0;n=n|0;var r=0;r=o[t+4>>2]|0;o[e>>2]=o[t>>2];o[e+4>>2]=r;o[e+8>>2]=n;return}function Ha(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0,l=0,s=0,c=0,f=0,d=0,p=0;c=h;h=h+48|0;r=c+32|0;a=c+24|0;l=c;s=e+4|0;i=(((o[s>>2]|0)-(o[e>>2]|0)|0)/12|0)+1|0;u=Va(e)|0;if(u>>>0>>0)UT(e);else{f=o[e>>2]|0;p=((o[e+8>>2]|0)-f|0)/12|0;d=p<<1;qa(l,p>>>0>>1>>>0?d>>>0>>0?i:d:u,((o[s>>2]|0)-f|0)/12|0,e+8|0);s=l+8|0;u=o[s>>2]|0;i=o[t+4>>2]|0;n=o[n>>2]|0;o[a>>2]=o[t>>2];o[a+4>>2]=i;o[r>>2]=o[a>>2];o[r+4>>2]=o[a+4>>2];Wa(u,r,n);o[s>>2]=(o[s>>2]|0)+12;Ga(e,l);$a(l);h=c;return}}function Va(e){e=e|0;return 357913941}function qa(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0;o[e+12>>2]=0;o[e+16>>2]=r;do{if(t){if(t>>>0>357913941)Ye();else{i=$T(t*12|0)|0;break}}else i=0}while(0);o[e>>2]=i;r=i+(n*12|0)|0;o[e+8>>2]=r;o[e+4>>2]=r;o[e+12>>2]=i+(t*12|0);return}function Ga(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0,a=0;r=o[e>>2]|0;a=e+4|0;u=t+4|0;i=(o[a>>2]|0)-r|0;n=(o[u>>2]|0)+(((i|0)/-12|0)*12|0)|0;o[u>>2]=n;if((i|0)>0){ix(n|0,r|0,i|0)|0;r=u;n=o[u>>2]|0}else r=u;u=o[e>>2]|0;o[e>>2]=n;o[r>>2]=u;u=t+8|0;i=o[a>>2]|0;o[a>>2]=o[u>>2];o[u>>2]=i;u=e+8|0;a=t+12|0;e=o[u>>2]|0;o[u>>2]=o[a>>2];o[a>>2]=e;o[t>>2]=o[r>>2];return}function $a(e){e=e|0;var t=0,n=0,r=0;t=o[e+4>>2]|0;n=e+8|0;r=o[n>>2]|0;if((r|0)!=(t|0))o[n>>2]=r+(~(((r+-12-t|0)>>>0)/12|0)*12|0);e=o[e>>2]|0;if(e|0)KT(e);return}function Ya(e){e=e|0;Ja(e);return}function Ka(e){e=e|0;Qa(e+24|0);return}function Xa(e){e=e|0;return o[e>>2]|0}function Qa(e){e=e|0;var t=0,n=0,r=0;n=o[e>>2]|0;r=n;if(n|0){e=e+4|0;t=o[e>>2]|0;if((t|0)!=(n|0))o[e>>2]=t+(~(((t+-12-r|0)>>>0)/12|0)*12|0);KT(n)}return}function Ja(e){e=e|0;var t=0;t=Za()|0;nl(e,2,3,t,el()|0,0);o[e+24>>2]=0;o[e+28>>2]=0;o[e+32>>2]=0;return}function Za(){return 9228}function el(){return 1140}function tl(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0;n=h;h=h+16|0;r=n+8|0;i=n;u=rl(e)|0;e=o[u+4>>2]|0;o[i>>2]=o[u>>2];o[i+4>>2]=e;o[r>>2]=o[i>>2];o[r+4>>2]=o[i+4>>2];t=il(t,r)|0;h=n;return t|0}function nl(e,t,n,r,i,u){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;u=u|0;o[e>>2]=t;o[e+4>>2]=n;o[e+8>>2]=r;o[e+12>>2]=i;o[e+16>>2]=u;return}function rl(e){e=e|0;return(o[(Ma()|0)+24>>2]|0)+(e*12|0)|0}function il(e,t){e=e|0;t=t|0;var n=0,r=0,i=0;i=h;h=h+48|0;r=i;n=o[t>>2]|0;t=o[t+4>>2]|0;e=e+(t>>1)|0;if(t&1)n=o[(o[e>>2]|0)+n>>2]|0;vA[n&31](r,e);r=ol(r)|0;h=i;return r|0}function ol(e){e=e|0;var t=0,n=0,r=0,i=0;i=h;h=h+32|0;t=i+12|0;n=i;r=al(ul()|0)|0;if(!r)e=dl(e)|0;else{ll(t,r);sl(n,t);cl(e,n);e=fl(t)|0}h=i;return e|0}function ul(){var e=0;if(!(r[7632]|0)){Dl(9184);Fe(25,9184,g|0)|0;e=7632;o[e>>2]=1;o[e+4>>2]=0}return 9184}function al(e){e=e|0;return o[e+36>>2]|0}function ll(e,t){e=e|0;t=t|0;o[e>>2]=t;o[e+4>>2]=e;o[e+8>>2]=0;return}function sl(e,t){e=e|0;t=t|0;o[e>>2]=o[t>>2];o[e+4>>2]=o[t+4>>2];o[e+8>>2]=0;return}function cl(e,t){e=e|0;t=t|0;gl(t,e,e+8|0,e+16|0,e+24|0,e+32|0,e+40|0)|0;return}function fl(e){e=e|0;return o[(o[e+4>>2]|0)+8>>2]|0}function dl(e){e=e|0;var t=0,n=0,r=0,i=0,u=0,a=0,l=0,s=0;s=h;h=h+16|0;n=s+4|0;r=s;i=UD(8)|0;u=i;a=$T(48)|0;l=a;t=l+48|0;do{o[l>>2]=o[e>>2];l=l+4|0;e=e+4|0}while((l|0)<(t|0));t=u+4|0;o[t>>2]=a;l=$T(8)|0;a=o[t>>2]|0;o[r>>2]=0;o[n>>2]=o[r>>2];pl(l,a,n);o[i>>2]=l;h=s;return u|0}function pl(e,t,n){e=e|0;t=t|0;n=n|0;o[e>>2]=t;n=$T(16)|0;o[n+4>>2]=0;o[n+8>>2]=0;o[n>>2]=1092;o[n+12>>2]=t;o[e+4>>2]=n;return}function hl(e){e=e|0;zT(e);KT(e);return}function vl(e){e=e|0;e=o[e+12>>2]|0;if(e|0)KT(e);return}function ml(e){e=e|0;KT(e);return}function gl(e,t,n,r,i,u,a){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;u=u|0;a=a|0;u=yl(o[e>>2]|0,t,n,r,i,u,a)|0;a=e+4|0;o[(o[a>>2]|0)+8>>2]=u;return o[(o[a>>2]|0)+8>>2]|0}function yl(e,t,n,r,i,o,u){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;o=o|0;u=u|0;var a=0,l=0;a=h;h=h+16|0;l=a;Dk(l);e=Eu(e)|0;u=_l(e,+c[t>>3],+c[n>>3],+c[r>>3],+c[i>>3],+c[o>>3],+c[u>>3])|0;Ck(l);h=a;return u|0}function _l(e,t,n,r,i,o,u){e=e|0;t=+t;n=+n;r=+r;i=+i;o=+o;u=+u;var a=0;a=Cu(bl()|0)|0;t=+ku(t);n=+ku(n);r=+ku(r);i=+ku(i);o=+ku(o);return Te(0,a|0,e|0,+t,+n,+r,+i,+o,+ +ku(u))|0}function bl(){var e=0;if(!(r[7624]|0)){wl(9172);e=7624;o[e>>2]=1;o[e+4>>2]=0}return 9172}function wl(e){e=e|0;Lu(e,El()|0,6);return}function El(){return 1112}function Dl(e){e=e|0;Al(e);return}function Sl(e){e=e|0;Cl(e+24|0);kl(e+16|0);return}function Cl(e){e=e|0;xl(e);return}function kl(e){e=e|0;Tl(e);return}function Tl(e){e=e|0;var t=0,n=0;t=o[e>>2]|0;if(t|0)do{n=t;t=o[t>>2]|0;KT(n)}while((t|0)!=0);o[e>>2]=0;return}function xl(e){e=e|0;var t=0,n=0;t=o[e>>2]|0;if(t|0)do{n=t;t=o[t>>2]|0;KT(n)}while((t|0)!=0);o[e>>2]=0;return}function Al(e){e=e|0;var t=0;o[e+16>>2]=0;o[e+20>>2]=0;t=e+24|0;o[t>>2]=0;o[e+28>>2]=t;o[e+36>>2]=0;r[e+40>>0]=0;r[e+41>>0]=0;return}function Ol(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0,l=0;r=h;h=h+16|0;i=r+8|0;u=r;l=o[n>>2]|0;a=o[n+4>>2]|0;n=Ia(t)|0;o[u>>2]=l;o[u+4>>2]=a;o[i>>2]=o[u>>2];o[i+4>>2]=o[u+4>>2];Pl(e,n,i,0);h=r;return}function Pl(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0,u=0,a=0,l=0,s=0,c=0,f=0;i=h;h=h+32|0;u=i+16|0;f=i+8|0;l=i;c=o[n>>2]|0;s=o[n+4>>2]|0;a=o[e>>2]|0;e=Il()|0;o[f>>2]=c;o[f+4>>2]=s;o[u>>2]=o[f>>2];o[u+4>>2]=o[f+4>>2];n=Nl(u)|0;o[l>>2]=c;o[l+4>>2]=s;o[u>>2]=o[l>>2];o[u+4>>2]=o[l+4>>2];La(a,t,e,n,Ml(u,r)|0,r);h=i;return}function Il(){var e=0,t=0;if(!(r[7640]|0)){zl(9232);Fe(26,9232,g|0)|0;t=7640;o[t>>2]=1;o[t+4>>2]=0}if(!(Xa(9232)|0)){e=9232;t=e+36|0;do{o[e>>2]=0;e=e+4|0}while((e|0)<(t|0));zl(9232)}return 9232}function Nl(e){e=e|0;return 0}function Ml(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0,a=0,l=0,s=0,c=0,f=0,d=0;f=h;h=h+32|0;i=f+24|0;a=f+16|0;l=f;s=f+8|0;u=o[e>>2]|0;r=o[e+4>>2]|0;o[l>>2]=u;o[l+4>>2]=r;d=Il()|0;c=d+24|0;e=za(t,4)|0;o[s>>2]=e;t=d+28|0;n=o[t>>2]|0;if(n>>>0<(o[d+32>>2]|0)>>>0){o[a>>2]=u;o[a+4>>2]=r;o[i>>2]=o[a>>2];o[i+4>>2]=o[a+4>>2];Rl(n,i,e);e=(o[t>>2]|0)+12|0;o[t>>2]=e}else{Fl(c,l,s);e=o[t>>2]|0}h=f;return((e-(o[c>>2]|0)|0)/12|0)+-1|0}function Rl(e,t,n){e=e|0;t=t|0;n=n|0;var r=0;r=o[t+4>>2]|0;o[e>>2]=o[t>>2];o[e+4>>2]=r;o[e+8>>2]=n;return}function Fl(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0,l=0,s=0,c=0,f=0,d=0,p=0;c=h;h=h+48|0;r=c+32|0;a=c+24|0;l=c;s=e+4|0;i=(((o[s>>2]|0)-(o[e>>2]|0)|0)/12|0)+1|0;u=Ll(e)|0;if(u>>>0>>0)UT(e);else{f=o[e>>2]|0;p=((o[e+8>>2]|0)-f|0)/12|0;d=p<<1;Bl(l,p>>>0>>1>>>0?d>>>0>>0?i:d:u,((o[s>>2]|0)-f|0)/12|0,e+8|0);s=l+8|0;u=o[s>>2]|0;i=o[t+4>>2]|0;n=o[n>>2]|0;o[a>>2]=o[t>>2];o[a+4>>2]=i;o[r>>2]=o[a>>2];o[r+4>>2]=o[a+4>>2];Rl(u,r,n);o[s>>2]=(o[s>>2]|0)+12;jl(e,l);Ul(l);h=c;return}}function Ll(e){e=e|0;return 357913941}function Bl(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0;o[e+12>>2]=0;o[e+16>>2]=r;do{if(t){if(t>>>0>357913941)Ye();else{i=$T(t*12|0)|0;break}}else i=0}while(0);o[e>>2]=i;r=i+(n*12|0)|0;o[e+8>>2]=r;o[e+4>>2]=r;o[e+12>>2]=i+(t*12|0);return}function jl(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0,a=0;r=o[e>>2]|0;a=e+4|0;u=t+4|0;i=(o[a>>2]|0)-r|0;n=(o[u>>2]|0)+(((i|0)/-12|0)*12|0)|0;o[u>>2]=n;if((i|0)>0){ix(n|0,r|0,i|0)|0;r=u;n=o[u>>2]|0}else r=u;u=o[e>>2]|0;o[e>>2]=n;o[r>>2]=u;u=t+8|0;i=o[a>>2]|0;o[a>>2]=o[u>>2];o[u>>2]=i;u=e+8|0;a=t+12|0;e=o[u>>2]|0;o[u>>2]=o[a>>2];o[a>>2]=e;o[t>>2]=o[r>>2];return}function Ul(e){e=e|0;var t=0,n=0,r=0;t=o[e+4>>2]|0;n=e+8|0;r=o[n>>2]|0;if((r|0)!=(t|0))o[n>>2]=r+(~(((r+-12-t|0)>>>0)/12|0)*12|0);e=o[e>>2]|0;if(e|0)KT(e);return}function zl(e){e=e|0;Vl(e);return}function Wl(e){e=e|0;Hl(e+24|0);return}function Hl(e){e=e|0;var t=0,n=0,r=0;n=o[e>>2]|0;r=n;if(n|0){e=e+4|0;t=o[e>>2]|0;if((t|0)!=(n|0))o[e>>2]=t+(~(((t+-12-r|0)>>>0)/12|0)*12|0);KT(n)}return}function Vl(e){e=e|0;var t=0;t=Za()|0;nl(e,2,1,t,ql()|0,3);o[e+24>>2]=0;o[e+28>>2]=0;o[e+32>>2]=0;return}function ql(){return 1144}function Gl(e,t,n,r,i){e=e|0;t=t|0;n=+n;r=+r;i=i|0;var u=0,a=0,l=0,s=0;u=h;h=h+16|0;a=u+8|0;l=u;s=$l(e)|0;e=o[s+4>>2]|0;o[l>>2]=o[s>>2];o[l+4>>2]=e;o[a>>2]=o[l>>2];o[a+4>>2]=o[l+4>>2];Yl(t,a,n,r,i);h=u;return}function $l(e){e=e|0;return(o[(Il()|0)+24>>2]|0)+(e*12|0)|0}function Yl(e,t,n,r,i){e=e|0;t=t|0;n=+n;r=+r;i=i|0;var u=0,a=0,l=0,s=0,c=0;c=h;h=h+16|0;a=c+2|0;l=c+1|0;s=c;u=o[t>>2]|0;t=o[t+4>>2]|0;e=e+(t>>1)|0;if(t&1)u=o[(o[e>>2]|0)+u>>2]|0;Kl(a,n);n=+Xl(a,n);Kl(l,r);r=+Xl(l,r);Ql(s,i);s=Jl(s,i)|0;gA[u&1](e,n,r,s);h=c;return}function Kl(e,t){e=e|0;t=+t;return}function Xl(e,t){e=e|0;t=+t;return+ +es(t)}function Ql(e,t){e=e|0;t=t|0;return}function Jl(e,t){e=e|0;t=t|0;return Zl(t)|0}function Zl(e){e=e|0;return e|0}function es(e){e=+e;return+e}function ts(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0,l=0;r=h;h=h+16|0;i=r+8|0;u=r;l=o[n>>2]|0;a=o[n+4>>2]|0;n=Ia(t)|0;o[u>>2]=l;o[u+4>>2]=a;o[i>>2]=o[u>>2];o[i+4>>2]=o[u+4>>2];ns(e,n,i,1);h=r;return}function ns(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0,u=0,a=0,l=0,s=0,c=0,f=0;i=h;h=h+32|0;u=i+16|0;f=i+8|0;l=i;c=o[n>>2]|0;s=o[n+4>>2]|0;a=o[e>>2]|0;e=rs()|0;o[f>>2]=c;o[f+4>>2]=s;o[u>>2]=o[f>>2];o[u+4>>2]=o[f+4>>2];n=is(u)|0;o[l>>2]=c;o[l+4>>2]=s;o[u>>2]=o[l>>2];o[u+4>>2]=o[l+4>>2];La(a,t,e,n,os(u,r)|0,r);h=i;return}function rs(){var e=0,t=0;if(!(r[7648]|0)){ds(9268);Fe(27,9268,g|0)|0;t=7648;o[t>>2]=1;o[t+4>>2]=0}if(!(Xa(9268)|0)){e=9268;t=e+36|0;do{o[e>>2]=0;e=e+4|0}while((e|0)<(t|0));ds(9268)}return 9268}function is(e){e=e|0;return 0}function os(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0,a=0,l=0,s=0,c=0,f=0,d=0;f=h;h=h+32|0;i=f+24|0;a=f+16|0;l=f;s=f+8|0;u=o[e>>2]|0;r=o[e+4>>2]|0;o[l>>2]=u;o[l+4>>2]=r;d=rs()|0;c=d+24|0;e=za(t,4)|0;o[s>>2]=e;t=d+28|0;n=o[t>>2]|0;if(n>>>0<(o[d+32>>2]|0)>>>0){o[a>>2]=u;o[a+4>>2]=r;o[i>>2]=o[a>>2];o[i+4>>2]=o[a+4>>2];us(n,i,e);e=(o[t>>2]|0)+12|0;o[t>>2]=e}else{as(c,l,s);e=o[t>>2]|0}h=f;return((e-(o[c>>2]|0)|0)/12|0)+-1|0}function us(e,t,n){e=e|0;t=t|0;n=n|0;var r=0;r=o[t+4>>2]|0;o[e>>2]=o[t>>2];o[e+4>>2]=r;o[e+8>>2]=n;return}function as(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0,l=0,s=0,c=0,f=0,d=0,p=0;c=h;h=h+48|0;r=c+32|0;a=c+24|0;l=c;s=e+4|0;i=(((o[s>>2]|0)-(o[e>>2]|0)|0)/12|0)+1|0;u=ls(e)|0;if(u>>>0>>0)UT(e);else{f=o[e>>2]|0;p=((o[e+8>>2]|0)-f|0)/12|0;d=p<<1;ss(l,p>>>0>>1>>>0?d>>>0>>0?i:d:u,((o[s>>2]|0)-f|0)/12|0,e+8|0);s=l+8|0;u=o[s>>2]|0;i=o[t+4>>2]|0;n=o[n>>2]|0;o[a>>2]=o[t>>2];o[a+4>>2]=i;o[r>>2]=o[a>>2];o[r+4>>2]=o[a+4>>2];us(u,r,n);o[s>>2]=(o[s>>2]|0)+12;cs(e,l);fs(l);h=c;return}}function ls(e){e=e|0;return 357913941}function ss(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0;o[e+12>>2]=0;o[e+16>>2]=r;do{if(t){if(t>>>0>357913941)Ye();else{i=$T(t*12|0)|0;break}}else i=0}while(0);o[e>>2]=i;r=i+(n*12|0)|0;o[e+8>>2]=r;o[e+4>>2]=r;o[e+12>>2]=i+(t*12|0);return}function cs(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0,a=0;r=o[e>>2]|0;a=e+4|0;u=t+4|0;i=(o[a>>2]|0)-r|0;n=(o[u>>2]|0)+(((i|0)/-12|0)*12|0)|0;o[u>>2]=n;if((i|0)>0){ix(n|0,r|0,i|0)|0;r=u;n=o[u>>2]|0}else r=u;u=o[e>>2]|0;o[e>>2]=n;o[r>>2]=u;u=t+8|0;i=o[a>>2]|0;o[a>>2]=o[u>>2];o[u>>2]=i;u=e+8|0;a=t+12|0;e=o[u>>2]|0;o[u>>2]=o[a>>2];o[a>>2]=e;o[t>>2]=o[r>>2];return}function fs(e){e=e|0;var t=0,n=0,r=0;t=o[e+4>>2]|0;n=e+8|0;r=o[n>>2]|0;if((r|0)!=(t|0))o[n>>2]=r+(~(((r+-12-t|0)>>>0)/12|0)*12|0);e=o[e>>2]|0;if(e|0)KT(e);return}function ds(e){e=e|0;vs(e);return}function ps(e){e=e|0;hs(e+24|0);return}function hs(e){e=e|0;var t=0,n=0,r=0;n=o[e>>2]|0;r=n;if(n|0){e=e+4|0;t=o[e>>2]|0;if((t|0)!=(n|0))o[e>>2]=t+(~(((t+-12-r|0)>>>0)/12|0)*12|0);KT(n)}return}function vs(e){e=e|0;var t=0;t=Za()|0;nl(e,2,4,t,ms()|0,0);o[e+24>>2]=0;o[e+28>>2]=0;o[e+32>>2]=0;return}function ms(){return 1160}function gs(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0;n=h;h=h+16|0;r=n+8|0;i=n;u=ys(e)|0;e=o[u+4>>2]|0;o[i>>2]=o[u>>2];o[i+4>>2]=e;o[r>>2]=o[i>>2];o[r+4>>2]=o[i+4>>2];t=_s(t,r)|0;h=n;return t|0}function ys(e){e=e|0;return(o[(rs()|0)+24>>2]|0)+(e*12|0)|0}function _s(e,t){e=e|0;t=t|0;var n=0;n=o[t>>2]|0;t=o[t+4>>2]|0;e=e+(t>>1)|0;if(t&1)n=o[(o[e>>2]|0)+n>>2]|0;return bs(mA[n&31](e)|0)|0}function bs(e){e=e|0;return e&1|0}function ws(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0,l=0;r=h;h=h+16|0;i=r+8|0;u=r;l=o[n>>2]|0;a=o[n+4>>2]|0;n=Ia(t)|0;o[u>>2]=l;o[u+4>>2]=a;o[i>>2]=o[u>>2];o[i+4>>2]=o[u+4>>2];Es(e,n,i,0);h=r;return}function Es(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0,u=0,a=0,l=0,s=0,c=0,f=0;i=h;h=h+32|0;u=i+16|0;f=i+8|0;l=i;c=o[n>>2]|0;s=o[n+4>>2]|0;a=o[e>>2]|0;e=Ds()|0;o[f>>2]=c;o[f+4>>2]=s;o[u>>2]=o[f>>2];o[u+4>>2]=o[f+4>>2];n=Ss(u)|0;o[l>>2]=c;o[l+4>>2]=s;o[u>>2]=o[l>>2];o[u+4>>2]=o[l+4>>2];La(a,t,e,n,Cs(u,r)|0,r);h=i;return}function Ds(){var e=0,t=0;if(!(r[7656]|0)){Is(9304);Fe(28,9304,g|0)|0;t=7656;o[t>>2]=1;o[t+4>>2]=0}if(!(Xa(9304)|0)){e=9304;t=e+36|0;do{o[e>>2]=0;e=e+4|0}while((e|0)<(t|0));Is(9304)}return 9304}function Ss(e){e=e|0;return 0}function Cs(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0,a=0,l=0,s=0,c=0,f=0,d=0;f=h;h=h+32|0;i=f+24|0;a=f+16|0;l=f;s=f+8|0;u=o[e>>2]|0;r=o[e+4>>2]|0;o[l>>2]=u;o[l+4>>2]=r;d=Ds()|0;c=d+24|0;e=za(t,4)|0;o[s>>2]=e;t=d+28|0;n=o[t>>2]|0;if(n>>>0<(o[d+32>>2]|0)>>>0){o[a>>2]=u;o[a+4>>2]=r;o[i>>2]=o[a>>2];o[i+4>>2]=o[a+4>>2];ks(n,i,e);e=(o[t>>2]|0)+12|0;o[t>>2]=e}else{Ts(c,l,s);e=o[t>>2]|0}h=f;return((e-(o[c>>2]|0)|0)/12|0)+-1|0}function ks(e,t,n){e=e|0;t=t|0;n=n|0;var r=0;r=o[t+4>>2]|0;o[e>>2]=o[t>>2];o[e+4>>2]=r;o[e+8>>2]=n;return}function Ts(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0,l=0,s=0,c=0,f=0,d=0,p=0;c=h;h=h+48|0;r=c+32|0;a=c+24|0;l=c;s=e+4|0;i=(((o[s>>2]|0)-(o[e>>2]|0)|0)/12|0)+1|0;u=xs(e)|0;if(u>>>0>>0)UT(e);else{f=o[e>>2]|0;p=((o[e+8>>2]|0)-f|0)/12|0;d=p<<1;As(l,p>>>0>>1>>>0?d>>>0>>0?i:d:u,((o[s>>2]|0)-f|0)/12|0,e+8|0);s=l+8|0;u=o[s>>2]|0;i=o[t+4>>2]|0;n=o[n>>2]|0;o[a>>2]=o[t>>2];o[a+4>>2]=i;o[r>>2]=o[a>>2];o[r+4>>2]=o[a+4>>2];ks(u,r,n);o[s>>2]=(o[s>>2]|0)+12;Os(e,l);Ps(l);h=c;return}}function xs(e){e=e|0;return 357913941}function As(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0;o[e+12>>2]=0;o[e+16>>2]=r;do{if(t){if(t>>>0>357913941)Ye();else{i=$T(t*12|0)|0;break}}else i=0}while(0);o[e>>2]=i;r=i+(n*12|0)|0;o[e+8>>2]=r;o[e+4>>2]=r;o[e+12>>2]=i+(t*12|0);return}function Os(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0,a=0;r=o[e>>2]|0;a=e+4|0;u=t+4|0;i=(o[a>>2]|0)-r|0;n=(o[u>>2]|0)+(((i|0)/-12|0)*12|0)|0;o[u>>2]=n;if((i|0)>0){ix(n|0,r|0,i|0)|0;r=u;n=o[u>>2]|0}else r=u;u=o[e>>2]|0;o[e>>2]=n;o[r>>2]=u;u=t+8|0;i=o[a>>2]|0;o[a>>2]=o[u>>2];o[u>>2]=i;u=e+8|0;a=t+12|0;e=o[u>>2]|0;o[u>>2]=o[a>>2];o[a>>2]=e;o[t>>2]=o[r>>2];return}function Ps(e){e=e|0;var t=0,n=0,r=0;t=o[e+4>>2]|0;n=e+8|0;r=o[n>>2]|0;if((r|0)!=(t|0))o[n>>2]=r+(~(((r+-12-t|0)>>>0)/12|0)*12|0);e=o[e>>2]|0;if(e|0)KT(e);return}function Is(e){e=e|0;Rs(e);return}function Ns(e){e=e|0;Ms(e+24|0);return}function Ms(e){e=e|0;var t=0,n=0,r=0;n=o[e>>2]|0;r=n;if(n|0){e=e+4|0;t=o[e>>2]|0;if((t|0)!=(n|0))o[e>>2]=t+(~(((t+-12-r|0)>>>0)/12|0)*12|0);KT(n)}return}function Rs(e){e=e|0;var t=0;t=Za()|0;nl(e,2,5,t,Fs()|0,1);o[e+24>>2]=0;o[e+28>>2]=0;o[e+32>>2]=0;return}function Fs(){return 1164}function Ls(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0;r=h;h=h+16|0;i=r+8|0;u=r;a=Bs(e)|0;e=o[a+4>>2]|0;o[u>>2]=o[a>>2];o[u+4>>2]=e;o[i>>2]=o[u>>2];o[i+4>>2]=o[u+4>>2];js(t,i,n);h=r;return}function Bs(e){e=e|0;return(o[(Ds()|0)+24>>2]|0)+(e*12|0)|0}function js(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0;u=h;h=h+16|0;i=u;r=o[t>>2]|0;t=o[t+4>>2]|0;e=e+(t>>1)|0;if(t&1)r=o[(o[e>>2]|0)+r>>2]|0;Us(i,n);n=zs(i,n)|0;vA[r&31](e,n);Ws(i);h=u;return}function Us(e,t){e=e|0;t=t|0;Hs(e,t);return}function zs(e,t){e=e|0;t=t|0;return e|0}function Ws(e){e=e|0;Ji(e);return}function Hs(e,t){e=e|0;t=t|0;Vs(e,t);return}function Vs(e,t){e=e|0;t=t|0;o[e>>2]=t;return}function qs(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0,l=0;r=h;h=h+16|0;i=r+8|0;u=r;l=o[n>>2]|0;a=o[n+4>>2]|0;n=Ia(t)|0;o[u>>2]=l;o[u+4>>2]=a;o[i>>2]=o[u>>2];o[i+4>>2]=o[u+4>>2];Gs(e,n,i,0);h=r;return}function Gs(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0,u=0,a=0,l=0,s=0,c=0,f=0;i=h;h=h+32|0;u=i+16|0;f=i+8|0;l=i;c=o[n>>2]|0;s=o[n+4>>2]|0;a=o[e>>2]|0;e=$s()|0;o[f>>2]=c;o[f+4>>2]=s;o[u>>2]=o[f>>2];o[u+4>>2]=o[f+4>>2];n=Ys(u)|0;o[l>>2]=c;o[l+4>>2]=s;o[u>>2]=o[l>>2];o[u+4>>2]=o[l+4>>2];La(a,t,e,n,Ks(u,r)|0,r);h=i;return}function $s(){var e=0,t=0;if(!(r[7664]|0)){nc(9340);Fe(29,9340,g|0)|0;t=7664;o[t>>2]=1;o[t+4>>2]=0}if(!(Xa(9340)|0)){e=9340;t=e+36|0;do{o[e>>2]=0;e=e+4|0}while((e|0)<(t|0));nc(9340)}return 9340}function Ys(e){e=e|0;return 0}function Ks(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0,a=0,l=0,s=0,c=0,f=0,d=0;f=h;h=h+32|0;i=f+24|0;a=f+16|0;l=f;s=f+8|0;u=o[e>>2]|0;r=o[e+4>>2]|0;o[l>>2]=u;o[l+4>>2]=r;d=$s()|0;c=d+24|0;e=za(t,4)|0;o[s>>2]=e;t=d+28|0;n=o[t>>2]|0;if(n>>>0<(o[d+32>>2]|0)>>>0){o[a>>2]=u;o[a+4>>2]=r;o[i>>2]=o[a>>2];o[i+4>>2]=o[a+4>>2];Xs(n,i,e);e=(o[t>>2]|0)+12|0;o[t>>2]=e}else{Qs(c,l,s);e=o[t>>2]|0}h=f;return((e-(o[c>>2]|0)|0)/12|0)+-1|0}function Xs(e,t,n){e=e|0;t=t|0;n=n|0;var r=0;r=o[t+4>>2]|0;o[e>>2]=o[t>>2];o[e+4>>2]=r;o[e+8>>2]=n;return}function Qs(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0,l=0,s=0,c=0,f=0,d=0,p=0;c=h;h=h+48|0;r=c+32|0;a=c+24|0;l=c;s=e+4|0;i=(((o[s>>2]|0)-(o[e>>2]|0)|0)/12|0)+1|0;u=Js(e)|0;if(u>>>0>>0)UT(e);else{f=o[e>>2]|0;p=((o[e+8>>2]|0)-f|0)/12|0;d=p<<1;Zs(l,p>>>0>>1>>>0?d>>>0>>0?i:d:u,((o[s>>2]|0)-f|0)/12|0,e+8|0);s=l+8|0;u=o[s>>2]|0;i=o[t+4>>2]|0;n=o[n>>2]|0;o[a>>2]=o[t>>2];o[a+4>>2]=i;o[r>>2]=o[a>>2];o[r+4>>2]=o[a+4>>2];Xs(u,r,n);o[s>>2]=(o[s>>2]|0)+12;ec(e,l);tc(l);h=c;return}}function Js(e){e=e|0;return 357913941}function Zs(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0;o[e+12>>2]=0;o[e+16>>2]=r;do{if(t){if(t>>>0>357913941)Ye();else{i=$T(t*12|0)|0;break}}else i=0}while(0);o[e>>2]=i;r=i+(n*12|0)|0;o[e+8>>2]=r;o[e+4>>2]=r;o[e+12>>2]=i+(t*12|0);return}function ec(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0,a=0;r=o[e>>2]|0;a=e+4|0;u=t+4|0;i=(o[a>>2]|0)-r|0;n=(o[u>>2]|0)+(((i|0)/-12|0)*12|0)|0;o[u>>2]=n;if((i|0)>0){ix(n|0,r|0,i|0)|0;r=u;n=o[u>>2]|0}else r=u;u=o[e>>2]|0;o[e>>2]=n;o[r>>2]=u;u=t+8|0;i=o[a>>2]|0;o[a>>2]=o[u>>2];o[u>>2]=i;u=e+8|0;a=t+12|0;e=o[u>>2]|0;o[u>>2]=o[a>>2];o[a>>2]=e;o[t>>2]=o[r>>2];return}function tc(e){e=e|0;var t=0,n=0,r=0;t=o[e+4>>2]|0;n=e+8|0;r=o[n>>2]|0;if((r|0)!=(t|0))o[n>>2]=r+(~(((r+-12-t|0)>>>0)/12|0)*12|0);e=o[e>>2]|0;if(e|0)KT(e);return}function nc(e){e=e|0;oc(e);return}function rc(e){e=e|0;ic(e+24|0);return}function ic(e){e=e|0;var t=0,n=0,r=0;n=o[e>>2]|0;r=n;if(n|0){e=e+4|0;t=o[e>>2]|0;if((t|0)!=(n|0))o[e>>2]=t+(~(((t+-12-r|0)>>>0)/12|0)*12|0);KT(n)}return}function oc(e){e=e|0;var t=0;t=Za()|0;nl(e,2,4,t,uc()|0,1);o[e+24>>2]=0;o[e+28>>2]=0;o[e+32>>2]=0;return}function uc(){return 1180}function ac(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0;r=h;h=h+16|0;i=r+8|0;u=r;a=lc(e)|0;e=o[a+4>>2]|0;o[u>>2]=o[a>>2];o[u+4>>2]=e;o[i>>2]=o[u>>2];o[i+4>>2]=o[u+4>>2];n=sc(t,i,n)|0;h=r;return n|0}function lc(e){e=e|0;return(o[($s()|0)+24>>2]|0)+(e*12|0)|0}function sc(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0;u=h;h=h+16|0;i=u;r=o[t>>2]|0;t=o[t+4>>2]|0;e=e+(t>>1)|0;if(t&1)r=o[(o[e>>2]|0)+r>>2]|0;cc(i,n);i=fc(i,n)|0;i=dc(DA[r&15](e,i)|0)|0;h=u;return i|0}function cc(e,t){e=e|0;t=t|0;return}function fc(e,t){e=e|0;t=t|0;return pc(t)|0}function dc(e){e=e|0;return e|0}function pc(e){e=e|0;return e|0}function hc(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0,l=0;r=h;h=h+16|0;i=r+8|0;u=r;l=o[n>>2]|0;a=o[n+4>>2]|0;n=Ia(t)|0;o[u>>2]=l;o[u+4>>2]=a;o[i>>2]=o[u>>2];o[i+4>>2]=o[u+4>>2];vc(e,n,i,0);h=r;return}function vc(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0,u=0,a=0,l=0,s=0,c=0,f=0;i=h;h=h+32|0;u=i+16|0;f=i+8|0;l=i;c=o[n>>2]|0;s=o[n+4>>2]|0;a=o[e>>2]|0;e=mc()|0;o[f>>2]=c;o[f+4>>2]=s;o[u>>2]=o[f>>2];o[u+4>>2]=o[f+4>>2];n=gc(u)|0;o[l>>2]=c;o[l+4>>2]=s;o[u>>2]=o[l>>2];o[u+4>>2]=o[l+4>>2];La(a,t,e,n,yc(u,r)|0,r);h=i;return}function mc(){var e=0,t=0;if(!(r[7672]|0)){Cc(9376);Fe(30,9376,g|0)|0;t=7672;o[t>>2]=1;o[t+4>>2]=0}if(!(Xa(9376)|0)){e=9376;t=e+36|0;do{o[e>>2]=0;e=e+4|0}while((e|0)<(t|0));Cc(9376)}return 9376}function gc(e){e=e|0;return 0}function yc(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0,a=0,l=0,s=0,c=0,f=0,d=0;f=h;h=h+32|0;i=f+24|0;a=f+16|0;l=f;s=f+8|0;u=o[e>>2]|0;r=o[e+4>>2]|0;o[l>>2]=u;o[l+4>>2]=r;d=mc()|0;c=d+24|0;e=za(t,4)|0;o[s>>2]=e;t=d+28|0;n=o[t>>2]|0;if(n>>>0<(o[d+32>>2]|0)>>>0){o[a>>2]=u;o[a+4>>2]=r;o[i>>2]=o[a>>2];o[i+4>>2]=o[a+4>>2];_c(n,i,e);e=(o[t>>2]|0)+12|0;o[t>>2]=e}else{bc(c,l,s);e=o[t>>2]|0}h=f;return((e-(o[c>>2]|0)|0)/12|0)+-1|0}function _c(e,t,n){e=e|0;t=t|0;n=n|0;var r=0;r=o[t+4>>2]|0;o[e>>2]=o[t>>2];o[e+4>>2]=r;o[e+8>>2]=n;return}function bc(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0,l=0,s=0,c=0,f=0,d=0,p=0;c=h;h=h+48|0;r=c+32|0;a=c+24|0;l=c;s=e+4|0;i=(((o[s>>2]|0)-(o[e>>2]|0)|0)/12|0)+1|0;u=wc(e)|0;if(u>>>0>>0)UT(e);else{f=o[e>>2]|0;p=((o[e+8>>2]|0)-f|0)/12|0;d=p<<1;Ec(l,p>>>0>>1>>>0?d>>>0>>0?i:d:u,((o[s>>2]|0)-f|0)/12|0,e+8|0);s=l+8|0;u=o[s>>2]|0;i=o[t+4>>2]|0;n=o[n>>2]|0;o[a>>2]=o[t>>2];o[a+4>>2]=i;o[r>>2]=o[a>>2];o[r+4>>2]=o[a+4>>2];_c(u,r,n);o[s>>2]=(o[s>>2]|0)+12;Dc(e,l);Sc(l);h=c;return}}function wc(e){e=e|0;return 357913941}function Ec(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0;o[e+12>>2]=0;o[e+16>>2]=r;do{if(t){if(t>>>0>357913941)Ye();else{i=$T(t*12|0)|0;break}}else i=0}while(0);o[e>>2]=i;r=i+(n*12|0)|0;o[e+8>>2]=r;o[e+4>>2]=r;o[e+12>>2]=i+(t*12|0);return}function Dc(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0,a=0;r=o[e>>2]|0;a=e+4|0;u=t+4|0;i=(o[a>>2]|0)-r|0;n=(o[u>>2]|0)+(((i|0)/-12|0)*12|0)|0;o[u>>2]=n;if((i|0)>0){ix(n|0,r|0,i|0)|0;r=u;n=o[u>>2]|0}else r=u;u=o[e>>2]|0;o[e>>2]=n;o[r>>2]=u;u=t+8|0;i=o[a>>2]|0;o[a>>2]=o[u>>2];o[u>>2]=i;u=e+8|0;a=t+12|0;e=o[u>>2]|0;o[u>>2]=o[a>>2];o[a>>2]=e;o[t>>2]=o[r>>2];return}function Sc(e){e=e|0;var t=0,n=0,r=0;t=o[e+4>>2]|0;n=e+8|0;r=o[n>>2]|0;if((r|0)!=(t|0))o[n>>2]=r+(~(((r+-12-t|0)>>>0)/12|0)*12|0);e=o[e>>2]|0;if(e|0)KT(e);return}function Cc(e){e=e|0;xc(e);return}function kc(e){e=e|0;Tc(e+24|0);return}function Tc(e){e=e|0;var t=0,n=0,r=0;n=o[e>>2]|0;r=n;if(n|0){e=e+4|0;t=o[e>>2]|0;if((t|0)!=(n|0))o[e>>2]=t+(~(((t+-12-r|0)>>>0)/12|0)*12|0);KT(n)}return}function xc(e){e=e|0;var t=0;t=Za()|0;nl(e,2,5,t,Ac()|0,0);o[e+24>>2]=0;o[e+28>>2]=0;o[e+32>>2]=0;return}function Ac(){return 1196}function Oc(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0;n=h;h=h+16|0;r=n+8|0;i=n;u=Pc(e)|0;e=o[u+4>>2]|0;o[i>>2]=o[u>>2];o[i+4>>2]=e;o[r>>2]=o[i>>2];o[r+4>>2]=o[i+4>>2];t=Ic(t,r)|0;h=n;return t|0}function Pc(e){e=e|0;return(o[(mc()|0)+24>>2]|0)+(e*12|0)|0}function Ic(e,t){e=e|0;t=t|0;var n=0;n=o[t>>2]|0;t=o[t+4>>2]|0;e=e+(t>>1)|0;if(t&1)n=o[(o[e>>2]|0)+n>>2]|0;return dc(mA[n&31](e)|0)|0}function Nc(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0,l=0;r=h;h=h+16|0;i=r+8|0;u=r;l=o[n>>2]|0;a=o[n+4>>2]|0;n=Ia(t)|0;o[u>>2]=l;o[u+4>>2]=a;o[i>>2]=o[u>>2];o[i+4>>2]=o[u+4>>2];Mc(e,n,i,1);h=r;return}function Mc(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0,u=0,a=0,l=0,s=0,c=0,f=0;i=h;h=h+32|0;u=i+16|0;f=i+8|0;l=i;c=o[n>>2]|0;s=o[n+4>>2]|0;a=o[e>>2]|0;e=Rc()|0;o[f>>2]=c;o[f+4>>2]=s;o[u>>2]=o[f>>2];o[u+4>>2]=o[f+4>>2];n=Fc(u)|0;o[l>>2]=c;o[l+4>>2]=s;o[u>>2]=o[l>>2];o[u+4>>2]=o[l+4>>2];La(a,t,e,n,Lc(u,r)|0,r);h=i;return}function Rc(){var e=0,t=0;if(!(r[7680]|0)){Vc(9412);Fe(31,9412,g|0)|0;t=7680;o[t>>2]=1;o[t+4>>2]=0}if(!(Xa(9412)|0)){e=9412;t=e+36|0;do{o[e>>2]=0;e=e+4|0}while((e|0)<(t|0));Vc(9412)}return 9412}function Fc(e){e=e|0;return 0}function Lc(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0,a=0,l=0,s=0,c=0,f=0,d=0;f=h;h=h+32|0;i=f+24|0;a=f+16|0;l=f;s=f+8|0;u=o[e>>2]|0;r=o[e+4>>2]|0;o[l>>2]=u;o[l+4>>2]=r;d=Rc()|0;c=d+24|0;e=za(t,4)|0;o[s>>2]=e;t=d+28|0;n=o[t>>2]|0;if(n>>>0<(o[d+32>>2]|0)>>>0){o[a>>2]=u;o[a+4>>2]=r;o[i>>2]=o[a>>2];o[i+4>>2]=o[a+4>>2];Bc(n,i,e);e=(o[t>>2]|0)+12|0;o[t>>2]=e}else{jc(c,l,s);e=o[t>>2]|0}h=f;return((e-(o[c>>2]|0)|0)/12|0)+-1|0}function Bc(e,t,n){e=e|0;t=t|0;n=n|0;var r=0;r=o[t+4>>2]|0;o[e>>2]=o[t>>2];o[e+4>>2]=r;o[e+8>>2]=n;return}function jc(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0,l=0,s=0,c=0,f=0,d=0,p=0;c=h;h=h+48|0;r=c+32|0;a=c+24|0;l=c;s=e+4|0;i=(((o[s>>2]|0)-(o[e>>2]|0)|0)/12|0)+1|0;u=Uc(e)|0;if(u>>>0>>0)UT(e);else{f=o[e>>2]|0;p=((o[e+8>>2]|0)-f|0)/12|0;d=p<<1;zc(l,p>>>0>>1>>>0?d>>>0>>0?i:d:u,((o[s>>2]|0)-f|0)/12|0,e+8|0);s=l+8|0;u=o[s>>2]|0;i=o[t+4>>2]|0;n=o[n>>2]|0;o[a>>2]=o[t>>2];o[a+4>>2]=i;o[r>>2]=o[a>>2];o[r+4>>2]=o[a+4>>2];Bc(u,r,n);o[s>>2]=(o[s>>2]|0)+12;Wc(e,l);Hc(l);h=c;return}}function Uc(e){e=e|0;return 357913941}function zc(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0;o[e+12>>2]=0;o[e+16>>2]=r;do{if(t){if(t>>>0>357913941)Ye();else{i=$T(t*12|0)|0;break}}else i=0}while(0);o[e>>2]=i;r=i+(n*12|0)|0;o[e+8>>2]=r;o[e+4>>2]=r;o[e+12>>2]=i+(t*12|0);return}function Wc(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0,a=0;r=o[e>>2]|0;a=e+4|0;u=t+4|0;i=(o[a>>2]|0)-r|0;n=(o[u>>2]|0)+(((i|0)/-12|0)*12|0)|0;o[u>>2]=n;if((i|0)>0){ix(n|0,r|0,i|0)|0;r=u;n=o[u>>2]|0}else r=u;u=o[e>>2]|0;o[e>>2]=n;o[r>>2]=u;u=t+8|0;i=o[a>>2]|0;o[a>>2]=o[u>>2];o[u>>2]=i;u=e+8|0;a=t+12|0;e=o[u>>2]|0;o[u>>2]=o[a>>2];o[a>>2]=e;o[t>>2]=o[r>>2];return}function Hc(e){e=e|0;var t=0,n=0,r=0;t=o[e+4>>2]|0;n=e+8|0;r=o[n>>2]|0;if((r|0)!=(t|0))o[n>>2]=r+(~(((r+-12-t|0)>>>0)/12|0)*12|0);e=o[e>>2]|0;if(e|0)KT(e);return}function Vc(e){e=e|0;$c(e);return}function qc(e){e=e|0;Gc(e+24|0);return}function Gc(e){e=e|0;var t=0,n=0,r=0;n=o[e>>2]|0;r=n;if(n|0){e=e+4|0;t=o[e>>2]|0;if((t|0)!=(n|0))o[e>>2]=t+(~(((t+-12-r|0)>>>0)/12|0)*12|0);KT(n)}return}function $c(e){e=e|0;var t=0;t=Za()|0;nl(e,2,6,t,Yc()|0,0);o[e+24>>2]=0;o[e+28>>2]=0;o[e+32>>2]=0;return}function Yc(){return 1200}function Kc(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0;n=h;h=h+16|0;r=n+8|0;i=n;u=Xc(e)|0;e=o[u+4>>2]|0;o[i>>2]=o[u>>2];o[i+4>>2]=e;o[r>>2]=o[i>>2];o[r+4>>2]=o[i+4>>2];t=Qc(t,r)|0;h=n;return t|0}function Xc(e){e=e|0;return(o[(Rc()|0)+24>>2]|0)+(e*12|0)|0}function Qc(e,t){e=e|0;t=t|0;var n=0;n=o[t>>2]|0;t=o[t+4>>2]|0;e=e+(t>>1)|0;if(t&1)n=o[(o[e>>2]|0)+n>>2]|0;return Jc(mA[n&31](e)|0)|0}function Jc(e){e=e|0;return e|0}function Zc(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0,l=0;r=h;h=h+16|0;i=r+8|0;u=r;l=o[n>>2]|0;a=o[n+4>>2]|0;n=Ia(t)|0;o[u>>2]=l;o[u+4>>2]=a;o[i>>2]=o[u>>2];o[i+4>>2]=o[u+4>>2];ef(e,n,i,0);h=r;return}function ef(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0,u=0,a=0,l=0,s=0,c=0,f=0;i=h;h=h+32|0;u=i+16|0;f=i+8|0;l=i;c=o[n>>2]|0;s=o[n+4>>2]|0;a=o[e>>2]|0;e=tf()|0;o[f>>2]=c;o[f+4>>2]=s;o[u>>2]=o[f>>2];o[u+4>>2]=o[f+4>>2];n=nf(u)|0;o[l>>2]=c;o[l+4>>2]=s;o[u>>2]=o[l>>2];o[u+4>>2]=o[l+4>>2];La(a,t,e,n,rf(u,r)|0,r);h=i;return}function tf(){var e=0,t=0;if(!(r[7688]|0)){ff(9448);Fe(32,9448,g|0)|0;t=7688;o[t>>2]=1;o[t+4>>2]=0}if(!(Xa(9448)|0)){e=9448;t=e+36|0;do{o[e>>2]=0;e=e+4|0}while((e|0)<(t|0));ff(9448)}return 9448}function nf(e){e=e|0;return 0}function rf(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0,a=0,l=0,s=0,c=0,f=0,d=0;f=h;h=h+32|0;i=f+24|0;a=f+16|0;l=f;s=f+8|0;u=o[e>>2]|0;r=o[e+4>>2]|0;o[l>>2]=u;o[l+4>>2]=r;d=tf()|0;c=d+24|0;e=za(t,4)|0;o[s>>2]=e;t=d+28|0;n=o[t>>2]|0;if(n>>>0<(o[d+32>>2]|0)>>>0){o[a>>2]=u;o[a+4>>2]=r;o[i>>2]=o[a>>2];o[i+4>>2]=o[a+4>>2];of(n,i,e);e=(o[t>>2]|0)+12|0;o[t>>2]=e}else{uf(c,l,s);e=o[t>>2]|0}h=f;return((e-(o[c>>2]|0)|0)/12|0)+-1|0}function of(e,t,n){e=e|0;t=t|0;n=n|0;var r=0;r=o[t+4>>2]|0;o[e>>2]=o[t>>2];o[e+4>>2]=r;o[e+8>>2]=n;return}function uf(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0,l=0,s=0,c=0,f=0,d=0,p=0;c=h;h=h+48|0;r=c+32|0;a=c+24|0;l=c;s=e+4|0;i=(((o[s>>2]|0)-(o[e>>2]|0)|0)/12|0)+1|0;u=af(e)|0;if(u>>>0>>0)UT(e);else{f=o[e>>2]|0;p=((o[e+8>>2]|0)-f|0)/12|0;d=p<<1;lf(l,p>>>0>>1>>>0?d>>>0>>0?i:d:u,((o[s>>2]|0)-f|0)/12|0,e+8|0);s=l+8|0;u=o[s>>2]|0;i=o[t+4>>2]|0;n=o[n>>2]|0;o[a>>2]=o[t>>2];o[a+4>>2]=i;o[r>>2]=o[a>>2];o[r+4>>2]=o[a+4>>2];of(u,r,n);o[s>>2]=(o[s>>2]|0)+12;sf(e,l);cf(l);h=c;return}}function af(e){e=e|0;return 357913941}function lf(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0;o[e+12>>2]=0;o[e+16>>2]=r;do{if(t){if(t>>>0>357913941)Ye();else{i=$T(t*12|0)|0;break}}else i=0}while(0);o[e>>2]=i;r=i+(n*12|0)|0;o[e+8>>2]=r;o[e+4>>2]=r;o[e+12>>2]=i+(t*12|0);return}function sf(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0,a=0;r=o[e>>2]|0;a=e+4|0;u=t+4|0;i=(o[a>>2]|0)-r|0;n=(o[u>>2]|0)+(((i|0)/-12|0)*12|0)|0;o[u>>2]=n;if((i|0)>0){ix(n|0,r|0,i|0)|0;r=u;n=o[u>>2]|0}else r=u;u=o[e>>2]|0;o[e>>2]=n;o[r>>2]=u;u=t+8|0;i=o[a>>2]|0;o[a>>2]=o[u>>2];o[u>>2]=i;u=e+8|0;a=t+12|0;e=o[u>>2]|0;o[u>>2]=o[a>>2];o[a>>2]=e;o[t>>2]=o[r>>2];return}function cf(e){e=e|0;var t=0,n=0,r=0;t=o[e+4>>2]|0;n=e+8|0;r=o[n>>2]|0;if((r|0)!=(t|0))o[n>>2]=r+(~(((r+-12-t|0)>>>0)/12|0)*12|0);e=o[e>>2]|0;if(e|0)KT(e);return}function ff(e){e=e|0;hf(e);return}function df(e){e=e|0;pf(e+24|0);return}function pf(e){e=e|0;var t=0,n=0,r=0;n=o[e>>2]|0;r=n;if(n|0){e=e+4|0;t=o[e>>2]|0;if((t|0)!=(n|0))o[e>>2]=t+(~(((t+-12-r|0)>>>0)/12|0)*12|0);KT(n)}return}function hf(e){e=e|0;var t=0;t=Za()|0;nl(e,2,6,t,vf()|0,1);o[e+24>>2]=0;o[e+28>>2]=0;o[e+32>>2]=0;return}function vf(){return 1204}function mf(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0;r=h;h=h+16|0;i=r+8|0;u=r;a=gf(e)|0;e=o[a+4>>2]|0;o[u>>2]=o[a>>2];o[u+4>>2]=e;o[i>>2]=o[u>>2];o[i+4>>2]=o[u+4>>2];yf(t,i,n);h=r;return}function gf(e){e=e|0;return(o[(tf()|0)+24>>2]|0)+(e*12|0)|0}function yf(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0;u=h;h=h+16|0;i=u;r=o[t>>2]|0;t=o[t+4>>2]|0;e=e+(t>>1)|0;if(t&1)r=o[(o[e>>2]|0)+r>>2]|0;_f(i,n);i=bf(i,n)|0;vA[r&31](e,i);h=u;return}function _f(e,t){e=e|0;t=t|0;return}function bf(e,t){e=e|0;t=t|0;return wf(t)|0}function wf(e){e=e|0;return e|0}function Ef(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0,l=0;r=h;h=h+16|0;i=r+8|0;u=r;l=o[n>>2]|0;a=o[n+4>>2]|0;n=Ia(t)|0;o[u>>2]=l;o[u+4>>2]=a;o[i>>2]=o[u>>2];o[i+4>>2]=o[u+4>>2];Df(e,n,i,0);h=r;return}function Df(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0,u=0,a=0,l=0,s=0,c=0,f=0;i=h;h=h+32|0;u=i+16|0;f=i+8|0;l=i;c=o[n>>2]|0;s=o[n+4>>2]|0;a=o[e>>2]|0;e=Sf()|0;o[f>>2]=c;o[f+4>>2]=s;o[u>>2]=o[f>>2];o[u+4>>2]=o[f+4>>2];n=Cf(u)|0;o[l>>2]=c;o[l+4>>2]=s;o[u>>2]=o[l>>2];o[u+4>>2]=o[l+4>>2];La(a,t,e,n,kf(u,r)|0,r);h=i;return}function Sf(){var e=0,t=0;if(!(r[7696]|0)){Nf(9484);Fe(33,9484,g|0)|0;t=7696;o[t>>2]=1;o[t+4>>2]=0}if(!(Xa(9484)|0)){e=9484;t=e+36|0;do{o[e>>2]=0;e=e+4|0}while((e|0)<(t|0));Nf(9484)}return 9484}function Cf(e){e=e|0;return 0}function kf(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0,a=0,l=0,s=0,c=0,f=0,d=0;f=h;h=h+32|0;i=f+24|0;a=f+16|0;l=f;s=f+8|0;u=o[e>>2]|0;r=o[e+4>>2]|0;o[l>>2]=u;o[l+4>>2]=r;d=Sf()|0;c=d+24|0;e=za(t,4)|0;o[s>>2]=e;t=d+28|0;n=o[t>>2]|0;if(n>>>0<(o[d+32>>2]|0)>>>0){o[a>>2]=u;o[a+4>>2]=r;o[i>>2]=o[a>>2];o[i+4>>2]=o[a+4>>2];Tf(n,i,e);e=(o[t>>2]|0)+12|0;o[t>>2]=e}else{xf(c,l,s);e=o[t>>2]|0}h=f;return((e-(o[c>>2]|0)|0)/12|0)+-1|0}function Tf(e,t,n){e=e|0;t=t|0;n=n|0;var r=0;r=o[t+4>>2]|0;o[e>>2]=o[t>>2];o[e+4>>2]=r;o[e+8>>2]=n;return}function xf(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0,l=0,s=0,c=0,f=0,d=0,p=0;c=h;h=h+48|0;r=c+32|0;a=c+24|0;l=c;s=e+4|0;i=(((o[s>>2]|0)-(o[e>>2]|0)|0)/12|0)+1|0;u=Af(e)|0;if(u>>>0>>0)UT(e);else{f=o[e>>2]|0;p=((o[e+8>>2]|0)-f|0)/12|0;d=p<<1;Of(l,p>>>0>>1>>>0?d>>>0>>0?i:d:u,((o[s>>2]|0)-f|0)/12|0,e+8|0);s=l+8|0;u=o[s>>2]|0;i=o[t+4>>2]|0;n=o[n>>2]|0;o[a>>2]=o[t>>2];o[a+4>>2]=i;o[r>>2]=o[a>>2];o[r+4>>2]=o[a+4>>2];Tf(u,r,n);o[s>>2]=(o[s>>2]|0)+12;Pf(e,l);If(l);h=c;return}}function Af(e){e=e|0;return 357913941}function Of(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0;o[e+12>>2]=0;o[e+16>>2]=r;do{if(t){if(t>>>0>357913941)Ye();else{i=$T(t*12|0)|0;break}}else i=0}while(0);o[e>>2]=i;r=i+(n*12|0)|0;o[e+8>>2]=r;o[e+4>>2]=r;o[e+12>>2]=i+(t*12|0);return}function Pf(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0,a=0;r=o[e>>2]|0;a=e+4|0;u=t+4|0;i=(o[a>>2]|0)-r|0;n=(o[u>>2]|0)+(((i|0)/-12|0)*12|0)|0;o[u>>2]=n;if((i|0)>0){ix(n|0,r|0,i|0)|0;r=u;n=o[u>>2]|0}else r=u;u=o[e>>2]|0;o[e>>2]=n;o[r>>2]=u;u=t+8|0;i=o[a>>2]|0;o[a>>2]=o[u>>2];o[u>>2]=i;u=e+8|0;a=t+12|0;e=o[u>>2]|0;o[u>>2]=o[a>>2];o[a>>2]=e;o[t>>2]=o[r>>2];return}function If(e){e=e|0;var t=0,n=0,r=0;t=o[e+4>>2]|0;n=e+8|0;r=o[n>>2]|0;if((r|0)!=(t|0))o[n>>2]=r+(~(((r+-12-t|0)>>>0)/12|0)*12|0);e=o[e>>2]|0;if(e|0)KT(e);return}function Nf(e){e=e|0;Ff(e);return}function Mf(e){e=e|0;Rf(e+24|0);return}function Rf(e){e=e|0;var t=0,n=0,r=0;n=o[e>>2]|0;r=n;if(n|0){e=e+4|0;t=o[e>>2]|0;if((t|0)!=(n|0))o[e>>2]=t+(~(((t+-12-r|0)>>>0)/12|0)*12|0);KT(n)}return}function Ff(e){e=e|0;var t=0;t=Za()|0;nl(e,2,1,t,Lf()|0,2);o[e+24>>2]=0;o[e+28>>2]=0;o[e+32>>2]=0;return}function Lf(){return 1212}function Bf(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0,u=0,a=0,l=0;i=h;h=h+16|0;u=i+8|0;a=i;l=jf(e)|0;e=o[l+4>>2]|0;o[a>>2]=o[l>>2];o[a+4>>2]=e;o[u>>2]=o[a>>2];o[u+4>>2]=o[a+4>>2];Uf(t,u,n,r);h=i;return}function jf(e){e=e|0;return(o[(Sf()|0)+24>>2]|0)+(e*12|0)|0}function Uf(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0,u=0,a=0,l=0;l=h;h=h+16|0;u=l+1|0;a=l;i=o[t>>2]|0;t=o[t+4>>2]|0;e=e+(t>>1)|0;if(t&1)i=o[(o[e>>2]|0)+i>>2]|0;_f(u,n);u=bf(u,n)|0;cc(a,r);a=fc(a,r)|0;PA[i&15](e,u,a);h=l;return}function zf(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0,l=0;r=h;h=h+16|0;i=r+8|0;u=r;l=o[n>>2]|0;a=o[n+4>>2]|0;n=Ia(t)|0;o[u>>2]=l;o[u+4>>2]=a;o[i>>2]=o[u>>2];o[i+4>>2]=o[u+4>>2];Wf(e,n,i,1);h=r;return}function Wf(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0,u=0,a=0,l=0,s=0,c=0,f=0;i=h;h=h+32|0;u=i+16|0;f=i+8|0;l=i;c=o[n>>2]|0;s=o[n+4>>2]|0;a=o[e>>2]|0;e=Hf()|0;o[f>>2]=c;o[f+4>>2]=s;o[u>>2]=o[f>>2];o[u+4>>2]=o[f+4>>2];n=Vf(u)|0;o[l>>2]=c;o[l+4>>2]=s;o[u>>2]=o[l>>2];o[u+4>>2]=o[l+4>>2];La(a,t,e,n,qf(u,r)|0,r);h=i;return}function Hf(){var e=0,t=0;if(!(r[7704]|0)){Jf(9520);Fe(34,9520,g|0)|0;t=7704;o[t>>2]=1;o[t+4>>2]=0}if(!(Xa(9520)|0)){e=9520;t=e+36|0;do{o[e>>2]=0;e=e+4|0}while((e|0)<(t|0));Jf(9520)}return 9520}function Vf(e){e=e|0;return 0}function qf(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0,a=0,l=0,s=0,c=0,f=0,d=0;f=h;h=h+32|0;i=f+24|0;a=f+16|0;l=f;s=f+8|0;u=o[e>>2]|0;r=o[e+4>>2]|0;o[l>>2]=u;o[l+4>>2]=r;d=Hf()|0;c=d+24|0;e=za(t,4)|0;o[s>>2]=e;t=d+28|0;n=o[t>>2]|0;if(n>>>0<(o[d+32>>2]|0)>>>0){o[a>>2]=u;o[a+4>>2]=r;o[i>>2]=o[a>>2];o[i+4>>2]=o[a+4>>2];Gf(n,i,e);e=(o[t>>2]|0)+12|0;o[t>>2]=e}else{$f(c,l,s);e=o[t>>2]|0}h=f;return((e-(o[c>>2]|0)|0)/12|0)+-1|0}function Gf(e,t,n){e=e|0;t=t|0;n=n|0;var r=0;r=o[t+4>>2]|0;o[e>>2]=o[t>>2];o[e+4>>2]=r;o[e+8>>2]=n;return}function $f(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0,l=0,s=0,c=0,f=0,d=0,p=0;c=h;h=h+48|0;r=c+32|0;a=c+24|0;l=c;s=e+4|0;i=(((o[s>>2]|0)-(o[e>>2]|0)|0)/12|0)+1|0;u=Yf(e)|0;if(u>>>0>>0)UT(e);else{f=o[e>>2]|0;p=((o[e+8>>2]|0)-f|0)/12|0;d=p<<1;Kf(l,p>>>0>>1>>>0?d>>>0>>0?i:d:u,((o[s>>2]|0)-f|0)/12|0,e+8|0);s=l+8|0;u=o[s>>2]|0;i=o[t+4>>2]|0;n=o[n>>2]|0;o[a>>2]=o[t>>2];o[a+4>>2]=i;o[r>>2]=o[a>>2];o[r+4>>2]=o[a+4>>2];Gf(u,r,n);o[s>>2]=(o[s>>2]|0)+12;Xf(e,l);Qf(l);h=c;return}}function Yf(e){e=e|0;return 357913941}function Kf(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0;o[e+12>>2]=0;o[e+16>>2]=r;do{if(t){if(t>>>0>357913941)Ye();else{i=$T(t*12|0)|0;break}}else i=0}while(0);o[e>>2]=i;r=i+(n*12|0)|0;o[e+8>>2]=r;o[e+4>>2]=r;o[e+12>>2]=i+(t*12|0);return}function Xf(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0,a=0;r=o[e>>2]|0;a=e+4|0;u=t+4|0;i=(o[a>>2]|0)-r|0;n=(o[u>>2]|0)+(((i|0)/-12|0)*12|0)|0;o[u>>2]=n;if((i|0)>0){ix(n|0,r|0,i|0)|0;r=u;n=o[u>>2]|0}else r=u;u=o[e>>2]|0;o[e>>2]=n;o[r>>2]=u;u=t+8|0;i=o[a>>2]|0;o[a>>2]=o[u>>2];o[u>>2]=i;u=e+8|0;a=t+12|0;e=o[u>>2]|0;o[u>>2]=o[a>>2];o[a>>2]=e;o[t>>2]=o[r>>2];return}function Qf(e){e=e|0;var t=0,n=0,r=0;t=o[e+4>>2]|0;n=e+8|0;r=o[n>>2]|0;if((r|0)!=(t|0))o[n>>2]=r+(~(((r+-12-t|0)>>>0)/12|0)*12|0);e=o[e>>2]|0;if(e|0)KT(e);return}function Jf(e){e=e|0;td(e);return}function Zf(e){e=e|0;ed(e+24|0);return}function ed(e){e=e|0;var t=0,n=0,r=0;n=o[e>>2]|0;r=n;if(n|0){e=e+4|0;t=o[e>>2]|0;if((t|0)!=(n|0))o[e>>2]=t+(~(((t+-12-r|0)>>>0)/12|0)*12|0);KT(n)}return}function td(e){e=e|0;var t=0;t=Za()|0;nl(e,2,1,t,nd()|0,1);o[e+24>>2]=0;o[e+28>>2]=0;o[e+32>>2]=0;return}function nd(){return 1224}function rd(e,t,n){e=e|0;t=t|0;n=n|0;var r=0.0,i=0,u=0,a=0,l=0;i=h;h=h+16|0;u=i+8|0;a=i;l=id(e)|0;e=o[l+4>>2]|0;o[a>>2]=o[l>>2];o[a+4>>2]=e;o[u>>2]=o[a>>2];o[u+4>>2]=o[a+4>>2];r=+od(t,u,n);h=i;return+r}function id(e){e=e|0;return(o[(Hf()|0)+24>>2]|0)+(e*12|0)|0}function od(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0.0;u=h;h=h+16|0;i=u;r=o[t>>2]|0;t=o[t+4>>2]|0;e=e+(t>>1)|0;if(t&1)r=o[(o[e>>2]|0)+r>>2]|0;Ql(i,n);i=Jl(i,n)|0;a=+Mu(+kA[r&7](e,i));h=u;return+a}function ud(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0,l=0;r=h;h=h+16|0;i=r+8|0;u=r;l=o[n>>2]|0;a=o[n+4>>2]|0;n=Ia(t)|0;o[u>>2]=l;o[u+4>>2]=a;o[i>>2]=o[u>>2];o[i+4>>2]=o[u+4>>2];ad(e,n,i,1);h=r;return}function ad(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0,u=0,a=0,l=0,s=0,c=0,f=0;i=h;h=h+32|0;u=i+16|0;f=i+8|0;l=i;c=o[n>>2]|0;s=o[n+4>>2]|0;a=o[e>>2]|0;e=ld()|0;o[f>>2]=c;o[f+4>>2]=s;o[u>>2]=o[f>>2];o[u+4>>2]=o[f+4>>2];n=sd(u)|0;o[l>>2]=c;o[l+4>>2]=s;o[u>>2]=o[l>>2];o[u+4>>2]=o[l+4>>2];La(a,t,e,n,cd(u,r)|0,r);h=i;return}function ld(){var e=0,t=0;if(!(r[7712]|0)){gd(9556);Fe(35,9556,g|0)|0;t=7712;o[t>>2]=1;o[t+4>>2]=0}if(!(Xa(9556)|0)){e=9556;t=e+36|0;do{o[e>>2]=0;e=e+4|0}while((e|0)<(t|0));gd(9556)}return 9556}function sd(e){e=e|0;return 0}function cd(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0,a=0,l=0,s=0,c=0,f=0,d=0;f=h;h=h+32|0;i=f+24|0;a=f+16|0;l=f;s=f+8|0;u=o[e>>2]|0;r=o[e+4>>2]|0;o[l>>2]=u;o[l+4>>2]=r;d=ld()|0;c=d+24|0;e=za(t,4)|0;o[s>>2]=e;t=d+28|0;n=o[t>>2]|0;if(n>>>0<(o[d+32>>2]|0)>>>0){o[a>>2]=u;o[a+4>>2]=r;o[i>>2]=o[a>>2];o[i+4>>2]=o[a+4>>2];fd(n,i,e);e=(o[t>>2]|0)+12|0;o[t>>2]=e}else{dd(c,l,s);e=o[t>>2]|0}h=f;return((e-(o[c>>2]|0)|0)/12|0)+-1|0}function fd(e,t,n){e=e|0;t=t|0;n=n|0;var r=0;r=o[t+4>>2]|0;o[e>>2]=o[t>>2];o[e+4>>2]=r;o[e+8>>2]=n;return}function dd(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0,l=0,s=0,c=0,f=0,d=0,p=0;c=h;h=h+48|0;r=c+32|0;a=c+24|0;l=c;s=e+4|0;i=(((o[s>>2]|0)-(o[e>>2]|0)|0)/12|0)+1|0;u=pd(e)|0;if(u>>>0>>0)UT(e);else{f=o[e>>2]|0;p=((o[e+8>>2]|0)-f|0)/12|0;d=p<<1;hd(l,p>>>0>>1>>>0?d>>>0>>0?i:d:u,((o[s>>2]|0)-f|0)/12|0,e+8|0);s=l+8|0;u=o[s>>2]|0;i=o[t+4>>2]|0;n=o[n>>2]|0;o[a>>2]=o[t>>2];o[a+4>>2]=i;o[r>>2]=o[a>>2];o[r+4>>2]=o[a+4>>2];fd(u,r,n);o[s>>2]=(o[s>>2]|0)+12;vd(e,l);md(l);h=c;return}}function pd(e){e=e|0;return 357913941}function hd(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0;o[e+12>>2]=0;o[e+16>>2]=r;do{if(t){if(t>>>0>357913941)Ye();else{i=$T(t*12|0)|0;break}}else i=0}while(0);o[e>>2]=i;r=i+(n*12|0)|0;o[e+8>>2]=r;o[e+4>>2]=r;o[e+12>>2]=i+(t*12|0);return}function vd(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0,a=0;r=o[e>>2]|0;a=e+4|0;u=t+4|0;i=(o[a>>2]|0)-r|0;n=(o[u>>2]|0)+(((i|0)/-12|0)*12|0)|0;o[u>>2]=n;if((i|0)>0){ix(n|0,r|0,i|0)|0;r=u;n=o[u>>2]|0}else r=u;u=o[e>>2]|0;o[e>>2]=n;o[r>>2]=u;u=t+8|0;i=o[a>>2]|0;o[a>>2]=o[u>>2];o[u>>2]=i;u=e+8|0;a=t+12|0;e=o[u>>2]|0;o[u>>2]=o[a>>2];o[a>>2]=e;o[t>>2]=o[r>>2];return}function md(e){e=e|0;var t=0,n=0,r=0;t=o[e+4>>2]|0;n=e+8|0;r=o[n>>2]|0;if((r|0)!=(t|0))o[n>>2]=r+(~(((r+-12-t|0)>>>0)/12|0)*12|0);e=o[e>>2]|0;if(e|0)KT(e);return}function gd(e){e=e|0;bd(e);return}function yd(e){e=e|0;_d(e+24|0);return}function _d(e){e=e|0;var t=0,n=0,r=0;n=o[e>>2]|0;r=n;if(n|0){e=e+4|0;t=o[e>>2]|0;if((t|0)!=(n|0))o[e>>2]=t+(~(((t+-12-r|0)>>>0)/12|0)*12|0);KT(n)}return}function bd(e){e=e|0;var t=0;t=Za()|0;nl(e,2,5,t,wd()|0,0);o[e+24>>2]=0;o[e+28>>2]=0;o[e+32>>2]=0;return}function wd(){return 1232}function Ed(e,t){e=e|0;t=t|0;var n=0.0,r=0,i=0,u=0,a=0;r=h;h=h+16|0;i=r+8|0;u=r;a=Dd(e)|0;e=o[a+4>>2]|0;o[u>>2]=o[a>>2];o[u+4>>2]=e;o[i>>2]=o[u>>2];o[i+4>>2]=o[u+4>>2];n=+Sd(t,i);h=r;return+n}function Dd(e){e=e|0;return(o[(ld()|0)+24>>2]|0)+(e*12|0)|0}function Sd(e,t){e=e|0;t=t|0;var n=0;n=o[t>>2]|0;t=o[t+4>>2]|0;e=e+(t>>1)|0;if(t&1)n=o[(o[e>>2]|0)+n>>2]|0;return+ +Mu(+wA[n&15](e))}function Cd(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0,l=0;r=h;h=h+16|0;i=r+8|0;u=r;l=o[n>>2]|0;a=o[n+4>>2]|0;n=Ia(t)|0;o[u>>2]=l;o[u+4>>2]=a;o[i>>2]=o[u>>2];o[i+4>>2]=o[u+4>>2];kd(e,n,i,1);h=r;return}function kd(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0,u=0,a=0,l=0,s=0,c=0,f=0;i=h;h=h+32|0;u=i+16|0;f=i+8|0;l=i;c=o[n>>2]|0;s=o[n+4>>2]|0;a=o[e>>2]|0;e=Td()|0;o[f>>2]=c;o[f+4>>2]=s;o[u>>2]=o[f>>2];o[u+4>>2]=o[f+4>>2];n=xd(u)|0;o[l>>2]=c;o[l+4>>2]=s;o[u>>2]=o[l>>2];o[u+4>>2]=o[l+4>>2];La(a,t,e,n,Ad(u,r)|0,r);h=i;return}function Td(){var e=0,t=0;if(!(r[7720]|0)){Fd(9592);Fe(36,9592,g|0)|0;t=7720;o[t>>2]=1;o[t+4>>2]=0}if(!(Xa(9592)|0)){e=9592;t=e+36|0;do{o[e>>2]=0;e=e+4|0}while((e|0)<(t|0));Fd(9592)}return 9592}function xd(e){e=e|0;return 0}function Ad(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0,a=0,l=0,s=0,c=0,f=0,d=0;f=h;h=h+32|0;i=f+24|0;a=f+16|0;l=f;s=f+8|0;u=o[e>>2]|0;r=o[e+4>>2]|0;o[l>>2]=u;o[l+4>>2]=r;d=Td()|0;c=d+24|0;e=za(t,4)|0;o[s>>2]=e;t=d+28|0;n=o[t>>2]|0;if(n>>>0<(o[d+32>>2]|0)>>>0){o[a>>2]=u;o[a+4>>2]=r;o[i>>2]=o[a>>2];o[i+4>>2]=o[a+4>>2];Od(n,i,e);e=(o[t>>2]|0)+12|0;o[t>>2]=e}else{Pd(c,l,s);e=o[t>>2]|0}h=f;return((e-(o[c>>2]|0)|0)/12|0)+-1|0}function Od(e,t,n){e=e|0;t=t|0;n=n|0;var r=0;r=o[t+4>>2]|0;o[e>>2]=o[t>>2];o[e+4>>2]=r;o[e+8>>2]=n;return}function Pd(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0,l=0,s=0,c=0,f=0,d=0,p=0;c=h;h=h+48|0;r=c+32|0;a=c+24|0;l=c;s=e+4|0;i=(((o[s>>2]|0)-(o[e>>2]|0)|0)/12|0)+1|0;u=Id(e)|0;if(u>>>0>>0)UT(e);else{f=o[e>>2]|0;p=((o[e+8>>2]|0)-f|0)/12|0;d=p<<1;Nd(l,p>>>0>>1>>>0?d>>>0>>0?i:d:u,((o[s>>2]|0)-f|0)/12|0,e+8|0);s=l+8|0;u=o[s>>2]|0;i=o[t+4>>2]|0;n=o[n>>2]|0;o[a>>2]=o[t>>2];o[a+4>>2]=i;o[r>>2]=o[a>>2];o[r+4>>2]=o[a+4>>2];Od(u,r,n);o[s>>2]=(o[s>>2]|0)+12;Md(e,l);Rd(l);h=c;return}}function Id(e){e=e|0;return 357913941}function Nd(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0;o[e+12>>2]=0;o[e+16>>2]=r;do{if(t){if(t>>>0>357913941)Ye();else{i=$T(t*12|0)|0;break}}else i=0}while(0);o[e>>2]=i;r=i+(n*12|0)|0;o[e+8>>2]=r;o[e+4>>2]=r;o[e+12>>2]=i+(t*12|0);return}function Md(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0,a=0;r=o[e>>2]|0;a=e+4|0;u=t+4|0;i=(o[a>>2]|0)-r|0;n=(o[u>>2]|0)+(((i|0)/-12|0)*12|0)|0;o[u>>2]=n;if((i|0)>0){ix(n|0,r|0,i|0)|0;r=u;n=o[u>>2]|0}else r=u;u=o[e>>2]|0;o[e>>2]=n;o[r>>2]=u;u=t+8|0;i=o[a>>2]|0;o[a>>2]=o[u>>2];o[u>>2]=i;u=e+8|0;a=t+12|0;e=o[u>>2]|0;o[u>>2]=o[a>>2];o[a>>2]=e;o[t>>2]=o[r>>2];return}function Rd(e){e=e|0;var t=0,n=0,r=0;t=o[e+4>>2]|0;n=e+8|0;r=o[n>>2]|0;if((r|0)!=(t|0))o[n>>2]=r+(~(((r+-12-t|0)>>>0)/12|0)*12|0);e=o[e>>2]|0;if(e|0)KT(e);return}function Fd(e){e=e|0;jd(e);return}function Ld(e){e=e|0;Bd(e+24|0);return}function Bd(e){e=e|0;var t=0,n=0,r=0;n=o[e>>2]|0;r=n;if(n|0){e=e+4|0;t=o[e>>2]|0;if((t|0)!=(n|0))o[e>>2]=t+(~(((t+-12-r|0)>>>0)/12|0)*12|0);KT(n)}return}function jd(e){e=e|0;var t=0;t=Za()|0;nl(e,2,7,t,Ud()|0,0);o[e+24>>2]=0;o[e+28>>2]=0;o[e+32>>2]=0;return}function Ud(){return 1276}function zd(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0;n=h;h=h+16|0;r=n+8|0;i=n;u=Wd(e)|0;e=o[u+4>>2]|0;o[i>>2]=o[u>>2];o[i+4>>2]=e;o[r>>2]=o[i>>2];o[r+4>>2]=o[i+4>>2];t=Hd(t,r)|0;h=n;return t|0}function Wd(e){e=e|0;return(o[(Td()|0)+24>>2]|0)+(e*12|0)|0}function Hd(e,t){e=e|0;t=t|0;var n=0,r=0,i=0;i=h;h=h+16|0;r=i;n=o[t>>2]|0;t=o[t+4>>2]|0;e=e+(t>>1)|0;if(t&1)n=o[(o[e>>2]|0)+n>>2]|0;vA[n&31](r,e);r=Vd(r)|0;h=i;return r|0}function Vd(e){e=e|0;var t=0,n=0,r=0,i=0;i=h;h=h+32|0;t=i+12|0;n=i;r=al(qd()|0)|0;if(!r)e=$d(e)|0;else{ll(t,r);sl(n,t);Gd(e,n);e=fl(t)|0}h=i;return e|0}function qd(){var e=0;if(!(r[7736]|0)){ip(9640);Fe(25,9640,g|0)|0;e=7736;o[e>>2]=1;o[e+4>>2]=0}return 9640}function Gd(e,t){e=e|0;t=t|0;Jd(t,e,e+8|0)|0;return}function $d(e){e=e|0;var t=0,n=0,r=0,i=0,u=0,a=0,l=0;n=h;h=h+16|0;i=n+4|0;a=n;r=UD(8)|0;t=r;l=$T(16)|0;o[l>>2]=o[e>>2];o[l+4>>2]=o[e+4>>2];o[l+8>>2]=o[e+8>>2];o[l+12>>2]=o[e+12>>2];u=t+4|0;o[u>>2]=l;e=$T(8)|0;u=o[u>>2]|0;o[a>>2]=0;o[i>>2]=o[a>>2];Yd(e,u,i);o[r>>2]=e;h=n;return t|0}function Yd(e,t,n){e=e|0;t=t|0;n=n|0;o[e>>2]=t;n=$T(16)|0;o[n+4>>2]=0;o[n+8>>2]=0;o[n>>2]=1244;o[n+12>>2]=t;o[e+4>>2]=n;return}function Kd(e){e=e|0;zT(e);KT(e);return}function Xd(e){e=e|0;e=o[e+12>>2]|0;if(e|0)KT(e);return}function Qd(e){e=e|0;KT(e);return}function Jd(e,t,n){e=e|0;t=t|0;n=n|0;t=Zd(o[e>>2]|0,t,n)|0;n=e+4|0;o[(o[n>>2]|0)+8>>2]=t;return o[(o[n>>2]|0)+8>>2]|0}function Zd(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0;r=h;h=h+16|0;i=r;Dk(i);e=Eu(e)|0;n=ep(e,o[t>>2]|0,+c[n>>3])|0;Ck(i);h=r;return n|0}function ep(e,t,n){e=e|0;t=t|0;n=+n;var r=0;r=Cu(tp()|0)|0;t=Tu(t)|0;return xe(0,r|0,e|0,t|0,+ +ku(n))|0}function tp(){var e=0;if(!(r[7728]|0)){np(9628);e=7728;o[e>>2]=1;o[e+4>>2]=0}return 9628}function np(e){e=e|0;Lu(e,rp()|0,2);return}function rp(){return 1264}function ip(e){e=e|0;Al(e);return}function op(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0,l=0;r=h;h=h+16|0;i=r+8|0;u=r;l=o[n>>2]|0;a=o[n+4>>2]|0;n=Ia(t)|0;o[u>>2]=l;o[u+4>>2]=a;o[i>>2]=o[u>>2];o[i+4>>2]=o[u+4>>2];up(e,n,i,1);h=r;return}function up(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0,u=0,a=0,l=0,s=0,c=0,f=0;i=h;h=h+32|0;u=i+16|0;f=i+8|0;l=i;c=o[n>>2]|0;s=o[n+4>>2]|0;a=o[e>>2]|0;e=ap()|0;o[f>>2]=c;o[f+4>>2]=s;o[u>>2]=o[f>>2];o[u+4>>2]=o[f+4>>2];n=lp(u)|0;o[l>>2]=c;o[l+4>>2]=s;o[u>>2]=o[l>>2];o[u+4>>2]=o[l+4>>2];La(a,t,e,n,sp(u,r)|0,r);h=i;return}function ap(){var e=0,t=0;if(!(r[7744]|0)){mp(9684);Fe(37,9684,g|0)|0;t=7744;o[t>>2]=1;o[t+4>>2]=0}if(!(Xa(9684)|0)){e=9684;t=e+36|0;do{o[e>>2]=0;e=e+4|0}while((e|0)<(t|0));mp(9684)}return 9684}function lp(e){e=e|0;return 0}function sp(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0,a=0,l=0,s=0,c=0,f=0,d=0;f=h;h=h+32|0;i=f+24|0;a=f+16|0;l=f;s=f+8|0;u=o[e>>2]|0;r=o[e+4>>2]|0;o[l>>2]=u;o[l+4>>2]=r;d=ap()|0;c=d+24|0;e=za(t,4)|0;o[s>>2]=e;t=d+28|0;n=o[t>>2]|0;if(n>>>0<(o[d+32>>2]|0)>>>0){o[a>>2]=u;o[a+4>>2]=r;o[i>>2]=o[a>>2];o[i+4>>2]=o[a+4>>2];cp(n,i,e);e=(o[t>>2]|0)+12|0;o[t>>2]=e}else{fp(c,l,s);e=o[t>>2]|0}h=f;return((e-(o[c>>2]|0)|0)/12|0)+-1|0}function cp(e,t,n){e=e|0;t=t|0;n=n|0;var r=0;r=o[t+4>>2]|0;o[e>>2]=o[t>>2];o[e+4>>2]=r;o[e+8>>2]=n;return}function fp(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0,l=0,s=0,c=0,f=0,d=0,p=0;c=h;h=h+48|0;r=c+32|0;a=c+24|0;l=c;s=e+4|0;i=(((o[s>>2]|0)-(o[e>>2]|0)|0)/12|0)+1|0;u=dp(e)|0;if(u>>>0>>0)UT(e);else{f=o[e>>2]|0;p=((o[e+8>>2]|0)-f|0)/12|0;d=p<<1;pp(l,p>>>0>>1>>>0?d>>>0>>0?i:d:u,((o[s>>2]|0)-f|0)/12|0,e+8|0);s=l+8|0;u=o[s>>2]|0;i=o[t+4>>2]|0;n=o[n>>2]|0;o[a>>2]=o[t>>2];o[a+4>>2]=i;o[r>>2]=o[a>>2];o[r+4>>2]=o[a+4>>2];cp(u,r,n);o[s>>2]=(o[s>>2]|0)+12;hp(e,l);vp(l);h=c;return}}function dp(e){e=e|0;return 357913941}function pp(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0;o[e+12>>2]=0;o[e+16>>2]=r;do{if(t){if(t>>>0>357913941)Ye();else{i=$T(t*12|0)|0;break}}else i=0}while(0);o[e>>2]=i;r=i+(n*12|0)|0;o[e+8>>2]=r;o[e+4>>2]=r;o[e+12>>2]=i+(t*12|0);return}function hp(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0,a=0;r=o[e>>2]|0;a=e+4|0;u=t+4|0;i=(o[a>>2]|0)-r|0;n=(o[u>>2]|0)+(((i|0)/-12|0)*12|0)|0;o[u>>2]=n;if((i|0)>0){ix(n|0,r|0,i|0)|0;r=u;n=o[u>>2]|0}else r=u;u=o[e>>2]|0;o[e>>2]=n;o[r>>2]=u;u=t+8|0;i=o[a>>2]|0;o[a>>2]=o[u>>2];o[u>>2]=i;u=e+8|0;a=t+12|0;e=o[u>>2]|0;o[u>>2]=o[a>>2];o[a>>2]=e;o[t>>2]=o[r>>2];return}function vp(e){e=e|0;var t=0,n=0,r=0;t=o[e+4>>2]|0;n=e+8|0;r=o[n>>2]|0;if((r|0)!=(t|0))o[n>>2]=r+(~(((r+-12-t|0)>>>0)/12|0)*12|0);e=o[e>>2]|0;if(e|0)KT(e);return}function mp(e){e=e|0;_p(e);return}function gp(e){e=e|0;yp(e+24|0);return}function yp(e){e=e|0;var t=0,n=0,r=0;n=o[e>>2]|0;r=n;if(n|0){e=e+4|0;t=o[e>>2]|0;if((t|0)!=(n|0))o[e>>2]=t+(~(((t+-12-r|0)>>>0)/12|0)*12|0);KT(n)}return}function _p(e){e=e|0;var t=0;t=Za()|0;nl(e,2,5,t,bp()|0,1);o[e+24>>2]=0;o[e+28>>2]=0;o[e+32>>2]=0;return}function bp(){return 1280}function wp(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0;r=h;h=h+16|0;i=r+8|0;u=r;a=Ep(e)|0;e=o[a+4>>2]|0;o[u>>2]=o[a>>2];o[u+4>>2]=e;o[i>>2]=o[u>>2];o[i+4>>2]=o[u+4>>2];n=Dp(t,i,n)|0;h=r;return n|0}function Ep(e){e=e|0;return(o[(ap()|0)+24>>2]|0)+(e*12|0)|0}function Dp(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0;a=h;h=h+32|0;i=a;u=a+16|0;r=o[t>>2]|0;t=o[t+4>>2]|0;e=e+(t>>1)|0;if(t&1)r=o[(o[e>>2]|0)+r>>2]|0;Ql(u,n);u=Jl(u,n)|0;PA[r&15](i,e,u);u=Vd(i)|0;h=a;return u|0}function Sp(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0,l=0;r=h;h=h+16|0;i=r+8|0;u=r;l=o[n>>2]|0;a=o[n+4>>2]|0;n=Ia(t)|0;o[u>>2]=l;o[u+4>>2]=a;o[i>>2]=o[u>>2];o[i+4>>2]=o[u+4>>2];Cp(e,n,i,1);h=r;return}function Cp(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0,u=0,a=0,l=0,s=0,c=0,f=0;i=h;h=h+32|0;u=i+16|0;f=i+8|0;l=i;c=o[n>>2]|0;s=o[n+4>>2]|0;a=o[e>>2]|0;e=kp()|0;o[f>>2]=c;o[f+4>>2]=s;o[u>>2]=o[f>>2];o[u+4>>2]=o[f+4>>2];n=Tp(u)|0;o[l>>2]=c;o[l+4>>2]=s;o[u>>2]=o[l>>2];o[u+4>>2]=o[l+4>>2];La(a,t,e,n,xp(u,r)|0,r);h=i;return}function kp(){var e=0,t=0;if(!(r[7752]|0)){Rp(9720);Fe(38,9720,g|0)|0;t=7752;o[t>>2]=1;o[t+4>>2]=0}if(!(Xa(9720)|0)){e=9720;t=e+36|0;do{o[e>>2]=0;e=e+4|0}while((e|0)<(t|0));Rp(9720)}return 9720}function Tp(e){e=e|0;return 0}function xp(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0,a=0,l=0,s=0,c=0,f=0,d=0;f=h;h=h+32|0;i=f+24|0;a=f+16|0;l=f;s=f+8|0;u=o[e>>2]|0;r=o[e+4>>2]|0;o[l>>2]=u;o[l+4>>2]=r;d=kp()|0;c=d+24|0;e=za(t,4)|0;o[s>>2]=e;t=d+28|0;n=o[t>>2]|0;if(n>>>0<(o[d+32>>2]|0)>>>0){o[a>>2]=u;o[a+4>>2]=r;o[i>>2]=o[a>>2];o[i+4>>2]=o[a+4>>2];Ap(n,i,e);e=(o[t>>2]|0)+12|0;o[t>>2]=e}else{Op(c,l,s);e=o[t>>2]|0}h=f;return((e-(o[c>>2]|0)|0)/12|0)+-1|0}function Ap(e,t,n){e=e|0;t=t|0;n=n|0;var r=0;r=o[t+4>>2]|0;o[e>>2]=o[t>>2];o[e+4>>2]=r;o[e+8>>2]=n;return}function Op(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0,l=0,s=0,c=0,f=0,d=0,p=0;c=h;h=h+48|0;r=c+32|0;a=c+24|0;l=c;s=e+4|0;i=(((o[s>>2]|0)-(o[e>>2]|0)|0)/12|0)+1|0;u=Pp(e)|0;if(u>>>0>>0)UT(e);else{f=o[e>>2]|0;p=((o[e+8>>2]|0)-f|0)/12|0;d=p<<1;Ip(l,p>>>0>>1>>>0?d>>>0>>0?i:d:u,((o[s>>2]|0)-f|0)/12|0,e+8|0);s=l+8|0;u=o[s>>2]|0;i=o[t+4>>2]|0;n=o[n>>2]|0;o[a>>2]=o[t>>2];o[a+4>>2]=i;o[r>>2]=o[a>>2];o[r+4>>2]=o[a+4>>2];Ap(u,r,n);o[s>>2]=(o[s>>2]|0)+12;Np(e,l);Mp(l);h=c;return}}function Pp(e){e=e|0;return 357913941}function Ip(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0;o[e+12>>2]=0;o[e+16>>2]=r;do{if(t){if(t>>>0>357913941)Ye();else{i=$T(t*12|0)|0;break}}else i=0}while(0);o[e>>2]=i;r=i+(n*12|0)|0;o[e+8>>2]=r;o[e+4>>2]=r;o[e+12>>2]=i+(t*12|0);return}function Np(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0,a=0;r=o[e>>2]|0;a=e+4|0;u=t+4|0;i=(o[a>>2]|0)-r|0;n=(o[u>>2]|0)+(((i|0)/-12|0)*12|0)|0;o[u>>2]=n;if((i|0)>0){ix(n|0,r|0,i|0)|0;r=u;n=o[u>>2]|0}else r=u;u=o[e>>2]|0;o[e>>2]=n;o[r>>2]=u;u=t+8|0;i=o[a>>2]|0;o[a>>2]=o[u>>2];o[u>>2]=i;u=e+8|0;a=t+12|0;e=o[u>>2]|0;o[u>>2]=o[a>>2];o[a>>2]=e;o[t>>2]=o[r>>2];return}function Mp(e){e=e|0;var t=0,n=0,r=0;t=o[e+4>>2]|0;n=e+8|0;r=o[n>>2]|0;if((r|0)!=(t|0))o[n>>2]=r+(~(((r+-12-t|0)>>>0)/12|0)*12|0);e=o[e>>2]|0;if(e|0)KT(e);return}function Rp(e){e=e|0;Bp(e);return}function Fp(e){e=e|0;Lp(e+24|0);return}function Lp(e){e=e|0;var t=0,n=0,r=0;n=o[e>>2]|0;r=n;if(n|0){e=e+4|0;t=o[e>>2]|0;if((t|0)!=(n|0))o[e>>2]=t+(~(((t+-12-r|0)>>>0)/12|0)*12|0);KT(n)}return}function Bp(e){e=e|0;var t=0;t=Za()|0;nl(e,2,8,t,jp()|0,0);o[e+24>>2]=0;o[e+28>>2]=0;o[e+32>>2]=0;return}function jp(){return 1288}function Up(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0;n=h;h=h+16|0;r=n+8|0;i=n;u=zp(e)|0;e=o[u+4>>2]|0;o[i>>2]=o[u>>2];o[i+4>>2]=e;o[r>>2]=o[i>>2];o[r+4>>2]=o[i+4>>2];t=Wp(t,r)|0;h=n;return t|0}function zp(e){e=e|0;return(o[(kp()|0)+24>>2]|0)+(e*12|0)|0}function Wp(e,t){e=e|0;t=t|0;var n=0;n=o[t>>2]|0;t=o[t+4>>2]|0;e=e+(t>>1)|0;if(t&1)n=o[(o[e>>2]|0)+n>>2]|0;return Nu(mA[n&31](e)|0)|0}function Hp(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0,l=0;r=h;h=h+16|0;i=r+8|0;u=r;l=o[n>>2]|0;a=o[n+4>>2]|0;n=Ia(t)|0;o[u>>2]=l;o[u+4>>2]=a;o[i>>2]=o[u>>2];o[i+4>>2]=o[u+4>>2];Vp(e,n,i,0);h=r;return}function Vp(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0,u=0,a=0,l=0,s=0,c=0,f=0;i=h;h=h+32|0;u=i+16|0;f=i+8|0;l=i;c=o[n>>2]|0;s=o[n+4>>2]|0;a=o[e>>2]|0;e=qp()|0;o[f>>2]=c;o[f+4>>2]=s;o[u>>2]=o[f>>2];o[u+4>>2]=o[f+4>>2];n=Gp(u)|0;o[l>>2]=c;o[l+4>>2]=s;o[u>>2]=o[l>>2];o[u+4>>2]=o[l+4>>2];La(a,t,e,n,$p(u,r)|0,r);h=i;return}function qp(){var e=0,t=0;if(!(r[7760]|0)){eh(9756);Fe(39,9756,g|0)|0;t=7760;o[t>>2]=1;o[t+4>>2]=0}if(!(Xa(9756)|0)){e=9756;t=e+36|0;do{o[e>>2]=0;e=e+4|0}while((e|0)<(t|0));eh(9756)}return 9756}function Gp(e){e=e|0;return 0}function $p(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0,a=0,l=0,s=0,c=0,f=0,d=0;f=h;h=h+32|0;i=f+24|0;a=f+16|0;l=f;s=f+8|0;u=o[e>>2]|0;r=o[e+4>>2]|0;o[l>>2]=u;o[l+4>>2]=r;d=qp()|0;c=d+24|0;e=za(t,4)|0;o[s>>2]=e;t=d+28|0;n=o[t>>2]|0;if(n>>>0<(o[d+32>>2]|0)>>>0){o[a>>2]=u;o[a+4>>2]=r;o[i>>2]=o[a>>2];o[i+4>>2]=o[a+4>>2];Yp(n,i,e);e=(o[t>>2]|0)+12|0;o[t>>2]=e}else{Kp(c,l,s);e=o[t>>2]|0}h=f;return((e-(o[c>>2]|0)|0)/12|0)+-1|0}function Yp(e,t,n){e=e|0;t=t|0;n=n|0;var r=0;r=o[t+4>>2]|0;o[e>>2]=o[t>>2];o[e+4>>2]=r;o[e+8>>2]=n;return}function Kp(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0,l=0,s=0,c=0,f=0,d=0,p=0;c=h;h=h+48|0;r=c+32|0;a=c+24|0;l=c;s=e+4|0;i=(((o[s>>2]|0)-(o[e>>2]|0)|0)/12|0)+1|0;u=Xp(e)|0;if(u>>>0>>0)UT(e);else{f=o[e>>2]|0;p=((o[e+8>>2]|0)-f|0)/12|0;d=p<<1;Qp(l,p>>>0>>1>>>0?d>>>0>>0?i:d:u,((o[s>>2]|0)-f|0)/12|0,e+8|0);s=l+8|0;u=o[s>>2]|0;i=o[t+4>>2]|0;n=o[n>>2]|0;o[a>>2]=o[t>>2];o[a+4>>2]=i;o[r>>2]=o[a>>2];o[r+4>>2]=o[a+4>>2];Yp(u,r,n);o[s>>2]=(o[s>>2]|0)+12;Jp(e,l);Zp(l);h=c;return}}function Xp(e){e=e|0;return 357913941}function Qp(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0;o[e+12>>2]=0;o[e+16>>2]=r;do{if(t){if(t>>>0>357913941)Ye();else{i=$T(t*12|0)|0;break}}else i=0}while(0);o[e>>2]=i;r=i+(n*12|0)|0;o[e+8>>2]=r;o[e+4>>2]=r;o[e+12>>2]=i+(t*12|0);return}function Jp(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0,a=0;r=o[e>>2]|0;a=e+4|0;u=t+4|0;i=(o[a>>2]|0)-r|0;n=(o[u>>2]|0)+(((i|0)/-12|0)*12|0)|0;o[u>>2]=n;if((i|0)>0){ix(n|0,r|0,i|0)|0;r=u;n=o[u>>2]|0}else r=u;u=o[e>>2]|0;o[e>>2]=n;o[r>>2]=u;u=t+8|0;i=o[a>>2]|0;o[a>>2]=o[u>>2];o[u>>2]=i;u=e+8|0;a=t+12|0;e=o[u>>2]|0;o[u>>2]=o[a>>2];o[a>>2]=e;o[t>>2]=o[r>>2];return}function Zp(e){e=e|0;var t=0,n=0,r=0;t=o[e+4>>2]|0;n=e+8|0;r=o[n>>2]|0;if((r|0)!=(t|0))o[n>>2]=r+(~(((r+-12-t|0)>>>0)/12|0)*12|0);e=o[e>>2]|0;if(e|0)KT(e);return}function eh(e){e=e|0;rh(e);return}function th(e){e=e|0;nh(e+24|0);return}function nh(e){e=e|0;var t=0,n=0,r=0;n=o[e>>2]|0;r=n;if(n|0){e=e+4|0;t=o[e>>2]|0;if((t|0)!=(n|0))o[e>>2]=t+(~(((t+-12-r|0)>>>0)/12|0)*12|0);KT(n)}return}function rh(e){e=e|0;var t=0;t=Za()|0;nl(e,2,8,t,ih()|0,1);o[e+24>>2]=0;o[e+28>>2]=0;o[e+32>>2]=0;return}function ih(){return 1292}function oh(e,t,n){e=e|0;t=t|0;n=+n;var r=0,i=0,u=0,a=0;r=h;h=h+16|0;i=r+8|0;u=r;a=uh(e)|0;e=o[a+4>>2]|0;o[u>>2]=o[a>>2];o[u+4>>2]=e;o[i>>2]=o[u>>2];o[i+4>>2]=o[u+4>>2];ah(t,i,n);h=r;return}function uh(e){e=e|0;return(o[(qp()|0)+24>>2]|0)+(e*12|0)|0}function ah(e,t,n){e=e|0;t=t|0;n=+n;var r=0,i=0,u=0;u=h;h=h+16|0;i=u;r=o[t>>2]|0;t=o[t+4>>2]|0;e=e+(t>>1)|0;if(t&1)r=o[(o[e>>2]|0)+r>>2]|0;Kl(i,n);n=+Xl(i,n);dA[r&31](e,n);h=u;return}function lh(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0,l=0;r=h;h=h+16|0;i=r+8|0;u=r;l=o[n>>2]|0;a=o[n+4>>2]|0;n=Ia(t)|0;o[u>>2]=l;o[u+4>>2]=a;o[i>>2]=o[u>>2];o[i+4>>2]=o[u+4>>2];sh(e,n,i,0);h=r;return}function sh(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0,u=0,a=0,l=0,s=0,c=0,f=0;i=h;h=h+32|0;u=i+16|0;f=i+8|0;l=i;c=o[n>>2]|0;s=o[n+4>>2]|0;a=o[e>>2]|0;e=ch()|0;o[f>>2]=c;o[f+4>>2]=s;o[u>>2]=o[f>>2];o[u+4>>2]=o[f+4>>2];n=fh(u)|0;o[l>>2]=c;o[l+4>>2]=s;o[u>>2]=o[l>>2];o[u+4>>2]=o[l+4>>2];La(a,t,e,n,dh(u,r)|0,r);h=i;return}function ch(){var e=0,t=0;if(!(r[7768]|0)){_h(9792);Fe(40,9792,g|0)|0;t=7768;o[t>>2]=1;o[t+4>>2]=0}if(!(Xa(9792)|0)){e=9792;t=e+36|0;do{o[e>>2]=0;e=e+4|0}while((e|0)<(t|0));_h(9792)}return 9792}function fh(e){e=e|0;return 0}function dh(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0,a=0,l=0,s=0,c=0,f=0,d=0;f=h;h=h+32|0;i=f+24|0;a=f+16|0;l=f;s=f+8|0;u=o[e>>2]|0;r=o[e+4>>2]|0;o[l>>2]=u;o[l+4>>2]=r;d=ch()|0;c=d+24|0;e=za(t,4)|0;o[s>>2]=e;t=d+28|0;n=o[t>>2]|0;if(n>>>0<(o[d+32>>2]|0)>>>0){o[a>>2]=u;o[a+4>>2]=r;o[i>>2]=o[a>>2];o[i+4>>2]=o[a+4>>2];ph(n,i,e);e=(o[t>>2]|0)+12|0;o[t>>2]=e}else{hh(c,l,s);e=o[t>>2]|0}h=f;return((e-(o[c>>2]|0)|0)/12|0)+-1|0}function ph(e,t,n){e=e|0;t=t|0;n=n|0;var r=0;r=o[t+4>>2]|0;o[e>>2]=o[t>>2];o[e+4>>2]=r;o[e+8>>2]=n;return}function hh(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0,l=0,s=0,c=0,f=0,d=0,p=0;c=h;h=h+48|0;r=c+32|0;a=c+24|0;l=c;s=e+4|0;i=(((o[s>>2]|0)-(o[e>>2]|0)|0)/12|0)+1|0;u=vh(e)|0;if(u>>>0>>0)UT(e);else{f=o[e>>2]|0;p=((o[e+8>>2]|0)-f|0)/12|0;d=p<<1;mh(l,p>>>0>>1>>>0?d>>>0>>0?i:d:u,((o[s>>2]|0)-f|0)/12|0,e+8|0);s=l+8|0;u=o[s>>2]|0;i=o[t+4>>2]|0;n=o[n>>2]|0;o[a>>2]=o[t>>2];o[a+4>>2]=i;o[r>>2]=o[a>>2];o[r+4>>2]=o[a+4>>2];ph(u,r,n);o[s>>2]=(o[s>>2]|0)+12;gh(e,l);yh(l);h=c;return}}function vh(e){e=e|0;return 357913941}function mh(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0;o[e+12>>2]=0;o[e+16>>2]=r;do{if(t){if(t>>>0>357913941)Ye();else{i=$T(t*12|0)|0;break}}else i=0}while(0);o[e>>2]=i;r=i+(n*12|0)|0;o[e+8>>2]=r;o[e+4>>2]=r;o[e+12>>2]=i+(t*12|0);return}function gh(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0,a=0;r=o[e>>2]|0;a=e+4|0;u=t+4|0;i=(o[a>>2]|0)-r|0;n=(o[u>>2]|0)+(((i|0)/-12|0)*12|0)|0;o[u>>2]=n;if((i|0)>0){ix(n|0,r|0,i|0)|0;r=u;n=o[u>>2]|0}else r=u;u=o[e>>2]|0;o[e>>2]=n;o[r>>2]=u;u=t+8|0;i=o[a>>2]|0;o[a>>2]=o[u>>2];o[u>>2]=i;u=e+8|0;a=t+12|0;e=o[u>>2]|0;o[u>>2]=o[a>>2];o[a>>2]=e;o[t>>2]=o[r>>2];return}function yh(e){e=e|0;var t=0,n=0,r=0;t=o[e+4>>2]|0;n=e+8|0;r=o[n>>2]|0;if((r|0)!=(t|0))o[n>>2]=r+(~(((r+-12-t|0)>>>0)/12|0)*12|0);e=o[e>>2]|0;if(e|0)KT(e);return}function _h(e){e=e|0;Eh(e);return}function bh(e){e=e|0;wh(e+24|0);return}function wh(e){e=e|0;var t=0,n=0,r=0;n=o[e>>2]|0;r=n;if(n|0){e=e+4|0;t=o[e>>2]|0;if((t|0)!=(n|0))o[e>>2]=t+(~(((t+-12-r|0)>>>0)/12|0)*12|0);KT(n)}return}function Eh(e){e=e|0;var t=0;t=Za()|0;nl(e,2,1,t,Dh()|0,2);o[e+24>>2]=0;o[e+28>>2]=0;o[e+32>>2]=0;return}function Dh(){return 1300}function Sh(e,t,n,r){e=e|0;t=t|0;n=n|0;r=+r;var i=0,u=0,a=0,l=0;i=h;h=h+16|0;u=i+8|0;a=i;l=Ch(e)|0;e=o[l+4>>2]|0;o[a>>2]=o[l>>2];o[a+4>>2]=e;o[u>>2]=o[a>>2];o[u+4>>2]=o[a+4>>2];kh(t,u,n,r);h=i;return}function Ch(e){e=e|0;return(o[(ch()|0)+24>>2]|0)+(e*12|0)|0}function kh(e,t,n,r){e=e|0;t=t|0;n=n|0;r=+r;var i=0,u=0,a=0,l=0;l=h;h=h+16|0;u=l+1|0;a=l;i=o[t>>2]|0;t=o[t+4>>2]|0;e=e+(t>>1)|0;if(t&1)i=o[(o[e>>2]|0)+i>>2]|0;Ql(u,n);u=Jl(u,n)|0;Kl(a,r);r=+Xl(a,r);NA[i&15](e,u,r);h=l;return}function Th(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0,l=0;r=h;h=h+16|0;i=r+8|0;u=r;l=o[n>>2]|0;a=o[n+4>>2]|0;n=Ia(t)|0;o[u>>2]=l;o[u+4>>2]=a;o[i>>2]=o[u>>2];o[i+4>>2]=o[u+4>>2];xh(e,n,i,0);h=r;return}function xh(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0,u=0,a=0,l=0,s=0,c=0,f=0;i=h;h=h+32|0;u=i+16|0;f=i+8|0;l=i;c=o[n>>2]|0;s=o[n+4>>2]|0;a=o[e>>2]|0;e=Ah()|0;o[f>>2]=c;o[f+4>>2]=s;o[u>>2]=o[f>>2];o[u+4>>2]=o[f+4>>2];n=Oh(u)|0;o[l>>2]=c;o[l+4>>2]=s;o[u>>2]=o[l>>2];o[u+4>>2]=o[l+4>>2];La(a,t,e,n,Ph(u,r)|0,r);h=i;return}function Ah(){var e=0,t=0;if(!(r[7776]|0)){Bh(9828);Fe(41,9828,g|0)|0;t=7776;o[t>>2]=1;o[t+4>>2]=0}if(!(Xa(9828)|0)){e=9828;t=e+36|0;do{o[e>>2]=0;e=e+4|0}while((e|0)<(t|0));Bh(9828)}return 9828}function Oh(e){e=e|0;return 0}function Ph(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0,a=0,l=0,s=0,c=0,f=0,d=0;f=h;h=h+32|0;i=f+24|0;a=f+16|0;l=f;s=f+8|0;u=o[e>>2]|0;r=o[e+4>>2]|0;o[l>>2]=u;o[l+4>>2]=r;d=Ah()|0;c=d+24|0;e=za(t,4)|0;o[s>>2]=e;t=d+28|0;n=o[t>>2]|0;if(n>>>0<(o[d+32>>2]|0)>>>0){o[a>>2]=u;o[a+4>>2]=r;o[i>>2]=o[a>>2];o[i+4>>2]=o[a+4>>2];Ih(n,i,e);e=(o[t>>2]|0)+12|0;o[t>>2]=e}else{Nh(c,l,s);e=o[t>>2]|0}h=f;return((e-(o[c>>2]|0)|0)/12|0)+-1|0}function Ih(e,t,n){e=e|0;t=t|0;n=n|0;var r=0;r=o[t+4>>2]|0;o[e>>2]=o[t>>2];o[e+4>>2]=r;o[e+8>>2]=n;return}function Nh(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0,l=0,s=0,c=0,f=0,d=0,p=0;c=h;h=h+48|0;r=c+32|0;a=c+24|0;l=c;s=e+4|0;i=(((o[s>>2]|0)-(o[e>>2]|0)|0)/12|0)+1|0;u=Mh(e)|0;if(u>>>0>>0)UT(e);else{f=o[e>>2]|0;p=((o[e+8>>2]|0)-f|0)/12|0;d=p<<1;Rh(l,p>>>0>>1>>>0?d>>>0>>0?i:d:u,((o[s>>2]|0)-f|0)/12|0,e+8|0);s=l+8|0;u=o[s>>2]|0;i=o[t+4>>2]|0;n=o[n>>2]|0;o[a>>2]=o[t>>2];o[a+4>>2]=i;o[r>>2]=o[a>>2];o[r+4>>2]=o[a+4>>2];Ih(u,r,n);o[s>>2]=(o[s>>2]|0)+12;Fh(e,l);Lh(l);h=c;return}}function Mh(e){e=e|0;return 357913941}function Rh(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0;o[e+12>>2]=0;o[e+16>>2]=r;do{if(t){if(t>>>0>357913941)Ye();else{i=$T(t*12|0)|0;break}}else i=0}while(0);o[e>>2]=i;r=i+(n*12|0)|0;o[e+8>>2]=r;o[e+4>>2]=r;o[e+12>>2]=i+(t*12|0);return}function Fh(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0,a=0;r=o[e>>2]|0;a=e+4|0;u=t+4|0;i=(o[a>>2]|0)-r|0;n=(o[u>>2]|0)+(((i|0)/-12|0)*12|0)|0;o[u>>2]=n;if((i|0)>0){ix(n|0,r|0,i|0)|0;r=u;n=o[u>>2]|0}else r=u;u=o[e>>2]|0;o[e>>2]=n;o[r>>2]=u;u=t+8|0;i=o[a>>2]|0;o[a>>2]=o[u>>2];o[u>>2]=i;u=e+8|0;a=t+12|0;e=o[u>>2]|0;o[u>>2]=o[a>>2];o[a>>2]=e;o[t>>2]=o[r>>2];return}function Lh(e){e=e|0;var t=0,n=0,r=0;t=o[e+4>>2]|0;n=e+8|0;r=o[n>>2]|0;if((r|0)!=(t|0))o[n>>2]=r+(~(((r+-12-t|0)>>>0)/12|0)*12|0);e=o[e>>2]|0;if(e|0)KT(e);return}function Bh(e){e=e|0;zh(e);return}function jh(e){e=e|0;Uh(e+24|0);return}function Uh(e){e=e|0;var t=0,n=0,r=0;n=o[e>>2]|0;r=n;if(n|0){e=e+4|0;t=o[e>>2]|0;if((t|0)!=(n|0))o[e>>2]=t+(~(((t+-12-r|0)>>>0)/12|0)*12|0);KT(n)}return}function zh(e){e=e|0;var t=0;t=Za()|0;nl(e,2,7,t,Wh()|0,1);o[e+24>>2]=0;o[e+28>>2]=0;o[e+32>>2]=0;return}function Wh(){return 1312}function Hh(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0;r=h;h=h+16|0;i=r+8|0;u=r;a=Vh(e)|0;e=o[a+4>>2]|0;o[u>>2]=o[a>>2];o[u+4>>2]=e;o[i>>2]=o[u>>2];o[i+4>>2]=o[u+4>>2];qh(t,i,n);h=r;return}function Vh(e){e=e|0;return(o[(Ah()|0)+24>>2]|0)+(e*12|0)|0}function qh(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0;u=h;h=h+16|0;i=u;r=o[t>>2]|0;t=o[t+4>>2]|0;e=e+(t>>1)|0;if(t&1)r=o[(o[e>>2]|0)+r>>2]|0;Ql(i,n);i=Jl(i,n)|0;vA[r&31](e,i);h=u;return}function Gh(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0,l=0;r=h;h=h+16|0;i=r+8|0;u=r;l=o[n>>2]|0;a=o[n+4>>2]|0;n=Ia(t)|0;o[u>>2]=l;o[u+4>>2]=a;o[i>>2]=o[u>>2];o[i+4>>2]=o[u+4>>2];$h(e,n,i,0);h=r;return}function $h(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0,u=0,a=0,l=0,s=0,c=0,f=0;i=h;h=h+32|0;u=i+16|0;f=i+8|0;l=i;c=o[n>>2]|0;s=o[n+4>>2]|0;a=o[e>>2]|0;e=Yh()|0;o[f>>2]=c;o[f+4>>2]=s;o[u>>2]=o[f>>2];o[u+4>>2]=o[f+4>>2];n=Kh(u)|0;o[l>>2]=c;o[l+4>>2]=s;o[u>>2]=o[l>>2];o[u+4>>2]=o[l+4>>2];La(a,t,e,n,Xh(u,r)|0,r);h=i;return}function Yh(){var e=0,t=0;if(!(r[7784]|0)){rv(9864);Fe(42,9864,g|0)|0;t=7784;o[t>>2]=1;o[t+4>>2]=0}if(!(Xa(9864)|0)){e=9864;t=e+36|0;do{o[e>>2]=0;e=e+4|0}while((e|0)<(t|0));rv(9864)}return 9864}function Kh(e){e=e|0;return 0}function Xh(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0,a=0,l=0,s=0,c=0,f=0,d=0;f=h;h=h+32|0;i=f+24|0;a=f+16|0;l=f;s=f+8|0;u=o[e>>2]|0;r=o[e+4>>2]|0;o[l>>2]=u;o[l+4>>2]=r;d=Yh()|0;c=d+24|0;e=za(t,4)|0;o[s>>2]=e;t=d+28|0;n=o[t>>2]|0;if(n>>>0<(o[d+32>>2]|0)>>>0){o[a>>2]=u;o[a+4>>2]=r;o[i>>2]=o[a>>2];o[i+4>>2]=o[a+4>>2];Qh(n,i,e);e=(o[t>>2]|0)+12|0;o[t>>2]=e}else{Jh(c,l,s);e=o[t>>2]|0}h=f;return((e-(o[c>>2]|0)|0)/12|0)+-1|0}function Qh(e,t,n){e=e|0;t=t|0;n=n|0;var r=0;r=o[t+4>>2]|0;o[e>>2]=o[t>>2];o[e+4>>2]=r;o[e+8>>2]=n;return}function Jh(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0,l=0,s=0,c=0,f=0,d=0,p=0;c=h;h=h+48|0;r=c+32|0;a=c+24|0;l=c;s=e+4|0;i=(((o[s>>2]|0)-(o[e>>2]|0)|0)/12|0)+1|0;u=Zh(e)|0;if(u>>>0>>0)UT(e);else{f=o[e>>2]|0;p=((o[e+8>>2]|0)-f|0)/12|0;d=p<<1;ev(l,p>>>0>>1>>>0?d>>>0>>0?i:d:u,((o[s>>2]|0)-f|0)/12|0,e+8|0);s=l+8|0;u=o[s>>2]|0;i=o[t+4>>2]|0;n=o[n>>2]|0;o[a>>2]=o[t>>2];o[a+4>>2]=i;o[r>>2]=o[a>>2];o[r+4>>2]=o[a+4>>2];Qh(u,r,n);o[s>>2]=(o[s>>2]|0)+12;tv(e,l);nv(l);h=c;return}}function Zh(e){e=e|0;return 357913941}function ev(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0;o[e+12>>2]=0;o[e+16>>2]=r;do{if(t){if(t>>>0>357913941)Ye();else{i=$T(t*12|0)|0;break}}else i=0}while(0);o[e>>2]=i;r=i+(n*12|0)|0;o[e+8>>2]=r;o[e+4>>2]=r;o[e+12>>2]=i+(t*12|0);return}function tv(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0,a=0;r=o[e>>2]|0;a=e+4|0;u=t+4|0;i=(o[a>>2]|0)-r|0;n=(o[u>>2]|0)+(((i|0)/-12|0)*12|0)|0;o[u>>2]=n;if((i|0)>0){ix(n|0,r|0,i|0)|0;r=u;n=o[u>>2]|0}else r=u;u=o[e>>2]|0;o[e>>2]=n;o[r>>2]=u;u=t+8|0;i=o[a>>2]|0;o[a>>2]=o[u>>2];o[u>>2]=i;u=e+8|0;a=t+12|0;e=o[u>>2]|0;o[u>>2]=o[a>>2];o[a>>2]=e;o[t>>2]=o[r>>2];return}function nv(e){e=e|0;var t=0,n=0,r=0;t=o[e+4>>2]|0;n=e+8|0;r=o[n>>2]|0;if((r|0)!=(t|0))o[n>>2]=r+(~(((r+-12-t|0)>>>0)/12|0)*12|0);e=o[e>>2]|0;if(e|0)KT(e);return}function rv(e){e=e|0;uv(e);return}function iv(e){e=e|0;ov(e+24|0);return}function ov(e){e=e|0;var t=0,n=0,r=0;n=o[e>>2]|0;r=n;if(n|0){e=e+4|0;t=o[e>>2]|0;if((t|0)!=(n|0))o[e>>2]=t+(~(((t+-12-r|0)>>>0)/12|0)*12|0);KT(n)}return}function uv(e){e=e|0;var t=0;t=Za()|0;nl(e,2,8,t,av()|0,1);o[e+24>>2]=0;o[e+28>>2]=0;o[e+32>>2]=0;return}function av(){return 1320}function lv(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0;r=h;h=h+16|0;i=r+8|0;u=r;a=sv(e)|0;e=o[a+4>>2]|0;o[u>>2]=o[a>>2];o[u+4>>2]=e;o[i>>2]=o[u>>2];o[i+4>>2]=o[u+4>>2];cv(t,i,n);h=r;return}function sv(e){e=e|0;return(o[(Yh()|0)+24>>2]|0)+(e*12|0)|0}function cv(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0;u=h;h=h+16|0;i=u;r=o[t>>2]|0;t=o[t+4>>2]|0;e=e+(t>>1)|0;if(t&1)r=o[(o[e>>2]|0)+r>>2]|0;fv(i,n);i=dv(i,n)|0;vA[r&31](e,i);h=u;return}function fv(e,t){e=e|0;t=t|0;return}function dv(e,t){e=e|0;t=t|0;return pv(t)|0}function pv(e){e=e|0;return e|0}function hv(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0,l=0;r=h;h=h+16|0;i=r+8|0;u=r;l=o[n>>2]|0;a=o[n+4>>2]|0;n=Ia(t)|0;o[u>>2]=l;o[u+4>>2]=a;o[i>>2]=o[u>>2];o[i+4>>2]=o[u+4>>2];vv(e,n,i,0);h=r;return}function vv(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0,u=0,a=0,l=0,s=0,c=0,f=0;i=h;h=h+32|0;u=i+16|0;f=i+8|0;l=i;c=o[n>>2]|0;s=o[n+4>>2]|0;a=o[e>>2]|0;e=mv()|0;o[f>>2]=c;o[f+4>>2]=s;o[u>>2]=o[f>>2];o[u+4>>2]=o[f+4>>2];n=gv(u)|0;o[l>>2]=c;o[l+4>>2]=s;o[u>>2]=o[l>>2];o[u+4>>2]=o[l+4>>2];La(a,t,e,n,yv(u,r)|0,r);h=i;return}function mv(){var e=0,t=0;if(!(r[7792]|0)){Cv(9900);Fe(43,9900,g|0)|0;t=7792;o[t>>2]=1;o[t+4>>2]=0}if(!(Xa(9900)|0)){e=9900;t=e+36|0;do{o[e>>2]=0;e=e+4|0}while((e|0)<(t|0));Cv(9900)}return 9900}function gv(e){e=e|0;return 0}function yv(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0,a=0,l=0,s=0,c=0,f=0,d=0;f=h;h=h+32|0;i=f+24|0;a=f+16|0;l=f;s=f+8|0;u=o[e>>2]|0;r=o[e+4>>2]|0;o[l>>2]=u;o[l+4>>2]=r;d=mv()|0;c=d+24|0;e=za(t,4)|0;o[s>>2]=e;t=d+28|0;n=o[t>>2]|0;if(n>>>0<(o[d+32>>2]|0)>>>0){o[a>>2]=u;o[a+4>>2]=r;o[i>>2]=o[a>>2];o[i+4>>2]=o[a+4>>2];_v(n,i,e);e=(o[t>>2]|0)+12|0;o[t>>2]=e}else{bv(c,l,s);e=o[t>>2]|0}h=f;return((e-(o[c>>2]|0)|0)/12|0)+-1|0}function _v(e,t,n){e=e|0;t=t|0;n=n|0;var r=0;r=o[t+4>>2]|0;o[e>>2]=o[t>>2];o[e+4>>2]=r;o[e+8>>2]=n;return}function bv(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0,l=0,s=0,c=0,f=0,d=0,p=0;c=h;h=h+48|0;r=c+32|0;a=c+24|0;l=c;s=e+4|0;i=(((o[s>>2]|0)-(o[e>>2]|0)|0)/12|0)+1|0;u=wv(e)|0;if(u>>>0>>0)UT(e);else{f=o[e>>2]|0;p=((o[e+8>>2]|0)-f|0)/12|0;d=p<<1;Ev(l,p>>>0>>1>>>0?d>>>0>>0?i:d:u,((o[s>>2]|0)-f|0)/12|0,e+8|0);s=l+8|0;u=o[s>>2]|0;i=o[t+4>>2]|0;n=o[n>>2]|0;o[a>>2]=o[t>>2];o[a+4>>2]=i;o[r>>2]=o[a>>2];o[r+4>>2]=o[a+4>>2];_v(u,r,n);o[s>>2]=(o[s>>2]|0)+12;Dv(e,l);Sv(l);h=c;return}}function wv(e){e=e|0;return 357913941}function Ev(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0;o[e+12>>2]=0;o[e+16>>2]=r;do{if(t){if(t>>>0>357913941)Ye();else{i=$T(t*12|0)|0;break}}else i=0}while(0);o[e>>2]=i;r=i+(n*12|0)|0;o[e+8>>2]=r;o[e+4>>2]=r;o[e+12>>2]=i+(t*12|0);return}function Dv(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0,a=0;r=o[e>>2]|0;a=e+4|0;u=t+4|0;i=(o[a>>2]|0)-r|0;n=(o[u>>2]|0)+(((i|0)/-12|0)*12|0)|0;o[u>>2]=n;if((i|0)>0){ix(n|0,r|0,i|0)|0;r=u;n=o[u>>2]|0}else r=u;u=o[e>>2]|0;o[e>>2]=n;o[r>>2]=u;u=t+8|0;i=o[a>>2]|0;o[a>>2]=o[u>>2];o[u>>2]=i;u=e+8|0;a=t+12|0;e=o[u>>2]|0;o[u>>2]=o[a>>2];o[a>>2]=e;o[t>>2]=o[r>>2];return}function Sv(e){e=e|0;var t=0,n=0,r=0;t=o[e+4>>2]|0;n=e+8|0;r=o[n>>2]|0;if((r|0)!=(t|0))o[n>>2]=r+(~(((r+-12-t|0)>>>0)/12|0)*12|0);e=o[e>>2]|0;if(e|0)KT(e);return}function Cv(e){e=e|0;xv(e);return}function kv(e){e=e|0;Tv(e+24|0);return}function Tv(e){e=e|0;var t=0,n=0,r=0;n=o[e>>2]|0;r=n;if(n|0){e=e+4|0;t=o[e>>2]|0;if((t|0)!=(n|0))o[e>>2]=t+(~(((t+-12-r|0)>>>0)/12|0)*12|0);KT(n)}return}function xv(e){e=e|0;var t=0;t=Za()|0;nl(e,2,22,t,Av()|0,0);o[e+24>>2]=0;o[e+28>>2]=0;o[e+32>>2]=0;return}function Av(){return 1344}function Ov(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0;n=h;h=h+16|0;r=n+8|0;i=n;u=Pv(e)|0;e=o[u+4>>2]|0;o[i>>2]=o[u>>2];o[i+4>>2]=e;o[r>>2]=o[i>>2];o[r+4>>2]=o[i+4>>2];Iv(t,r);h=n;return}function Pv(e){e=e|0;return(o[(mv()|0)+24>>2]|0)+(e*12|0)|0}function Iv(e,t){e=e|0;t=t|0;var n=0;n=o[t>>2]|0;t=o[t+4>>2]|0;e=e+(t>>1)|0;if(t&1)n=o[(o[e>>2]|0)+n>>2]|0;hA[n&127](e);return}function Nv(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0,u=0;u=o[e>>2]|0;i=Mv()|0;e=Rv(n)|0;La(u,t,i,e,Fv(n,r)|0,r);return}function Mv(){var e=0,t=0;if(!(r[7800]|0)){Hv(9936);Fe(44,9936,g|0)|0;t=7800;o[t>>2]=1;o[t+4>>2]=0}if(!(Xa(9936)|0)){e=9936;t=e+36|0;do{o[e>>2]=0;e=e+4|0}while((e|0)<(t|0));Hv(9936)}return 9936}function Rv(e){e=e|0;return e|0}function Fv(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0,a=0,l=0,s=0;l=h;h=h+16|0;i=l;u=l+4|0;o[i>>2]=e;s=Mv()|0;a=s+24|0;t=za(t,4)|0;o[u>>2]=t;n=s+28|0;r=o[n>>2]|0;if(r>>>0<(o[s+32>>2]|0)>>>0){Lv(r,e,t);t=(o[n>>2]|0)+8|0;o[n>>2]=t}else{Bv(a,i,u);t=o[n>>2]|0}h=l;return(t-(o[a>>2]|0)>>3)+-1|0}function Lv(e,t,n){e=e|0;t=t|0;n=n|0;o[e>>2]=t;o[e+4>>2]=n;return}function Bv(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0,l=0,s=0,c=0,f=0;l=h;h=h+32|0;i=l;u=e+4|0;a=((o[u>>2]|0)-(o[e>>2]|0)>>3)+1|0;r=jv(e)|0;if(r>>>0>>0)UT(e);else{s=o[e>>2]|0;f=(o[e+8>>2]|0)-s|0;c=f>>2;Uv(i,f>>3>>>0>>1>>>0?c>>>0>>0?a:c:r,(o[u>>2]|0)-s>>3,e+8|0);a=i+8|0;Lv(o[a>>2]|0,o[t>>2]|0,o[n>>2]|0);o[a>>2]=(o[a>>2]|0)+8;zv(e,i);Wv(i);h=l;return}}function jv(e){e=e|0;return 536870911}function Uv(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0;o[e+12>>2]=0;o[e+16>>2]=r;do{if(t){if(t>>>0>536870911)Ye();else{i=$T(t<<3)|0;break}}else i=0}while(0);o[e>>2]=i;r=i+(n<<3)|0;o[e+8>>2]=r;o[e+4>>2]=r;o[e+12>>2]=i+(t<<3);return}function zv(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0,a=0;r=o[e>>2]|0;a=e+4|0;u=t+4|0;i=(o[a>>2]|0)-r|0;n=(o[u>>2]|0)+(0-(i>>3)<<3)|0;o[u>>2]=n;if((i|0)>0){ix(n|0,r|0,i|0)|0;r=u;n=o[u>>2]|0}else r=u;u=o[e>>2]|0;o[e>>2]=n;o[r>>2]=u;u=t+8|0;i=o[a>>2]|0;o[a>>2]=o[u>>2];o[u>>2]=i;u=e+8|0;a=t+12|0;e=o[u>>2]|0;o[u>>2]=o[a>>2];o[a>>2]=e;o[t>>2]=o[r>>2];return}function Wv(e){e=e|0;var t=0,n=0,r=0;t=o[e+4>>2]|0;n=e+8|0;r=o[n>>2]|0;if((r|0)!=(t|0))o[n>>2]=r+(~((r+-8-t|0)>>>3)<<3);e=o[e>>2]|0;if(e|0)KT(e);return}function Hv(e){e=e|0;Gv(e);return}function Vv(e){e=e|0;qv(e+24|0);return}function qv(e){e=e|0;var t=0,n=0,r=0;n=o[e>>2]|0;r=n;if(n|0){e=e+4|0;t=o[e>>2]|0;if((t|0)!=(n|0))o[e>>2]=t+(~((t+-8-r|0)>>>3)<<3);KT(n)}return}function Gv(e){e=e|0;var t=0;t=Za()|0;nl(e,1,23,t,vf()|0,1);o[e+24>>2]=0;o[e+28>>2]=0;o[e+32>>2]=0;return}function $v(e,t){e=e|0;t=t|0;Kv(o[(Yv(e)|0)>>2]|0,t);return}function Yv(e){e=e|0;return(o[(Mv()|0)+24>>2]|0)+(e<<3)|0}function Kv(e,t){e=e|0;t=t|0;var n=0,r=0;n=h;h=h+16|0;r=n;_f(r,t);t=bf(r,t)|0;hA[e&127](t);h=n;return}function Xv(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0,u=0;u=o[e>>2]|0;i=Qv()|0;e=Jv(n)|0;La(u,t,i,e,Zv(n,r)|0,r);return}function Qv(){var e=0,t=0;if(!(r[7808]|0)){um(9972);Fe(45,9972,g|0)|0;t=7808;o[t>>2]=1;o[t+4>>2]=0}if(!(Xa(9972)|0)){e=9972;t=e+36|0;do{o[e>>2]=0;e=e+4|0}while((e|0)<(t|0));um(9972)}return 9972}function Jv(e){e=e|0;return e|0}function Zv(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0,a=0,l=0,s=0;l=h;h=h+16|0;i=l;u=l+4|0;o[i>>2]=e;s=Qv()|0;a=s+24|0;t=za(t,4)|0;o[u>>2]=t;n=s+28|0;r=o[n>>2]|0;if(r>>>0<(o[s+32>>2]|0)>>>0){em(r,e,t);t=(o[n>>2]|0)+8|0;o[n>>2]=t}else{tm(a,i,u);t=o[n>>2]|0}h=l;return(t-(o[a>>2]|0)>>3)+-1|0}function em(e,t,n){e=e|0;t=t|0;n=n|0;o[e>>2]=t;o[e+4>>2]=n;return}function tm(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0,l=0,s=0,c=0,f=0;l=h;h=h+32|0;i=l;u=e+4|0;a=((o[u>>2]|0)-(o[e>>2]|0)>>3)+1|0;r=nm(e)|0;if(r>>>0>>0)UT(e);else{s=o[e>>2]|0;f=(o[e+8>>2]|0)-s|0;c=f>>2;rm(i,f>>3>>>0>>1>>>0?c>>>0>>0?a:c:r,(o[u>>2]|0)-s>>3,e+8|0);a=i+8|0;em(o[a>>2]|0,o[t>>2]|0,o[n>>2]|0);o[a>>2]=(o[a>>2]|0)+8;im(e,i);om(i);h=l;return}}function nm(e){e=e|0;return 536870911}function rm(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0;o[e+12>>2]=0;o[e+16>>2]=r;do{if(t){if(t>>>0>536870911)Ye();else{i=$T(t<<3)|0;break}}else i=0}while(0);o[e>>2]=i;r=i+(n<<3)|0;o[e+8>>2]=r;o[e+4>>2]=r;o[e+12>>2]=i+(t<<3);return}function im(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0,a=0;r=o[e>>2]|0;a=e+4|0;u=t+4|0;i=(o[a>>2]|0)-r|0;n=(o[u>>2]|0)+(0-(i>>3)<<3)|0;o[u>>2]=n;if((i|0)>0){ix(n|0,r|0,i|0)|0;r=u;n=o[u>>2]|0}else r=u;u=o[e>>2]|0;o[e>>2]=n;o[r>>2]=u;u=t+8|0;i=o[a>>2]|0;o[a>>2]=o[u>>2];o[u>>2]=i;u=e+8|0;a=t+12|0;e=o[u>>2]|0;o[u>>2]=o[a>>2];o[a>>2]=e;o[t>>2]=o[r>>2];return}function om(e){e=e|0;var t=0,n=0,r=0;t=o[e+4>>2]|0;n=e+8|0;r=o[n>>2]|0;if((r|0)!=(t|0))o[n>>2]=r+(~((r+-8-t|0)>>>3)<<3);e=o[e>>2]|0;if(e|0)KT(e);return}function um(e){e=e|0;sm(e);return}function am(e){e=e|0;lm(e+24|0);return}function lm(e){e=e|0;var t=0,n=0,r=0;n=o[e>>2]|0;r=n;if(n|0){e=e+4|0;t=o[e>>2]|0;if((t|0)!=(n|0))o[e>>2]=t+(~((t+-8-r|0)>>>3)<<3);KT(n)}return}function sm(e){e=e|0;var t=0;t=Za()|0;nl(e,1,9,t,cm()|0,1);o[e+24>>2]=0;o[e+28>>2]=0;o[e+32>>2]=0;return}function cm(){return 1348}function fm(e,t){e=e|0;t=t|0;return pm(o[(dm(e)|0)>>2]|0,t)|0}function dm(e){e=e|0;return(o[(Qv()|0)+24>>2]|0)+(e<<3)|0}function pm(e,t){e=e|0;t=t|0;var n=0,r=0;n=h;h=h+16|0;r=n;hm(r,t);t=vm(r,t)|0;t=dc(mA[e&31](t)|0)|0;h=n;return t|0}function hm(e,t){e=e|0;t=t|0;return}function vm(e,t){e=e|0;t=t|0;return mm(t)|0}function mm(e){e=e|0;return e|0}function gm(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0,u=0;u=o[e>>2]|0;i=ym()|0;e=_m(n)|0;La(u,t,i,e,bm(n,r)|0,r);return}function ym(){var e=0,t=0;if(!(r[7816]|0)){Tm(10008);Fe(46,10008,g|0)|0;t=7816;o[t>>2]=1;o[t+4>>2]=0}if(!(Xa(10008)|0)){e=10008;t=e+36|0;do{o[e>>2]=0;e=e+4|0}while((e|0)<(t|0));Tm(10008)}return 10008}function _m(e){e=e|0;return e|0}function bm(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0,a=0,l=0,s=0;l=h;h=h+16|0;i=l;u=l+4|0;o[i>>2]=e;s=ym()|0;a=s+24|0;t=za(t,4)|0;o[u>>2]=t;n=s+28|0;r=o[n>>2]|0;if(r>>>0<(o[s+32>>2]|0)>>>0){wm(r,e,t);t=(o[n>>2]|0)+8|0;o[n>>2]=t}else{Em(a,i,u);t=o[n>>2]|0}h=l;return(t-(o[a>>2]|0)>>3)+-1|0}function wm(e,t,n){e=e|0;t=t|0;n=n|0;o[e>>2]=t;o[e+4>>2]=n;return}function Em(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0,l=0,s=0,c=0,f=0;l=h;h=h+32|0;i=l;u=e+4|0;a=((o[u>>2]|0)-(o[e>>2]|0)>>3)+1|0;r=Dm(e)|0;if(r>>>0>>0)UT(e);else{s=o[e>>2]|0;f=(o[e+8>>2]|0)-s|0;c=f>>2;Sm(i,f>>3>>>0>>1>>>0?c>>>0>>0?a:c:r,(o[u>>2]|0)-s>>3,e+8|0);a=i+8|0;wm(o[a>>2]|0,o[t>>2]|0,o[n>>2]|0);o[a>>2]=(o[a>>2]|0)+8;Cm(e,i);km(i);h=l;return}}function Dm(e){e=e|0;return 536870911}function Sm(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0;o[e+12>>2]=0;o[e+16>>2]=r;do{if(t){if(t>>>0>536870911)Ye();else{i=$T(t<<3)|0;break}}else i=0}while(0);o[e>>2]=i;r=i+(n<<3)|0;o[e+8>>2]=r;o[e+4>>2]=r;o[e+12>>2]=i+(t<<3);return}function Cm(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0,a=0;r=o[e>>2]|0;a=e+4|0;u=t+4|0;i=(o[a>>2]|0)-r|0;n=(o[u>>2]|0)+(0-(i>>3)<<3)|0;o[u>>2]=n;if((i|0)>0){ix(n|0,r|0,i|0)|0;r=u;n=o[u>>2]|0}else r=u;u=o[e>>2]|0;o[e>>2]=n;o[r>>2]=u;u=t+8|0;i=o[a>>2]|0;o[a>>2]=o[u>>2];o[u>>2]=i;u=e+8|0;a=t+12|0;e=o[u>>2]|0;o[u>>2]=o[a>>2];o[a>>2]=e;o[t>>2]=o[r>>2];return}function km(e){e=e|0;var t=0,n=0,r=0;t=o[e+4>>2]|0;n=e+8|0;r=o[n>>2]|0;if((r|0)!=(t|0))o[n>>2]=r+(~((r+-8-t|0)>>>3)<<3);e=o[e>>2]|0;if(e|0)KT(e);return}function Tm(e){e=e|0;Om(e);return}function xm(e){e=e|0;Am(e+24|0);return}function Am(e){e=e|0;var t=0,n=0,r=0;n=o[e>>2]|0;r=n;if(n|0){e=e+4|0;t=o[e>>2]|0;if((t|0)!=(n|0))o[e>>2]=t+(~((t+-8-r|0)>>>3)<<3);KT(n)}return}function Om(e){e=e|0;var t=0;t=Za()|0;nl(e,1,15,t,Ac()|0,0);o[e+24>>2]=0;o[e+28>>2]=0;o[e+32>>2]=0;return}function Pm(e){e=e|0;return Nm(o[(Im(e)|0)>>2]|0)|0}function Im(e){e=e|0;return(o[(ym()|0)+24>>2]|0)+(e<<3)|0}function Nm(e){e=e|0;return dc(TA[e&7]()|0)|0}function Mm(){var e=0;if(!(r[7832]|0)){Vm(10052);Fe(25,10052,g|0)|0;e=7832;o[e>>2]=1;o[e+4>>2]=0}return 10052}function Rm(e,t){e=e|0;t=t|0;o[e>>2]=Fm()|0;o[e+4>>2]=Lm()|0;o[e+12>>2]=t;o[e+8>>2]=Bm()|0;o[e+32>>2]=2;return}function Fm(){return 11709}function Lm(){return 1188}function Bm(){return Wm()|0}function jm(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;if((Um(r,896)|0)==512){if(n|0){zm(n);KT(n)}}else if(t|0){Qi(t);KT(t)}return}function Um(e,t){e=e|0;t=t|0;return t&e|0}function zm(e){e=e|0;e=o[e+4>>2]|0;if(e|0)qT(e);return}function Wm(){var e=0;if(!(r[7824]|0)){o[2511]=Hm()|0;o[2512]=0;e=7824;o[e>>2]=1;o[e+4>>2]=0}return 10044}function Hm(){return 0}function Vm(e){e=e|0;Al(e);return}function qm(e){e=e|0;var t=0,n=0,r=0,i=0,u=0;t=h;h=h+32|0;n=t+24|0;u=t+16|0;i=t+8|0;r=t;Gm(e,4827);$m(e,4834,3)|0;Ym(e,3682,47)|0;o[u>>2]=9;o[u+4>>2]=0;o[n>>2]=o[u>>2];o[n+4>>2]=o[u+4>>2];Km(e,4841,n)|0;o[i>>2]=1;o[i+4>>2]=0;o[n>>2]=o[i>>2];o[n+4>>2]=o[i+4>>2];Xm(e,4871,n)|0;o[r>>2]=10;o[r+4>>2]=0;o[n>>2]=o[r>>2];o[n+4>>2]=o[r+4>>2];Qm(e,4891,n)|0;h=t;return}function Gm(e,t){e=e|0;t=t|0;var n=0;n=Vy()|0;o[e>>2]=n;qy(n,t);cw(o[e>>2]|0);return}function $m(e,t,n){e=e|0;t=t|0;n=n|0;Cy(e,Ia(t)|0,n,0);return e|0}function Ym(e,t,n){e=e|0;t=t|0;n=n|0;ay(e,Ia(t)|0,n,0);return e|0}function Km(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0;r=h;h=h+16|0;i=r+8|0;u=r;a=o[n+4>>2]|0;o[u>>2]=o[n>>2];o[u+4>>2]=a;o[i>>2]=o[u>>2];o[i+4>>2]=o[u+4>>2];jg(e,t,i);h=r;return e|0}function Xm(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0;r=h;h=h+16|0;i=r+8|0;u=r;a=o[n+4>>2]|0;o[u>>2]=o[n>>2];o[u+4>>2]=a;o[i>>2]=o[u>>2];o[i+4>>2]=o[u+4>>2];gg(e,t,i);h=r;return e|0}function Qm(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0;r=h;h=h+16|0;i=r+8|0;u=r;a=o[n+4>>2]|0;o[u>>2]=o[n>>2];o[u+4>>2]=a;o[i>>2]=o[u>>2];o[i+4>>2]=o[u+4>>2];Jm(e,t,i);h=r;return e|0}function Jm(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0,l=0;r=h;h=h+16|0;i=r+8|0;u=r;l=o[n>>2]|0;a=o[n+4>>2]|0;n=Ia(t)|0;o[u>>2]=l;o[u+4>>2]=a;o[i>>2]=o[u>>2];o[i+4>>2]=o[u+4>>2];Zm(e,n,i,1);h=r;return}function Zm(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0,u=0,a=0,l=0,s=0,c=0,f=0;i=h;h=h+32|0;u=i+16|0;f=i+8|0;l=i;c=o[n>>2]|0;s=o[n+4>>2]|0;a=o[e>>2]|0;e=eg()|0;o[f>>2]=c;o[f+4>>2]=s;o[u>>2]=o[f>>2];o[u+4>>2]=o[f+4>>2];n=tg(u)|0;o[l>>2]=c;o[l+4>>2]=s;o[u>>2]=o[l>>2];o[u+4>>2]=o[l+4>>2];La(a,t,e,n,ng(u,r)|0,r);h=i;return}function eg(){var e=0,t=0;if(!(r[7840]|0)){sg(10100);Fe(48,10100,g|0)|0;t=7840;o[t>>2]=1;o[t+4>>2]=0}if(!(Xa(10100)|0)){e=10100;t=e+36|0;do{o[e>>2]=0;e=e+4|0}while((e|0)<(t|0));sg(10100)}return 10100}function tg(e){e=e|0;return 0}function ng(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0,a=0,l=0,s=0,c=0,f=0,d=0;f=h;h=h+32|0;i=f+24|0;a=f+16|0;l=f;s=f+8|0;u=o[e>>2]|0;r=o[e+4>>2]|0;o[l>>2]=u;o[l+4>>2]=r;d=eg()|0;c=d+24|0;e=za(t,4)|0;o[s>>2]=e;t=d+28|0;n=o[t>>2]|0;if(n>>>0<(o[d+32>>2]|0)>>>0){o[a>>2]=u;o[a+4>>2]=r;o[i>>2]=o[a>>2];o[i+4>>2]=o[a+4>>2];rg(n,i,e);e=(o[t>>2]|0)+12|0;o[t>>2]=e}else{ig(c,l,s);e=o[t>>2]|0}h=f;return((e-(o[c>>2]|0)|0)/12|0)+-1|0}function rg(e,t,n){e=e|0;t=t|0;n=n|0;var r=0;r=o[t+4>>2]|0;o[e>>2]=o[t>>2];o[e+4>>2]=r;o[e+8>>2]=n;return}function ig(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0,l=0,s=0,c=0,f=0,d=0,p=0;c=h;h=h+48|0;r=c+32|0;a=c+24|0;l=c;s=e+4|0;i=(((o[s>>2]|0)-(o[e>>2]|0)|0)/12|0)+1|0;u=og(e)|0;if(u>>>0>>0)UT(e);else{f=o[e>>2]|0;p=((o[e+8>>2]|0)-f|0)/12|0;d=p<<1;ug(l,p>>>0>>1>>>0?d>>>0>>0?i:d:u,((o[s>>2]|0)-f|0)/12|0,e+8|0);s=l+8|0;u=o[s>>2]|0;i=o[t+4>>2]|0;n=o[n>>2]|0;o[a>>2]=o[t>>2];o[a+4>>2]=i;o[r>>2]=o[a>>2];o[r+4>>2]=o[a+4>>2];rg(u,r,n);o[s>>2]=(o[s>>2]|0)+12;ag(e,l);lg(l);h=c;return}}function og(e){e=e|0;return 357913941}function ug(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0;o[e+12>>2]=0;o[e+16>>2]=r;do{if(t){if(t>>>0>357913941)Ye();else{i=$T(t*12|0)|0;break}}else i=0}while(0);o[e>>2]=i;r=i+(n*12|0)|0;o[e+8>>2]=r;o[e+4>>2]=r;o[e+12>>2]=i+(t*12|0);return}function ag(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0,a=0;r=o[e>>2]|0;a=e+4|0;u=t+4|0;i=(o[a>>2]|0)-r|0;n=(o[u>>2]|0)+(((i|0)/-12|0)*12|0)|0;o[u>>2]=n;if((i|0)>0){ix(n|0,r|0,i|0)|0;r=u;n=o[u>>2]|0}else r=u;u=o[e>>2]|0;o[e>>2]=n;o[r>>2]=u;u=t+8|0;i=o[a>>2]|0;o[a>>2]=o[u>>2];o[u>>2]=i;u=e+8|0;a=t+12|0;e=o[u>>2]|0;o[u>>2]=o[a>>2];o[a>>2]=e;o[t>>2]=o[r>>2];return}function lg(e){e=e|0;var t=0,n=0,r=0;t=o[e+4>>2]|0;n=e+8|0;r=o[n>>2]|0;if((r|0)!=(t|0))o[n>>2]=r+(~(((r+-12-t|0)>>>0)/12|0)*12|0);e=o[e>>2]|0;if(e|0)KT(e);return}function sg(e){e=e|0;dg(e);return}function cg(e){e=e|0;fg(e+24|0);return}function fg(e){e=e|0;var t=0,n=0,r=0;n=o[e>>2]|0;r=n;if(n|0){e=e+4|0;t=o[e>>2]|0;if((t|0)!=(n|0))o[e>>2]=t+(~(((t+-12-r|0)>>>0)/12|0)*12|0);KT(n)}return}function dg(e){e=e|0;var t=0;t=Za()|0;nl(e,2,6,t,pg()|0,1);o[e+24>>2]=0;o[e+28>>2]=0;o[e+32>>2]=0;return}function pg(){return 1364}function hg(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0;r=h;h=h+16|0;i=r+8|0;u=r;a=vg(e)|0;e=o[a+4>>2]|0;o[u>>2]=o[a>>2];o[u+4>>2]=e;o[i>>2]=o[u>>2];o[i+4>>2]=o[u+4>>2];n=mg(t,i,n)|0;h=r;return n|0}function vg(e){e=e|0;return(o[(eg()|0)+24>>2]|0)+(e*12|0)|0}function mg(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0;u=h;h=h+16|0;i=u;r=o[t>>2]|0;t=o[t+4>>2]|0;e=e+(t>>1)|0;if(t&1)r=o[(o[e>>2]|0)+r>>2]|0;Ql(i,n);i=Jl(i,n)|0;i=bs(DA[r&15](e,i)|0)|0;h=u;return i|0}function gg(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0,l=0;r=h;h=h+16|0;i=r+8|0;u=r;l=o[n>>2]|0;a=o[n+4>>2]|0;n=Ia(t)|0;o[u>>2]=l;o[u+4>>2]=a;o[i>>2]=o[u>>2];o[i+4>>2]=o[u+4>>2];yg(e,n,i,0);h=r;return}function yg(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0,u=0,a=0,l=0,s=0,c=0,f=0;i=h;h=h+32|0;u=i+16|0;f=i+8|0;l=i;c=o[n>>2]|0;s=o[n+4>>2]|0;a=o[e>>2]|0;e=_g()|0;o[f>>2]=c;o[f+4>>2]=s;o[u>>2]=o[f>>2];o[u+4>>2]=o[f+4>>2];n=bg(u)|0;o[l>>2]=c;o[l+4>>2]=s;o[u>>2]=o[l>>2];o[u+4>>2]=o[l+4>>2];La(a,t,e,n,wg(u,r)|0,r);h=i;return}function _g(){var e=0,t=0;if(!(r[7848]|0)){xg(10136);Fe(49,10136,g|0)|0;t=7848;o[t>>2]=1;o[t+4>>2]=0}if(!(Xa(10136)|0)){e=10136;t=e+36|0;do{o[e>>2]=0;e=e+4|0}while((e|0)<(t|0));xg(10136)}return 10136}function bg(e){e=e|0;return 0}function wg(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0,a=0,l=0,s=0,c=0,f=0,d=0;f=h;h=h+32|0;i=f+24|0;a=f+16|0;l=f;s=f+8|0;u=o[e>>2]|0;r=o[e+4>>2]|0;o[l>>2]=u;o[l+4>>2]=r;d=_g()|0;c=d+24|0;e=za(t,4)|0;o[s>>2]=e;t=d+28|0;n=o[t>>2]|0;if(n>>>0<(o[d+32>>2]|0)>>>0){o[a>>2]=u;o[a+4>>2]=r;o[i>>2]=o[a>>2];o[i+4>>2]=o[a+4>>2];Eg(n,i,e);e=(o[t>>2]|0)+12|0;o[t>>2]=e}else{Dg(c,l,s);e=o[t>>2]|0}h=f;return((e-(o[c>>2]|0)|0)/12|0)+-1|0}function Eg(e,t,n){e=e|0;t=t|0;n=n|0;var r=0;r=o[t+4>>2]|0;o[e>>2]=o[t>>2];o[e+4>>2]=r;o[e+8>>2]=n;return}function Dg(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0,l=0,s=0,c=0,f=0,d=0,p=0;c=h;h=h+48|0;r=c+32|0;a=c+24|0;l=c;s=e+4|0;i=(((o[s>>2]|0)-(o[e>>2]|0)|0)/12|0)+1|0;u=Sg(e)|0;if(u>>>0>>0)UT(e);else{f=o[e>>2]|0;p=((o[e+8>>2]|0)-f|0)/12|0;d=p<<1;Cg(l,p>>>0>>1>>>0?d>>>0>>0?i:d:u,((o[s>>2]|0)-f|0)/12|0,e+8|0);s=l+8|0;u=o[s>>2]|0;i=o[t+4>>2]|0;n=o[n>>2]|0;o[a>>2]=o[t>>2];o[a+4>>2]=i;o[r>>2]=o[a>>2];o[r+4>>2]=o[a+4>>2];Eg(u,r,n);o[s>>2]=(o[s>>2]|0)+12;kg(e,l);Tg(l);h=c;return}}function Sg(e){e=e|0;return 357913941}function Cg(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0;o[e+12>>2]=0;o[e+16>>2]=r;do{if(t){if(t>>>0>357913941)Ye();else{i=$T(t*12|0)|0;break}}else i=0}while(0);o[e>>2]=i;r=i+(n*12|0)|0;o[e+8>>2]=r;o[e+4>>2]=r;o[e+12>>2]=i+(t*12|0);return}function kg(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0,a=0;r=o[e>>2]|0;a=e+4|0;u=t+4|0;i=(o[a>>2]|0)-r|0;n=(o[u>>2]|0)+(((i|0)/-12|0)*12|0)|0;o[u>>2]=n;if((i|0)>0){ix(n|0,r|0,i|0)|0;r=u;n=o[u>>2]|0}else r=u;u=o[e>>2]|0;o[e>>2]=n;o[r>>2]=u;u=t+8|0;i=o[a>>2]|0;o[a>>2]=o[u>>2];o[u>>2]=i;u=e+8|0;a=t+12|0;e=o[u>>2]|0;o[u>>2]=o[a>>2];o[a>>2]=e;o[t>>2]=o[r>>2];return}function Tg(e){e=e|0;var t=0,n=0,r=0;t=o[e+4>>2]|0;n=e+8|0;r=o[n>>2]|0;if((r|0)!=(t|0))o[n>>2]=r+(~(((r+-12-t|0)>>>0)/12|0)*12|0);e=o[e>>2]|0;if(e|0)KT(e);return}function xg(e){e=e|0;Pg(e);return}function Ag(e){e=e|0;Og(e+24|0);return}function Og(e){e=e|0;var t=0,n=0,r=0;n=o[e>>2]|0;r=n;if(n|0){e=e+4|0;t=o[e>>2]|0;if((t|0)!=(n|0))o[e>>2]=t+(~(((t+-12-r|0)>>>0)/12|0)*12|0);KT(n)}return}function Pg(e){e=e|0;var t=0;t=Za()|0;nl(e,2,9,t,Ig()|0,1);o[e+24>>2]=0;o[e+28>>2]=0;o[e+32>>2]=0;return}function Ig(){return 1372}function Ng(e,t,n){e=e|0;t=t|0;n=+n;var r=0,i=0,u=0,a=0;r=h;h=h+16|0;i=r+8|0;u=r;a=Mg(e)|0;e=o[a+4>>2]|0;o[u>>2]=o[a>>2];o[u+4>>2]=e;o[i>>2]=o[u>>2];o[i+4>>2]=o[u+4>>2];Rg(t,i,n);h=r;return}function Mg(e){e=e|0;return(o[(_g()|0)+24>>2]|0)+(e*12|0)|0}function Rg(e,t,n){e=e|0;t=t|0;n=+n;var r=0,i=0,u=0,a=ft;u=h;h=h+16|0;i=u;r=o[t>>2]|0;t=o[t+4>>2]|0;e=e+(t>>1)|0;if(t&1)r=o[(o[e>>2]|0)+r>>2]|0;Fg(i,n);a=Y(Lg(i,n));fA[r&1](e,a);h=u;return}function Fg(e,t){e=e|0;t=+t;return}function Lg(e,t){e=e|0;t=+t;return Y(Bg(t))}function Bg(e){e=+e;return Y(e)}function jg(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0,l=0;r=h;h=h+16|0;i=r+8|0;u=r;l=o[n>>2]|0;a=o[n+4>>2]|0;n=Ia(t)|0;o[u>>2]=l;o[u+4>>2]=a;o[i>>2]=o[u>>2];o[i+4>>2]=o[u+4>>2];Ug(e,n,i,0);h=r;return}function Ug(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0,u=0,a=0,l=0,s=0,c=0,f=0;i=h;h=h+32|0;u=i+16|0;f=i+8|0;l=i;c=o[n>>2]|0;s=o[n+4>>2]|0;a=o[e>>2]|0;e=zg()|0;o[f>>2]=c;o[f+4>>2]=s;o[u>>2]=o[f>>2];o[u+4>>2]=o[f+4>>2];n=Wg(u)|0;o[l>>2]=c;o[l+4>>2]=s;o[u>>2]=o[l>>2];o[u+4>>2]=o[l+4>>2];La(a,t,e,n,Hg(u,r)|0,r);h=i;return}function zg(){var e=0,t=0;if(!(r[7856]|0)){Xg(10172);Fe(50,10172,g|0)|0;t=7856;o[t>>2]=1;o[t+4>>2]=0}if(!(Xa(10172)|0)){e=10172;t=e+36|0;do{o[e>>2]=0;e=e+4|0}while((e|0)<(t|0));Xg(10172)}return 10172}function Wg(e){e=e|0;return 0}function Hg(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0,a=0,l=0,s=0,c=0,f=0,d=0;f=h;h=h+32|0;i=f+24|0;a=f+16|0;l=f;s=f+8|0;u=o[e>>2]|0;r=o[e+4>>2]|0;o[l>>2]=u;o[l+4>>2]=r;d=zg()|0;c=d+24|0;e=za(t,4)|0;o[s>>2]=e;t=d+28|0;n=o[t>>2]|0;if(n>>>0<(o[d+32>>2]|0)>>>0){o[a>>2]=u;o[a+4>>2]=r;o[i>>2]=o[a>>2];o[i+4>>2]=o[a+4>>2];Vg(n,i,e);e=(o[t>>2]|0)+12|0;o[t>>2]=e}else{qg(c,l,s);e=o[t>>2]|0}h=f;return((e-(o[c>>2]|0)|0)/12|0)+-1|0}function Vg(e,t,n){e=e|0;t=t|0;n=n|0;var r=0;r=o[t+4>>2]|0;o[e>>2]=o[t>>2];o[e+4>>2]=r;o[e+8>>2]=n;return}function qg(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0,l=0,s=0,c=0,f=0,d=0,p=0;c=h;h=h+48|0;r=c+32|0;a=c+24|0;l=c;s=e+4|0;i=(((o[s>>2]|0)-(o[e>>2]|0)|0)/12|0)+1|0;u=Gg(e)|0;if(u>>>0>>0)UT(e);else{f=o[e>>2]|0;p=((o[e+8>>2]|0)-f|0)/12|0;d=p<<1;$g(l,p>>>0>>1>>>0?d>>>0>>0?i:d:u,((o[s>>2]|0)-f|0)/12|0,e+8|0);s=l+8|0;u=o[s>>2]|0;i=o[t+4>>2]|0;n=o[n>>2]|0;o[a>>2]=o[t>>2];o[a+4>>2]=i;o[r>>2]=o[a>>2];o[r+4>>2]=o[a+4>>2];Vg(u,r,n);o[s>>2]=(o[s>>2]|0)+12;Yg(e,l);Kg(l);h=c;return}}function Gg(e){e=e|0;return 357913941}function $g(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0;o[e+12>>2]=0;o[e+16>>2]=r;do{if(t){if(t>>>0>357913941)Ye();else{i=$T(t*12|0)|0;break}}else i=0}while(0);o[e>>2]=i;r=i+(n*12|0)|0;o[e+8>>2]=r;o[e+4>>2]=r;o[e+12>>2]=i+(t*12|0);return}function Yg(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0,a=0;r=o[e>>2]|0;a=e+4|0;u=t+4|0;i=(o[a>>2]|0)-r|0;n=(o[u>>2]|0)+(((i|0)/-12|0)*12|0)|0;o[u>>2]=n;if((i|0)>0){ix(n|0,r|0,i|0)|0;r=u;n=o[u>>2]|0}else r=u;u=o[e>>2]|0;o[e>>2]=n;o[r>>2]=u;u=t+8|0;i=o[a>>2]|0;o[a>>2]=o[u>>2];o[u>>2]=i;u=e+8|0;a=t+12|0;e=o[u>>2]|0;o[u>>2]=o[a>>2];o[a>>2]=e;o[t>>2]=o[r>>2];return}function Kg(e){e=e|0;var t=0,n=0,r=0;t=o[e+4>>2]|0;n=e+8|0;r=o[n>>2]|0;if((r|0)!=(t|0))o[n>>2]=r+(~(((r+-12-t|0)>>>0)/12|0)*12|0);e=o[e>>2]|0;if(e|0)KT(e);return}function Xg(e){e=e|0;Zg(e);return}function Qg(e){e=e|0;Jg(e+24|0);return}function Jg(e){e=e|0;var t=0,n=0,r=0;n=o[e>>2]|0;r=n;if(n|0){e=e+4|0;t=o[e>>2]|0;if((t|0)!=(n|0))o[e>>2]=t+(~(((t+-12-r|0)>>>0)/12|0)*12|0);KT(n)}return}function Zg(e){e=e|0;var t=0;t=Za()|0;nl(e,2,3,t,ey()|0,2);o[e+24>>2]=0;o[e+28>>2]=0;o[e+32>>2]=0;return}function ey(){return 1380}function ty(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0,u=0,a=0,l=0;i=h;h=h+16|0;u=i+8|0;a=i;l=ny(e)|0;e=o[l+4>>2]|0;o[a>>2]=o[l>>2];o[a+4>>2]=e;o[u>>2]=o[a>>2];o[u+4>>2]=o[a+4>>2];ry(t,u,n,r);h=i;return}function ny(e){e=e|0;return(o[(zg()|0)+24>>2]|0)+(e*12|0)|0}function ry(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0,u=0,a=0,l=0;l=h;h=h+16|0;u=l+1|0;a=l;i=o[t>>2]|0;t=o[t+4>>2]|0;e=e+(t>>1)|0;if(t&1)i=o[(o[e>>2]|0)+i>>2]|0;Ql(u,n);u=Jl(u,n)|0;iy(a,r);a=oy(a,r)|0;PA[i&15](e,u,a);h=l;return}function iy(e,t){e=e|0;t=t|0;return}function oy(e,t){e=e|0;t=t|0;return uy(t)|0}function uy(e){e=e|0;return(e|0)!=0|0}function ay(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0,u=0;u=o[e>>2]|0;i=ly()|0;e=sy(n)|0;La(u,t,i,e,cy(n,r)|0,r);return}function ly(){var e=0,t=0;if(!(r[7864]|0)){gy(10208);Fe(51,10208,g|0)|0;t=7864;o[t>>2]=1;o[t+4>>2]=0}if(!(Xa(10208)|0)){e=10208;t=e+36|0;do{o[e>>2]=0;e=e+4|0}while((e|0)<(t|0));gy(10208)}return 10208}function sy(e){e=e|0;return e|0}function cy(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0,a=0,l=0,s=0;l=h;h=h+16|0;i=l;u=l+4|0;o[i>>2]=e;s=ly()|0;a=s+24|0;t=za(t,4)|0;o[u>>2]=t;n=s+28|0;r=o[n>>2]|0;if(r>>>0<(o[s+32>>2]|0)>>>0){fy(r,e,t);t=(o[n>>2]|0)+8|0;o[n>>2]=t}else{dy(a,i,u);t=o[n>>2]|0}h=l;return(t-(o[a>>2]|0)>>3)+-1|0}function fy(e,t,n){e=e|0;t=t|0;n=n|0;o[e>>2]=t;o[e+4>>2]=n;return}function dy(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0,l=0,s=0,c=0,f=0;l=h;h=h+32|0;i=l;u=e+4|0;a=((o[u>>2]|0)-(o[e>>2]|0)>>3)+1|0;r=py(e)|0;if(r>>>0>>0)UT(e);else{s=o[e>>2]|0;f=(o[e+8>>2]|0)-s|0;c=f>>2;hy(i,f>>3>>>0>>1>>>0?c>>>0>>0?a:c:r,(o[u>>2]|0)-s>>3,e+8|0);a=i+8|0;fy(o[a>>2]|0,o[t>>2]|0,o[n>>2]|0);o[a>>2]=(o[a>>2]|0)+8;vy(e,i);my(i);h=l;return}}function py(e){e=e|0;return 536870911}function hy(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0;o[e+12>>2]=0;o[e+16>>2]=r;do{if(t){if(t>>>0>536870911)Ye();else{i=$T(t<<3)|0;break}}else i=0}while(0);o[e>>2]=i;r=i+(n<<3)|0;o[e+8>>2]=r;o[e+4>>2]=r;o[e+12>>2]=i+(t<<3);return}function vy(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0,a=0;r=o[e>>2]|0;a=e+4|0;u=t+4|0;i=(o[a>>2]|0)-r|0;n=(o[u>>2]|0)+(0-(i>>3)<<3)|0;o[u>>2]=n;if((i|0)>0){ix(n|0,r|0,i|0)|0;r=u;n=o[u>>2]|0}else r=u;u=o[e>>2]|0;o[e>>2]=n;o[r>>2]=u;u=t+8|0;i=o[a>>2]|0;o[a>>2]=o[u>>2];o[u>>2]=i;u=e+8|0;a=t+12|0;e=o[u>>2]|0;o[u>>2]=o[a>>2];o[a>>2]=e;o[t>>2]=o[r>>2];return}function my(e){e=e|0;var t=0,n=0,r=0;t=o[e+4>>2]|0;n=e+8|0;r=o[n>>2]|0;if((r|0)!=(t|0))o[n>>2]=r+(~((r+-8-t|0)>>>3)<<3);e=o[e>>2]|0;if(e|0)KT(e);return}function gy(e){e=e|0;by(e);return}function yy(e){e=e|0;_y(e+24|0);return}function _y(e){e=e|0;var t=0,n=0,r=0;n=o[e>>2]|0;r=n;if(n|0){e=e+4|0;t=o[e>>2]|0;if((t|0)!=(n|0))o[e>>2]=t+(~((t+-8-r|0)>>>3)<<3);KT(n)}return}function by(e){e=e|0;var t=0;t=Za()|0;nl(e,1,24,t,wy()|0,1);o[e+24>>2]=0;o[e+28>>2]=0;o[e+32>>2]=0;return}function wy(){return 1392}function Ey(e,t){e=e|0;t=t|0;Sy(o[(Dy(e)|0)>>2]|0,t);return}function Dy(e){e=e|0;return(o[(ly()|0)+24>>2]|0)+(e<<3)|0}function Sy(e,t){e=e|0;t=t|0;var n=0,r=0;n=h;h=h+16|0;r=n;hm(r,t);t=vm(r,t)|0;hA[e&127](t);h=n;return}function Cy(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0,u=0;u=o[e>>2]|0;i=ky()|0;e=Ty(n)|0;La(u,t,i,e,xy(n,r)|0,r);return}function ky(){var e=0,t=0;if(!(r[7872]|0)){Ry(10244);Fe(52,10244,g|0)|0;t=7872;o[t>>2]=1;o[t+4>>2]=0}if(!(Xa(10244)|0)){e=10244;t=e+36|0;do{o[e>>2]=0;e=e+4|0}while((e|0)<(t|0));Ry(10244)}return 10244}function Ty(e){e=e|0;return e|0}function xy(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0,a=0,l=0,s=0;l=h;h=h+16|0;i=l;u=l+4|0;o[i>>2]=e;s=ky()|0;a=s+24|0;t=za(t,4)|0;o[u>>2]=t;n=s+28|0;r=o[n>>2]|0;if(r>>>0<(o[s+32>>2]|0)>>>0){Ay(r,e,t);t=(o[n>>2]|0)+8|0;o[n>>2]=t}else{Oy(a,i,u);t=o[n>>2]|0}h=l;return(t-(o[a>>2]|0)>>3)+-1|0}function Ay(e,t,n){e=e|0;t=t|0;n=n|0;o[e>>2]=t;o[e+4>>2]=n;return}function Oy(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0,l=0,s=0,c=0,f=0;l=h;h=h+32|0;i=l;u=e+4|0;a=((o[u>>2]|0)-(o[e>>2]|0)>>3)+1|0;r=Py(e)|0;if(r>>>0>>0)UT(e);else{s=o[e>>2]|0;f=(o[e+8>>2]|0)-s|0;c=f>>2;Iy(i,f>>3>>>0>>1>>>0?c>>>0>>0?a:c:r,(o[u>>2]|0)-s>>3,e+8|0);a=i+8|0;Ay(o[a>>2]|0,o[t>>2]|0,o[n>>2]|0);o[a>>2]=(o[a>>2]|0)+8;Ny(e,i);My(i);h=l;return}}function Py(e){e=e|0;return 536870911}function Iy(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0;o[e+12>>2]=0;o[e+16>>2]=r;do{if(t){if(t>>>0>536870911)Ye();else{i=$T(t<<3)|0;break}}else i=0}while(0);o[e>>2]=i;r=i+(n<<3)|0;o[e+8>>2]=r;o[e+4>>2]=r;o[e+12>>2]=i+(t<<3);return}function Ny(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0,a=0;r=o[e>>2]|0;a=e+4|0;u=t+4|0;i=(o[a>>2]|0)-r|0;n=(o[u>>2]|0)+(0-(i>>3)<<3)|0;o[u>>2]=n;if((i|0)>0){ix(n|0,r|0,i|0)|0;r=u;n=o[u>>2]|0}else r=u;u=o[e>>2]|0;o[e>>2]=n;o[r>>2]=u;u=t+8|0;i=o[a>>2]|0;o[a>>2]=o[u>>2];o[u>>2]=i;u=e+8|0;a=t+12|0;e=o[u>>2]|0;o[u>>2]=o[a>>2];o[a>>2]=e;o[t>>2]=o[r>>2];return}function My(e){e=e|0;var t=0,n=0,r=0;t=o[e+4>>2]|0;n=e+8|0;r=o[n>>2]|0;if((r|0)!=(t|0))o[n>>2]=r+(~((r+-8-t|0)>>>3)<<3);e=o[e>>2]|0;if(e|0)KT(e);return}function Ry(e){e=e|0;By(e);return}function Fy(e){e=e|0;Ly(e+24|0);return}function Ly(e){e=e|0;var t=0,n=0,r=0;n=o[e>>2]|0;r=n;if(n|0){e=e+4|0;t=o[e>>2]|0;if((t|0)!=(n|0))o[e>>2]=t+(~((t+-8-r|0)>>>3)<<3);KT(n)}return}function By(e){e=e|0;var t=0;t=Za()|0;nl(e,1,16,t,jy()|0,0);o[e+24>>2]=0;o[e+28>>2]=0;o[e+32>>2]=0;return}function jy(){return 1400}function Uy(e){e=e|0;return Wy(o[(zy(e)|0)>>2]|0)|0}function zy(e){e=e|0;return(o[(ky()|0)+24>>2]|0)+(e<<3)|0}function Wy(e){e=e|0;return Hy(TA[e&7]()|0)|0}function Hy(e){e=e|0;return e|0}function Vy(){var e=0;if(!(r[7880]|0)){Qy(10280);Fe(25,10280,g|0)|0;e=7880;o[e>>2]=1;o[e+4>>2]=0}return 10280}function qy(e,t){e=e|0;t=t|0;o[e>>2]=Gy()|0;o[e+4>>2]=$y()|0;o[e+12>>2]=t;o[e+8>>2]=Yy()|0;o[e+32>>2]=4;return}function Gy(){return 11711}function $y(){return 1356}function Yy(){return Wm()|0}function Ky(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;if((Um(r,896)|0)==512){if(n|0){Xy(n);KT(n)}}else if(t|0){Hi(t);KT(t)}return}function Xy(e){e=e|0;e=o[e+4>>2]|0;if(e|0)qT(e);return}function Qy(e){e=e|0;Al(e);return}function Jy(e){e=e|0;Zy(e,4920);e_(e)|0;t_(e)|0;return}function Zy(e,t){e=e|0;t=t|0;var n=0;n=qd()|0;o[e>>2]=n;T_(n,t);cw(o[e>>2]|0);return}function e_(e){e=e|0;var t=0;t=o[e>>2]|0;r_(t,v_()|0);return e|0}function t_(e){e=e|0;var t=0;t=o[e>>2]|0;r_(t,n_()|0);return e|0}function n_(){var e=0;if(!(r[7888]|0)){i_(10328);Fe(53,10328,g|0)|0;e=7888;o[e>>2]=1;o[e+4>>2]=0}if(!(Xa(10328)|0))i_(10328);return 10328}function r_(e,t){e=e|0;t=t|0;La(e,0,t,0,0,0);return}function i_(e){e=e|0;a_(e);s_(e,10);return}function o_(e){e=e|0;u_(e+24|0);return}function u_(e){e=e|0;var t=0,n=0,r=0;n=o[e>>2]|0;r=n;if(n|0){e=e+4|0;t=o[e>>2]|0;if((t|0)!=(n|0))o[e>>2]=t+(~((t+-8-r|0)>>>3)<<3);KT(n)}return}function a_(e){e=e|0;var t=0;t=Za()|0;nl(e,5,1,t,d_()|0,2);o[e+24>>2]=0;o[e+28>>2]=0;o[e+32>>2]=0;return}function l_(e,t,n){e=e|0;t=t|0;n=+n;c_(e,t,n);return}function s_(e,t){e=e|0;t=t|0;o[e+20>>2]=t;return}function c_(e,t,n){e=e|0;t=t|0;n=+n;var r=0,i=0,u=0,a=0,l=0;r=h;h=h+16|0;u=r+8|0;l=r+13|0;i=r;a=r+12|0;Ql(l,t);o[u>>2]=Jl(l,t)|0;Kl(a,n);c[i>>3]=+Xl(a,n);f_(e,u,i);h=r;return}function f_(e,t,n){e=e|0;t=t|0;n=n|0;Vo(e+8|0,o[t>>2]|0,+c[n>>3]);r[e+24>>0]=1;return}function d_(){return 1404}function p_(e,t){e=e|0;t=+t;return h_(e,t)|0}function h_(e,t){e=e|0;t=+t;var n=0,r=0,i=0,u=0,a=0,l=0,s=0;r=h;h=h+16|0;u=r+4|0;a=r+8|0;l=r;i=UD(8)|0;n=i;s=$T(16)|0;Ql(u,e);e=Jl(u,e)|0;Kl(a,t);Vo(s,e,+Xl(a,t));a=n+4|0;o[a>>2]=s;e=$T(8)|0;a=o[a>>2]|0;o[l>>2]=0;o[u>>2]=o[l>>2];Yd(e,a,u);o[i>>2]=e;h=r;return n|0}function v_(){var e=0;if(!(r[7896]|0)){m_(10364);Fe(54,10364,g|0)|0;e=7896;o[e>>2]=1;o[e+4>>2]=0}if(!(Xa(10364)|0))m_(10364);return 10364}function m_(e){e=e|0;__(e);s_(e,55);return}function g_(e){e=e|0;y_(e+24|0);return}function y_(e){e=e|0;var t=0,n=0,r=0;n=o[e>>2]|0;r=n;if(n|0){e=e+4|0;t=o[e>>2]|0;if((t|0)!=(n|0))o[e>>2]=t+(~((t+-8-r|0)>>>3)<<3);KT(n)}return}function __(e){e=e|0;var t=0;t=Za()|0;nl(e,5,4,t,S_()|0,0);o[e+24>>2]=0;o[e+28>>2]=0;o[e+32>>2]=0;return}function b_(e){e=e|0;w_(e);return}function w_(e){e=e|0;E_(e);return}function E_(e){e=e|0;D_(e+8|0);r[e+24>>0]=1;return}function D_(e){e=e|0;o[e>>2]=0;c[e+8>>3]=0.0;return}function S_(){return 1424}function C_(){return k_()|0}function k_(){var e=0,t=0,n=0,r=0,i=0,u=0,a=0;t=h;h=h+16|0;i=t+4|0;a=t;n=UD(8)|0;e=n;r=$T(16)|0;D_(r);u=e+4|0;o[u>>2]=r;r=$T(8)|0;u=o[u>>2]|0;o[a>>2]=0;o[i>>2]=o[a>>2];Yd(r,u,i);o[n>>2]=r;h=t;return e|0}function T_(e,t){e=e|0;t=t|0;o[e>>2]=x_()|0;o[e+4>>2]=A_()|0;o[e+12>>2]=t;o[e+8>>2]=O_()|0;o[e+32>>2]=5;return}function x_(){return 11710}function A_(){return 1416}function O_(){return N_()|0}function P_(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;if((Um(r,896)|0)==512){if(n|0){I_(n);KT(n)}}else if(t|0)KT(t);return}function I_(e){e=e|0;e=o[e+4>>2]|0;if(e|0)qT(e);return}function N_(){var e=0;if(!(r[7904]|0)){o[2600]=M_()|0;o[2601]=0;e=7904;o[e>>2]=1;o[e+4>>2]=0}return 10400}function M_(){return o[357]|0}function R_(e){e=e|0;F_(e,4926);L_(e)|0;return}function F_(e,t){e=e|0;t=t|0;var n=0;n=ul()|0;o[e>>2]=n;K_(n,t);cw(o[e>>2]|0);return}function L_(e){e=e|0;var t=0;t=o[e>>2]|0;r_(t,B_()|0);return e|0}function B_(){var e=0;if(!(r[7912]|0)){j_(10412);Fe(56,10412,g|0)|0;e=7912;o[e>>2]=1;o[e+4>>2]=0}if(!(Xa(10412)|0))j_(10412);return 10412}function j_(e){e=e|0;W_(e);s_(e,57);return}function U_(e){e=e|0;z_(e+24|0);return}function z_(e){e=e|0;var t=0,n=0,r=0;n=o[e>>2]|0;r=n;if(n|0){e=e+4|0;t=o[e>>2]|0;if((t|0)!=(n|0))o[e>>2]=t+(~((t+-8-r|0)>>>3)<<3);KT(n)}return}function W_(e){e=e|0;var t=0;t=Za()|0;nl(e,5,5,t,G_()|0,0);o[e+24>>2]=0;o[e+28>>2]=0;o[e+32>>2]=0;return}function H_(e){e=e|0;V_(e);return}function V_(e){e=e|0;q_(e);return}function q_(e){e=e|0;var t=0,n=0;t=e+8|0;n=t+48|0;do{o[t>>2]=0;t=t+4|0}while((t|0)<(n|0));r[e+56>>0]=1;return}function G_(){return 1432}function $_(){return Y_()|0}function Y_(){var e=0,t=0,n=0,r=0,i=0,u=0,a=0,l=0;a=h;h=h+16|0;e=a+4|0;t=a;n=UD(8)|0;r=n;i=$T(48)|0;u=i;l=u+48|0;do{o[u>>2]=0;u=u+4|0}while((u|0)<(l|0));u=r+4|0;o[u>>2]=i;l=$T(8)|0;u=o[u>>2]|0;o[t>>2]=0;o[e>>2]=o[t>>2];pl(l,u,e);o[n>>2]=l;h=a;return r|0}function K_(e,t){e=e|0;t=t|0;o[e>>2]=X_()|0;o[e+4>>2]=Q_()|0;o[e+12>>2]=t;o[e+8>>2]=J_()|0;o[e+32>>2]=6;return}function X_(){return 11704}function Q_(){return 1436}function J_(){return N_()|0}function Z_(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;if((Um(r,896)|0)==512){if(n|0){eb(n);KT(n)}}else if(t|0)KT(t);return}function eb(e){e=e|0;e=o[e+4>>2]|0;if(e|0)qT(e);return}function tb(e){e=e|0;nb(e,4933);rb(e)|0;ib(e)|0;return}function nb(e,t){e=e|0;t=t|0;var n=0;n=Nb()|0;o[e>>2]=n;Mb(n,t);cw(o[e>>2]|0);return}function rb(e){e=e|0;var t=0;t=o[e>>2]|0;r_(t,wb()|0);return e|0}function ib(e){e=e|0;var t=0;t=o[e>>2]|0;r_(t,ob()|0);return e|0}function ob(){var e=0;if(!(r[7920]|0)){ub(10452);Fe(58,10452,g|0)|0;e=7920;o[e>>2]=1;o[e+4>>2]=0}if(!(Xa(10452)|0))ub(10452);return 10452}function ub(e){e=e|0;sb(e);s_(e,1);return}function ab(e){e=e|0;lb(e+24|0);return}function lb(e){e=e|0;var t=0,n=0,r=0;n=o[e>>2]|0;r=n;if(n|0){e=e+4|0;t=o[e>>2]|0;if((t|0)!=(n|0))o[e>>2]=t+(~((t+-8-r|0)>>>3)<<3);KT(n)}return}function sb(e){e=e|0;var t=0;t=Za()|0;nl(e,5,1,t,hb()|0,2);o[e+24>>2]=0;o[e+28>>2]=0;o[e+32>>2]=0;return}function cb(e,t,n){e=e|0;t=+t;n=+n;fb(e,t,n);return}function fb(e,t,n){e=e|0;t=+t;n=+n;var r=0,i=0,o=0,u=0,a=0;r=h;h=h+32|0;o=r+8|0;a=r+17|0;i=r;u=r+16|0;Kl(a,t);c[o>>3]=+Xl(a,t);Kl(u,n);c[i>>3]=+Xl(u,n);db(e,o,i);h=r;return}function db(e,t,n){e=e|0;t=t|0;n=n|0;pb(e+8|0,+c[t>>3],+c[n>>3]);r[e+24>>0]=1;return}function pb(e,t,n){e=e|0;t=+t;n=+n;c[e>>3]=t;c[e+8>>3]=n;return}function hb(){return 1472}function vb(e,t){e=+e;t=+t;return mb(e,t)|0}function mb(e,t){e=+e;t=+t;var n=0,r=0,i=0,u=0,a=0,l=0,s=0;r=h;h=h+16|0;a=r+4|0;l=r+8|0;s=r;i=UD(8)|0;n=i;u=$T(16)|0;Kl(a,e);e=+Xl(a,e);Kl(l,t);pb(u,e,+Xl(l,t));l=n+4|0;o[l>>2]=u;u=$T(8)|0;l=o[l>>2]|0;o[s>>2]=0;o[a>>2]=o[s>>2];gb(u,l,a);o[i>>2]=u;h=r;return n|0}function gb(e,t,n){e=e|0;t=t|0;n=n|0;o[e>>2]=t;n=$T(16)|0;o[n+4>>2]=0;o[n+8>>2]=0;o[n>>2]=1452;o[n+12>>2]=t;o[e+4>>2]=n;return}function yb(e){e=e|0;zT(e);KT(e);return}function _b(e){e=e|0;e=o[e+12>>2]|0;if(e|0)KT(e);return}function bb(e){e=e|0;KT(e);return}function wb(){var e=0;if(!(r[7928]|0)){Eb(10488);Fe(59,10488,g|0)|0;e=7928;o[e>>2]=1;o[e+4>>2]=0}if(!(Xa(10488)|0))Eb(10488);return 10488}function Eb(e){e=e|0;Cb(e);s_(e,60);return}function Db(e){e=e|0;Sb(e+24|0);return}function Sb(e){e=e|0;var t=0,n=0,r=0;n=o[e>>2]|0;r=n;if(n|0){e=e+4|0;t=o[e>>2]|0;if((t|0)!=(n|0))o[e>>2]=t+(~((t+-8-r|0)>>>3)<<3);KT(n)}return}function Cb(e){e=e|0;var t=0;t=Za()|0;nl(e,5,6,t,Ob()|0,0);o[e+24>>2]=0;o[e+28>>2]=0;o[e+32>>2]=0;return}function kb(e){e=e|0;Tb(e);return}function Tb(e){e=e|0;xb(e);return}function xb(e){e=e|0;Ab(e+8|0);r[e+24>>0]=1;return}function Ab(e){e=e|0;o[e>>2]=0;o[e+4>>2]=0;o[e+8>>2]=0;o[e+12>>2]=0;return}function Ob(){return 1492}function Pb(){return Ib()|0}function Ib(){var e=0,t=0,n=0,r=0,i=0,u=0,a=0;t=h;h=h+16|0;i=t+4|0;a=t;n=UD(8)|0;e=n;r=$T(16)|0;Ab(r);u=e+4|0;o[u>>2]=r;r=$T(8)|0;u=o[u>>2]|0;o[a>>2]=0;o[i>>2]=o[a>>2];gb(r,u,i);o[n>>2]=r;h=t;return e|0}function Nb(){var e=0;if(!(r[7936]|0)){Ub(10524);Fe(25,10524,g|0)|0;e=7936;o[e>>2]=1;o[e+4>>2]=0}return 10524}function Mb(e,t){e=e|0;t=t|0;o[e>>2]=Rb()|0;o[e+4>>2]=Fb()|0;o[e+12>>2]=t;o[e+8>>2]=Lb()|0;o[e+32>>2]=7;return}function Rb(){return 11700}function Fb(){return 1484}function Lb(){return N_()|0}function Bb(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;if((Um(r,896)|0)==512){if(n|0){jb(n);KT(n)}}else if(t|0)KT(t);return}function jb(e){e=e|0;e=o[e+4>>2]|0;if(e|0)qT(e);return}function Ub(e){e=e|0;Al(e);return}function zb(e,t,n){e=e|0;t=t|0;n=n|0;e=Ia(t)|0;t=Wb(n)|0;n=Hb(n,0)|0;xw(e,t,n,Vb()|0,0);return}function Wb(e){e=e|0;return e|0}function Hb(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0,a=0,l=0,s=0;l=h;h=h+16|0;i=l;u=l+4|0;o[i>>2]=e;s=Vb()|0;a=s+24|0;t=za(t,4)|0;o[u>>2]=t;n=s+28|0;r=o[n>>2]|0;if(r>>>0<(o[s+32>>2]|0)>>>0){Jb(r,e,t);t=(o[n>>2]|0)+8|0;o[n>>2]=t}else{Zb(a,i,u);t=o[n>>2]|0}h=l;return(t-(o[a>>2]|0)>>3)+-1|0}function Vb(){var e=0,t=0;if(!(r[7944]|0)){qb(10568);Fe(61,10568,g|0)|0;t=7944;o[t>>2]=1;o[t+4>>2]=0}if(!(Xa(10568)|0)){e=10568;t=e+36|0;do{o[e>>2]=0;e=e+4|0}while((e|0)<(t|0));qb(10568)}return 10568}function qb(e){e=e|0;Yb(e);return}function Gb(e){e=e|0;$b(e+24|0);return}function $b(e){e=e|0;var t=0,n=0,r=0;n=o[e>>2]|0;r=n;if(n|0){e=e+4|0;t=o[e>>2]|0;if((t|0)!=(n|0))o[e>>2]=t+(~((t+-8-r|0)>>>3)<<3);KT(n)}return}function Yb(e){e=e|0;var t=0;t=Za()|0;nl(e,1,17,t,Yc()|0,0);o[e+24>>2]=0;o[e+28>>2]=0;o[e+32>>2]=0;return}function Kb(e){e=e|0;return Qb(o[(Xb(e)|0)>>2]|0)|0}function Xb(e){e=e|0;return(o[(Vb()|0)+24>>2]|0)+(e<<3)|0}function Qb(e){e=e|0;return Jc(TA[e&7]()|0)|0}function Jb(e,t,n){e=e|0;t=t|0;n=n|0;o[e>>2]=t;o[e+4>>2]=n;return}function Zb(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0,l=0,s=0,c=0,f=0;l=h;h=h+32|0;i=l;u=e+4|0;a=((o[u>>2]|0)-(o[e>>2]|0)>>3)+1|0;r=ew(e)|0;if(r>>>0>>0)UT(e);else{s=o[e>>2]|0;f=(o[e+8>>2]|0)-s|0;c=f>>2;tw(i,f>>3>>>0>>1>>>0?c>>>0>>0?a:c:r,(o[u>>2]|0)-s>>3,e+8|0);a=i+8|0;Jb(o[a>>2]|0,o[t>>2]|0,o[n>>2]|0);o[a>>2]=(o[a>>2]|0)+8;nw(e,i);rw(i);h=l;return}}function ew(e){e=e|0;return 536870911}function tw(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0;o[e+12>>2]=0;o[e+16>>2]=r;do{if(t){if(t>>>0>536870911)Ye();else{i=$T(t<<3)|0;break}}else i=0}while(0);o[e>>2]=i;r=i+(n<<3)|0;o[e+8>>2]=r;o[e+4>>2]=r;o[e+12>>2]=i+(t<<3);return}function nw(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0,a=0;r=o[e>>2]|0;a=e+4|0;u=t+4|0;i=(o[a>>2]|0)-r|0;n=(o[u>>2]|0)+(0-(i>>3)<<3)|0;o[u>>2]=n;if((i|0)>0){ix(n|0,r|0,i|0)|0;r=u;n=o[u>>2]|0}else r=u;u=o[e>>2]|0;o[e>>2]=n;o[r>>2]=u;u=t+8|0;i=o[a>>2]|0;o[a>>2]=o[u>>2];o[u>>2]=i;u=e+8|0;a=t+12|0;e=o[u>>2]|0;o[u>>2]=o[a>>2];o[a>>2]=e;o[t>>2]=o[r>>2];return}function rw(e){e=e|0;var t=0,n=0,r=0;t=o[e+4>>2]|0;n=e+8|0;r=o[n>>2]|0;if((r|0)!=(t|0))o[n>>2]=r+(~((r+-8-t|0)>>>3)<<3);e=o[e>>2]|0;if(e|0)KT(e);return}function iw(){ow();return}function ow(){uw(10604);return}function uw(e){e=e|0;aw(e,4955);return}function aw(e,t){e=e|0;t=t|0;var n=0;n=lw()|0;o[e>>2]=n;sw(n,t);cw(o[e>>2]|0);return}function lw(){var e=0;if(!(r[7952]|0)){bw(10612);Fe(25,10612,g|0)|0;e=7952;o[e>>2]=1;o[e+4>>2]=0}return 10612}function sw(e,t){e=e|0;t=t|0;o[e>>2]=vw()|0;o[e+4>>2]=mw()|0;o[e+12>>2]=t;o[e+8>>2]=gw()|0;o[e+32>>2]=8;return}function cw(e){e=e|0;var t=0,n=0;t=h;h=h+16|0;n=t;fw()|0;o[n>>2]=e;dw(10608,n);h=t;return}function fw(){if(!(r[11714]|0)){o[2652]=0;Fe(62,10608,g|0)|0;r[11714]=1}return 10608}function dw(e,t){e=e|0;t=t|0;var n=0;n=$T(8)|0;o[n+4>>2]=o[t>>2];o[n>>2]=o[e>>2];o[e>>2]=n;return}function pw(e){e=e|0;hw(e);return}function hw(e){e=e|0;var t=0,n=0;t=o[e>>2]|0;if(t|0)do{n=t;t=o[t>>2]|0;KT(n)}while((t|0)!=0);o[e>>2]=0;return}function vw(){return 11715}function mw(){return 1496}function gw(){return Wm()|0}function yw(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;if((Um(r,896)|0)==512){if(n|0){_w(n);KT(n)}}else if(t|0)KT(t);return}function _w(e){e=e|0;e=o[e+4>>2]|0;if(e|0)qT(e);return}function bw(e){e=e|0;Al(e);return}function ww(e,t){e=e|0;t=t|0;var n=0,r=0;fw()|0;n=o[2652]|0;e:do{if(n|0){while(1){r=o[n+4>>2]|0;if(r|0?(rT(Ew(r)|0,e)|0)==0:0)break;n=o[n>>2]|0;if(!n)break e}Dw(r,t)}}while(0);return}function Ew(e){e=e|0;return o[e+12>>2]|0}function Dw(e,t){e=e|0;t=t|0;var n=0;e=e+36|0;n=o[e>>2]|0;if(n|0){Ji(n);KT(n)}n=$T(4)|0;yu(n,t);o[e>>2]=n;return}function Sw(){if(!(r[11716]|0)){o[2664]=0;Fe(63,10656,g|0)|0;r[11716]=1}return 10656}function Cw(){var e=0;if(!(r[11717]|0)){kw();o[2665]=1504;r[11717]=1;e=1504}else e=o[2665]|0;return e|0}function kw(){if(!(r[11740]|0)){r[11718]=za(za(8,0)|0,0)|0;r[11719]=za(za(0,0)|0,0)|0;r[11720]=za(za(0,16)|0,0)|0;r[11721]=za(za(8,0)|0,0)|0;r[11722]=za(za(0,0)|0,0)|0;r[11723]=za(za(8,0)|0,0)|0;r[11724]=za(za(0,0)|0,0)|0;r[11725]=za(za(8,0)|0,0)|0;r[11726]=za(za(0,0)|0,0)|0;r[11727]=za(za(8,0)|0,0)|0;r[11728]=za(za(0,0)|0,0)|0;r[11729]=za(za(0,0)|0,32)|0;r[11730]=za(za(0,0)|0,32)|0;r[11740]=1}return}function Tw(){return 1572}function xw(e,t,n,r,i){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;var u=0,a=0,l=0,s=0,c=0,f=0;u=h;h=h+32|0;f=u+16|0;c=u+12|0;s=u+8|0;l=u+4|0;a=u;o[f>>2]=e;o[c>>2]=t;o[s>>2]=n;o[l>>2]=r;o[a>>2]=i;Sw()|0;Aw(10656,f,c,s,l,a);h=u;return}function Aw(e,t,n,r,i,u){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;u=u|0;var a=0;a=$T(24)|0;Ua(a+4|0,o[t>>2]|0,o[n>>2]|0,o[r>>2]|0,o[i>>2]|0,o[u>>2]|0);o[a>>2]=o[e>>2];o[e>>2]=a;return}function Ow(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0,l=0,s=0,c=0,f=0,d=0,p=0,v=0,m=0,g=0,y=0,_=0,b=0;b=h;h=h+32|0;m=b+20|0;g=b+8|0;y=b+4|0;_=b;t=o[t>>2]|0;if(t|0){v=m+4|0;s=m+8|0;c=g+4|0;f=g+8|0;d=g+8|0;p=m+8|0;do{a=t+4|0;l=Pw(a)|0;if(l|0){i=Iw(l)|0;o[m>>2]=0;o[v>>2]=0;o[s>>2]=0;r=(Nw(l)|0)+1|0;Mw(m,r);if(r|0)while(1){r=r+-1|0;gk(g,o[i>>2]|0);u=o[v>>2]|0;if(u>>>0<(o[p>>2]|0)>>>0){o[u>>2]=o[g>>2];o[v>>2]=(o[v>>2]|0)+4}else Rw(m,g);if(!r)break;else i=i+4|0}r=Fw(l)|0;o[g>>2]=0;o[c>>2]=0;o[f>>2]=0;e:do{if(o[r>>2]|0){i=0;u=0;while(1){if((i|0)==(u|0))Lw(g,r);else{o[i>>2]=o[r>>2];o[c>>2]=(o[c>>2]|0)+4}r=r+4|0;if(!(o[r>>2]|0))break e;i=o[c>>2]|0;u=o[d>>2]|0}}}while(0);o[y>>2]=Bw(a)|0;o[_>>2]=Xa(l)|0;jw(n,e,y,_,m,g);Uw(g);zw(m)}t=o[t>>2]|0}while((t|0)!=0)}h=b;return}function Pw(e){e=e|0;return o[e+12>>2]|0}function Iw(e){e=e|0;return o[e+12>>2]|0}function Nw(e){e=e|0;return o[e+16>>2]|0}function Mw(e,t){e=e|0;t=t|0;var n=0,r=0,i=0;i=h;h=h+32|0;n=i;r=o[e>>2]|0;if((o[e+8>>2]|0)-r>>2>>>0>>0){bE(n,t,(o[e+4>>2]|0)-r>>2,e+8|0);wE(e,n);EE(n)}h=i;return}function Rw(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0,a=0,l=0,s=0,c=0;a=h;h=h+32|0;n=a;r=e+4|0;i=((o[r>>2]|0)-(o[e>>2]|0)>>2)+1|0;u=mE(e)|0;if(u>>>0>>0)UT(e);else{l=o[e>>2]|0;c=(o[e+8>>2]|0)-l|0;s=c>>1;bE(n,c>>2>>>0>>1>>>0?s>>>0>>0?i:s:u,(o[r>>2]|0)-l>>2,e+8|0);u=n+8|0;o[o[u>>2]>>2]=o[t>>2];o[u>>2]=(o[u>>2]|0)+4;wE(e,n);EE(n);h=a;return}}function Fw(e){e=e|0;return o[e+8>>2]|0}function Lw(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0,a=0,l=0,s=0,c=0;a=h;h=h+32|0;n=a;r=e+4|0;i=((o[r>>2]|0)-(o[e>>2]|0)>>2)+1|0;u=pE(e)|0;if(u>>>0>>0)UT(e);else{l=o[e>>2]|0;c=(o[e+8>>2]|0)-l|0;s=c>>1;gE(n,c>>2>>>0>>1>>>0?s>>>0>>0?i:s:u,(o[r>>2]|0)-l>>2,e+8|0);u=n+8|0;o[o[u>>2]>>2]=o[t>>2];o[u>>2]=(o[u>>2]|0)+4;yE(e,n);_E(n);h=a;return}}function Bw(e){e=e|0;return o[e>>2]|0}function jw(e,t,n,r,i,o){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;o=o|0;Ww(e,t,n,r,i,o);return}function Uw(e){e=e|0;var t=0,n=0,r=0;n=o[e>>2]|0;r=n;if(n|0){e=e+4|0;t=o[e>>2]|0;if((t|0)!=(n|0))o[e>>2]=t+(~((t+-4-r|0)>>>2)<<2);KT(n)}return}function zw(e){e=e|0;var t=0,n=0,r=0;n=o[e>>2]|0;r=n;if(n|0){e=e+4|0;t=o[e>>2]|0;if((t|0)!=(n|0))o[e>>2]=t+(~((t+-4-r|0)>>>2)<<2);KT(n)}return}function Ww(e,t,n,r,i,u){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;u=u|0;var a=0,l=0,s=0,c=0,f=0,d=0;a=h;h=h+48|0;f=a+40|0;l=a+32|0;d=a+24|0;s=a+12|0;c=a;Dk(l);e=Eu(e)|0;o[d>>2]=o[t>>2];n=o[n>>2]|0;r=o[r>>2]|0;Hw(s,i);Vw(c,u);o[f>>2]=o[d>>2];qw(e,f,n,r,s,c);Uw(c);zw(s);Ck(l);h=a;return}function Hw(e,t){e=e|0;t=t|0;var n=0,r=0;o[e>>2]=0;o[e+4>>2]=0;o[e+8>>2]=0;n=t+4|0;r=(o[n>>2]|0)-(o[t>>2]|0)>>2;if(r|0){hE(e,r);vE(e,o[t>>2]|0,o[n>>2]|0,r)}return}function Vw(e,t){e=e|0;t=t|0;var n=0,r=0;o[e>>2]=0;o[e+4>>2]=0;o[e+8>>2]=0;n=t+4|0;r=(o[n>>2]|0)-(o[t>>2]|0)>>2;if(r|0){fE(e,r);dE(e,o[t>>2]|0,o[n>>2]|0,r)}return}function qw(e,t,n,r,i,u){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;u=u|0;var a=0,l=0,s=0,c=0,f=0,d=0;a=h;h=h+32|0;f=a+28|0;d=a+24|0;l=a+12|0;s=a;c=Cu(Gw()|0)|0;o[d>>2]=o[t>>2];o[f>>2]=o[d>>2];t=$w(f)|0;n=Yw(n)|0;r=Kw(r)|0;o[l>>2]=o[i>>2];f=i+4|0;o[l+4>>2]=o[f>>2];d=i+8|0;o[l+8>>2]=o[d>>2];o[d>>2]=0;o[f>>2]=0;o[i>>2]=0;i=Xw(l)|0;o[s>>2]=o[u>>2];f=u+4|0;o[s+4>>2]=o[f>>2];d=u+8|0;o[s+8>>2]=o[d>>2];o[d>>2]=0;o[f>>2]=0;o[u>>2]=0;Oe(0,c|0,e|0,t|0,n|0,r|0,i|0,Qw(s)|0)|0;Uw(s);zw(l);h=a;return}function Gw(){var e=0;if(!(r[7968]|0)){sE(10708);e=7968;o[e>>2]=1;o[e+4>>2]=0}return 10708}function $w(e){e=e|0;return tE(e)|0}function Yw(e){e=e|0;return Zw(e)|0}function Kw(e){e=e|0;return Jc(e)|0}function Xw(e){e=e|0;return eE(e)|0}function Qw(e){e=e|0;return Jw(e)|0}function Jw(e){e=e|0;var t=0,n=0,r=0;r=(o[e+4>>2]|0)-(o[e>>2]|0)|0;n=r>>2;r=UD(r+4|0)|0;o[r>>2]=n;if(n|0){t=0;do{o[r+4+(t<<2)>>2]=Zw(o[(o[e>>2]|0)+(t<<2)>>2]|0)|0;t=t+1|0}while((t|0)!=(n|0))}return r|0}function Zw(e){e=e|0;return e|0}function eE(e){e=e|0;var t=0,n=0,r=0;r=(o[e+4>>2]|0)-(o[e>>2]|0)|0;n=r>>2;r=UD(r+4|0)|0;o[r>>2]=n;if(n|0){t=0;do{o[r+4+(t<<2)>>2]=tE((o[e>>2]|0)+(t<<2)|0)|0;t=t+1|0}while((t|0)!=(n|0))}return r|0}function tE(e){e=e|0;var t=0,n=0,r=0,i=0;i=h;h=h+32|0;t=i+12|0;n=i;r=al(nE()|0)|0;if(!r)e=rE(e)|0;else{ll(t,r);sl(n,t);bk(e,n);e=fl(t)|0}h=i;return e|0}function nE(){var e=0;if(!(r[7960]|0)){lE(10664);Fe(25,10664,g|0)|0;e=7960;o[e>>2]=1;o[e+4>>2]=0}return 10664}function rE(e){e=e|0;var t=0,n=0,r=0,i=0,u=0,a=0,l=0;n=h;h=h+16|0;i=n+4|0;a=n;r=UD(8)|0;t=r;l=$T(4)|0;o[l>>2]=o[e>>2];u=t+4|0;o[u>>2]=l;e=$T(8)|0;u=o[u>>2]|0;o[a>>2]=0;o[i>>2]=o[a>>2];iE(e,u,i);o[r>>2]=e;h=n;return t|0}function iE(e,t,n){e=e|0;t=t|0;n=n|0;o[e>>2]=t;n=$T(16)|0;o[n+4>>2]=0;o[n+8>>2]=0;o[n>>2]=1656;o[n+12>>2]=t;o[e+4>>2]=n;return}function oE(e){e=e|0;zT(e);KT(e);return}function uE(e){e=e|0;e=o[e+12>>2]|0;if(e|0)KT(e);return}function aE(e){e=e|0;KT(e);return}function lE(e){e=e|0;Al(e);return}function sE(e){e=e|0;Lu(e,cE()|0,5);return}function cE(){return 1676}function fE(e,t){e=e|0;t=t|0;var n=0;if((pE(e)|0)>>>0>>0)UT(e);if(t>>>0>1073741823)Ye();else{n=$T(t<<2)|0;o[e+4>>2]=n;o[e>>2]=n;o[e+8>>2]=n+(t<<2);return}}function dE(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;r=e+4|0;e=n-t|0;if((e|0)>0){ix(o[r>>2]|0,t|0,e|0)|0;o[r>>2]=(o[r>>2]|0)+(e>>>2<<2)}return}function pE(e){e=e|0;return 1073741823}function hE(e,t){e=e|0;t=t|0;var n=0;if((mE(e)|0)>>>0>>0)UT(e);if(t>>>0>1073741823)Ye();else{n=$T(t<<2)|0;o[e+4>>2]=n;o[e>>2]=n;o[e+8>>2]=n+(t<<2);return}}function vE(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;r=e+4|0;e=n-t|0;if((e|0)>0){ix(o[r>>2]|0,t|0,e|0)|0;o[r>>2]=(o[r>>2]|0)+(e>>>2<<2)}return}function mE(e){e=e|0;return 1073741823}function gE(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0;o[e+12>>2]=0;o[e+16>>2]=r;do{if(t){if(t>>>0>1073741823)Ye();else{i=$T(t<<2)|0;break}}else i=0}while(0);o[e>>2]=i;r=i+(n<<2)|0;o[e+8>>2]=r;o[e+4>>2]=r;o[e+12>>2]=i+(t<<2);return}function yE(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0,a=0;r=o[e>>2]|0;a=e+4|0;u=t+4|0;i=(o[a>>2]|0)-r|0;n=(o[u>>2]|0)+(0-(i>>2)<<2)|0;o[u>>2]=n;if((i|0)>0){ix(n|0,r|0,i|0)|0;r=u;n=o[u>>2]|0}else r=u;u=o[e>>2]|0;o[e>>2]=n;o[r>>2]=u;u=t+8|0;i=o[a>>2]|0;o[a>>2]=o[u>>2];o[u>>2]=i;u=e+8|0;a=t+12|0;e=o[u>>2]|0;o[u>>2]=o[a>>2];o[a>>2]=e;o[t>>2]=o[r>>2];return}function _E(e){e=e|0;var t=0,n=0,r=0;t=o[e+4>>2]|0;n=e+8|0;r=o[n>>2]|0;if((r|0)!=(t|0))o[n>>2]=r+(~((r+-4-t|0)>>>2)<<2);e=o[e>>2]|0;if(e|0)KT(e);return}function bE(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0;o[e+12>>2]=0;o[e+16>>2]=r;do{if(t){if(t>>>0>1073741823)Ye();else{i=$T(t<<2)|0;break}}else i=0}while(0);o[e>>2]=i;r=i+(n<<2)|0;o[e+8>>2]=r;o[e+4>>2]=r;o[e+12>>2]=i+(t<<2);return}function wE(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0,a=0;r=o[e>>2]|0;a=e+4|0;u=t+4|0;i=(o[a>>2]|0)-r|0;n=(o[u>>2]|0)+(0-(i>>2)<<2)|0;o[u>>2]=n;if((i|0)>0){ix(n|0,r|0,i|0)|0;r=u;n=o[u>>2]|0}else r=u;u=o[e>>2]|0;o[e>>2]=n;o[r>>2]=u;u=t+8|0;i=o[a>>2]|0;o[a>>2]=o[u>>2];o[u>>2]=i;u=e+8|0;a=t+12|0;e=o[u>>2]|0;o[u>>2]=o[a>>2];o[a>>2]=e;o[t>>2]=o[r>>2];return}function EE(e){e=e|0;var t=0,n=0,r=0;t=o[e+4>>2]|0;n=e+8|0;r=o[n>>2]|0;if((r|0)!=(t|0))o[n>>2]=r+(~((r+-4-t|0)>>>2)<<2);e=o[e>>2]|0;if(e|0)KT(e);return}function DE(e,t,n,r,i){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;var u=0,a=0,l=0,s=0,c=0,f=0,d=0,p=0,v=0,m=0,g=0;g=h;h=h+32|0;f=g+20|0;d=g+12|0;c=g+16|0;p=g+4|0;v=g;m=g+8|0;l=Cw()|0;u=o[l>>2]|0;a=o[u>>2]|0;if(a|0){s=o[l+8>>2]|0;l=o[l+4>>2]|0;while(1){gk(f,a);SE(e,f,l,s);u=u+4|0;a=o[u>>2]|0;if(!a)break;else{s=s+1|0;l=l+1|0}}}u=Tw()|0;a=o[u>>2]|0;if(a|0)do{gk(f,a);o[d>>2]=o[u+4>>2];CE(t,f,d);u=u+8|0;a=o[u>>2]|0}while((a|0)!=0);u=o[(fw()|0)>>2]|0;if(u|0)do{t=o[u+4>>2]|0;gk(f,o[(kE(t)|0)>>2]|0);o[d>>2]=Ew(t)|0;TE(n,f,d);u=o[u>>2]|0}while((u|0)!=0);gk(c,0);u=Sw()|0;o[f>>2]=o[c>>2];Ow(f,u,i);u=o[(fw()|0)>>2]|0;if(u|0){e=f+4|0;t=f+8|0;n=f+8|0;do{s=o[u+4>>2]|0;gk(d,o[(kE(s)|0)>>2]|0);AE(p,xE(s)|0);a=o[p>>2]|0;if(a|0){o[f>>2]=0;o[e>>2]=0;o[t>>2]=0;do{gk(v,o[(kE(o[a+4>>2]|0)|0)>>2]|0);l=o[e>>2]|0;if(l>>>0<(o[n>>2]|0)>>>0){o[l>>2]=o[v>>2];o[e>>2]=(o[e>>2]|0)+4}else Rw(f,v);a=o[a>>2]|0}while((a|0)!=0);OE(r,d,f);zw(f)}o[m>>2]=o[d>>2];c=PE(s)|0;o[f>>2]=o[m>>2];Ow(f,c,i);kl(p);u=o[u>>2]|0}while((u|0)!=0)}h=g;return}function SE(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;qE(e,t,n,r);return}function CE(e,t,n){e=e|0;t=t|0;n=n|0;VE(e,t,n);return}function kE(e){e=e|0;return e|0}function TE(e,t,n){e=e|0;t=t|0;n=n|0;jE(e,t,n);return}function xE(e){e=e|0;return e+16|0}function AE(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0,a=0,l=0,s=0;u=h;h=h+16|0;i=u+8|0;n=u;o[e>>2]=0;r=o[t>>2]|0;o[i>>2]=r;o[n>>2]=e;n=LE(n)|0;if(r|0){r=$T(12)|0;a=(BE(i)|0)+4|0;e=o[a+4>>2]|0;t=r+4|0;o[t>>2]=o[a>>2];o[t+4>>2]=e;t=o[o[i>>2]>>2]|0;o[i>>2]=t;if(!t)e=r;else{t=r;while(1){e=$T(12)|0;s=(BE(i)|0)+4|0;l=o[s+4>>2]|0;a=e+4|0;o[a>>2]=o[s>>2];o[a+4>>2]=l;o[t>>2]=e;a=o[o[i>>2]>>2]|0;o[i>>2]=a;if(!a)break;else t=e}}o[e>>2]=o[n>>2];o[n>>2]=r}h=u;return}function OE(e,t,n){e=e|0;t=t|0;n=n|0;IE(e,t,n);return}function PE(e){e=e|0;return e+24|0}function IE(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0,l=0;r=h;h=h+32|0;a=r+24|0;i=r+16|0;l=r+12|0;u=r;Dk(i);e=Eu(e)|0;o[l>>2]=o[t>>2];Hw(u,n);o[a>>2]=o[l>>2];NE(e,a,u);zw(u);Ck(i);h=r;return}function NE(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0,l=0;r=h;h=h+32|0;a=r+16|0;l=r+12|0;i=r;u=Cu(ME()|0)|0;o[l>>2]=o[t>>2];o[a>>2]=o[l>>2];t=$w(a)|0;o[i>>2]=o[n>>2];a=n+4|0;o[i+4>>2]=o[a>>2];l=n+8|0;o[i+8>>2]=o[l>>2];o[l>>2]=0;o[a>>2]=0;o[n>>2]=0;ke(0,u|0,e|0,t|0,Xw(i)|0)|0;zw(i);h=r;return}function ME(){var e=0;if(!(r[7976]|0)){RE(10720);e=7976;o[e>>2]=1;o[e+4>>2]=0}return 10720}function RE(e){e=e|0;Lu(e,FE()|0,2);return}function FE(){return 1732}function LE(e){e=e|0;return o[e>>2]|0}function BE(e){e=e|0;return o[e>>2]|0}function jE(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0;r=h;h=h+32|0;u=r+16|0;i=r+8|0;a=r;Dk(i);e=Eu(e)|0;o[a>>2]=o[t>>2];n=o[n>>2]|0;o[u>>2]=o[a>>2];UE(e,u,n);Ck(i);h=r;return}function UE(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0;r=h;h=h+16|0;u=r+4|0;a=r;i=Cu(zE()|0)|0;o[a>>2]=o[t>>2];o[u>>2]=o[a>>2];t=$w(u)|0;ke(0,i|0,e|0,t|0,Yw(n)|0)|0;h=r;return}function zE(){var e=0;if(!(r[7984]|0)){WE(10732);e=7984;o[e>>2]=1;o[e+4>>2]=0}return 10732}function WE(e){e=e|0;Lu(e,HE()|0,2);return}function HE(){return 1744}function VE(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0;r=h;h=h+32|0;u=r+16|0;i=r+8|0;a=r;Dk(i);e=Eu(e)|0;o[a>>2]=o[t>>2];n=o[n>>2]|0;o[u>>2]=o[a>>2];UE(e,u,n);Ck(i);h=r;return}function qE(e,t,n,i){e=e|0;t=t|0;n=n|0;i=i|0;var u=0,a=0,l=0,s=0;u=h;h=h+32|0;l=u+16|0;a=u+8|0;s=u;Dk(a);e=Eu(e)|0;o[s>>2]=o[t>>2];n=r[n>>0]|0;i=r[i>>0]|0;o[l>>2]=o[s>>2];GE(e,l,n,i);Ck(a);h=u;return}function GE(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0,u=0,a=0,l=0;i=h;h=h+16|0;a=i+4|0;l=i;u=Cu($E()|0)|0;o[l>>2]=o[t>>2];o[a>>2]=o[l>>2];t=$w(a)|0;n=YE(n)|0;nt(0,u|0,e|0,t|0,n|0,YE(r)|0)|0;h=i;return}function $E(){var e=0;if(!(r[7992]|0)){XE(10744);e=7992;o[e>>2]=1;o[e+4>>2]=0}return 10744}function YE(e){e=e|0;return KE(e)|0}function KE(e){e=e|0;return e&255|0}function XE(e){e=e|0;Lu(e,QE()|0,3);return}function QE(){return 1756}function JE(e,t,n){e=e|0;t=t|0;n=n|0;var i=0,u=0,a=0,l=0,s=0,c=0,f=0,d=0,p=0,v=0;v=h;h=h+32|0;s=v+8|0;c=v+4|0;f=v+20|0;d=v;Vs(e,0);i=_k(t)|0;o[s>>2]=0;p=s+4|0;o[p>>2]=0;o[s+8>>2]=0;switch(i<<24>>24){case 0:{r[f>>0]=0;ZE(c,n,f);eD(e,c)|0;Zi(c);break}case 8:{p=yk(t)|0;r[f>>0]=8;gk(d,o[p+4>>2]|0);tD(c,n,f,d,p+8|0);eD(e,c)|0;Zi(c);break}case 9:{a=yk(t)|0;t=o[a+4>>2]|0;if(t|0){l=s+8|0;u=a+12|0;while(1){t=t+-1|0;gk(c,o[u>>2]|0);i=o[p>>2]|0;if(i>>>0<(o[l>>2]|0)>>>0){o[i>>2]=o[c>>2];o[p>>2]=(o[p>>2]|0)+4}else Rw(s,c);if(!t)break;else u=u+4|0}}r[f>>0]=9;gk(d,o[a+8>>2]|0);nD(c,n,f,d,s);eD(e,c)|0;Zi(c);break}default:{p=yk(t)|0;r[f>>0]=i;gk(d,o[p+4>>2]|0);rD(c,n,f,d);eD(e,c)|0;Zi(c)}}zw(s);h=v;return}function ZE(e,t,n){e=e|0;t=t|0;n=n|0;var i=0,o=0;i=h;h=h+16|0;o=i;Dk(o);t=Eu(t)|0;gD(e,t,r[n>>0]|0);Ck(o);h=i;return}function eD(e,t){e=e|0;t=t|0;var n=0;n=o[e>>2]|0;if(n|0)rt(n|0);o[e>>2]=o[t>>2];o[t>>2]=0;return e|0}function tD(e,t,n,i,u){e=e|0;t=t|0;n=n|0;i=i|0;u=u|0;var a=0,l=0,s=0,c=0;a=h;h=h+32|0;s=a+16|0;l=a+8|0;c=a;Dk(l);t=Eu(t)|0;n=r[n>>0]|0;o[c>>2]=o[i>>2];u=o[u>>2]|0;o[s>>2]=o[c>>2];pD(e,t,n,s,u);Ck(l);h=a;return}function nD(e,t,n,i,u){e=e|0;t=t|0;n=n|0;i=i|0;u=u|0;var a=0,l=0,s=0,c=0,f=0;a=h;h=h+32|0;c=a+24|0;l=a+16|0;f=a+12|0;s=a;Dk(l);t=Eu(t)|0;n=r[n>>0]|0;o[f>>2]=o[i>>2];Hw(s,u);o[c>>2]=o[f>>2];sD(e,t,n,c,s);zw(s);Ck(l);h=a;return}function rD(e,t,n,i){e=e|0;t=t|0;n=n|0;i=i|0;var u=0,a=0,l=0,s=0;u=h;h=h+32|0;l=u+16|0;a=u+8|0;s=u;Dk(a);t=Eu(t)|0;n=r[n>>0]|0;o[s>>2]=o[i>>2];o[l>>2]=o[s>>2];iD(e,t,n,l);Ck(a);h=u;return}function iD(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0,u=0,a=0,l=0;i=h;h=h+16|0;u=i+4|0;l=i;a=Cu(oD()|0)|0;n=YE(n)|0;o[l>>2]=o[r>>2];o[u>>2]=o[l>>2];uD(e,ke(0,a|0,t|0,n|0,$w(u)|0)|0);h=i;return}function oD(){var e=0;if(!(r[8e3]|0)){aD(10756);e=8e3;o[e>>2]=1;o[e+4>>2]=0}return 10756}function uD(e,t){e=e|0;t=t|0;Vs(e,t);return}function aD(e){e=e|0;Lu(e,lD()|0,2);return}function lD(){return 1772}function sD(e,t,n,r,i){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;var u=0,a=0,l=0,s=0,c=0;u=h;h=h+32|0;s=u+16|0;c=u+12|0;a=u;l=Cu(cD()|0)|0;n=YE(n)|0;o[c>>2]=o[r>>2];o[s>>2]=o[c>>2];r=$w(s)|0;o[a>>2]=o[i>>2];s=i+4|0;o[a+4>>2]=o[s>>2];c=i+8|0;o[a+8>>2]=o[c>>2];o[c>>2]=0;o[s>>2]=0;o[i>>2]=0;uD(e,nt(0,l|0,t|0,n|0,r|0,Xw(a)|0)|0);zw(a);h=u;return}function cD(){var e=0;if(!(r[8008]|0)){fD(10768);e=8008;o[e>>2]=1;o[e+4>>2]=0}return 10768}function fD(e){e=e|0;Lu(e,dD()|0,3);return}function dD(){return 1784}function pD(e,t,n,r,i){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;var u=0,a=0,l=0,s=0;u=h;h=h+16|0;l=u+4|0;s=u;a=Cu(hD()|0)|0;n=YE(n)|0;o[s>>2]=o[r>>2];o[l>>2]=o[s>>2];r=$w(l)|0;uD(e,nt(0,a|0,t|0,n|0,r|0,Kw(i)|0)|0);h=u;return}function hD(){var e=0;if(!(r[8016]|0)){vD(10780);e=8016;o[e>>2]=1;o[e+4>>2]=0}return 10780}function vD(e){e=e|0;Lu(e,mD()|0,3);return}function mD(){return 1800}function gD(e,t,n){e=e|0;t=t|0;n=n|0;var r=0;r=Cu(yD()|0)|0;uD(e,it(0,r|0,t|0,YE(n)|0)|0);return}function yD(){var e=0;if(!(r[8024]|0)){_D(10792);e=8024;o[e>>2]=1;o[e+4>>2]=0}return 10792}function _D(e){e=e|0;Lu(e,bD()|0,1);return}function bD(){return 1816}function wD(){ED();DD();SD();return}function ED(){o[2702]=YT(65536)|0;return}function DD(){$D(10856);return}function SD(){CD(10816);return}function CD(e){e=e|0;kD(e,5044);TD(e)|0;return}function kD(e,t){e=e|0;t=t|0;var n=0;n=nE()|0;o[e>>2]=n;zD(n,t);cw(o[e>>2]|0);return}function TD(e){e=e|0;var t=0;t=o[e>>2]|0;r_(t,xD()|0);return e|0}function xD(){var e=0;if(!(r[8032]|0)){AD(10820);Fe(64,10820,g|0)|0;e=8032;o[e>>2]=1;o[e+4>>2]=0}if(!(Xa(10820)|0))AD(10820);return 10820}function AD(e){e=e|0;ID(e);s_(e,25);return}function OD(e){e=e|0;PD(e+24|0);return}function PD(e){e=e|0;var t=0,n=0,r=0;n=o[e>>2]|0;r=n;if(n|0){e=e+4|0;t=o[e>>2]|0;if((t|0)!=(n|0))o[e>>2]=t+(~((t+-8-r|0)>>>3)<<3);KT(n)}return}function ID(e){e=e|0;var t=0;t=Za()|0;nl(e,5,18,t,LD()|0,1);o[e+24>>2]=0;o[e+28>>2]=0;o[e+32>>2]=0;return}function ND(e,t){e=e|0;t=t|0;MD(e,t);return}function MD(e,t){e=e|0;t=t|0;var n=0,r=0,i=0;n=h;h=h+16|0;r=n;i=n+4|0;cc(i,t);o[r>>2]=fc(i,t)|0;RD(e,r);h=n;return}function RD(e,t){e=e|0;t=t|0;FD(e+4|0,o[t>>2]|0);r[e+8>>0]=1;return}function FD(e,t){e=e|0;t=t|0;o[e>>2]=t;return}function LD(){return 1824}function BD(e){e=e|0;return jD(e)|0}function jD(e){e=e|0;var t=0,n=0,r=0,i=0,u=0,a=0,l=0;n=h;h=h+16|0;i=n+4|0;a=n;r=UD(8)|0;t=r;l=$T(4)|0;cc(i,e);FD(l,fc(i,e)|0);u=t+4|0;o[u>>2]=l;e=$T(8)|0;u=o[u>>2]|0;o[a>>2]=0;o[i>>2]=o[a>>2];iE(e,u,i);o[r>>2]=e;h=n;return t|0}function UD(e){e=e|0;var t=0,n=0;e=e+7&-8;if(e>>>0<=32768?(t=o[2701]|0,e>>>0<=(65536-t|0)>>>0):0){n=(o[2702]|0)+t|0;o[2701]=t+e;e=n}else{e=YT(e+8|0)|0;o[e>>2]=o[2703];o[2703]=e;e=e+8|0}return e|0}function zD(e,t){e=e|0;t=t|0;o[e>>2]=WD()|0;o[e+4>>2]=HD()|0;o[e+12>>2]=t;o[e+8>>2]=VD()|0;o[e+32>>2]=9;return}function WD(){return 11744}function HD(){return 1832}function VD(){return N_()|0}function qD(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;if((Um(r,896)|0)==512){if(n|0){GD(n);KT(n)}}else if(t|0)KT(t);return}function GD(e){e=e|0;e=o[e+4>>2]|0;if(e|0)qT(e);return}function $D(e){e=e|0;YD(e,5052);KD(e)|0;XD(e,5058,26)|0;QD(e,5069,1)|0;JD(e,5077,10)|0;ZD(e,5087,19)|0;tS(e,5094,27)|0;return}function YD(e,t){e=e|0;t=t|0;var n=0;n=sk()|0;o[e>>2]=n;ck(n,t);cw(o[e>>2]|0);return}function KD(e){e=e|0;var t=0;t=o[e>>2]|0;r_(t,YC()|0);return e|0}function XD(e,t,n){e=e|0;t=t|0;n=n|0;TC(e,Ia(t)|0,n,0);return e|0}function QD(e,t,n){e=e|0;t=t|0;n=n|0;sC(e,Ia(t)|0,n,0);return e|0}function JD(e,t,n){e=e|0;t=t|0;n=n|0;BS(e,Ia(t)|0,n,0);return e|0}function ZD(e,t,n){e=e|0;t=t|0;n=n|0;bS(e,Ia(t)|0,n,0);return e|0}function eS(e,t){e=e|0;t=t|0;var n=0,r=0;e:while(1){n=o[2703]|0;while(1){if((n|0)==(t|0))break e;r=o[n>>2]|0;o[2703]=r;if(!n)n=r;else break}KT(n)}o[2701]=e;return}function tS(e,t,n){e=e|0;t=t|0;n=n|0;nS(e,Ia(t)|0,n,0);return e|0}function nS(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0,u=0;u=o[e>>2]|0;i=rS()|0;e=iS(n)|0;La(u,t,i,e,oS(n,r)|0,r);return}function rS(){var e=0,t=0;if(!(r[8040]|0)){dS(10860);Fe(65,10860,g|0)|0;t=8040;o[t>>2]=1;o[t+4>>2]=0}if(!(Xa(10860)|0)){e=10860;t=e+36|0;do{o[e>>2]=0;e=e+4|0}while((e|0)<(t|0));dS(10860)}return 10860}function iS(e){e=e|0;return e|0}function oS(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0,a=0,l=0,s=0;l=h;h=h+16|0;i=l;u=l+4|0;o[i>>2]=e;s=rS()|0;a=s+24|0;t=za(t,4)|0;o[u>>2]=t;n=s+28|0;r=o[n>>2]|0;if(r>>>0<(o[s+32>>2]|0)>>>0){uS(r,e,t);t=(o[n>>2]|0)+8|0;o[n>>2]=t}else{aS(a,i,u);t=o[n>>2]|0}h=l;return(t-(o[a>>2]|0)>>3)+-1|0}function uS(e,t,n){e=e|0;t=t|0;n=n|0;o[e>>2]=t;o[e+4>>2]=n;return}function aS(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0,l=0,s=0,c=0,f=0;l=h;h=h+32|0;i=l;u=e+4|0;a=((o[u>>2]|0)-(o[e>>2]|0)>>3)+1|0;r=lS(e)|0;if(r>>>0>>0)UT(e);else{s=o[e>>2]|0;f=(o[e+8>>2]|0)-s|0;c=f>>2;sS(i,f>>3>>>0>>1>>>0?c>>>0>>0?a:c:r,(o[u>>2]|0)-s>>3,e+8|0);a=i+8|0;uS(o[a>>2]|0,o[t>>2]|0,o[n>>2]|0);o[a>>2]=(o[a>>2]|0)+8;cS(e,i);fS(i);h=l;return}}function lS(e){e=e|0;return 536870911}function sS(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0;o[e+12>>2]=0;o[e+16>>2]=r;do{if(t){if(t>>>0>536870911)Ye();else{i=$T(t<<3)|0;break}}else i=0}while(0);o[e>>2]=i;r=i+(n<<3)|0;o[e+8>>2]=r;o[e+4>>2]=r;o[e+12>>2]=i+(t<<3);return}function cS(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0,a=0;r=o[e>>2]|0;a=e+4|0;u=t+4|0;i=(o[a>>2]|0)-r|0;n=(o[u>>2]|0)+(0-(i>>3)<<3)|0;o[u>>2]=n;if((i|0)>0){ix(n|0,r|0,i|0)|0;r=u;n=o[u>>2]|0}else r=u;u=o[e>>2]|0;o[e>>2]=n;o[r>>2]=u;u=t+8|0;i=o[a>>2]|0;o[a>>2]=o[u>>2];o[u>>2]=i;u=e+8|0;a=t+12|0;e=o[u>>2]|0;o[u>>2]=o[a>>2];o[a>>2]=e;o[t>>2]=o[r>>2];return}function fS(e){e=e|0;var t=0,n=0,r=0;t=o[e+4>>2]|0;n=e+8|0;r=o[n>>2]|0;if((r|0)!=(t|0))o[n>>2]=r+(~((r+-8-t|0)>>>3)<<3);e=o[e>>2]|0;if(e|0)KT(e);return}function dS(e){e=e|0;vS(e);return}function pS(e){e=e|0;hS(e+24|0);return}function hS(e){e=e|0;var t=0,n=0,r=0;n=o[e>>2]|0;r=n;if(n|0){e=e+4|0;t=o[e>>2]|0;if((t|0)!=(n|0))o[e>>2]=t+(~((t+-8-r|0)>>>3)<<3);KT(n)}return}function vS(e){e=e|0;var t=0;t=Za()|0;nl(e,1,11,t,mS()|0,2);o[e+24>>2]=0;o[e+28>>2]=0;o[e+32>>2]=0;return}function mS(){return 1840}function gS(e,t,n){e=e|0;t=t|0;n=n|0;_S(o[(yS(e)|0)>>2]|0,t,n);return}function yS(e){e=e|0;return(o[(rS()|0)+24>>2]|0)+(e<<3)|0}function _S(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,o=0;r=h;h=h+16|0;o=r+1|0;i=r;cc(o,t);t=fc(o,t)|0;cc(i,n);n=fc(i,n)|0;vA[e&31](t,n);h=r;return}function bS(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0,u=0;u=o[e>>2]|0;i=wS()|0;e=ES(n)|0;La(u,t,i,e,DS(n,r)|0,r);return}function wS(){var e=0,t=0;if(!(r[8048]|0)){OS(10896);Fe(66,10896,g|0)|0;t=8048;o[t>>2]=1;o[t+4>>2]=0}if(!(Xa(10896)|0)){e=10896;t=e+36|0;do{o[e>>2]=0;e=e+4|0}while((e|0)<(t|0));OS(10896)}return 10896}function ES(e){e=e|0;return e|0}function DS(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0,a=0,l=0,s=0;l=h;h=h+16|0;i=l;u=l+4|0;o[i>>2]=e;s=wS()|0;a=s+24|0;t=za(t,4)|0;o[u>>2]=t;n=s+28|0;r=o[n>>2]|0;if(r>>>0<(o[s+32>>2]|0)>>>0){SS(r,e,t);t=(o[n>>2]|0)+8|0;o[n>>2]=t}else{CS(a,i,u);t=o[n>>2]|0}h=l;return(t-(o[a>>2]|0)>>3)+-1|0}function SS(e,t,n){e=e|0;t=t|0;n=n|0;o[e>>2]=t;o[e+4>>2]=n;return}function CS(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0,l=0,s=0,c=0,f=0;l=h;h=h+32|0;i=l;u=e+4|0;a=((o[u>>2]|0)-(o[e>>2]|0)>>3)+1|0;r=kS(e)|0;if(r>>>0>>0)UT(e);else{s=o[e>>2]|0;f=(o[e+8>>2]|0)-s|0;c=f>>2;TS(i,f>>3>>>0>>1>>>0?c>>>0>>0?a:c:r,(o[u>>2]|0)-s>>3,e+8|0);a=i+8|0;SS(o[a>>2]|0,o[t>>2]|0,o[n>>2]|0);o[a>>2]=(o[a>>2]|0)+8;xS(e,i);AS(i);h=l;return}}function kS(e){e=e|0;return 536870911}function TS(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0;o[e+12>>2]=0;o[e+16>>2]=r;do{if(t){if(t>>>0>536870911)Ye();else{i=$T(t<<3)|0;break}}else i=0}while(0);o[e>>2]=i;r=i+(n<<3)|0;o[e+8>>2]=r;o[e+4>>2]=r;o[e+12>>2]=i+(t<<3);return}function xS(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0,a=0;r=o[e>>2]|0;a=e+4|0;u=t+4|0;i=(o[a>>2]|0)-r|0;n=(o[u>>2]|0)+(0-(i>>3)<<3)|0;o[u>>2]=n;if((i|0)>0){ix(n|0,r|0,i|0)|0;r=u;n=o[u>>2]|0}else r=u;u=o[e>>2]|0;o[e>>2]=n;o[r>>2]=u;u=t+8|0;i=o[a>>2]|0;o[a>>2]=o[u>>2];o[u>>2]=i;u=e+8|0;a=t+12|0;e=o[u>>2]|0;o[u>>2]=o[a>>2];o[a>>2]=e;o[t>>2]=o[r>>2];return}function AS(e){e=e|0;var t=0,n=0,r=0;t=o[e+4>>2]|0;n=e+8|0;r=o[n>>2]|0;if((r|0)!=(t|0))o[n>>2]=r+(~((r+-8-t|0)>>>3)<<3);e=o[e>>2]|0;if(e|0)KT(e);return}function OS(e){e=e|0;NS(e);return}function PS(e){e=e|0;IS(e+24|0);return}function IS(e){e=e|0;var t=0,n=0,r=0;n=o[e>>2]|0;r=n;if(n|0){e=e+4|0;t=o[e>>2]|0;if((t|0)!=(n|0))o[e>>2]=t+(~((t+-8-r|0)>>>3)<<3);KT(n)}return}function NS(e){e=e|0;var t=0;t=Za()|0;nl(e,1,11,t,MS()|0,1);o[e+24>>2]=0;o[e+28>>2]=0;o[e+32>>2]=0;return}function MS(){return 1852}function RS(e,t){e=e|0;t=t|0;return LS(o[(FS(e)|0)>>2]|0,t)|0}function FS(e){e=e|0;return(o[(wS()|0)+24>>2]|0)+(e<<3)|0}function LS(e,t){e=e|0;t=t|0;var n=0,r=0;n=h;h=h+16|0;r=n;cc(r,t);t=fc(r,t)|0;t=Jc(mA[e&31](t)|0)|0;h=n;return t|0}function BS(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0,u=0;u=o[e>>2]|0;i=jS()|0;e=US(n)|0;La(u,t,i,e,zS(n,r)|0,r);return}function jS(){var e=0,t=0;if(!(r[8056]|0)){YS(10932);Fe(67,10932,g|0)|0;t=8056;o[t>>2]=1;o[t+4>>2]=0}if(!(Xa(10932)|0)){e=10932;t=e+36|0;do{o[e>>2]=0;e=e+4|0}while((e|0)<(t|0));YS(10932)}return 10932}function US(e){e=e|0;return e|0}function zS(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0,a=0,l=0,s=0;l=h;h=h+16|0;i=l;u=l+4|0;o[i>>2]=e;s=jS()|0;a=s+24|0;t=za(t,4)|0;o[u>>2]=t;n=s+28|0;r=o[n>>2]|0;if(r>>>0<(o[s+32>>2]|0)>>>0){WS(r,e,t);t=(o[n>>2]|0)+8|0;o[n>>2]=t}else{HS(a,i,u);t=o[n>>2]|0}h=l;return(t-(o[a>>2]|0)>>3)+-1|0}function WS(e,t,n){e=e|0;t=t|0;n=n|0;o[e>>2]=t;o[e+4>>2]=n;return}function HS(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0,l=0,s=0,c=0,f=0;l=h;h=h+32|0;i=l;u=e+4|0;a=((o[u>>2]|0)-(o[e>>2]|0)>>3)+1|0;r=VS(e)|0;if(r>>>0>>0)UT(e);else{s=o[e>>2]|0;f=(o[e+8>>2]|0)-s|0;c=f>>2;qS(i,f>>3>>>0>>1>>>0?c>>>0>>0?a:c:r,(o[u>>2]|0)-s>>3,e+8|0);a=i+8|0;WS(o[a>>2]|0,o[t>>2]|0,o[n>>2]|0);o[a>>2]=(o[a>>2]|0)+8;GS(e,i);$S(i);h=l;return}}function VS(e){e=e|0;return 536870911}function qS(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0;o[e+12>>2]=0;o[e+16>>2]=r;do{if(t){if(t>>>0>536870911)Ye();else{i=$T(t<<3)|0;break}}else i=0}while(0);o[e>>2]=i;r=i+(n<<3)|0;o[e+8>>2]=r;o[e+4>>2]=r;o[e+12>>2]=i+(t<<3);return}function GS(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0,a=0;r=o[e>>2]|0;a=e+4|0;u=t+4|0;i=(o[a>>2]|0)-r|0;n=(o[u>>2]|0)+(0-(i>>3)<<3)|0;o[u>>2]=n;if((i|0)>0){ix(n|0,r|0,i|0)|0;r=u;n=o[u>>2]|0}else r=u;u=o[e>>2]|0;o[e>>2]=n;o[r>>2]=u;u=t+8|0;i=o[a>>2]|0;o[a>>2]=o[u>>2];o[u>>2]=i;u=e+8|0;a=t+12|0;e=o[u>>2]|0;o[u>>2]=o[a>>2];o[a>>2]=e;o[t>>2]=o[r>>2];return}function $S(e){e=e|0;var t=0,n=0,r=0;t=o[e+4>>2]|0;n=e+8|0;r=o[n>>2]|0;if((r|0)!=(t|0))o[n>>2]=r+(~((r+-8-t|0)>>>3)<<3);e=o[e>>2]|0;if(e|0)KT(e);return}function YS(e){e=e|0;QS(e);return}function KS(e){e=e|0;XS(e+24|0);return}function XS(e){e=e|0;var t=0,n=0,r=0;n=o[e>>2]|0;r=n;if(n|0){e=e+4|0;t=o[e>>2]|0;if((t|0)!=(n|0))o[e>>2]=t+(~((t+-8-r|0)>>>3)<<3);KT(n)}return}function QS(e){e=e|0;var t=0;t=Za()|0;nl(e,1,7,t,JS()|0,2);o[e+24>>2]=0;o[e+28>>2]=0;o[e+32>>2]=0;return}function JS(){return 1860}function ZS(e,t,n){e=e|0;t=t|0;n=n|0;return tC(o[(eC(e)|0)>>2]|0,t,n)|0}function eC(e){e=e|0;return(o[(jS()|0)+24>>2]|0)+(e<<3)|0}function tC(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0,l=0,s=0;r=h;h=h+32|0;a=r+12|0;u=r+8|0;l=r;s=r+16|0;i=r+4|0;nC(s,t);rC(l,s,t);Us(i,n);n=zs(i,n)|0;o[a>>2]=o[l>>2];PA[e&15](u,a,n);n=iC(u)|0;Zi(u);Ws(i);h=r;return n|0}function nC(e,t){e=e|0;t=t|0;return}function rC(e,t,n){e=e|0;t=t|0;n=n|0;oC(e,n);return}function iC(e){e=e|0;return Eu(e)|0}function oC(e,t){e=e|0;t=t|0;var n=0,r=0,i=0;i=h;h=h+16|0;n=i;r=t;if(!(r&1))o[e>>2]=o[t>>2];else{uC(n,0);Be(r|0,n|0)|0;aC(e,n);lC(n)}h=i;return}function uC(e,t){e=e|0;t=t|0;Iu(e,t);o[e+4>>2]=0;r[e+8>>0]=0;return}function aC(e,t){e=e|0;t=t|0;o[e>>2]=o[t+4>>2];return}function lC(e){e=e|0;r[e+8>>0]=0;return}function sC(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0,u=0;u=o[e>>2]|0;i=cC()|0;e=fC(n)|0;La(u,t,i,e,dC(n,r)|0,r);return}function cC(){var e=0,t=0;if(!(r[8064]|0)){_C(10968);Fe(68,10968,g|0)|0;t=8064;o[t>>2]=1;o[t+4>>2]=0}if(!(Xa(10968)|0)){e=10968;t=e+36|0;do{o[e>>2]=0;e=e+4|0}while((e|0)<(t|0));_C(10968)}return 10968}function fC(e){e=e|0;return e|0}function dC(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0,a=0,l=0,s=0;l=h;h=h+16|0;i=l;u=l+4|0;o[i>>2]=e;s=cC()|0;a=s+24|0;t=za(t,4)|0;o[u>>2]=t;n=s+28|0;r=o[n>>2]|0;if(r>>>0<(o[s+32>>2]|0)>>>0){pC(r,e,t);t=(o[n>>2]|0)+8|0;o[n>>2]=t}else{hC(a,i,u);t=o[n>>2]|0}h=l;return(t-(o[a>>2]|0)>>3)+-1|0}function pC(e,t,n){e=e|0;t=t|0;n=n|0;o[e>>2]=t;o[e+4>>2]=n;return}function hC(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0,l=0,s=0,c=0,f=0;l=h;h=h+32|0;i=l;u=e+4|0;a=((o[u>>2]|0)-(o[e>>2]|0)>>3)+1|0;r=vC(e)|0;if(r>>>0>>0)UT(e);else{s=o[e>>2]|0;f=(o[e+8>>2]|0)-s|0;c=f>>2;mC(i,f>>3>>>0>>1>>>0?c>>>0>>0?a:c:r,(o[u>>2]|0)-s>>3,e+8|0);a=i+8|0;pC(o[a>>2]|0,o[t>>2]|0,o[n>>2]|0);o[a>>2]=(o[a>>2]|0)+8;gC(e,i);yC(i);h=l;return}}function vC(e){e=e|0;return 536870911}function mC(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0;o[e+12>>2]=0;o[e+16>>2]=r;do{if(t){if(t>>>0>536870911)Ye();else{i=$T(t<<3)|0;break}}else i=0}while(0);o[e>>2]=i;r=i+(n<<3)|0;o[e+8>>2]=r;o[e+4>>2]=r;o[e+12>>2]=i+(t<<3);return}function gC(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0,a=0;r=o[e>>2]|0;a=e+4|0;u=t+4|0;i=(o[a>>2]|0)-r|0;n=(o[u>>2]|0)+(0-(i>>3)<<3)|0;o[u>>2]=n;if((i|0)>0){ix(n|0,r|0,i|0)|0;r=u;n=o[u>>2]|0}else r=u;u=o[e>>2]|0;o[e>>2]=n;o[r>>2]=u;u=t+8|0;i=o[a>>2]|0;o[a>>2]=o[u>>2];o[u>>2]=i;u=e+8|0;a=t+12|0;e=o[u>>2]|0;o[u>>2]=o[a>>2];o[a>>2]=e;o[t>>2]=o[r>>2];return}function yC(e){e=e|0;var t=0,n=0,r=0;t=o[e+4>>2]|0;n=e+8|0;r=o[n>>2]|0;if((r|0)!=(t|0))o[n>>2]=r+(~((r+-8-t|0)>>>3)<<3);e=o[e>>2]|0;if(e|0)KT(e);return}function _C(e){e=e|0;EC(e);return}function bC(e){e=e|0;wC(e+24|0);return}function wC(e){e=e|0;var t=0,n=0,r=0;n=o[e>>2]|0;r=n;if(n|0){e=e+4|0;t=o[e>>2]|0;if((t|0)!=(n|0))o[e>>2]=t+(~((t+-8-r|0)>>>3)<<3);KT(n)}return}function EC(e){e=e|0;var t=0;t=Za()|0;nl(e,1,1,t,DC()|0,5);o[e+24>>2]=0;o[e+28>>2]=0;o[e+32>>2]=0;return}function DC(){return 1872}function SC(e,t,n,r,i,u){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;u=u|0;kC(o[(CC(e)|0)>>2]|0,t,n,r,i,u);return}function CC(e){e=e|0;return(o[(cC()|0)+24>>2]|0)+(e<<3)|0}function kC(e,t,n,r,i,o){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;o=o|0;var u=0,a=0,l=0,s=0,c=0,f=0;u=h;h=h+32|0;a=u+16|0;l=u+12|0;s=u+8|0;c=u+4|0;f=u;Us(a,t);t=zs(a,t)|0;Us(l,n);n=zs(l,n)|0;Us(s,r);r=zs(s,r)|0;Us(c,i);i=zs(c,i)|0;Us(f,o);o=zs(f,o)|0;cA[e&1](t,n,r,i,o);Ws(f);Ws(c);Ws(s);Ws(l);Ws(a);h=u;return}function TC(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0,u=0;u=o[e>>2]|0;i=xC()|0;e=AC(n)|0;La(u,t,i,e,OC(n,r)|0,r);return}function xC(){var e=0,t=0;if(!(r[8072]|0)){LC(11004);Fe(69,11004,g|0)|0;t=8072;o[t>>2]=1;o[t+4>>2]=0}if(!(Xa(11004)|0)){e=11004;t=e+36|0;do{o[e>>2]=0;e=e+4|0}while((e|0)<(t|0));LC(11004)}return 11004}function AC(e){e=e|0;return e|0}function OC(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0,a=0,l=0,s=0;l=h;h=h+16|0;i=l;u=l+4|0;o[i>>2]=e;s=xC()|0;a=s+24|0;t=za(t,4)|0;o[u>>2]=t;n=s+28|0;r=o[n>>2]|0;if(r>>>0<(o[s+32>>2]|0)>>>0){PC(r,e,t);t=(o[n>>2]|0)+8|0;o[n>>2]=t}else{IC(a,i,u);t=o[n>>2]|0}h=l;return(t-(o[a>>2]|0)>>3)+-1|0}function PC(e,t,n){e=e|0;t=t|0;n=n|0;o[e>>2]=t;o[e+4>>2]=n;return}function IC(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0,l=0,s=0,c=0,f=0;l=h;h=h+32|0;i=l;u=e+4|0;a=((o[u>>2]|0)-(o[e>>2]|0)>>3)+1|0;r=NC(e)|0;if(r>>>0>>0)UT(e);else{s=o[e>>2]|0;f=(o[e+8>>2]|0)-s|0;c=f>>2;MC(i,f>>3>>>0>>1>>>0?c>>>0>>0?a:c:r,(o[u>>2]|0)-s>>3,e+8|0);a=i+8|0;PC(o[a>>2]|0,o[t>>2]|0,o[n>>2]|0);o[a>>2]=(o[a>>2]|0)+8;RC(e,i);FC(i);h=l;return}}function NC(e){e=e|0;return 536870911}function MC(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0;o[e+12>>2]=0;o[e+16>>2]=r;do{if(t){if(t>>>0>536870911)Ye();else{i=$T(t<<3)|0;break}}else i=0}while(0);o[e>>2]=i;r=i+(n<<3)|0;o[e+8>>2]=r;o[e+4>>2]=r;o[e+12>>2]=i+(t<<3);return}function RC(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0,a=0;r=o[e>>2]|0;a=e+4|0;u=t+4|0;i=(o[a>>2]|0)-r|0;n=(o[u>>2]|0)+(0-(i>>3)<<3)|0;o[u>>2]=n;if((i|0)>0){ix(n|0,r|0,i|0)|0;r=u;n=o[u>>2]|0}else r=u;u=o[e>>2]|0;o[e>>2]=n;o[r>>2]=u;u=t+8|0;i=o[a>>2]|0;o[a>>2]=o[u>>2];o[u>>2]=i;u=e+8|0;a=t+12|0;e=o[u>>2]|0;o[u>>2]=o[a>>2];o[a>>2]=e;o[t>>2]=o[r>>2];return}function FC(e){e=e|0;var t=0,n=0,r=0;t=o[e+4>>2]|0;n=e+8|0;r=o[n>>2]|0;if((r|0)!=(t|0))o[n>>2]=r+(~((r+-8-t|0)>>>3)<<3);e=o[e>>2]|0;if(e|0)KT(e);return}function LC(e){e=e|0;UC(e);return}function BC(e){e=e|0;jC(e+24|0);return}function jC(e){e=e|0;var t=0,n=0,r=0;n=o[e>>2]|0;r=n;if(n|0){e=e+4|0;t=o[e>>2]|0;if((t|0)!=(n|0))o[e>>2]=t+(~((t+-8-r|0)>>>3)<<3);KT(n)}return}function UC(e){e=e|0;var t=0;t=Za()|0;nl(e,1,12,t,zC()|0,2);o[e+24>>2]=0;o[e+28>>2]=0;o[e+32>>2]=0;return}function zC(){return 1896}function WC(e,t,n){e=e|0;t=t|0;n=n|0;VC(o[(HC(e)|0)>>2]|0,t,n);return}function HC(e){e=e|0;return(o[(xC()|0)+24>>2]|0)+(e<<3)|0}function VC(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,o=0;r=h;h=h+16|0;o=r+4|0;i=r;qC(o,t);t=GC(o,t)|0;Us(i,n);n=zs(i,n)|0;vA[e&31](t,n);Ws(i);h=r;return}function qC(e,t){e=e|0;t=t|0;return}function GC(e,t){e=e|0;t=t|0;return $C(t)|0}function $C(e){e=e|0;return e|0}function YC(){var e=0;if(!(r[8080]|0)){KC(11040);Fe(70,11040,g|0)|0;e=8080;o[e>>2]=1;o[e+4>>2]=0}if(!(Xa(11040)|0))KC(11040);return 11040}function KC(e){e=e|0;JC(e);s_(e,71);return}function XC(e){e=e|0;QC(e+24|0);return}function QC(e){e=e|0;var t=0,n=0,r=0;n=o[e>>2]|0;r=n;if(n|0){e=e+4|0;t=o[e>>2]|0;if((t|0)!=(n|0))o[e>>2]=t+(~((t+-8-r|0)>>>3)<<3);KT(n)}return}function JC(e){e=e|0;var t=0;t=Za()|0;nl(e,5,7,t,nk()|0,0);o[e+24>>2]=0;o[e+28>>2]=0;o[e+32>>2]=0;return}function ZC(e){e=e|0;ek(e);return}function ek(e){e=e|0;tk(e);return}function tk(e){e=e|0;r[e+8>>0]=1;return}function nk(){return 1936}function rk(){return ik()|0}function ik(){var e=0,t=0,n=0,r=0,i=0,u=0,a=0;t=h;h=h+16|0;i=t+4|0;a=t;n=UD(8)|0;e=n;u=e+4|0;o[u>>2]=$T(1)|0;r=$T(8)|0;u=o[u>>2]|0;o[a>>2]=0;o[i>>2]=o[a>>2];ok(r,u,i);o[n>>2]=r;h=t;return e|0}function ok(e,t,n){e=e|0;t=t|0;n=n|0;o[e>>2]=t;n=$T(16)|0;o[n+4>>2]=0;o[n+8>>2]=0;o[n>>2]=1916;o[n+12>>2]=t;o[e+4>>2]=n;return}function uk(e){e=e|0;zT(e);KT(e);return}function ak(e){e=e|0;e=o[e+12>>2]|0;if(e|0)KT(e);return}function lk(e){e=e|0;KT(e);return}function sk(){var e=0;if(!(r[8088]|0)){mk(11076);Fe(25,11076,g|0)|0;e=8088;o[e>>2]=1;o[e+4>>2]=0}return 11076}function ck(e,t){e=e|0;t=t|0;o[e>>2]=fk()|0;o[e+4>>2]=dk()|0;o[e+12>>2]=t;o[e+8>>2]=pk()|0;o[e+32>>2]=10;return}function fk(){return 11745}function dk(){return 1940}function pk(){return Wm()|0}function hk(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;if((Um(r,896)|0)==512){if(n|0){vk(n);KT(n)}}else if(t|0)KT(t);return}function vk(e){e=e|0;e=o[e+4>>2]|0;if(e|0)qT(e);return}function mk(e){e=e|0;Al(e);return}function gk(e,t){e=e|0;t=t|0;o[e>>2]=t;return}function yk(e){e=e|0;return o[e>>2]|0}function _k(e){e=e|0;return r[o[e>>2]>>0]|0}function bk(e,t){e=e|0;t=t|0;var n=0,r=0;n=h;h=h+16|0;r=n;o[r>>2]=o[e>>2];wk(t,r)|0;h=n;return}function wk(e,t){e=e|0;t=t|0;var n=0;n=Ek(o[e>>2]|0,t)|0;t=e+4|0;o[(o[t>>2]|0)+8>>2]=n;return o[(o[t>>2]|0)+8>>2]|0}function Ek(e,t){e=e|0;t=t|0;var n=0,r=0;n=h;h=h+16|0;r=n;Dk(r);e=Eu(e)|0;t=Sk(e,o[t>>2]|0)|0;Ck(r);h=n;return t|0}function Dk(e){e=e|0;o[e>>2]=o[2701];o[e+4>>2]=o[2703];return}function Sk(e,t){e=e|0;t=t|0;var n=0;n=Cu(kk()|0)|0;return it(0,n|0,e|0,Kw(t)|0)|0}function Ck(e){e=e|0;eS(o[e>>2]|0,o[e+4>>2]|0);return}function kk(){var e=0;if(!(r[8096]|0)){Tk(11120);e=8096;o[e>>2]=1;o[e+4>>2]=0}return 11120}function Tk(e){e=e|0;Lu(e,xk()|0,1);return}function xk(){return 1948}function Ak(){Ok();return}function Ok(){var e=0,t=0,n=0,i=0,a=0,l=0,s=0,c=0,f=0,d=0,p=0,v=0,m=0,g=0,y=0,_=0;y=h;h=h+16|0;p=y+4|0;v=y;Ne(65536,10804,o[2702]|0,10812);n=Cw()|0;t=o[n>>2]|0;e=o[t>>2]|0;if(e|0){i=o[n+8>>2]|0;n=o[n+4>>2]|0;while(1){ze(e|0,u[n>>0]|0|0,r[i>>0]|0);t=t+4|0;e=o[t>>2]|0;if(!e)break;else{i=i+1|0;n=n+1|0}}}e=Tw()|0;t=o[e>>2]|0;if(t|0)do{We(t|0,o[e+4>>2]|0);e=e+8|0;t=o[e>>2]|0}while((t|0)!=0);We(Pk()|0,5167);d=fw()|0;e=o[d>>2]|0;e:do{if(e|0){do{Ik(o[e+4>>2]|0);e=o[e>>2]|0}while((e|0)!=0);e=o[d>>2]|0;if(e|0){f=d;do{while(1){a=e;e=o[e>>2]|0;a=o[a+4>>2]|0;if(!(Nk(a)|0))break;o[v>>2]=f;o[p>>2]=o[v>>2];Mk(d,p)|0;if(!e)break e}Rk(a);f=o[f>>2]|0;t=Fk(a)|0;l=Xe()|0;s=h;h=h+((1*(t<<2)|0)+15&-16)|0;c=h;h=h+((1*(t<<2)|0)+15&-16)|0;t=o[(xE(a)|0)>>2]|0;if(t|0){n=s;i=c;while(1){o[n>>2]=o[(kE(o[t+4>>2]|0)|0)>>2];o[i>>2]=o[t+8>>2];t=o[t>>2]|0;if(!t)break;else{n=n+4|0;i=i+4|0}}}_=kE(a)|0;t=Lk(a)|0;n=Fk(a)|0;i=Bk(a)|0;Ge(_|0,t|0,s|0,c|0,n|0,i|0,Ew(a)|0);Re(l|0)}while((e|0)!=0)}}}while(0);e=o[(Sw()|0)>>2]|0;if(e|0)do{_=e+4|0;d=Pw(_)|0;a=Fw(d)|0;l=Iw(d)|0;s=(Nw(d)|0)+1|0;c=jk(d)|0;f=Uk(_)|0;d=Xa(d)|0;p=Bw(_)|0;v=zk(_)|0;Ve(0,a|0,l|0,s|0,c|0,f|0,d|0,p|0,v|0,Wk(_)|0);e=o[e>>2]|0}while((e|0)!=0);e=o[(fw()|0)>>2]|0;e:do{if(e|0){t:while(1){t=o[e+4>>2]|0;if(t|0?(m=o[(kE(t)|0)>>2]|0,g=o[(PE(t)|0)>>2]|0,g|0):0){n=g;do{t=n+4|0;i=Pw(t)|0;n:do{if(i|0)switch(Xa(i)|0){case 0:break t;case 4:case 3:case 2:{c=Fw(i)|0;f=Iw(i)|0;d=(Nw(i)|0)+1|0;p=jk(i)|0;v=Xa(i)|0;_=Bw(t)|0;Ve(m|0,c|0,f|0,d|0,p|0,0,v|0,_|0,zk(t)|0,Wk(t)|0);break n}case 1:{s=Fw(i)|0;c=Iw(i)|0;f=(Nw(i)|0)+1|0;d=jk(i)|0;p=Uk(t)|0;v=Xa(i)|0;_=Bw(t)|0;Ve(m|0,s|0,c|0,f|0,d|0,p|0,v|0,_|0,zk(t)|0,Wk(t)|0);break n}case 5:{d=Fw(i)|0;p=Iw(i)|0;v=(Nw(i)|0)+1|0;_=jk(i)|0;Ve(m|0,d|0,p|0,v|0,_|0,Hk(i)|0,Xa(i)|0,0,0,0);break n}default:break n}}while(0);n=o[n>>2]|0}while((n|0)!=0)}e=o[e>>2]|0;if(!e)break e}Ye()}}while(0);$e();h=y;return}function Pk(){return 11703}function Ik(e){e=e|0;r[e+40>>0]=0;return}function Nk(e){e=e|0;return(r[e+40>>0]|0)!=0|0}function Mk(e,t){e=e|0;t=t|0;t=Vk(t)|0;e=o[t>>2]|0;o[t>>2]=o[e>>2];KT(e);return o[t>>2]|0}function Rk(e){e=e|0;r[e+40>>0]=1;return}function Fk(e){e=e|0;return o[e+20>>2]|0}function Lk(e){e=e|0;return o[e+8>>2]|0}function Bk(e){e=e|0;return o[e+32>>2]|0}function jk(e){e=e|0;return o[e+4>>2]|0}function Uk(e){e=e|0;return o[e+4>>2]|0}function zk(e){e=e|0;return o[e+8>>2]|0}function Wk(e){e=e|0;return o[e+16>>2]|0}function Hk(e){e=e|0;return o[e+20>>2]|0}function Vk(e){e=e|0;return o[e>>2]|0}function qk(e){e=e|0;var t=0,n=0,r=0,i=0,u=0,a=0,l=0,s=0,c=0,f=0,d=0,p=0,v=0,m=0,g=0,y=0,_=0,b=0,w=0,E=0,D=0;D=h;h=h+16|0;p=D;do{if(e>>>0<245){c=e>>>0<11?16:e+11&-8;e=c>>>3;d=o[2783]|0;n=d>>>e;if(n&3|0){t=(n&1^1)+e|0;e=11172+(t<<1<<2)|0;n=e+8|0;r=o[n>>2]|0;i=r+8|0;u=o[i>>2]|0;if((e|0)==(u|0))o[2783]=d&~(1<>2]=e;o[n>>2]=u}E=t<<3;o[r+4>>2]=E|3;E=r+E+4|0;o[E>>2]=o[E>>2]|1;E=i;h=D;return E|0}f=o[2785]|0;if(c>>>0>f>>>0){if(n|0){t=2<>>12&16;t=t>>>a;n=t>>>5&8;t=t>>>n;i=t>>>2&4;t=t>>>i;e=t>>>1&2;t=t>>>e;r=t>>>1&1;r=(n|a|i|e|r)+(t>>>r)|0;t=11172+(r<<1<<2)|0;e=t+8|0;i=o[e>>2]|0;a=i+8|0;n=o[a>>2]|0;if((t|0)==(n|0)){e=d&~(1<>2]=t;o[e>>2]=n;e=d}u=(r<<3)-c|0;o[i+4>>2]=c|3;r=i+c|0;o[r+4>>2]=u|1;o[r+u>>2]=u;if(f|0){i=o[2788]|0;t=f>>>3;n=11172+(t<<1<<2)|0;t=1<>2]|0}o[e>>2]=i;o[t+12>>2]=i;o[i+8>>2]=t;o[i+12>>2]=n}o[2785]=u;o[2788]=r;E=a;h=D;return E|0}l=o[2784]|0;if(l){n=(l&0-l)+-1|0;a=n>>>12&16;n=n>>>a;u=n>>>5&8;n=n>>>u;s=n>>>2&4;n=n>>>s;r=n>>>1&2;n=n>>>r;e=n>>>1&1;e=o[11436+((u|a|s|r|e)+(n>>>e)<<2)>>2]|0;n=(o[e+4>>2]&-8)-c|0;r=o[e+16+(((o[e+16>>2]|0)==0&1)<<2)>>2]|0;if(!r){s=e;u=n}else{do{a=(o[r+4>>2]&-8)-c|0;s=a>>>0>>0;n=s?a:n;e=s?r:e;r=o[r+16+(((o[r+16>>2]|0)==0&1)<<2)>>2]|0}while((r|0)!=0);s=e;u=n}a=s+c|0;if(s>>>0>>0){i=o[s+24>>2]|0;t=o[s+12>>2]|0;do{if((t|0)==(s|0)){e=s+20|0;t=o[e>>2]|0;if(!t){e=s+16|0;t=o[e>>2]|0;if(!t){n=0;break}}while(1){n=t+20|0;r=o[n>>2]|0;if(r|0){t=r;e=n;continue}n=t+16|0;r=o[n>>2]|0;if(!r)break;else{t=r;e=n}}o[e>>2]=0;n=t}else{n=o[s+8>>2]|0;o[n+12>>2]=t;o[t+8>>2]=n;n=t}}while(0);do{if(i|0){t=o[s+28>>2]|0;e=11436+(t<<2)|0;if((s|0)==(o[e>>2]|0)){o[e>>2]=n;if(!n){o[2784]=l&~(1<>2]|0)!=(s|0)&1)<<2)>>2]=n;if(!n)break}o[n+24>>2]=i;t=o[s+16>>2]|0;if(t|0){o[n+16>>2]=t;o[t+24>>2]=n}t=o[s+20>>2]|0;if(t|0){o[n+20>>2]=t;o[t+24>>2]=n}}}while(0);if(u>>>0<16){E=u+c|0;o[s+4>>2]=E|3;E=s+E+4|0;o[E>>2]=o[E>>2]|1}else{o[s+4>>2]=c|3;o[a+4>>2]=u|1;o[a+u>>2]=u;if(f|0){r=o[2788]|0;t=f>>>3;n=11172+(t<<1<<2)|0;t=1<>2]|0}o[e>>2]=r;o[t+12>>2]=r;o[r+8>>2]=t;o[r+12>>2]=n}o[2785]=u;o[2788]=a}E=s+8|0;h=D;return E|0}else d=c}else d=c}else d=c}else if(e>>>0<=4294967231){e=e+11|0;c=e&-8;s=o[2784]|0;if(s){r=0-c|0;e=e>>>8;if(e){if(c>>>0>16777215)l=31;else{d=(e+1048320|0)>>>16&8;w=e<>>16&4;w=w<>>16&2;l=14-(f|d|l)+(w<>>15)|0;l=c>>>(l+7|0)&1|l<<1}}else l=0;n=o[11436+(l<<2)>>2]|0;e:do{if(!n){n=0;e=0;w=57}else{e=0;a=c<<((l|0)==31?0:25-(l>>>1)|0);u=0;while(1){i=(o[n+4>>2]&-8)-c|0;if(i>>>0>>0)if(!i){e=n;r=0;i=n;w=61;break e}else{e=n;r=i}i=o[n+20>>2]|0;n=o[n+16+(a>>>31<<2)>>2]|0;u=(i|0)==0|(i|0)==(n|0)?u:i;i=(n|0)==0;if(i){n=u;w=57;break}else a=a<<((i^1)&1)}}}while(0);if((w|0)==57){if((n|0)==0&(e|0)==0){e=2<>>12&16;d=d>>>a;u=d>>>5&8;d=d>>>u;l=d>>>2&4;d=d>>>l;f=d>>>1&2;d=d>>>f;n=d>>>1&1;e=0;n=o[11436+((u|a|l|f|n)+(d>>>n)<<2)>>2]|0}if(!n){l=e;a=r}else{i=n;w=61}}if((w|0)==61)while(1){w=0;n=(o[i+4>>2]&-8)-c|0;d=n>>>0>>0;n=d?n:r;e=d?i:e;i=o[i+16+(((o[i+16>>2]|0)==0&1)<<2)>>2]|0;if(!i){l=e;a=n;break}else{r=n;w=61}}if((l|0)!=0?a>>>0<((o[2785]|0)-c|0)>>>0:0){u=l+c|0;if(l>>>0>=u>>>0){E=0;h=D;return E|0}i=o[l+24>>2]|0;t=o[l+12>>2]|0;do{if((t|0)==(l|0)){e=l+20|0;t=o[e>>2]|0;if(!t){e=l+16|0;t=o[e>>2]|0;if(!t){t=0;break}}while(1){n=t+20|0;r=o[n>>2]|0;if(r|0){t=r;e=n;continue}n=t+16|0;r=o[n>>2]|0;if(!r)break;else{t=r;e=n}}o[e>>2]=0}else{E=o[l+8>>2]|0;o[E+12>>2]=t;o[t+8>>2]=E}}while(0);do{if(i){e=o[l+28>>2]|0;n=11436+(e<<2)|0;if((l|0)==(o[n>>2]|0)){o[n>>2]=t;if(!t){r=s&~(1<>2]|0)!=(l|0)&1)<<2)>>2]=t;if(!t){r=s;break}}o[t+24>>2]=i;e=o[l+16>>2]|0;if(e|0){o[t+16>>2]=e;o[e+24>>2]=t}e=o[l+20>>2]|0;if(e){o[t+20>>2]=e;o[e+24>>2]=t;r=s}else r=s}else r=s}while(0);do{if(a>>>0>=16){o[l+4>>2]=c|3;o[u+4>>2]=a|1;o[u+a>>2]=a;t=a>>>3;if(a>>>0<256){n=11172+(t<<1<<2)|0;e=o[2783]|0;t=1<>2]|0}o[e>>2]=u;o[t+12>>2]=u;o[u+8>>2]=t;o[u+12>>2]=n;break}t=a>>>8;if(t){if(a>>>0>16777215)t=31;else{w=(t+1048320|0)>>>16&8;E=t<>>16&4;E=E<>>16&2;t=14-(b|w|t)+(E<>>15)|0;t=a>>>(t+7|0)&1|t<<1}}else t=0;n=11436+(t<<2)|0;o[u+28>>2]=t;e=u+16|0;o[e+4>>2]=0;o[e>>2]=0;e=1<>2]=u;o[u+24>>2]=n;o[u+12>>2]=u;o[u+8>>2]=u;break}e=a<<((t|0)==31?0:25-(t>>>1)|0);n=o[n>>2]|0;while(1){if((o[n+4>>2]&-8|0)==(a|0)){w=97;break}r=n+16+(e>>>31<<2)|0;t=o[r>>2]|0;if(!t){w=96;break}else{e=e<<1;n=t}}if((w|0)==96){o[r>>2]=u;o[u+24>>2]=n;o[u+12>>2]=u;o[u+8>>2]=u;break}else if((w|0)==97){w=n+8|0;E=o[w>>2]|0;o[E+12>>2]=u;o[w>>2]=u;o[u+8>>2]=E;o[u+12>>2]=n;o[u+24>>2]=0;break}}else{E=a+c|0;o[l+4>>2]=E|3;E=l+E+4|0;o[E>>2]=o[E>>2]|1}}while(0);E=l+8|0;h=D;return E|0}else d=c}else d=c}else d=-1}while(0);n=o[2785]|0;if(n>>>0>=d>>>0){t=n-d|0;e=o[2788]|0;if(t>>>0>15){E=e+d|0;o[2788]=E;o[2785]=t;o[E+4>>2]=t|1;o[E+t>>2]=t;o[e+4>>2]=d|3}else{o[2785]=0;o[2788]=0;o[e+4>>2]=n|3;E=e+n+4|0;o[E>>2]=o[E>>2]|1}E=e+8|0;h=D;return E|0}a=o[2786]|0;if(a>>>0>d>>>0){b=a-d|0;o[2786]=b;E=o[2789]|0;w=E+d|0;o[2789]=w;o[w+4>>2]=b|1;o[E+4>>2]=d|3;E=E+8|0;h=D;return E|0}if(!(o[2901]|0)){o[2903]=4096;o[2902]=4096;o[2904]=-1;o[2905]=-1;o[2906]=0;o[2894]=0;e=p&-16^1431655768;o[p>>2]=e;o[2901]=e;e=4096}else e=o[2903]|0;l=d+48|0;s=d+47|0;u=e+s|0;i=0-e|0;c=u&i;if(c>>>0<=d>>>0){E=0;h=D;return E|0}e=o[2893]|0;if(e|0?(f=o[2891]|0,p=f+c|0,p>>>0<=f>>>0|p>>>0>e>>>0):0){E=0;h=D;return E|0}e:do{if(!(o[2894]&4)){n=o[2789]|0;t:do{if(n){r=11580;while(1){e=o[r>>2]|0;if(e>>>0<=n>>>0?(g=r+4|0,(e+(o[g>>2]|0)|0)>>>0>n>>>0):0)break;e=o[r+8>>2]|0;if(!e){w=118;break t}else r=e}t=u-a&i;if(t>>>0<2147483647){e=lx(t|0)|0;if((e|0)==((o[r>>2]|0)+(o[g>>2]|0)|0)){if((e|0)!=(-1|0)){a=t;u=e;w=135;break e}}else{r=e;w=126}}else t=0}else w=118}while(0);do{if((w|0)==118){n=lx(0)|0;if((n|0)!=(-1|0)?(t=n,v=o[2902]|0,m=v+-1|0,t=((m&t|0)==0?0:(m+t&0-v)-t|0)+c|0,v=o[2891]|0,m=t+v|0,t>>>0>d>>>0&t>>>0<2147483647):0){g=o[2893]|0;if(g|0?m>>>0<=v>>>0|m>>>0>g>>>0:0){t=0;break}e=lx(t|0)|0;if((e|0)==(n|0)){a=t;u=n;w=135;break e}else{r=e;w=126}}else t=0}}while(0);do{if((w|0)==126){n=0-t|0;if(!(l>>>0>t>>>0&(t>>>0<2147483647&(r|0)!=(-1|0))))if((r|0)==(-1|0)){t=0;break}else{a=t;u=r;w=135;break e}e=o[2903]|0;e=s-t+e&0-e;if(e>>>0>=2147483647){a=t;u=r;w=135;break e}if((lx(e|0)|0)==(-1|0)){lx(n|0)|0;t=0;break}else{a=e+t|0;u=r;w=135;break e}}}while(0);o[2894]=o[2894]|4;w=133}else{t=0;w=133}}while(0);if(((w|0)==133?c>>>0<2147483647:0)?(b=lx(c|0)|0,g=lx(0)|0,y=g-b|0,_=y>>>0>(d+40|0)>>>0,!((b|0)==(-1|0)|_^1|b>>>0>>0&((b|0)!=(-1|0)&(g|0)!=(-1|0))^1)):0){a=_?y:t;u=b;w=135}if((w|0)==135){t=(o[2891]|0)+a|0;o[2891]=t;if(t>>>0>(o[2892]|0)>>>0)o[2892]=t;s=o[2789]|0;do{if(s){t=11580;while(1){e=o[t>>2]|0;n=t+4|0;r=o[n>>2]|0;if((u|0)==(e+r|0)){w=145;break}i=o[t+8>>2]|0;if(!i)break;else t=i}if(((w|0)==145?(o[t+12>>2]&8|0)==0:0)?s>>>0>>0&s>>>0>=e>>>0:0){o[n>>2]=r+a;E=s+8|0;E=(E&7|0)==0?0:0-E&7;w=s+E|0;E=(o[2786]|0)+(a-E)|0;o[2789]=w;o[2786]=E;o[w+4>>2]=E|1;o[w+E+4>>2]=40;o[2790]=o[2905];break}if(u>>>0<(o[2787]|0)>>>0)o[2787]=u;n=u+a|0;t=11580;while(1){if((o[t>>2]|0)==(n|0)){w=153;break}e=o[t+8>>2]|0;if(!e)break;else t=e}if((w|0)==153?(o[t+12>>2]&8|0)==0:0){o[t>>2]=u;f=t+4|0;o[f>>2]=(o[f>>2]|0)+a;f=u+8|0;f=u+((f&7|0)==0?0:0-f&7)|0;t=n+8|0;t=n+((t&7|0)==0?0:0-t&7)|0;c=f+d|0;l=t-f-d|0;o[f+4>>2]=d|3;do{if((t|0)!=(s|0)){if((t|0)==(o[2788]|0)){E=(o[2785]|0)+l|0;o[2785]=E;o[2788]=c;o[c+4>>2]=E|1;o[c+E>>2]=E;break}e=o[t+4>>2]|0;if((e&3|0)==1){a=e&-8;r=e>>>3;e:do{if(e>>>0<256){e=o[t+8>>2]|0;n=o[t+12>>2]|0;if((n|0)==(e|0)){o[2783]=o[2783]&~(1<>2]=n;o[n+8>>2]=e;break}}else{u=o[t+24>>2]|0;e=o[t+12>>2]|0;do{if((e|0)==(t|0)){r=t+16|0;n=r+4|0;e=o[n>>2]|0;if(!e){e=o[r>>2]|0;if(!e){e=0;break}else n=r}while(1){r=e+20|0;i=o[r>>2]|0;if(i|0){e=i;n=r;continue}r=e+16|0;i=o[r>>2]|0;if(!i)break;else{e=i;n=r}}o[n>>2]=0}else{E=o[t+8>>2]|0;o[E+12>>2]=e;o[e+8>>2]=E}}while(0);if(!u)break;n=o[t+28>>2]|0;r=11436+(n<<2)|0;do{if((t|0)!=(o[r>>2]|0)){o[u+16+(((o[u+16>>2]|0)!=(t|0)&1)<<2)>>2]=e;if(!e)break e}else{o[r>>2]=e;if(e|0)break;o[2784]=o[2784]&~(1<>2]=u;n=t+16|0;r=o[n>>2]|0;if(r|0){o[e+16>>2]=r;o[r+24>>2]=e}n=o[n+4>>2]|0;if(!n)break;o[e+20>>2]=n;o[n+24>>2]=e}}while(0);t=t+a|0;i=a+l|0}else i=l;t=t+4|0;o[t>>2]=o[t>>2]&-2;o[c+4>>2]=i|1;o[c+i>>2]=i;t=i>>>3;if(i>>>0<256){n=11172+(t<<1<<2)|0;e=o[2783]|0;t=1<>2]|0}o[e>>2]=c;o[t+12>>2]=c;o[c+8>>2]=t;o[c+12>>2]=n;break}t=i>>>8;do{if(!t)t=0;else{if(i>>>0>16777215){t=31;break}w=(t+1048320|0)>>>16&8;E=t<>>16&4;E=E<>>16&2;t=14-(b|w|t)+(E<>>15)|0;t=i>>>(t+7|0)&1|t<<1}}while(0);r=11436+(t<<2)|0;o[c+28>>2]=t;e=c+16|0;o[e+4>>2]=0;o[e>>2]=0;e=o[2784]|0;n=1<>2]=c;o[c+24>>2]=r;o[c+12>>2]=c;o[c+8>>2]=c;break}e=i<<((t|0)==31?0:25-(t>>>1)|0);n=o[r>>2]|0;while(1){if((o[n+4>>2]&-8|0)==(i|0)){w=194;break}r=n+16+(e>>>31<<2)|0;t=o[r>>2]|0;if(!t){w=193;break}else{e=e<<1;n=t}}if((w|0)==193){o[r>>2]=c;o[c+24>>2]=n;o[c+12>>2]=c;o[c+8>>2]=c;break}else if((w|0)==194){w=n+8|0;E=o[w>>2]|0;o[E+12>>2]=c;o[w>>2]=c;o[c+8>>2]=E;o[c+12>>2]=n;o[c+24>>2]=0;break}}else{E=(o[2786]|0)+l|0;o[2786]=E;o[2789]=c;o[c+4>>2]=E|1}}while(0);E=f+8|0;h=D;return E|0}t=11580;while(1){e=o[t>>2]|0;if(e>>>0<=s>>>0?(E=e+(o[t+4>>2]|0)|0,E>>>0>s>>>0):0)break;t=o[t+8>>2]|0}i=E+-47|0;e=i+8|0;e=i+((e&7|0)==0?0:0-e&7)|0;i=s+16|0;e=e>>>0>>0?s:e;t=e+8|0;n=u+8|0;n=(n&7|0)==0?0:0-n&7;w=u+n|0;n=a+-40-n|0;o[2789]=w;o[2786]=n;o[w+4>>2]=n|1;o[w+n+4>>2]=40;o[2790]=o[2905];n=e+4|0;o[n>>2]=27;o[t>>2]=o[2895];o[t+4>>2]=o[2896];o[t+8>>2]=o[2897];o[t+12>>2]=o[2898];o[2895]=u;o[2896]=a;o[2898]=0;o[2897]=t;t=e+24|0;do{w=t;t=t+4|0;o[t>>2]=7}while((w+8|0)>>>0>>0);if((e|0)!=(s|0)){u=e-s|0;o[n>>2]=o[n>>2]&-2;o[s+4>>2]=u|1;o[e>>2]=u;t=u>>>3;if(u>>>0<256){n=11172+(t<<1<<2)|0;e=o[2783]|0;t=1<>2]|0}o[e>>2]=s;o[t+12>>2]=s;o[s+8>>2]=t;o[s+12>>2]=n;break}t=u>>>8;if(t){if(u>>>0>16777215)n=31;else{w=(t+1048320|0)>>>16&8;E=t<>>16&4;E=E<>>16&2;n=14-(b|w|n)+(E<>>15)|0;n=u>>>(n+7|0)&1|n<<1}}else n=0;r=11436+(n<<2)|0;o[s+28>>2]=n;o[s+20>>2]=0;o[i>>2]=0;t=o[2784]|0;e=1<>2]=s;o[s+24>>2]=r;o[s+12>>2]=s;o[s+8>>2]=s;break}e=u<<((n|0)==31?0:25-(n>>>1)|0);n=o[r>>2]|0;while(1){if((o[n+4>>2]&-8|0)==(u|0)){w=216;break}r=n+16+(e>>>31<<2)|0;t=o[r>>2]|0;if(!t){w=215;break}else{e=e<<1;n=t}}if((w|0)==215){o[r>>2]=s;o[s+24>>2]=n;o[s+12>>2]=s;o[s+8>>2]=s;break}else if((w|0)==216){w=n+8|0;E=o[w>>2]|0;o[E+12>>2]=s;o[w>>2]=s;o[s+8>>2]=E;o[s+12>>2]=n;o[s+24>>2]=0;break}}}else{E=o[2787]|0;if((E|0)==0|u>>>0>>0)o[2787]=u;o[2895]=u;o[2896]=a;o[2898]=0;o[2792]=o[2901];o[2791]=-1;t=0;do{E=11172+(t<<1<<2)|0;o[E+12>>2]=E;o[E+8>>2]=E;t=t+1|0}while((t|0)!=32);E=u+8|0;E=(E&7|0)==0?0:0-E&7;w=u+E|0;E=a+-40-E|0;o[2789]=w;o[2786]=E;o[w+4>>2]=E|1;o[w+E+4>>2]=40;o[2790]=o[2905]}}while(0);t=o[2786]|0;if(t>>>0>d>>>0){b=t-d|0;o[2786]=b;E=o[2789]|0;w=E+d|0;o[2789]=w;o[w+4>>2]=b|1;o[E+4>>2]=d|3;E=E+8|0;h=D;return E|0}}o[(Jk()|0)>>2]=12;E=0;h=D;return E|0}function Gk(e){e=e|0;var t=0,n=0,r=0,i=0,u=0,a=0,l=0,s=0;if(!e)return;n=e+-8|0;i=o[2787]|0;e=o[e+-4>>2]|0;t=e&-8;s=n+t|0;do{if(!(e&1)){r=o[n>>2]|0;if(!(e&3))return;a=n+(0-r)|0;u=r+t|0;if(a>>>0>>0)return;if((a|0)==(o[2788]|0)){e=s+4|0;t=o[e>>2]|0;if((t&3|0)!=3){l=a;t=u;break}o[2785]=u;o[e>>2]=t&-2;o[a+4>>2]=u|1;o[a+u>>2]=u;return}n=r>>>3;if(r>>>0<256){e=o[a+8>>2]|0;t=o[a+12>>2]|0;if((t|0)==(e|0)){o[2783]=o[2783]&~(1<>2]=t;o[t+8>>2]=e;l=a;t=u;break}}i=o[a+24>>2]|0;e=o[a+12>>2]|0;do{if((e|0)==(a|0)){n=a+16|0;t=n+4|0;e=o[t>>2]|0;if(!e){e=o[n>>2]|0;if(!e){e=0;break}else t=n}while(1){n=e+20|0;r=o[n>>2]|0;if(r|0){e=r;t=n;continue}n=e+16|0;r=o[n>>2]|0;if(!r)break;else{e=r;t=n}}o[t>>2]=0}else{l=o[a+8>>2]|0;o[l+12>>2]=e;o[e+8>>2]=l}}while(0);if(i){t=o[a+28>>2]|0;n=11436+(t<<2)|0;if((a|0)==(o[n>>2]|0)){o[n>>2]=e;if(!e){o[2784]=o[2784]&~(1<>2]|0)!=(a|0)&1)<<2)>>2]=e;if(!e){l=a;t=u;break}}o[e+24>>2]=i;t=a+16|0;n=o[t>>2]|0;if(n|0){o[e+16>>2]=n;o[n+24>>2]=e}t=o[t+4>>2]|0;if(t){o[e+20>>2]=t;o[t+24>>2]=e;l=a;t=u}else{l=a;t=u}}else{l=a;t=u}}else{l=n;a=n}}while(0);if(a>>>0>=s>>>0)return;e=s+4|0;r=o[e>>2]|0;if(!(r&1))return;if(!(r&2)){e=o[2788]|0;if((s|0)==(o[2789]|0)){s=(o[2786]|0)+t|0;o[2786]=s;o[2789]=l;o[l+4>>2]=s|1;if((l|0)!=(e|0))return;o[2788]=0;o[2785]=0;return}if((s|0)==(e|0)){s=(o[2785]|0)+t|0;o[2785]=s;o[2788]=a;o[l+4>>2]=s|1;o[a+s>>2]=s;return}i=(r&-8)+t|0;n=r>>>3;do{if(r>>>0<256){t=o[s+8>>2]|0;e=o[s+12>>2]|0;if((e|0)==(t|0)){o[2783]=o[2783]&~(1<>2]=e;o[e+8>>2]=t;break}}else{u=o[s+24>>2]|0;e=o[s+12>>2]|0;do{if((e|0)==(s|0)){n=s+16|0;t=n+4|0;e=o[t>>2]|0;if(!e){e=o[n>>2]|0;if(!e){n=0;break}else t=n}while(1){n=e+20|0;r=o[n>>2]|0;if(r|0){e=r;t=n;continue}n=e+16|0;r=o[n>>2]|0;if(!r)break;else{e=r;t=n}}o[t>>2]=0;n=e}else{n=o[s+8>>2]|0;o[n+12>>2]=e;o[e+8>>2]=n;n=e}}while(0);if(u|0){e=o[s+28>>2]|0;t=11436+(e<<2)|0;if((s|0)==(o[t>>2]|0)){o[t>>2]=n;if(!n){o[2784]=o[2784]&~(1<>2]|0)!=(s|0)&1)<<2)>>2]=n;if(!n)break}o[n+24>>2]=u;e=s+16|0;t=o[e>>2]|0;if(t|0){o[n+16>>2]=t;o[t+24>>2]=n}e=o[e+4>>2]|0;if(e|0){o[n+20>>2]=e;o[e+24>>2]=n}}}}while(0);o[l+4>>2]=i|1;o[a+i>>2]=i;if((l|0)==(o[2788]|0)){o[2785]=i;return}}else{o[e>>2]=r&-2;o[l+4>>2]=t|1;o[a+t>>2]=t;i=t}e=i>>>3;if(i>>>0<256){n=11172+(e<<1<<2)|0;t=o[2783]|0;e=1<>2]|0}o[t>>2]=l;o[e+12>>2]=l;o[l+8>>2]=e;o[l+12>>2]=n;return}e=i>>>8;if(e){if(i>>>0>16777215)e=31;else{a=(e+1048320|0)>>>16&8;s=e<>>16&4;s=s<>>16&2;e=14-(u|a|e)+(s<>>15)|0;e=i>>>(e+7|0)&1|e<<1}}else e=0;r=11436+(e<<2)|0;o[l+28>>2]=e;o[l+20>>2]=0;o[l+16>>2]=0;t=o[2784]|0;n=1<>>1)|0);n=o[r>>2]|0;while(1){if((o[n+4>>2]&-8|0)==(i|0)){e=73;break}r=n+16+(t>>>31<<2)|0;e=o[r>>2]|0;if(!e){e=72;break}else{t=t<<1;n=e}}if((e|0)==72){o[r>>2]=l;o[l+24>>2]=n;o[l+12>>2]=l;o[l+8>>2]=l;break}else if((e|0)==73){a=n+8|0;s=o[a>>2]|0;o[s+12>>2]=l;o[a>>2]=l;o[l+8>>2]=s;o[l+12>>2]=n;o[l+24>>2]=0;break}}else{o[2784]=t|n;o[r>>2]=l;o[l+24>>2]=r;o[l+12>>2]=l;o[l+8>>2]=l}}while(0);s=(o[2791]|0)+-1|0;o[2791]=s;if(!s)e=11588;else return;while(1){e=o[e>>2]|0;if(!e)break;else e=e+8|0}o[2791]=-1;return}function $k(){return 11628}function Yk(e){e=e|0;var t=0,n=0;t=h;h=h+16|0;n=t;o[n>>2]=tT(o[e+60>>2]|0)|0;e=Qk(ut(6,n|0)|0)|0;h=t;return e|0}function Kk(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0,l=0,s=0,c=0,f=0,d=0,p=0,v=0;d=h;h=h+48|0;c=d+16|0;u=d;i=d+32|0;l=e+28|0;r=o[l>>2]|0;o[i>>2]=r;s=e+20|0;r=(o[s>>2]|0)-r|0;o[i+4>>2]=r;o[i+8>>2]=t;o[i+12>>2]=n;r=r+n|0;a=e+60|0;o[u>>2]=o[a>>2];o[u+4>>2]=i;o[u+8>>2]=2;u=Qk(st(146,u|0)|0)|0;e:do{if((r|0)!=(u|0)){t=2;while(1){if((u|0)<0)break;r=r-u|0;v=o[i+4>>2]|0;p=u>>>0>v>>>0;i=p?i+8|0:i;t=(p<<31>>31)+t|0;v=u-(p?v:0)|0;o[i>>2]=(o[i>>2]|0)+v;p=i+4|0;o[p>>2]=(o[p>>2]|0)-v;o[c>>2]=o[a>>2];o[c+4>>2]=i;o[c+8>>2]=t;u=Qk(st(146,c|0)|0)|0;if((r|0)==(u|0)){f=3;break e}}o[e+16>>2]=0;o[l>>2]=0;o[s>>2]=0;o[e>>2]=o[e>>2]|32;if((t|0)==2)n=0;else n=n-(o[i+4>>2]|0)|0}else f=3}while(0);if((f|0)==3){v=o[e+44>>2]|0;o[e+16>>2]=v+(o[e+48>>2]|0);o[l>>2]=v;o[s>>2]=v}h=d;return n|0}function Xk(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0;i=h;h=h+32|0;u=i;r=i+20|0;o[u>>2]=o[e+60>>2];o[u+4>>2]=0;o[u+8>>2]=t;o[u+12>>2]=r;o[u+16>>2]=n;if((Qk(lt(140,u|0)|0)|0)<0){o[r>>2]=-1;e=-1}else e=o[r>>2]|0;h=i;return e|0}function Qk(e){e=e|0;if(e>>>0>4294963200){o[(Jk()|0)>>2]=0-e;e=-1}return e|0}function Jk(){return(Zk()|0)+64|0}function Zk(){return eT()|0}function eT(){return 2084}function tT(e){e=e|0;return e|0}function nT(e,t,n){e=e|0;t=t|0;n=n|0;var i=0,u=0;u=h;h=h+32|0;i=u;o[e+36>>2]=1;if((o[e>>2]&64|0)==0?(o[i>>2]=o[e+60>>2],o[i+4>>2]=21523,o[i+8>>2]=u+16,Qe(54,i|0)|0):0)r[e+75>>0]=-1;i=Kk(e,t,n)|0;h=u;return i|0}function rT(e,t){e=e|0;t=t|0;var n=0,i=0;n=r[e>>0]|0;i=r[t>>0]|0;if(n<<24>>24==0?1:n<<24>>24!=i<<24>>24)e=i;else{do{e=e+1|0;t=t+1|0;n=r[e>>0]|0;i=r[t>>0]|0}while(!(n<<24>>24==0?1:n<<24>>24!=i<<24>>24));e=i}return(n&255)-(e&255)|0}function iT(e,t,n){e=e|0;t=t|0;n=n|0;var i=0,o=0;e:do{if(!n)e=0;else{while(1){i=r[e>>0]|0;o=r[t>>0]|0;if(i<<24>>24!=o<<24>>24)break;n=n+-1|0;if(!n){e=0;break e}else{e=e+1|0;t=t+1|0}}e=(i&255)-(o&255)|0}}while(0);return e|0}function oT(e,t,n){e=e|0;t=t|0;n=n|0;var i=0,u=0,a=0,l=0,s=0,c=0,f=0,d=0,p=0,v=0,m=0,g=0,y=0;y=h;h=h+224|0;d=y+120|0;p=y+80|0;m=y;g=y+136|0;i=p;u=i+40|0;do{o[i>>2]=0;i=i+4|0}while((i|0)<(u|0));o[d>>2]=o[n>>2];if((uT(0,t,d,m,p)|0)<0)n=-1;else{if((o[e+76>>2]|0)>-1)v=aT(e)|0;else v=0;n=o[e>>2]|0;f=n&32;if((r[e+74>>0]|0)<1)o[e>>2]=n&-33;i=e+48|0;if(!(o[i>>2]|0)){u=e+44|0;a=o[u>>2]|0;o[u>>2]=g;l=e+28|0;o[l>>2]=g;s=e+20|0;o[s>>2]=g;o[i>>2]=80;c=e+16|0;o[c>>2]=g+80;n=uT(e,t,d,m,p)|0;if(a){_A[o[e+36>>2]&7](e,0,0)|0;n=(o[s>>2]|0)==0?-1:n;o[u>>2]=a;o[i>>2]=0;o[c>>2]=0;o[l>>2]=0;o[s>>2]=0}}else n=uT(e,t,d,m,p)|0;i=o[e>>2]|0;o[e>>2]=i|f;if(v|0)lT(e);n=(i&32|0)==0?n:-1}h=y;return n|0}function uT(e,t,n,u,a){e=e|0;t=t|0;n=n|0;u=u|0;a=a|0;var l=0,s=0,f=0,d=0,p=0,v=0,m=0,g=0,y=0,_=0,b=0,w=0,E=0,D=0,S=0,C=0,k=0,T=0,x=0,O=0,P=0,I=0,N=0;N=h;h=h+64|0;x=N+16|0;O=N;k=N+24|0;P=N+8|0;I=N+20|0;o[x>>2]=t;D=(e|0)!=0;S=k+40|0;C=S;k=k+39|0;T=P+4|0;s=0;l=0;v=0;e:while(1){do{if((l|0)>-1)if((s|0)>(2147483647-l|0)){o[(Jk()|0)>>2]=75;l=-1;break}else{l=s+l|0;break}}while(0);s=r[t>>0]|0;if(!(s<<24>>24)){E=87;break}else f=t;t:while(1){switch(s<<24>>24){case 37:{s=f;E=9;break t}case 0:{s=f;break t}default:{}}w=f+1|0;o[x>>2]=w;s=r[w>>0]|0;f=w}t:do{if((E|0)==9)while(1){E=0;if((r[f+1>>0]|0)!=37)break t;s=s+1|0;f=f+2|0;o[x>>2]=f;if((r[f>>0]|0)==37)E=9;else break}}while(0);s=s-t|0;if(D)sT(e,t,s);if(s|0){t=f;continue}d=f+1|0;s=(r[d>>0]|0)+-48|0;if(s>>>0<10){w=(r[f+2>>0]|0)==36;b=w?s:-1;v=w?1:v;d=w?f+3|0:d}else b=-1;o[x>>2]=d;s=r[d>>0]|0;f=(s<<24>>24)+-32|0;t:do{if(f>>>0<32){p=0;m=s;while(1){s=1<>2]=d;s=r[d>>0]|0;f=(s<<24>>24)+-32|0;if(f>>>0>=32)break;else m=s}}else p=0}while(0);if(s<<24>>24==42){f=d+1|0;s=(r[f>>0]|0)+-48|0;if(s>>>0<10?(r[d+2>>0]|0)==36:0){o[a+(s<<2)>>2]=10;s=o[u+((r[f>>0]|0)+-48<<3)>>2]|0;v=1;d=d+3|0}else{if(v|0){l=-1;break}if(D){v=(o[n>>2]|0)+(4-1)&~(4-1);s=o[v>>2]|0;o[n>>2]=v+4;v=0;d=f}else{s=0;v=0;d=f}}o[x>>2]=d;w=(s|0)<0;s=w?0-s|0:s;p=w?p|8192:p}else{s=cT(x)|0;if((s|0)<0){l=-1;break}d=o[x>>2]|0}do{if((r[d>>0]|0)==46){if((r[d+1>>0]|0)!=42){o[x>>2]=d+1;f=cT(x)|0;d=o[x>>2]|0;break}m=d+2|0;f=(r[m>>0]|0)+-48|0;if(f>>>0<10?(r[d+3>>0]|0)==36:0){o[a+(f<<2)>>2]=10;f=o[u+((r[m>>0]|0)+-48<<3)>>2]|0;d=d+4|0;o[x>>2]=d;break}if(v|0){l=-1;break e}if(D){w=(o[n>>2]|0)+(4-1)&~(4-1);f=o[w>>2]|0;o[n>>2]=w+4}else f=0;o[x>>2]=m;d=m}else f=-1}while(0);_=0;while(1){if(((r[d>>0]|0)+-65|0)>>>0>57){l=-1;break e}w=d+1|0;o[x>>2]=w;m=r[(r[d>>0]|0)+-65+(5178+(_*58|0))>>0]|0;g=m&255;if((g+-1|0)>>>0<8){_=g;d=w}else break}if(!(m<<24>>24)){l=-1;break}y=(b|0)>-1;do{if(m<<24>>24==19){if(y){l=-1;break e}else E=49}else{if(y){o[a+(b<<2)>>2]=g;y=u+(b<<3)|0;b=o[y+4>>2]|0;E=O;o[E>>2]=o[y>>2];o[E+4>>2]=b;E=49;break}if(!D){l=0;break e}fT(O,g,n)}}while(0);if((E|0)==49?(E=0,!D):0){s=0;t=w;continue}d=r[d>>0]|0;d=(_|0)!=0&(d&15|0)==3?d&-33:d;y=p&-65537;b=(p&8192|0)==0?p:y;t:do{switch(d|0){case 110:switch((_&255)<<24>>24){case 0:{o[o[O>>2]>>2]=l;s=0;t=w;continue e}case 1:{o[o[O>>2]>>2]=l;s=0;t=w;continue e}case 2:{s=o[O>>2]|0;o[s>>2]=l;o[s+4>>2]=((l|0)<0)<<31>>31;s=0;t=w;continue e}case 3:{i[o[O>>2]>>1]=l;s=0;t=w;continue e}case 4:{r[o[O>>2]>>0]=l;s=0;t=w;continue e}case 6:{o[o[O>>2]>>2]=l;s=0;t=w;continue e}case 7:{s=o[O>>2]|0;o[s>>2]=l;o[s+4>>2]=((l|0)<0)<<31>>31;s=0;t=w;continue e}default:{s=0;t=w;continue e}}case 112:{d=120;f=f>>>0>8?f:8;t=b|8;E=61;break}case 88:case 120:{t=b;E=61;break}case 111:{d=O;t=o[d>>2]|0;d=o[d+4>>2]|0;g=pT(t,d,S)|0;y=C-g|0;p=0;m=5642;f=(b&8|0)==0|(f|0)>(y|0)?f:y+1|0;y=b;E=67;break}case 105:case 100:{d=O;t=o[d>>2]|0;d=o[d+4>>2]|0;if((d|0)<0){t=ZT(0,0,t|0,d|0)|0;d=A;p=O;o[p>>2]=t;o[p+4>>2]=d;p=1;m=5642;E=66;break t}else{p=(b&2049|0)!=0&1;m=(b&2048|0)==0?(b&1|0)==0?5642:5644:5643;E=66;break t}}case 117:{d=O;p=0;m=5642;t=o[d>>2]|0;d=o[d+4>>2]|0;E=66;break}case 99:{r[k>>0]=o[O>>2];t=k;p=0;m=5642;g=S;d=1;f=y;break}case 109:{d=vT(o[(Jk()|0)>>2]|0)|0;E=71;break}case 115:{d=o[O>>2]|0;d=d|0?d:5652;E=71;break}case 67:{o[P>>2]=o[O>>2];o[T>>2]=0;o[O>>2]=P;g=-1;d=P;E=75;break}case 83:{t=o[O>>2]|0;if(!f){gT(e,32,s,0,b);t=0;E=84}else{g=f;d=t;E=75}break}case 65:case 71:case 70:case 69:case 97:case 103:case 102:case 101:{s=_T(e,+c[O>>3],s,f,b,d)|0;t=w;continue e}default:{p=0;m=5642;g=S;d=f;f=b}}}while(0);t:do{if((E|0)==61){b=O;_=o[b>>2]|0;b=o[b+4>>2]|0;g=dT(_,b,S,d&32)|0;m=(t&8|0)==0|(_|0)==0&(b|0)==0;p=m?0:2;m=m?5642:5642+(d>>4)|0;y=t;t=_;d=b;E=67}else if((E|0)==66){g=hT(t,d,S)|0;y=b;E=67}else if((E|0)==71){E=0;b=mT(d,0,f)|0;_=(b|0)==0;t=d;p=0;m=5642;g=_?d+f|0:b;d=_?f:b-d|0;f=y}else if((E|0)==75){E=0;m=d;t=0;f=0;while(1){p=o[m>>2]|0;if(!p)break;f=yT(I,p)|0;if((f|0)<0|f>>>0>(g-t|0)>>>0)break;t=f+t|0;if(g>>>0>t>>>0)m=m+4|0;else break}if((f|0)<0){l=-1;break e}gT(e,32,s,t,b);if(!t){t=0;E=84}else{p=0;while(1){f=o[d>>2]|0;if(!f){E=84;break t}f=yT(I,f)|0;p=f+p|0;if((p|0)>(t|0)){E=84;break t}sT(e,I,f);if(p>>>0>=t>>>0){E=84;break}else d=d+4|0}}}}while(0);if((E|0)==67){E=0;d=(t|0)!=0|(d|0)!=0;b=(f|0)!=0|d;d=((d^1)&1)+(C-g)|0;t=b?g:S;g=S;d=b?(f|0)>(d|0)?f:d:f;f=(f|0)>-1?y&-65537:y}else if((E|0)==84){E=0;gT(e,32,s,t,b^8192);s=(s|0)>(t|0)?s:t;t=w;continue}_=g-t|0;y=(d|0)<(_|0)?_:d;b=y+p|0;s=(s|0)<(b|0)?b:s;gT(e,32,s,b,f);sT(e,m,p);gT(e,48,s,b,f^65536);gT(e,48,y,_,0);sT(e,t,_);gT(e,32,s,b,f^8192);t=w}e:do{if((E|0)==87)if(!e)if(!v)l=0;else{l=1;while(1){t=o[a+(l<<2)>>2]|0;if(!t)break;fT(u+(l<<3)|0,t,n);l=l+1|0;if((l|0)>=10){l=1;break e}}while(1){if(o[a+(l<<2)>>2]|0){l=-1;break e}l=l+1|0;if((l|0)>=10){l=1;break}}}}while(0);h=N;return l|0}function aT(e){e=e|0;return 0}function lT(e){e=e|0;return}function sT(e,t,n){e=e|0;t=t|0;n=n|0;if(!(o[e>>2]&32))PT(t,n,e)|0;return}function cT(e){e=e|0;var t=0,n=0,i=0;n=o[e>>2]|0;i=(r[n>>0]|0)+-48|0;if(i>>>0<10){t=0;do{t=i+(t*10|0)|0;n=n+1|0;o[e>>2]=n;i=(r[n>>0]|0)+-48|0}while(i>>>0<10)}else t=0;return t|0}function fT(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0.0;e:do{if(t>>>0<=20)do{switch(t|0){case 9:{r=(o[n>>2]|0)+(4-1)&~(4-1);t=o[r>>2]|0;o[n>>2]=r+4;o[e>>2]=t;break e}case 10:{r=(o[n>>2]|0)+(4-1)&~(4-1);t=o[r>>2]|0;o[n>>2]=r+4;r=e;o[r>>2]=t;o[r+4>>2]=((t|0)<0)<<31>>31;break e}case 11:{r=(o[n>>2]|0)+(4-1)&~(4-1);t=o[r>>2]|0;o[n>>2]=r+4;r=e;o[r>>2]=t;o[r+4>>2]=0;break e}case 12:{r=(o[n>>2]|0)+(8-1)&~(8-1);t=r;i=o[t>>2]|0;t=o[t+4>>2]|0;o[n>>2]=r+8;r=e;o[r>>2]=i;o[r+4>>2]=t;break e}case 13:{i=(o[n>>2]|0)+(4-1)&~(4-1);r=o[i>>2]|0;o[n>>2]=i+4;r=(r&65535)<<16>>16;i=e;o[i>>2]=r;o[i+4>>2]=((r|0)<0)<<31>>31;break e}case 14:{i=(o[n>>2]|0)+(4-1)&~(4-1);r=o[i>>2]|0;o[n>>2]=i+4;i=e;o[i>>2]=r&65535;o[i+4>>2]=0;break e}case 15:{i=(o[n>>2]|0)+(4-1)&~(4-1);r=o[i>>2]|0;o[n>>2]=i+4;r=(r&255)<<24>>24;i=e;o[i>>2]=r;o[i+4>>2]=((r|0)<0)<<31>>31;break e}case 16:{i=(o[n>>2]|0)+(4-1)&~(4-1);r=o[i>>2]|0;o[n>>2]=i+4;i=e;o[i>>2]=r&255;o[i+4>>2]=0;break e}case 17:{i=(o[n>>2]|0)+(8-1)&~(8-1);u=+c[i>>3];o[n>>2]=i+8;c[e>>3]=u;break e}case 18:{i=(o[n>>2]|0)+(8-1)&~(8-1);u=+c[i>>3];o[n>>2]=i+8;c[e>>3]=u;break e}default:break e}}while(0)}while(0);return}function dT(e,t,n,i){e=e|0;t=t|0;n=n|0;i=i|0;if(!((e|0)==0&(t|0)==0))do{n=n+-1|0;r[n>>0]=u[5694+(e&15)>>0]|0|i;e=rx(e|0,t|0,4)|0;t=A}while(!((e|0)==0&(t|0)==0));return n|0}function pT(e,t,n){e=e|0;t=t|0;n=n|0;if(!((e|0)==0&(t|0)==0))do{n=n+-1|0;r[n>>0]=e&7|48;e=rx(e|0,t|0,3)|0;t=A}while(!((e|0)==0&(t|0)==0));return n|0}function hT(e,t,n){e=e|0;t=t|0;n=n|0;var i=0;if(t>>>0>0|(t|0)==0&e>>>0>4294967295){while(1){i=cx(e|0,t|0,10,0)|0;n=n+-1|0;r[n>>0]=i&255|48;i=e;e=ax(e|0,t|0,10,0)|0;if(!(t>>>0>9|(t|0)==9&i>>>0>4294967295))break;else t=A}t=e}else t=e;if(t)while(1){n=n+-1|0;r[n>>0]=(t>>>0)%10|0|48;if(t>>>0<10)break;else t=(t>>>0)/10|0}return n|0}function vT(e){e=e|0;return kT(e,o[(CT()|0)+188>>2]|0)|0}function mT(e,t,n){e=e|0;t=t|0;n=n|0;var i=0,u=0,a=0,l=0;a=t&255;i=(n|0)!=0;e:do{if(i&(e&3|0)!=0){u=t&255;while(1){if((r[e>>0]|0)==u<<24>>24){l=6;break e}e=e+1|0;n=n+-1|0;i=(n|0)!=0;if(!(i&(e&3|0)!=0)){l=5;break}}}else l=5}while(0);if((l|0)==5)if(i)l=6;else n=0;e:do{if((l|0)==6){u=t&255;if((r[e>>0]|0)!=u<<24>>24){i=V(a,16843009)|0;t:do{if(n>>>0>3)while(1){a=o[e>>2]^i;if((a&-2139062144^-2139062144)&a+-16843009|0)break;e=e+4|0;n=n+-4|0;if(n>>>0<=3){l=11;break t}}else l=11}while(0);if((l|0)==11)if(!n){n=0;break}while(1){if((r[e>>0]|0)==u<<24>>24)break e;e=e+1|0;n=n+-1|0;if(!n){n=0;break}}}}}while(0);return(n|0?e:0)|0}function gT(e,t,n,r,i){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;var o=0,u=0;u=h;h=h+256|0;o=u;if((n|0)>(r|0)&(i&73728|0)==0){i=n-r|0;tx(o|0,t|0,(i>>>0<256?i:256)|0)|0;if(i>>>0>255){t=n-r|0;do{sT(e,o,256);i=i+-256|0}while(i>>>0>255);i=t&255}sT(e,o,i)}h=u;return}function yT(e,t){e=e|0;t=t|0;if(!e)e=0;else e=DT(e,t,0)|0;return e|0}function _T(e,t,n,i,a,l){e=e|0;t=+t;n=n|0;i=i|0;a=a|0;l=l|0;var s=0,c=0,f=0,d=0,p=0,v=0,m=0,g=0.0,y=0,_=0,b=0,w=0,E=0,D=0,S=0,C=0,k=0,T=0,x=0,O=0,P=0,I=0,N=0;N=h;h=h+560|0;f=N+8|0;b=N;I=N+524|0;P=I;d=N+512|0;o[b>>2]=0;O=d+12|0;bT(t)|0;if((A|0)<0){t=-t;T=1;k=5659}else{T=(a&2049|0)!=0&1;k=(a&2048|0)==0?(a&1|0)==0?5660:5665:5662}bT(t)|0;x=A&2146435072;do{if(x>>>0<2146435072|(x|0)==2146435072&0<0){g=+wT(t,b)*2.0;s=g!=0.0;if(s)o[b>>2]=(o[b>>2]|0)+-1;E=l|32;if((E|0)==97){y=l&32;m=(y|0)==0?k:k+9|0;v=T|2;s=12-i|0;do{if(!(i>>>0>11|(s|0)==0)){t=8.0;do{s=s+-1|0;t=t*16.0}while((s|0)!=0);if((r[m>>0]|0)==45){t=-(t+(-g-t));break}else{t=g+t-t;break}}else t=g}while(0);c=o[b>>2]|0;s=(c|0)<0?0-c|0:c;s=hT(s,((s|0)<0)<<31>>31,O)|0;if((s|0)==(O|0)){s=d+11|0;r[s>>0]=48}r[s+-1>>0]=(c>>31&2)+43;p=s+-2|0;r[p>>0]=l+15;d=(i|0)<1;f=(a&8|0)==0;s=I;do{x=~~t;c=s+1|0;r[s>>0]=u[5694+x>>0]|y;t=(t-+(x|0))*16.0;if((c-P|0)==1?!(f&(d&t==0.0)):0){r[c>>0]=46;s=s+2|0}else s=c}while(t!=0.0);x=s-P|0;P=O-p|0;O=(i|0)!=0&(x+-2|0)<(i|0)?i+2|0:x;s=P+v+O|0;gT(e,32,n,s,a);sT(e,m,v);gT(e,48,n,s,a^65536);sT(e,I,x);gT(e,48,O-x|0,0,0);sT(e,p,P);gT(e,32,n,s,a^8192);break}c=(i|0)<0?6:i;if(s){s=(o[b>>2]|0)+-28|0;o[b>>2]=s;t=g*268435456.0}else{t=g;s=o[b>>2]|0}x=(s|0)<0?f:f+288|0;f=x;do{S=~~t>>>0;o[f>>2]=S;f=f+4|0;t=(t-+(S>>>0))*1.0e9}while(t!=0.0);if((s|0)>0){d=x;v=f;while(1){p=(s|0)<29?s:29;s=v+-4|0;if(s>>>0>=d>>>0){f=0;do{D=nx(o[s>>2]|0,0,p|0)|0;D=ex(D|0,A|0,f|0,0)|0;S=A;w=cx(D|0,S|0,1e9,0)|0;o[s>>2]=w;f=ax(D|0,S|0,1e9,0)|0;s=s+-4|0}while(s>>>0>=d>>>0);if(f){d=d+-4|0;o[d>>2]=f}}f=v;while(1){if(f>>>0<=d>>>0)break;s=f+-4|0;if(!(o[s>>2]|0))f=s;else break}s=(o[b>>2]|0)-p|0;o[b>>2]=s;if((s|0)>0)v=f;else break}}else d=x;if((s|0)<0){i=((c+25|0)/9|0)+1|0;_=(E|0)==102;do{y=0-s|0;y=(y|0)<9?y:9;if(d>>>0>>0){p=(1<>>y;m=0;s=d;do{S=o[s>>2]|0;o[s>>2]=(S>>>y)+m;m=V(S&p,v)|0;s=s+4|0}while(s>>>0>>0);s=(o[d>>2]|0)==0?d+4|0:d;if(!m){d=s;s=f}else{o[f>>2]=m;d=s;s=f+4|0}}else{d=(o[d>>2]|0)==0?d+4|0:d;s=f}f=_?x:d;f=(s-f>>2|0)>(i|0)?f+(i<<2)|0:s;s=(o[b>>2]|0)+y|0;o[b>>2]=s}while((s|0)<0);s=d;i=f}else{s=d;i=f}S=x;if(s>>>0>>0){f=(S-s>>2)*9|0;p=o[s>>2]|0;if(p>>>0>=10){d=10;do{d=d*10|0;f=f+1|0}while(p>>>0>=d>>>0)}}else f=0;_=(E|0)==103;w=(c|0)!=0;d=c-((E|0)!=102?f:0)+((w&_)<<31>>31)|0;if((d|0)<(((i-S>>2)*9|0)+-9|0)){d=d+9216|0;y=x+4+(((d|0)/9|0)+-1024<<2)|0;d=((d|0)%9|0)+1|0;if((d|0)<9){p=10;do{p=p*10|0;d=d+1|0}while((d|0)!=9)}else p=10;v=o[y>>2]|0;m=(v>>>0)%(p>>>0)|0;d=(y+4|0)==(i|0);if(!(d&(m|0)==0)){g=(((v>>>0)/(p>>>0)|0)&1|0)==0?9007199254740992.0:9007199254740994.0;D=(p|0)/2|0;t=m>>>0>>0?.5:d&(m|0)==(D|0)?1.0:1.5;if(T){D=(r[k>>0]|0)==45;t=D?-t:t;g=D?-g:g}d=v-m|0;o[y>>2]=d;if(g+t!=g){D=d+p|0;o[y>>2]=D;if(D>>>0>999999999){f=y;while(1){d=f+-4|0;o[f>>2]=0;if(d>>>0>>0){s=s+-4|0;o[s>>2]=0}D=(o[d>>2]|0)+1|0;o[d>>2]=D;if(D>>>0>999999999)f=d;else break}}else d=y;f=(S-s>>2)*9|0;v=o[s>>2]|0;if(v>>>0>=10){p=10;do{p=p*10|0;f=f+1|0}while(v>>>0>=p>>>0)}}else d=y}else d=y;d=d+4|0;d=i>>>0>d>>>0?d:i;D=s}else{d=i;D=s}E=d;while(1){if(E>>>0<=D>>>0){b=0;break}s=E+-4|0;if(!(o[s>>2]|0))E=s;else{b=1;break}}i=0-f|0;do{if(_){s=((w^1)&1)+c|0;if((s|0)>(f|0)&(f|0)>-5){p=l+-1|0;c=s+-1-f|0}else{p=l+-2|0;c=s+-1|0}s=a&8;if(!s){if(b?(C=o[E+-4>>2]|0,(C|0)!=0):0){if(!((C>>>0)%10|0)){d=0;s=10;do{s=s*10|0;d=d+1|0}while(!((C>>>0)%(s>>>0)|0|0))}else d=0}else d=9;s=((E-S>>2)*9|0)+-9|0;if((p|32|0)==102){y=s-d|0;y=(y|0)>0?y:0;c=(c|0)<(y|0)?c:y;y=0;break}else{y=s+f-d|0;y=(y|0)>0?y:0;c=(c|0)<(y|0)?c:y;y=0;break}}else y=s}else{p=l;y=a&8}}while(0);_=c|y;v=(_|0)!=0&1;m=(p|32|0)==102;if(m){w=0;s=(f|0)>0?f:0}else{s=(f|0)<0?i:f;s=hT(s,((s|0)<0)<<31>>31,O)|0;d=O;if((d-s|0)<2)do{s=s+-1|0;r[s>>0]=48}while((d-s|0)<2);r[s+-1>>0]=(f>>31&2)+43;s=s+-2|0;r[s>>0]=p;w=s;s=d-s|0}s=T+1+c+v+s|0;gT(e,32,n,s,a);sT(e,k,T);gT(e,48,n,s,a^65536);if(m){p=D>>>0>x>>>0?x:D;y=I+9|0;v=y;m=I+8|0;d=p;do{f=hT(o[d>>2]|0,0,y)|0;if((d|0)==(p|0)){if((f|0)==(y|0)){r[m>>0]=48;f=m}}else if(f>>>0>I>>>0){tx(I|0,48,f-P|0)|0;do{f=f+-1|0}while(f>>>0>I>>>0)}sT(e,f,v-f|0);d=d+4|0}while(d>>>0<=x>>>0);if(_|0)sT(e,5710,1);if(d>>>0>>0&(c|0)>0)while(1){f=hT(o[d>>2]|0,0,y)|0;if(f>>>0>I>>>0){tx(I|0,48,f-P|0)|0;do{f=f+-1|0}while(f>>>0>I>>>0)}sT(e,f,(c|0)<9?c:9);d=d+4|0;f=c+-9|0;if(!(d>>>0>>0&(c|0)>9)){c=f;break}else c=f}gT(e,48,c+9|0,9,0)}else{_=b?E:D+4|0;if((c|0)>-1){b=I+9|0;y=(y|0)==0;i=b;v=0-P|0;m=I+8|0;p=D;do{f=hT(o[p>>2]|0,0,b)|0;if((f|0)==(b|0)){r[m>>0]=48;f=m}do{if((p|0)==(D|0)){d=f+1|0;sT(e,f,1);if(y&(c|0)<1){f=d;break}sT(e,5710,1);f=d}else{if(f>>>0<=I>>>0)break;tx(I|0,48,f+v|0)|0;do{f=f+-1|0}while(f>>>0>I>>>0)}}while(0);P=i-f|0;sT(e,f,(c|0)>(P|0)?P:c);c=c-P|0;p=p+4|0}while(p>>>0<_>>>0&(c|0)>-1)}gT(e,48,c+18|0,18,0);sT(e,w,O-w|0)}gT(e,32,n,s,a^8192)}else{I=(l&32|0)!=0;s=T+3|0;gT(e,32,n,s,a&-65537);sT(e,k,T);sT(e,t!=t|0.0!=0.0?I?5686:5690:I?5678:5682,3);gT(e,32,n,s,a^8192)}}while(0);h=N;return((s|0)<(n|0)?n:s)|0}function bT(e){e=+e;var t=0;c[d>>3]=e;t=o[d>>2]|0;A=o[d+4>>2]|0;return t|0}function wT(e,t){e=+e;t=t|0;return+ +ET(e,t)}function ET(e,t){e=+e;t=t|0;var n=0,r=0,i=0;c[d>>3]=e;n=o[d>>2]|0;r=o[d+4>>2]|0;i=rx(n|0,r|0,52)|0;switch(i&2047){case 0:{if(e!=0.0){e=+ET(e*18446744073709551616.0,t);n=(o[t>>2]|0)+-64|0}else n=0;o[t>>2]=n;break}case 2047:break;default:{o[t>>2]=(i&2047)+-1022;o[d>>2]=n;o[d+4>>2]=r&-2146435073|1071644672;e=+c[d>>3]}}return+e}function DT(e,t,n){e=e|0;t=t|0;n=n|0;do{if(e){if(t>>>0<128){r[e>>0]=t;e=1;break}if(!(o[o[(ST()|0)+188>>2]>>2]|0))if((t&-128|0)==57216){r[e>>0]=t;e=1;break}else{o[(Jk()|0)>>2]=84;e=-1;break}if(t>>>0<2048){r[e>>0]=t>>>6|192;r[e+1>>0]=t&63|128;e=2;break}if(t>>>0<55296|(t&-8192|0)==57344){r[e>>0]=t>>>12|224;r[e+1>>0]=t>>>6&63|128;r[e+2>>0]=t&63|128;e=3;break}if((t+-65536|0)>>>0<1048576){r[e>>0]=t>>>18|240;r[e+1>>0]=t>>>12&63|128;r[e+2>>0]=t>>>6&63|128;r[e+3>>0]=t&63|128;e=4;break}else{o[(Jk()|0)>>2]=84;e=-1;break}}else e=1}while(0);return e|0}function ST(){return eT()|0}function CT(){return eT()|0}function kT(e,t){e=e|0;t=t|0;var n=0,i=0;i=0;while(1){if((u[5712+i>>0]|0)==(e|0)){e=2;break}n=i+1|0;if((n|0)==87){n=5800;i=87;e=5;break}else i=n}if((e|0)==2)if(!i)n=5800;else{n=5800;e=5}if((e|0)==5)while(1){do{e=n;n=n+1|0}while((r[e>>0]|0)!=0);i=i+-1|0;if(!i)break;else e=5}return TT(n,o[t+20>>2]|0)|0}function TT(e,t){e=e|0;t=t|0;return xT(e,t)|0}function xT(e,t){e=e|0;t=t|0;if(!t)t=0;else t=AT(o[t>>2]|0,o[t+4>>2]|0,e)|0;return(t|0?t:e)|0}function AT(e,t,n){e=e|0;t=t|0;n=n|0;var i=0,u=0,a=0,l=0,s=0,c=0,f=0,d=0,p=0,h=0;h=(o[e>>2]|0)+1794895138|0;a=OT(o[e+8>>2]|0,h)|0;i=OT(o[e+12>>2]|0,h)|0;u=OT(o[e+16>>2]|0,h)|0;e:do{if((a>>>0>>2>>>0?(p=t-(a<<2)|0,i>>>0

>>0&u>>>0

>>0):0)?((u|i)&3|0)==0:0){p=i>>>2;d=u>>>2;f=0;while(1){s=a>>>1;c=f+s|0;l=c<<1;u=l+p|0;i=OT(o[e+(u<<2)>>2]|0,h)|0;u=OT(o[e+(u+1<<2)>>2]|0,h)|0;if(!(u>>>0>>0&i>>>0<(t-u|0)>>>0)){i=0;break e}if(r[e+(u+i)>>0]|0){i=0;break e}i=rT(n,e+u|0)|0;if(!i)break;i=(i|0)<0;if((a|0)==1){i=0;break e}else{f=i?f:c;a=i?s:a-s|0}}i=l+d|0;u=OT(o[e+(i<<2)>>2]|0,h)|0;i=OT(o[e+(i+1<<2)>>2]|0,h)|0;if(i>>>0>>0&u>>>0<(t-i|0)>>>0)i=(r[e+(i+u)>>0]|0)==0?e+i|0:0;else i=0}else i=0}while(0);return i|0}function OT(e,t){e=e|0;t=t|0;var n=0;n=fx(e|0)|0;return((t|0)==0?e:n)|0}function PT(e,t,n){e=e|0;t=t|0;n=n|0;var i=0,u=0,a=0,l=0,s=0;i=n+16|0;u=o[i>>2]|0;if(!u){if(!(IT(n)|0)){u=o[i>>2]|0;a=5}else i=0}else a=5;e:do{if((a|0)==5){s=n+20|0;l=o[s>>2]|0;i=l;if((u-l|0)>>>0>>0){i=_A[o[n+36>>2]&7](n,e,t)|0;break}t:do{if((r[n+75>>0]|0)>-1){l=t;while(1){if(!l){a=0;u=e;break t}u=l+-1|0;if((r[e+u>>0]|0)==10)break;else l=u}i=_A[o[n+36>>2]&7](n,e,l)|0;if(i>>>0>>0)break e;a=l;u=e+l|0;t=t-l|0;i=o[s>>2]|0}else{a=0;u=e}}while(0);ix(i|0,u|0,t|0)|0;o[s>>2]=(o[s>>2]|0)+t;i=a+t|0}}while(0);return i|0}function IT(e){e=e|0;var t=0,n=0;t=e+74|0;n=r[t>>0]|0;r[t>>0]=n+255|n;t=o[e>>2]|0;if(!(t&8)){o[e+8>>2]=0;o[e+4>>2]=0;n=o[e+44>>2]|0;o[e+28>>2]=n;o[e+20>>2]=n;o[e+16>>2]=n+(o[e+48>>2]|0);e=0}else{o[e>>2]=t|32;e=-1}return e|0}function NT(e,t){e=Y(e);t=Y(t);var n=0,r=0;n=MT(e)|0;do{if((n&2147483647)>>>0<=2139095040){r=MT(t)|0;if((r&2147483647)>>>0<=2139095040)if((r^n|0)<0){e=(n|0)<0?t:e;break}else{e=e>2]=e,o[d>>2]|0)|0}function RT(e,t){e=Y(e);t=Y(t);var n=0,r=0;n=FT(e)|0;do{if((n&2147483647)>>>0<=2139095040){r=FT(t)|0;if((r&2147483647)>>>0<=2139095040)if((r^n|0)<0){e=(n|0)<0?e:t;break}else{e=e>2]=e,o[d>>2]|0)|0}function LT(e,t){e=Y(e);t=Y(t);var n=0,r=0,i=0,u=0,a=0,l=0,c=0,f=0;u=(s[d>>2]=e,o[d>>2]|0);l=(s[d>>2]=t,o[d>>2]|0);n=u>>>23&255;a=l>>>23&255;c=u&-2147483648;i=l<<1;e:do{if((i|0)!=0?!((n|0)==255|((BT(t)|0)&2147483647)>>>0>2139095040):0){r=u<<1;if(r>>>0<=i>>>0){t=Y(e*Y(0.0));return Y((r|0)==(i|0)?t:e)}if(!n){n=u<<9;if((n|0)>-1){r=n;n=0;do{n=n+-1|0;r=r<<1}while((r|0)>-1)}else n=0;r=u<<1-n}else r=u&8388607|8388608;if(!a){u=l<<9;if((u|0)>-1){i=0;do{i=i+-1|0;u=u<<1}while((u|0)>-1)}else i=0;a=i;l=l<<1-i}else l=l&8388607|8388608;i=r-l|0;u=(i|0)>-1;t:do{if((n|0)>(a|0)){while(1){if(u)if(!i)break;else r=i;r=r<<1;n=n+-1|0;i=r-l|0;u=(i|0)>-1;if((n|0)<=(a|0))break t}t=Y(e*Y(0.0));break e}}while(0);if(u)if(!i){t=Y(e*Y(0.0));break}else r=i;if(r>>>0<8388608)do{r=r<<1;n=n+-1|0}while(r>>>0<8388608);if((n|0)>0)n=r+-8388608|n<<23;else n=r>>>(1-n|0);t=(o[d>>2]=n|c,Y(s[d>>2]))}else f=3}while(0);if((f|0)==3){t=Y(e*t);t=Y(t/t)}return Y(t)}function BT(e){e=Y(e);return(s[d>>2]=e,o[d>>2]|0)|0}function jT(e,t){e=e|0;t=t|0;return oT(o[582]|0,e,t)|0}function UT(e){e=e|0;Ye()}function zT(e){e=e|0;return}function WT(e,t){e=e|0;t=t|0;return 0}function HT(e){e=e|0;if((VT(e+4|0)|0)==-1){hA[o[(o[e>>2]|0)+8>>2]&127](e);e=1}else e=0;return e|0}function VT(e){e=e|0;var t=0;t=o[e>>2]|0;o[e>>2]=t+-1;return t+-1|0}function qT(e){e=e|0;if(HT(e)|0)GT(e);return}function GT(e){e=e|0;var t=0;t=e+8|0;if(!((o[t>>2]|0)!=0?(VT(t)|0)!=-1:0))hA[o[(o[e>>2]|0)+16>>2]&127](e);return}function $T(e){e=e|0;var t=0;t=(e|0)==0?1:e;while(1){e=qk(t)|0;if(e|0)break;e=QT()|0;if(!e){e=0;break}IA[e&0]()}return e|0}function YT(e){e=e|0;return $T(e)|0}function KT(e){e=e|0;Gk(e);return}function XT(e){e=e|0;if((r[e+11>>0]|0)<0)KT(o[e>>2]|0);return}function QT(){var e=0;e=o[2923]|0;o[2923]=e+0;return e|0}function JT(){}function ZT(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;r=t-r-(n>>>0>e>>>0|0)>>>0;return(A=r,e-n>>>0|0)|0}function ex(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;n=e+n>>>0;return(A=t+r+(n>>>0>>0|0)>>>0,n|0)|0}function tx(e,t,n){e=e|0;t=t|0;n=n|0;var i=0,u=0,a=0,l=0;a=e+n|0;t=t&255;if((n|0)>=67){while(e&3){r[e>>0]=t;e=e+1|0}i=a&-4|0;u=i-64|0;l=t|t<<8|t<<16|t<<24;while((e|0)<=(u|0)){o[e>>2]=l;o[e+4>>2]=l;o[e+8>>2]=l;o[e+12>>2]=l;o[e+16>>2]=l;o[e+20>>2]=l;o[e+24>>2]=l;o[e+28>>2]=l;o[e+32>>2]=l;o[e+36>>2]=l;o[e+40>>2]=l;o[e+44>>2]=l;o[e+48>>2]=l;o[e+52>>2]=l;o[e+56>>2]=l;o[e+60>>2]=l;e=e+64|0}while((e|0)<(i|0)){o[e>>2]=l;e=e+4|0}}while((e|0)<(a|0)){r[e>>0]=t;e=e+1|0}return a-n|0}function nx(e,t,n){e=e|0;t=t|0;n=n|0;if((n|0)<32){A=t<>>32-n;return e<>>n;return e>>>n|(t&(1<>>n-32|0}function ix(e,t,n){e=e|0;t=t|0;n=n|0;var i=0,u=0,a=0;if((n|0)>=8192)return He(e|0,t|0,n|0)|0;a=e|0;u=e+n|0;if((e&3)==(t&3)){while(e&3){if(!n)return a|0;r[e>>0]=r[t>>0]|0;e=e+1|0;t=t+1|0;n=n-1|0}n=u&-4|0;i=n-64|0;while((e|0)<=(i|0)){o[e>>2]=o[t>>2];o[e+4>>2]=o[t+4>>2];o[e+8>>2]=o[t+8>>2];o[e+12>>2]=o[t+12>>2];o[e+16>>2]=o[t+16>>2];o[e+20>>2]=o[t+20>>2];o[e+24>>2]=o[t+24>>2];o[e+28>>2]=o[t+28>>2];o[e+32>>2]=o[t+32>>2];o[e+36>>2]=o[t+36>>2];o[e+40>>2]=o[t+40>>2];o[e+44>>2]=o[t+44>>2];o[e+48>>2]=o[t+48>>2];o[e+52>>2]=o[t+52>>2];o[e+56>>2]=o[t+56>>2];o[e+60>>2]=o[t+60>>2];e=e+64|0;t=t+64|0}while((e|0)<(n|0)){o[e>>2]=o[t>>2];e=e+4|0;t=t+4|0}}else{n=u-4|0;while((e|0)<(n|0)){r[e>>0]=r[t>>0]|0;r[e+1>>0]=r[t+1>>0]|0;r[e+2>>0]=r[t+2>>0]|0;r[e+3>>0]=r[t+3>>0]|0;e=e+4|0;t=t+4|0}}while((e|0)<(u|0)){r[e>>0]=r[t>>0]|0;e=e+1|0;t=t+1|0}return a|0}function ox(e){e=e|0;var t=0;t=r[m+(e&255)>>0]|0;if((t|0)<8)return t|0;t=r[m+(e>>8&255)>>0]|0;if((t|0)<8)return t+8|0;t=r[m+(e>>16&255)>>0]|0;if((t|0)<8)return t+16|0;return(r[m+(e>>>24)>>0]|0)+24|0}function ux(e,t,n,r,i){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;var u=0,a=0,l=0,s=0,c=0,f=0,d=0,p=0,h=0,v=0;f=e;s=t;c=s;a=n;p=r;l=p;if(!c){u=(i|0)!=0;if(!l){if(u){o[i>>2]=(f>>>0)%(a>>>0);o[i+4>>2]=0}p=0;i=(f>>>0)/(a>>>0)>>>0;return(A=p,i)|0}else{if(!u){p=0;i=0;return(A=p,i)|0}o[i>>2]=e|0;o[i+4>>2]=t&0;p=0;i=0;return(A=p,i)|0}}u=(l|0)==0;do{if(a){if(!u){u=($(l|0)|0)-($(c|0)|0)|0;if(u>>>0<=31){d=u+1|0;l=31-u|0;t=u-31>>31;a=d;e=f>>>(d>>>0)&t|c<>>(d>>>0)&t;u=0;l=f<>2]=e|0;o[i+4>>2]=s|t&0;p=0;i=0;return(A=p,i)|0}u=a-1|0;if(u&a|0){l=($(a|0)|0)+33-($(c|0)|0)|0;v=64-l|0;d=32-l|0;s=d>>31;h=l-32|0;t=h>>31;a=l;e=d-1>>31&c>>>(h>>>0)|(c<>>(l>>>0))&t;t=t&c>>>(l>>>0);u=f<>>(h>>>0))&s|f<>31;break}if(i|0){o[i>>2]=u&f;o[i+4>>2]=0}if((a|0)==1){h=s|t&0;v=e|0|0;return(A=h,v)|0}else{v=ox(a|0)|0;h=c>>>(v>>>0)|0;v=c<<32-v|f>>>(v>>>0)|0;return(A=h,v)|0}}else{if(u){if(i|0){o[i>>2]=(c>>>0)%(a>>>0);o[i+4>>2]=0}h=0;v=(c>>>0)/(a>>>0)>>>0;return(A=h,v)|0}if(!f){if(i|0){o[i>>2]=0;o[i+4>>2]=(c>>>0)%(l>>>0)}h=0;v=(c>>>0)/(l>>>0)>>>0;return(A=h,v)|0}u=l-1|0;if(!(u&l)){if(i|0){o[i>>2]=e|0;o[i+4>>2]=u&c|t&0}h=0;v=c>>>((ox(l|0)|0)>>>0);return(A=h,v)|0}u=($(l|0)|0)-($(c|0)|0)|0;if(u>>>0<=30){t=u+1|0;l=31-u|0;a=t;e=c<>>(t>>>0);t=c>>>(t>>>0);u=0;l=f<>2]=e|0;o[i+4>>2]=s|t&0;h=0;v=0;return(A=h,v)|0}}while(0);if(!a){c=l;s=0;l=0}else{d=n|0|0;f=p|r&0;c=ex(d|0,f|0,-1,-1)|0;n=A;s=l;l=0;do{r=s;s=u>>>31|s<<1;u=l|u<<1;r=e<<1|r>>>31|0;p=e>>>31|t<<1|0;ZT(c|0,n|0,r|0,p|0)|0;v=A;h=v>>31|((v|0)<0?-1:0)<<1;l=h&1;e=ZT(r|0,p|0,h&d|0,(((v|0)<0?-1:0)>>31|((v|0)<0?-1:0)<<1)&f|0)|0;t=A;a=a-1|0}while((a|0)!=0);c=s;s=0}a=0;if(i|0){o[i>>2]=e;o[i+4>>2]=t}h=(u|0)>>>31|(c|a)<<1|(a<<1|u>>>31)&0|s;v=(u<<1|0>>>31)&-2|l;return(A=h,v)|0}function ax(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;return ux(e,t,n,r,0)|0}function lx(e){e=e|0;var t=0,n=0;n=e+15&-16|0;t=o[f>>2]|0;e=t+n|0;if((n|0)>0&(e|0)<(t|0)|(e|0)<0){Z()|0;qe(12);return-1}o[f>>2]=e;if((e|0)>(J()|0)?(Q()|0)==0:0){o[f>>2]=t;qe(12);return-1}return t|0}function sx(e,t,n){e=e|0;t=t|0;n=n|0;var i=0;if((t|0)<(e|0)&(e|0)<(t+n|0)){i=e;t=t+n|0;e=e+n|0;while((n|0)>0){e=e-1|0;t=t-1|0;n=n-1|0;r[e>>0]=r[t>>0]|0}e=i}else ix(e,t,n)|0;return e|0}function cx(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0,u=0;u=h;h=h+16|0;i=u|0;ux(e,t,n,r,i)|0;h=u;return(A=o[i+4>>2]|0,o[i>>2]|0)|0}function fx(e){e=e|0;return(e&255)<<24|(e>>8&255)<<16|(e>>16&255)<<8|e>>>24|0}function dx(e,t,n,r,i,o){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;o=o|0;cA[e&1](t|0,n|0,r|0,i|0,o|0)}function px(e,t,n){e=e|0;t=t|0;n=Y(n);fA[e&1](t|0,Y(n))}function hx(e,t,n){e=e|0;t=t|0;n=+n;dA[e&31](t|0,+n)}function vx(e,t,n,r){e=e|0;t=t|0;n=Y(n);r=Y(r);return Y(pA[e&0](t|0,Y(n),Y(r)))}function mx(e,t){e=e|0;t=t|0;hA[e&127](t|0)}function gx(e,t,n){e=e|0;t=t|0;n=n|0;vA[e&31](t|0,n|0)}function yx(e,t){e=e|0;t=t|0;return mA[e&31](t|0)|0}function _x(e,t,n,r,i){e=e|0;t=t|0;n=+n;r=+r;i=i|0;gA[e&1](t|0,+n,+r,i|0)}function bx(e,t,n,r){e=e|0;t=t|0;n=+n;r=+r;yA[e&1](t|0,+n,+r)}function wx(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;return _A[e&7](t|0,n|0,r|0)|0}function Ex(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;return+bA[e&1](t|0,n|0,r|0)}function Dx(e,t){e=e|0;t=t|0;return+wA[e&15](t|0)}function Sx(e,t,n){e=e|0;t=t|0;n=+n;return EA[e&1](t|0,+n)|0}function Cx(e,t,n){e=e|0;t=t|0;n=n|0;return DA[e&15](t|0,n|0)|0}function kx(e,t,n,r,i,o){e=e|0;t=t|0;n=n|0;r=+r;i=+i;o=o|0;SA[e&1](t|0,n|0,+r,+i,o|0)}function Tx(e,t,n,r,i,o,u){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;o=o|0;u=u|0;CA[e&1](t|0,n|0,r|0,i|0,o|0,u|0)}function xx(e,t,n){e=e|0;t=t|0;n=n|0;return+kA[e&7](t|0,n|0)}function Ax(e){e=e|0;return TA[e&7]()|0}function Ox(e,t,n,r,i,o){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;o=o|0;return xA[e&1](t|0,n|0,r|0,i|0,o|0)|0}function Px(e,t,n,r,i){e=e|0;t=t|0;n=n|0;r=r|0;i=+i;AA[e&1](t|0,n|0,r|0,+i)}function Ix(e,t,n,r,i,o,u){e=e|0;t=t|0;n=n|0;r=Y(r);i=i|0;o=Y(o);u=u|0;OA[e&1](t|0,n|0,Y(r),i|0,Y(o),u|0)}function Nx(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;PA[e&15](t|0,n|0,r|0)}function Mx(e){e=e|0;IA[e&0]()}function Rx(e,t,n,r){e=e|0;t=t|0;n=n|0;r=+r;NA[e&15](t|0,n|0,+r)}function Fx(e,t,n){e=e|0;t=+t;n=+n;return MA[e&1](+t,+n)|0}function Lx(e,t,n,r,i){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;RA[e&15](t|0,n|0,r|0,i|0)}function Bx(e,t,n,r,i){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;K(0)}function jx(e,t){e=e|0;t=Y(t);K(1)}function Ux(e,t){e=e|0;t=+t;K(2)}function zx(e,t,n){e=e|0;t=Y(t);n=Y(n);K(3);return ft}function Wx(e){e=e|0;K(4)}function Hx(e,t){e=e|0;t=t|0;K(5)}function Vx(e){e=e|0;K(6);return 0}function qx(e,t,n,r){e=e|0;t=+t;n=+n;r=r|0;K(7)}function Gx(e,t,n){e=e|0;t=+t;n=+n;K(8)}function $x(e,t,n){e=e|0;t=t|0;n=n|0;K(9);return 0}function Yx(e,t,n){e=e|0;t=t|0;n=n|0;K(10);return 0.0}function Kx(e){e=e|0;K(11);return 0.0}function Xx(e,t){e=e|0;t=+t;K(12);return 0}function Qx(e,t){e=e|0;t=t|0;K(13);return 0}function Jx(e,t,n,r,i){e=e|0;t=t|0;n=+n;r=+r;i=i|0;K(14)}function Zx(e,t,n,r,i,o){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;o=o|0;K(15)}function eA(e,t){e=e|0;t=t|0;K(16);return 0.0}function tA(){K(17);return 0}function nA(e,t,n,r,i){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;K(18);return 0}function rA(e,t,n,r){e=e|0;t=t|0;n=n|0;r=+r;K(19)}function iA(e,t,n,r,i,o){e=e|0;t=t|0;n=Y(n);r=r|0;i=Y(i);o=o|0;K(20)}function oA(e,t,n){e=e|0;t=t|0;n=n|0;K(21)}function uA(){K(22)}function aA(e,t,n){e=e|0;t=t|0;n=+n;K(23)}function lA(e,t){e=+e;t=+t;K(24);return 0}function sA(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;K(25)}var cA=[Bx,DE];var fA=[jx,qi];var dA=[Ux,yo,_o,bo,wo,Eo,Do,So,ko,To,Ao,Oo,Po,Io,No,Mo,Ro,Fo,Lo,Ux,Ux,Ux,Ux,Ux,Ux,Ux,Ux,Ux,Ux,Ux,Ux,Ux];var pA=[zx];var hA=[Wx,zT,hl,vl,ml,Kd,Xd,Qd,yb,_b,bb,oE,uE,aE,uk,ak,lk,bt,Xi,to,Co,xo,ju,Uu,Ka,Sl,Wl,ps,Ns,rc,kc,qc,df,Mf,Zf,yd,Ld,gp,Fp,th,bh,jh,iv,kv,Vv,am,xm,Wi,cg,Ag,Qg,yy,Fy,o_,g_,b_,U_,H_,ab,Db,kb,Gb,pw,Cl,OD,pS,PS,KS,bC,BC,XC,ZC,Wx,Wx,Wx,Wx,Wx,Wx,Wx,Wx,Wx,Wx,Wx,Wx,Wx,Wx,Wx,Wx,Wx,Wx,Wx,Wx,Wx,Wx,Wx,Wx,Wx,Wx,Wx,Wx,Wx,Wx,Wx,Wx,Wx,Wx,Wx,Wx,Wx,Wx,Wx,Wx,Wx,Wx,Wx,Wx,Wx,Wx,Wx,Wx,Wx,Wx,Wx,Wx,Wx,Wx,Wx,Wx];var vA=[Hx,no,ro,uo,ao,lo,so,co,fo,vo,mo,go,eu,ru,iu,ou,uu,au,lu,pu,gu,Ku,Ov,$v,Ey,ND,ww,eS,Hx,Hx,Hx,Hx];var mA=[Vx,Yk,Ki,zo,qo,Go,$o,Yo,Ko,Xo,Jo,Zo,hu,vu,zu,Pm,Uy,Kb,BD,UD,Vx,Vx,Vx,Vx,Vx,Vx,Vx,Vx,Vx,Vx,Vx,Vx];var gA=[qx,Wu];var yA=[Gx,cb];var _A=[$x,Kk,Xk,nT,ac,wp,hg,ZS];var bA=[Yx,rd];var wA=[Kx,tu,nu,su,Hu,Vu,qu,Gu,$u,Yu,Kx,Kx,Kx,Kx,Kx,Kx];var EA=[Xx,p_];var DA=[Qx,WT,mu,tl,gs,Oc,Kc,zd,Up,fm,Gi,RS,Qx,Qx,Qx,Qx];var SA=[Jx,Gl];var CA=[Zx,SC];var kA=[eA,cu,Xu,Qu,Ju,Ed,eA,eA];var TA=[tA,Zu,$i,Ui,C_,$_,Pb,rk];var xA=[nA,Fr];var AA=[rA,Sh];var OA=[iA,_u];var PA=[oA,Wo,Qo,fu,du,Ls,mf,Hh,lv,Vi,JE,gS,WC,oA,oA,oA];var IA=[uA];var NA=[aA,io,oo,po,ho,Bo,jo,Uo,oh,Ng,l_,aA,aA,aA,aA,aA];var MA=[lA,vb];var RA=[sA,Bf,jm,ty,Ky,P_,Z_,Bb,yw,qD,hk,sA,sA,sA,sA,sA];return{_llvm_bswap_i32:fx,dynCall_idd:Fx,dynCall_i:Ax,_i64Subtract:ZT,___udivdi3:ax,dynCall_vif:px,setThrew:mt,dynCall_viii:Nx,_bitshift64Lshr:rx,_bitshift64Shl:nx,dynCall_vi:mx,dynCall_viiddi:kx,dynCall_diii:Ex,dynCall_iii:Cx,_memset:tx,_sbrk:lx,_memcpy:ix,__GLOBAL__sub_I_Yoga_cpp:ji,dynCall_vii:gx,___uremdi3:cx,dynCall_vid:hx,stackAlloc:dt,_nbind_init:Ak,getTempRet0:yt,dynCall_di:Dx,dynCall_iid:Sx,setTempRet0:gt,_i64Add:ex,dynCall_fiff:vx,dynCall_iiii:wx,_emscripten_get_global_libc:$k,dynCall_viid:Rx,dynCall_viiid:Px,dynCall_viififi:Ix,dynCall_ii:yx,__GLOBAL__sub_I_Binding_cc:wD,dynCall_viiii:Lx,dynCall_iiiiii:Ox,stackSave:pt,dynCall_viiiii:dx,__GLOBAL__sub_I_nbind_cc:ea,dynCall_vidd:bx,_free:Gk,runPostSets:JT,dynCall_viiiiii:Tx,establishStackSpace:vt,_memmove:sx,stackRestore:ht,_malloc:qk,__GLOBAL__sub_I_common_cc:iw,dynCall_viddi:_x,dynCall_dii:xx,dynCall_v:Mx}}(Module.asmGlobalArg,Module.asmLibraryArg,buffer),_llvm_bswap_i32=Module._llvm_bswap_i32=asm._llvm_bswap_i32,getTempRet0=Module.getTempRet0=asm.getTempRet0,___udivdi3=Module.___udivdi3=asm.___udivdi3,setThrew=Module.setThrew=asm.setThrew,_bitshift64Lshr=Module._bitshift64Lshr=asm._bitshift64Lshr,_bitshift64Shl=Module._bitshift64Shl=asm._bitshift64Shl,_memset=Module._memset=asm._memset,_sbrk=Module._sbrk=asm._sbrk,_memcpy=Module._memcpy=asm._memcpy,stackAlloc=Module.stackAlloc=asm.stackAlloc,___uremdi3=Module.___uremdi3=asm.___uremdi3,_nbind_init=Module._nbind_init=asm._nbind_init,_i64Subtract=Module._i64Subtract=asm._i64Subtract,setTempRet0=Module.setTempRet0=asm.setTempRet0,_i64Add=Module._i64Add=asm._i64Add,_emscripten_get_global_libc=Module._emscripten_get_global_libc=asm._emscripten_get_global_libc,__GLOBAL__sub_I_Yoga_cpp=Module.__GLOBAL__sub_I_Yoga_cpp=asm.__GLOBAL__sub_I_Yoga_cpp,__GLOBAL__sub_I_Binding_cc=Module.__GLOBAL__sub_I_Binding_cc=asm.__GLOBAL__sub_I_Binding_cc,stackSave=Module.stackSave=asm.stackSave,__GLOBAL__sub_I_nbind_cc=Module.__GLOBAL__sub_I_nbind_cc=asm.__GLOBAL__sub_I_nbind_cc,_free=Module._free=asm._free,runPostSets=Module.runPostSets=asm.runPostSets,establishStackSpace=Module.establishStackSpace=asm.establishStackSpace,_memmove=Module._memmove=asm._memmove,stackRestore=Module.stackRestore=asm.stackRestore,_malloc=Module._malloc=asm._malloc,__GLOBAL__sub_I_common_cc=Module.__GLOBAL__sub_I_common_cc=asm.__GLOBAL__sub_I_common_cc,dynCall_viiiii=Module.dynCall_viiiii=asm.dynCall_viiiii,dynCall_vif=Module.dynCall_vif=asm.dynCall_vif,dynCall_vid=Module.dynCall_vid=asm.dynCall_vid,dynCall_fiff=Module.dynCall_fiff=asm.dynCall_fiff,dynCall_vi=Module.dynCall_vi=asm.dynCall_vi,dynCall_vii=Module.dynCall_vii=asm.dynCall_vii,dynCall_ii=Module.dynCall_ii=asm.dynCall_ii,dynCall_viddi=Module.dynCall_viddi=asm.dynCall_viddi,dynCall_vidd=Module.dynCall_vidd=asm.dynCall_vidd,dynCall_iiii=Module.dynCall_iiii=asm.dynCall_iiii,dynCall_diii=Module.dynCall_diii=asm.dynCall_diii,dynCall_di=Module.dynCall_di=asm.dynCall_di,dynCall_iid=Module.dynCall_iid=asm.dynCall_iid,dynCall_iii=Module.dynCall_iii=asm.dynCall_iii,dynCall_viiddi=Module.dynCall_viiddi=asm.dynCall_viiddi,dynCall_viiiiii=Module.dynCall_viiiiii=asm.dynCall_viiiiii,dynCall_dii=Module.dynCall_dii=asm.dynCall_dii,dynCall_i=Module.dynCall_i=asm.dynCall_i,dynCall_iiiiii=Module.dynCall_iiiiii=asm.dynCall_iiiiii,dynCall_viiid=Module.dynCall_viiid=asm.dynCall_viiid,dynCall_viififi=Module.dynCall_viififi=asm.dynCall_viififi,dynCall_viii=Module.dynCall_viii=asm.dynCall_viii,dynCall_v=Module.dynCall_v=asm.dynCall_v,dynCall_viid=Module.dynCall_viid=asm.dynCall_viid,dynCall_idd=Module.dynCall_idd=asm.dynCall_idd,dynCall_viiii=Module.dynCall_viiii=asm.dynCall_viiii,initialStackTop;function ExitStatus(e){this.name="ExitStatus",this.message="Program terminated with exit("+e+")",this.status=e}Runtime.stackAlloc=Module.stackAlloc,Runtime.stackSave=Module.stackSave,Runtime.stackRestore=Module.stackRestore,Runtime.establishStackSpace=Module.establishStackSpace,Runtime.setTempRet0=Module.setTempRet0,Runtime.getTempRet0=Module.getTempRet0,Module.asm=asm,ExitStatus.prototype=new Error,ExitStatus.prototype.constructor=ExitStatus;var preloadStartTime=null,calledMain=!1;function run(e){function t(){Module.calledRun||(Module.calledRun=!0,ABORT||(ensureInitRuntime(),preMain(),Module.onRuntimeInitialized&&Module.onRuntimeInitialized(),Module._main&&shouldRunNow&&Module.callMain(e),postRun()))}e=e||Module.arguments,null===preloadStartTime&&(preloadStartTime=Date.now()),runDependencies>0||(preRun(),runDependencies>0||Module.calledRun||(Module.setStatus?(Module.setStatus("Running..."),setTimeout((function(){setTimeout((function(){Module.setStatus("")}),1),t()}),1)):t()))}function exit(e,t){t&&Module.noExitRuntime||(Module.noExitRuntime||(ABORT=!0,EXITSTATUS=e,STACKTOP=initialStackTop,exitRuntime(),Module.onExit&&Module.onExit(e)),ENVIRONMENT_IS_NODE&&process.exit(e),Module.quit(e,new ExitStatus(e)))}dependenciesFulfilled=function e(){Module.calledRun||run(),Module.calledRun||(dependenciesFulfilled=e)},Module.callMain=Module.callMain=function(e){e=e||[],ensureInitRuntime();var t=e.length+1;function n(){for(var e=0;e<3;e++)r.push(0)}var r=[allocate(intArrayFromString(Module.thisProgram),"i8",ALLOC_NORMAL)];n();for(var i=0;i0;)Module.preInit.pop()();var shouldRunNow=!0;Module.noInitialRun&&(shouldRunNow=!1),run()},void 0===(__WEBPACK_AMD_DEFINE_RESULT__=function(){return wrapper}.apply(exports,__WEBPACK_AMD_DEFINE_ARRAY__=[]))||(module.exports=__WEBPACK_AMD_DEFINE_RESULT__)},3019:e=>{"use strict";e.exports={ALIGN_COUNT:8,ALIGN_AUTO:0,ALIGN_FLEX_START:1,ALIGN_CENTER:2,ALIGN_FLEX_END:3,ALIGN_STRETCH:4,ALIGN_BASELINE:5,ALIGN_SPACE_BETWEEN:6,ALIGN_SPACE_AROUND:7,DIMENSION_COUNT:2,DIMENSION_WIDTH:0,DIMENSION_HEIGHT:1,DIRECTION_COUNT:3,DIRECTION_INHERIT:0,DIRECTION_LTR:1,DIRECTION_RTL:2,DISPLAY_COUNT:2,DISPLAY_FLEX:0,DISPLAY_NONE:1,EDGE_COUNT:9,EDGE_LEFT:0,EDGE_TOP:1,EDGE_RIGHT:2,EDGE_BOTTOM:3,EDGE_START:4,EDGE_END:5,EDGE_HORIZONTAL:6,EDGE_VERTICAL:7,EDGE_ALL:8,EXPERIMENTAL_FEATURE_COUNT:1,EXPERIMENTAL_FEATURE_WEB_FLEX_BASIS:0,FLEX_DIRECTION_COUNT:4,FLEX_DIRECTION_COLUMN:0,FLEX_DIRECTION_COLUMN_REVERSE:1,FLEX_DIRECTION_ROW:2,FLEX_DIRECTION_ROW_REVERSE:3,JUSTIFY_COUNT:6,JUSTIFY_FLEX_START:0,JUSTIFY_CENTER:1,JUSTIFY_FLEX_END:2,JUSTIFY_SPACE_BETWEEN:3,JUSTIFY_SPACE_AROUND:4,JUSTIFY_SPACE_EVENLY:5,LOG_LEVEL_COUNT:6,LOG_LEVEL_ERROR:0,LOG_LEVEL_WARN:1,LOG_LEVEL_INFO:2,LOG_LEVEL_DEBUG:3,LOG_LEVEL_VERBOSE:4,LOG_LEVEL_FATAL:5,MEASURE_MODE_COUNT:3,MEASURE_MODE_UNDEFINED:0,MEASURE_MODE_EXACTLY:1,MEASURE_MODE_AT_MOST:2,NODE_TYPE_COUNT:2,NODE_TYPE_DEFAULT:0,NODE_TYPE_TEXT:1,OVERFLOW_COUNT:3,OVERFLOW_VISIBLE:0,OVERFLOW_HIDDEN:1,OVERFLOW_SCROLL:2,POSITION_TYPE_COUNT:2,POSITION_TYPE_RELATIVE:0,POSITION_TYPE_ABSOLUTE:1,PRINT_OPTIONS_COUNT:3,PRINT_OPTIONS_LAYOUT:1,PRINT_OPTIONS_STYLE:2,PRINT_OPTIONS_CHILDREN:4,UNIT_COUNT:4,UNIT_UNDEFINED:0,UNIT_POINT:1,UNIT_PERCENT:2,UNIT_AUTO:3,WRAP_COUNT:3,WRAP_NO_WRAP:0,WRAP_WRAP:1,WRAP_WRAP_REVERSE:2}},6401:(e,t,n)=>{"use strict";var r=n(7180),i=n(3354),o=!1,u=null;if(i({},(function(e,t){if(!o){if(o=!0,e)throw e;u=t}})),!o)throw new Error("Failed to load the yoga module - it needed to be loaded synchronously, but didn't");e.exports=r(u.bind,u.lib)},7180:(e,t,n)=>{"use strict";var r=Object.assign||function(e){for(var t=1;t"}}]),e}(),s=function(){function e(t,n){u(this,e),this.width=t,this.height=n}return i(e,null,[{key:"fromJS",value:function(t){return new e(t.width,t.height)}}]),i(e,[{key:"fromJS",value:function(e){e(this.width,this.height)}},{key:"toString",value:function(){return""}}]),e}(),c=function(){function e(t,n){u(this,e),this.unit=t,this.value=n}return i(e,[{key:"fromJS",value:function(e){e(this.unit,this.value)}},{key:"toString",value:function(){switch(this.unit){case a.UNIT_POINT:return String(this.value);case a.UNIT_PERCENT:return this.value+"%";case a.UNIT_AUTO:return"auto";default:return this.value+"?"}}},{key:"valueOf",value:function(){return this.value}}]),e}();e.exports=function(e,t){function n(e,t,n){var r=e[t];e[t]=function(){for(var e=arguments.length,t=Array(e),i=0;i1?t-1:0),i=1;i1&&void 0!==arguments[1]?arguments[1]:NaN,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:NaN,r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:a.DIRECTION_LTR;return e.call(this,t,n,r)})),r({Config:t.Config,Node:t.Node,Layout:e("Layout",l),Size:e("Size",s),Value:e("Value",c),getInstanceCount:function(){return t.getInstanceCount.apply(t,arguments)}},a)}},2357:e=>{"use strict";e.exports=require("assert")},6417:e=>{"use strict";e.exports=require("crypto")},8614:e=>{"use strict";e.exports=require("events")},5747:e=>{"use strict";e.exports=require("fs")},8605:e=>{"use strict";e.exports=require("http")},7211:e=>{"use strict";e.exports=require("https")},2282:e=>{"use strict";e.exports=require("module")},1631:e=>{"use strict";e.exports=require("net")},2087:e=>{"use strict";e.exports=require("os")},2413:e=>{"use strict";e.exports=require("stream")},4016:e=>{"use strict";e.exports=require("tls")},3867:e=>{"use strict";e.exports=require("tty")},8835:e=>{"use strict";e.exports=require("url")},8761:e=>{"use strict";e.exports=require("zlib")}},__webpack_module_cache__={};function __webpack_require__(e){if(__webpack_module_cache__[e])return __webpack_module_cache__[e].exports;var t=__webpack_module_cache__[e]={id:e,loaded:!1,exports:{}};return __webpack_modules__[e].call(t.exports,t,t.exports,__webpack_require__),t.loaded=!0,t.exports}return __webpack_require__.n=e=>{var t=e&&e.__esModule?()=>e.default:()=>e;return __webpack_require__.d(t,{a:t}),t},__webpack_require__.d=(e,t)=>{for(var n in t)__webpack_require__.o(t,n)&&!__webpack_require__.o(e,n)&&Object.defineProperty(e,n,{enumerable:!0,get:t[n]})},__webpack_require__.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),__webpack_require__.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},__webpack_require__.nmd=e=>(e.paths=[],e.children||(e.children=[]),e),__webpack_require__(7560)})(); + */ return plugin; } -}; \ No newline at end of file +}; diff --git a/.yarn/plugins/@yarnpkg/plugin-typescript.cjs b/.yarn/plugins/@yarnpkg/plugin-typescript.cjs new file mode 100644 index 000000000..5c1859e0b --- /dev/null +++ b/.yarn/plugins/@yarnpkg/plugin-typescript.cjs @@ -0,0 +1,9 @@ +/* eslint-disable */ +//prettier-ignore +module.exports = { +name: "@yarnpkg/plugin-typescript", +factory: function (require) { +var plugin=(()=>{var Ft=Object.create,H=Object.defineProperty,Bt=Object.defineProperties,Kt=Object.getOwnPropertyDescriptor,zt=Object.getOwnPropertyDescriptors,Gt=Object.getOwnPropertyNames,Q=Object.getOwnPropertySymbols,$t=Object.getPrototypeOf,ne=Object.prototype.hasOwnProperty,De=Object.prototype.propertyIsEnumerable;var Re=(e,t,r)=>t in e?H(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r,u=(e,t)=>{for(var r in t||(t={}))ne.call(t,r)&&Re(e,r,t[r]);if(Q)for(var r of Q(t))De.call(t,r)&&Re(e,r,t[r]);return e},g=(e,t)=>Bt(e,zt(t)),Lt=e=>H(e,"__esModule",{value:!0});var R=(e,t)=>{var r={};for(var s in e)ne.call(e,s)&&t.indexOf(s)<0&&(r[s]=e[s]);if(e!=null&&Q)for(var s of Q(e))t.indexOf(s)<0&&De.call(e,s)&&(r[s]=e[s]);return r};var I=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),Vt=(e,t)=>{for(var r in t)H(e,r,{get:t[r],enumerable:!0})},Qt=(e,t,r)=>{if(t&&typeof t=="object"||typeof t=="function")for(let s of Gt(t))!ne.call(e,s)&&s!=="default"&&H(e,s,{get:()=>t[s],enumerable:!(r=Kt(t,s))||r.enumerable});return e},C=e=>Qt(Lt(H(e!=null?Ft($t(e)):{},"default",e&&e.__esModule&&"default"in e?{get:()=>e.default,enumerable:!0}:{value:e,enumerable:!0})),e);var xe=I(J=>{"use strict";Object.defineProperty(J,"__esModule",{value:!0});function _(e){let t=[...e.caches],r=t.shift();return r===void 0?ve():{get(s,n,a={miss:()=>Promise.resolve()}){return r.get(s,n,a).catch(()=>_({caches:t}).get(s,n,a))},set(s,n){return r.set(s,n).catch(()=>_({caches:t}).set(s,n))},delete(s){return r.delete(s).catch(()=>_({caches:t}).delete(s))},clear(){return r.clear().catch(()=>_({caches:t}).clear())}}}function ve(){return{get(e,t,r={miss:()=>Promise.resolve()}){return t().then(n=>Promise.all([n,r.miss(n)])).then(([n])=>n)},set(e,t){return Promise.resolve(t)},delete(e){return Promise.resolve()},clear(){return Promise.resolve()}}}J.createFallbackableCache=_;J.createNullCache=ve});var Ee=I(($s,qe)=>{qe.exports=xe()});var Te=I(ae=>{"use strict";Object.defineProperty(ae,"__esModule",{value:!0});function Jt(e={serializable:!0}){let t={};return{get(r,s,n={miss:()=>Promise.resolve()}){let a=JSON.stringify(r);if(a in t)return Promise.resolve(e.serializable?JSON.parse(t[a]):t[a]);let o=s(),d=n&&n.miss||(()=>Promise.resolve());return o.then(y=>d(y)).then(()=>o)},set(r,s){return t[JSON.stringify(r)]=e.serializable?JSON.stringify(s):s,Promise.resolve(s)},delete(r){return delete t[JSON.stringify(r)],Promise.resolve()},clear(){return t={},Promise.resolve()}}}ae.createInMemoryCache=Jt});var we=I((Vs,Me)=>{Me.exports=Te()});var Ce=I(M=>{"use strict";Object.defineProperty(M,"__esModule",{value:!0});function Xt(e,t,r){let s={"x-algolia-api-key":r,"x-algolia-application-id":t};return{headers(){return e===oe.WithinHeaders?s:{}},queryParameters(){return e===oe.WithinQueryParameters?s:{}}}}function Yt(e){let t=0,r=()=>(t++,new Promise(s=>{setTimeout(()=>{s(e(r))},Math.min(100*t,1e3))}));return e(r)}function ke(e,t=(r,s)=>Promise.resolve()){return Object.assign(e,{wait(r){return ke(e.then(s=>Promise.all([t(s,r),s])).then(s=>s[1]))}})}function Zt(e){let t=e.length-1;for(t;t>0;t--){let r=Math.floor(Math.random()*(t+1)),s=e[t];e[t]=e[r],e[r]=s}return e}function er(e,t){return Object.keys(t!==void 0?t:{}).forEach(r=>{e[r]=t[r](e)}),e}function tr(e,...t){let r=0;return e.replace(/%s/g,()=>encodeURIComponent(t[r++]))}var rr="4.2.0",sr=e=>()=>e.transporter.requester.destroy(),oe={WithinQueryParameters:0,WithinHeaders:1};M.AuthMode=oe;M.addMethods=er;M.createAuth=Xt;M.createRetryablePromise=Yt;M.createWaitablePromise=ke;M.destroy=sr;M.encode=tr;M.shuffle=Zt;M.version=rr});var F=I((Js,Ue)=>{Ue.exports=Ce()});var Ne=I(ie=>{"use strict";Object.defineProperty(ie,"__esModule",{value:!0});var nr={Delete:"DELETE",Get:"GET",Post:"POST",Put:"PUT"};ie.MethodEnum=nr});var B=I((Ys,We)=>{We.exports=Ne()});var Ze=I(A=>{"use strict";Object.defineProperty(A,"__esModule",{value:!0});var He=B();function ce(e,t){let r=e||{},s=r.data||{};return Object.keys(r).forEach(n=>{["timeout","headers","queryParameters","data","cacheable"].indexOf(n)===-1&&(s[n]=r[n])}),{data:Object.entries(s).length>0?s:void 0,timeout:r.timeout||t,headers:r.headers||{},queryParameters:r.queryParameters||{},cacheable:r.cacheable}}var X={Read:1,Write:2,Any:3},U={Up:1,Down:2,Timeouted:3},_e=2*60*1e3;function ue(e,t=U.Up){return g(u({},e),{status:t,lastUpdate:Date.now()})}function Fe(e){return e.status===U.Up||Date.now()-e.lastUpdate>_e}function Be(e){return e.status===U.Timeouted&&Date.now()-e.lastUpdate<=_e}function le(e){return{protocol:e.protocol||"https",url:e.url,accept:e.accept||X.Any}}function ar(e,t){return Promise.all(t.map(r=>e.get(r,()=>Promise.resolve(ue(r))))).then(r=>{let s=r.filter(d=>Fe(d)),n=r.filter(d=>Be(d)),a=[...s,...n],o=a.length>0?a.map(d=>le(d)):t;return{getTimeout(d,y){return(n.length===0&&d===0?1:n.length+3+d)*y},statelessHosts:o}})}var or=({isTimedOut:e,status:t})=>!e&&~~t==0,ir=e=>{let t=e.status;return e.isTimedOut||or(e)||~~(t/100)!=2&&~~(t/100)!=4},cr=({status:e})=>~~(e/100)==2,ur=(e,t)=>ir(e)?t.onRetry(e):cr(e)?t.onSucess(e):t.onFail(e);function Qe(e,t,r,s){let n=[],a=$e(r,s),o=Le(e,s),d=r.method,y=r.method!==He.MethodEnum.Get?{}:u(u({},r.data),s.data),b=u(u(u({"x-algolia-agent":e.userAgent.value},e.queryParameters),y),s.queryParameters),f=0,p=(h,S)=>{let O=h.pop();if(O===void 0)throw Ve(de(n));let P={data:a,headers:o,method:d,url:Ge(O,r.path,b),connectTimeout:S(f,e.timeouts.connect),responseTimeout:S(f,s.timeout)},x=j=>{let T={request:P,response:j,host:O,triesLeft:h.length};return n.push(T),T},v={onSucess:j=>Ke(j),onRetry(j){let T=x(j);return j.isTimedOut&&f++,Promise.all([e.logger.info("Retryable failure",pe(T)),e.hostsCache.set(O,ue(O,j.isTimedOut?U.Timeouted:U.Down))]).then(()=>p(h,S))},onFail(j){throw x(j),ze(j,de(n))}};return e.requester.send(P).then(j=>ur(j,v))};return ar(e.hostsCache,t).then(h=>p([...h.statelessHosts].reverse(),h.getTimeout))}function lr(e){let{hostsCache:t,logger:r,requester:s,requestsCache:n,responsesCache:a,timeouts:o,userAgent:d,hosts:y,queryParameters:b,headers:f}=e,p={hostsCache:t,logger:r,requester:s,requestsCache:n,responsesCache:a,timeouts:o,userAgent:d,headers:f,queryParameters:b,hosts:y.map(h=>le(h)),read(h,S){let O=ce(S,p.timeouts.read),P=()=>Qe(p,p.hosts.filter(j=>(j.accept&X.Read)!=0),h,O);if((O.cacheable!==void 0?O.cacheable:h.cacheable)!==!0)return P();let v={request:h,mappedRequestOptions:O,transporter:{queryParameters:p.queryParameters,headers:p.headers}};return p.responsesCache.get(v,()=>p.requestsCache.get(v,()=>p.requestsCache.set(v,P()).then(j=>Promise.all([p.requestsCache.delete(v),j]),j=>Promise.all([p.requestsCache.delete(v),Promise.reject(j)])).then(([j,T])=>T)),{miss:j=>p.responsesCache.set(v,j)})},write(h,S){return Qe(p,p.hosts.filter(O=>(O.accept&X.Write)!=0),h,ce(S,p.timeouts.write))}};return p}function dr(e){let t={value:`Algolia for JavaScript (${e})`,add(r){let s=`; ${r.segment}${r.version!==void 0?` (${r.version})`:""}`;return t.value.indexOf(s)===-1&&(t.value=`${t.value}${s}`),t}};return t}function Ke(e){try{return JSON.parse(e.content)}catch(t){throw Je(t.message,e)}}function ze({content:e,status:t},r){let s=e;try{s=JSON.parse(e).message}catch(n){}return Xe(s,t,r)}function pr(e,...t){let r=0;return e.replace(/%s/g,()=>encodeURIComponent(t[r++]))}function Ge(e,t,r){let s=Ye(r),n=`${e.protocol}://${e.url}/${t.charAt(0)==="/"?t.substr(1):t}`;return s.length&&(n+=`?${s}`),n}function Ye(e){let t=r=>Object.prototype.toString.call(r)==="[object Object]"||Object.prototype.toString.call(r)==="[object Array]";return Object.keys(e).map(r=>pr("%s=%s",r,t(e[r])?JSON.stringify(e[r]):e[r])).join("&")}function $e(e,t){if(e.method===He.MethodEnum.Get||e.data===void 0&&t.data===void 0)return;let r=Array.isArray(e.data)?e.data:u(u({},e.data),t.data);return JSON.stringify(r)}function Le(e,t){let r=u(u({},e.headers),t.headers),s={};return Object.keys(r).forEach(n=>{let a=r[n];s[n.toLowerCase()]=a}),s}function de(e){return e.map(t=>pe(t))}function pe(e){let t=e.request.headers["x-algolia-api-key"]?{"x-algolia-api-key":"*****"}:{};return g(u({},e),{request:g(u({},e.request),{headers:u(u({},e.request.headers),t)})})}function Xe(e,t,r){return{name:"ApiError",message:e,status:t,transporterStackTrace:r}}function Je(e,t){return{name:"DeserializationError",message:e,response:t}}function Ve(e){return{name:"RetryError",message:"Unreachable hosts - your application id may be incorrect. If the error persists, contact support@algolia.com.",transporterStackTrace:e}}A.CallEnum=X;A.HostStatusEnum=U;A.createApiError=Xe;A.createDeserializationError=Je;A.createMappedRequestOptions=ce;A.createRetryError=Ve;A.createStatefulHost=ue;A.createStatelessHost=le;A.createTransporter=lr;A.createUserAgent=dr;A.deserializeFailure=ze;A.deserializeSuccess=Ke;A.isStatefulHostTimeouted=Be;A.isStatefulHostUp=Fe;A.serializeData=$e;A.serializeHeaders=Le;A.serializeQueryParameters=Ye;A.serializeUrl=Ge;A.stackFrameWithoutCredentials=pe;A.stackTraceWithoutCredentials=de});var K=I((en,et)=>{et.exports=Ze()});var tt=I(w=>{"use strict";Object.defineProperty(w,"__esModule",{value:!0});var N=F(),mr=K(),z=B(),hr=e=>{let t=e.region||"us",r=N.createAuth(N.AuthMode.WithinHeaders,e.appId,e.apiKey),s=mr.createTransporter(g(u({hosts:[{url:`analytics.${t}.algolia.com`}]},e),{headers:u(g(u({},r.headers()),{"content-type":"application/json"}),e.headers),queryParameters:u(u({},r.queryParameters()),e.queryParameters)})),n=e.appId;return N.addMethods({appId:n,transporter:s},e.methods)},yr=e=>(t,r)=>e.transporter.write({method:z.MethodEnum.Post,path:"2/abtests",data:t},r),gr=e=>(t,r)=>e.transporter.write({method:z.MethodEnum.Delete,path:N.encode("2/abtests/%s",t)},r),fr=e=>(t,r)=>e.transporter.read({method:z.MethodEnum.Get,path:N.encode("2/abtests/%s",t)},r),br=e=>t=>e.transporter.read({method:z.MethodEnum.Get,path:"2/abtests"},t),Pr=e=>(t,r)=>e.transporter.write({method:z.MethodEnum.Post,path:N.encode("2/abtests/%s/stop",t)},r);w.addABTest=yr;w.createAnalyticsClient=hr;w.deleteABTest=gr;w.getABTest=fr;w.getABTests=br;w.stopABTest=Pr});var st=I((rn,rt)=>{rt.exports=tt()});var at=I(G=>{"use strict";Object.defineProperty(G,"__esModule",{value:!0});var me=F(),jr=K(),nt=B(),Or=e=>{let t=e.region||"us",r=me.createAuth(me.AuthMode.WithinHeaders,e.appId,e.apiKey),s=jr.createTransporter(g(u({hosts:[{url:`recommendation.${t}.algolia.com`}]},e),{headers:u(g(u({},r.headers()),{"content-type":"application/json"}),e.headers),queryParameters:u(u({},r.queryParameters()),e.queryParameters)}));return me.addMethods({appId:e.appId,transporter:s},e.methods)},Ir=e=>t=>e.transporter.read({method:nt.MethodEnum.Get,path:"1/strategies/personalization"},t),Ar=e=>(t,r)=>e.transporter.write({method:nt.MethodEnum.Post,path:"1/strategies/personalization",data:t},r);G.createRecommendationClient=Or;G.getPersonalizationStrategy=Ir;G.setPersonalizationStrategy=Ar});var it=I((nn,ot)=>{ot.exports=at()});var jt=I(i=>{"use strict";Object.defineProperty(i,"__esModule",{value:!0});var l=F(),q=K(),m=B(),Sr=require("crypto");function Y(e){let t=r=>e.request(r).then(s=>{if(e.batch!==void 0&&e.batch(s.hits),!e.shouldStop(s))return s.cursor?t({cursor:s.cursor}):t({page:(r.page||0)+1})});return t({})}var Dr=e=>{let t=e.appId,r=l.createAuth(e.authMode!==void 0?e.authMode:l.AuthMode.WithinHeaders,t,e.apiKey),s=q.createTransporter(g(u({hosts:[{url:`${t}-dsn.algolia.net`,accept:q.CallEnum.Read},{url:`${t}.algolia.net`,accept:q.CallEnum.Write}].concat(l.shuffle([{url:`${t}-1.algolianet.com`},{url:`${t}-2.algolianet.com`},{url:`${t}-3.algolianet.com`}]))},e),{headers:u(g(u({},r.headers()),{"content-type":"application/x-www-form-urlencoded"}),e.headers),queryParameters:u(u({},r.queryParameters()),e.queryParameters)})),n={transporter:s,appId:t,addAlgoliaAgent(a,o){s.userAgent.add({segment:a,version:o})},clearCache(){return Promise.all([s.requestsCache.clear(),s.responsesCache.clear()]).then(()=>{})}};return l.addMethods(n,e.methods)};function ct(){return{name:"MissingObjectIDError",message:"All objects must have an unique objectID (like a primary key) to be valid. Algolia is also able to generate objectIDs automatically but *it's not recommended*. To do it, use the `{'autoGenerateObjectIDIfNotExist': true}` option."}}function ut(){return{name:"ObjectNotFoundError",message:"Object not found."}}function lt(){return{name:"ValidUntilNotFoundError",message:"ValidUntil not found in given secured api key."}}var Rr=e=>(t,r)=>{let d=r||{},{queryParameters:s}=d,n=R(d,["queryParameters"]),a=u({acl:t},s!==void 0?{queryParameters:s}:{}),o=(y,b)=>l.createRetryablePromise(f=>$(e)(y.key,b).catch(p=>{if(p.status!==404)throw p;return f()}));return l.createWaitablePromise(e.transporter.write({method:m.MethodEnum.Post,path:"1/keys",data:a},n),o)},vr=e=>(t,r,s)=>{let n=q.createMappedRequestOptions(s);return n.queryParameters["X-Algolia-User-ID"]=t,e.transporter.write({method:m.MethodEnum.Post,path:"1/clusters/mapping",data:{cluster:r}},n)},xr=e=>(t,r,s)=>e.transporter.write({method:m.MethodEnum.Post,path:"1/clusters/mapping/batch",data:{users:t,cluster:r}},s),Z=e=>(t,r,s)=>{let n=(a,o)=>L(e)(t,{methods:{waitTask:D}}).waitTask(a.taskID,o);return l.createWaitablePromise(e.transporter.write({method:m.MethodEnum.Post,path:l.encode("1/indexes/%s/operation",t),data:{operation:"copy",destination:r}},s),n)},qr=e=>(t,r,s)=>Z(e)(t,r,g(u({},s),{scope:[ee.Rules]})),Er=e=>(t,r,s)=>Z(e)(t,r,g(u({},s),{scope:[ee.Settings]})),Tr=e=>(t,r,s)=>Z(e)(t,r,g(u({},s),{scope:[ee.Synonyms]})),Mr=e=>(t,r)=>{let s=(n,a)=>l.createRetryablePromise(o=>$(e)(t,a).then(o).catch(d=>{if(d.status!==404)throw d}));return l.createWaitablePromise(e.transporter.write({method:m.MethodEnum.Delete,path:l.encode("1/keys/%s",t)},r),s)},wr=()=>(e,t)=>{let r=q.serializeQueryParameters(t),s=Sr.createHmac("sha256",e).update(r).digest("hex");return Buffer.from(s+r).toString("base64")},$=e=>(t,r)=>e.transporter.read({method:m.MethodEnum.Get,path:l.encode("1/keys/%s",t)},r),kr=e=>t=>e.transporter.read({method:m.MethodEnum.Get,path:"1/logs"},t),Cr=()=>e=>{let t=Buffer.from(e,"base64").toString("ascii"),r=/validUntil=(\d+)/,s=t.match(r);if(s===null)throw lt();return parseInt(s[1],10)-Math.round(new Date().getTime()/1e3)},Ur=e=>t=>e.transporter.read({method:m.MethodEnum.Get,path:"1/clusters/mapping/top"},t),Nr=e=>(t,r)=>e.transporter.read({method:m.MethodEnum.Get,path:l.encode("1/clusters/mapping/%s",t)},r),Wr=e=>t=>{let n=t||{},{retrieveMappings:r}=n,s=R(n,["retrieveMappings"]);return r===!0&&(s.getClusters=!0),e.transporter.read({method:m.MethodEnum.Get,path:"1/clusters/mapping/pending"},s)},L=e=>(t,r={})=>{let s={transporter:e.transporter,appId:e.appId,indexName:t};return l.addMethods(s,r.methods)},Hr=e=>t=>e.transporter.read({method:m.MethodEnum.Get,path:"1/keys"},t),_r=e=>t=>e.transporter.read({method:m.MethodEnum.Get,path:"1/clusters"},t),Fr=e=>t=>e.transporter.read({method:m.MethodEnum.Get,path:"1/indexes"},t),Br=e=>t=>e.transporter.read({method:m.MethodEnum.Get,path:"1/clusters/mapping"},t),Kr=e=>(t,r,s)=>{let n=(a,o)=>L(e)(t,{methods:{waitTask:D}}).waitTask(a.taskID,o);return l.createWaitablePromise(e.transporter.write({method:m.MethodEnum.Post,path:l.encode("1/indexes/%s/operation",t),data:{operation:"move",destination:r}},s),n)},zr=e=>(t,r)=>{let s=(n,a)=>Promise.all(Object.keys(n.taskID).map(o=>L(e)(o,{methods:{waitTask:D}}).waitTask(n.taskID[o],a)));return l.createWaitablePromise(e.transporter.write({method:m.MethodEnum.Post,path:"1/indexes/*/batch",data:{requests:t}},r),s)},Gr=e=>(t,r)=>e.transporter.read({method:m.MethodEnum.Post,path:"1/indexes/*/objects",data:{requests:t}},r),$r=e=>(t,r)=>{let s=t.map(n=>g(u({},n),{params:q.serializeQueryParameters(n.params||{})}));return e.transporter.read({method:m.MethodEnum.Post,path:"1/indexes/*/queries",data:{requests:s},cacheable:!0},r)},Lr=e=>(t,r)=>Promise.all(t.map(s=>{let d=s.params,{facetName:n,facetQuery:a}=d,o=R(d,["facetName","facetQuery"]);return L(e)(s.indexName,{methods:{searchForFacetValues:dt}}).searchForFacetValues(n,a,u(u({},r),o))})),Vr=e=>(t,r)=>{let s=q.createMappedRequestOptions(r);return s.queryParameters["X-Algolia-User-ID"]=t,e.transporter.write({method:m.MethodEnum.Delete,path:"1/clusters/mapping"},s)},Qr=e=>(t,r)=>{let s=(n,a)=>l.createRetryablePromise(o=>$(e)(t,a).catch(d=>{if(d.status!==404)throw d;return o()}));return l.createWaitablePromise(e.transporter.write({method:m.MethodEnum.Post,path:l.encode("1/keys/%s/restore",t)},r),s)},Jr=e=>(t,r)=>e.transporter.read({method:m.MethodEnum.Post,path:"1/clusters/mapping/search",data:{query:t}},r),Xr=e=>(t,r)=>{let s=Object.assign({},r),f=r||{},{queryParameters:n}=f,a=R(f,["queryParameters"]),o=n?{queryParameters:n}:{},d=["acl","indexes","referers","restrictSources","queryParameters","description","maxQueriesPerIPPerHour","maxHitsPerQuery"],y=p=>Object.keys(s).filter(h=>d.indexOf(h)!==-1).every(h=>p[h]===s[h]),b=(p,h)=>l.createRetryablePromise(S=>$(e)(t,h).then(O=>y(O)?Promise.resolve():S()));return l.createWaitablePromise(e.transporter.write({method:m.MethodEnum.Put,path:l.encode("1/keys/%s",t),data:o},a),b)},pt=e=>(t,r)=>{let s=(n,a)=>D(e)(n.taskID,a);return l.createWaitablePromise(e.transporter.write({method:m.MethodEnum.Post,path:l.encode("1/indexes/%s/batch",e.indexName),data:{requests:t}},r),s)},Yr=e=>t=>Y(g(u({},t),{shouldStop:r=>r.cursor===void 0,request:r=>e.transporter.read({method:m.MethodEnum.Post,path:l.encode("1/indexes/%s/browse",e.indexName),data:r},t)})),Zr=e=>t=>{let r=u({hitsPerPage:1e3},t);return Y(g(u({},r),{shouldStop:s=>s.hits.lengthg(u({},n),{hits:n.hits.map(a=>(delete a._highlightResult,a))}))}}))},es=e=>t=>{let r=u({hitsPerPage:1e3},t);return Y(g(u({},r),{shouldStop:s=>s.hits.lengthg(u({},n),{hits:n.hits.map(a=>(delete a._highlightResult,a))}))}}))},te=e=>(t,r,s)=>{let y=s||{},{batchSize:n}=y,a=R(y,["batchSize"]),o={taskIDs:[],objectIDs:[]},d=(b=0)=>{let f=[],p;for(p=b;p({action:r,body:h})),a).then(h=>(o.objectIDs=o.objectIDs.concat(h.objectIDs),o.taskIDs.push(h.taskID),p++,d(p)))};return l.createWaitablePromise(d(),(b,f)=>Promise.all(b.taskIDs.map(p=>D(e)(p,f))))},ts=e=>t=>l.createWaitablePromise(e.transporter.write({method:m.MethodEnum.Post,path:l.encode("1/indexes/%s/clear",e.indexName)},t),(r,s)=>D(e)(r.taskID,s)),rs=e=>t=>{let a=t||{},{forwardToReplicas:r}=a,s=R(a,["forwardToReplicas"]),n=q.createMappedRequestOptions(s);return r&&(n.queryParameters.forwardToReplicas=1),l.createWaitablePromise(e.transporter.write({method:m.MethodEnum.Post,path:l.encode("1/indexes/%s/rules/clear",e.indexName)},n),(o,d)=>D(e)(o.taskID,d))},ss=e=>t=>{let a=t||{},{forwardToReplicas:r}=a,s=R(a,["forwardToReplicas"]),n=q.createMappedRequestOptions(s);return r&&(n.queryParameters.forwardToReplicas=1),l.createWaitablePromise(e.transporter.write({method:m.MethodEnum.Post,path:l.encode("1/indexes/%s/synonyms/clear",e.indexName)},n),(o,d)=>D(e)(o.taskID,d))},ns=e=>(t,r)=>l.createWaitablePromise(e.transporter.write({method:m.MethodEnum.Post,path:l.encode("1/indexes/%s/deleteByQuery",e.indexName),data:t},r),(s,n)=>D(e)(s.taskID,n)),as=e=>t=>l.createWaitablePromise(e.transporter.write({method:m.MethodEnum.Delete,path:l.encode("1/indexes/%s",e.indexName)},t),(r,s)=>D(e)(r.taskID,s)),os=e=>(t,r)=>l.createWaitablePromise(yt(e)([t],r).then(s=>({taskID:s.taskIDs[0]})),(s,n)=>D(e)(s.taskID,n)),yt=e=>(t,r)=>{let s=t.map(n=>({objectID:n}));return te(e)(s,k.DeleteObject,r)},is=e=>(t,r)=>{let o=r||{},{forwardToReplicas:s}=o,n=R(o,["forwardToReplicas"]),a=q.createMappedRequestOptions(n);return s&&(a.queryParameters.forwardToReplicas=1),l.createWaitablePromise(e.transporter.write({method:m.MethodEnum.Delete,path:l.encode("1/indexes/%s/rules/%s",e.indexName,t)},a),(d,y)=>D(e)(d.taskID,y))},cs=e=>(t,r)=>{let o=r||{},{forwardToReplicas:s}=o,n=R(o,["forwardToReplicas"]),a=q.createMappedRequestOptions(n);return s&&(a.queryParameters.forwardToReplicas=1),l.createWaitablePromise(e.transporter.write({method:m.MethodEnum.Delete,path:l.encode("1/indexes/%s/synonyms/%s",e.indexName,t)},a),(d,y)=>D(e)(d.taskID,y))},us=e=>t=>gt(e)(t).then(()=>!0).catch(r=>{if(r.status!==404)throw r;return!1}),ls=e=>(t,r)=>{let y=r||{},{query:s,paginate:n}=y,a=R(y,["query","paginate"]),o=0,d=()=>ft(e)(s||"",g(u({},a),{page:o})).then(b=>{for(let[f,p]of Object.entries(b.hits))if(t(p))return{object:p,position:parseInt(f,10),page:o};if(o++,n===!1||o>=b.nbPages)throw ut();return d()});return d()},ds=e=>(t,r)=>e.transporter.read({method:m.MethodEnum.Get,path:l.encode("1/indexes/%s/%s",e.indexName,t)},r),ps=()=>(e,t)=>{for(let[r,s]of Object.entries(e.hits))if(s.objectID===t)return parseInt(r,10);return-1},ms=e=>(t,r)=>{let o=r||{},{attributesToRetrieve:s}=o,n=R(o,["attributesToRetrieve"]),a=t.map(d=>u({indexName:e.indexName,objectID:d},s?{attributesToRetrieve:s}:{}));return e.transporter.read({method:m.MethodEnum.Post,path:"1/indexes/*/objects",data:{requests:a}},n)},hs=e=>(t,r)=>e.transporter.read({method:m.MethodEnum.Get,path:l.encode("1/indexes/%s/rules/%s",e.indexName,t)},r),gt=e=>t=>e.transporter.read({method:m.MethodEnum.Get,path:l.encode("1/indexes/%s/settings",e.indexName),data:{getVersion:2}},t),ys=e=>(t,r)=>e.transporter.read({method:m.MethodEnum.Get,path:l.encode("1/indexes/%s/synonyms/%s",e.indexName,t)},r),bt=e=>(t,r)=>e.transporter.read({method:m.MethodEnum.Get,path:l.encode("1/indexes/%s/task/%s",e.indexName,t.toString())},r),gs=e=>(t,r)=>l.createWaitablePromise(Pt(e)([t],r).then(s=>({objectID:s.objectIDs[0],taskID:s.taskIDs[0]})),(s,n)=>D(e)(s.taskID,n)),Pt=e=>(t,r)=>{let o=r||{},{createIfNotExists:s}=o,n=R(o,["createIfNotExists"]),a=s?k.PartialUpdateObject:k.PartialUpdateObjectNoCreate;return te(e)(t,a,n)},fs=e=>(t,r)=>{let O=r||{},{safe:s,autoGenerateObjectIDIfNotExist:n,batchSize:a}=O,o=R(O,["safe","autoGenerateObjectIDIfNotExist","batchSize"]),d=(P,x,v,j)=>l.createWaitablePromise(e.transporter.write({method:m.MethodEnum.Post,path:l.encode("1/indexes/%s/operation",P),data:{operation:v,destination:x}},j),(T,V)=>D(e)(T.taskID,V)),y=Math.random().toString(36).substring(7),b=`${e.indexName}_tmp_${y}`,f=he({appId:e.appId,transporter:e.transporter,indexName:b}),p=[],h=d(e.indexName,b,"copy",g(u({},o),{scope:["settings","synonyms","rules"]}));p.push(h);let S=(s?h.wait(o):h).then(()=>{let P=f(t,g(u({},o),{autoGenerateObjectIDIfNotExist:n,batchSize:a}));return p.push(P),s?P.wait(o):P}).then(()=>{let P=d(b,e.indexName,"move",o);return p.push(P),s?P.wait(o):P}).then(()=>Promise.all(p)).then(([P,x,v])=>({objectIDs:x.objectIDs,taskIDs:[P.taskID,...x.taskIDs,v.taskID]}));return l.createWaitablePromise(S,(P,x)=>Promise.all(p.map(v=>v.wait(x))))},bs=e=>(t,r)=>ye(e)(t,g(u({},r),{clearExistingRules:!0})),Ps=e=>(t,r)=>ge(e)(t,g(u({},r),{replaceExistingSynonyms:!0})),js=e=>(t,r)=>l.createWaitablePromise(he(e)([t],r).then(s=>({objectID:s.objectIDs[0],taskID:s.taskIDs[0]})),(s,n)=>D(e)(s.taskID,n)),he=e=>(t,r)=>{let o=r||{},{autoGenerateObjectIDIfNotExist:s}=o,n=R(o,["autoGenerateObjectIDIfNotExist"]),a=s?k.AddObject:k.UpdateObject;if(a===k.UpdateObject){for(let d of t)if(d.objectID===void 0)return l.createWaitablePromise(Promise.reject(ct()))}return te(e)(t,a,n)},Os=e=>(t,r)=>ye(e)([t],r),ye=e=>(t,r)=>{let d=r||{},{forwardToReplicas:s,clearExistingRules:n}=d,a=R(d,["forwardToReplicas","clearExistingRules"]),o=q.createMappedRequestOptions(a);return s&&(o.queryParameters.forwardToReplicas=1),n&&(o.queryParameters.clearExistingRules=1),l.createWaitablePromise(e.transporter.write({method:m.MethodEnum.Post,path:l.encode("1/indexes/%s/rules/batch",e.indexName),data:t},o),(y,b)=>D(e)(y.taskID,b))},Is=e=>(t,r)=>ge(e)([t],r),ge=e=>(t,r)=>{let d=r||{},{forwardToReplicas:s,replaceExistingSynonyms:n}=d,a=R(d,["forwardToReplicas","replaceExistingSynonyms"]),o=q.createMappedRequestOptions(a);return s&&(o.queryParameters.forwardToReplicas=1),n&&(o.queryParameters.replaceExistingSynonyms=1),l.createWaitablePromise(e.transporter.write({method:m.MethodEnum.Post,path:l.encode("1/indexes/%s/synonyms/batch",e.indexName),data:t},o),(y,b)=>D(e)(y.taskID,b))},ft=e=>(t,r)=>e.transporter.read({method:m.MethodEnum.Post,path:l.encode("1/indexes/%s/query",e.indexName),data:{query:t},cacheable:!0},r),dt=e=>(t,r,s)=>e.transporter.read({method:m.MethodEnum.Post,path:l.encode("1/indexes/%s/facets/%s/query",e.indexName,t),data:{facetQuery:r},cacheable:!0},s),mt=e=>(t,r)=>e.transporter.read({method:m.MethodEnum.Post,path:l.encode("1/indexes/%s/rules/search",e.indexName),data:{query:t}},r),ht=e=>(t,r)=>e.transporter.read({method:m.MethodEnum.Post,path:l.encode("1/indexes/%s/synonyms/search",e.indexName),data:{query:t}},r),As=e=>(t,r)=>{let o=r||{},{forwardToReplicas:s}=o,n=R(o,["forwardToReplicas"]),a=q.createMappedRequestOptions(n);return s&&(a.queryParameters.forwardToReplicas=1),l.createWaitablePromise(e.transporter.write({method:m.MethodEnum.Put,path:l.encode("1/indexes/%s/settings",e.indexName),data:t},a),(d,y)=>D(e)(d.taskID,y))},D=e=>(t,r)=>l.createRetryablePromise(s=>bt(e)(t,r).then(n=>n.status!=="published"?s():void 0)),Ss={AddObject:"addObject",Analytics:"analytics",Browser:"browse",DeleteIndex:"deleteIndex",DeleteObject:"deleteObject",EditSettings:"editSettings",ListIndexes:"listIndexes",Logs:"logs",Recommendation:"recommendation",Search:"search",SeeUnretrievableAttributes:"seeUnretrievableAttributes",Settings:"settings",Usage:"usage"},k={AddObject:"addObject",UpdateObject:"updateObject",PartialUpdateObject:"partialUpdateObject",PartialUpdateObjectNoCreate:"partialUpdateObjectNoCreate",DeleteObject:"deleteObject"},ee={Settings:"settings",Synonyms:"synonyms",Rules:"rules"},Ds={None:"none",StopIfEnoughMatches:"stopIfEnoughMatches"},Rs={Synonym:"synonym",OneWaySynonym:"oneWaySynonym",AltCorrection1:"altCorrection1",AltCorrection2:"altCorrection2",Placeholder:"placeholder"};i.ApiKeyACLEnum=Ss;i.BatchActionEnum=k;i.ScopeEnum=ee;i.StrategyEnum=Ds;i.SynonymEnum=Rs;i.addApiKey=Rr;i.assignUserID=vr;i.assignUserIDs=xr;i.batch=pt;i.browseObjects=Yr;i.browseRules=Zr;i.browseSynonyms=es;i.chunkedBatch=te;i.clearObjects=ts;i.clearRules=rs;i.clearSynonyms=ss;i.copyIndex=Z;i.copyRules=qr;i.copySettings=Er;i.copySynonyms=Tr;i.createBrowsablePromise=Y;i.createMissingObjectIDError=ct;i.createObjectNotFoundError=ut;i.createSearchClient=Dr;i.createValidUntilNotFoundError=lt;i.deleteApiKey=Mr;i.deleteBy=ns;i.deleteIndex=as;i.deleteObject=os;i.deleteObjects=yt;i.deleteRule=is;i.deleteSynonym=cs;i.exists=us;i.findObject=ls;i.generateSecuredApiKey=wr;i.getApiKey=$;i.getLogs=kr;i.getObject=ds;i.getObjectPosition=ps;i.getObjects=ms;i.getRule=hs;i.getSecuredApiKeyRemainingValidity=Cr;i.getSettings=gt;i.getSynonym=ys;i.getTask=bt;i.getTopUserIDs=Ur;i.getUserID=Nr;i.hasPendingMappings=Wr;i.initIndex=L;i.listApiKeys=Hr;i.listClusters=_r;i.listIndices=Fr;i.listUserIDs=Br;i.moveIndex=Kr;i.multipleBatch=zr;i.multipleGetObjects=Gr;i.multipleQueries=$r;i.multipleSearchForFacetValues=Lr;i.partialUpdateObject=gs;i.partialUpdateObjects=Pt;i.removeUserID=Vr;i.replaceAllObjects=fs;i.replaceAllRules=bs;i.replaceAllSynonyms=Ps;i.restoreApiKey=Qr;i.saveObject=js;i.saveObjects=he;i.saveRule=Os;i.saveRules=ye;i.saveSynonym=Is;i.saveSynonyms=ge;i.search=ft;i.searchForFacetValues=dt;i.searchRules=mt;i.searchSynonyms=ht;i.searchUserIDs=Jr;i.setSettings=As;i.updateApiKey=Xr;i.waitTask=D});var It=I((on,Ot)=>{Ot.exports=jt()});var At=I(re=>{"use strict";Object.defineProperty(re,"__esModule",{value:!0});function vs(){return{debug(e,t){return Promise.resolve()},info(e,t){return Promise.resolve()},error(e,t){return Promise.resolve()}}}var xs={Debug:1,Info:2,Error:3};re.LogLevelEnum=xs;re.createNullLogger=vs});var Dt=I((un,St)=>{St.exports=At()});var xt=I(fe=>{"use strict";Object.defineProperty(fe,"__esModule",{value:!0});var Rt=require("http"),vt=require("https"),qs=require("url");function Es(){let e={keepAlive:!0},t=new Rt.Agent(e),r=new vt.Agent(e);return{send(s){return new Promise(n=>{let a=qs.parse(s.url),o=a.query===null?a.pathname:`${a.pathname}?${a.query}`,d=u({agent:a.protocol==="https:"?r:t,hostname:a.hostname,path:o,method:s.method,headers:s.headers},a.port!==void 0?{port:a.port||""}:{}),y=(a.protocol==="https:"?vt:Rt).request(d,h=>{let S="";h.on("data",O=>S+=O),h.on("end",()=>{clearTimeout(f),clearTimeout(p),n({status:h.statusCode||0,content:S,isTimedOut:!1})})}),b=(h,S)=>setTimeout(()=>{y.abort(),n({status:0,content:S,isTimedOut:!0})},h*1e3),f=b(s.connectTimeout,"Connection timeout"),p;y.on("error",h=>{clearTimeout(f),clearTimeout(p),n({status:0,content:h.message,isTimedOut:!1})}),y.once("response",()=>{clearTimeout(f),p=b(s.responseTimeout,"Socket timeout")}),s.data!==void 0&&y.write(s.data),y.end()})},destroy(){return t.destroy(),r.destroy(),Promise.resolve()}}}fe.createNodeHttpRequester=Es});var Et=I((dn,qt)=>{qt.exports=xt()});var kt=I((pn,Tt)=>{"use strict";var Mt=Ee(),Ts=we(),W=st(),be=F(),Pe=it(),c=It(),Ms=Dt(),ws=Et(),ks=K();function wt(e,t,r){let s={appId:e,apiKey:t,timeouts:{connect:2,read:5,write:30},requester:ws.createNodeHttpRequester(),logger:Ms.createNullLogger(),responsesCache:Mt.createNullCache(),requestsCache:Mt.createNullCache(),hostsCache:Ts.createInMemoryCache(),userAgent:ks.createUserAgent(be.version).add({segment:"Node.js",version:process.versions.node})};return c.createSearchClient(g(u(u({},s),r),{methods:{search:c.multipleQueries,searchForFacetValues:c.multipleSearchForFacetValues,multipleBatch:c.multipleBatch,multipleGetObjects:c.multipleGetObjects,multipleQueries:c.multipleQueries,copyIndex:c.copyIndex,copySettings:c.copySettings,copyRules:c.copyRules,copySynonyms:c.copySynonyms,moveIndex:c.moveIndex,listIndices:c.listIndices,getLogs:c.getLogs,listClusters:c.listClusters,multipleSearchForFacetValues:c.multipleSearchForFacetValues,getApiKey:c.getApiKey,addApiKey:c.addApiKey,listApiKeys:c.listApiKeys,updateApiKey:c.updateApiKey,deleteApiKey:c.deleteApiKey,restoreApiKey:c.restoreApiKey,assignUserID:c.assignUserID,assignUserIDs:c.assignUserIDs,getUserID:c.getUserID,searchUserIDs:c.searchUserIDs,listUserIDs:c.listUserIDs,getTopUserIDs:c.getTopUserIDs,removeUserID:c.removeUserID,hasPendingMappings:c.hasPendingMappings,generateSecuredApiKey:c.generateSecuredApiKey,getSecuredApiKeyRemainingValidity:c.getSecuredApiKeyRemainingValidity,destroy:be.destroy,initIndex:n=>a=>c.initIndex(n)(a,{methods:{batch:c.batch,delete:c.deleteIndex,getObject:c.getObject,getObjects:c.getObjects,saveObject:c.saveObject,saveObjects:c.saveObjects,search:c.search,searchForFacetValues:c.searchForFacetValues,waitTask:c.waitTask,setSettings:c.setSettings,getSettings:c.getSettings,partialUpdateObject:c.partialUpdateObject,partialUpdateObjects:c.partialUpdateObjects,deleteObject:c.deleteObject,deleteObjects:c.deleteObjects,deleteBy:c.deleteBy,clearObjects:c.clearObjects,browseObjects:c.browseObjects,getObjectPosition:c.getObjectPosition,findObject:c.findObject,exists:c.exists,saveSynonym:c.saveSynonym,saveSynonyms:c.saveSynonyms,getSynonym:c.getSynonym,searchSynonyms:c.searchSynonyms,browseSynonyms:c.browseSynonyms,deleteSynonym:c.deleteSynonym,clearSynonyms:c.clearSynonyms,replaceAllObjects:c.replaceAllObjects,replaceAllSynonyms:c.replaceAllSynonyms,searchRules:c.searchRules,getRule:c.getRule,deleteRule:c.deleteRule,saveRule:c.saveRule,saveRules:c.saveRules,replaceAllRules:c.replaceAllRules,browseRules:c.browseRules,clearRules:c.clearRules}}),initAnalytics:()=>n=>W.createAnalyticsClient(g(u(u({},s),n),{methods:{addABTest:W.addABTest,getABTest:W.getABTest,getABTests:W.getABTests,stopABTest:W.stopABTest,deleteABTest:W.deleteABTest}})),initRecommendation:()=>n=>Pe.createRecommendationClient(g(u(u({},s),n),{methods:{getPersonalizationStrategy:Pe.getPersonalizationStrategy,setPersonalizationStrategy:Pe.setPersonalizationStrategy}}))}}))}wt.version=be.version;Tt.exports=wt});var Ut=I((mn,je)=>{var Ct=kt();je.exports=Ct;je.exports.default=Ct});var Ws={};Vt(Ws,{default:()=>Ks});var Oe=C(require("@yarnpkg/core")),E=C(require("@yarnpkg/core")),Ie=C(require("@yarnpkg/plugin-essentials")),Ht=C(require("semver"));var se=C(require("@yarnpkg/core")),Nt=C(Ut()),Cs="e8e1bd300d860104bb8c58453ffa1eb4",Us="OFCNCOG2CU",Wt=async(e,t)=>{var a;let r=se.structUtils.stringifyIdent(e),n=Ns(t).initIndex("npm-search");try{return((a=(await n.getObject(r,{attributesToRetrieve:["types"]})).types)==null?void 0:a.ts)==="definitely-typed"}catch(o){return!1}},Ns=e=>(0,Nt.default)(Us,Cs,{requester:{async send(r){try{let s=await se.httpUtils.request(r.url,r.data||null,{configuration:e,headers:r.headers});return{content:s.body,isTimedOut:!1,status:s.statusCode}}catch(s){return{content:s.response.body,isTimedOut:!1,status:s.response.statusCode}}}}});var _t=e=>e.scope?`${e.scope}__${e.name}`:`${e.name}`,Hs=async(e,t,r,s)=>{if(r.scope==="types")return;let{project:n}=e,{configuration:a}=n,o=a.makeResolver(),d={project:n,resolver:o,report:new E.ThrowReport};if(!await Wt(r,a))return;let b=_t(r),f=E.structUtils.parseRange(r.range).selector;if(!E.semverUtils.validRange(f)){let P=await o.getCandidates(r,new Map,d);f=E.structUtils.parseRange(P[0].reference).selector}let p=Ht.default.coerce(f);if(p===null)return;let h=`${Ie.suggestUtils.Modifier.CARET}${p.major}`,S=E.structUtils.makeDescriptor(E.structUtils.makeIdent("types",b),h),O=E.miscUtils.mapAndFind(n.workspaces,P=>{var T,V;let x=(T=P.manifest.dependencies.get(r.identHash))==null?void 0:T.descriptorHash,v=(V=P.manifest.devDependencies.get(r.identHash))==null?void 0:V.descriptorHash;if(x!==r.descriptorHash&&v!==r.descriptorHash)return E.miscUtils.mapAndFind.skip;let j=[];for(let Ae of Oe.Manifest.allDependencies){let Se=P.manifest[Ae].get(S.identHash);typeof Se!="undefined"&&j.push([Ae,Se])}return j.length===0?E.miscUtils.mapAndFind.skip:j});if(typeof O!="undefined")for(let[P,x]of O)e.manifest[P].set(x.identHash,x);else{try{if((await o.getCandidates(S,new Map,d)).length===0)return}catch{return}e.manifest[Ie.suggestUtils.Target.DEVELOPMENT].set(S.identHash,S)}},_s=async(e,t,r)=>{if(r.scope==="types")return;let s=_t(r),n=E.structUtils.makeIdent("types",s);for(let a of Oe.Manifest.allDependencies)typeof e.manifest[a].get(n.identHash)!="undefined"&&e.manifest[a].delete(n.identHash)},Fs=(e,t)=>{t.publishConfig&&t.publishConfig.typings&&(t.typings=t.publishConfig.typings),t.publishConfig&&t.publishConfig.types&&(t.types=t.publishConfig.types)},Bs={hooks:{afterWorkspaceDependencyAddition:Hs,afterWorkspaceDependencyRemoval:_s,beforeWorkspacePacking:Fs}},Ks=Bs;return Ws;})(); +return plugin; +} +}; diff --git a/.yarn/plugins/plugin-requirements.check.cjs b/.yarn/plugins/plugin-requirements.check.cjs new file mode 100644 index 000000000..4e008071c --- /dev/null +++ b/.yarn/plugins/plugin-requirements.check.cjs @@ -0,0 +1,27 @@ +// © nedkelly +// https://github.com/yarnpkg/berry/issues/1177#issuecomment-869269413 +module.exports = { + name: `plugin-requirements-check`, + factory: require => { + const semver = require('semver'); + const { readFileSync } = require('fs'); + const data = readFileSync('package.json'); + const { engines } = JSON.parse(data.toString()); + const { node } = engines; + function validateNodeVer () { + if (!semver.satisfies(process.version, node)) { + throw new Error( + `The current node version ${process.version} does not satisfy the required version ${node}.`, + ); + } + } + return { + default: { + hooks: { + setupScriptEnvironment: validateNodeVer, + validateProject: validateNodeVer, + }, + }, + }; + }, +}; diff --git a/.yarn/releases/yarn-sources.cjs b/.yarn/releases/yarn-sources.cjs index e658ec55f..45cf109b7 100755 --- a/.yarn/releases/yarn-sources.cjs +++ b/.yarn/releases/yarn-sources.cjs @@ -1,103 +1,102 @@ #!/usr/bin/env node /* eslint-disable */ //prettier-ignore -(()=>{var use=Object.create,Rd=Object.defineProperty,gse=Object.getPrototypeOf,hse=Object.prototype.hasOwnProperty,fse=Object.getOwnPropertyNames,pse=Object.getOwnPropertyDescriptor;var CR=t=>Rd(t,"__esModule",{value:!0});var C=(t,e)=>()=>(e||(e={exports:{}},t(e.exports,e)),e.exports),We=(t,e)=>{CR(t);for(var r in e)Rd(t,r,{get:e[r],enumerable:!0})},dse=(t,e,r)=>{if(CR(t),e&&typeof e=="object"||typeof e=="function")for(let i of fse(e))!hse.call(t,i)&&i!=="default"&&Rd(t,i,{get:()=>e[i],enumerable:!(r=pse(e,i))||r.enumerable});return t},X=t=>t&&t.__esModule?t:dse(Rd(t!=null?use(gse(t)):{},"default",{value:t,enumerable:!0}),t);var zR=C((fWe,GR)=>{GR.exports=qR;qR.sync=kse;var JR=require("fs");function vse(t,e){var r=e.pathExt!==void 0?e.pathExt:process.env.PATHEXT;if(!r||(r=r.split(";"),r.indexOf("")!==-1))return!0;for(var i=0;i{XR.exports=VR;VR.sync=Fse;var ZR=require("fs");function VR(t,e,r){ZR.stat(t,function(i,n){r(i,i?!1:_R(n,e))})}function Fse(t,e){return _R(ZR.statSync(t),e)}function _R(t,e){return t.isFile()&&Rse(t,e)}function Rse(t,e){var r=t.mode,i=t.uid,n=t.gid,s=e.uid!==void 0?e.uid:process.getuid&&process.getuid(),o=e.gid!==void 0?e.gid:process.getgid&&process.getgid(),a=parseInt("100",8),l=parseInt("010",8),c=parseInt("001",8),u=a|l,g=r&c||r&l&&n===o||r&a&&i===s||r&u&&s===0;return g}});var tL=C((CWe,eL)=>{var dWe=require("fs"),qd;process.platform==="win32"||global.TESTING_WINDOWS?qd=zR():qd=$R();eL.exports=RB;RB.sync=Lse;function RB(t,e,r){if(typeof e=="function"&&(r=e,e={}),!r){if(typeof Promise!="function")throw new TypeError("callback not provided");return new Promise(function(i,n){RB(t,e||{},function(s,o){s?n(s):i(o)})})}qd(t,e||{},function(i,n){i&&(i.code==="EACCES"||e&&e.ignoreErrors)&&(i=null,n=!1),r(i,n)})}function Lse(t,e){try{return qd.sync(t,e||{})}catch(r){if(e&&e.ignoreErrors||r.code==="EACCES")return!1;throw r}}});var AL=C((mWe,rL)=>{var ul=process.platform==="win32"||process.env.OSTYPE==="cygwin"||process.env.OSTYPE==="msys",iL=require("path"),Mse=ul?";":":",nL=tL(),sL=t=>Object.assign(new Error(`not found: ${t}`),{code:"ENOENT"}),oL=(t,e)=>{let r=e.colon||Mse,i=t.match(/\//)||ul&&t.match(/\\/)?[""]:[...ul?[process.cwd()]:[],...(e.path||process.env.PATH||"").split(r)],n=ul?e.pathExt||process.env.PATHEXT||".EXE;.CMD;.BAT;.COM":"",s=ul?n.split(r):[""];return ul&&t.indexOf(".")!==-1&&s[0]!==""&&s.unshift(""),{pathEnv:i,pathExt:s,pathExtExe:n}},aL=(t,e,r)=>{typeof e=="function"&&(r=e,e={}),e||(e={});let{pathEnv:i,pathExt:n,pathExtExe:s}=oL(t,e),o=[],a=c=>new Promise((u,g)=>{if(c===i.length)return e.all&&o.length?u(o):g(sL(t));let h=i[c],f=/^".*"$/.test(h)?h.slice(1,-1):h,p=iL.join(f,t),m=!f&&/^\.[\\\/]/.test(t)?t.slice(0,2)+p:p;u(l(m,c,0))}),l=(c,u,g)=>new Promise((h,f)=>{if(g===n.length)return h(a(u+1));let p=n[g];nL(c+p,{pathExt:s},(m,I)=>{if(!m&&I)if(e.all)o.push(c+p);else return h(c+p);return h(l(c,u,g+1))})});return r?a(0).then(c=>r(null,c),r):a(0)},Nse=(t,e)=>{e=e||{};let{pathEnv:r,pathExt:i,pathExtExe:n}=oL(t,e),s=[];for(let o=0;o{"use strict";var lL=(t={})=>{let e=t.env||process.env;return(t.platform||process.platform)!=="win32"?"PATH":Object.keys(e).reverse().find(i=>i.toUpperCase()==="PATH")||"Path"};LB.exports=lL;LB.exports.default=lL});var fL=C((EWe,uL)=>{"use strict";var gL=require("path"),Ose=AL(),Tse=cL();function hL(t,e){let r=t.options.env||process.env,i=process.cwd(),n=t.options.cwd!=null,s=n&&process.chdir!==void 0&&!process.chdir.disabled;if(s)try{process.chdir(t.options.cwd)}catch(a){}let o;try{o=Ose.sync(t.command,{path:r[Tse({env:r})],pathExt:e?gL.delimiter:void 0})}catch(a){}finally{s&&process.chdir(i)}return o&&(o=gL.resolve(n?t.options.cwd:"",o)),o}function Kse(t){return hL(t)||hL(t,!0)}uL.exports=Kse});var pL=C((yWe,MB)=>{"use strict";var NB=/([()\][%!^"`<>&|;, *?])/g;function Use(t){return t=t.replace(NB,"^$1"),t}function Hse(t,e){return t=`${t}`,t=t.replace(/(\\*)"/g,'$1$1\\"'),t=t.replace(/(\\*)$/,"$1$1"),t=`"${t}"`,t=t.replace(NB,"^$1"),e&&(t=t.replace(NB,"^$1")),t}MB.exports.command=Use;MB.exports.argument=Hse});var CL=C((BWe,dL)=>{"use strict";dL.exports=/^#!(.*)/});var IL=C((wWe,mL)=>{"use strict";var Yse=CL();mL.exports=(t="")=>{let e=t.match(Yse);if(!e)return null;let[r,i]=e[0].replace(/#! ?/,"").split(" "),n=r.split("/").pop();return n==="env"?i:i?`${n} ${i}`:n}});var yL=C((QWe,EL)=>{"use strict";var OB=require("fs"),jse=IL();function Gse(t){let e=150,r=Buffer.alloc(e),i;try{i=OB.openSync(t,"r"),OB.readSync(i,r,0,e,0),OB.closeSync(i)}catch(n){}return jse(r.toString())}EL.exports=Gse});var bL=C((bWe,BL)=>{"use strict";var qse=require("path"),wL=fL(),QL=pL(),Jse=yL(),Wse=process.platform==="win32",zse=/\.(?:com|exe)$/i,Xse=/node_modules[\\/].bin[\\/][^\\/]+\.cmd$/i;function Vse(t){t.file=wL(t);let e=t.file&&Jse(t.file);return e?(t.args.unshift(t.file),t.command=e,wL(t)):t.file}function Zse(t){if(!Wse)return t;let e=Vse(t),r=!zse.test(e);if(t.options.forceShell||r){let i=Xse.test(e);t.command=qse.normalize(t.command),t.command=QL.command(t.command),t.args=t.args.map(s=>QL.argument(s,i));let n=[t.command].concat(t.args).join(" ");t.args=["/d","/s","/c",`"${n}"`],t.command=process.env.comspec||"cmd.exe",t.options.windowsVerbatimArguments=!0}return t}function _se(t,e,r){e&&!Array.isArray(e)&&(r=e,e=null),e=e?e.slice(0):[],r=Object.assign({},r);let i={command:t,args:e,options:r,file:void 0,original:{command:t,args:e}};return r.shell?i:Zse(i)}BL.exports=_se});var PL=C((DWe,DL)=>{"use strict";var TB=process.platform==="win32";function KB(t,e){return Object.assign(new Error(`${e} ${t.command} ENOENT`),{code:"ENOENT",errno:"ENOENT",syscall:`${e} ${t.command}`,path:t.command,spawnargs:t.args})}function $se(t,e){if(!TB)return;let r=t.emit;t.emit=function(i,n){if(i==="exit"){let s=SL(n,e,"spawn");if(s)return r.call(t,"error",s)}return r.apply(t,arguments)}}function SL(t,e){return TB&&t===1&&!e.file?KB(e.original,"spawn"):null}function eoe(t,e){return TB&&t===1&&!e.file?KB(e.original,"spawnSync"):null}DL.exports={hookChildProcess:$se,verifyENOENT:SL,verifyENOENTSync:eoe,notFoundError:KB}});var YB=C((SWe,gl)=>{"use strict";var xL=require("child_process"),UB=bL(),HB=PL();function kL(t,e,r){let i=UB(t,e,r),n=xL.spawn(i.command,i.args,i.options);return HB.hookChildProcess(n,i),n}function toe(t,e,r){let i=UB(t,e,r),n=xL.spawnSync(i.command,i.args,i.options);return n.error=n.error||HB.verifyENOENTSync(n.status,i),n}gl.exports=kL;gl.exports.spawn=kL;gl.exports.sync=toe;gl.exports._parse=UB;gl.exports._enoent=HB});var FL=C((FWe,vL)=>{"use strict";vL.exports={aliceblue:[240,248,255],antiquewhite:[250,235,215],aqua:[0,255,255],aquamarine:[127,255,212],azure:[240,255,255],beige:[245,245,220],bisque:[255,228,196],black:[0,0,0],blanchedalmond:[255,235,205],blue:[0,0,255],blueviolet:[138,43,226],brown:[165,42,42],burlywood:[222,184,135],cadetblue:[95,158,160],chartreuse:[127,255,0],chocolate:[210,105,30],coral:[255,127,80],cornflowerblue:[100,149,237],cornsilk:[255,248,220],crimson:[220,20,60],cyan:[0,255,255],darkblue:[0,0,139],darkcyan:[0,139,139],darkgoldenrod:[184,134,11],darkgray:[169,169,169],darkgreen:[0,100,0],darkgrey:[169,169,169],darkkhaki:[189,183,107],darkmagenta:[139,0,139],darkolivegreen:[85,107,47],darkorange:[255,140,0],darkorchid:[153,50,204],darkred:[139,0,0],darksalmon:[233,150,122],darkseagreen:[143,188,143],darkslateblue:[72,61,139],darkslategray:[47,79,79],darkslategrey:[47,79,79],darkturquoise:[0,206,209],darkviolet:[148,0,211],deeppink:[255,20,147],deepskyblue:[0,191,255],dimgray:[105,105,105],dimgrey:[105,105,105],dodgerblue:[30,144,255],firebrick:[178,34,34],floralwhite:[255,250,240],forestgreen:[34,139,34],fuchsia:[255,0,255],gainsboro:[220,220,220],ghostwhite:[248,248,255],gold:[255,215,0],goldenrod:[218,165,32],gray:[128,128,128],green:[0,128,0],greenyellow:[173,255,47],grey:[128,128,128],honeydew:[240,255,240],hotpink:[255,105,180],indianred:[205,92,92],indigo:[75,0,130],ivory:[255,255,240],khaki:[240,230,140],lavender:[230,230,250],lavenderblush:[255,240,245],lawngreen:[124,252,0],lemonchiffon:[255,250,205],lightblue:[173,216,230],lightcoral:[240,128,128],lightcyan:[224,255,255],lightgoldenrodyellow:[250,250,210],lightgray:[211,211,211],lightgreen:[144,238,144],lightgrey:[211,211,211],lightpink:[255,182,193],lightsalmon:[255,160,122],lightseagreen:[32,178,170],lightskyblue:[135,206,250],lightslategray:[119,136,153],lightslategrey:[119,136,153],lightsteelblue:[176,196,222],lightyellow:[255,255,224],lime:[0,255,0],limegreen:[50,205,50],linen:[250,240,230],magenta:[255,0,255],maroon:[128,0,0],mediumaquamarine:[102,205,170],mediumblue:[0,0,205],mediumorchid:[186,85,211],mediumpurple:[147,112,219],mediumseagreen:[60,179,113],mediumslateblue:[123,104,238],mediumspringgreen:[0,250,154],mediumturquoise:[72,209,204],mediumvioletred:[199,21,133],midnightblue:[25,25,112],mintcream:[245,255,250],mistyrose:[255,228,225],moccasin:[255,228,181],navajowhite:[255,222,173],navy:[0,0,128],oldlace:[253,245,230],olive:[128,128,0],olivedrab:[107,142,35],orange:[255,165,0],orangered:[255,69,0],orchid:[218,112,214],palegoldenrod:[238,232,170],palegreen:[152,251,152],paleturquoise:[175,238,238],palevioletred:[219,112,147],papayawhip:[255,239,213],peachpuff:[255,218,185],peru:[205,133,63],pink:[255,192,203],plum:[221,160,221],powderblue:[176,224,230],purple:[128,0,128],rebeccapurple:[102,51,153],red:[255,0,0],rosybrown:[188,143,143],royalblue:[65,105,225],saddlebrown:[139,69,19],salmon:[250,128,114],sandybrown:[244,164,96],seagreen:[46,139,87],seashell:[255,245,238],sienna:[160,82,45],silver:[192,192,192],skyblue:[135,206,235],slateblue:[106,90,205],slategray:[112,128,144],slategrey:[112,128,144],snow:[255,250,250],springgreen:[0,255,127],steelblue:[70,130,180],tan:[210,180,140],teal:[0,128,128],thistle:[216,191,216],tomato:[255,99,71],turquoise:[64,224,208],violet:[238,130,238],wheat:[245,222,179],white:[255,255,255],whitesmoke:[245,245,245],yellow:[255,255,0],yellowgreen:[154,205,50]}});var ZB=C((RWe,RL)=>{var ig=FL(),LL={};for(let t of Object.keys(ig))LL[ig[t]]=t;var Te={rgb:{channels:3,labels:"rgb"},hsl:{channels:3,labels:"hsl"},hsv:{channels:3,labels:"hsv"},hwb:{channels:3,labels:"hwb"},cmyk:{channels:4,labels:"cmyk"},xyz:{channels:3,labels:"xyz"},lab:{channels:3,labels:"lab"},lch:{channels:3,labels:"lch"},hex:{channels:1,labels:["hex"]},keyword:{channels:1,labels:["keyword"]},ansi16:{channels:1,labels:["ansi16"]},ansi256:{channels:1,labels:["ansi256"]},hcg:{channels:3,labels:["h","c","g"]},apple:{channels:3,labels:["r16","g16","b16"]},gray:{channels:1,labels:["gray"]}};RL.exports=Te;for(let t of Object.keys(Te)){if(!("channels"in Te[t]))throw new Error("missing channels property: "+t);if(!("labels"in Te[t]))throw new Error("missing channel labels property: "+t);if(Te[t].labels.length!==Te[t].channels)throw new Error("channel and label counts mismatch: "+t);let{channels:e,labels:r}=Te[t];delete Te[t].channels,delete Te[t].labels,Object.defineProperty(Te[t],"channels",{value:e}),Object.defineProperty(Te[t],"labels",{value:r})}Te.rgb.hsl=function(t){let e=t[0]/255,r=t[1]/255,i=t[2]/255,n=Math.min(e,r,i),s=Math.max(e,r,i),o=s-n,a,l;s===n?a=0:e===s?a=(r-i)/o:r===s?a=2+(i-e)/o:i===s&&(a=4+(e-r)/o),a=Math.min(a*60,360),a<0&&(a+=360);let c=(n+s)/2;return s===n?l=0:c<=.5?l=o/(s+n):l=o/(2-s-n),[a,l*100,c*100]};Te.rgb.hsv=function(t){let e,r,i,n,s,o=t[0]/255,a=t[1]/255,l=t[2]/255,c=Math.max(o,a,l),u=c-Math.min(o,a,l),g=function(h){return(c-h)/6/u+1/2};return u===0?(n=0,s=0):(s=u/c,e=g(o),r=g(a),i=g(l),o===c?n=i-r:a===c?n=1/3+e-i:l===c&&(n=2/3+r-e),n<0?n+=1:n>1&&(n-=1)),[n*360,s*100,c*100]};Te.rgb.hwb=function(t){let e=t[0],r=t[1],i=t[2],n=Te.rgb.hsl(t)[0],s=1/255*Math.min(e,Math.min(r,i));return i=1-1/255*Math.max(e,Math.max(r,i)),[n,s*100,i*100]};Te.rgb.cmyk=function(t){let e=t[0]/255,r=t[1]/255,i=t[2]/255,n=Math.min(1-e,1-r,1-i),s=(1-e-n)/(1-n)||0,o=(1-r-n)/(1-n)||0,a=(1-i-n)/(1-n)||0;return[s*100,o*100,a*100,n*100]};function noe(t,e){return(t[0]-e[0])**2+(t[1]-e[1])**2+(t[2]-e[2])**2}Te.rgb.keyword=function(t){let e=LL[t];if(e)return e;let r=Infinity,i;for(let n of Object.keys(ig)){let s=ig[n],o=noe(t,s);o.04045?((e+.055)/1.055)**2.4:e/12.92,r=r>.04045?((r+.055)/1.055)**2.4:r/12.92,i=i>.04045?((i+.055)/1.055)**2.4:i/12.92;let n=e*.4124+r*.3576+i*.1805,s=e*.2126+r*.7152+i*.0722,o=e*.0193+r*.1192+i*.9505;return[n*100,s*100,o*100]};Te.rgb.lab=function(t){let e=Te.rgb.xyz(t),r=e[0],i=e[1],n=e[2];r/=95.047,i/=100,n/=108.883,r=r>.008856?r**(1/3):7.787*r+16/116,i=i>.008856?i**(1/3):7.787*i+16/116,n=n>.008856?n**(1/3):7.787*n+16/116;let s=116*i-16,o=500*(r-i),a=200*(i-n);return[s,o,a]};Te.hsl.rgb=function(t){let e=t[0]/360,r=t[1]/100,i=t[2]/100,n,s,o;if(r===0)return o=i*255,[o,o,o];i<.5?n=i*(1+r):n=i+r-i*r;let a=2*i-n,l=[0,0,0];for(let c=0;c<3;c++)s=e+1/3*-(c-1),s<0&&s++,s>1&&s--,6*s<1?o=a+(n-a)*6*s:2*s<1?o=n:3*s<2?o=a+(n-a)*(2/3-s)*6:o=a,l[c]=o*255;return l};Te.hsl.hsv=function(t){let e=t[0],r=t[1]/100,i=t[2]/100,n=r,s=Math.max(i,.01);i*=2,r*=i<=1?i:2-i,n*=s<=1?s:2-s;let o=(i+r)/2,a=i===0?2*n/(s+n):2*r/(i+r);return[e,a*100,o*100]};Te.hsv.rgb=function(t){let e=t[0]/60,r=t[1]/100,i=t[2]/100,n=Math.floor(e)%6,s=e-Math.floor(e),o=255*i*(1-r),a=255*i*(1-r*s),l=255*i*(1-r*(1-s));switch(i*=255,n){case 0:return[i,l,o];case 1:return[a,i,o];case 2:return[o,i,l];case 3:return[o,a,i];case 4:return[l,o,i];case 5:return[i,o,a]}};Te.hsv.hsl=function(t){let e=t[0],r=t[1]/100,i=t[2]/100,n=Math.max(i,.01),s,o;o=(2-r)*i;let a=(2-r)*n;return s=r*n,s/=a<=1?a:2-a,s=s||0,o/=2,[e,s*100,o*100]};Te.hwb.rgb=function(t){let e=t[0]/360,r=t[1]/100,i=t[2]/100,n=r+i,s;n>1&&(r/=n,i/=n);let o=Math.floor(6*e),a=1-i;s=6*e-o,(o&1)!=0&&(s=1-s);let l=r+s*(a-r),c,u,g;switch(o){default:case 6:case 0:c=a,u=l,g=r;break;case 1:c=l,u=a,g=r;break;case 2:c=r,u=a,g=l;break;case 3:c=r,u=l,g=a;break;case 4:c=l,u=r,g=a;break;case 5:c=a,u=r,g=l;break}return[c*255,u*255,g*255]};Te.cmyk.rgb=function(t){let e=t[0]/100,r=t[1]/100,i=t[2]/100,n=t[3]/100,s=1-Math.min(1,e*(1-n)+n),o=1-Math.min(1,r*(1-n)+n),a=1-Math.min(1,i*(1-n)+n);return[s*255,o*255,a*255]};Te.xyz.rgb=function(t){let e=t[0]/100,r=t[1]/100,i=t[2]/100,n,s,o;return n=e*3.2406+r*-1.5372+i*-.4986,s=e*-.9689+r*1.8758+i*.0415,o=e*.0557+r*-.204+i*1.057,n=n>.0031308?1.055*n**(1/2.4)-.055:n*12.92,s=s>.0031308?1.055*s**(1/2.4)-.055:s*12.92,o=o>.0031308?1.055*o**(1/2.4)-.055:o*12.92,n=Math.min(Math.max(0,n),1),s=Math.min(Math.max(0,s),1),o=Math.min(Math.max(0,o),1),[n*255,s*255,o*255]};Te.xyz.lab=function(t){let e=t[0],r=t[1],i=t[2];e/=95.047,r/=100,i/=108.883,e=e>.008856?e**(1/3):7.787*e+16/116,r=r>.008856?r**(1/3):7.787*r+16/116,i=i>.008856?i**(1/3):7.787*i+16/116;let n=116*r-16,s=500*(e-r),o=200*(r-i);return[n,s,o]};Te.lab.xyz=function(t){let e=t[0],r=t[1],i=t[2],n,s,o;s=(e+16)/116,n=r/500+s,o=s-i/200;let a=s**3,l=n**3,c=o**3;return s=a>.008856?a:(s-16/116)/7.787,n=l>.008856?l:(n-16/116)/7.787,o=c>.008856?c:(o-16/116)/7.787,n*=95.047,s*=100,o*=108.883,[n,s,o]};Te.lab.lch=function(t){let e=t[0],r=t[1],i=t[2],n;n=Math.atan2(i,r)*360/2/Math.PI,n<0&&(n+=360);let o=Math.sqrt(r*r+i*i);return[e,o,n]};Te.lch.lab=function(t){let e=t[0],r=t[1],n=t[2]/360*2*Math.PI,s=r*Math.cos(n),o=r*Math.sin(n);return[e,s,o]};Te.rgb.ansi16=function(t,e=null){let[r,i,n]=t,s=e===null?Te.rgb.hsv(t)[2]:e;if(s=Math.round(s/50),s===0)return 30;let o=30+(Math.round(n/255)<<2|Math.round(i/255)<<1|Math.round(r/255));return s===2&&(o+=60),o};Te.hsv.ansi16=function(t){return Te.rgb.ansi16(Te.hsv.rgb(t),t[2])};Te.rgb.ansi256=function(t){let e=t[0],r=t[1],i=t[2];return e===r&&r===i?e<8?16:e>248?231:Math.round((e-8)/247*24)+232:16+36*Math.round(e/255*5)+6*Math.round(r/255*5)+Math.round(i/255*5)};Te.ansi16.rgb=function(t){let e=t%10;if(e===0||e===7)return t>50&&(e+=3.5),e=e/10.5*255,[e,e,e];let r=(~~(t>50)+1)*.5,i=(e&1)*r*255,n=(e>>1&1)*r*255,s=(e>>2&1)*r*255;return[i,n,s]};Te.ansi256.rgb=function(t){if(t>=232){let s=(t-232)*10+8;return[s,s,s]}t-=16;let e,r=Math.floor(t/36)/5*255,i=Math.floor((e=t%36)/6)/5*255,n=e%6/5*255;return[r,i,n]};Te.rgb.hex=function(t){let r=(((Math.round(t[0])&255)<<16)+((Math.round(t[1])&255)<<8)+(Math.round(t[2])&255)).toString(16).toUpperCase();return"000000".substring(r.length)+r};Te.hex.rgb=function(t){let e=t.toString(16).match(/[a-f0-9]{6}|[a-f0-9]{3}/i);if(!e)return[0,0,0];let r=e[0];e[0].length===3&&(r=r.split("").map(a=>a+a).join(""));let i=parseInt(r,16),n=i>>16&255,s=i>>8&255,o=i&255;return[n,s,o]};Te.rgb.hcg=function(t){let e=t[0]/255,r=t[1]/255,i=t[2]/255,n=Math.max(Math.max(e,r),i),s=Math.min(Math.min(e,r),i),o=n-s,a,l;return o<1?a=s/(1-o):a=0,o<=0?l=0:n===e?l=(r-i)/o%6:n===r?l=2+(i-e)/o:l=4+(e-r)/o,l/=6,l%=1,[l*360,o*100,a*100]};Te.hsl.hcg=function(t){let e=t[1]/100,r=t[2]/100,i=r<.5?2*e*r:2*e*(1-r),n=0;return i<1&&(n=(r-.5*i)/(1-i)),[t[0],i*100,n*100]};Te.hsv.hcg=function(t){let e=t[1]/100,r=t[2]/100,i=e*r,n=0;return i<1&&(n=(r-i)/(1-i)),[t[0],i*100,n*100]};Te.hcg.rgb=function(t){let e=t[0]/360,r=t[1]/100,i=t[2]/100;if(r===0)return[i*255,i*255,i*255];let n=[0,0,0],s=e%1*6,o=s%1,a=1-o,l=0;switch(Math.floor(s)){case 0:n[0]=1,n[1]=o,n[2]=0;break;case 1:n[0]=a,n[1]=1,n[2]=0;break;case 2:n[0]=0,n[1]=1,n[2]=o;break;case 3:n[0]=0,n[1]=a,n[2]=1;break;case 4:n[0]=o,n[1]=0,n[2]=1;break;default:n[0]=1,n[1]=0,n[2]=a}return l=(1-r)*i,[(r*n[0]+l)*255,(r*n[1]+l)*255,(r*n[2]+l)*255]};Te.hcg.hsv=function(t){let e=t[1]/100,r=t[2]/100,i=e+r*(1-e),n=0;return i>0&&(n=e/i),[t[0],n*100,i*100]};Te.hcg.hsl=function(t){let e=t[1]/100,i=t[2]/100*(1-e)+.5*e,n=0;return i>0&&i<.5?n=e/(2*i):i>=.5&&i<1&&(n=e/(2*(1-i))),[t[0],n*100,i*100]};Te.hcg.hwb=function(t){let e=t[1]/100,r=t[2]/100,i=e+r*(1-e);return[t[0],(i-e)*100,(1-i)*100]};Te.hwb.hcg=function(t){let e=t[1]/100,r=t[2]/100,i=1-r,n=i-e,s=0;return n<1&&(s=(i-n)/(1-n)),[t[0],n*100,s*100]};Te.apple.rgb=function(t){return[t[0]/65535*255,t[1]/65535*255,t[2]/65535*255]};Te.rgb.apple=function(t){return[t[0]/255*65535,t[1]/255*65535,t[2]/255*65535]};Te.gray.rgb=function(t){return[t[0]/100*255,t[0]/100*255,t[0]/100*255]};Te.gray.hsl=function(t){return[0,0,t[0]]};Te.gray.hsv=Te.gray.hsl;Te.gray.hwb=function(t){return[0,100,t[0]]};Te.gray.cmyk=function(t){return[0,0,0,t[0]]};Te.gray.lab=function(t){return[t[0],0,0]};Te.gray.hex=function(t){let e=Math.round(t[0]/100*255)&255,i=((e<<16)+(e<<8)+e).toString(16).toUpperCase();return"000000".substring(i.length)+i};Te.rgb.gray=function(t){return[(t[0]+t[1]+t[2])/3/255*100]}});var NL=C((LWe,ML)=>{var Jd=ZB();function soe(){let t={},e=Object.keys(Jd);for(let r=e.length,i=0;i{var _B=ZB(),loe=NL(),hl={},coe=Object.keys(_B);function uoe(t){let e=function(...r){let i=r[0];return i==null?i:(i.length>1&&(r=i),t(r))};return"conversion"in t&&(e.conversion=t.conversion),e}function goe(t){let e=function(...r){let i=r[0];if(i==null)return i;i.length>1&&(r=i);let n=t(r);if(typeof n=="object")for(let s=n.length,o=0;o{hl[t]={},Object.defineProperty(hl[t],"channels",{value:_B[t].channels}),Object.defineProperty(hl[t],"labels",{value:_B[t].labels});let e=loe(t);Object.keys(e).forEach(i=>{let n=e[i];hl[t][i]=goe(n),hl[t][i].raw=uoe(n)})});OL.exports=hl});var GL=C((NWe,KL)=>{"use strict";var UL=(t,e)=>(...r)=>`[${t(...r)+e}m`,HL=(t,e)=>(...r)=>{let i=t(...r);return`[${38+e};5;${i}m`},YL=(t,e)=>(...r)=>{let i=t(...r);return`[${38+e};2;${i[0]};${i[1]};${i[2]}m`},Wd=t=>t,jL=(t,e,r)=>[t,e,r],fl=(t,e,r)=>{Object.defineProperty(t,e,{get:()=>{let i=r();return Object.defineProperty(t,e,{value:i,enumerable:!0,configurable:!0}),i},enumerable:!0,configurable:!0})},$B,pl=(t,e,r,i)=>{$B===void 0&&($B=TL());let n=i?10:0,s={};for(let[o,a]of Object.entries($B)){let l=o==="ansi16"?"ansi":o;o===e?s[l]=t(r,n):typeof a=="object"&&(s[l]=t(a[e],n))}return s};function hoe(){let t=new Map,e={modifier:{reset:[0,0],bold:[1,22],dim:[2,22],italic:[3,23],underline:[4,24],inverse:[7,27],hidden:[8,28],strikethrough:[9,29]},color:{black:[30,39],red:[31,39],green:[32,39],yellow:[33,39],blue:[34,39],magenta:[35,39],cyan:[36,39],white:[37,39],blackBright:[90,39],redBright:[91,39],greenBright:[92,39],yellowBright:[93,39],blueBright:[94,39],magentaBright:[95,39],cyanBright:[96,39],whiteBright:[97,39]},bgColor:{bgBlack:[40,49],bgRed:[41,49],bgGreen:[42,49],bgYellow:[43,49],bgBlue:[44,49],bgMagenta:[45,49],bgCyan:[46,49],bgWhite:[47,49],bgBlackBright:[100,49],bgRedBright:[101,49],bgGreenBright:[102,49],bgYellowBright:[103,49],bgBlueBright:[104,49],bgMagentaBright:[105,49],bgCyanBright:[106,49],bgWhiteBright:[107,49]}};e.color.gray=e.color.blackBright,e.bgColor.bgGray=e.bgColor.bgBlackBright,e.color.grey=e.color.blackBright,e.bgColor.bgGrey=e.bgColor.bgBlackBright;for(let[r,i]of Object.entries(e)){for(let[n,s]of Object.entries(i))e[n]={open:`[${s[0]}m`,close:`[${s[1]}m`},i[n]=e[n],t.set(s[0],s[1]);Object.defineProperty(e,r,{value:i,enumerable:!1})}return Object.defineProperty(e,"codes",{value:t,enumerable:!1}),e.color.close="",e.bgColor.close="",fl(e.color,"ansi",()=>pl(UL,"ansi16",Wd,!1)),fl(e.color,"ansi256",()=>pl(HL,"ansi256",Wd,!1)),fl(e.color,"ansi16m",()=>pl(YL,"rgb",jL,!1)),fl(e.bgColor,"ansi",()=>pl(UL,"ansi16",Wd,!0)),fl(e.bgColor,"ansi256",()=>pl(HL,"ansi256",Wd,!0)),fl(e.bgColor,"ansi16m",()=>pl(YL,"rgb",jL,!0)),e}Object.defineProperty(KL,"exports",{enumerable:!0,get:hoe})});var JL=C((OWe,qL)=>{"use strict";qL.exports=(t,e=process.argv)=>{let r=t.startsWith("-")?"":t.length===1?"-":"--",i=e.indexOf(r+t),n=e.indexOf("--");return i!==-1&&(n===-1||i{"use strict";var foe=require("os"),zL=require("tty"),zi=JL(),{env:gr}=process,Bo;zi("no-color")||zi("no-colors")||zi("color=false")||zi("color=never")?Bo=0:(zi("color")||zi("colors")||zi("color=true")||zi("color=always"))&&(Bo=1);"FORCE_COLOR"in gr&&(gr.FORCE_COLOR==="true"?Bo=1:gr.FORCE_COLOR==="false"?Bo=0:Bo=gr.FORCE_COLOR.length===0?1:Math.min(parseInt(gr.FORCE_COLOR,10),3));function ew(t){return t===0?!1:{level:t,hasBasic:!0,has256:t>=2,has16m:t>=3}}function tw(t,e){if(Bo===0)return 0;if(zi("color=16m")||zi("color=full")||zi("color=truecolor"))return 3;if(zi("color=256"))return 2;if(t&&!e&&Bo===void 0)return 0;let r=Bo||0;if(gr.TERM==="dumb")return r;if(process.platform==="win32"){let i=foe.release().split(".");return Number(i[0])>=10&&Number(i[2])>=10586?Number(i[2])>=14931?3:2:1}if("CI"in gr)return["TRAVIS","CIRCLECI","APPVEYOR","GITLAB_CI"].some(i=>i in gr)||gr.CI_NAME==="codeship"?1:r;if("TEAMCITY_VERSION"in gr)return/^(9\.(0*[1-9]\d*)\.|\d{2,}\.)/.test(gr.TEAMCITY_VERSION)?1:0;if("GITHUB_ACTIONS"in gr)return 1;if(gr.COLORTERM==="truecolor")return 3;if("TERM_PROGRAM"in gr){let i=parseInt((gr.TERM_PROGRAM_VERSION||"").split(".")[0],10);switch(gr.TERM_PROGRAM){case"iTerm.app":return i>=3?3:2;case"Apple_Terminal":return 2}}return/-256(color)?$/i.test(gr.TERM)?2:/^screen|^xterm|^vt100|^vt220|^rxvt|color|ansi|cygwin|linux/i.test(gr.TERM)||"COLORTERM"in gr?1:r}function poe(t){let e=tw(t,t&&t.isTTY);return ew(e)}WL.exports={supportsColor:poe,stdout:ew(tw(!0,zL.isatty(1))),stderr:ew(tw(!0,zL.isatty(2)))}});var ZL=C((KWe,VL)=>{"use strict";var doe=(t,e,r)=>{let i=t.indexOf(e);if(i===-1)return t;let n=e.length,s=0,o="";do o+=t.substr(s,i-s)+e+r,s=i+n,i=t.indexOf(e,s);while(i!==-1);return o+=t.substr(s),o},Coe=(t,e,r,i)=>{let n=0,s="";do{let o=t[i-1]==="\r";s+=t.substr(n,(o?i-1:i)-n)+e+(o?`\r +(()=>{var zoe=Object.create,Ig=Object.defineProperty,Voe=Object.defineProperties,Xoe=Object.getOwnPropertyDescriptor,Zoe=Object.getOwnPropertyDescriptors,_oe=Object.getOwnPropertyNames,dC=Object.getOwnPropertySymbols,$oe=Object.getPrototypeOf,fw=Object.prototype.hasOwnProperty,SL=Object.prototype.propertyIsEnumerable;var xL=(t,e,r)=>e in t?Ig(t,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[e]=r,k=(t,e)=>{for(var r in e||(e={}))fw.call(e,r)&&xL(t,r,e[r]);if(dC)for(var r of dC(e))SL.call(e,r)&&xL(t,r,e[r]);return t},V=(t,e)=>Voe(t,Zoe(e)),eae=t=>Ig(t,"__esModule",{value:!0});var Lr=(t,e)=>{var r={};for(var i in t)fw.call(t,i)&&e.indexOf(i)<0&&(r[i]=t[i]);if(t!=null&&dC)for(var i of dC(t))e.indexOf(i)<0&&SL.call(t,i)&&(r[i]=t[i]);return r},tae=(t,e)=>()=>(t&&(e=t(t=0)),e),C=(t,e)=>()=>(e||t((e={exports:{}}).exports,e),e.exports),$e=(t,e)=>{for(var r in e)Ig(t,r,{get:e[r],enumerable:!0})},rae=(t,e,r)=>{if(e&&typeof e=="object"||typeof e=="function")for(let i of _oe(e))!fw.call(t,i)&&i!=="default"&&Ig(t,i,{get:()=>e[i],enumerable:!(r=Xoe(e,i))||r.enumerable});return t},te=t=>rae(eae(Ig(t!=null?zoe($oe(t)):{},"default",t&&t.__esModule&&"default"in t?{get:()=>t.default,enumerable:!0}:{value:t,enumerable:!0})),t);var nN=C((o4e,eN)=>{eN.exports=tN;tN.sync=dae;var rN=require("fs");function Cae(t,e){var r=e.pathExt!==void 0?e.pathExt:process.env.PATHEXT;if(!r||(r=r.split(";"),r.indexOf("")!==-1))return!0;for(var i=0;i{sN.exports=oN;oN.sync=mae;var aN=require("fs");function oN(t,e,r){aN.stat(t,function(i,n){r(i,i?!1:AN(n,e))})}function mae(t,e){return AN(aN.statSync(t),e)}function AN(t,e){return t.isFile()&&Iae(t,e)}function Iae(t,e){var r=t.mode,i=t.uid,n=t.gid,s=e.uid!==void 0?e.uid:process.getuid&&process.getuid(),o=e.gid!==void 0?e.gid:process.getgid&&process.getgid(),a=parseInt("100",8),l=parseInt("010",8),c=parseInt("001",8),u=a|l,g=r&c||r&l&&n===o||r&a&&i===s||r&u&&s===0;return g}});var uN=C((l4e,cN)=>{var A4e=require("fs"),xC;process.platform==="win32"||global.TESTING_WINDOWS?xC=nN():xC=lN();cN.exports=Pw;Pw.sync=Eae;function Pw(t,e,r){if(typeof e=="function"&&(r=e,e={}),!r){if(typeof Promise!="function")throw new TypeError("callback not provided");return new Promise(function(i,n){Pw(t,e||{},function(s,o){s?n(s):i(o)})})}xC(t,e||{},function(i,n){i&&(i.code==="EACCES"||e&&e.ignoreErrors)&&(i=null,n=!1),r(i,n)})}function Eae(t,e){try{return xC.sync(t,e||{})}catch(r){if(e&&e.ignoreErrors||r.code==="EACCES")return!1;throw r}}});var mN=C((c4e,gN)=>{var Fl=process.platform==="win32"||process.env.OSTYPE==="cygwin"||process.env.OSTYPE==="msys",hN=require("path"),yae=Fl?";":":",fN=uN(),pN=t=>Object.assign(new Error(`not found: ${t}`),{code:"ENOENT"}),dN=(t,e)=>{let r=e.colon||yae,i=t.match(/\//)||Fl&&t.match(/\\/)?[""]:[...Fl?[process.cwd()]:[],...(e.path||process.env.PATH||"").split(r)],n=Fl?e.pathExt||process.env.PATHEXT||".EXE;.CMD;.BAT;.COM":"",s=Fl?n.split(r):[""];return Fl&&t.indexOf(".")!==-1&&s[0]!==""&&s.unshift(""),{pathEnv:i,pathExt:s,pathExtExe:n}},CN=(t,e,r)=>{typeof e=="function"&&(r=e,e={}),e||(e={});let{pathEnv:i,pathExt:n,pathExtExe:s}=dN(t,e),o=[],a=c=>new Promise((u,g)=>{if(c===i.length)return e.all&&o.length?u(o):g(pN(t));let h=i[c],f=/^".*"$/.test(h)?h.slice(1,-1):h,p=hN.join(f,t),m=!f&&/^\.[\\\/]/.test(t)?t.slice(0,2)+p:p;u(l(m,c,0))}),l=(c,u,g)=>new Promise((h,f)=>{if(g===n.length)return h(a(u+1));let p=n[g];fN(c+p,{pathExt:s},(m,I)=>{if(!m&&I)if(e.all)o.push(c+p);else return h(c+p);return h(l(c,u,g+1))})});return r?a(0).then(c=>r(null,c),r):a(0)},Bae=(t,e)=>{e=e||{};let{pathEnv:r,pathExt:i,pathExtExe:n}=dN(t,e),s=[];for(let o=0;o{"use strict";var IN=(t={})=>{let e=t.env||process.env;return(t.platform||process.platform)!=="win32"?"PATH":Object.keys(e).reverse().find(i=>i.toUpperCase()==="PATH")||"Path"};kw.exports=IN;kw.exports.default=IN});var QN=C((g4e,yN)=>{"use strict";var BN=require("path"),wae=mN(),Qae=EN();function wN(t,e){let r=t.options.env||process.env,i=process.cwd(),n=t.options.cwd!=null,s=n&&process.chdir!==void 0&&!process.chdir.disabled;if(s)try{process.chdir(t.options.cwd)}catch(a){}let o;try{o=wae.sync(t.command,{path:r[Qae({env:r})],pathExt:e?BN.delimiter:void 0})}catch(a){}finally{s&&process.chdir(i)}return o&&(o=BN.resolve(n?t.options.cwd:"",o)),o}function bae(t){return wN(t)||wN(t,!0)}yN.exports=bae});var bN=C((h4e,vw)=>{"use strict";var Fw=/([()\][%!^"`<>&|;, *?])/g;function Dae(t){return t=t.replace(Fw,"^$1"),t}function Sae(t,e){return t=`${t}`,t=t.replace(/(\\*)"/g,'$1$1\\"'),t=t.replace(/(\\*)$/,"$1$1"),t=`"${t}"`,t=t.replace(Fw,"^$1"),e&&(t=t.replace(Fw,"^$1")),t}vw.exports.command=Dae;vw.exports.argument=Sae});var SN=C((f4e,DN)=>{"use strict";DN.exports=/^#!(.*)/});var PN=C((p4e,xN)=>{"use strict";var xae=SN();xN.exports=(t="")=>{let e=t.match(xae);if(!e)return null;let[r,i]=e[0].replace(/#! ?/,"").split(" "),n=r.split("/").pop();return n==="env"?i:i?`${n} ${i}`:n}});var vN=C((d4e,kN)=>{"use strict";var Rw=require("fs"),Pae=PN();function kae(t){let e=150,r=Buffer.alloc(e),i;try{i=Rw.openSync(t,"r"),Rw.readSync(i,r,0,e,0),Rw.closeSync(i)}catch(n){}return Pae(r.toString())}kN.exports=kae});var NN=C((C4e,FN)=>{"use strict";var vae=require("path"),RN=QN(),LN=bN(),Fae=vN(),Rae=process.platform==="win32",Lae=/\.(?:com|exe)$/i,Nae=/node_modules[\\/].bin[\\/][^\\/]+\.cmd$/i;function Mae(t){t.file=RN(t);let e=t.file&&Fae(t.file);return e?(t.args.unshift(t.file),t.command=e,RN(t)):t.file}function Oae(t){if(!Rae)return t;let e=Mae(t),r=!Lae.test(e);if(t.options.forceShell||r){let i=Nae.test(e);t.command=vae.normalize(t.command),t.command=LN.command(t.command),t.args=t.args.map(s=>LN.argument(s,i));let n=[t.command].concat(t.args).join(" ");t.args=["/d","/s","/c",`"${n}"`],t.command=process.env.comspec||"cmd.exe",t.options.windowsVerbatimArguments=!0}return t}function Kae(t,e,r){e&&!Array.isArray(e)&&(r=e,e=null),e=e?e.slice(0):[],r=Object.assign({},r);let i={command:t,args:e,options:r,file:void 0,original:{command:t,args:e}};return r.shell?i:Oae(i)}FN.exports=Kae});var KN=C((m4e,MN)=>{"use strict";var Lw=process.platform==="win32";function Nw(t,e){return Object.assign(new Error(`${e} ${t.command} ENOENT`),{code:"ENOENT",errno:"ENOENT",syscall:`${e} ${t.command}`,path:t.command,spawnargs:t.args})}function Tae(t,e){if(!Lw)return;let r=t.emit;t.emit=function(i,n){if(i==="exit"){let s=ON(n,e,"spawn");if(s)return r.call(t,"error",s)}return r.apply(t,arguments)}}function ON(t,e){return Lw&&t===1&&!e.file?Nw(e.original,"spawn"):null}function Uae(t,e){return Lw&&t===1&&!e.file?Nw(e.original,"spawnSync"):null}MN.exports={hookChildProcess:Tae,verifyENOENT:ON,verifyENOENTSync:Uae,notFoundError:Nw}});var Kw=C((I4e,Rl)=>{"use strict";var TN=require("child_process"),Mw=NN(),Ow=KN();function UN(t,e,r){let i=Mw(t,e,r),n=TN.spawn(i.command,i.args,i.options);return Ow.hookChildProcess(n,i),n}function Hae(t,e,r){let i=Mw(t,e,r),n=TN.spawnSync(i.command,i.args,i.options);return n.error=n.error||Ow.verifyENOENTSync(n.status,i),n}Rl.exports=UN;Rl.exports.spawn=UN;Rl.exports.sync=Hae;Rl.exports._parse=Mw;Rl.exports._enoent=Ow});var YN=C((Q4e,HN)=>{"use strict";HN.exports={aliceblue:[240,248,255],antiquewhite:[250,235,215],aqua:[0,255,255],aquamarine:[127,255,212],azure:[240,255,255],beige:[245,245,220],bisque:[255,228,196],black:[0,0,0],blanchedalmond:[255,235,205],blue:[0,0,255],blueviolet:[138,43,226],brown:[165,42,42],burlywood:[222,184,135],cadetblue:[95,158,160],chartreuse:[127,255,0],chocolate:[210,105,30],coral:[255,127,80],cornflowerblue:[100,149,237],cornsilk:[255,248,220],crimson:[220,20,60],cyan:[0,255,255],darkblue:[0,0,139],darkcyan:[0,139,139],darkgoldenrod:[184,134,11],darkgray:[169,169,169],darkgreen:[0,100,0],darkgrey:[169,169,169],darkkhaki:[189,183,107],darkmagenta:[139,0,139],darkolivegreen:[85,107,47],darkorange:[255,140,0],darkorchid:[153,50,204],darkred:[139,0,0],darksalmon:[233,150,122],darkseagreen:[143,188,143],darkslateblue:[72,61,139],darkslategray:[47,79,79],darkslategrey:[47,79,79],darkturquoise:[0,206,209],darkviolet:[148,0,211],deeppink:[255,20,147],deepskyblue:[0,191,255],dimgray:[105,105,105],dimgrey:[105,105,105],dodgerblue:[30,144,255],firebrick:[178,34,34],floralwhite:[255,250,240],forestgreen:[34,139,34],fuchsia:[255,0,255],gainsboro:[220,220,220],ghostwhite:[248,248,255],gold:[255,215,0],goldenrod:[218,165,32],gray:[128,128,128],green:[0,128,0],greenyellow:[173,255,47],grey:[128,128,128],honeydew:[240,255,240],hotpink:[255,105,180],indianred:[205,92,92],indigo:[75,0,130],ivory:[255,255,240],khaki:[240,230,140],lavender:[230,230,250],lavenderblush:[255,240,245],lawngreen:[124,252,0],lemonchiffon:[255,250,205],lightblue:[173,216,230],lightcoral:[240,128,128],lightcyan:[224,255,255],lightgoldenrodyellow:[250,250,210],lightgray:[211,211,211],lightgreen:[144,238,144],lightgrey:[211,211,211],lightpink:[255,182,193],lightsalmon:[255,160,122],lightseagreen:[32,178,170],lightskyblue:[135,206,250],lightslategray:[119,136,153],lightslategrey:[119,136,153],lightsteelblue:[176,196,222],lightyellow:[255,255,224],lime:[0,255,0],limegreen:[50,205,50],linen:[250,240,230],magenta:[255,0,255],maroon:[128,0,0],mediumaquamarine:[102,205,170],mediumblue:[0,0,205],mediumorchid:[186,85,211],mediumpurple:[147,112,219],mediumseagreen:[60,179,113],mediumslateblue:[123,104,238],mediumspringgreen:[0,250,154],mediumturquoise:[72,209,204],mediumvioletred:[199,21,133],midnightblue:[25,25,112],mintcream:[245,255,250],mistyrose:[255,228,225],moccasin:[255,228,181],navajowhite:[255,222,173],navy:[0,0,128],oldlace:[253,245,230],olive:[128,128,0],olivedrab:[107,142,35],orange:[255,165,0],orangered:[255,69,0],orchid:[218,112,214],palegoldenrod:[238,232,170],palegreen:[152,251,152],paleturquoise:[175,238,238],palevioletred:[219,112,147],papayawhip:[255,239,213],peachpuff:[255,218,185],peru:[205,133,63],pink:[255,192,203],plum:[221,160,221],powderblue:[176,224,230],purple:[128,0,128],rebeccapurple:[102,51,153],red:[255,0,0],rosybrown:[188,143,143],royalblue:[65,105,225],saddlebrown:[139,69,19],salmon:[250,128,114],sandybrown:[244,164,96],seagreen:[46,139,87],seashell:[255,245,238],sienna:[160,82,45],silver:[192,192,192],skyblue:[135,206,235],slateblue:[106,90,205],slategray:[112,128,144],slategrey:[112,128,144],snow:[255,250,250],springgreen:[0,255,127],steelblue:[70,130,180],tan:[210,180,140],teal:[0,128,128],thistle:[216,191,216],tomato:[255,99,71],turquoise:[64,224,208],violet:[238,130,238],wheat:[245,222,179],white:[255,255,255],whitesmoke:[245,245,245],yellow:[255,255,0],yellowgreen:[154,205,50]}});var Ww=C((b4e,GN)=>{var Mg=YN(),jN={};for(let t of Object.keys(Mg))jN[Mg[t]]=t;var Ge={rgb:{channels:3,labels:"rgb"},hsl:{channels:3,labels:"hsl"},hsv:{channels:3,labels:"hsv"},hwb:{channels:3,labels:"hwb"},cmyk:{channels:4,labels:"cmyk"},xyz:{channels:3,labels:"xyz"},lab:{channels:3,labels:"lab"},lch:{channels:3,labels:"lch"},hex:{channels:1,labels:["hex"]},keyword:{channels:1,labels:["keyword"]},ansi16:{channels:1,labels:["ansi16"]},ansi256:{channels:1,labels:["ansi256"]},hcg:{channels:3,labels:["h","c","g"]},apple:{channels:3,labels:["r16","g16","b16"]},gray:{channels:1,labels:["gray"]}};GN.exports=Ge;for(let t of Object.keys(Ge)){if(!("channels"in Ge[t]))throw new Error("missing channels property: "+t);if(!("labels"in Ge[t]))throw new Error("missing channel labels property: "+t);if(Ge[t].labels.length!==Ge[t].channels)throw new Error("channel and label counts mismatch: "+t);let{channels:e,labels:r}=Ge[t];delete Ge[t].channels,delete Ge[t].labels,Object.defineProperty(Ge[t],"channels",{value:e}),Object.defineProperty(Ge[t],"labels",{value:r})}Ge.rgb.hsl=function(t){let e=t[0]/255,r=t[1]/255,i=t[2]/255,n=Math.min(e,r,i),s=Math.max(e,r,i),o=s-n,a,l;s===n?a=0:e===s?a=(r-i)/o:r===s?a=2+(i-e)/o:i===s&&(a=4+(e-r)/o),a=Math.min(a*60,360),a<0&&(a+=360);let c=(n+s)/2;return s===n?l=0:c<=.5?l=o/(s+n):l=o/(2-s-n),[a,l*100,c*100]};Ge.rgb.hsv=function(t){let e,r,i,n,s,o=t[0]/255,a=t[1]/255,l=t[2]/255,c=Math.max(o,a,l),u=c-Math.min(o,a,l),g=function(h){return(c-h)/6/u+1/2};return u===0?(n=0,s=0):(s=u/c,e=g(o),r=g(a),i=g(l),o===c?n=i-r:a===c?n=1/3+e-i:l===c&&(n=2/3+r-e),n<0?n+=1:n>1&&(n-=1)),[n*360,s*100,c*100]};Ge.rgb.hwb=function(t){let e=t[0],r=t[1],i=t[2],n=Ge.rgb.hsl(t)[0],s=1/255*Math.min(e,Math.min(r,i));return i=1-1/255*Math.max(e,Math.max(r,i)),[n,s*100,i*100]};Ge.rgb.cmyk=function(t){let e=t[0]/255,r=t[1]/255,i=t[2]/255,n=Math.min(1-e,1-r,1-i),s=(1-e-n)/(1-n)||0,o=(1-r-n)/(1-n)||0,a=(1-i-n)/(1-n)||0;return[s*100,o*100,a*100,n*100]};function jae(t,e){return(t[0]-e[0])**2+(t[1]-e[1])**2+(t[2]-e[2])**2}Ge.rgb.keyword=function(t){let e=jN[t];if(e)return e;let r=Infinity,i;for(let n of Object.keys(Mg)){let s=Mg[n],o=jae(t,s);o.04045?((e+.055)/1.055)**2.4:e/12.92,r=r>.04045?((r+.055)/1.055)**2.4:r/12.92,i=i>.04045?((i+.055)/1.055)**2.4:i/12.92;let n=e*.4124+r*.3576+i*.1805,s=e*.2126+r*.7152+i*.0722,o=e*.0193+r*.1192+i*.9505;return[n*100,s*100,o*100]};Ge.rgb.lab=function(t){let e=Ge.rgb.xyz(t),r=e[0],i=e[1],n=e[2];r/=95.047,i/=100,n/=108.883,r=r>.008856?r**(1/3):7.787*r+16/116,i=i>.008856?i**(1/3):7.787*i+16/116,n=n>.008856?n**(1/3):7.787*n+16/116;let s=116*i-16,o=500*(r-i),a=200*(i-n);return[s,o,a]};Ge.hsl.rgb=function(t){let e=t[0]/360,r=t[1]/100,i=t[2]/100,n,s,o;if(r===0)return o=i*255,[o,o,o];i<.5?n=i*(1+r):n=i+r-i*r;let a=2*i-n,l=[0,0,0];for(let c=0;c<3;c++)s=e+1/3*-(c-1),s<0&&s++,s>1&&s--,6*s<1?o=a+(n-a)*6*s:2*s<1?o=n:3*s<2?o=a+(n-a)*(2/3-s)*6:o=a,l[c]=o*255;return l};Ge.hsl.hsv=function(t){let e=t[0],r=t[1]/100,i=t[2]/100,n=r,s=Math.max(i,.01);i*=2,r*=i<=1?i:2-i,n*=s<=1?s:2-s;let o=(i+r)/2,a=i===0?2*n/(s+n):2*r/(i+r);return[e,a*100,o*100]};Ge.hsv.rgb=function(t){let e=t[0]/60,r=t[1]/100,i=t[2]/100,n=Math.floor(e)%6,s=e-Math.floor(e),o=255*i*(1-r),a=255*i*(1-r*s),l=255*i*(1-r*(1-s));switch(i*=255,n){case 0:return[i,l,o];case 1:return[a,i,o];case 2:return[o,i,l];case 3:return[o,a,i];case 4:return[l,o,i];case 5:return[i,o,a]}};Ge.hsv.hsl=function(t){let e=t[0],r=t[1]/100,i=t[2]/100,n=Math.max(i,.01),s,o;o=(2-r)*i;let a=(2-r)*n;return s=r*n,s/=a<=1?a:2-a,s=s||0,o/=2,[e,s*100,o*100]};Ge.hwb.rgb=function(t){let e=t[0]/360,r=t[1]/100,i=t[2]/100,n=r+i,s;n>1&&(r/=n,i/=n);let o=Math.floor(6*e),a=1-i;s=6*e-o,(o&1)!=0&&(s=1-s);let l=r+s*(a-r),c,u,g;switch(o){default:case 6:case 0:c=a,u=l,g=r;break;case 1:c=l,u=a,g=r;break;case 2:c=r,u=a,g=l;break;case 3:c=r,u=l,g=a;break;case 4:c=l,u=r,g=a;break;case 5:c=a,u=r,g=l;break}return[c*255,u*255,g*255]};Ge.cmyk.rgb=function(t){let e=t[0]/100,r=t[1]/100,i=t[2]/100,n=t[3]/100,s=1-Math.min(1,e*(1-n)+n),o=1-Math.min(1,r*(1-n)+n),a=1-Math.min(1,i*(1-n)+n);return[s*255,o*255,a*255]};Ge.xyz.rgb=function(t){let e=t[0]/100,r=t[1]/100,i=t[2]/100,n,s,o;return n=e*3.2406+r*-1.5372+i*-.4986,s=e*-.9689+r*1.8758+i*.0415,o=e*.0557+r*-.204+i*1.057,n=n>.0031308?1.055*n**(1/2.4)-.055:n*12.92,s=s>.0031308?1.055*s**(1/2.4)-.055:s*12.92,o=o>.0031308?1.055*o**(1/2.4)-.055:o*12.92,n=Math.min(Math.max(0,n),1),s=Math.min(Math.max(0,s),1),o=Math.min(Math.max(0,o),1),[n*255,s*255,o*255]};Ge.xyz.lab=function(t){let e=t[0],r=t[1],i=t[2];e/=95.047,r/=100,i/=108.883,e=e>.008856?e**(1/3):7.787*e+16/116,r=r>.008856?r**(1/3):7.787*r+16/116,i=i>.008856?i**(1/3):7.787*i+16/116;let n=116*r-16,s=500*(e-r),o=200*(r-i);return[n,s,o]};Ge.lab.xyz=function(t){let e=t[0],r=t[1],i=t[2],n,s,o;s=(e+16)/116,n=r/500+s,o=s-i/200;let a=s**3,l=n**3,c=o**3;return s=a>.008856?a:(s-16/116)/7.787,n=l>.008856?l:(n-16/116)/7.787,o=c>.008856?c:(o-16/116)/7.787,n*=95.047,s*=100,o*=108.883,[n,s,o]};Ge.lab.lch=function(t){let e=t[0],r=t[1],i=t[2],n;n=Math.atan2(i,r)*360/2/Math.PI,n<0&&(n+=360);let o=Math.sqrt(r*r+i*i);return[e,o,n]};Ge.lch.lab=function(t){let e=t[0],r=t[1],n=t[2]/360*2*Math.PI,s=r*Math.cos(n),o=r*Math.sin(n);return[e,s,o]};Ge.rgb.ansi16=function(t,e=null){let[r,i,n]=t,s=e===null?Ge.rgb.hsv(t)[2]:e;if(s=Math.round(s/50),s===0)return 30;let o=30+(Math.round(n/255)<<2|Math.round(i/255)<<1|Math.round(r/255));return s===2&&(o+=60),o};Ge.hsv.ansi16=function(t){return Ge.rgb.ansi16(Ge.hsv.rgb(t),t[2])};Ge.rgb.ansi256=function(t){let e=t[0],r=t[1],i=t[2];return e===r&&r===i?e<8?16:e>248?231:Math.round((e-8)/247*24)+232:16+36*Math.round(e/255*5)+6*Math.round(r/255*5)+Math.round(i/255*5)};Ge.ansi16.rgb=function(t){let e=t%10;if(e===0||e===7)return t>50&&(e+=3.5),e=e/10.5*255,[e,e,e];let r=(~~(t>50)+1)*.5,i=(e&1)*r*255,n=(e>>1&1)*r*255,s=(e>>2&1)*r*255;return[i,n,s]};Ge.ansi256.rgb=function(t){if(t>=232){let s=(t-232)*10+8;return[s,s,s]}t-=16;let e,r=Math.floor(t/36)/5*255,i=Math.floor((e=t%36)/6)/5*255,n=e%6/5*255;return[r,i,n]};Ge.rgb.hex=function(t){let r=(((Math.round(t[0])&255)<<16)+((Math.round(t[1])&255)<<8)+(Math.round(t[2])&255)).toString(16).toUpperCase();return"000000".substring(r.length)+r};Ge.hex.rgb=function(t){let e=t.toString(16).match(/[a-f0-9]{6}|[a-f0-9]{3}/i);if(!e)return[0,0,0];let r=e[0];e[0].length===3&&(r=r.split("").map(a=>a+a).join(""));let i=parseInt(r,16),n=i>>16&255,s=i>>8&255,o=i&255;return[n,s,o]};Ge.rgb.hcg=function(t){let e=t[0]/255,r=t[1]/255,i=t[2]/255,n=Math.max(Math.max(e,r),i),s=Math.min(Math.min(e,r),i),o=n-s,a,l;return o<1?a=s/(1-o):a=0,o<=0?l=0:n===e?l=(r-i)/o%6:n===r?l=2+(i-e)/o:l=4+(e-r)/o,l/=6,l%=1,[l*360,o*100,a*100]};Ge.hsl.hcg=function(t){let e=t[1]/100,r=t[2]/100,i=r<.5?2*e*r:2*e*(1-r),n=0;return i<1&&(n=(r-.5*i)/(1-i)),[t[0],i*100,n*100]};Ge.hsv.hcg=function(t){let e=t[1]/100,r=t[2]/100,i=e*r,n=0;return i<1&&(n=(r-i)/(1-i)),[t[0],i*100,n*100]};Ge.hcg.rgb=function(t){let e=t[0]/360,r=t[1]/100,i=t[2]/100;if(r===0)return[i*255,i*255,i*255];let n=[0,0,0],s=e%1*6,o=s%1,a=1-o,l=0;switch(Math.floor(s)){case 0:n[0]=1,n[1]=o,n[2]=0;break;case 1:n[0]=a,n[1]=1,n[2]=0;break;case 2:n[0]=0,n[1]=1,n[2]=o;break;case 3:n[0]=0,n[1]=a,n[2]=1;break;case 4:n[0]=o,n[1]=0,n[2]=1;break;default:n[0]=1,n[1]=0,n[2]=a}return l=(1-r)*i,[(r*n[0]+l)*255,(r*n[1]+l)*255,(r*n[2]+l)*255]};Ge.hcg.hsv=function(t){let e=t[1]/100,r=t[2]/100,i=e+r*(1-e),n=0;return i>0&&(n=e/i),[t[0],n*100,i*100]};Ge.hcg.hsl=function(t){let e=t[1]/100,i=t[2]/100*(1-e)+.5*e,n=0;return i>0&&i<.5?n=e/(2*i):i>=.5&&i<1&&(n=e/(2*(1-i))),[t[0],n*100,i*100]};Ge.hcg.hwb=function(t){let e=t[1]/100,r=t[2]/100,i=e+r*(1-e);return[t[0],(i-e)*100,(1-i)*100]};Ge.hwb.hcg=function(t){let e=t[1]/100,r=t[2]/100,i=1-r,n=i-e,s=0;return n<1&&(s=(i-n)/(1-n)),[t[0],n*100,s*100]};Ge.apple.rgb=function(t){return[t[0]/65535*255,t[1]/65535*255,t[2]/65535*255]};Ge.rgb.apple=function(t){return[t[0]/255*65535,t[1]/255*65535,t[2]/255*65535]};Ge.gray.rgb=function(t){return[t[0]/100*255,t[0]/100*255,t[0]/100*255]};Ge.gray.hsl=function(t){return[0,0,t[0]]};Ge.gray.hsv=Ge.gray.hsl;Ge.gray.hwb=function(t){return[0,100,t[0]]};Ge.gray.cmyk=function(t){return[0,0,0,t[0]]};Ge.gray.lab=function(t){return[t[0],0,0]};Ge.gray.hex=function(t){let e=Math.round(t[0]/100*255)&255,i=((e<<16)+(e<<8)+e).toString(16).toUpperCase();return"000000".substring(i.length)+i};Ge.rgb.gray=function(t){return[(t[0]+t[1]+t[2])/3/255*100]}});var JN=C((D4e,qN)=>{var PC=Ww();function qae(){let t={},e=Object.keys(PC);for(let r=e.length,i=0;i{var zw=Ww(),Vae=JN(),Ll={},Xae=Object.keys(zw);function Zae(t){let e=function(...r){let i=r[0];return i==null?i:(i.length>1&&(r=i),t(r))};return"conversion"in t&&(e.conversion=t.conversion),e}function _ae(t){let e=function(...r){let i=r[0];if(i==null)return i;i.length>1&&(r=i);let n=t(r);if(typeof n=="object")for(let s=n.length,o=0;o{Ll[t]={},Object.defineProperty(Ll[t],"channels",{value:zw[t].channels}),Object.defineProperty(Ll[t],"labels",{value:zw[t].labels});let e=Vae(t);Object.keys(e).forEach(i=>{let n=e[i];Ll[t][i]=_ae(n),Ll[t][i].raw=Zae(n)})});WN.exports=Ll});var eM=C((x4e,VN)=>{"use strict";var XN=(t,e)=>(...r)=>`[${t(...r)+e}m`,ZN=(t,e)=>(...r)=>{let i=t(...r);return`[${38+e};5;${i}m`},_N=(t,e)=>(...r)=>{let i=t(...r);return`[${38+e};2;${i[0]};${i[1]};${i[2]}m`},kC=t=>t,$N=(t,e,r)=>[t,e,r],Nl=(t,e,r)=>{Object.defineProperty(t,e,{get:()=>{let i=r();return Object.defineProperty(t,e,{value:i,enumerable:!0,configurable:!0}),i},enumerable:!0,configurable:!0})},Vw,Ml=(t,e,r,i)=>{Vw===void 0&&(Vw=zN());let n=i?10:0,s={};for(let[o,a]of Object.entries(Vw)){let l=o==="ansi16"?"ansi":o;o===e?s[l]=t(r,n):typeof a=="object"&&(s[l]=t(a[e],n))}return s};function $ae(){let t=new Map,e={modifier:{reset:[0,0],bold:[1,22],dim:[2,22],italic:[3,23],underline:[4,24],inverse:[7,27],hidden:[8,28],strikethrough:[9,29]},color:{black:[30,39],red:[31,39],green:[32,39],yellow:[33,39],blue:[34,39],magenta:[35,39],cyan:[36,39],white:[37,39],blackBright:[90,39],redBright:[91,39],greenBright:[92,39],yellowBright:[93,39],blueBright:[94,39],magentaBright:[95,39],cyanBright:[96,39],whiteBright:[97,39]},bgColor:{bgBlack:[40,49],bgRed:[41,49],bgGreen:[42,49],bgYellow:[43,49],bgBlue:[44,49],bgMagenta:[45,49],bgCyan:[46,49],bgWhite:[47,49],bgBlackBright:[100,49],bgRedBright:[101,49],bgGreenBright:[102,49],bgYellowBright:[103,49],bgBlueBright:[104,49],bgMagentaBright:[105,49],bgCyanBright:[106,49],bgWhiteBright:[107,49]}};e.color.gray=e.color.blackBright,e.bgColor.bgGray=e.bgColor.bgBlackBright,e.color.grey=e.color.blackBright,e.bgColor.bgGrey=e.bgColor.bgBlackBright;for(let[r,i]of Object.entries(e)){for(let[n,s]of Object.entries(i))e[n]={open:`[${s[0]}m`,close:`[${s[1]}m`},i[n]=e[n],t.set(s[0],s[1]);Object.defineProperty(e,r,{value:i,enumerable:!1})}return Object.defineProperty(e,"codes",{value:t,enumerable:!1}),e.color.close="",e.bgColor.close="",Nl(e.color,"ansi",()=>Ml(XN,"ansi16",kC,!1)),Nl(e.color,"ansi256",()=>Ml(ZN,"ansi256",kC,!1)),Nl(e.color,"ansi16m",()=>Ml(_N,"rgb",$N,!1)),Nl(e.bgColor,"ansi",()=>Ml(XN,"ansi16",kC,!0)),Nl(e.bgColor,"ansi256",()=>Ml(ZN,"ansi256",kC,!0)),Nl(e.bgColor,"ansi16m",()=>Ml(_N,"rgb",$N,!0)),e}Object.defineProperty(VN,"exports",{enumerable:!0,get:$ae})});var rM=C((P4e,tM)=>{"use strict";tM.exports=(t,e=process.argv)=>{let r=t.startsWith("-")?"":t.length===1?"-":"--",i=e.indexOf(r+t),n=e.indexOf("--");return i!==-1&&(n===-1||i{"use strict";var eAe=require("os"),nM=require("tty"),on=rM(),{env:dr}=process,No;on("no-color")||on("no-colors")||on("color=false")||on("color=never")?No=0:(on("color")||on("colors")||on("color=true")||on("color=always"))&&(No=1);"FORCE_COLOR"in dr&&(dr.FORCE_COLOR==="true"?No=1:dr.FORCE_COLOR==="false"?No=0:No=dr.FORCE_COLOR.length===0?1:Math.min(parseInt(dr.FORCE_COLOR,10),3));function Xw(t){return t===0?!1:{level:t,hasBasic:!0,has256:t>=2,has16m:t>=3}}function Zw(t,e){if(No===0)return 0;if(on("color=16m")||on("color=full")||on("color=truecolor"))return 3;if(on("color=256"))return 2;if(t&&!e&&No===void 0)return 0;let r=No||0;if(dr.TERM==="dumb")return r;if(process.platform==="win32"){let i=eAe.release().split(".");return Number(i[0])>=10&&Number(i[2])>=10586?Number(i[2])>=14931?3:2:1}if("CI"in dr)return["TRAVIS","CIRCLECI","APPVEYOR","GITLAB_CI"].some(i=>i in dr)||dr.CI_NAME==="codeship"?1:r;if("TEAMCITY_VERSION"in dr)return/^(9\.(0*[1-9]\d*)\.|\d{2,}\.)/.test(dr.TEAMCITY_VERSION)?1:0;if("GITHUB_ACTIONS"in dr)return 1;if(dr.COLORTERM==="truecolor")return 3;if("TERM_PROGRAM"in dr){let i=parseInt((dr.TERM_PROGRAM_VERSION||"").split(".")[0],10);switch(dr.TERM_PROGRAM){case"iTerm.app":return i>=3?3:2;case"Apple_Terminal":return 2}}return/-256(color)?$/i.test(dr.TERM)?2:/^screen|^xterm|^vt100|^vt220|^rxvt|color|ansi|cygwin|linux/i.test(dr.TERM)||"COLORTERM"in dr?1:r}function tAe(t){let e=Zw(t,t&&t.isTTY);return Xw(e)}iM.exports={supportsColor:tAe,stdout:Xw(Zw(!0,nM.isatty(1))),stderr:Xw(Zw(!0,nM.isatty(2)))}});var aM=C((v4e,oM)=>{"use strict";var rAe=(t,e,r)=>{let i=t.indexOf(e);if(i===-1)return t;let n=e.length,s=0,o="";do o+=t.substr(s,i-s)+e+r,s=i+n,i=t.indexOf(e,s);while(i!==-1);return o+=t.substr(s),o},iAe=(t,e,r,i)=>{let n=0,s="";do{let o=t[i-1]==="\r";s+=t.substr(n,(o?i-1:i)-n)+e+(o?`\r `:` `)+r,n=i+1,i=t.indexOf(` -`,n)}while(i!==-1);return s+=t.substr(n),s};VL.exports={stringReplaceAll:doe,stringEncaseCRLFWithFirstIndex:Coe}});var rM=C((UWe,_L)=>{"use strict";var moe=/(?:\\(u(?:[a-f\d]{4}|\{[a-f\d]{1,6}\})|x[a-f\d]{2}|.))|(?:\{(~)?(\w+(?:\([^)]*\))?(?:\.\w+(?:\([^)]*\))?)*)(?:[ \t]|(?=\r?\n)))|(\})|((?:.|[\r\n\f])+?)/gi,$L=/(?:^|\.)(\w+)(?:\(([^)]*)\))?/g,Ioe=/^(['"])((?:\\.|(?!\1)[^\\])*)\1$/,Eoe=/\\(u(?:[a-f\d]{4}|\{[a-f\d]{1,6}\})|x[a-f\d]{2}|.)|([^\\])/gi,yoe=new Map([["n",` -`],["r","\r"],["t"," "],["b","\b"],["f","\f"],["v","\v"],["0","\0"],["\\","\\"],["e",""],["a","\x07"]]);function eM(t){let e=t[0]==="u",r=t[1]==="{";return e&&!r&&t.length===5||t[0]==="x"&&t.length===3?String.fromCharCode(parseInt(t.slice(1),16)):e&&r?String.fromCodePoint(parseInt(t.slice(2,-1),16)):yoe.get(t)||t}function Boe(t,e){let r=[],i=e.trim().split(/\s*,\s*/g),n;for(let s of i){let o=Number(s);if(!Number.isNaN(o))r.push(o);else if(n=s.match(Ioe))r.push(n[2].replace(Eoe,(a,l,c)=>l?eM(l):c));else throw new Error(`Invalid Chalk template style argument: ${s} (in style '${t}')`)}return r}function woe(t){$L.lastIndex=0;let e=[],r;for(;(r=$L.exec(t))!==null;){let i=r[1];if(r[2]){let n=Boe(i,r[2]);e.push([i].concat(n))}else e.push([i])}return e}function tM(t,e){let r={};for(let n of e)for(let s of n.styles)r[s[0]]=n.inverse?null:s.slice(1);let i=t;for(let[n,s]of Object.entries(r))if(!!Array.isArray(s)){if(!(n in i))throw new Error(`Unknown Chalk style: ${n}`);i=s.length>0?i[n](...s):i[n]}return i}_L.exports=(t,e)=>{let r=[],i=[],n=[];if(e.replace(moe,(s,o,a,l,c,u)=>{if(o)n.push(eM(o));else if(l){let g=n.join("");n=[],i.push(r.length===0?g:tM(t,r)(g)),r.push({inverse:a,styles:woe(l)})}else if(c){if(r.length===0)throw new Error("Found extraneous } in Chalk template literal");i.push(tM(t,r)(n.join(""))),n=[],r.pop()}else n.push(u)}),i.push(n.join("")),r.length>0){let s=`Chalk template literal is missing ${r.length} closing bracket${r.length===1?"":"s"} (\`}\`)`;throw new Error(s)}return i.join("")}});var AM=C((HWe,iM)=>{"use strict";var ng=GL(),{stdout:rw,stderr:iw}=XL(),{stringReplaceAll:Qoe,stringEncaseCRLFWithFirstIndex:boe}=ZL(),nM=["ansi","ansi","ansi256","ansi16m"],dl=Object.create(null),Doe=(t,e={})=>{if(e.level>3||e.level<0)throw new Error("The `level` option should be an integer from 0 to 3");let r=rw?rw.level:0;t.level=e.level===void 0?r:e.level},sM=class{constructor(e){return oM(e)}},oM=t=>{let e={};return Doe(e,t),e.template=(...r)=>Soe(e.template,...r),Object.setPrototypeOf(e,zd.prototype),Object.setPrototypeOf(e.template,e),e.template.constructor=()=>{throw new Error("`chalk.constructor()` is deprecated. Use `new chalk.Instance()` instead.")},e.template.Instance=sM,e.template};function zd(t){return oM(t)}for(let[t,e]of Object.entries(ng))dl[t]={get(){let r=Xd(this,nw(e.open,e.close,this._styler),this._isEmpty);return Object.defineProperty(this,t,{value:r}),r}};dl.visible={get(){let t=Xd(this,this._styler,!0);return Object.defineProperty(this,"visible",{value:t}),t}};var aM=["rgb","hex","keyword","hsl","hsv","hwb","ansi","ansi256"];for(let t of aM)dl[t]={get(){let{level:e}=this;return function(...r){let i=nw(ng.color[nM[e]][t](...r),ng.color.close,this._styler);return Xd(this,i,this._isEmpty)}}};for(let t of aM){let e="bg"+t[0].toUpperCase()+t.slice(1);dl[e]={get(){let{level:r}=this;return function(...i){let n=nw(ng.bgColor[nM[r]][t](...i),ng.bgColor.close,this._styler);return Xd(this,n,this._isEmpty)}}}}var Poe=Object.defineProperties(()=>{},{...dl,level:{enumerable:!0,get(){return this._generator.level},set(t){this._generator.level=t}}}),nw=(t,e,r)=>{let i,n;return r===void 0?(i=t,n=e):(i=r.openAll+t,n=e+r.closeAll),{open:t,close:e,openAll:i,closeAll:n,parent:r}},Xd=(t,e,r)=>{let i=(...n)=>xoe(i,n.length===1?""+n[0]:n.join(" "));return i.__proto__=Poe,i._generator=t,i._styler=e,i._isEmpty=r,i},xoe=(t,e)=>{if(t.level<=0||!e)return t._isEmpty?"":e;let r=t._styler;if(r===void 0)return e;let{openAll:i,closeAll:n}=r;if(e.indexOf("")!==-1)for(;r!==void 0;)e=Qoe(e,r.close,r.open),r=r.parent;let s=e.indexOf(` -`);return s!==-1&&(e=boe(e,n,i,s)),i+e+n},sw,Soe=(t,...e)=>{let[r]=e;if(!Array.isArray(r))return e.join(" ");let i=e.slice(1),n=[r.raw[0]];for(let s=1;s{lM.exports=[{name:"AppVeyor",constant:"APPVEYOR",env:"APPVEYOR",pr:"APPVEYOR_PULL_REQUEST_NUMBER"},{name:"Azure Pipelines",constant:"AZURE_PIPELINES",env:"SYSTEM_TEAMFOUNDATIONCOLLECTIONURI",pr:"SYSTEM_PULLREQUEST_PULLREQUESTID"},{name:"Bamboo",constant:"BAMBOO",env:"bamboo_planKey"},{name:"Bitbucket Pipelines",constant:"BITBUCKET",env:"BITBUCKET_COMMIT",pr:"BITBUCKET_PR_ID"},{name:"Bitrise",constant:"BITRISE",env:"BITRISE_IO",pr:"BITRISE_PULL_REQUEST"},{name:"Buddy",constant:"BUDDY",env:"BUDDY_WORKSPACE_ID",pr:"BUDDY_EXECUTION_PULL_REQUEST_ID"},{name:"Buildkite",constant:"BUILDKITE",env:"BUILDKITE",pr:{env:"BUILDKITE_PULL_REQUEST",ne:"false"}},{name:"CircleCI",constant:"CIRCLE",env:"CIRCLECI",pr:"CIRCLE_PULL_REQUEST"},{name:"Cirrus CI",constant:"CIRRUS",env:"CIRRUS_CI",pr:"CIRRUS_PR"},{name:"AWS CodeBuild",constant:"CODEBUILD",env:"CODEBUILD_BUILD_ARN"},{name:"Codeship",constant:"CODESHIP",env:{CI_NAME:"codeship"}},{name:"Drone",constant:"DRONE",env:"DRONE",pr:{DRONE_BUILD_EVENT:"pull_request"}},{name:"dsari",constant:"DSARI",env:"DSARI"},{name:"GitLab CI",constant:"GITLAB",env:"GITLAB_CI"},{name:"GoCD",constant:"GOCD",env:"GO_PIPELINE_LABEL"},{name:"Hudson",constant:"HUDSON",env:"HUDSON_URL"},{name:"Jenkins",constant:"JENKINS",env:["JENKINS_URL","BUILD_ID"],pr:{any:["ghprbPullId","CHANGE_ID"]}},{name:"Magnum CI",constant:"MAGNUM",env:"MAGNUM"},{name:"Netlify CI",constant:"NETLIFY",env:"NETLIFY_BUILD_BASE",pr:{env:"PULL_REQUEST",ne:"false"}},{name:"Sail CI",constant:"SAIL",env:"SAILCI",pr:"SAIL_PULL_REQUEST_NUMBER"},{name:"Semaphore",constant:"SEMAPHORE",env:"SEMAPHORE",pr:"PULL_REQUEST_NUMBER"},{name:"Shippable",constant:"SHIPPABLE",env:"SHIPPABLE",pr:{IS_PULL_REQUEST:"true"}},{name:"Solano CI",constant:"SOLANO",env:"TDDIUM",pr:"TDDIUM_PR_ID"},{name:"Strider CD",constant:"STRIDER",env:"STRIDER"},{name:"TaskCluster",constant:"TASKCLUSTER",env:["TASK_ID","RUN_ID"]},{name:"TeamCity",constant:"TEAMCITY",env:"TEAMCITY_VERSION"},{name:"Travis CI",constant:"TRAVIS",env:"TRAVIS",pr:{env:"TRAVIS_PULL_REQUEST",ne:"false"}}]});var og=C(ki=>{"use strict";var uM=cM(),Hn=process.env;Object.defineProperty(ki,"_vendors",{value:uM.map(function(t){return t.constant})});ki.name=null;ki.isPR=null;uM.forEach(function(t){var e=Array.isArray(t.env)?t.env:[t.env],r=e.every(function(i){return gM(i)});if(ki[t.constant]=r,r)switch(ki.name=t.name,typeof t.pr){case"string":ki.isPR=!!Hn[t.pr];break;case"object":"env"in t.pr?ki.isPR=t.pr.env in Hn&&Hn[t.pr.env]!==t.pr.ne:"any"in t.pr?ki.isPR=t.pr.any.some(function(i){return!!Hn[i]}):ki.isPR=gM(t.pr);break;default:ki.isPR=null}});ki.isCI=!!(Hn.CI||Hn.CONTINUOUS_INTEGRATION||Hn.BUILD_NUMBER||Hn.RUN_ID||ki.name||!1);function gM(t){return typeof t=="string"?!!Hn[t]:Object.keys(t).every(function(e){return Hn[e]===t[e]})}});var fM=C((GWe,hM)=>{"use strict";hM.exports=({onlyFirst:t=!1}={})=>{let e=["[\\u001B\\u009B][[\\]()#;?]*(?:(?:(?:[a-zA-Z\\d]*(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]*)*)?\\u0007)","(?:(?:\\d{1,4}(?:;\\d{0,4})*)?[\\dA-PR-TZcf-ntqry=><~]))"].join("|");return new RegExp(e,t?void 0:"g")}});var dM=C((qWe,pM)=>{"use strict";var koe=fM();pM.exports=t=>typeof t=="string"?t.replace(koe(),""):t});var Qo=C(voe=>{We(voe,{KeyRelationship:()=>ug,applyCascade:()=>qoe,base64RegExp:()=>BM,colorStringAlphaRegExp:()=>yM,colorStringRegExp:()=>EM,computeKey:()=>wo,getPrintable:()=>nr,hasExactLength:()=>SM,hasForbiddenKeys:()=>hae,hasKeyRelationship:()=>dae,hasMaxLength:()=>Xoe,hasMinLength:()=>zoe,hasMutuallyExclusiveKeys:()=>fae,hasRequiredKeys:()=>gae,hasUniqueItems:()=>Voe,isArray:()=>Koe,isAtLeast:()=>$oe,isAtMost:()=>eae,isBase64:()=>cae,isBoolean:()=>Noe,isDate:()=>Toe,isDict:()=>Hoe,isEnum:()=>Loe,isHexColor:()=>lae,isISO8601:()=>Aae,isInExclusiveRange:()=>rae,isInInclusiveRange:()=>tae,isInstanceOf:()=>joe,isInteger:()=>iae,isJSON:()=>uae,isLiteral:()=>Foe,isLowerCase:()=>sae,isNegative:()=>Zoe,isNullable:()=>Woe,isNumber:()=>Ooe,isObject:()=>Yoe,isOneOf:()=>Goe,isOptional:()=>Joe,isPositive:()=>_oe,isString:()=>Roe,isTuple:()=>Uoe,isUUID4:()=>aae,isUnknown:()=>DM,isUpperCase:()=>oae,iso8601RegExp:()=>uw,makeCoercionFn:()=>Ra,makeSetter:()=>bM,makeTrait:()=>QM,makeValidator:()=>rt,matchesRegExp:()=>nae,plural:()=>eC,pushError:()=>Ve,simpleKeyRegExp:()=>IM,uuid4RegExp:()=>wM});var IM=/^[a-zA-Z_][a-zA-Z0-9_]*$/,EM=/^#[0-9a-f]{6}$/i,yM=/^#[0-9a-f]{6}([0-9a-f]{2})?$/i,BM=/^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$/,wM=/^[a-f0-9]{8}-[a-f0-9]{4}-4[a-f0-9]{3}-[89aAbB][a-f0-9]{3}-[a-f0-9]{12}$/i,uw=/^(?:[1-9]\d{3}(-?)(?:(?:0[1-9]|1[0-2])\1(?:0[1-9]|1\d|2[0-8])|(?:0[13-9]|1[0-2])\1(?:29|30)|(?:0[13578]|1[02])(?:\1)31|00[1-9]|0[1-9]\d|[12]\d{2}|3(?:[0-5]\d|6[0-5]))|(?:[1-9]\d(?:0[48]|[2468][048]|[13579][26])|(?:[2468][048]|[13579][26])00)(?:(-?)02(?:\2)29|-?366))T(?:[01]\d|2[0-3])(:?)[0-5]\d(?:\3[0-5]\d)?(?:Z|[+-][01]\d(?:\3[0-5]\d)?)$/,QM=t=>()=>t;function rt({test:t}){return QM(t)()}function nr(t){return t===null?"null":t===void 0?"undefined":t===""?"an empty string":JSON.stringify(t)}function wo(t,e){var r,i,n;return typeof e=="number"?`${(r=t==null?void 0:t.p)!==null&&r!==void 0?r:"."}[${e}]`:IM.test(e)?`${(i=t==null?void 0:t.p)!==null&&i!==void 0?i:""}.${e}`:`${(n=t==null?void 0:t.p)!==null&&n!==void 0?n:"."}[${JSON.stringify(e)}]`}function Ra(t,e){return r=>{let i=t[e];return t[e]=r,Ra(t,e).bind(null,i)}}function bM(t,e){return r=>{t[e]=r}}function eC(t,e,r){return t===1?e:r}function Ve({errors:t,p:e}={},r){return t==null||t.push(`${e!=null?e:"."}: ${r}`),!1}var DM=()=>rt({test:(t,e)=>!0});function Foe(t){return rt({test:(e,r)=>e!==t?Ve(r,`Expected a literal (got ${nr(t)})`):!0})}var Roe=()=>rt({test:(t,e)=>typeof t!="string"?Ve(e,`Expected a string (got ${nr(t)})`):!0});function Loe(t){let e=Array.isArray(t)?t:Object.values(t),r=new Set(e);return rt({test:(i,n)=>r.has(i)?!0:Ve(n,`Expected a valid enumeration value (got ${nr(i)})`)})}var Moe=new Map([["true",!0],["True",!0],["1",!0],[1,!0],["false",!1],["False",!1],["0",!1],[0,!1]]),Noe=()=>rt({test:(t,e)=>{var r;if(typeof t!="boolean"){if(typeof(e==null?void 0:e.coercions)!="undefined"){if(typeof(e==null?void 0:e.coercion)=="undefined")return Ve(e,"Unbound coercion result");let i=Moe.get(t);if(typeof i!="undefined")return e.coercions.push([(r=e.p)!==null&&r!==void 0?r:".",e.coercion.bind(null,i)]),!0}return Ve(e,`Expected a boolean (got ${nr(t)})`)}return!0}}),Ooe=()=>rt({test:(t,e)=>{var r;if(typeof t!="number"){if(typeof(e==null?void 0:e.coercions)!="undefined"){if(typeof(e==null?void 0:e.coercion)=="undefined")return Ve(e,"Unbound coercion result");let i;if(typeof t=="string"){let n;try{n=JSON.parse(t)}catch(s){}if(typeof n=="number")if(JSON.stringify(n)===t)i=n;else return Ve(e,`Received a number that can't be safely represented by the runtime (${t})`)}if(typeof i!="undefined")return e.coercions.push([(r=e.p)!==null&&r!==void 0?r:".",e.coercion.bind(null,i)]),!0}return Ve(e,`Expected a number (got ${nr(t)})`)}return!0}}),Toe=()=>rt({test:(t,e)=>{var r;if(!(t instanceof Date)){if(typeof(e==null?void 0:e.coercions)!="undefined"){if(typeof(e==null?void 0:e.coercion)=="undefined")return Ve(e,"Unbound coercion result");let i;if(typeof t=="string"&&uw.test(t))i=new Date(t);else{let n;if(typeof t=="string"){let s;try{s=JSON.parse(t)}catch(o){}typeof s=="number"&&(n=s)}else typeof t=="number"&&(n=t);if(typeof n!="undefined")if(Number.isSafeInteger(n)||!Number.isSafeInteger(n*1e3))i=new Date(n*1e3);else return Ve(e,`Received a timestamp that can't be safely represented by the runtime (${t})`)}if(typeof i!="undefined")return e.coercions.push([(r=e.p)!==null&&r!==void 0?r:".",e.coercion.bind(null,i)]),!0}return Ve(e,`Expected a date (got ${nr(t)})`)}return!0}}),Koe=(t,{delimiter:e}={})=>rt({test:(r,i)=>{var n;if(typeof r=="string"&&typeof e!="undefined"&&typeof(i==null?void 0:i.coercions)!="undefined"){if(typeof(i==null?void 0:i.coercion)=="undefined")return Ve(i,"Unbound coercion result");r=r.split(e),i.coercions.push([(n=i.p)!==null&&n!==void 0?n:".",i.coercion.bind(null,r)])}if(!Array.isArray(r))return Ve(i,`Expected an array (got ${nr(r)})`);let s=!0;for(let o=0,a=r.length;o{let r=SM(t.length);return rt({test:(i,n)=>{var s;if(typeof i=="string"&&typeof e!="undefined"&&typeof(n==null?void 0:n.coercions)!="undefined"){if(typeof(n==null?void 0:n.coercion)=="undefined")return Ve(n,"Unbound coercion result");i=i.split(e),n.coercions.push([(s=n.p)!==null&&s!==void 0?s:".",n.coercion.bind(null,i)])}if(!Array.isArray(i))return Ve(n,`Expected a tuple (got ${nr(i)})`);let o=r(i,Object.assign({},n));for(let a=0,l=i.length;art({test:(r,i)=>{if(typeof r!="object"||r===null)return Ve(i,`Expected an object (got ${nr(r)})`);let n=Object.keys(r),s=!0;for(let o=0,a=n.length&&(s||(i==null?void 0:i.errors)!=null);o{let r=Object.keys(t);return rt({test:(i,n)=>{if(typeof i!="object"||i===null)return Ve(n,`Expected an object (got ${nr(i)})`);let s=new Set([...r,...Object.keys(i)]),o={},a=!0;for(let l of s){if(l==="constructor"||l==="__proto__")a=Ve(Object.assign(Object.assign({},n),{p:wo(n,l)}),"Unsafe property name");else{let c=Object.prototype.hasOwnProperty.call(t,l)?t[l]:void 0,u=Object.prototype.hasOwnProperty.call(i,l)?i[l]:void 0;typeof c!="undefined"?a=c(u,Object.assign(Object.assign({},n),{p:wo(n,l),coercion:Ra(i,l)}))&&a:e===null?a=Ve(Object.assign(Object.assign({},n),{p:wo(n,l)}),`Extraneous property (got ${nr(u)})`):Object.defineProperty(o,l,{enumerable:!0,get:()=>u,set:bM(i,l)})}if(!a&&(n==null?void 0:n.errors)==null)break}return e!==null&&(a||(n==null?void 0:n.errors)!=null)&&(a=e(o,n)&&a),a}})},joe=t=>rt({test:(e,r)=>e instanceof t?!0:Ve(r,`Expected an instance of ${t.name} (got ${nr(e)})`)}),Goe=(t,{exclusive:e=!1}={})=>rt({test:(r,i)=>{var n,s,o;let a=[],l=typeof(i==null?void 0:i.errors)!="undefined"?[]:void 0;for(let c=0,u=t.length;c1?Ve(i,`Expected to match exactly a single predicate (matched ${a.join(", ")})`):(o=i==null?void 0:i.errors)===null||o===void 0||o.push(...l),!1}}),qoe=(t,e)=>rt({test:(r,i)=>{var n,s;let o={value:r},a=typeof(i==null?void 0:i.coercions)!="undefined"?Ra(o,"value"):void 0,l=typeof(i==null?void 0:i.coercions)!="undefined"?[]:void 0;if(!t(r,Object.assign(Object.assign({},i),{coercion:a,coercions:l})))return!1;let c=[];if(typeof l!="undefined")for(let[,u]of l)c.push(u());try{if(typeof(i==null?void 0:i.coercions)!="undefined"){if(o.value!==r){if(typeof(i==null?void 0:i.coercion)=="undefined")return Ve(i,"Unbound coercion result");i.coercions.push([(n=i.p)!==null&&n!==void 0?n:".",i.coercion.bind(null,o.value)])}(s=i==null?void 0:i.coercions)===null||s===void 0||s.push(...l)}return e.every(u=>u(o.value,i))}finally{for(let u of c)u()}}}),Joe=t=>rt({test:(e,r)=>typeof e=="undefined"?!0:t(e,r)}),Woe=t=>rt({test:(e,r)=>e===null?!0:t(e,r)}),zoe=t=>rt({test:(e,r)=>e.length>=t?!0:Ve(r,`Expected to have a length of at least ${t} elements (got ${e.length})`)}),Xoe=t=>rt({test:(e,r)=>e.length<=t?!0:Ve(r,`Expected to have a length of at most ${t} elements (got ${e.length})`)}),SM=t=>rt({test:(e,r)=>e.length!==t?Ve(r,`Expected to have a length of exactly ${t} elements (got ${e.length})`):!0}),Voe=({map:t}={})=>rt({test:(e,r)=>{let i=new Set,n=new Set;for(let s=0,o=e.length;srt({test:(t,e)=>t<=0?!0:Ve(e,`Expected to be negative (got ${t})`)}),_oe=()=>rt({test:(t,e)=>t>=0?!0:Ve(e,`Expected to be positive (got ${t})`)}),$oe=t=>rt({test:(e,r)=>e>=t?!0:Ve(r,`Expected to be at least ${t} (got ${e})`)}),eae=t=>rt({test:(e,r)=>e<=t?!0:Ve(r,`Expected to be at most ${t} (got ${e})`)}),tae=(t,e)=>rt({test:(r,i)=>r>=t&&r<=e?!0:Ve(i,`Expected to be in the [${t}; ${e}] range (got ${r})`)}),rae=(t,e)=>rt({test:(r,i)=>r>=t&&rrt({test:(e,r)=>e!==Math.round(e)?Ve(r,`Expected to be an integer (got ${e})`):Number.isSafeInteger(e)?!0:Ve(r,`Expected to be a safe integer (got ${e})`)}),nae=t=>rt({test:(e,r)=>t.test(e)?!0:Ve(r,`Expected to match the pattern ${t.toString()} (got ${nr(e)})`)}),sae=()=>rt({test:(t,e)=>t!==t.toLowerCase()?Ve(e,`Expected to be all-lowercase (got ${t})`):!0}),oae=()=>rt({test:(t,e)=>t!==t.toUpperCase()?Ve(e,`Expected to be all-uppercase (got ${t})`):!0}),aae=()=>rt({test:(t,e)=>wM.test(t)?!0:Ve(e,`Expected to be a valid UUID v4 (got ${nr(t)})`)}),Aae=()=>rt({test:(t,e)=>uw.test(t)?!1:Ve(e,`Expected to be a valid ISO 8601 date string (got ${nr(t)})`)}),lae=({alpha:t=!1})=>rt({test:(e,r)=>(t?EM.test(e):yM.test(e))?!0:Ve(r,`Expected to be a valid hexadecimal color string (got ${nr(e)})`)}),cae=()=>rt({test:(t,e)=>BM.test(t)?!0:Ve(e,`Expected to be a valid base 64 string (got ${nr(t)})`)}),uae=(t=DM())=>rt({test:(e,r)=>{let i;try{i=JSON.parse(e)}catch(n){return Ve(r,`Expected to be a valid JSON string (got ${nr(e)})`)}return t(i,r)}}),gae=t=>{let e=new Set(t);return rt({test:(r,i)=>{let n=new Set(Object.keys(r)),s=[];for(let o of e)n.has(o)||s.push(o);return s.length>0?Ve(i,`Missing required ${eC(s.length,"property","properties")} ${s.map(o=>`"${o}"`).join(", ")}`):!0}})},hae=t=>{let e=new Set(t);return rt({test:(r,i)=>{let n=new Set(Object.keys(r)),s=[];for(let o of e)n.has(o)&&s.push(o);return s.length>0?Ve(i,`Forbidden ${eC(s.length,"property","properties")} ${s.map(o=>`"${o}"`).join(", ")}`):!0}})},fae=t=>{let e=new Set(t);return rt({test:(r,i)=>{let n=new Set(Object.keys(r)),s=[];for(let o of e)n.has(o)&&s.push(o);return s.length>1?Ve(i,`Mutually exclusive properties ${s.map(o=>`"${o}"`).join(", ")}`):!0}})},ug;(function(t){t.Forbids="Forbids",t.Requires="Requires"})(ug||(ug={}));var pae={[ug.Forbids]:{expect:!1,message:"forbids using"},[ug.Requires]:{expect:!0,message:"requires using"}},dae=(t,e,r,{ignore:i=[]}={})=>{let n=new Set(i),s=new Set(r),o=pae[e];return rt({test:(a,l)=>{let c=new Set(Object.keys(a));if(!c.has(t)||n.has(a[t]))return!0;let u=[];for(let g of s)(c.has(g)&&!n.has(a[g]))!==o.expect&&u.push(g);return u.length>=1?Ve(l,`Property "${t}" ${o.message} ${eC(u.length,"property","properties")} ${u.map(g=>`"${g}"`).join(", ")}`):!0}})}});var oC=C(Vi=>{"use strict";Vi.isInteger=t=>typeof t=="number"?Number.isInteger(t):typeof t=="string"&&t.trim()!==""?Number.isInteger(Number(t)):!1;Vi.find=(t,e)=>t.nodes.find(r=>r.type===e);Vi.exceedsLimit=(t,e,r=1,i)=>i===!1||!Vi.isInteger(t)||!Vi.isInteger(e)?!1:(Number(e)-Number(t))/Number(r)>=i;Vi.escapeNode=(t,e=0,r)=>{let i=t.nodes[e];!i||(r&&i.type===r||i.type==="open"||i.type==="close")&&i.escaped!==!0&&(i.value="\\"+i.value,i.escaped=!0)};Vi.encloseBrace=t=>t.type!=="brace"?!1:t.commas>>0+t.ranges>>0==0?(t.invalid=!0,!0):!1;Vi.isInvalidBrace=t=>t.type!=="brace"?!1:t.invalid===!0||t.dollar?!0:t.commas>>0+t.ranges>>0==0||t.open!==!0||t.close!==!0?(t.invalid=!0,!0):!1;Vi.isOpenOrClose=t=>t.type==="open"||t.type==="close"?!0:t.open===!0||t.close===!0;Vi.reduce=t=>t.reduce((e,r)=>(r.type==="text"&&e.push(r.value),r.type==="range"&&(r.type="text"),e),[]);Vi.flatten=(...t)=>{let e=[],r=i=>{for(let n=0;n{"use strict";var GM=oC();jM.exports=(t,e={})=>{let r=(i,n={})=>{let s=e.escapeInvalid&&GM.isInvalidBrace(n),o=i.invalid===!0&&e.escapeInvalid===!0,a="";if(i.value)return(s||o)&&GM.isOpenOrClose(i)?"\\"+i.value:i.value;if(i.value)return i.value;if(i.nodes)for(let l of i.nodes)a+=r(l);return a};return r(t)}});var JM=C((z8e,qM)=>{"use strict";qM.exports=function(t){return typeof t=="number"?t-t==0:typeof t=="string"&&t.trim()!==""?Number.isFinite?Number.isFinite(+t):isFinite(+t):!1}});var tN=C((X8e,WM)=>{"use strict";var zM=JM(),La=(t,e,r)=>{if(zM(t)===!1)throw new TypeError("toRegexRange: expected the first argument to be a number");if(e===void 0||t===e)return String(t);if(zM(e)===!1)throw new TypeError("toRegexRange: expected the second argument to be a number.");let i={relaxZeros:!0,...r};typeof i.strictZeros=="boolean"&&(i.relaxZeros=i.strictZeros===!1);let n=String(i.relaxZeros),s=String(i.shorthand),o=String(i.capture),a=String(i.wrap),l=t+":"+e+"="+n+s+o+a;if(La.cache.hasOwnProperty(l))return La.cache[l].result;let c=Math.min(t,e),u=Math.max(t,e);if(Math.abs(c-u)===1){let m=t+"|"+e;return i.capture?`(${m})`:i.wrap===!1?m:`(?:${m})`}let g=VM(t)||VM(e),h={min:t,max:e,a:c,b:u},f=[],p=[];if(g&&(h.isPadded=g,h.maxLen=String(h.max).length),c<0){let m=u<0?Math.abs(u):1;p=XM(m,Math.abs(c),h,i),c=h.a=0}return u>=0&&(f=XM(c,u,h,i)),h.negatives=p,h.positives=f,h.result=vae(p,f,i),i.capture===!0?h.result=`(${h.result})`:i.wrap!==!1&&f.length+p.length>1&&(h.result=`(?:${h.result})`),La.cache[l]=h,h.result};function vae(t,e,r){let i=Cw(t,e,"-",!1,r)||[],n=Cw(e,t,"",!1,r)||[],s=Cw(t,e,"-?",!0,r)||[];return i.concat(s).concat(n).join("|")}function Rae(t,e){let r=1,i=1,n=ZM(t,r),s=new Set([e]);for(;t<=n&&n<=e;)s.add(n),r+=1,n=ZM(t,r);for(n=_M(e+1,i)-1;t1&&a.count.pop(),a.count.push(u.count[0]),a.string=a.pattern+$M(a.count),o=c+1;continue}r.isPadded&&(g=Oae(c,r,i)),u.string=g+u.pattern+$M(u.count),s.push(u),o=c+1,a=u}return s}function Cw(t,e,r,i,n){let s=[];for(let o of t){let{string:a}=o;!i&&!eN(e,"string",a)&&s.push(r+a),i&&eN(e,"string",a)&&s.push(r+a)}return s}function Lae(t,e){let r=[];for(let i=0;ie?1:e>t?-1:0}function eN(t,e,r){return t.some(i=>i[e]===r)}function ZM(t,e){return Number(String(t).slice(0,-e)+"9".repeat(e))}function _M(t,e){return t-t%Math.pow(10,e)}function $M(t){let[e=0,r=""]=t;return r||e>1?`{${e+(r?","+r:"")}}`:""}function Mae(t,e,r){return`[${t}${e-t==1?"":"-"}${e}]`}function VM(t){return/^-?(0+)\d/.test(t)}function Oae(t,e,r){if(!e.isPadded)return t;let i=Math.abs(e.maxLen-String(t).length),n=r.relaxZeros!==!1;switch(i){case 0:return"";case 1:return n?"0?":"0";case 2:return n?"0{0,2}":"00";default:return n?`0{0,${i}}`:`0{${i}}`}}La.cache={};La.clearCache=()=>La.cache={};WM.exports=La});var Ew=C((V8e,rN)=>{"use strict";var Tae=require("util"),iN=tN(),nN=t=>t!==null&&typeof t=="object"&&!Array.isArray(t),Kae=t=>e=>t===!0?Number(e):String(e),mw=t=>typeof t=="number"||typeof t=="string"&&t!=="",pg=t=>Number.isInteger(+t),Iw=t=>{let e=`${t}`,r=-1;if(e[0]==="-"&&(e=e.slice(1)),e==="0")return!1;for(;e[++r]==="0";);return r>0},Uae=(t,e,r)=>typeof t=="string"||typeof e=="string"?!0:r.stringify===!0,Hae=(t,e,r)=>{if(e>0){let i=t[0]==="-"?"-":"";i&&(t=t.slice(1)),t=i+t.padStart(i?e-1:e,"0")}return r===!1?String(t):t},sN=(t,e)=>{let r=t[0]==="-"?"-":"";for(r&&(t=t.slice(1),e--);t.length{t.negatives.sort((o,a)=>oa?1:0),t.positives.sort((o,a)=>oa?1:0);let r=e.capture?"":"?:",i="",n="",s;return t.positives.length&&(i=t.positives.join("|")),t.negatives.length&&(n=`-(${r}${t.negatives.join("|")})`),i&&n?s=`${i}|${n}`:s=i||n,e.wrap?`(${r}${s})`:s},oN=(t,e,r,i)=>{if(r)return iN(t,e,{wrap:!1,...i});let n=String.fromCharCode(t);if(t===e)return n;let s=String.fromCharCode(e);return`[${n}-${s}]`},aN=(t,e,r)=>{if(Array.isArray(t)){let i=r.wrap===!0,n=r.capture?"":"?:";return i?`(${n}${t.join("|")})`:t.join("|")}return iN(t,e,r)},AN=(...t)=>new RangeError("Invalid range arguments: "+Tae.inspect(...t)),lN=(t,e,r)=>{if(r.strictRanges===!0)throw AN([t,e]);return[]},jae=(t,e)=>{if(e.strictRanges===!0)throw new TypeError(`Expected step "${t}" to be a number`);return[]},Gae=(t,e,r=1,i={})=>{let n=Number(t),s=Number(e);if(!Number.isInteger(n)||!Number.isInteger(s)){if(i.strictRanges===!0)throw AN([t,e]);return[]}n===0&&(n=0),s===0&&(s=0);let o=n>s,a=String(t),l=String(e),c=String(r);r=Math.max(Math.abs(r),1);let u=Iw(a)||Iw(l)||Iw(c),g=u?Math.max(a.length,l.length,c.length):0,h=u===!1&&Uae(t,e,i)===!1,f=i.transform||Kae(h);if(i.toRegex&&r===1)return oN(sN(t,g),sN(e,g),!0,i);let p={negatives:[],positives:[]},m=B=>p[B<0?"negatives":"positives"].push(Math.abs(B)),I=[],y=0;for(;o?n>=s:n<=s;)i.toRegex===!0&&r>1?m(n):I.push(Hae(f(n,y),g,h)),n=o?n-r:n+r,y++;return i.toRegex===!0?r>1?Yae(p,i):aN(I,null,{wrap:!1,...i}):I},qae=(t,e,r=1,i={})=>{if(!pg(t)&&t.length>1||!pg(e)&&e.length>1)return lN(t,e,i);let n=i.transform||(h=>String.fromCharCode(h)),s=`${t}`.charCodeAt(0),o=`${e}`.charCodeAt(0),a=s>o,l=Math.min(s,o),c=Math.max(s,o);if(i.toRegex&&r===1)return oN(l,c,!1,i);let u=[],g=0;for(;a?s>=o:s<=o;)u.push(n(s,g)),s=a?s-r:s+r,g++;return i.toRegex===!0?aN(u,null,{wrap:!1,options:i}):u},AC=(t,e,r,i={})=>{if(e==null&&mw(t))return[t];if(!mw(t)||!mw(e))return lN(t,e,i);if(typeof r=="function")return AC(t,e,1,{transform:r});if(nN(r))return AC(t,e,0,r);let n={...i};return n.capture===!0&&(n.wrap=!0),r=r||n.step||1,pg(r)?pg(t)&&pg(e)?Gae(t,e,r,n):qae(t,e,Math.max(Math.abs(r),1),n):r!=null&&!nN(r)?jae(r,n):AC(t,e,1,r)};rN.exports=AC});var gN=C((Z8e,cN)=>{"use strict";var Jae=Ew(),uN=oC(),Wae=(t,e={})=>{let r=(i,n={})=>{let s=uN.isInvalidBrace(n),o=i.invalid===!0&&e.escapeInvalid===!0,a=s===!0||o===!0,l=e.escapeInvalid===!0?"\\":"",c="";if(i.isOpen===!0||i.isClose===!0)return l+i.value;if(i.type==="open")return a?l+i.value:"(";if(i.type==="close")return a?l+i.value:")";if(i.type==="comma")return i.prev.type==="comma"?"":a?i.value:"|";if(i.value)return i.value;if(i.nodes&&i.ranges>0){let u=uN.reduce(i.nodes),g=Jae(...u,{...e,wrap:!1,toRegex:!0});if(g.length!==0)return u.length>1&&g.length>1?`(${g})`:g}if(i.nodes)for(let u of i.nodes)c+=r(u,i);return c};return r(t)};cN.exports=Wae});var pN=C((_8e,hN)=>{"use strict";var zae=Ew(),fN=aC(),Il=oC(),Ma=(t="",e="",r=!1)=>{let i=[];if(t=[].concat(t),e=[].concat(e),!e.length)return t;if(!t.length)return r?Il.flatten(e).map(n=>`{${n}}`):e;for(let n of t)if(Array.isArray(n))for(let s of n)i.push(Ma(s,e,r));else for(let s of e)r===!0&&typeof s=="string"&&(s=`{${s}}`),i.push(Array.isArray(s)?Ma(n,s,r):n+s);return Il.flatten(i)},Xae=(t,e={})=>{let r=e.rangeLimit===void 0?1e3:e.rangeLimit,i=(n,s={})=>{n.queue=[];let o=s,a=s.queue;for(;o.type!=="brace"&&o.type!=="root"&&o.parent;)o=o.parent,a=o.queue;if(n.invalid||n.dollar){a.push(Ma(a.pop(),fN(n,e)));return}if(n.type==="brace"&&n.invalid!==!0&&n.nodes.length===2){a.push(Ma(a.pop(),["{}"]));return}if(n.nodes&&n.ranges>0){let g=Il.reduce(n.nodes);if(Il.exceedsLimit(...g,e.step,r))throw new RangeError("expanded array length exceeds range limit. Use options.rangeLimit to increase or disable the limit.");let h=zae(...g,e);h.length===0&&(h=fN(n,e)),a.push(Ma(a.pop(),h)),n.nodes=[];return}let l=Il.encloseBrace(n),c=n.queue,u=n;for(;u.type!=="brace"&&u.type!=="root"&&u.parent;)u=u.parent,c=u.queue;for(let g=0;g{"use strict";dN.exports={MAX_LENGTH:1024*64,CHAR_0:"0",CHAR_9:"9",CHAR_UPPERCASE_A:"A",CHAR_LOWERCASE_A:"a",CHAR_UPPERCASE_Z:"Z",CHAR_LOWERCASE_Z:"z",CHAR_LEFT_PARENTHESES:"(",CHAR_RIGHT_PARENTHESES:")",CHAR_ASTERISK:"*",CHAR_AMPERSAND:"&",CHAR_AT:"@",CHAR_BACKSLASH:"\\",CHAR_BACKTICK:"`",CHAR_CARRIAGE_RETURN:"\r",CHAR_CIRCUMFLEX_ACCENT:"^",CHAR_COLON:":",CHAR_COMMA:",",CHAR_DOLLAR:"$",CHAR_DOT:".",CHAR_DOUBLE_QUOTE:'"',CHAR_EQUAL:"=",CHAR_EXCLAMATION_MARK:"!",CHAR_FORM_FEED:"\f",CHAR_FORWARD_SLASH:"/",CHAR_HASH:"#",CHAR_HYPHEN_MINUS:"-",CHAR_LEFT_ANGLE_BRACKET:"<",CHAR_LEFT_CURLY_BRACE:"{",CHAR_LEFT_SQUARE_BRACKET:"[",CHAR_LINE_FEED:` -`,CHAR_NO_BREAK_SPACE:"\xA0",CHAR_PERCENT:"%",CHAR_PLUS:"+",CHAR_QUESTION_MARK:"?",CHAR_RIGHT_ANGLE_BRACKET:">",CHAR_RIGHT_CURLY_BRACE:"}",CHAR_RIGHT_SQUARE_BRACKET:"]",CHAR_SEMICOLON:";",CHAR_SINGLE_QUOTE:"'",CHAR_SPACE:" ",CHAR_TAB:" ",CHAR_UNDERSCORE:"_",CHAR_VERTICAL_LINE:"|",CHAR_ZERO_WIDTH_NOBREAK_SPACE:"\uFEFF"}});var BN=C((eze,mN)=>{"use strict";var Vae=aC(),{MAX_LENGTH:IN,CHAR_BACKSLASH:yw,CHAR_BACKTICK:Zae,CHAR_COMMA:_ae,CHAR_DOT:$ae,CHAR_LEFT_PARENTHESES:eAe,CHAR_RIGHT_PARENTHESES:tAe,CHAR_LEFT_CURLY_BRACE:rAe,CHAR_RIGHT_CURLY_BRACE:iAe,CHAR_LEFT_SQUARE_BRACKET:EN,CHAR_RIGHT_SQUARE_BRACKET:yN,CHAR_DOUBLE_QUOTE:nAe,CHAR_SINGLE_QUOTE:sAe,CHAR_NO_BREAK_SPACE:oAe,CHAR_ZERO_WIDTH_NOBREAK_SPACE:aAe}=CN(),AAe=(t,e={})=>{if(typeof t!="string")throw new TypeError("Expected a string");let r=e||{},i=typeof r.maxLength=="number"?Math.min(IN,r.maxLength):IN;if(t.length>i)throw new SyntaxError(`Input length (${t.length}), exceeds max characters (${i})`);let n={type:"root",input:t,nodes:[]},s=[n],o=n,a=n,l=0,c=t.length,u=0,g=0,h,f={},p=()=>t[u++],m=I=>{if(I.type==="text"&&a.type==="dot"&&(a.type="text"),a&&a.type==="text"&&I.type==="text"){a.value+=I.value;return}return o.nodes.push(I),I.parent=o,I.prev=a,a=I,I};for(m({type:"bos"});u0){if(o.ranges>0){o.ranges=0;let I=o.nodes.shift();o.nodes=[I,{type:"text",value:Vae(o)}]}m({type:"comma",value:h}),o.commas++;continue}if(h===$ae&&g>0&&o.commas===0){let I=o.nodes;if(g===0||I.length===0){m({type:"text",value:h});continue}if(a.type==="dot"){if(o.range=[],a.value+=h,a.type="range",o.nodes.length!==3&&o.nodes.length!==5){o.invalid=!0,o.ranges=0,a.type="text";continue}o.ranges++,o.args=[];continue}if(a.type==="range"){I.pop();let y=I[I.length-1];y.value+=a.value+h,a=y,o.ranges--;continue}m({type:"dot",value:h});continue}m({type:"text",value:h})}do if(o=s.pop(),o.type!=="root"){o.nodes.forEach(B=>{B.nodes||(B.type==="open"&&(B.isOpen=!0),B.type==="close"&&(B.isClose=!0),B.nodes||(B.type="text"),B.invalid=!0)});let I=s[s.length-1],y=I.nodes.indexOf(o);I.nodes.splice(y,1,...o.nodes)}while(s.length>0);return m({type:"eos"}),n};mN.exports=AAe});var bN=C((tze,wN)=>{"use strict";var QN=aC(),lAe=gN(),cAe=pN(),uAe=BN(),Fi=(t,e={})=>{let r=[];if(Array.isArray(t))for(let i of t){let n=Fi.create(i,e);Array.isArray(n)?r.push(...n):r.push(n)}else r=[].concat(Fi.create(t,e));return e&&e.expand===!0&&e.nodupes===!0&&(r=[...new Set(r)]),r};Fi.parse=(t,e={})=>uAe(t,e);Fi.stringify=(t,e={})=>typeof t=="string"?QN(Fi.parse(t,e),e):QN(t,e);Fi.compile=(t,e={})=>(typeof t=="string"&&(t=Fi.parse(t,e)),lAe(t,e));Fi.expand=(t,e={})=>{typeof t=="string"&&(t=Fi.parse(t,e));let r=cAe(t,e);return e.noempty===!0&&(r=r.filter(Boolean)),e.nodupes===!0&&(r=[...new Set(r)]),r};Fi.create=(t,e={})=>t===""||t.length<3?[t]:e.expand!==!0?Fi.compile(t,e):Fi.expand(t,e);wN.exports=Fi});var dg=C((rze,DN)=>{"use strict";var gAe=require("path"),Gn="\\\\/",SN=`[^${Gn}]`,bs="\\.",hAe="\\+",fAe="\\?",lC="\\/",pAe="(?=.)",PN="[^/]",Bw=`(?:${lC}|$)`,xN=`(?:^|${lC})`,ww=`${bs}{1,2}${Bw}`,dAe=`(?!${bs})`,CAe=`(?!${xN}${ww})`,mAe=`(?!${bs}{0,1}${Bw})`,IAe=`(?!${ww})`,EAe=`[^.${lC}]`,yAe=`${PN}*?`,kN={DOT_LITERAL:bs,PLUS_LITERAL:hAe,QMARK_LITERAL:fAe,SLASH_LITERAL:lC,ONE_CHAR:pAe,QMARK:PN,END_ANCHOR:Bw,DOTS_SLASH:ww,NO_DOT:dAe,NO_DOTS:CAe,NO_DOT_SLASH:mAe,NO_DOTS_SLASH:IAe,QMARK_NO_DOT:EAe,STAR:yAe,START_ANCHOR:xN},BAe={...kN,SLASH_LITERAL:`[${Gn}]`,QMARK:SN,STAR:`${SN}*?`,DOTS_SLASH:`${bs}{1,2}(?:[${Gn}]|$)`,NO_DOT:`(?!${bs})`,NO_DOTS:`(?!(?:^|[${Gn}])${bs}{1,2}(?:[${Gn}]|$))`,NO_DOT_SLASH:`(?!${bs}{0,1}(?:[${Gn}]|$))`,NO_DOTS_SLASH:`(?!${bs}{1,2}(?:[${Gn}]|$))`,QMARK_NO_DOT:`[^.${Gn}]`,START_ANCHOR:`(?:^|[${Gn}])`,END_ANCHOR:`(?:[${Gn}]|$)`},wAe={alnum:"a-zA-Z0-9",alpha:"a-zA-Z",ascii:"\\x00-\\x7F",blank:" \\t",cntrl:"\\x00-\\x1F\\x7F",digit:"0-9",graph:"\\x21-\\x7E",lower:"a-z",print:"\\x20-\\x7E ",punct:"\\-!\"#$%&'()\\*+,./:;<=>?@[\\]^_`{|}~",space:" \\t\\r\\n\\v\\f",upper:"A-Z",word:"A-Za-z0-9_",xdigit:"A-Fa-f0-9"};DN.exports={MAX_LENGTH:1024*64,POSIX_REGEX_SOURCE:wAe,REGEX_BACKSLASH:/\\(?![*+?^${}(|)[\]])/g,REGEX_NON_SPECIAL_CHARS:/^[^@![\].,$*+?^{}()|\\/]+/,REGEX_SPECIAL_CHARS:/[-*+?.^${}(|)[\]]/,REGEX_SPECIAL_CHARS_BACKREF:/(\\?)((\W)(\3*))/g,REGEX_SPECIAL_CHARS_GLOBAL:/([-*+?.^${}(|)[\]])/g,REGEX_REMOVE_BACKSLASH:/(?:\[.*?[^\\]\]|\\(?=.))/g,REPLACEMENTS:{"***":"*","**/**":"**","**/**/**":"**"},CHAR_0:48,CHAR_9:57,CHAR_UPPERCASE_A:65,CHAR_LOWERCASE_A:97,CHAR_UPPERCASE_Z:90,CHAR_LOWERCASE_Z:122,CHAR_LEFT_PARENTHESES:40,CHAR_RIGHT_PARENTHESES:41,CHAR_ASTERISK:42,CHAR_AMPERSAND:38,CHAR_AT:64,CHAR_BACKWARD_SLASH:92,CHAR_CARRIAGE_RETURN:13,CHAR_CIRCUMFLEX_ACCENT:94,CHAR_COLON:58,CHAR_COMMA:44,CHAR_DOT:46,CHAR_DOUBLE_QUOTE:34,CHAR_EQUAL:61,CHAR_EXCLAMATION_MARK:33,CHAR_FORM_FEED:12,CHAR_FORWARD_SLASH:47,CHAR_GRAVE_ACCENT:96,CHAR_HASH:35,CHAR_HYPHEN_MINUS:45,CHAR_LEFT_ANGLE_BRACKET:60,CHAR_LEFT_CURLY_BRACE:123,CHAR_LEFT_SQUARE_BRACKET:91,CHAR_LINE_FEED:10,CHAR_NO_BREAK_SPACE:160,CHAR_PERCENT:37,CHAR_PLUS:43,CHAR_QUESTION_MARK:63,CHAR_RIGHT_ANGLE_BRACKET:62,CHAR_RIGHT_CURLY_BRACE:125,CHAR_RIGHT_SQUARE_BRACKET:93,CHAR_SEMICOLON:59,CHAR_SINGLE_QUOTE:39,CHAR_SPACE:32,CHAR_TAB:9,CHAR_UNDERSCORE:95,CHAR_VERTICAL_LINE:124,CHAR_ZERO_WIDTH_NOBREAK_SPACE:65279,SEP:gAe.sep,extglobChars(t){return{"!":{type:"negate",open:"(?:(?!(?:",close:`))${t.STAR})`},"?":{type:"qmark",open:"(?:",close:")?"},"+":{type:"plus",open:"(?:",close:")+"},"*":{type:"star",open:"(?:",close:")*"},"@":{type:"at",open:"(?:",close:")"}}},globChars(t){return t===!0?BAe:kN}}});var Cg=C(fi=>{"use strict";var QAe=require("path"),bAe=process.platform==="win32",{REGEX_BACKSLASH:DAe,REGEX_REMOVE_BACKSLASH:SAe,REGEX_SPECIAL_CHARS:PAe,REGEX_SPECIAL_CHARS_GLOBAL:xAe}=dg();fi.isObject=t=>t!==null&&typeof t=="object"&&!Array.isArray(t);fi.hasRegexChars=t=>PAe.test(t);fi.isRegexChar=t=>t.length===1&&fi.hasRegexChars(t);fi.escapeRegex=t=>t.replace(xAe,"\\$1");fi.toPosixSlashes=t=>t.replace(DAe,"/");fi.removeBackslashes=t=>t.replace(SAe,e=>e==="\\"?"":e);fi.supportsLookbehinds=()=>{let t=process.version.slice(1).split(".").map(Number);return t.length===3&&t[0]>=9||t[0]===8&&t[1]>=10};fi.isWindows=t=>t&&typeof t.windows=="boolean"?t.windows:bAe===!0||QAe.sep==="\\";fi.escapeLast=(t,e,r)=>{let i=t.lastIndexOf(e,r);return i===-1?t:t[i-1]==="\\"?fi.escapeLast(t,e,i-1):`${t.slice(0,i)}\\${t.slice(i)}`};fi.removePrefix=(t,e={})=>{let r=t;return r.startsWith("./")&&(r=r.slice(2),e.prefix="./"),r};fi.wrapOutput=(t,e={},r={})=>{let i=r.contains?"":"^",n=r.contains?"":"$",s=`${i}(?:${t})${n}`;return e.negated===!0&&(s=`(?:^(?!${s}).*$)`),s}});var KN=C((nze,vN)=>{"use strict";var FN=Cg(),{CHAR_ASTERISK:Qw,CHAR_AT:kAe,CHAR_BACKWARD_SLASH:mg,CHAR_COMMA:vAe,CHAR_DOT:bw,CHAR_EXCLAMATION_MARK:RN,CHAR_FORWARD_SLASH:LN,CHAR_LEFT_CURLY_BRACE:Dw,CHAR_LEFT_PARENTHESES:Sw,CHAR_LEFT_SQUARE_BRACKET:FAe,CHAR_PLUS:RAe,CHAR_QUESTION_MARK:MN,CHAR_RIGHT_CURLY_BRACE:LAe,CHAR_RIGHT_PARENTHESES:NN,CHAR_RIGHT_SQUARE_BRACKET:MAe}=dg(),ON=t=>t===LN||t===mg,TN=t=>{t.isPrefix!==!0&&(t.depth=t.isGlobstar?Infinity:1)},NAe=(t,e)=>{let r=e||{},i=t.length-1,n=r.parts===!0||r.scanToEnd===!0,s=[],o=[],a=[],l=t,c=-1,u=0,g=0,h=!1,f=!1,p=!1,m=!1,I=!1,y=!1,B=!1,P=!1,k=!1,N=0,O,v,U={value:"",depth:0,isGlob:!1},re=()=>c>=i,F=()=>l.charCodeAt(c+1),A=()=>(O=v,l.charCodeAt(++c));for(;c0&&(Z=l.slice(0,u),l=l.slice(u),g-=u),q&&p===!0&&g>0?(q=l.slice(0,g),$=l.slice(g)):p===!0?(q="",$=l):q=l,q&&q!==""&&q!=="/"&&q!==l&&ON(q.charCodeAt(q.length-1))&&(q=q.slice(0,-1)),r.unescape===!0&&($&&($=FN.removeBackslashes($)),q&&B===!0&&(q=FN.removeBackslashes(q)));let T={prefix:Z,input:t,start:u,base:q,glob:$,isBrace:h,isBracket:f,isGlob:p,isExtglob:m,isGlobstar:I,negated:P};if(r.tokens===!0&&(T.maxDepth=0,ON(v)||o.push(U),T.tokens=o),r.parts===!0||r.tokens===!0){let G;for(let Qe=0;Qe{"use strict";var cC=dg(),Ri=Cg(),{MAX_LENGTH:uC,POSIX_REGEX_SOURCE:OAe,REGEX_NON_SPECIAL_CHARS:TAe,REGEX_SPECIAL_CHARS_BACKREF:KAe,REPLACEMENTS:HN}=cC,UAe=(t,e)=>{if(typeof e.expandRange=="function")return e.expandRange(...t,e);t.sort();let r=`[${t.join("-")}]`;try{new RegExp(r)}catch(i){return t.map(n=>Ri.escapeRegex(n)).join("..")}return r},El=(t,e)=>`Missing ${t}: "${e}" - use "\\\\${e}" to match literal characters`,YN=(t,e)=>{if(typeof t!="string")throw new TypeError("Expected a string");t=HN[t]||t;let r={...e},i=typeof r.maxLength=="number"?Math.min(uC,r.maxLength):uC,n=t.length;if(n>i)throw new SyntaxError(`Input length: ${n}, exceeds maximum allowed length: ${i}`);let s={type:"bos",value:"",output:r.prepend||""},o=[s],a=r.capture?"":"?:",l=Ri.isWindows(e),c=cC.globChars(l),u=cC.extglobChars(c),{DOT_LITERAL:g,PLUS_LITERAL:h,SLASH_LITERAL:f,ONE_CHAR:p,DOTS_SLASH:m,NO_DOT:I,NO_DOT_SLASH:y,NO_DOTS_SLASH:B,QMARK:P,QMARK_NO_DOT:k,STAR:N,START_ANCHOR:O}=c,v=W=>`(${a}(?:(?!${O}${W.dot?m:g}).)*?)`,U=r.dot?"":I,re=r.dot?P:k,F=r.bash===!0?v(r):N;r.capture&&(F=`(${F})`),typeof r.noext=="boolean"&&(r.noextglob=r.noext);let A={input:t,index:-1,start:0,dot:r.dot===!0,consumed:"",output:"",prefix:"",backtrack:!1,negated:!1,brackets:0,braces:0,parens:0,quotes:0,globstar:!1,tokens:o};t=Ri.removePrefix(t,A),n=t.length;let q=[],Z=[],$=[],T=s,G,Qe=()=>A.index===n-1,Pe=A.peek=(W=1)=>t[A.index+W],He=A.advance=()=>t[++A.index],Re=()=>t.slice(A.index+1),ee=(W="",ie=0)=>{A.consumed+=W,A.index+=ie},ne=W=>{A.output+=W.output!=null?W.output:W.value,ee(W.value)},Ee=()=>{let W=1;for(;Pe()==="!"&&(Pe(2)!=="("||Pe(3)==="?");)He(),A.start++,W++;return W%2==0?!1:(A.negated=!0,A.start++,!0)},le=W=>{A[W]++,$.push(W)},fe=W=>{A[W]--,$.pop()},ue=W=>{if(T.type==="globstar"){let ie=A.braces>0&&(W.type==="comma"||W.type==="brace"),ae=W.extglob===!0||q.length&&(W.type==="pipe"||W.type==="paren");W.type!=="slash"&&W.type!=="paren"&&!ie&&!ae&&(A.output=A.output.slice(0,-T.output.length),T.type="star",T.value="*",T.output=F,A.output+=T.output)}if(q.length&&W.type!=="paren"&&!u[W.value]&&(q[q.length-1].inner+=W.value),(W.value||W.output)&&ne(W),T&&T.type==="text"&&W.type==="text"){T.value+=W.value,T.output=(T.output||"")+W.value;return}W.prev=T,o.push(W),T=W},De=(W,ie)=>{let ae={...u[ie],conditions:1,inner:""};ae.prev=T,ae.parens=A.parens,ae.output=A.output;let me=(r.capture?"(":"")+ae.open;le("parens"),ue({type:W,value:ie,output:A.output?"":p}),ue({type:"paren",extglob:!0,value:He(),output:me}),q.push(ae)},z=W=>{let ie=W.close+(r.capture?")":"");if(W.type==="negate"){let ae=F;W.inner&&W.inner.length>1&&W.inner.includes("/")&&(ae=v(r)),(ae!==F||Qe()||/^\)+$/.test(Re()))&&(ie=W.close=`)$))${ae}`),W.prev.type==="bos"&&(A.negatedExtglob=!0)}ue({type:"paren",extglob:!0,value:G,output:ie}),fe("parens")};if(r.fastpaths!==!1&&!/(^[*!]|[/()[\]{}"])/.test(t)){let W=!1,ie=t.replace(KAe,(ae,me,ot,ct,wt,In)=>ct==="\\"?(W=!0,ae):ct==="?"?me?me+ct+(wt?P.repeat(wt.length):""):In===0?re+(wt?P.repeat(wt.length):""):P.repeat(ot.length):ct==="."?g.repeat(ot.length):ct==="*"?me?me+ct+(wt?F:""):F:me?ae:`\\${ae}`);return W===!0&&(r.unescape===!0?ie=ie.replace(/\\/g,""):ie=ie.replace(/\\+/g,ae=>ae.length%2==0?"\\\\":ae?"\\":"")),ie===t&&r.contains===!0?(A.output=t,A):(A.output=Ri.wrapOutput(ie,A,e),A)}for(;!Qe();){if(G=He(),G==="\0")continue;if(G==="\\"){let ae=Pe();if(ae==="/"&&r.bash!==!0||ae==="."||ae===";")continue;if(!ae){G+="\\",ue({type:"text",value:G});continue}let me=/^\\+/.exec(Re()),ot=0;if(me&&me[0].length>2&&(ot=me[0].length,A.index+=ot,ot%2!=0&&(G+="\\")),r.unescape===!0?G=He()||"":G+=He()||"",A.brackets===0){ue({type:"text",value:G});continue}}if(A.brackets>0&&(G!=="]"||T.value==="["||T.value==="[^")){if(r.posix!==!1&&G===":"){let ae=T.value.slice(1);if(ae.includes("[")&&(T.posix=!0,ae.includes(":"))){let me=T.value.lastIndexOf("["),ot=T.value.slice(0,me),ct=T.value.slice(me+2),wt=OAe[ct];if(wt){T.value=ot+wt,A.backtrack=!0,He(),!s.output&&o.indexOf(T)===1&&(s.output=p);continue}}}(G==="["&&Pe()!==":"||G==="-"&&Pe()==="]")&&(G=`\\${G}`),G==="]"&&(T.value==="["||T.value==="[^")&&(G=`\\${G}`),r.posix===!0&&G==="!"&&T.value==="["&&(G="^"),T.value+=G,ne({value:G});continue}if(A.quotes===1&&G!=='"'){G=Ri.escapeRegex(G),T.value+=G,ne({value:G});continue}if(G==='"'){A.quotes=A.quotes===1?0:1,r.keepQuotes===!0&&ue({type:"text",value:G});continue}if(G==="("){le("parens"),ue({type:"paren",value:G});continue}if(G===")"){if(A.parens===0&&r.strictBrackets===!0)throw new SyntaxError(El("opening","("));let ae=q[q.length-1];if(ae&&A.parens===ae.parens+1){z(q.pop());continue}ue({type:"paren",value:G,output:A.parens?")":"\\)"}),fe("parens");continue}if(G==="["){if(r.nobracket===!0||!Re().includes("]")){if(r.nobracket!==!0&&r.strictBrackets===!0)throw new SyntaxError(El("closing","]"));G=`\\${G}`}else le("brackets");ue({type:"bracket",value:G});continue}if(G==="]"){if(r.nobracket===!0||T&&T.type==="bracket"&&T.value.length===1){ue({type:"text",value:G,output:`\\${G}`});continue}if(A.brackets===0){if(r.strictBrackets===!0)throw new SyntaxError(El("opening","["));ue({type:"text",value:G,output:`\\${G}`});continue}fe("brackets");let ae=T.value.slice(1);if(T.posix!==!0&&ae[0]==="^"&&!ae.includes("/")&&(G=`/${G}`),T.value+=G,ne({value:G}),r.literalBrackets===!1||Ri.hasRegexChars(ae))continue;let me=Ri.escapeRegex(T.value);if(A.output=A.output.slice(0,-T.value.length),r.literalBrackets===!0){A.output+=me,T.value=me;continue}T.value=`(${a}${me}|${T.value})`,A.output+=T.value;continue}if(G==="{"&&r.nobrace!==!0){le("braces");let ae={type:"brace",value:G,output:"(",outputIndex:A.output.length,tokensIndex:A.tokens.length};Z.push(ae),ue(ae);continue}if(G==="}"){let ae=Z[Z.length-1];if(r.nobrace===!0||!ae){ue({type:"text",value:G,output:G});continue}let me=")";if(ae.dots===!0){let ot=o.slice(),ct=[];for(let wt=ot.length-1;wt>=0&&(o.pop(),ot[wt].type!=="brace");wt--)ot[wt].type!=="dots"&&ct.unshift(ot[wt].value);me=UAe(ct,r),A.backtrack=!0}if(ae.comma!==!0&&ae.dots!==!0){let ot=A.output.slice(0,ae.outputIndex),ct=A.tokens.slice(ae.tokensIndex);ae.value=ae.output="\\{",G=me="\\}",A.output=ot;for(let wt of ct)A.output+=wt.output||wt.value}ue({type:"brace",value:G,output:me}),fe("braces"),Z.pop();continue}if(G==="|"){q.length>0&&q[q.length-1].conditions++,ue({type:"text",value:G});continue}if(G===","){let ae=G,me=Z[Z.length-1];me&&$[$.length-1]==="braces"&&(me.comma=!0,ae="|"),ue({type:"comma",value:G,output:ae});continue}if(G==="/"){if(T.type==="dot"&&A.index===A.start+1){A.start=A.index+1,A.consumed="",A.output="",o.pop(),T=s;continue}ue({type:"slash",value:G,output:f});continue}if(G==="."){if(A.braces>0&&T.type==="dot"){T.value==="."&&(T.output=g);let ae=Z[Z.length-1];T.type="dots",T.output+=G,T.value+=G,ae.dots=!0;continue}if(A.braces+A.parens===0&&T.type!=="bos"&&T.type!=="slash"){ue({type:"text",value:G,output:g});continue}ue({type:"dot",value:G,output:g});continue}if(G==="?"){if(!(T&&T.value==="(")&&r.noextglob!==!0&&Pe()==="("&&Pe(2)!=="?"){De("qmark",G);continue}if(T&&T.type==="paren"){let me=Pe(),ot=G;if(me==="<"&&!Ri.supportsLookbehinds())throw new Error("Node.js v10 or higher is required for regex lookbehinds");(T.value==="("&&!/[!=<:]/.test(me)||me==="<"&&!/<([!=]|\w+>)/.test(Re()))&&(ot=`\\${G}`),ue({type:"text",value:G,output:ot});continue}if(r.dot!==!0&&(T.type==="slash"||T.type==="bos")){ue({type:"qmark",value:G,output:k});continue}ue({type:"qmark",value:G,output:P});continue}if(G==="!"){if(r.noextglob!==!0&&Pe()==="("&&(Pe(2)!=="?"||!/[!=<:]/.test(Pe(3)))){De("negate",G);continue}if(r.nonegate!==!0&&A.index===0){Ee();continue}}if(G==="+"){if(r.noextglob!==!0&&Pe()==="("&&Pe(2)!=="?"){De("plus",G);continue}if(T&&T.value==="("||r.regex===!1){ue({type:"plus",value:G,output:h});continue}if(T&&(T.type==="bracket"||T.type==="paren"||T.type==="brace")||A.parens>0){ue({type:"plus",value:G});continue}ue({type:"plus",value:h});continue}if(G==="@"){if(r.noextglob!==!0&&Pe()==="("&&Pe(2)!=="?"){ue({type:"at",extglob:!0,value:G,output:""});continue}ue({type:"text",value:G});continue}if(G!=="*"){(G==="$"||G==="^")&&(G=`\\${G}`);let ae=TAe.exec(Re());ae&&(G+=ae[0],A.index+=ae[0].length),ue({type:"text",value:G});continue}if(T&&(T.type==="globstar"||T.star===!0)){T.type="star",T.star=!0,T.value+=G,T.output=F,A.backtrack=!0,A.globstar=!0,ee(G);continue}let W=Re();if(r.noextglob!==!0&&/^\([^?]/.test(W)){De("star",G);continue}if(T.type==="star"){if(r.noglobstar===!0){ee(G);continue}let ae=T.prev,me=ae.prev,ot=ae.type==="slash"||ae.type==="bos",ct=me&&(me.type==="star"||me.type==="globstar");if(r.bash===!0&&(!ot||W[0]&&W[0]!=="/")){ue({type:"star",value:G,output:""});continue}let wt=A.braces>0&&(ae.type==="comma"||ae.type==="brace"),In=q.length&&(ae.type==="pipe"||ae.type==="paren");if(!ot&&ae.type!=="paren"&&!wt&&!In){ue({type:"star",value:G,output:""});continue}for(;W.slice(0,3)==="/**";){let li=t[A.index+4];if(li&&li!=="/")break;W=W.slice(3),ee("/**",3)}if(ae.type==="bos"&&Qe()){T.type="globstar",T.value+=G,T.output=v(r),A.output=T.output,A.globstar=!0,ee(G);continue}if(ae.type==="slash"&&ae.prev.type!=="bos"&&!ct&&Qe()){A.output=A.output.slice(0,-(ae.output+T.output).length),ae.output=`(?:${ae.output}`,T.type="globstar",T.output=v(r)+(r.strictSlashes?")":"|$)"),T.value+=G,A.globstar=!0,A.output+=ae.output+T.output,ee(G);continue}if(ae.type==="slash"&&ae.prev.type!=="bos"&&W[0]==="/"){let li=W[1]!==void 0?"|$":"";A.output=A.output.slice(0,-(ae.output+T.output).length),ae.output=`(?:${ae.output}`,T.type="globstar",T.output=`${v(r)}${f}|${f}${li})`,T.value+=G,A.output+=ae.output+T.output,A.globstar=!0,ee(G+He()),ue({type:"slash",value:"/",output:""});continue}if(ae.type==="bos"&&W[0]==="/"){T.type="globstar",T.value+=G,T.output=`(?:^|${f}|${v(r)}${f})`,A.output=T.output,A.globstar=!0,ee(G+He()),ue({type:"slash",value:"/",output:""});continue}A.output=A.output.slice(0,-T.output.length),T.type="globstar",T.output=v(r),T.value+=G,A.output+=T.output,A.globstar=!0,ee(G);continue}let ie={type:"star",value:G,output:F};if(r.bash===!0){ie.output=".*?",(T.type==="bos"||T.type==="slash")&&(ie.output=U+ie.output),ue(ie);continue}if(T&&(T.type==="bracket"||T.type==="paren")&&r.regex===!0){ie.output=G,ue(ie);continue}(A.index===A.start||T.type==="slash"||T.type==="dot")&&(T.type==="dot"?(A.output+=y,T.output+=y):r.dot===!0?(A.output+=B,T.output+=B):(A.output+=U,T.output+=U),Pe()!=="*"&&(A.output+=p,T.output+=p)),ue(ie)}for(;A.brackets>0;){if(r.strictBrackets===!0)throw new SyntaxError(El("closing","]"));A.output=Ri.escapeLast(A.output,"["),fe("brackets")}for(;A.parens>0;){if(r.strictBrackets===!0)throw new SyntaxError(El("closing",")"));A.output=Ri.escapeLast(A.output,"("),fe("parens")}for(;A.braces>0;){if(r.strictBrackets===!0)throw new SyntaxError(El("closing","}"));A.output=Ri.escapeLast(A.output,"{"),fe("braces")}if(r.strictSlashes!==!0&&(T.type==="star"||T.type==="bracket")&&ue({type:"maybe_slash",value:"",output:`${f}?`}),A.backtrack===!0){A.output="";for(let W of A.tokens)A.output+=W.output!=null?W.output:W.value,W.suffix&&(A.output+=W.suffix)}return A};YN.fastpaths=(t,e)=>{let r={...e},i=typeof r.maxLength=="number"?Math.min(uC,r.maxLength):uC,n=t.length;if(n>i)throw new SyntaxError(`Input length: ${n}, exceeds maximum allowed length: ${i}`);t=HN[t]||t;let s=Ri.isWindows(e),{DOT_LITERAL:o,SLASH_LITERAL:a,ONE_CHAR:l,DOTS_SLASH:c,NO_DOT:u,NO_DOTS:g,NO_DOTS_SLASH:h,STAR:f,START_ANCHOR:p}=cC.globChars(s),m=r.dot?g:u,I=r.dot?h:u,y=r.capture?"":"?:",B={negated:!1,prefix:""},P=r.bash===!0?".*?":f;r.capture&&(P=`(${P})`);let k=U=>U.noglobstar===!0?P:`(${y}(?:(?!${p}${U.dot?c:o}).)*?)`,N=U=>{switch(U){case"*":return`${m}${l}${P}`;case".*":return`${o}${l}${P}`;case"*.*":return`${m}${P}${o}${l}${P}`;case"*/*":return`${m}${P}${a}${l}${I}${P}`;case"**":return m+k(r);case"**/*":return`(?:${m}${k(r)}${a})?${I}${l}${P}`;case"**/*.*":return`(?:${m}${k(r)}${a})?${I}${P}${o}${l}${P}`;case"**/.*":return`(?:${m}${k(r)}${a})?${o}${l}${P}`;default:{let re=/^(.*?)\.(\w+)$/.exec(U);if(!re)return;let F=N(re[1]);return F?F+o+re[2]:void 0}}},O=Ri.removePrefix(t,B),v=N(O);return v&&r.strictSlashes!==!0&&(v+=`${a}?`),v};UN.exports=YN});var qN=C((oze,GN)=>{"use strict";var HAe=require("path"),YAe=KN(),Pw=jN(),xw=Cg(),jAe=dg(),GAe=t=>t&&typeof t=="object"&&!Array.isArray(t),$t=(t,e,r=!1)=>{if(Array.isArray(t)){let u=t.map(h=>$t(h,e,r));return h=>{for(let f of u){let p=f(h);if(p)return p}return!1}}let i=GAe(t)&&t.tokens&&t.input;if(t===""||typeof t!="string"&&!i)throw new TypeError("Expected pattern to be a non-empty string");let n=e||{},s=xw.isWindows(e),o=i?$t.compileRe(t,e):$t.makeRe(t,e,!1,!0),a=o.state;delete o.state;let l=()=>!1;if(n.ignore){let u={...e,ignore:null,onMatch:null,onResult:null};l=$t(n.ignore,u,r)}let c=(u,g=!1)=>{let{isMatch:h,match:f,output:p}=$t.test(u,o,e,{glob:t,posix:s}),m={glob:t,state:a,regex:o,posix:s,input:u,output:p,match:f,isMatch:h};return typeof n.onResult=="function"&&n.onResult(m),h===!1?(m.isMatch=!1,g?m:!1):l(u)?(typeof n.onIgnore=="function"&&n.onIgnore(m),m.isMatch=!1,g?m:!1):(typeof n.onMatch=="function"&&n.onMatch(m),g?m:!0)};return r&&(c.state=a),c};$t.test=(t,e,r,{glob:i,posix:n}={})=>{if(typeof t!="string")throw new TypeError("Expected input to be a string");if(t==="")return{isMatch:!1,output:""};let s=r||{},o=s.format||(n?xw.toPosixSlashes:null),a=t===i,l=a&&o?o(t):t;return a===!1&&(l=o?o(t):t,a=l===i),(a===!1||s.capture===!0)&&(s.matchBase===!0||s.basename===!0?a=$t.matchBase(t,e,r,n):a=e.exec(l)),{isMatch:Boolean(a),match:a,output:l}};$t.matchBase=(t,e,r,i=xw.isWindows(r))=>(e instanceof RegExp?e:$t.makeRe(e,r)).test(HAe.basename(t));$t.isMatch=(t,e,r)=>$t(e,r)(t);$t.parse=(t,e)=>Array.isArray(t)?t.map(r=>$t.parse(r,e)):Pw(t,{...e,fastpaths:!1});$t.scan=(t,e)=>YAe(t,e);$t.compileRe=(t,e,r=!1,i=!1)=>{if(r===!0)return t.output;let n=e||{},s=n.contains?"":"^",o=n.contains?"":"$",a=`${s}(?:${t.output})${o}`;t&&t.negated===!0&&(a=`^(?!${a}).*$`);let l=$t.toRegex(a,e);return i===!0&&(l.state=t),l};$t.makeRe=(t,e,r=!1,i=!1)=>{if(!t||typeof t!="string")throw new TypeError("Expected a non-empty string");let n=e||{},s={negated:!1,fastpaths:!0},o="",a;return t.startsWith("./")&&(t=t.slice(2),o=s.prefix="./"),n.fastpaths!==!1&&(t[0]==="."||t[0]==="*")&&(a=Pw.fastpaths(t,e)),a===void 0?(s=Pw(t,e),s.prefix=o+(s.prefix||"")):s.output=a,$t.compileRe(s,e,r,i)};$t.toRegex=(t,e)=>{try{let r=e||{};return new RegExp(t,r.flags||(r.nocase?"i":""))}catch(r){if(e&&e.debug===!0)throw r;return/$^/}};$t.constants=jAe;GN.exports=$t});var kw=C((aze,JN)=>{"use strict";JN.exports=qN()});var Qn=C((Aze,WN)=>{"use strict";var zN=require("util"),XN=bN(),qn=kw(),vw=Cg(),VN=t=>typeof t=="string"&&(t===""||t==="./"),Ht=(t,e,r)=>{e=[].concat(e),t=[].concat(t);let i=new Set,n=new Set,s=new Set,o=0,a=u=>{s.add(u.output),r&&r.onResult&&r.onResult(u)};for(let u=0;u!i.has(u));if(r&&c.length===0){if(r.failglob===!0)throw new Error(`No matches found for "${e.join(", ")}"`);if(r.nonull===!0||r.nullglob===!0)return r.unescape?e.map(u=>u.replace(/\\/g,"")):e}return c};Ht.match=Ht;Ht.matcher=(t,e)=>qn(t,e);Ht.isMatch=(t,e,r)=>qn(e,r)(t);Ht.any=Ht.isMatch;Ht.not=(t,e,r={})=>{e=[].concat(e).map(String);let i=new Set,n=[],o=Ht(t,e,{...r,onResult:a=>{r.onResult&&r.onResult(a),n.push(a.output)}});for(let a of n)o.includes(a)||i.add(a);return[...i]};Ht.contains=(t,e,r)=>{if(typeof t!="string")throw new TypeError(`Expected a string: "${zN.inspect(t)}"`);if(Array.isArray(e))return e.some(i=>Ht.contains(t,i,r));if(typeof e=="string"){if(VN(t)||VN(e))return!1;if(t.includes(e)||t.startsWith("./")&&t.slice(2).includes(e))return!0}return Ht.isMatch(t,e,{...r,contains:!0})};Ht.matchKeys=(t,e,r)=>{if(!vw.isObject(t))throw new TypeError("Expected the first argument to be an object");let i=Ht(Object.keys(t),e,r),n={};for(let s of i)n[s]=t[s];return n};Ht.some=(t,e,r)=>{let i=[].concat(t);for(let n of[].concat(e)){let s=qn(String(n),r);if(i.some(o=>s(o)))return!0}return!1};Ht.every=(t,e,r)=>{let i=[].concat(t);for(let n of[].concat(e)){let s=qn(String(n),r);if(!i.every(o=>s(o)))return!1}return!0};Ht.all=(t,e,r)=>{if(typeof t!="string")throw new TypeError(`Expected a string: "${zN.inspect(t)}"`);return[].concat(e).every(i=>qn(i,r)(t))};Ht.capture=(t,e,r)=>{let i=vw.isWindows(r),s=qn.makeRe(String(t),{...r,capture:!0}).exec(i?vw.toPosixSlashes(e):e);if(s)return s.slice(1).map(o=>o===void 0?"":o)};Ht.makeRe=(...t)=>qn.makeRe(...t);Ht.scan=(...t)=>qn.scan(...t);Ht.parse=(t,e)=>{let r=[];for(let i of[].concat(t||[]))for(let n of XN(String(i),e))r.push(qn.parse(n,e));return r};Ht.braces=(t,e)=>{if(typeof t!="string")throw new TypeError("Expected a string");return e&&e.nobrace===!0||!/\{.*\}/.test(t)?[t]:XN(t,e)};Ht.braceExpand=(t,e)=>{if(typeof t!="string")throw new TypeError("Expected a string");return Ht.braces(t,{...e,expand:!0})};WN.exports=Ht});var Zi=C(exports=>{We(exports,{BufferStream:()=>BufferStream,DefaultStream:()=>DefaultStream,assertNever:()=>assertNever,bufferStream:()=>bufferStream,buildIgnorePattern:()=>buildIgnorePattern,convertMapsToIndexableObjects:()=>convertMapsToIndexableObjects,dynamicRequire:()=>dynamicRequire,dynamicRequireNoCache:()=>dynamicRequireNoCache,escapeRegExp:()=>escapeRegExp,getArrayWithDefault:()=>getArrayWithDefault,getFactoryWithDefault:()=>getFactoryWithDefault,getMapWithDefault:()=>getMapWithDefault,getSetWithDefault:()=>getSetWithDefault,isIndexableObject:()=>isIndexableObject,mapAndFilter:()=>mapAndFilter,mapAndFind:()=>mapAndFind,overrideType:()=>overrideType,parseBoolean:()=>parseBoolean,parseOptionalBoolean:()=>parseOptionalBoolean,prettifyAsyncErrors:()=>prettifyAsyncErrors,prettifySyncErrors:()=>prettifySyncErrors,releaseAfterUseAsync:()=>releaseAfterUseAsync,replaceEnvVariables:()=>replaceEnvVariables,sortMap:()=>sortMap,tryParseOptionalBoolean:()=>tryParseOptionalBoolean,validateEnum:()=>validateEnum});var ZN=X(Qn()),Fw=X(require("stream"));function escapeRegExp(t){return t.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function overrideType(t){}function assertNever(t){throw new Error(`Assertion failed: Unexpected object '${t}'`)}function validateEnum(t,e){if(!Object.values(t).includes(e))throw new Error("Assertion failed: Invalid value for enumeration");return e}function mapAndFilter(t,e){let r=[];for(let i of t){let n=e(i);n!==mapAndFilterSkip&&r.push(n)}return r}var mapAndFilterSkip=Symbol();mapAndFilter.skip=mapAndFilterSkip;function mapAndFind(t,e){for(let r of t){let i=e(r);if(i!==mapAndFindSkip)return i}}var mapAndFindSkip=Symbol();mapAndFind.skip=mapAndFindSkip;function isIndexableObject(t){return typeof t=="object"&&t!==null}function convertMapsToIndexableObjects(t){if(t instanceof Map&&(t=Object.fromEntries(t)),isIndexableObject(t))for(let e of Object.keys(t)){let r=t[e];isIndexableObject(r)&&(t[e]=convertMapsToIndexableObjects(r))}return t}function getFactoryWithDefault(t,e,r){let i=t.get(e);return typeof i=="undefined"&&t.set(e,i=r()),i}function getArrayWithDefault(t,e){let r=t.get(e);return typeof r=="undefined"&&t.set(e,r=[]),r}function getSetWithDefault(t,e){let r=t.get(e);return typeof r=="undefined"&&t.set(e,r=new Set),r}function getMapWithDefault(t,e){let r=t.get(e);return typeof r=="undefined"&&t.set(e,r=new Map),r}async function releaseAfterUseAsync(t,e){if(e==null)return await t();try{return await t()}finally{await e()}}async function prettifyAsyncErrors(t,e){try{return await t()}catch(r){throw r.message=e(r.message),r}}function prettifySyncErrors(t,e){try{return t()}catch(r){throw r.message=e(r.message),r}}async function bufferStream(t){return await new Promise((e,r)=>{let i=[];t.on("error",n=>{r(n)}),t.on("data",n=>{i.push(n)}),t.on("end",()=>{e(Buffer.concat(i))})})}var BufferStream=class extends Fw.Transform{constructor(){super(...arguments);this.chunks=[]}_transform(e,r,i){if(r!=="buffer"||!Buffer.isBuffer(e))throw new Error("Assertion failed: BufferStream only accept buffers");this.chunks.push(e),i(null,null)}_flush(e){e(null,Buffer.concat(this.chunks))}},DefaultStream=class extends Fw.Transform{constructor(e=Buffer.alloc(0)){super();this.active=!0;this.ifEmpty=e}_transform(e,r,i){if(r!=="buffer"||!Buffer.isBuffer(e))throw new Error("Assertion failed: DefaultStream only accept buffers");this.active=!1,i(null,e)}_flush(e){this.active&&this.ifEmpty.length>0?e(null,this.ifEmpty):e(null)}},dynamicRequire=eval("require");function dynamicRequireNoCache(path){let physicalPath=npath.fromPortablePath(path),currentCacheEntry=dynamicRequire.cache[physicalPath];delete dynamicRequire.cache[physicalPath];let result;try{result=dynamicRequire(physicalPath);let freshCacheEntry=dynamicRequire.cache[physicalPath],dynamicModule=eval("module"),freshCacheIndex=dynamicModule.children.indexOf(freshCacheEntry);freshCacheIndex!==-1&&dynamicModule.children.splice(freshCacheIndex,1)}finally{dynamicRequire.cache[physicalPath]=currentCacheEntry}return result}function sortMap(t,e){let r=Array.from(t);Array.isArray(e)||(e=[e]);let i=[];for(let s of e)i.push(r.map(o=>s(o)));let n=r.map((s,o)=>o);return n.sort((s,o)=>{for(let a of i){let l=a[s]a[o]?1:0;if(l!==0)return l}return 0}),n.map(s=>r[s])}function buildIgnorePattern(t){return t.length===0?null:t.map(e=>`(${ZN.default.makeRe(e,{windows:!1,dot:!0}).source})`).join("|")}function replaceEnvVariables(t,{env:e}){let r=/\${(?[\d\w_]+)(?:)?(?:-(?[^}]*))?}/g;return t.replace(r,(...i)=>{let{variableName:n,colon:s,fallback:o}=i[i.length-1],a=Object.prototype.hasOwnProperty.call(e,n),l=e[n];if(l||a&&!s)return l;if(o!=null)return o;throw new UsageError(`Environment variable not found (${n})`)})}function parseBoolean(t){switch(t){case"true":case"1":case 1:case!0:return!0;case"false":case"0":case 0:case!1:return!1;default:throw new Error(`Couldn't parse "${t}" as a boolean`)}}function parseOptionalBoolean(t){return typeof t=="undefined"?t:parseBoolean(t)}function tryParseOptionalBoolean(t){try{return parseOptionalBoolean(t)}catch{return null}}});var Ig=C((uze,_N)=>{var qAe="2.0.0",JAe=256,WAe=Number.MAX_SAFE_INTEGER||9007199254740991,zAe=16;_N.exports={SEMVER_SPEC_VERSION:qAe,MAX_LENGTH:JAe,MAX_SAFE_INTEGER:WAe,MAX_SAFE_COMPONENT_LENGTH:zAe}});var Eg=C((gze,$N)=>{var XAe=typeof process=="object"&&process.env&&process.env.NODE_DEBUG&&/\bsemver\b/i.test(process.env.NODE_DEBUG)?(...t)=>console.error("SEMVER",...t):()=>{};$N.exports=XAe});var Na=C((bo,eO)=>{var{MAX_SAFE_COMPONENT_LENGTH:Rw}=Ig(),VAe=Eg();bo=eO.exports={};var ZAe=bo.re=[],Le=bo.src=[],Me=bo.t={},_Ae=0,it=(t,e,r)=>{let i=_Ae++;VAe(i,e),Me[t]=i,Le[i]=e,ZAe[i]=new RegExp(e,r?"g":void 0)};it("NUMERICIDENTIFIER","0|[1-9]\\d*");it("NUMERICIDENTIFIERLOOSE","[0-9]+");it("NONNUMERICIDENTIFIER","\\d*[a-zA-Z-][a-zA-Z0-9-]*");it("MAINVERSION",`(${Le[Me.NUMERICIDENTIFIER]})\\.(${Le[Me.NUMERICIDENTIFIER]})\\.(${Le[Me.NUMERICIDENTIFIER]})`);it("MAINVERSIONLOOSE",`(${Le[Me.NUMERICIDENTIFIERLOOSE]})\\.(${Le[Me.NUMERICIDENTIFIERLOOSE]})\\.(${Le[Me.NUMERICIDENTIFIERLOOSE]})`);it("PRERELEASEIDENTIFIER",`(?:${Le[Me.NUMERICIDENTIFIER]}|${Le[Me.NONNUMERICIDENTIFIER]})`);it("PRERELEASEIDENTIFIERLOOSE",`(?:${Le[Me.NUMERICIDENTIFIERLOOSE]}|${Le[Me.NONNUMERICIDENTIFIER]})`);it("PRERELEASE",`(?:-(${Le[Me.PRERELEASEIDENTIFIER]}(?:\\.${Le[Me.PRERELEASEIDENTIFIER]})*))`);it("PRERELEASELOOSE",`(?:-?(${Le[Me.PRERELEASEIDENTIFIERLOOSE]}(?:\\.${Le[Me.PRERELEASEIDENTIFIERLOOSE]})*))`);it("BUILDIDENTIFIER","[0-9A-Za-z-]+");it("BUILD",`(?:\\+(${Le[Me.BUILDIDENTIFIER]}(?:\\.${Le[Me.BUILDIDENTIFIER]})*))`);it("FULLPLAIN",`v?${Le[Me.MAINVERSION]}${Le[Me.PRERELEASE]}?${Le[Me.BUILD]}?`);it("FULL",`^${Le[Me.FULLPLAIN]}$`);it("LOOSEPLAIN",`[v=\\s]*${Le[Me.MAINVERSIONLOOSE]}${Le[Me.PRERELEASELOOSE]}?${Le[Me.BUILD]}?`);it("LOOSE",`^${Le[Me.LOOSEPLAIN]}$`);it("GTLT","((?:<|>)?=?)");it("XRANGEIDENTIFIERLOOSE",`${Le[Me.NUMERICIDENTIFIERLOOSE]}|x|X|\\*`);it("XRANGEIDENTIFIER",`${Le[Me.NUMERICIDENTIFIER]}|x|X|\\*`);it("XRANGEPLAIN",`[v=\\s]*(${Le[Me.XRANGEIDENTIFIER]})(?:\\.(${Le[Me.XRANGEIDENTIFIER]})(?:\\.(${Le[Me.XRANGEIDENTIFIER]})(?:${Le[Me.PRERELEASE]})?${Le[Me.BUILD]}?)?)?`);it("XRANGEPLAINLOOSE",`[v=\\s]*(${Le[Me.XRANGEIDENTIFIERLOOSE]})(?:\\.(${Le[Me.XRANGEIDENTIFIERLOOSE]})(?:\\.(${Le[Me.XRANGEIDENTIFIERLOOSE]})(?:${Le[Me.PRERELEASELOOSE]})?${Le[Me.BUILD]}?)?)?`);it("XRANGE",`^${Le[Me.GTLT]}\\s*${Le[Me.XRANGEPLAIN]}$`);it("XRANGELOOSE",`^${Le[Me.GTLT]}\\s*${Le[Me.XRANGEPLAINLOOSE]}$`);it("COERCE",`(^|[^\\d])(\\d{1,${Rw}})(?:\\.(\\d{1,${Rw}}))?(?:\\.(\\d{1,${Rw}}))?(?:$|[^\\d])`);it("COERCERTL",Le[Me.COERCE],!0);it("LONETILDE","(?:~>?)");it("TILDETRIM",`(\\s*)${Le[Me.LONETILDE]}\\s+`,!0);bo.tildeTrimReplace="$1~";it("TILDE",`^${Le[Me.LONETILDE]}${Le[Me.XRANGEPLAIN]}$`);it("TILDELOOSE",`^${Le[Me.LONETILDE]}${Le[Me.XRANGEPLAINLOOSE]}$`);it("LONECARET","(?:\\^)");it("CARETTRIM",`(\\s*)${Le[Me.LONECARET]}\\s+`,!0);bo.caretTrimReplace="$1^";it("CARET",`^${Le[Me.LONECARET]}${Le[Me.XRANGEPLAIN]}$`);it("CARETLOOSE",`^${Le[Me.LONECARET]}${Le[Me.XRANGEPLAINLOOSE]}$`);it("COMPARATORLOOSE",`^${Le[Me.GTLT]}\\s*(${Le[Me.LOOSEPLAIN]})$|^$`);it("COMPARATOR",`^${Le[Me.GTLT]}\\s*(${Le[Me.FULLPLAIN]})$|^$`);it("COMPARATORTRIM",`(\\s*)${Le[Me.GTLT]}\\s*(${Le[Me.LOOSEPLAIN]}|${Le[Me.XRANGEPLAIN]})`,!0);bo.comparatorTrimReplace="$1$2$3";it("HYPHENRANGE",`^\\s*(${Le[Me.XRANGEPLAIN]})\\s+-\\s+(${Le[Me.XRANGEPLAIN]})\\s*$`);it("HYPHENRANGELOOSE",`^\\s*(${Le[Me.XRANGEPLAINLOOSE]})\\s+-\\s+(${Le[Me.XRANGEPLAINLOOSE]})\\s*$`);it("STAR","(<|>)?=?\\s*\\*");it("GTE0","^\\s*>=\\s*0.0.0\\s*$");it("GTE0PRE","^\\s*>=\\s*0.0.0-0\\s*$")});var gC=C((hze,tO)=>{var rO=/^[0-9]+$/,iO=(t,e)=>{let r=rO.test(t),i=rO.test(e);return r&&i&&(t=+t,e=+e),t===e?0:r&&!i?-1:i&&!r?1:tiO(e,t);tO.exports={compareIdentifiers:iO,rcompareIdentifiers:$Ae}});var Mr=C((fze,nO)=>{var hC=Eg(),{MAX_LENGTH:sO,MAX_SAFE_INTEGER:fC}=Ig(),{re:oO,t:aO}=Na(),{compareIdentifiers:yg}=gC(),_i=class{constructor(e,r){if((!r||typeof r!="object")&&(r={loose:!!r,includePrerelease:!1}),e instanceof _i){if(e.loose===!!r.loose&&e.includePrerelease===!!r.includePrerelease)return e;e=e.version}else if(typeof e!="string")throw new TypeError(`Invalid Version: ${e}`);if(e.length>sO)throw new TypeError(`version is longer than ${sO} characters`);hC("SemVer",e,r),this.options=r,this.loose=!!r.loose,this.includePrerelease=!!r.includePrerelease;let i=e.trim().match(r.loose?oO[aO.LOOSE]:oO[aO.FULL]);if(!i)throw new TypeError(`Invalid Version: ${e}`);if(this.raw=e,this.major=+i[1],this.minor=+i[2],this.patch=+i[3],this.major>fC||this.major<0)throw new TypeError("Invalid major version");if(this.minor>fC||this.minor<0)throw new TypeError("Invalid minor version");if(this.patch>fC||this.patch<0)throw new TypeError("Invalid patch version");i[4]?this.prerelease=i[4].split(".").map(n=>{if(/^[0-9]+$/.test(n)){let s=+n;if(s>=0&&s=0;)typeof this.prerelease[i]=="number"&&(this.prerelease[i]++,i=-2);i===-1&&this.prerelease.push(0)}r&&(this.prerelease[0]===r?isNaN(this.prerelease[1])&&(this.prerelease=[r,0]):this.prerelease=[r,0]);break;default:throw new Error(`invalid increment argument: ${e}`)}return this.format(),this.raw=this.version,this}};nO.exports=_i});var Oa=C((pze,AO)=>{var{MAX_LENGTH:ele}=Ig(),{re:lO,t:cO}=Na(),uO=Mr(),tle=(t,e)=>{if((!e||typeof e!="object")&&(e={loose:!!e,includePrerelease:!1}),t instanceof uO)return t;if(typeof t!="string"||t.length>ele||!(e.loose?lO[cO.LOOSE]:lO[cO.FULL]).test(t))return null;try{return new uO(t,e)}catch(i){return null}};AO.exports=tle});var hO=C((dze,gO)=>{var rle=Oa(),ile=(t,e)=>{let r=rle(t,e);return r?r.version:null};gO.exports=ile});var pO=C((Cze,fO)=>{var nle=Oa(),sle=(t,e)=>{let r=nle(t.trim().replace(/^[=v]+/,""),e);return r?r.version:null};fO.exports=sle});var CO=C((mze,dO)=>{var ole=Mr(),ale=(t,e,r,i)=>{typeof r=="string"&&(i=r,r=void 0);try{return new ole(t,r).inc(e,i).version}catch(n){return null}};dO.exports=ale});var $i=C((Ize,mO)=>{var IO=Mr(),Ale=(t,e,r)=>new IO(t,r).compare(new IO(e,r));mO.exports=Ale});var pC=C((Eze,EO)=>{var lle=$i(),cle=(t,e,r)=>lle(t,e,r)===0;EO.exports=cle});var wO=C((yze,yO)=>{var BO=Oa(),ule=pC(),gle=(t,e)=>{if(ule(t,e))return null;{let r=BO(t),i=BO(e),n=r.prerelease.length||i.prerelease.length,s=n?"pre":"",o=n?"prerelease":"";for(let a in r)if((a==="major"||a==="minor"||a==="patch")&&r[a]!==i[a])return s+a;return o}};yO.exports=gle});var bO=C((Bze,QO)=>{var hle=Mr(),fle=(t,e)=>new hle(t,e).major;QO.exports=fle});var SO=C((wze,DO)=>{var ple=Mr(),dle=(t,e)=>new ple(t,e).minor;DO.exports=dle});var xO=C((Qze,PO)=>{var Cle=Mr(),mle=(t,e)=>new Cle(t,e).patch;PO.exports=mle});var vO=C((bze,kO)=>{var Ile=Oa(),Ele=(t,e)=>{let r=Ile(t,e);return r&&r.prerelease.length?r.prerelease:null};kO.exports=Ele});var RO=C((Dze,FO)=>{var yle=$i(),Ble=(t,e,r)=>yle(e,t,r);FO.exports=Ble});var MO=C((Sze,LO)=>{var wle=$i(),Qle=(t,e)=>wle(t,e,!0);LO.exports=Qle});var dC=C((Pze,NO)=>{var OO=Mr(),ble=(t,e,r)=>{let i=new OO(t,r),n=new OO(e,r);return i.compare(n)||i.compareBuild(n)};NO.exports=ble});var KO=C((xze,TO)=>{var Dle=dC(),Sle=(t,e)=>t.sort((r,i)=>Dle(r,i,e));TO.exports=Sle});var HO=C((kze,UO)=>{var Ple=dC(),xle=(t,e)=>t.sort((r,i)=>Ple(i,r,e));UO.exports=xle});var Bg=C((vze,YO)=>{var kle=$i(),vle=(t,e,r)=>kle(t,e,r)>0;YO.exports=vle});var CC=C((Fze,jO)=>{var Fle=$i(),Rle=(t,e,r)=>Fle(t,e,r)<0;jO.exports=Rle});var Lw=C((Rze,GO)=>{var Lle=$i(),Mle=(t,e,r)=>Lle(t,e,r)!==0;GO.exports=Mle});var mC=C((Lze,qO)=>{var Nle=$i(),Ole=(t,e,r)=>Nle(t,e,r)>=0;qO.exports=Ole});var IC=C((Mze,JO)=>{var Tle=$i(),Kle=(t,e,r)=>Tle(t,e,r)<=0;JO.exports=Kle});var Mw=C((Nze,WO)=>{var Ule=pC(),Hle=Lw(),Yle=Bg(),jle=mC(),Gle=CC(),qle=IC(),Jle=(t,e,r,i)=>{switch(e){case"===":return typeof t=="object"&&(t=t.version),typeof r=="object"&&(r=r.version),t===r;case"!==":return typeof t=="object"&&(t=t.version),typeof r=="object"&&(r=r.version),t!==r;case"":case"=":case"==":return Ule(t,r,i);case"!=":return Hle(t,r,i);case">":return Yle(t,r,i);case">=":return jle(t,r,i);case"<":return Gle(t,r,i);case"<=":return qle(t,r,i);default:throw new TypeError(`Invalid operator: ${e}`)}};WO.exports=Jle});var XO=C((Oze,zO)=>{var Wle=Mr(),zle=Oa(),{re:EC,t:yC}=Na(),Xle=(t,e)=>{if(t instanceof Wle)return t;if(typeof t=="number"&&(t=String(t)),typeof t!="string")return null;e=e||{};let r=null;if(!e.rtl)r=t.match(EC[yC.COERCE]);else{let i;for(;(i=EC[yC.COERCERTL].exec(t))&&(!r||r.index+r[0].length!==t.length);)(!r||i.index+i[0].length!==r.index+r[0].length)&&(r=i),EC[yC.COERCERTL].lastIndex=i.index+i[1].length+i[2].length;EC[yC.COERCERTL].lastIndex=-1}return r===null?null:zle(`${r[2]}.${r[3]||"0"}.${r[4]||"0"}`,e)};zO.exports=Xle});var en=C((Tze,VO)=>{var yl=class{constructor(e,r){if((!r||typeof r!="object")&&(r={loose:!!r,includePrerelease:!1}),e instanceof yl)return e.loose===!!r.loose&&e.includePrerelease===!!r.includePrerelease?e:new yl(e.raw,r);if(e instanceof Nw)return this.raw=e.value,this.set=[[e]],this.format(),this;if(this.options=r,this.loose=!!r.loose,this.includePrerelease=!!r.includePrerelease,this.raw=e,this.set=e.split(/\s*\|\|\s*/).map(i=>this.parseRange(i.trim())).filter(i=>i.length),!this.set.length)throw new TypeError(`Invalid SemVer Range: ${e}`);this.format()}format(){return this.range=this.set.map(e=>e.join(" ").trim()).join("||").trim(),this.range}toString(){return this.range}parseRange(e){let r=this.options.loose;e=e.trim();let i=r?Nr[Pr.HYPHENRANGELOOSE]:Nr[Pr.HYPHENRANGE];e=e.replace(i,rce(this.options.includePrerelease)),er("hyphen replace",e),e=e.replace(Nr[Pr.COMPARATORTRIM],Zle),er("comparator trim",e,Nr[Pr.COMPARATORTRIM]),e=e.replace(Nr[Pr.TILDETRIM],_le),e=e.replace(Nr[Pr.CARETTRIM],$le),e=e.split(/\s+/).join(" ");let n=r?Nr[Pr.COMPARATORLOOSE]:Nr[Pr.COMPARATOR];return e.split(" ").map(s=>ece(s,this.options)).join(" ").split(/\s+/).map(s=>tce(s,this.options)).filter(this.options.loose?s=>!!s.match(n):()=>!0).map(s=>new Nw(s,this.options))}intersects(e,r){if(!(e instanceof yl))throw new TypeError("a Range is required");return this.set.some(i=>ZO(i,r)&&e.set.some(n=>ZO(n,r)&&i.every(s=>n.every(o=>s.intersects(o,r)))))}test(e){if(!e)return!1;if(typeof e=="string")try{e=new Vle(e,this.options)}catch(r){return!1}for(let r=0;r{let r=!0,i=t.slice(),n=i.pop();for(;r&&i.length;)r=i.every(s=>n.intersects(s,e)),n=i.pop();return r},ece=(t,e)=>(er("comp",t,e),t=sce(t,e),er("caret",t),t=nce(t,e),er("tildes",t),t=oce(t,e),er("xrange",t),t=ace(t,e),er("stars",t),t),Zr=t=>!t||t.toLowerCase()==="x"||t==="*",nce=(t,e)=>t.trim().split(/\s+/).map(r=>Ace(r,e)).join(" "),Ace=(t,e)=>{let r=e.loose?Nr[Pr.TILDELOOSE]:Nr[Pr.TILDE];return t.replace(r,(i,n,s,o,a)=>{er("tilde",t,i,n,s,o,a);let l;return Zr(n)?l="":Zr(s)?l=`>=${n}.0.0 <${+n+1}.0.0-0`:Zr(o)?l=`>=${n}.${s}.0 <${n}.${+s+1}.0-0`:a?(er("replaceTilde pr",a),l=`>=${n}.${s}.${o}-${a} <${n}.${+s+1}.0-0`):l=`>=${n}.${s}.${o} <${n}.${+s+1}.0-0`,er("tilde return",l),l})},sce=(t,e)=>t.trim().split(/\s+/).map(r=>lce(r,e)).join(" "),lce=(t,e)=>{er("caret",t,e);let r=e.loose?Nr[Pr.CARETLOOSE]:Nr[Pr.CARET],i=e.includePrerelease?"-0":"";return t.replace(r,(n,s,o,a,l)=>{er("caret",t,n,s,o,a,l);let c;return Zr(s)?c="":Zr(o)?c=`>=${s}.0.0${i} <${+s+1}.0.0-0`:Zr(a)?s==="0"?c=`>=${s}.${o}.0${i} <${s}.${+o+1}.0-0`:c=`>=${s}.${o}.0${i} <${+s+1}.0.0-0`:l?(er("replaceCaret pr",l),s==="0"?o==="0"?c=`>=${s}.${o}.${a}-${l} <${s}.${o}.${+a+1}-0`:c=`>=${s}.${o}.${a}-${l} <${s}.${+o+1}.0-0`:c=`>=${s}.${o}.${a}-${l} <${+s+1}.0.0-0`):(er("no pr"),s==="0"?o==="0"?c=`>=${s}.${o}.${a}${i} <${s}.${o}.${+a+1}-0`:c=`>=${s}.${o}.${a}${i} <${s}.${+o+1}.0-0`:c=`>=${s}.${o}.${a} <${+s+1}.0.0-0`),er("caret return",c),c})},oce=(t,e)=>(er("replaceXRanges",t,e),t.split(/\s+/).map(r=>cce(r,e)).join(" ")),cce=(t,e)=>{t=t.trim();let r=e.loose?Nr[Pr.XRANGELOOSE]:Nr[Pr.XRANGE];return t.replace(r,(i,n,s,o,a,l)=>{er("xRange",t,i,n,s,o,a,l);let c=Zr(s),u=c||Zr(o),g=u||Zr(a),h=g;return n==="="&&h&&(n=""),l=e.includePrerelease?"-0":"",c?n===">"||n==="<"?i="<0.0.0-0":i="*":n&&h?(u&&(o=0),a=0,n===">"?(n=">=",u?(s=+s+1,o=0,a=0):(o=+o+1,a=0)):n==="<="&&(n="<",u?s=+s+1:o=+o+1),n==="<"&&(l="-0"),i=`${n+s}.${o}.${a}${l}`):u?i=`>=${s}.0.0${l} <${+s+1}.0.0-0`:g&&(i=`>=${s}.${o}.0${l} <${s}.${+o+1}.0-0`),er("xRange return",i),i})},ace=(t,e)=>(er("replaceStars",t,e),t.trim().replace(Nr[Pr.STAR],"")),tce=(t,e)=>(er("replaceGTE0",t,e),t.trim().replace(Nr[e.includePrerelease?Pr.GTE0PRE:Pr.GTE0],"")),rce=t=>(e,r,i,n,s,o,a,l,c,u,g,h,f)=>(Zr(i)?r="":Zr(n)?r=`>=${i}.0.0${t?"-0":""}`:Zr(s)?r=`>=${i}.${n}.0${t?"-0":""}`:o?r=`>=${r}`:r=`>=${r}${t?"-0":""}`,Zr(c)?l="":Zr(u)?l=`<${+c+1}.0.0-0`:Zr(g)?l=`<${c}.${+u+1}.0-0`:h?l=`<=${c}.${u}.${g}-${h}`:t?l=`<${c}.${u}.${+g+1}-0`:l=`<=${l}`,`${r} ${l}`.trim()),ice=(t,e,r)=>{for(let i=0;i0){let n=t[i].semver;if(n.major===e.major&&n.minor===e.minor&&n.patch===e.patch)return!0}return!1}return!0}});var wg=C((Kze,_O)=>{var Qg=Symbol("SemVer ANY"),bg=class{static get ANY(){return Qg}constructor(e,r){if((!r||typeof r!="object")&&(r={loose:!!r,includePrerelease:!1}),e instanceof bg){if(e.loose===!!r.loose)return e;e=e.value}Tw("comparator",e,r),this.options=r,this.loose=!!r.loose,this.parse(e),this.semver===Qg?this.value="":this.value=this.operator+this.semver.version,Tw("comp",this)}parse(e){let r=this.options.loose?$O[eT.COMPARATORLOOSE]:$O[eT.COMPARATOR],i=e.match(r);if(!i)throw new TypeError(`Invalid comparator: ${e}`);this.operator=i[1]!==void 0?i[1]:"",this.operator==="="&&(this.operator=""),i[2]?this.semver=new tT(i[2],this.options.loose):this.semver=Qg}toString(){return this.value}test(e){if(Tw("Comparator.test",e,this.options.loose),this.semver===Qg||e===Qg)return!0;if(typeof e=="string")try{e=new tT(e,this.options)}catch(r){return!1}return Ow(e,this.operator,this.semver,this.options)}intersects(e,r){if(!(e instanceof bg))throw new TypeError("a Comparator is required");if((!r||typeof r!="object")&&(r={loose:!!r,includePrerelease:!1}),this.operator==="")return this.value===""?!0:new rT(e.value,r).test(this.value);if(e.operator==="")return e.value===""?!0:new rT(this.value,r).test(e.semver);let i=(this.operator===">="||this.operator===">")&&(e.operator===">="||e.operator===">"),n=(this.operator==="<="||this.operator==="<")&&(e.operator==="<="||e.operator==="<"),s=this.semver.version===e.semver.version,o=(this.operator===">="||this.operator==="<=")&&(e.operator===">="||e.operator==="<="),a=Ow(this.semver,"<",e.semver,r)&&(this.operator===">="||this.operator===">")&&(e.operator==="<="||e.operator==="<"),l=Ow(this.semver,">",e.semver,r)&&(this.operator==="<="||this.operator==="<")&&(e.operator===">="||e.operator===">");return i||n||s&&o||a||l}};_O.exports=bg;var{re:$O,t:eT}=Na(),Ow=Mw(),Tw=Eg(),tT=Mr(),rT=en()});var Dg=C((Uze,iT)=>{var uce=en(),gce=(t,e,r)=>{try{e=new uce(e,r)}catch(i){return!1}return e.test(t)};iT.exports=gce});var sT=C((Hze,nT)=>{var hce=en(),fce=(t,e)=>new hce(t,e).set.map(r=>r.map(i=>i.value).join(" ").trim().split(" "));nT.exports=fce});var aT=C((Yze,oT)=>{var pce=Mr(),dce=en(),Cce=(t,e,r)=>{let i=null,n=null,s=null;try{s=new dce(e,r)}catch(o){return null}return t.forEach(o=>{s.test(o)&&(!i||n.compare(o)===-1)&&(i=o,n=new pce(i,r))}),i};oT.exports=Cce});var lT=C((jze,AT)=>{var mce=Mr(),Ice=en(),Ece=(t,e,r)=>{let i=null,n=null,s=null;try{s=new Ice(e,r)}catch(o){return null}return t.forEach(o=>{s.test(o)&&(!i||n.compare(o)===1)&&(i=o,n=new mce(i,r))}),i};AT.exports=Ece});var uT=C((Gze,cT)=>{var Kw=Mr(),yce=en(),Bce=Bg(),wce=(t,e)=>{t=new yce(t,e);let r=new Kw("0.0.0");if(t.test(r)||(r=new Kw("0.0.0-0"),t.test(r)))return r;r=null;for(let i=0;i{let o=new Kw(s.semver.version);switch(s.operator){case">":o.prerelease.length===0?o.patch++:o.prerelease.push(0),o.raw=o.format();case"":case">=":(!r||Bce(r,o))&&(r=o);break;case"<":case"<=":break;default:throw new Error(`Unexpected operation: ${s.operator}`)}});return r&&t.test(r)?r:null};cT.exports=wce});var hT=C((qze,gT)=>{var Qce=en(),bce=(t,e)=>{try{return new Qce(t,e).range||"*"}catch(r){return null}};gT.exports=bce});var BC=C((Jze,fT)=>{var Dce=Mr(),pT=wg(),{ANY:Sce}=pT,Pce=en(),xce=Dg(),dT=Bg(),CT=CC(),kce=IC(),vce=mC(),Fce=(t,e,r,i)=>{t=new Dce(t,i),e=new Pce(e,i);let n,s,o,a,l;switch(r){case">":n=dT,s=kce,o=CT,a=">",l=">=";break;case"<":n=CT,s=vce,o=dT,a="<",l="<=";break;default:throw new TypeError('Must provide a hilo val of "<" or ">"')}if(xce(t,e,i))return!1;for(let c=0;c{f.semver===Sce&&(f=new pT(">=0.0.0")),g=g||f,h=h||f,n(f.semver,g.semver,i)?g=f:o(f.semver,h.semver,i)&&(h=f)}),g.operator===a||g.operator===l||(!h.operator||h.operator===a)&&s(t,h.semver))return!1;if(h.operator===l&&o(t,h.semver))return!1}return!0};fT.exports=Fce});var IT=C((Wze,mT)=>{var Rce=BC(),Lce=(t,e,r)=>Rce(t,e,">",r);mT.exports=Lce});var yT=C((zze,ET)=>{var Mce=BC(),Nce=(t,e,r)=>Mce(t,e,"<",r);ET.exports=Nce});var QT=C((Xze,BT)=>{var wT=en(),Oce=(t,e,r)=>(t=new wT(t,r),e=new wT(e,r),t.intersects(e));BT.exports=Oce});var DT=C((Vze,bT)=>{var Tce=Dg(),Kce=$i();bT.exports=(t,e,r)=>{let i=[],n=null,s=null,o=t.sort((u,g)=>Kce(u,g,r));for(let u of o)Tce(u,e,r)?(s=u,n||(n=u)):(s&&i.push([n,s]),s=null,n=null);n&&i.push([n,null]);let a=[];for(let[u,g]of i)u===g?a.push(u):!g&&u===o[0]?a.push("*"):g?u===o[0]?a.push(`<=${g}`):a.push(`${u} - ${g}`):a.push(`>=${u}`);let l=a.join(" || "),c=typeof e.raw=="string"?e.raw:String(e);return l.length{var PT=en(),{ANY:xT}=wg(),Sg=Dg(),Uw=$i(),Hce=(t,e,r)=>{t=new PT(t,r),e=new PT(e,r);let i=!1;e:for(let n of t.set){for(let s of e.set){let o=Uce(n,s,r);if(i=i||o!==null,o)continue e}if(i)return!1}return!0},Uce=(t,e,r)=>{if(t.length===1&&t[0].semver===xT)return e.length===1&&e[0].semver===xT;let i=new Set,n,s;for(let g of t)g.operator===">"||g.operator===">="?n=kT(n,g,r):g.operator==="<"||g.operator==="<="?s=vT(s,g,r):i.add(g.semver);if(i.size>1)return null;let o;if(n&&s){if(o=Uw(n.semver,s.semver,r),o>0)return null;if(o===0&&(n.operator!==">="||s.operator!=="<="))return null}for(let g of i){if(n&&!Sg(g,String(n),r)||s&&!Sg(g,String(s),r))return null;for(let h of e)if(!Sg(g,String(h),r))return!1;return!0}let a,l,c,u;for(let g of e){if(u=u||g.operator===">"||g.operator===">=",c=c||g.operator==="<"||g.operator==="<=",n){if(g.operator===">"||g.operator===">="){if(a=kT(n,g,r),a===g)return!1}else if(n.operator===">="&&!Sg(n.semver,String(g),r))return!1}if(s){if(g.operator==="<"||g.operator==="<="){if(l=vT(s,g,r),l===g)return!1}else if(s.operator==="<="&&!Sg(s.semver,String(g),r))return!1}if(!g.operator&&(s||n)&&o!==0)return!1}return!(n&&c&&!s&&o!==0||s&&u&&!n&&o!==0)},kT=(t,e,r)=>{if(!t)return e;let i=Uw(t.semver,e.semver,r);return i>0?t:i<0||e.operator===">"&&t.operator===">="?e:t},vT=(t,e,r)=>{if(!t)return e;let i=Uw(t.semver,e.semver,r);return i<0?t:i>0||e.operator==="<"&&t.operator==="<="?e:t};ST.exports=Hce});var hr=C((_ze,RT)=>{var Hw=Na();RT.exports={re:Hw.re,src:Hw.src,tokens:Hw.t,SEMVER_SPEC_VERSION:Ig().SEMVER_SPEC_VERSION,SemVer:Mr(),compareIdentifiers:gC().compareIdentifiers,rcompareIdentifiers:gC().rcompareIdentifiers,parse:Oa(),valid:hO(),clean:pO(),inc:CO(),diff:wO(),major:bO(),minor:SO(),patch:xO(),prerelease:vO(),compare:$i(),rcompare:RO(),compareLoose:MO(),compareBuild:dC(),sort:KO(),rsort:HO(),gt:Bg(),lt:CC(),eq:pC(),neq:Lw(),gte:mC(),lte:IC(),cmp:Mw(),coerce:XO(),Comparator:wg(),Range:en(),satisfies:Dg(),toComparators:sT(),maxSatisfying:aT(),minSatisfying:lT(),minVersion:uT(),validRange:hT(),outside:BC(),gtr:IT(),ltr:yT(),intersects:QT(),simplifyRange:DT(),subset:FT()}});var MT=C(($ze,LT)=>{"use strict";LT.exports=(...t)=>[...new Set([].concat(...t))]});var Yw=C((e4e,NT)=>{"use strict";var Yce=require("stream"),OT=Yce.PassThrough,jce=Array.prototype.slice;NT.exports=Gce;function Gce(){let t=[],e=!1,r=jce.call(arguments),i=r[r.length-1];i&&!Array.isArray(i)&&i.pipe==null?r.pop():i={};let n=i.end!==!1;i.objectMode==null&&(i.objectMode=!0),i.highWaterMark==null&&(i.highWaterMark=64*1024);let s=OT(i);function o(){for(let c=0,u=arguments.length;c0||(e=!1,a())}function h(f){function p(){f.removeListener("merge2UnpipeEnd",p),f.removeListener("end",p),g()}if(f._readableState.endEmitted)return g();f.on("merge2UnpipeEnd",p),f.on("end",p),f.pipe(s,{end:!1}),f.resume()}for(let f=0;f{"use strict";Object.defineProperty(wC,"__esModule",{value:!0});function qce(t){return t.reduce((e,r)=>[].concat(e,r),[])}wC.flatten=qce;function Jce(t,e){let r=[[]],i=0;for(let n of t)e(n)?(i++,r[i]=[]):r[i].push(n);return r}wC.splitWhen=Jce});var UT=C(jw=>{"use strict";Object.defineProperty(jw,"__esModule",{value:!0});function Wce(t){return t.code==="ENOENT"}jw.isEnoentCodeError=Wce});var YT=C(Gw=>{"use strict";Object.defineProperty(Gw,"__esModule",{value:!0});var HT=class{constructor(e,r){this.name=e,this.isBlockDevice=r.isBlockDevice.bind(r),this.isCharacterDevice=r.isCharacterDevice.bind(r),this.isDirectory=r.isDirectory.bind(r),this.isFIFO=r.isFIFO.bind(r),this.isFile=r.isFile.bind(r),this.isSocket=r.isSocket.bind(r),this.isSymbolicLink=r.isSymbolicLink.bind(r)}};function zce(t,e){return new HT(t,e)}Gw.createDirentFromStats=zce});var jT=C(Bl=>{"use strict";Object.defineProperty(Bl,"__esModule",{value:!0});var Xce=require("path"),Vce=2,Zce=/(\\?)([()*?[\]{|}]|^!|[!+@](?=\())/g;function _ce(t){return t.replace(/\\/g,"/")}Bl.unixify=_ce;function $ce(t,e){return Xce.resolve(t,e)}Bl.makeAbsolute=$ce;function eue(t){return t.replace(Zce,"\\$2")}Bl.escape=eue;function tue(t){if(t.charAt(0)==="."){let e=t.charAt(1);if(e==="/"||e==="\\")return t.slice(Vce)}return t}Bl.removeLeadingDotSegment=tue});var qT=C((s4e,GT)=>{GT.exports=function(e){if(typeof e!="string"||e==="")return!1;for(var r;r=/(\\).|([@?!+*]\(.*\))/g.exec(e);){if(r[2])return!0;e=e.slice(r.index+r[0].length)}return!1}});var WT=C((o4e,JT)=>{var rue=qT(),iue={"{":"}","(":")","[":"]"},nue=/\\(.)|(^!|\*|[\].+)]\?|\[[^\\\]]+\]|\{[^\\}]+\}|\(\?[:!=][^\\)]+\)|\([^|]+\|[^\\)]+\))/,sue=/\\(.)|(^!|[*?{}()[\]]|\(\?)/;JT.exports=function(e,r){if(typeof e!="string"||e==="")return!1;if(rue(e))return!0;var i=nue,n;for(r&&r.strict===!1&&(i=sue);n=i.exec(e);){if(n[2])return!0;var s=n.index+n[0].length,o=n[1],a=o?iue[o]:null;if(o&&a){var l=e.indexOf(a,s);l!==-1&&(s=l+1)}e=e.slice(s)}return!1}});var XT=C((a4e,zT)=>{"use strict";var oue=WT(),aue=require("path").posix.dirname,Aue=require("os").platform()==="win32",qw="/",lue=/\\/g,cue=/[\{\[].*[\/]*.*[\}\]]$/,uue=/(^|[^\\])([\{\[]|\([^\)]+$)/,gue=/\\([\*\?\|\[\]\(\)\{\}])/g;zT.exports=function(e,r){var i=Object.assign({flipBackslashes:!0},r);i.flipBackslashes&&Aue&&e.indexOf(qw)<0&&(e=e.replace(lue,qw)),cue.test(e)&&(e+=qw),e+="a";do e=aue(e);while(oue(e)||uue.test(e));return e.replace(gue,"$1")}});var nK=C(sr=>{"use strict";Object.defineProperty(sr,"__esModule",{value:!0});var hue=require("path"),fue=XT(),VT=Qn(),pue=kw(),ZT="**",due="\\",Cue=/[*?]|^!/,mue=/\[.*]/,Iue=/(?:^|[^!*+?@])\(.*\|.*\)/,Eue=/[!*+?@]\(.*\)/,yue=/{.*(?:,|\.\.).*}/;function $T(t,e={}){return!_T(t,e)}sr.isStaticPattern=$T;function _T(t,e={}){return!!(e.caseSensitiveMatch===!1||t.includes(due)||Cue.test(t)||mue.test(t)||Iue.test(t)||e.extglob!==!1&&Eue.test(t)||e.braceExpansion!==!1&&yue.test(t))}sr.isDynamicPattern=_T;function Bue(t){return QC(t)?t.slice(1):t}sr.convertToPositivePattern=Bue;function wue(t){return"!"+t}sr.convertToNegativePattern=wue;function QC(t){return t.startsWith("!")&&t[1]!=="("}sr.isNegativePattern=QC;function eK(t){return!QC(t)}sr.isPositivePattern=eK;function Que(t){return t.filter(QC)}sr.getNegativePatterns=Que;function bue(t){return t.filter(eK)}sr.getPositivePatterns=bue;function Due(t){return fue(t,{flipBackslashes:!1})}sr.getBaseDirectory=Due;function Sue(t){return t.includes(ZT)}sr.hasGlobStar=Sue;function tK(t){return t.endsWith("/"+ZT)}sr.endsWithSlashGlobStar=tK;function Pue(t){let e=hue.basename(t);return tK(t)||$T(e)}sr.isAffectDepthOfReadingPattern=Pue;function xue(t){return t.reduce((e,r)=>e.concat(rK(r)),[])}sr.expandPatternsWithBraceExpansion=xue;function rK(t){return VT.braces(t,{expand:!0,nodupes:!0})}sr.expandBraceExpansion=rK;function kue(t,e){let r=pue.scan(t,Object.assign(Object.assign({},e),{parts:!0}));return r.parts.length===0?[t]:r.parts}sr.getPatternParts=kue;function iK(t,e){return VT.makeRe(t,e)}sr.makeRe=iK;function vue(t,e){return t.map(r=>iK(r,e))}sr.convertPatternsToRe=vue;function Fue(t,e){return e.some(r=>r.test(t))}sr.matchAny=Fue});var oK=C(Jw=>{"use strict";Object.defineProperty(Jw,"__esModule",{value:!0});var Rue=Yw();function Lue(t){let e=Rue(t);return t.forEach(r=>{r.once("error",i=>e.emit("error",i))}),e.once("close",()=>sK(t)),e.once("end",()=>sK(t)),e}Jw.merge=Lue;function sK(t){t.forEach(e=>e.emit("close"))}});var aK=C(bC=>{"use strict";Object.defineProperty(bC,"__esModule",{value:!0});function Mue(t){return typeof t=="string"}bC.isString=Mue;function Nue(t){return t===""}bC.isEmpty=Nue});var Ss=C(Ds=>{"use strict";Object.defineProperty(Ds,"__esModule",{value:!0});var Oue=KT();Ds.array=Oue;var Tue=UT();Ds.errno=Tue;var Kue=YT();Ds.fs=Kue;var Uue=jT();Ds.path=Uue;var Hue=nK();Ds.pattern=Hue;var Yue=oK();Ds.stream=Yue;var jue=aK();Ds.string=jue});var gK=C(Ps=>{"use strict";Object.defineProperty(Ps,"__esModule",{value:!0});var Ta=Ss();function Gue(t,e){let r=AK(t),i=lK(t,e.ignore),n=r.filter(l=>Ta.pattern.isStaticPattern(l,e)),s=r.filter(l=>Ta.pattern.isDynamicPattern(l,e)),o=Ww(n,i,!1),a=Ww(s,i,!0);return o.concat(a)}Ps.generate=Gue;function Ww(t,e,r){let i=cK(t);return"."in i?[zw(".",t,e,r)]:uK(i,e,r)}Ps.convertPatternsToTasks=Ww;function AK(t){return Ta.pattern.getPositivePatterns(t)}Ps.getPositivePatterns=AK;function lK(t,e){return Ta.pattern.getNegativePatterns(t).concat(e).map(Ta.pattern.convertToPositivePattern)}Ps.getNegativePatternsAsPositive=lK;function cK(t){let e={};return t.reduce((r,i)=>{let n=Ta.pattern.getBaseDirectory(i);return n in r?r[n].push(i):r[n]=[i],r},e)}Ps.groupPatternsByBaseDirectory=cK;function uK(t,e,r){return Object.keys(t).map(i=>zw(i,t[i],e,r))}Ps.convertPatternGroupsToTasks=uK;function zw(t,e,r,i){return{dynamic:i,positive:e,negative:r,base:t,patterns:[].concat(e,r.map(Ta.pattern.convertToNegativePattern))}}Ps.convertPatternGroupToTask=zw});var fK=C(Xw=>{"use strict";Object.defineProperty(Xw,"__esModule",{value:!0});function que(t,e,r){e.fs.lstat(t,(i,n)=>{if(i!==null)return hK(r,i);if(!n.isSymbolicLink()||!e.followSymbolicLink)return Vw(r,n);e.fs.stat(t,(s,o)=>{if(s!==null)return e.throwErrorOnBrokenSymbolicLink?hK(r,s):Vw(r,n);e.markSymbolicLink&&(o.isSymbolicLink=()=>!0),Vw(r,o)})})}Xw.read=que;function hK(t,e){t(e)}function Vw(t,e){t(null,e)}});var pK=C(Zw=>{"use strict";Object.defineProperty(Zw,"__esModule",{value:!0});function Jue(t,e){let r=e.fs.lstatSync(t);if(!r.isSymbolicLink()||!e.followSymbolicLink)return r;try{let i=e.fs.statSync(t);return e.markSymbolicLink&&(i.isSymbolicLink=()=>!0),i}catch(i){if(!e.throwErrorOnBrokenSymbolicLink)return r;throw i}}Zw.read=Jue});var dK=C(wl=>{"use strict";Object.defineProperty(wl,"__esModule",{value:!0});var DC=require("fs");wl.FILE_SYSTEM_ADAPTER={lstat:DC.lstat,stat:DC.stat,lstatSync:DC.lstatSync,statSync:DC.statSync};function Wue(t){return t===void 0?wl.FILE_SYSTEM_ADAPTER:Object.assign(Object.assign({},wl.FILE_SYSTEM_ADAPTER),t)}wl.createFileSystemAdapter=Wue});var mK=C(_w=>{"use strict";Object.defineProperty(_w,"__esModule",{value:!0});var zue=dK(),CK=class{constructor(e={}){this._options=e,this.followSymbolicLink=this._getValue(this._options.followSymbolicLink,!0),this.fs=zue.createFileSystemAdapter(this._options.fs),this.markSymbolicLink=this._getValue(this._options.markSymbolicLink,!1),this.throwErrorOnBrokenSymbolicLink=this._getValue(this._options.throwErrorOnBrokenSymbolicLink,!0)}_getValue(e,r){return e===void 0?r:e}};_w.default=CK});var Ka=C(Pg=>{"use strict";Object.defineProperty(Pg,"__esModule",{value:!0});var IK=fK(),Xue=pK(),$w=mK();Pg.Settings=$w.default;function Vue(t,e,r){if(typeof e=="function")return IK.read(t,eQ(),e);IK.read(t,eQ(e),r)}Pg.stat=Vue;function Zue(t,e){let r=eQ(e);return Xue.read(t,r)}Pg.statSync=Zue;function eQ(t={}){return t instanceof $w.default?t:new $w.default(t)}});var yK=C((m4e,EK)=>{EK.exports=_ue;function _ue(t,e){var r,i,n,s=!0;Array.isArray(t)?(r=[],i=t.length):(n=Object.keys(t),r={},i=n.length);function o(l){function c(){e&&e(l,r),e=null}s?process.nextTick(c):c()}function a(l,c,u){r[l]=u,(--i==0||c)&&o(c)}i?n?n.forEach(function(l){t[l](function(c,u){a(l,c,u)})}):t.forEach(function(l,c){l(function(u,g){a(c,u,g)})}):o(null),s=!1}});var rQ=C(tQ=>{"use strict";Object.defineProperty(tQ,"__esModule",{value:!0});var BK=process.versions.node.split("."),wK=parseInt(BK[0],10),$ue=parseInt(BK[1],10),QK=10,ege=10,tge=wK>QK,rge=wK===QK&&$ue>=ege;tQ.IS_SUPPORT_READDIR_WITH_FILE_TYPES=tge||rge});var DK=C(iQ=>{"use strict";Object.defineProperty(iQ,"__esModule",{value:!0});var bK=class{constructor(e,r){this.name=e,this.isBlockDevice=r.isBlockDevice.bind(r),this.isCharacterDevice=r.isCharacterDevice.bind(r),this.isDirectory=r.isDirectory.bind(r),this.isFIFO=r.isFIFO.bind(r),this.isFile=r.isFile.bind(r),this.isSocket=r.isSocket.bind(r),this.isSymbolicLink=r.isSymbolicLink.bind(r)}};function ige(t,e){return new bK(t,e)}iQ.createDirentFromStats=ige});var sQ=C(nQ=>{"use strict";Object.defineProperty(nQ,"__esModule",{value:!0});var nge=DK();nQ.fs=nge});var vK=C(xg=>{"use strict";Object.defineProperty(xg,"__esModule",{value:!0});var sge=Ka(),SK=yK(),oge=rQ(),PK=sQ();function age(t,e,r){return!e.stats&&oge.IS_SUPPORT_READDIR_WITH_FILE_TYPES?xK(t,e,r):kK(t,e,r)}xg.read=age;function xK(t,e,r){e.fs.readdir(t,{withFileTypes:!0},(i,n)=>{if(i!==null)return SC(r,i);let s=n.map(a=>({dirent:a,name:a.name,path:`${t}${e.pathSegmentSeparator}${a.name}`}));if(!e.followSymbolicLinks)return oQ(r,s);let o=s.map(a=>Age(a,e));SK(o,(a,l)=>{if(a!==null)return SC(r,a);oQ(r,l)})})}xg.readdirWithFileTypes=xK;function Age(t,e){return r=>{if(!t.dirent.isSymbolicLink())return r(null,t);e.fs.stat(t.path,(i,n)=>i!==null?e.throwErrorOnBrokenSymbolicLink?r(i):r(null,t):(t.dirent=PK.fs.createDirentFromStats(t.name,n),r(null,t)))}}function kK(t,e,r){e.fs.readdir(t,(i,n)=>{if(i!==null)return SC(r,i);let s=n.map(a=>`${t}${e.pathSegmentSeparator}${a}`),o=s.map(a=>l=>sge.stat(a,e.fsStatSettings,l));SK(o,(a,l)=>{if(a!==null)return SC(r,a);let c=[];n.forEach((u,g)=>{let h=l[g],f={name:u,path:s[g],dirent:PK.fs.createDirentFromStats(u,h)};e.stats&&(f.stats=h),c.push(f)}),oQ(r,c)})})}xg.readdir=kK;function SC(t,e){t(e)}function oQ(t,e){t(null,e)}});var MK=C(kg=>{"use strict";Object.defineProperty(kg,"__esModule",{value:!0});var lge=Ka(),cge=rQ(),FK=sQ();function uge(t,e){return!e.stats&&cge.IS_SUPPORT_READDIR_WITH_FILE_TYPES?RK(t,e):LK(t,e)}kg.read=uge;function RK(t,e){return e.fs.readdirSync(t,{withFileTypes:!0}).map(i=>{let n={dirent:i,name:i.name,path:`${t}${e.pathSegmentSeparator}${i.name}`};if(n.dirent.isSymbolicLink()&&e.followSymbolicLinks)try{let s=e.fs.statSync(n.path);n.dirent=FK.fs.createDirentFromStats(n.name,s)}catch(s){if(e.throwErrorOnBrokenSymbolicLink)throw s}return n})}kg.readdirWithFileTypes=RK;function LK(t,e){return e.fs.readdirSync(t).map(i=>{let n=`${t}${e.pathSegmentSeparator}${i}`,s=lge.statSync(n,e.fsStatSettings),o={name:i,path:n,dirent:FK.fs.createDirentFromStats(i,s)};return e.stats&&(o.stats=s),o})}kg.readdir=LK});var NK=C(Ql=>{"use strict";Object.defineProperty(Ql,"__esModule",{value:!0});var bl=require("fs");Ql.FILE_SYSTEM_ADAPTER={lstat:bl.lstat,stat:bl.stat,lstatSync:bl.lstatSync,statSync:bl.statSync,readdir:bl.readdir,readdirSync:bl.readdirSync};function gge(t){return t===void 0?Ql.FILE_SYSTEM_ADAPTER:Object.assign(Object.assign({},Ql.FILE_SYSTEM_ADAPTER),t)}Ql.createFileSystemAdapter=gge});var TK=C(aQ=>{"use strict";Object.defineProperty(aQ,"__esModule",{value:!0});var hge=require("path"),fge=Ka(),pge=NK(),OK=class{constructor(e={}){this._options=e,this.followSymbolicLinks=this._getValue(this._options.followSymbolicLinks,!1),this.fs=pge.createFileSystemAdapter(this._options.fs),this.pathSegmentSeparator=this._getValue(this._options.pathSegmentSeparator,hge.sep),this.stats=this._getValue(this._options.stats,!1),this.throwErrorOnBrokenSymbolicLink=this._getValue(this._options.throwErrorOnBrokenSymbolicLink,!0),this.fsStatSettings=new fge.Settings({followSymbolicLink:this.followSymbolicLinks,fs:this.fs,throwErrorOnBrokenSymbolicLink:this.throwErrorOnBrokenSymbolicLink})}_getValue(e,r){return e===void 0?r:e}};aQ.default=OK});var PC=C(vg=>{"use strict";Object.defineProperty(vg,"__esModule",{value:!0});var KK=vK(),dge=MK(),AQ=TK();vg.Settings=AQ.default;function Cge(t,e,r){if(typeof e=="function")return KK.read(t,lQ(),e);KK.read(t,lQ(e),r)}vg.scandir=Cge;function mge(t,e){let r=lQ(e);return dge.read(t,r)}vg.scandirSync=mge;function lQ(t={}){return t instanceof AQ.default?t:new AQ.default(t)}});var HK=C((S4e,UK)=>{"use strict";function Ige(t){var e=new t,r=e;function i(){var s=e;return s.next?e=s.next:(e=new t,r=e),s.next=null,s}function n(s){r.next=s,r=s}return{get:i,release:n}}UK.exports=Ige});var jK=C((P4e,YK)=>{"use strict";var Ege=HK();function Bge(t,e,r){typeof t=="function"&&(r=e,e=t,t=null);var i=Ege(yge),n=null,s=null,o=0,a={push:f,drain:Jn,saturated:Jn,pause:c,paused:!1,concurrency:r,running:l,resume:g,idle:h,length:u,unshift:p,empty:Jn,kill:I,killAndDrain:y};return a;function l(){return o}function c(){a.paused=!0}function u(){for(var B=n,P=0;B;)B=B.next,P++;return P}function g(){if(!!a.paused){a.paused=!1;for(var B=0;B{"use strict";Object.defineProperty(Dl,"__esModule",{value:!0});function wge(t,e){return t.errorFilter===null?!0:!t.errorFilter(e)}Dl.isFatalError=wge;function Qge(t,e){return t===null||t(e)}Dl.isAppliedFilter=Qge;function bge(t,e){return t.split(/[\\/]/).join(e)}Dl.replacePathSegmentSeparator=bge;function Dge(t,e,r){return t===""?e:t+r+e}Dl.joinPathSegments=Dge});var uQ=C(cQ=>{"use strict";Object.defineProperty(cQ,"__esModule",{value:!0});var Sge=xC(),GK=class{constructor(e,r){this._root=e,this._settings=r,this._root=Sge.replacePathSegmentSeparator(e,r.pathSegmentSeparator)}};cQ.default=GK});var hQ=C(gQ=>{"use strict";Object.defineProperty(gQ,"__esModule",{value:!0});var Pge=require("events"),xge=PC(),kge=jK(),kC=xC(),vge=uQ(),qK=class extends vge.default{constructor(e,r){super(e,r);this._settings=r,this._scandir=xge.scandir,this._emitter=new Pge.EventEmitter,this._queue=kge(this._worker.bind(this),this._settings.concurrency),this._isFatalError=!1,this._isDestroyed=!1,this._queue.drain=()=>{this._isFatalError||this._emitter.emit("end")}}read(){return this._isFatalError=!1,this._isDestroyed=!1,setImmediate(()=>{this._pushToQueue(this._root,this._settings.basePath)}),this._emitter}destroy(){if(this._isDestroyed)throw new Error("The reader is already destroyed");this._isDestroyed=!0,this._queue.killAndDrain()}onEntry(e){this._emitter.on("entry",e)}onError(e){this._emitter.once("error",e)}onEnd(e){this._emitter.once("end",e)}_pushToQueue(e,r){let i={directory:e,base:r};this._queue.push(i,n=>{n!==null&&this._handleError(n)})}_worker(e,r){this._scandir(e.directory,this._settings.fsScandirSettings,(i,n)=>{if(i!==null)return r(i,void 0);for(let s of n)this._handleEntry(s,e.base);r(null,void 0)})}_handleError(e){!kC.isFatalError(this._settings,e)||(this._isFatalError=!0,this._isDestroyed=!0,this._emitter.emit("error",e))}_handleEntry(e,r){if(this._isDestroyed||this._isFatalError)return;let i=e.path;r!==void 0&&(e.path=kC.joinPathSegments(r,e.name,this._settings.pathSegmentSeparator)),kC.isAppliedFilter(this._settings.entryFilter,e)&&this._emitEntry(e),e.dirent.isDirectory()&&kC.isAppliedFilter(this._settings.deepFilter,e)&&this._pushToQueue(i,e.path)}_emitEntry(e){this._emitter.emit("entry",e)}};gQ.default=qK});var WK=C(fQ=>{"use strict";Object.defineProperty(fQ,"__esModule",{value:!0});var Fge=hQ(),JK=class{constructor(e,r){this._root=e,this._settings=r,this._reader=new Fge.default(this._root,this._settings),this._storage=new Set}read(e){this._reader.onError(r=>{Rge(e,r)}),this._reader.onEntry(r=>{this._storage.add(r)}),this._reader.onEnd(()=>{Lge(e,[...this._storage])}),this._reader.read()}};fQ.default=JK;function Rge(t,e){t(e)}function Lge(t,e){t(null,e)}});var XK=C(pQ=>{"use strict";Object.defineProperty(pQ,"__esModule",{value:!0});var Mge=require("stream"),Nge=hQ(),zK=class{constructor(e,r){this._root=e,this._settings=r,this._reader=new Nge.default(this._root,this._settings),this._stream=new Mge.Readable({objectMode:!0,read:()=>{},destroy:this._reader.destroy.bind(this._reader)})}read(){return this._reader.onError(e=>{this._stream.emit("error",e)}),this._reader.onEntry(e=>{this._stream.push(e)}),this._reader.onEnd(()=>{this._stream.push(null)}),this._reader.read(),this._stream}};pQ.default=zK});var ZK=C(dQ=>{"use strict";Object.defineProperty(dQ,"__esModule",{value:!0});var Oge=PC(),vC=xC(),Tge=uQ(),VK=class extends Tge.default{constructor(){super(...arguments);this._scandir=Oge.scandirSync,this._storage=new Set,this._queue=new Set}read(){return this._pushToQueue(this._root,this._settings.basePath),this._handleQueue(),[...this._storage]}_pushToQueue(e,r){this._queue.add({directory:e,base:r})}_handleQueue(){for(let e of this._queue.values())this._handleDirectory(e.directory,e.base)}_handleDirectory(e,r){try{let i=this._scandir(e,this._settings.fsScandirSettings);for(let n of i)this._handleEntry(n,r)}catch(i){this._handleError(i)}}_handleError(e){if(!!vC.isFatalError(this._settings,e))throw e}_handleEntry(e,r){let i=e.path;r!==void 0&&(e.path=vC.joinPathSegments(r,e.name,this._settings.pathSegmentSeparator)),vC.isAppliedFilter(this._settings.entryFilter,e)&&this._pushToStorage(e),e.dirent.isDirectory()&&vC.isAppliedFilter(this._settings.deepFilter,e)&&this._pushToQueue(i,e.path)}_pushToStorage(e){this._storage.add(e)}};dQ.default=VK});var $K=C(CQ=>{"use strict";Object.defineProperty(CQ,"__esModule",{value:!0});var Kge=ZK(),_K=class{constructor(e,r){this._root=e,this._settings=r,this._reader=new Kge.default(this._root,this._settings)}read(){return this._reader.read()}};CQ.default=_K});var t1=C(mQ=>{"use strict";Object.defineProperty(mQ,"__esModule",{value:!0});var Uge=require("path"),Hge=PC(),e1=class{constructor(e={}){this._options=e,this.basePath=this._getValue(this._options.basePath,void 0),this.concurrency=this._getValue(this._options.concurrency,Infinity),this.deepFilter=this._getValue(this._options.deepFilter,null),this.entryFilter=this._getValue(this._options.entryFilter,null),this.errorFilter=this._getValue(this._options.errorFilter,null),this.pathSegmentSeparator=this._getValue(this._options.pathSegmentSeparator,Uge.sep),this.fsScandirSettings=new Hge.Settings({followSymbolicLinks:this._options.followSymbolicLinks,fs:this._options.fs,pathSegmentSeparator:this._options.pathSegmentSeparator,stats:this._options.stats,throwErrorOnBrokenSymbolicLink:this._options.throwErrorOnBrokenSymbolicLink})}_getValue(e,r){return e===void 0?r:e}};mQ.default=e1});var EQ=C(Sl=>{"use strict";Object.defineProperty(Sl,"__esModule",{value:!0});var r1=WK(),Yge=XK(),jge=$K(),IQ=t1();Sl.Settings=IQ.default;function Gge(t,e,r){if(typeof e=="function")return new r1.default(t,FC()).read(e);new r1.default(t,FC(e)).read(r)}Sl.walk=Gge;function qge(t,e){let r=FC(e);return new jge.default(t,r).read()}Sl.walkSync=qge;function Jge(t,e){let r=FC(e);return new Yge.default(t,r).read()}Sl.walkStream=Jge;function FC(t={}){return t instanceof IQ.default?t:new IQ.default(t)}});var BQ=C(yQ=>{"use strict";Object.defineProperty(yQ,"__esModule",{value:!0});var Wge=require("path"),zge=Ka(),i1=Ss(),n1=class{constructor(e){this._settings=e,this._fsStatSettings=new zge.Settings({followSymbolicLink:this._settings.followSymbolicLinks,fs:this._settings.fs,throwErrorOnBrokenSymbolicLink:this._settings.followSymbolicLinks})}_getFullEntryPath(e){return Wge.resolve(this._settings.cwd,e)}_makeEntry(e,r){let i={name:r,path:r,dirent:i1.fs.createDirentFromStats(r,e)};return this._settings.stats&&(i.stats=e),i}_isFatalError(e){return!i1.errno.isEnoentCodeError(e)&&!this._settings.suppressErrors}};yQ.default=n1});var QQ=C(wQ=>{"use strict";Object.defineProperty(wQ,"__esModule",{value:!0});var Xge=require("stream"),Vge=Ka(),Zge=EQ(),_ge=BQ(),s1=class extends _ge.default{constructor(){super(...arguments);this._walkStream=Zge.walkStream,this._stat=Vge.stat}dynamic(e,r){return this._walkStream(e,r)}static(e,r){let i=e.map(this._getFullEntryPath,this),n=new Xge.PassThrough({objectMode:!0});n._write=(s,o,a)=>this._getEntry(i[s],e[s],r).then(l=>{l!==null&&r.entryFilter(l)&&n.push(l),s===i.length-1&&n.end(),a()}).catch(a);for(let s=0;sthis._makeEntry(n,r)).catch(n=>{if(i.errorFilter(n))return null;throw n})}_getStat(e){return new Promise((r,i)=>{this._stat(e,this._fsStatSettings,(n,s)=>n===null?r(s):i(n))})}};wQ.default=s1});var a1=C(bQ=>{"use strict";Object.defineProperty(bQ,"__esModule",{value:!0});var Pl=Ss(),o1=class{constructor(e,r,i){this._patterns=e,this._settings=r,this._micromatchOptions=i,this._storage=[],this._fillStorage()}_fillStorage(){let e=Pl.pattern.expandPatternsWithBraceExpansion(this._patterns);for(let r of e){let i=this._getPatternSegments(r),n=this._splitSegmentsIntoSections(i);this._storage.push({complete:n.length<=1,pattern:r,segments:i,sections:n})}}_getPatternSegments(e){return Pl.pattern.getPatternParts(e,this._micromatchOptions).map(i=>Pl.pattern.isDynamicPattern(i,this._settings)?{dynamic:!0,pattern:i,patternRe:Pl.pattern.makeRe(i,this._micromatchOptions)}:{dynamic:!1,pattern:i})}_splitSegmentsIntoSections(e){return Pl.array.splitWhen(e,r=>r.dynamic&&Pl.pattern.hasGlobStar(r.pattern))}};bQ.default=o1});var l1=C(DQ=>{"use strict";Object.defineProperty(DQ,"__esModule",{value:!0});var $ge=a1(),A1=class extends $ge.default{match(e){let r=e.split("/"),i=r.length,n=this._storage.filter(s=>!s.complete||s.segments.length>i);for(let s of n){let o=s.sections[0];if(!s.complete&&i>o.length||r.every((l,c)=>{let u=s.segments[c];return!!(u.dynamic&&u.patternRe.test(l)||!u.dynamic&&u.pattern===l)}))return!0}return!1}};DQ.default=A1});var u1=C(SQ=>{"use strict";Object.defineProperty(SQ,"__esModule",{value:!0});var RC=Ss(),ehe=l1(),c1=class{constructor(e,r){this._settings=e,this._micromatchOptions=r}getFilter(e,r,i){let n=this._getMatcher(r),s=this._getNegativePatternsRe(i);return o=>this._filter(e,o,n,s)}_getMatcher(e){return new ehe.default(e,this._settings,this._micromatchOptions)}_getNegativePatternsRe(e){let r=e.filter(RC.pattern.isAffectDepthOfReadingPattern);return RC.pattern.convertPatternsToRe(r,this._micromatchOptions)}_filter(e,r,i,n){let s=this._getEntryLevel(e,r.path);if(this._isSkippedByDeep(s)||this._isSkippedSymbolicLink(r))return!1;let o=RC.path.removeLeadingDotSegment(r.path);return this._isSkippedByPositivePatterns(o,i)?!1:this._isSkippedByNegativePatterns(o,n)}_isSkippedByDeep(e){return e>=this._settings.deep}_isSkippedSymbolicLink(e){return!this._settings.followSymbolicLinks&&e.dirent.isSymbolicLink()}_getEntryLevel(e,r){let i=e.split("/").length;return r.split("/").length-(e===""?0:i)}_isSkippedByPositivePatterns(e,r){return!this._settings.baseNameMatch&&!r.match(e)}_isSkippedByNegativePatterns(e,r){return!RC.pattern.matchAny(e,r)}};SQ.default=c1});var h1=C(PQ=>{"use strict";Object.defineProperty(PQ,"__esModule",{value:!0});var Fg=Ss(),g1=class{constructor(e,r){this._settings=e,this._micromatchOptions=r,this.index=new Map}getFilter(e,r){let i=Fg.pattern.convertPatternsToRe(e,this._micromatchOptions),n=Fg.pattern.convertPatternsToRe(r,this._micromatchOptions);return s=>this._filter(s,i,n)}_filter(e,r,i){if(this._settings.unique){if(this._isDuplicateEntry(e))return!1;this._createIndexRecord(e)}if(this._onlyFileFilter(e)||this._onlyDirectoryFilter(e)||this._isSkippedByAbsoluteNegativePatterns(e,i))return!1;let n=this._settings.baseNameMatch?e.name:e.path;return this._isMatchToPatterns(n,r)&&!this._isMatchToPatterns(e.path,i)}_isDuplicateEntry(e){return this.index.has(e.path)}_createIndexRecord(e){this.index.set(e.path,void 0)}_onlyFileFilter(e){return this._settings.onlyFiles&&!e.dirent.isFile()}_onlyDirectoryFilter(e){return this._settings.onlyDirectories&&!e.dirent.isDirectory()}_isSkippedByAbsoluteNegativePatterns(e,r){if(!this._settings.absolute)return!1;let i=Fg.path.makeAbsolute(this._settings.cwd,e.path);return this._isMatchToPatterns(i,r)}_isMatchToPatterns(e,r){let i=Fg.path.removeLeadingDotSegment(e);return Fg.pattern.matchAny(i,r)}};PQ.default=g1});var p1=C(xQ=>{"use strict";Object.defineProperty(xQ,"__esModule",{value:!0});var the=Ss(),f1=class{constructor(e){this._settings=e}getFilter(){return e=>this._isNonFatalError(e)}_isNonFatalError(e){return the.errno.isEnoentCodeError(e)||this._settings.suppressErrors}};xQ.default=f1});var m1=C(kQ=>{"use strict";Object.defineProperty(kQ,"__esModule",{value:!0});var d1=Ss(),C1=class{constructor(e){this._settings=e}getTransformer(){return e=>this._transform(e)}_transform(e){let r=e.path;return this._settings.absolute&&(r=d1.path.makeAbsolute(this._settings.cwd,r),r=d1.path.unixify(r)),this._settings.markDirectories&&e.dirent.isDirectory()&&(r+="/"),this._settings.objectMode?Object.assign(Object.assign({},e),{path:r}):r}};kQ.default=C1});var LC=C(vQ=>{"use strict";Object.defineProperty(vQ,"__esModule",{value:!0});var rhe=require("path"),ihe=u1(),nhe=h1(),she=p1(),ohe=m1(),I1=class{constructor(e){this._settings=e,this.errorFilter=new she.default(this._settings),this.entryFilter=new nhe.default(this._settings,this._getMicromatchOptions()),this.deepFilter=new ihe.default(this._settings,this._getMicromatchOptions()),this.entryTransformer=new ohe.default(this._settings)}_getRootDirectory(e){return rhe.resolve(this._settings.cwd,e.base)}_getReaderOptions(e){let r=e.base==="."?"":e.base;return{basePath:r,pathSegmentSeparator:"/",concurrency:this._settings.concurrency,deepFilter:this.deepFilter.getFilter(r,e.positive,e.negative),entryFilter:this.entryFilter.getFilter(e.positive,e.negative),errorFilter:this.errorFilter.getFilter(),followSymbolicLinks:this._settings.followSymbolicLinks,fs:this._settings.fs,stats:this._settings.stats,throwErrorOnBrokenSymbolicLink:this._settings.throwErrorOnBrokenSymbolicLink,transform:this.entryTransformer.getTransformer()}}_getMicromatchOptions(){return{dot:this._settings.dot,matchBase:this._settings.baseNameMatch,nobrace:!this._settings.braceExpansion,nocase:!this._settings.caseSensitiveMatch,noext:!this._settings.extglob,noglobstar:!this._settings.globstar,posix:!0,strictSlashes:!1}}};vQ.default=I1});var y1=C(FQ=>{"use strict";Object.defineProperty(FQ,"__esModule",{value:!0});var ahe=QQ(),Ahe=LC(),E1=class extends Ahe.default{constructor(){super(...arguments);this._reader=new ahe.default(this._settings)}read(e){let r=this._getRootDirectory(e),i=this._getReaderOptions(e),n=[];return new Promise((s,o)=>{let a=this.api(r,e,i);a.once("error",o),a.on("data",l=>n.push(i.transform(l))),a.once("end",()=>s(n))})}api(e,r,i){return r.dynamic?this._reader.dynamic(e,i):this._reader.static(r.patterns,i)}};FQ.default=E1});var w1=C(RQ=>{"use strict";Object.defineProperty(RQ,"__esModule",{value:!0});var lhe=require("stream"),che=QQ(),uhe=LC(),B1=class extends uhe.default{constructor(){super(...arguments);this._reader=new che.default(this._settings)}read(e){let r=this._getRootDirectory(e),i=this._getReaderOptions(e),n=this.api(r,e,i),s=new lhe.Readable({objectMode:!0,read:()=>{}});return n.once("error",o=>s.emit("error",o)).on("data",o=>s.emit("data",i.transform(o))).once("end",()=>s.emit("end")),s.once("close",()=>n.destroy()),s}api(e,r,i){return r.dynamic?this._reader.dynamic(e,i):this._reader.static(r.patterns,i)}};RQ.default=B1});var b1=C(LQ=>{"use strict";Object.defineProperty(LQ,"__esModule",{value:!0});var ghe=Ka(),hhe=EQ(),fhe=BQ(),Q1=class extends fhe.default{constructor(){super(...arguments);this._walkSync=hhe.walkSync,this._statSync=ghe.statSync}dynamic(e,r){return this._walkSync(e,r)}static(e,r){let i=[];for(let n of e){let s=this._getFullEntryPath(n),o=this._getEntry(s,n,r);o===null||!r.entryFilter(o)||i.push(o)}return i}_getEntry(e,r,i){try{let n=this._getStat(e);return this._makeEntry(n,r)}catch(n){if(i.errorFilter(n))return null;throw n}}_getStat(e){return this._statSync(e,this._fsStatSettings)}};LQ.default=Q1});var S1=C(MQ=>{"use strict";Object.defineProperty(MQ,"__esModule",{value:!0});var phe=b1(),dhe=LC(),D1=class extends dhe.default{constructor(){super(...arguments);this._reader=new phe.default(this._settings)}read(e){let r=this._getRootDirectory(e),i=this._getReaderOptions(e);return this.api(r,e,i).map(i.transform)}api(e,r,i){return r.dynamic?this._reader.dynamic(e,i):this._reader.static(r.patterns,i)}};MQ.default=D1});var x1=C(Rg=>{"use strict";Object.defineProperty(Rg,"__esModule",{value:!0});var xl=require("fs"),Che=require("os"),mhe=Che.cpus().length;Rg.DEFAULT_FILE_SYSTEM_ADAPTER={lstat:xl.lstat,lstatSync:xl.lstatSync,stat:xl.stat,statSync:xl.statSync,readdir:xl.readdir,readdirSync:xl.readdirSync};var P1=class{constructor(e={}){this._options=e,this.absolute=this._getValue(this._options.absolute,!1),this.baseNameMatch=this._getValue(this._options.baseNameMatch,!1),this.braceExpansion=this._getValue(this._options.braceExpansion,!0),this.caseSensitiveMatch=this._getValue(this._options.caseSensitiveMatch,!0),this.concurrency=this._getValue(this._options.concurrency,mhe),this.cwd=this._getValue(this._options.cwd,process.cwd()),this.deep=this._getValue(this._options.deep,Infinity),this.dot=this._getValue(this._options.dot,!1),this.extglob=this._getValue(this._options.extglob,!0),this.followSymbolicLinks=this._getValue(this._options.followSymbolicLinks,!0),this.fs=this._getFileSystemMethods(this._options.fs),this.globstar=this._getValue(this._options.globstar,!0),this.ignore=this._getValue(this._options.ignore,[]),this.markDirectories=this._getValue(this._options.markDirectories,!1),this.objectMode=this._getValue(this._options.objectMode,!1),this.onlyDirectories=this._getValue(this._options.onlyDirectories,!1),this.onlyFiles=this._getValue(this._options.onlyFiles,!0),this.stats=this._getValue(this._options.stats,!1),this.suppressErrors=this._getValue(this._options.suppressErrors,!1),this.throwErrorOnBrokenSymbolicLink=this._getValue(this._options.throwErrorOnBrokenSymbolicLink,!1),this.unique=this._getValue(this._options.unique,!0),this.onlyDirectories&&(this.onlyFiles=!1),this.stats&&(this.objectMode=!0)}_getValue(e,r){return e===void 0?r:e}_getFileSystemMethods(e={}){return Object.assign(Object.assign({},Rg.DEFAULT_FILE_SYSTEM_ADAPTER),e)}};Rg.default=P1});var MC=C((_4e,k1)=>{"use strict";var v1=gK(),Ihe=y1(),Ehe=w1(),yhe=S1(),NQ=x1(),Ua=Ss();async function TQ(t,e){kl(t);let r=OQ(t,Ihe.default,e),i=await Promise.all(r);return Ua.array.flatten(i)}(function(t){function e(o,a){kl(o);let l=OQ(o,yhe.default,a);return Ua.array.flatten(l)}t.sync=e;function r(o,a){kl(o);let l=OQ(o,Ehe.default,a);return Ua.stream.merge(l)}t.stream=r;function i(o,a){kl(o);let l=[].concat(o),c=new NQ.default(a);return v1.generate(l,c)}t.generateTasks=i;function n(o,a){kl(o);let l=new NQ.default(a);return Ua.pattern.isDynamicPattern(o,l)}t.isDynamicPattern=n;function s(o){return kl(o),Ua.path.escape(o)}t.escapePath=s})(TQ||(TQ={}));function OQ(t,e,r){let i=[].concat(t),n=new NQ.default(r),s=v1.generate(i,n),o=new e(n);return s.map(o.read,o)}function kl(t){if(![].concat(t).every(i=>Ua.string.isString(i)&&!Ua.string.isEmpty(i)))throw new TypeError("Patterns must be a string (non empty) or an array of strings")}k1.exports=TQ});var R1=C(Ha=>{"use strict";var{promisify:Bhe}=require("util"),F1=require("fs");async function KQ(t,e,r){if(typeof r!="string")throw new TypeError(`Expected a string, got ${typeof r}`);try{return(await Bhe(F1[t])(r))[e]()}catch(i){if(i.code==="ENOENT")return!1;throw i}}function UQ(t,e,r){if(typeof r!="string")throw new TypeError(`Expected a string, got ${typeof r}`);try{return F1[t](r)[e]()}catch(i){if(i.code==="ENOENT")return!1;throw i}}Ha.isFile=KQ.bind(null,"stat","isFile");Ha.isDirectory=KQ.bind(null,"stat","isDirectory");Ha.isSymlink=KQ.bind(null,"lstat","isSymbolicLink");Ha.isFileSync=UQ.bind(null,"statSync","isFile");Ha.isDirectorySync=UQ.bind(null,"statSync","isDirectory");Ha.isSymlinkSync=UQ.bind(null,"lstatSync","isSymbolicLink")});var T1=C((e5e,HQ)=>{"use strict";var Ya=require("path"),L1=R1(),M1=t=>t.length>1?`{${t.join(",")}}`:t[0],N1=(t,e)=>{let r=t[0]==="!"?t.slice(1):t;return Ya.isAbsolute(r)?r:Ya.join(e,r)},whe=(t,e)=>Ya.extname(t)?`**/${t}`:`**/${t}.${M1(e)}`,O1=(t,e)=>{if(e.files&&!Array.isArray(e.files))throw new TypeError(`Expected \`files\` to be of type \`Array\` but received type \`${typeof e.files}\``);if(e.extensions&&!Array.isArray(e.extensions))throw new TypeError(`Expected \`extensions\` to be of type \`Array\` but received type \`${typeof e.extensions}\``);return e.files&&e.extensions?e.files.map(r=>Ya.posix.join(t,whe(r,e.extensions))):e.files?e.files.map(r=>Ya.posix.join(t,`**/${r}`)):e.extensions?[Ya.posix.join(t,`**/*.${M1(e.extensions)}`)]:[Ya.posix.join(t,"**")]};HQ.exports=async(t,e)=>{if(e={cwd:process.cwd(),...e},typeof e.cwd!="string")throw new TypeError(`Expected \`cwd\` to be of type \`string\` but received type \`${typeof e.cwd}\``);let r=await Promise.all([].concat(t).map(async i=>await L1.isDirectory(N1(i,e.cwd))?O1(i,e):i));return[].concat.apply([],r)};HQ.exports.sync=(t,e)=>{if(e={cwd:process.cwd(),...e},typeof e.cwd!="string")throw new TypeError(`Expected \`cwd\` to be of type \`string\` but received type \`${typeof e.cwd}\``);let r=[].concat(t).map(i=>L1.isDirectorySync(N1(i,e.cwd))?O1(i,e):i);return[].concat.apply([],r)}});var J1=C((t5e,K1)=>{function U1(t){return Array.isArray(t)?t:[t]}var Qhe=/^\s+$/,bhe=/^\\!/,Dhe=/^\\#/,She=/\r?\n/g,Phe=/^\.*\/|^\.+$/,YQ="/",H1=typeof Symbol!="undefined"?Symbol.for("node-ignore"):"node-ignore",xhe=(t,e,r)=>Object.defineProperty(t,e,{value:r}),khe=/([0-z])-([0-z])/g,vhe=t=>t.replace(khe,(e,r,i)=>r.charCodeAt(0)<=i.charCodeAt(0)?e:""),Fhe=[[/\\?\s+$/,t=>t.indexOf("\\")===0?" ":""],[/\\\s/g,()=>" "],[/[\\^$.|*+(){]/g,t=>`\\${t}`],[/\[([^\]/]*)($|\])/g,(t,e,r)=>r==="]"?`[${vhe(e)}]`:`\\${t}`],[/(?!\\)\?/g,()=>"[^/]"],[/^\//,()=>"^"],[/\//g,()=>"\\/"],[/^\^*\\\*\\\*\\\//,()=>"^(?:.*\\/)?"],[/(?:[^*])$/,t=>/\/$/.test(t)?`${t}$`:`${t}(?=$|\\/$)`],[/^(?=[^^])/,function(){return/\/(?!$)/.test(this)?"^":"(?:^|\\/)"}],[/\\\/\\\*\\\*(?=\\\/|$)/g,(t,e,r)=>e+6`${e}[^\\/]*`],[/(\^|\\\/)?\\\*$/,(t,e)=>`${e?`${e}[^/]+`:"[^/]*"}(?=$|\\/$)`],[/\\\\\\/g,()=>"\\"]],Y1=Object.create(null),Rhe=(t,e,r)=>{let i=Y1[t];if(i)return i;let n=Fhe.reduce((s,o)=>s.replace(o[0],o[1].bind(t)),t);return Y1[t]=r?new RegExp(n,"i"):new RegExp(n)},jQ=t=>typeof t=="string",Lhe=t=>t&&jQ(t)&&!Qhe.test(t)&&t.indexOf("#")!==0,Mhe=t=>t.split(She),j1=class{constructor(e,r,i,n){this.origin=e,this.pattern=r,this.negative=i,this.regex=n}},Nhe=(t,e)=>{let r=t,i=!1;t.indexOf("!")===0&&(i=!0,t=t.substr(1)),t=t.replace(bhe,"!").replace(Dhe,"#");let n=Rhe(t,i,e);return new j1(r,t,i,n)},Ohe=(t,e)=>{throw new e(t)},xs=(t,e,r)=>jQ(t)?t?xs.isNotRelative(t)?r(`path should be a \`path.relative()\`d string, but got "${e}"`,RangeError):!0:r("path must not be empty",TypeError):r(`path must be a string, but got \`${e}\``,TypeError),G1=t=>Phe.test(t);xs.isNotRelative=G1;xs.convert=t=>t;var q1=class{constructor({ignorecase:e=!0}={}){this._rules=[],this._ignorecase=e,xhe(this,H1,!0),this._initCache()}_initCache(){this._ignoreCache=Object.create(null),this._testCache=Object.create(null)}_addPattern(e){if(e&&e[H1]){this._rules=this._rules.concat(e._rules),this._added=!0;return}if(Lhe(e)){let r=Nhe(e,this._ignorecase);this._added=!0,this._rules.push(r)}}add(e){return this._added=!1,U1(jQ(e)?Mhe(e):e).forEach(this._addPattern,this),this._added&&this._initCache(),this}addPattern(e){return this.add(e)}_testOne(e,r){let i=!1,n=!1;return this._rules.forEach(s=>{let{negative:o}=s;if(n===o&&i!==n||o&&!i&&!n&&!r)return;s.regex.test(e)&&(i=!o,n=o)}),{ignored:i,unignored:n}}_test(e,r,i,n){let s=e&&xs.convert(e);return xs(s,e,Ohe),this._t(s,r,i,n)}_t(e,r,i,n){if(e in r)return r[e];if(n||(n=e.split(YQ)),n.pop(),!n.length)return r[e]=this._testOne(e,i);let s=this._t(n.join(YQ)+YQ,r,i,n);return r[e]=s.ignored?s:this._testOne(e,i)}ignores(e){return this._test(e,this._ignoreCache,!1).ignored}createFilter(){return e=>!this.ignores(e)}filter(e){return U1(e).filter(this.createFilter())}test(e){return this._test(e,this._testCache,!0)}},NC=t=>new q1(t),The=()=>!1,Khe=t=>xs(t&&xs.convert(t),t,The);NC.isPathValid=Khe;NC.default=NC;K1.exports=NC;if(typeof process!="undefined"&&(process.env&&process.env.IGNORE_TEST_WIN32||process.platform==="win32")){let t=r=>/^\\\\\?\\/.test(r)||/["<>|\u0000-\u001F]+/u.test(r)?r:r.replace(/\\/g,"/");xs.convert=t;let e=/^[a-z]:\//i;xs.isNotRelative=r=>e.test(r)||G1(r)}});var z1=C((r5e,W1)=>{"use strict";W1.exports=t=>{let e=/^\\\\\?\\/.test(t),r=/[^\u0000-\u0080]+/.test(t);return e||r?t:t.replace(/\\/g,"/")}});var tU=C((i5e,GQ)=>{"use strict";var{promisify:Uhe}=require("util"),X1=require("fs"),ks=require("path"),V1=MC(),Hhe=J1(),OC=z1(),Z1=["**/node_modules/**","**/flow-typed/**","**/coverage/**","**/.git"],Yhe=Uhe(X1.readFile),jhe=t=>e=>e.startsWith("!")?"!"+ks.posix.join(t,e.slice(1)):ks.posix.join(t,e),Ghe=(t,e)=>{let r=OC(ks.relative(e.cwd,ks.dirname(e.fileName)));return t.split(/\r?\n/).filter(Boolean).filter(i=>!i.startsWith("#")).map(jhe(r))},_1=t=>t.reduce((e,r)=>(e.add(Ghe(r.content,{cwd:r.cwd,fileName:r.filePath})),e),Hhe()),qhe=(t,e)=>{if(t=OC(t),ks.isAbsolute(e)){if(e.startsWith(t))return e;throw new Error(`Path ${e} is not in cwd ${t}`)}return ks.join(t,e)},$1=(t,e)=>r=>t.ignores(OC(ks.relative(e,qhe(e,r)))),Jhe=async(t,e)=>{let r=ks.join(e,t),i=await Yhe(r,"utf8");return{cwd:e,filePath:r,content:i}},Whe=(t,e)=>{let r=ks.join(e,t),i=X1.readFileSync(r,"utf8");return{cwd:e,filePath:r,content:i}},eU=({ignore:t=[],cwd:e=OC(process.cwd())}={})=>({ignore:t,cwd:e});GQ.exports=async t=>{t=eU(t);let e=await V1("**/.gitignore",{ignore:Z1.concat(t.ignore),cwd:t.cwd}),r=await Promise.all(e.map(n=>Jhe(n,t.cwd))),i=_1(r);return $1(i,t.cwd)};GQ.exports.sync=t=>{t=eU(t);let r=V1.sync("**/.gitignore",{ignore:Z1.concat(t.ignore),cwd:t.cwd}).map(n=>Whe(n,t.cwd)),i=_1(r);return $1(i,t.cwd)}});var sU=C((n5e,rU)=>{"use strict";var{Transform:zhe}=require("stream"),qQ=class extends zhe{constructor(){super({objectMode:!0})}},iU=class extends qQ{constructor(e){super();this._filter=e}_transform(e,r,i){this._filter(e)&&this.push(e),i()}},nU=class extends qQ{constructor(){super();this._pushed=new Set}_transform(e,r,i){this._pushed.has(e)||(this.push(e),this._pushed.add(e)),i()}};rU.exports={FilterStream:iU,UniqueStream:nU}});var XQ=C((s5e,ja)=>{"use strict";var oU=require("fs"),TC=MT(),Xhe=Yw(),KC=MC(),UC=T1(),JQ=tU(),{FilterStream:Vhe,UniqueStream:Zhe}=sU(),aU=()=>!1,AU=t=>t[0]==="!",_he=t=>{if(!t.every(e=>typeof e=="string"))throw new TypeError("Patterns must be a string or an array of strings")},$he=(t={})=>{if(!t.cwd)return;let e;try{e=oU.statSync(t.cwd)}catch(r){return}if(!e.isDirectory())throw new Error("The `cwd` option must be a path to a directory")},efe=t=>t.stats instanceof oU.Stats?t.path:t,HC=(t,e)=>{t=TC([].concat(t)),_he(t),$he(e);let r=[];e={ignore:[],expandDirectories:!0,...e};for(let[i,n]of t.entries()){if(AU(n))continue;let s=t.slice(i).filter(AU).map(a=>a.slice(1)),o={...e,ignore:e.ignore.concat(s)};r.push({pattern:n,options:o})}return r},tfe=(t,e)=>{let r={};return t.options.cwd&&(r.cwd=t.options.cwd),Array.isArray(t.options.expandDirectories)?r={...r,files:t.options.expandDirectories}:typeof t.options.expandDirectories=="object"&&(r={...r,...t.options.expandDirectories}),e(t.pattern,r)},WQ=(t,e)=>t.options.expandDirectories?tfe(t,e):[t.pattern],lU=t=>t&&t.gitignore?JQ.sync({cwd:t.cwd,ignore:t.ignore}):aU,zQ=t=>e=>{let{options:r}=t;return r.ignore&&Array.isArray(r.ignore)&&r.expandDirectories&&(r.ignore=UC.sync(r.ignore)),{pattern:e,options:r}};ja.exports=async(t,e)=>{let r=HC(t,e),i=async()=>e&&e.gitignore?JQ({cwd:e.cwd,ignore:e.ignore}):aU,n=async()=>{let l=await Promise.all(r.map(async c=>{let u=await WQ(c,UC);return Promise.all(u.map(zQ(c)))}));return TC(...l)},[s,o]=await Promise.all([i(),n()]),a=await Promise.all(o.map(l=>KC(l.pattern,l.options)));return TC(...a).filter(l=>!s(efe(l)))};ja.exports.sync=(t,e)=>{let i=HC(t,e).reduce((s,o)=>{let a=WQ(o,UC.sync).map(zQ(o));return s.concat(a)},[]),n=lU(e);return i.reduce((s,o)=>TC(s,KC.sync(o.pattern,o.options)),[]).filter(s=>!n(s))};ja.exports.stream=(t,e)=>{let i=HC(t,e).reduce((a,l)=>{let c=WQ(l,UC.sync).map(zQ(l));return a.concat(c)},[]),n=lU(e),s=new Vhe(a=>!n(a)),o=new Zhe;return Xhe(i.map(a=>KC.stream(a.pattern,a.options))).pipe(s).pipe(o)};ja.exports.generateGlobTasks=HC;ja.exports.hasMagic=(t,e)=>[].concat(t).some(r=>KC.isDynamicPattern(r,e));ja.exports.gitignore=JQ});var Fs=C((vs,em)=>{"use strict";Object.defineProperty(vs,"__esModule",{value:!0});var IU=["Int8Array","Uint8Array","Uint8ClampedArray","Int16Array","Uint16Array","Int32Array","Uint32Array","Float32Array","Float64Array","BigInt64Array","BigUint64Array"];function ffe(t){return IU.includes(t)}var pfe=["Function","Generator","AsyncGenerator","GeneratorFunction","AsyncGeneratorFunction","AsyncFunction","Observable","Array","Buffer","Object","RegExp","Date","Error","Map","Set","WeakMap","WeakSet","ArrayBuffer","SharedArrayBuffer","DataView","Promise","URL","HTMLElement",...IU];function dfe(t){return pfe.includes(t)}var Cfe=["null","undefined","string","number","bigint","boolean","symbol"];function mfe(t){return Cfe.includes(t)}function Ol(t){return e=>typeof e===t}var{toString:EU}=Object.prototype,Gg=t=>{let e=EU.call(t).slice(8,-1);if(/HTML\w+Element/.test(e)&&Y.domElement(t))return"HTMLElement";if(dfe(e))return e},jt=t=>e=>Gg(e)===t;function Y(t){if(t===null)return"null";switch(typeof t){case"undefined":return"undefined";case"string":return"string";case"number":return"number";case"boolean":return"boolean";case"function":return"Function";case"bigint":return"bigint";case"symbol":return"symbol";default:}if(Y.observable(t))return"Observable";if(Y.array(t))return"Array";if(Y.buffer(t))return"Buffer";let e=Gg(t);if(e)return e;if(t instanceof String||t instanceof Boolean||t instanceof Number)throw new TypeError("Please don't use object wrappers for primitive types");return"Object"}Y.undefined=Ol("undefined");Y.string=Ol("string");var Ife=Ol("number");Y.number=t=>Ife(t)&&!Y.nan(t);Y.bigint=Ol("bigint");Y.function_=Ol("function");Y.null_=t=>t===null;Y.class_=t=>Y.function_(t)&&t.toString().startsWith("class ");Y.boolean=t=>t===!0||t===!1;Y.symbol=Ol("symbol");Y.numericString=t=>Y.string(t)&&!Y.emptyStringOrWhitespace(t)&&!Number.isNaN(Number(t));Y.array=(t,e)=>Array.isArray(t)?Y.function_(e)?t.every(e):!0:!1;Y.buffer=t=>{var e,r,i,n;return(n=(i=(r=(e=t)===null||e===void 0?void 0:e.constructor)===null||r===void 0?void 0:r.isBuffer)===null||i===void 0?void 0:i.call(r,t))!==null&&n!==void 0?n:!1};Y.nullOrUndefined=t=>Y.null_(t)||Y.undefined(t);Y.object=t=>!Y.null_(t)&&(typeof t=="object"||Y.function_(t));Y.iterable=t=>{var e;return Y.function_((e=t)===null||e===void 0?void 0:e[Symbol.iterator])};Y.asyncIterable=t=>{var e;return Y.function_((e=t)===null||e===void 0?void 0:e[Symbol.asyncIterator])};Y.generator=t=>Y.iterable(t)&&Y.function_(t.next)&&Y.function_(t.throw);Y.asyncGenerator=t=>Y.asyncIterable(t)&&Y.function_(t.next)&&Y.function_(t.throw);Y.nativePromise=t=>jt("Promise")(t);var Efe=t=>{var e,r;return Y.function_((e=t)===null||e===void 0?void 0:e.then)&&Y.function_((r=t)===null||r===void 0?void 0:r.catch)};Y.promise=t=>Y.nativePromise(t)||Efe(t);Y.generatorFunction=jt("GeneratorFunction");Y.asyncGeneratorFunction=t=>Gg(t)==="AsyncGeneratorFunction";Y.asyncFunction=t=>Gg(t)==="AsyncFunction";Y.boundFunction=t=>Y.function_(t)&&!t.hasOwnProperty("prototype");Y.regExp=jt("RegExp");Y.date=jt("Date");Y.error=jt("Error");Y.map=t=>jt("Map")(t);Y.set=t=>jt("Set")(t);Y.weakMap=t=>jt("WeakMap")(t);Y.weakSet=t=>jt("WeakSet")(t);Y.int8Array=jt("Int8Array");Y.uint8Array=jt("Uint8Array");Y.uint8ClampedArray=jt("Uint8ClampedArray");Y.int16Array=jt("Int16Array");Y.uint16Array=jt("Uint16Array");Y.int32Array=jt("Int32Array");Y.uint32Array=jt("Uint32Array");Y.float32Array=jt("Float32Array");Y.float64Array=jt("Float64Array");Y.bigInt64Array=jt("BigInt64Array");Y.bigUint64Array=jt("BigUint64Array");Y.arrayBuffer=jt("ArrayBuffer");Y.sharedArrayBuffer=jt("SharedArrayBuffer");Y.dataView=jt("DataView");Y.directInstanceOf=(t,e)=>Object.getPrototypeOf(t)===e.prototype;Y.urlInstance=t=>jt("URL")(t);Y.urlString=t=>{if(!Y.string(t))return!1;try{return new URL(t),!0}catch(e){return!1}};Y.truthy=t=>Boolean(t);Y.falsy=t=>!t;Y.nan=t=>Number.isNaN(t);Y.primitive=t=>Y.null_(t)||mfe(typeof t);Y.integer=t=>Number.isInteger(t);Y.safeInteger=t=>Number.isSafeInteger(t);Y.plainObject=t=>{if(EU.call(t)!=="[object Object]")return!1;let e=Object.getPrototypeOf(t);return e===null||e===Object.getPrototypeOf({})};Y.typedArray=t=>ffe(Gg(t));var yfe=t=>Y.safeInteger(t)&&t>=0;Y.arrayLike=t=>!Y.nullOrUndefined(t)&&!Y.function_(t)&&yfe(t.length);Y.inRange=(t,e)=>{if(Y.number(e))return t>=Math.min(0,e)&&t<=Math.max(e,0);if(Y.array(e)&&e.length===2)return t>=Math.min(...e)&&t<=Math.max(...e);throw new TypeError(`Invalid range: ${JSON.stringify(e)}`)};var Bfe=1,wfe=["innerHTML","ownerDocument","style","attributes","nodeValue"];Y.domElement=t=>Y.object(t)&&t.nodeType===Bfe&&Y.string(t.nodeName)&&!Y.plainObject(t)&&wfe.every(e=>e in t);Y.observable=t=>{var e,r,i,n;return t?t===((r=(e=t)[Symbol.observable])===null||r===void 0?void 0:r.call(e))||t===((n=(i=t)["@@observable"])===null||n===void 0?void 0:n.call(i)):!1};Y.nodeStream=t=>Y.object(t)&&Y.function_(t.pipe)&&!Y.observable(t);Y.infinite=t=>t===Infinity||t===-Infinity;var yU=t=>e=>Y.integer(e)&&Math.abs(e%2)===t;Y.evenInteger=yU(0);Y.oddInteger=yU(1);Y.emptyArray=t=>Y.array(t)&&t.length===0;Y.nonEmptyArray=t=>Y.array(t)&&t.length>0;Y.emptyString=t=>Y.string(t)&&t.length===0;Y.nonEmptyString=t=>Y.string(t)&&t.length>0;var Qfe=t=>Y.string(t)&&!/\S/.test(t);Y.emptyStringOrWhitespace=t=>Y.emptyString(t)||Qfe(t);Y.emptyObject=t=>Y.object(t)&&!Y.map(t)&&!Y.set(t)&&Object.keys(t).length===0;Y.nonEmptyObject=t=>Y.object(t)&&!Y.map(t)&&!Y.set(t)&&Object.keys(t).length>0;Y.emptySet=t=>Y.set(t)&&t.size===0;Y.nonEmptySet=t=>Y.set(t)&&t.size>0;Y.emptyMap=t=>Y.map(t)&&t.size===0;Y.nonEmptyMap=t=>Y.map(t)&&t.size>0;var BU=(t,e,r)=>{if(!Y.function_(e))throw new TypeError(`Invalid predicate: ${JSON.stringify(e)}`);if(r.length===0)throw new TypeError("Invalid number of values");return t.call(r,e)};Y.any=(t,...e)=>(Y.array(t)?t:[t]).some(i=>BU(Array.prototype.some,i,e));Y.all=(t,...e)=>BU(Array.prototype.every,t,e);var Se=(t,e,r)=>{if(!t)throw new TypeError(`Expected value which is \`${e}\`, received value of type \`${Y(r)}\`.`)};vs.assert={undefined:t=>Se(Y.undefined(t),"undefined",t),string:t=>Se(Y.string(t),"string",t),number:t=>Se(Y.number(t),"number",t),bigint:t=>Se(Y.bigint(t),"bigint",t),function_:t=>Se(Y.function_(t),"Function",t),null_:t=>Se(Y.null_(t),"null",t),class_:t=>Se(Y.class_(t),"Class",t),boolean:t=>Se(Y.boolean(t),"boolean",t),symbol:t=>Se(Y.symbol(t),"symbol",t),numericString:t=>Se(Y.numericString(t),"string with a number",t),array:(t,e)=>{Se(Y.array(t),"Array",t),e&&t.forEach(e)},buffer:t=>Se(Y.buffer(t),"Buffer",t),nullOrUndefined:t=>Se(Y.nullOrUndefined(t),"null or undefined",t),object:t=>Se(Y.object(t),"Object",t),iterable:t=>Se(Y.iterable(t),"Iterable",t),asyncIterable:t=>Se(Y.asyncIterable(t),"AsyncIterable",t),generator:t=>Se(Y.generator(t),"Generator",t),asyncGenerator:t=>Se(Y.asyncGenerator(t),"AsyncGenerator",t),nativePromise:t=>Se(Y.nativePromise(t),"native Promise",t),promise:t=>Se(Y.promise(t),"Promise",t),generatorFunction:t=>Se(Y.generatorFunction(t),"GeneratorFunction",t),asyncGeneratorFunction:t=>Se(Y.asyncGeneratorFunction(t),"AsyncGeneratorFunction",t),asyncFunction:t=>Se(Y.asyncFunction(t),"AsyncFunction",t),boundFunction:t=>Se(Y.boundFunction(t),"Function",t),regExp:t=>Se(Y.regExp(t),"RegExp",t),date:t=>Se(Y.date(t),"Date",t),error:t=>Se(Y.error(t),"Error",t),map:t=>Se(Y.map(t),"Map",t),set:t=>Se(Y.set(t),"Set",t),weakMap:t=>Se(Y.weakMap(t),"WeakMap",t),weakSet:t=>Se(Y.weakSet(t),"WeakSet",t),int8Array:t=>Se(Y.int8Array(t),"Int8Array",t),uint8Array:t=>Se(Y.uint8Array(t),"Uint8Array",t),uint8ClampedArray:t=>Se(Y.uint8ClampedArray(t),"Uint8ClampedArray",t),int16Array:t=>Se(Y.int16Array(t),"Int16Array",t),uint16Array:t=>Se(Y.uint16Array(t),"Uint16Array",t),int32Array:t=>Se(Y.int32Array(t),"Int32Array",t),uint32Array:t=>Se(Y.uint32Array(t),"Uint32Array",t),float32Array:t=>Se(Y.float32Array(t),"Float32Array",t),float64Array:t=>Se(Y.float64Array(t),"Float64Array",t),bigInt64Array:t=>Se(Y.bigInt64Array(t),"BigInt64Array",t),bigUint64Array:t=>Se(Y.bigUint64Array(t),"BigUint64Array",t),arrayBuffer:t=>Se(Y.arrayBuffer(t),"ArrayBuffer",t),sharedArrayBuffer:t=>Se(Y.sharedArrayBuffer(t),"SharedArrayBuffer",t),dataView:t=>Se(Y.dataView(t),"DataView",t),urlInstance:t=>Se(Y.urlInstance(t),"URL",t),urlString:t=>Se(Y.urlString(t),"string with a URL",t),truthy:t=>Se(Y.truthy(t),"truthy",t),falsy:t=>Se(Y.falsy(t),"falsy",t),nan:t=>Se(Y.nan(t),"NaN",t),primitive:t=>Se(Y.primitive(t),"primitive",t),integer:t=>Se(Y.integer(t),"integer",t),safeInteger:t=>Se(Y.safeInteger(t),"integer",t),plainObject:t=>Se(Y.plainObject(t),"plain object",t),typedArray:t=>Se(Y.typedArray(t),"TypedArray",t),arrayLike:t=>Se(Y.arrayLike(t),"array-like",t),domElement:t=>Se(Y.domElement(t),"HTMLElement",t),observable:t=>Se(Y.observable(t),"Observable",t),nodeStream:t=>Se(Y.nodeStream(t),"Node.js Stream",t),infinite:t=>Se(Y.infinite(t),"infinite number",t),emptyArray:t=>Se(Y.emptyArray(t),"empty array",t),nonEmptyArray:t=>Se(Y.nonEmptyArray(t),"non-empty array",t),emptyString:t=>Se(Y.emptyString(t),"empty string",t),nonEmptyString:t=>Se(Y.nonEmptyString(t),"non-empty string",t),emptyStringOrWhitespace:t=>Se(Y.emptyStringOrWhitespace(t),"empty string or whitespace",t),emptyObject:t=>Se(Y.emptyObject(t),"empty object",t),nonEmptyObject:t=>Se(Y.nonEmptyObject(t),"non-empty object",t),emptySet:t=>Se(Y.emptySet(t),"empty set",t),nonEmptySet:t=>Se(Y.nonEmptySet(t),"non-empty set",t),emptyMap:t=>Se(Y.emptyMap(t),"empty map",t),nonEmptyMap:t=>Se(Y.nonEmptyMap(t),"non-empty map",t),evenInteger:t=>Se(Y.evenInteger(t),"even integer",t),oddInteger:t=>Se(Y.oddInteger(t),"odd integer",t),directInstanceOf:(t,e)=>Se(Y.directInstanceOf(t,e),"T",t),inRange:(t,e)=>Se(Y.inRange(t,e),"in range",t),any:(t,...e)=>Se(Y.any(t,...e),"predicate returns truthy for any value",e),all:(t,...e)=>Se(Y.all(t,...e),"predicate returns truthy for all values",e)};Object.defineProperties(Y,{class:{value:Y.class_},function:{value:Y.function_},null:{value:Y.null_}});Object.defineProperties(vs.assert,{class:{value:vs.assert.class_},function:{value:vs.assert.function_},null:{value:vs.assert.null_}});vs.default=Y;em.exports=Y;em.exports.default=Y;em.exports.assert=vs.assert});var wU=C((Q5e,l0)=>{"use strict";var c0=class extends Error{constructor(e){super(e||"Promise was canceled");this.name="CancelError"}get isCanceled(){return!0}},qg=class{static fn(e){return(...r)=>new qg((i,n,s)=>{r.push(s),e(...r).then(i,n)})}constructor(e){this._cancelHandlers=[],this._isPending=!0,this._isCanceled=!1,this._rejectOnCancel=!0,this._promise=new Promise((r,i)=>{this._reject=i;let n=a=>{this._isPending=!1,r(a)},s=a=>{this._isPending=!1,i(a)},o=a=>{if(!this._isPending)throw new Error("The `onCancel` handler was attached after the promise settled.");this._cancelHandlers.push(a)};return Object.defineProperties(o,{shouldReject:{get:()=>this._rejectOnCancel,set:a=>{this._rejectOnCancel=a}}}),e(n,s,o)})}then(e,r){return this._promise.then(e,r)}catch(e){return this._promise.catch(e)}finally(e){return this._promise.finally(e)}cancel(e){if(!(!this._isPending||this._isCanceled)){if(this._cancelHandlers.length>0)try{for(let r of this._cancelHandlers)r()}catch(r){this._reject(r)}this._isCanceled=!0,this._rejectOnCancel&&this._reject(new c0(e))}}get isCanceled(){return this._isCanceled}};Object.setPrototypeOf(qg.prototype,Promise.prototype);l0.exports=qg;l0.exports.CancelError=c0});var QU=C((u0,g0)=>{"use strict";Object.defineProperty(u0,"__esModule",{value:!0});var bfe=require("tls"),h0=(t,e)=>{let r;typeof e=="function"?r={connect:e}:r=e;let i=typeof r.connect=="function",n=typeof r.secureConnect=="function",s=typeof r.close=="function",o=()=>{i&&r.connect(),t instanceof bfe.TLSSocket&&n&&(t.authorized?r.secureConnect():t.authorizationError||t.once("secureConnect",r.secureConnect)),s&&t.once("close",r.close)};t.writable&&!t.connecting?o():t.connecting?t.once("connect",o):t.destroyed&&s&&r.close(t._hadError)};u0.default=h0;g0.exports=h0;g0.exports.default=h0});var bU=C((f0,p0)=>{"use strict";Object.defineProperty(f0,"__esModule",{value:!0});var Dfe=QU(),Sfe=Number(process.versions.node.split(".")[0]),d0=t=>{let e={start:Date.now(),socket:void 0,lookup:void 0,connect:void 0,secureConnect:void 0,upload:void 0,response:void 0,end:void 0,error:void 0,abort:void 0,phases:{wait:void 0,dns:void 0,tcp:void 0,tls:void 0,request:void 0,firstByte:void 0,download:void 0,total:void 0}};t.timings=e;let r=o=>{let a=o.emit.bind(o);o.emit=(l,...c)=>(l==="error"&&(e.error=Date.now(),e.phases.total=e.error-e.start,o.emit=a),a(l,...c))};r(t),t.prependOnceListener("abort",()=>{e.abort=Date.now(),(!e.response||Sfe>=13)&&(e.phases.total=Date.now()-e.start)});let i=o=>{e.socket=Date.now(),e.phases.wait=e.socket-e.start;let a=()=>{e.lookup=Date.now(),e.phases.dns=e.lookup-e.socket};o.prependOnceListener("lookup",a),Dfe.default(o,{connect:()=>{e.connect=Date.now(),e.lookup===void 0&&(o.removeListener("lookup",a),e.lookup=e.connect,e.phases.dns=e.lookup-e.socket),e.phases.tcp=e.connect-e.lookup},secureConnect:()=>{e.secureConnect=Date.now(),e.phases.tls=e.secureConnect-e.connect}})};t.socket?i(t.socket):t.prependOnceListener("socket",i);let n=()=>{var o;e.upload=Date.now(),e.phases.request=e.upload-(o=e.secureConnect,o!=null?o:e.connect)};return(()=>typeof t.writableFinished=="boolean"?t.writableFinished:t.finished&&t.outputSize===0&&(!t.socket||t.socket.writableLength===0))()?n():t.prependOnceListener("finish",n),t.prependOnceListener("response",o=>{e.response=Date.now(),e.phases.firstByte=e.response-e.upload,o.timings=e,r(o),o.prependOnceListener("end",()=>{e.end=Date.now(),e.phases.download=e.end-e.response,e.phases.total=e.end-e.start})}),e};f0.default=d0;p0.exports=d0;p0.exports.default=d0});var FU=C((b5e,C0)=>{"use strict";var{V4MAPPED:Pfe,ADDRCONFIG:xfe,ALL:DU,promises:{Resolver:SU},lookup:kfe}=require("dns"),{promisify:m0}=require("util"),vfe=require("os"),Tl=Symbol("cacheableLookupCreateConnection"),I0=Symbol("cacheableLookupInstance"),PU=Symbol("expires"),Ffe=typeof DU=="number",xU=t=>{if(!(t&&typeof t.createConnection=="function"))throw new Error("Expected an Agent instance as the first argument")},Rfe=t=>{for(let e of t)e.family!==6&&(e.address=`::ffff:${e.address}`,e.family=6)},kU=()=>{let t=!1,e=!1;for(let r of Object.values(vfe.networkInterfaces()))for(let i of r)if(!i.internal&&(i.family==="IPv6"?e=!0:t=!0,t&&e))return{has4:t,has6:e};return{has4:t,has6:e}},Lfe=t=>Symbol.iterator in t,vU={ttl:!0},Mfe={all:!0},E0=class{constructor({cache:e=new Map,maxTtl:r=Infinity,fallbackDuration:i=3600,errorTtl:n=.15,resolver:s=new SU,lookup:o=kfe}={}){if(this.maxTtl=r,this.errorTtl=n,this._cache=e,this._resolver=s,this._dnsLookup=m0(o),this._resolver instanceof SU?(this._resolve4=this._resolver.resolve4.bind(this._resolver),this._resolve6=this._resolver.resolve6.bind(this._resolver)):(this._resolve4=m0(this._resolver.resolve4.bind(this._resolver)),this._resolve6=m0(this._resolver.resolve6.bind(this._resolver))),this._iface=kU(),this._pending={},this._nextRemovalTime=!1,this._hostnamesToFallback=new Set,i<1)this._fallback=!1;else{this._fallback=!0;let a=setInterval(()=>{this._hostnamesToFallback.clear()},i*1e3);a.unref&&a.unref()}this.lookup=this.lookup.bind(this),this.lookupAsync=this.lookupAsync.bind(this)}set servers(e){this.clear(),this._resolver.setServers(e)}get servers(){return this._resolver.getServers()}lookup(e,r,i){if(typeof r=="function"?(i=r,r={}):typeof r=="number"&&(r={family:r}),!i)throw new Error("Callback must be a function.");this.lookupAsync(e,r).then(n=>{r.all?i(null,n):i(null,n.address,n.family,n.expires,n.ttl)},i)}async lookupAsync(e,r={}){typeof r=="number"&&(r={family:r});let i=await this.query(e);if(r.family===6){let n=i.filter(s=>s.family===6);r.hints&Pfe&&(Ffe&&r.hints&DU||n.length===0)?Rfe(i):i=n}else r.family===4&&(i=i.filter(n=>n.family===4));if(r.hints&xfe){let{_iface:n}=this;i=i.filter(s=>s.family===6?n.has6:n.has4)}if(i.length===0){let n=new Error(`cacheableLookup ENOTFOUND ${e}`);throw n.code="ENOTFOUND",n.hostname=e,n}return r.all?i:i[0]}async query(e){let r=await this._cache.get(e);if(!r){let i=this._pending[e];if(i)r=await i;else{let n=this.queryAndCache(e);this._pending[e]=n,r=await n}}return r=r.map(i=>({...i})),r}async _resolve(e){let r=async c=>{try{return await c}catch(u){if(u.code==="ENODATA"||u.code==="ENOTFOUND")return[];throw u}},[i,n]=await Promise.all([this._resolve4(e,vU),this._resolve6(e,vU)].map(c=>r(c))),s=0,o=0,a=0,l=Date.now();for(let c of i)c.family=4,c.expires=l+c.ttl*1e3,s=Math.max(s,c.ttl);for(let c of n)c.family=6,c.expires=l+c.ttl*1e3,o=Math.max(o,c.ttl);return i.length>0?n.length>0?a=Math.min(s,o):a=s:a=o,{entries:[...i,...n],cacheTtl:a}}async _lookup(e){try{return{entries:await this._dnsLookup(e,{all:!0}),cacheTtl:0}}catch(r){return{entries:[],cacheTtl:0}}}async _set(e,r,i){if(this.maxTtl>0&&i>0){i=Math.min(i,this.maxTtl)*1e3,r[PU]=Date.now()+i;try{await this._cache.set(e,r,i)}catch(n){this.lookupAsync=async()=>{let s=new Error("Cache Error. Please recreate the CacheableLookup instance.");throw s.cause=n,s}}Lfe(this._cache)&&this._tick(i)}}async queryAndCache(e){if(this._hostnamesToFallback.has(e))return this._dnsLookup(e,Mfe);try{let r=await this._resolve(e);r.entries.length===0&&this._fallback&&(r=await this._lookup(e),r.entries.length!==0&&this._hostnamesToFallback.add(e));let i=r.entries.length===0?this.errorTtl:r.cacheTtl;return await this._set(e,r.entries,i),delete this._pending[e],r.entries}catch(r){throw delete this._pending[e],r}}_tick(e){let r=this._nextRemovalTime;(!r||e{this._nextRemovalTime=!1;let i=Infinity,n=Date.now();for(let[s,o]of this._cache){let a=o[PU];n>=a?this._cache.delete(s):a("lookup"in r||(r.lookup=this.lookup),e[Tl](r,i))}uninstall(e){if(xU(e),e[Tl]){if(e[I0]!==this)throw new Error("The agent is not owned by this CacheableLookup instance");e.createConnection=e[Tl],delete e[Tl],delete e[I0]}}updateInterfaceInfo(){let{_iface:e}=this;this._iface=kU(),(e.has4&&!this._iface.has4||e.has6&&!this._iface.has6)&&this._cache.clear()}clear(e){if(e){this._cache.delete(e);return}this._cache.clear()}};C0.exports=E0;C0.exports.default=E0});var MU=C((D5e,y0)=>{"use strict";var Nfe=typeof URL=="undefined"?require("url").URL:URL,Ofe="text/plain",Tfe="us-ascii",RU=(t,e)=>e.some(r=>r instanceof RegExp?r.test(t):r===t),Kfe=(t,{stripHash:e})=>{let r=t.match(/^data:(.*?),(.*?)(?:#(.*))?$/);if(!r)throw new Error(`Invalid URL: ${t}`);let i=r[1].split(";"),n=r[2],s=e?"":r[3],o=!1;i[i.length-1]==="base64"&&(i.pop(),o=!0);let a=(i.shift()||"").toLowerCase(),c=[...i.map(u=>{let[g,h=""]=u.split("=").map(f=>f.trim());return g==="charset"&&(h=h.toLowerCase(),h===Tfe)?"":`${g}${h?`=${h}`:""}`}).filter(Boolean)];return o&&c.push("base64"),(c.length!==0||a&&a!==Ofe)&&c.unshift(a),`data:${c.join(";")},${o?n.trim():n}${s?`#${s}`:""}`},LU=(t,e)=>{if(e={defaultProtocol:"http:",normalizeProtocol:!0,forceHttp:!1,forceHttps:!1,stripAuthentication:!0,stripHash:!1,stripWWW:!0,removeQueryParameters:[/^utm_\w+/i],removeTrailingSlash:!0,removeDirectoryIndex:!1,sortQueryParameters:!0,...e},Reflect.has(e,"normalizeHttps"))throw new Error("options.normalizeHttps is renamed to options.forceHttp");if(Reflect.has(e,"normalizeHttp"))throw new Error("options.normalizeHttp is renamed to options.forceHttps");if(Reflect.has(e,"stripFragment"))throw new Error("options.stripFragment is renamed to options.stripHash");if(t=t.trim(),/^data:/i.test(t))return Kfe(t,e);let r=t.startsWith("//");!r&&/^\.*\//.test(t)||(t=t.replace(/^(?!(?:\w+:)?\/\/)|^\/\//,e.defaultProtocol));let n=new Nfe(t);if(e.forceHttp&&e.forceHttps)throw new Error("The `forceHttp` and `forceHttps` options cannot be used together");if(e.forceHttp&&n.protocol==="https:"&&(n.protocol="http:"),e.forceHttps&&n.protocol==="http:"&&(n.protocol="https:"),e.stripAuthentication&&(n.username="",n.password=""),e.stripHash&&(n.hash=""),n.pathname&&(n.pathname=n.pathname.replace(/((?!:).|^)\/{2,}/g,(s,o)=>/^(?!\/)/g.test(o)?`${o}/`:"/")),n.pathname&&(n.pathname=decodeURI(n.pathname)),e.removeDirectoryIndex===!0&&(e.removeDirectoryIndex=[/^index\.[a-z]+$/]),Array.isArray(e.removeDirectoryIndex)&&e.removeDirectoryIndex.length>0){let s=n.pathname.split("/"),o=s[s.length-1];RU(o,e.removeDirectoryIndex)&&(s=s.slice(0,s.length-1),n.pathname=s.slice(1).join("/")+"/")}if(n.hostname&&(n.hostname=n.hostname.replace(/\.$/,""),e.stripWWW&&/^www\.([a-z\-\d]{2,63})\.([a-z.]{2,5})$/.test(n.hostname)&&(n.hostname=n.hostname.replace(/^www\./,""))),Array.isArray(e.removeQueryParameters))for(let s of[...n.searchParams.keys()])RU(s,e.removeQueryParameters)&&n.searchParams.delete(s);return e.sortQueryParameters&&n.searchParams.sort(),e.removeTrailingSlash&&(n.pathname=n.pathname.replace(/\/$/,"")),t=n.toString(),(e.removeTrailingSlash||n.pathname==="/")&&n.hash===""&&(t=t.replace(/\/$/,"")),r&&!e.normalizeProtocol&&(t=t.replace(/^http:\/\//,"//")),e.stripProtocol&&(t=t.replace(/^(?:https?:)?\/\//,"")),t};y0.exports=LU;y0.exports.default=LU});var TU=C((S5e,NU)=>{NU.exports=OU;function OU(t,e){if(t&&e)return OU(t)(e);if(typeof t!="function")throw new TypeError("need wrapper function");return Object.keys(t).forEach(function(i){r[i]=t[i]}),r;function r(){for(var i=new Array(arguments.length),n=0;n{var KU=TU();B0.exports=KU(tm);B0.exports.strict=KU(UU);tm.proto=tm(function(){Object.defineProperty(Function.prototype,"once",{value:function(){return tm(this)},configurable:!0}),Object.defineProperty(Function.prototype,"onceStrict",{value:function(){return UU(this)},configurable:!0})});function tm(t){var e=function(){return e.called?e.value:(e.called=!0,e.value=t.apply(this,arguments))};return e.called=!1,e}function UU(t){var e=function(){if(e.called)throw new Error(e.onceError);return e.called=!0,e.value=t.apply(this,arguments)},r=t.name||"Function wrapped with `once`";return e.onceError=r+" shouldn't be called more than once",e.called=!1,e}});var Q0=C((x5e,HU)=>{var Ufe=w0(),Hfe=function(){},Yfe=function(t){return t.setHeader&&typeof t.abort=="function"},jfe=function(t){return t.stdio&&Array.isArray(t.stdio)&&t.stdio.length===3},YU=function(t,e,r){if(typeof e=="function")return YU(t,null,e);e||(e={}),r=Ufe(r||Hfe);var i=t._writableState,n=t._readableState,s=e.readable||e.readable!==!1&&t.readable,o=e.writable||e.writable!==!1&&t.writable,a=function(){t.writable||l()},l=function(){o=!1,s||r.call(t)},c=function(){s=!1,o||r.call(t)},u=function(p){r.call(t,p?new Error("exited with error code: "+p):null)},g=function(p){r.call(t,p)},h=function(){if(s&&!(n&&n.ended))return r.call(t,new Error("premature close"));if(o&&!(i&&i.ended))return r.call(t,new Error("premature close"))},f=function(){t.req.on("finish",l)};return Yfe(t)?(t.on("complete",l),t.on("abort",h),t.req?f():t.on("request",f)):o&&!i&&(t.on("end",a),t.on("close",a)),jfe(t)&&t.on("exit",u),t.on("end",c),t.on("finish",l),e.error!==!1&&t.on("error",g),t.on("close",h),function(){t.removeListener("complete",l),t.removeListener("abort",h),t.removeListener("request",f),t.req&&t.req.removeListener("finish",l),t.removeListener("end",a),t.removeListener("close",a),t.removeListener("finish",l),t.removeListener("exit",u),t.removeListener("end",c),t.removeListener("error",g),t.removeListener("close",h)}};HU.exports=YU});var qU=C((k5e,jU)=>{var Gfe=w0(),qfe=Q0(),b0=require("fs"),Jg=function(){},Jfe=/^v?\.0/.test(process.version),rm=function(t){return typeof t=="function"},Wfe=function(t){return!Jfe||!b0?!1:(t instanceof(b0.ReadStream||Jg)||t instanceof(b0.WriteStream||Jg))&&rm(t.close)},zfe=function(t){return t.setHeader&&rm(t.abort)},Xfe=function(t,e,r,i){i=Gfe(i);var n=!1;t.on("close",function(){n=!0}),qfe(t,{readable:e,writable:r},function(o){if(o)return i(o);n=!0,i()});var s=!1;return function(o){if(!n&&!s){if(s=!0,Wfe(t))return t.close(Jg);if(zfe(t))return t.abort();if(rm(t.destroy))return t.destroy();i(o||new Error("stream was destroyed"))}}},GU=function(t){t()},Vfe=function(t,e){return t.pipe(e)},Zfe=function(){var t=Array.prototype.slice.call(arguments),e=rm(t[t.length-1]||Jg)&&t.pop()||Jg;if(Array.isArray(t[0])&&(t=t[0]),t.length<2)throw new Error("pump requires two streams per minimum");var r,i=t.map(function(n,s){var o=s0;return Xfe(n,o,a,function(l){r||(r=l),l&&i.forEach(GU),!o&&(i.forEach(GU),e(r))})});return t.reduce(Vfe)};jU.exports=Zfe});var WU=C((v5e,JU)=>{"use strict";var{PassThrough:_fe}=require("stream");JU.exports=t=>{t={...t};let{array:e}=t,{encoding:r}=t,i=r==="buffer",n=!1;e?n=!(r||i):r=r||"utf8",i&&(r=null);let s=new _fe({objectMode:n});r&&s.setEncoding(r);let o=0,a=[];return s.on("data",l=>{a.push(l),n?o=a.length:o+=l.length}),s.getBufferedValue=()=>e?a:i?Buffer.concat(a,o):a.join(""),s.getBufferedLength=()=>o,s}});var zU=C((F5e,Kl)=>{"use strict";var $fe=qU(),epe=WU(),D0=class extends Error{constructor(){super("maxBuffer exceeded");this.name="MaxBufferError"}};async function im(t,e){if(!t)return Promise.reject(new Error("Expected a stream"));e={maxBuffer:Infinity,...e};let{maxBuffer:r}=e,i;return await new Promise((n,s)=>{let o=a=>{a&&(a.bufferedData=i.getBufferedValue()),s(a)};i=$fe(t,epe(e),a=>{if(a){o(a);return}n()}),i.on("data",()=>{i.getBufferedLength()>r&&o(new D0)})}),i.getBufferedValue()}Kl.exports=im;Kl.exports.default=im;Kl.exports.buffer=(t,e)=>im(t,{...e,encoding:"buffer"});Kl.exports.array=(t,e)=>im(t,{...e,array:!0});Kl.exports.MaxBufferError=D0});var VU=C((L5e,XU)=>{"use strict";var tpe=[200,203,204,206,300,301,404,405,410,414,501],rpe=[200,203,204,300,301,302,303,307,308,404,405,410,414,501],ipe={date:!0,connection:!0,"keep-alive":!0,"proxy-authenticate":!0,"proxy-authorization":!0,te:!0,trailer:!0,"transfer-encoding":!0,upgrade:!0},npe={"content-length":!0,"content-encoding":!0,"transfer-encoding":!0,"content-range":!0};function S0(t){let e={};if(!t)return e;let r=t.trim().split(/\s*,\s*/);for(let i of r){let[n,s]=i.split(/\s*=\s*/,2);e[n]=s===void 0?!0:s.replace(/^"|"$/g,"")}return e}function spe(t){let e=[];for(let r in t){let i=t[r];e.push(i===!0?r:r+"="+i)}if(!!e.length)return e.join(", ")}XU.exports=class{constructor(e,r,{shared:i,cacheHeuristic:n,immutableMinTimeToLive:s,ignoreCargoCult:o,trustServerDate:a,_fromObject:l}={}){if(l){this._fromObject(l);return}if(!r||!r.headers)throw Error("Response headers missing");this._assertRequestHasHeaders(e),this._responseTime=this.now(),this._isShared=i!==!1,this._trustServerDate=a!==void 0?a:!0,this._cacheHeuristic=n!==void 0?n:.1,this._immutableMinTtl=s!==void 0?s:24*3600*1e3,this._status="status"in r?r.status:200,this._resHeaders=r.headers,this._rescc=S0(r.headers["cache-control"]),this._method="method"in e?e.method:"GET",this._url=e.url,this._host=e.headers.host,this._noAuthorization=!e.headers.authorization,this._reqHeaders=r.headers.vary?e.headers:null,this._reqcc=S0(e.headers["cache-control"]),o&&"pre-check"in this._rescc&&"post-check"in this._rescc&&(delete this._rescc["pre-check"],delete this._rescc["post-check"],delete this._rescc["no-cache"],delete this._rescc["no-store"],delete this._rescc["must-revalidate"],this._resHeaders=Object.assign({},this._resHeaders,{"cache-control":spe(this._rescc)}),delete this._resHeaders.expires,delete this._resHeaders.pragma),!r.headers["cache-control"]&&/no-cache/.test(r.headers.pragma)&&(this._rescc["no-cache"]=!0)}now(){return Date.now()}storable(){return!!(!this._reqcc["no-store"]&&(this._method==="GET"||this._method==="HEAD"||this._method==="POST"&&this._hasExplicitExpiration())&&rpe.indexOf(this._status)!==-1&&!this._rescc["no-store"]&&(!this._isShared||!this._rescc.private)&&(!this._isShared||this._noAuthorization||this._allowsStoringAuthenticated())&&(this._resHeaders.expires||this._rescc.public||this._rescc["max-age"]||this._rescc["s-maxage"]||tpe.indexOf(this._status)!==-1))}_hasExplicitExpiration(){return this._isShared&&this._rescc["s-maxage"]||this._rescc["max-age"]||this._resHeaders.expires}_assertRequestHasHeaders(e){if(!e||!e.headers)throw Error("Request headers missing")}satisfiesWithoutRevalidation(e){this._assertRequestHasHeaders(e);let r=S0(e.headers["cache-control"]);return r["no-cache"]||/no-cache/.test(e.headers.pragma)||r["max-age"]&&this.age()>r["max-age"]||r["min-fresh"]&&this.timeToLive()<1e3*r["min-fresh"]||this.stale()&&!(r["max-stale"]&&!this._rescc["must-revalidate"]&&(r["max-stale"]===!0||r["max-stale"]>this.age()-this.maxAge()))?!1:this._requestMatches(e,!1)}_requestMatches(e,r){return(!this._url||this._url===e.url)&&this._host===e.headers.host&&(!e.method||this._method===e.method||r&&e.method==="HEAD")&&this._varyMatches(e)}_allowsStoringAuthenticated(){return this._rescc["must-revalidate"]||this._rescc.public||this._rescc["s-maxage"]}_varyMatches(e){if(!this._resHeaders.vary)return!0;if(this._resHeaders.vary==="*")return!1;let r=this._resHeaders.vary.trim().toLowerCase().split(/\s*,\s*/);for(let i of r)if(e.headers[i]!==this._reqHeaders[i])return!1;return!0}_copyWithoutHopByHopHeaders(e){let r={};for(let i in e)ipe[i]||(r[i]=e[i]);if(e.connection){let i=e.connection.trim().split(/\s*,\s*/);for(let n of i)delete r[n]}if(r.warning){let i=r.warning.split(/,/).filter(n=>!/^\s*1[0-9][0-9]/.test(n));i.length?r.warning=i.join(",").trim():delete r.warning}return r}responseHeaders(){let e=this._copyWithoutHopByHopHeaders(this._resHeaders),r=this.age();return r>3600*24&&!this._hasExplicitExpiration()&&this.maxAge()>3600*24&&(e.warning=(e.warning?`${e.warning}, `:"")+'113 - "rfc7234 5.5.4"'),e.age=`${Math.round(r)}`,e.date=new Date(this.now()).toUTCString(),e}date(){return this._trustServerDate?this._serverDate():this._responseTime}_serverDate(){let e=Date.parse(this._resHeaders.date);if(isFinite(e)){let r=8*3600*1e3;if(Math.abs(this._responseTime-e)e&&(e=i)}let r=(this.now()-this._responseTime)/1e3;return e+r}_ageValue(){let e=parseInt(this._resHeaders.age);return isFinite(e)?e:0}maxAge(){if(!this.storable()||this._rescc["no-cache"]||this._isShared&&this._resHeaders["set-cookie"]&&!this._rescc.public&&!this._rescc.immutable||this._resHeaders.vary==="*")return 0;if(this._isShared){if(this._rescc["proxy-revalidate"])return 0;if(this._rescc["s-maxage"])return parseInt(this._rescc["s-maxage"],10)}if(this._rescc["max-age"])return parseInt(this._rescc["max-age"],10);let e=this._rescc.immutable?this._immutableMinTtl:0,r=this._serverDate();if(this._resHeaders.expires){let i=Date.parse(this._resHeaders.expires);return Number.isNaN(i)||ii)return Math.max(e,(r-i)/1e3*this._cacheHeuristic)}return e}timeToLive(){return Math.max(0,this.maxAge()-this.age())*1e3}stale(){return this.maxAge()<=this.age()}static fromObject(e){return new this(void 0,void 0,{_fromObject:e})}_fromObject(e){if(this._responseTime)throw Error("Reinitialized");if(!e||e.v!==1)throw Error("Invalid serialization");this._responseTime=e.t,this._isShared=e.sh,this._cacheHeuristic=e.ch,this._immutableMinTtl=e.imm!==void 0?e.imm:24*3600*1e3,this._status=e.st,this._resHeaders=e.resh,this._rescc=e.rescc,this._method=e.m,this._url=e.u,this._host=e.h,this._noAuthorization=e.a,this._reqHeaders=e.reqh,this._reqcc=e.reqcc}toObject(){return{v:1,t:this._responseTime,sh:this._isShared,ch:this._cacheHeuristic,imm:this._immutableMinTtl,st:this._status,resh:this._resHeaders,rescc:this._rescc,m:this._method,u:this._url,h:this._host,a:this._noAuthorization,reqh:this._reqHeaders,reqcc:this._reqcc}}revalidationHeaders(e){this._assertRequestHasHeaders(e);let r=this._copyWithoutHopByHopHeaders(e.headers);if(delete r["if-range"],!this._requestMatches(e,!0)||!this.storable())return delete r["if-none-match"],delete r["if-modified-since"],r;if(this._resHeaders.etag&&(r["if-none-match"]=r["if-none-match"]?`${r["if-none-match"]}, ${this._resHeaders.etag}`:this._resHeaders.etag),r["accept-ranges"]||r["if-match"]||r["if-unmodified-since"]||this._method&&this._method!="GET"){if(delete r["if-modified-since"],r["if-none-match"]){let n=r["if-none-match"].split(/,/).filter(s=>!/^\s*W\//.test(s));n.length?r["if-none-match"]=n.join(",").trim():delete r["if-none-match"]}}else this._resHeaders["last-modified"]&&!r["if-modified-since"]&&(r["if-modified-since"]=this._resHeaders["last-modified"]);return r}revalidatedPolicy(e,r){if(this._assertRequestHasHeaders(e),!r||!r.headers)throw Error("Response headers missing");let i=!1;if(r.status!==void 0&&r.status!=304?i=!1:r.headers.etag&&!/^\s*W\//.test(r.headers.etag)?i=this._resHeaders.etag&&this._resHeaders.etag.replace(/^\s*W\//,"")===r.headers.etag:this._resHeaders.etag&&r.headers.etag?i=this._resHeaders.etag.replace(/^\s*W\//,"")===r.headers.etag.replace(/^\s*W\//,""):this._resHeaders["last-modified"]?i=this._resHeaders["last-modified"]===r.headers["last-modified"]:!this._resHeaders.etag&&!this._resHeaders["last-modified"]&&!r.headers.etag&&!r.headers["last-modified"]&&(i=!0),!i)return{policy:new this.constructor(e,r),modified:r.status!=304,matches:!1};let n={};for(let o in this._resHeaders)n[o]=o in r.headers&&!npe[o]?r.headers[o]:this._resHeaders[o];let s=Object.assign({},r,{status:this._status,method:this._method,headers:n});return{policy:new this.constructor(e,s,{shared:this._isShared,cacheHeuristic:this._cacheHeuristic,immutableMinTimeToLive:this._immutableMinTtl,trustServerDate:this._trustServerDate}),modified:!1,matches:!0}}}});var nm=C((M5e,ZU)=>{"use strict";ZU.exports=t=>{let e={};for(let[r,i]of Object.entries(t))e[r.toLowerCase()]=i;return e}});var e2=C((N5e,_U)=>{"use strict";var ope=require("stream").Readable,ape=nm(),$U=class extends ope{constructor(e,r,i,n){if(typeof e!="number")throw new TypeError("Argument `statusCode` should be a number");if(typeof r!="object")throw new TypeError("Argument `headers` should be an object");if(!(i instanceof Buffer))throw new TypeError("Argument `body` should be a buffer");if(typeof n!="string")throw new TypeError("Argument `url` should be a string");super();this.statusCode=e,this.headers=ape(r),this.body=i,this.url=n}_read(){this.push(this.body),this.push(null)}};_U.exports=$U});var r2=C((O5e,t2)=>{"use strict";var Ape=["destroy","setTimeout","socket","headers","trailers","rawHeaders","statusCode","httpVersion","httpVersionMinor","httpVersionMajor","rawTrailers","statusMessage"];t2.exports=(t,e)=>{let r=new Set(Object.keys(t).concat(Ape));for(let i of r)i in e||(e[i]=typeof t[i]=="function"?t[i].bind(t):t[i])}});var n2=C((T5e,i2)=>{"use strict";var lpe=require("stream").PassThrough,cpe=r2(),upe=t=>{if(!(t&&t.pipe))throw new TypeError("Parameter `response` must be a response stream.");let e=new lpe;return cpe(t,e),t.pipe(e)};i2.exports=upe});var s2=C(P0=>{P0.stringify=function t(e){if(typeof e=="undefined")return e;if(e&&Buffer.isBuffer(e))return JSON.stringify(":base64:"+e.toString("base64"));if(e&&e.toJSON&&(e=e.toJSON()),e&&typeof e=="object"){var r="",i=Array.isArray(e);r=i?"[":"{";var n=!0;for(var s in e){var o=typeof e[s]=="function"||!i&&typeof e[s]=="undefined";Object.hasOwnProperty.call(e,s)&&!o&&(n||(r+=","),n=!1,i?e[s]==null?r+="null":r+=t(e[s]):e[s]!==void 0&&(r+=t(s)+":"+t(e[s])))}return r+=i?"]":"}",r}else return typeof e=="string"?JSON.stringify(/^:/.test(e)?":"+e:e):typeof e=="undefined"?"null":JSON.stringify(e)};P0.parse=function(t){return JSON.parse(t,function(e,r){return typeof r=="string"?/^:base64:/.test(r)?Buffer.from(r.substring(8),"base64"):/^:/.test(r)?r.substring(1):r:r})}});var l2=C((U5e,o2)=>{"use strict";var gpe=require("events"),a2=s2(),hpe=t=>{let e={redis:"@keyv/redis",mongodb:"@keyv/mongo",mongo:"@keyv/mongo",sqlite:"@keyv/sqlite",postgresql:"@keyv/postgres",postgres:"@keyv/postgres",mysql:"@keyv/mysql"};if(t.adapter||t.uri){let r=t.adapter||/^[^:]*/.exec(t.uri)[0];return new(require(e[r]))(t)}return new Map},A2=class extends gpe{constructor(e,r){super();if(this.opts=Object.assign({namespace:"keyv",serialize:a2.stringify,deserialize:a2.parse},typeof e=="string"?{uri:e}:e,r),!this.opts.store){let i=Object.assign({},this.opts);this.opts.store=hpe(i)}typeof this.opts.store.on=="function"&&this.opts.store.on("error",i=>this.emit("error",i)),this.opts.store.namespace=this.opts.namespace}_getKeyPrefix(e){return`${this.opts.namespace}:${e}`}get(e,r){e=this._getKeyPrefix(e);let{store:i}=this.opts;return Promise.resolve().then(()=>i.get(e)).then(n=>typeof n=="string"?this.opts.deserialize(n):n).then(n=>{if(n!==void 0){if(typeof n.expires=="number"&&Date.now()>n.expires){this.delete(e);return}return r&&r.raw?n:n.value}})}set(e,r,i){e=this._getKeyPrefix(e),typeof i=="undefined"&&(i=this.opts.ttl),i===0&&(i=void 0);let{store:n}=this.opts;return Promise.resolve().then(()=>{let s=typeof i=="number"?Date.now()+i:null;return r={value:r,expires:s},this.opts.serialize(r)}).then(s=>n.set(e,s,i)).then(()=>!0)}delete(e){e=this._getKeyPrefix(e);let{store:r}=this.opts;return Promise.resolve().then(()=>r.delete(e))}clear(){let{store:e}=this.opts;return Promise.resolve().then(()=>e.clear())}};o2.exports=A2});var g2=C((H5e,c2)=>{"use strict";var fpe=require("events"),sm=require("url"),ppe=MU(),dpe=zU(),x0=VU(),u2=e2(),Cpe=nm(),mpe=n2(),Ipe=l2(),zn=class{constructor(e,r){if(typeof e!="function")throw new TypeError("Parameter `request` must be a function");return this.cache=new Ipe({uri:typeof r=="string"&&r,store:typeof r!="string"&&r,namespace:"cacheable-request"}),this.createCacheableRequest(e)}createCacheableRequest(e){return(r,i)=>{let n;if(typeof r=="string")n=k0(sm.parse(r)),r={};else if(r instanceof sm.URL)n=k0(sm.parse(r.toString())),r={};else{let[g,...h]=(r.path||"").split("?"),f=h.length>0?`?${h.join("?")}`:"";n=k0({...r,pathname:g,search:f})}r={headers:{},method:"GET",cache:!0,strictTtl:!1,automaticFailover:!1,...r,...Epe(n)},r.headers=Cpe(r.headers);let s=new fpe,o=ppe(sm.format(n),{stripWWW:!1,removeTrailingSlash:!1,stripAuthentication:!1}),a=`${r.method}:${o}`,l=!1,c=!1,u=g=>{c=!0;let h=!1,f,p=new Promise(I=>{f=()=>{h||(h=!0,I())}}),m=I=>{if(l&&!g.forceRefresh){I.status=I.statusCode;let B=x0.fromObject(l.cachePolicy).revalidatedPolicy(g,I);if(!B.modified){let P=B.policy.responseHeaders();I=new u2(l.statusCode,P,l.body,l.url),I.cachePolicy=B.policy,I.fromCache=!0}}I.fromCache||(I.cachePolicy=new x0(g,I,g),I.fromCache=!1);let y;g.cache&&I.cachePolicy.storable()?(y=mpe(I),(async()=>{try{let B=dpe.buffer(I);if(await Promise.race([p,new Promise(O=>I.once("end",O))]),h)return;let P=await B,k={cachePolicy:I.cachePolicy.toObject(),url:I.url,statusCode:I.fromCache?l.statusCode:I.statusCode,body:P},N=g.strictTtl?I.cachePolicy.timeToLive():void 0;g.maxTtl&&(N=N?Math.min(N,g.maxTtl):g.maxTtl),await this.cache.set(a,k,N)}catch(B){s.emit("error",new zn.CacheError(B))}})()):g.cache&&l&&(async()=>{try{await this.cache.delete(a)}catch(B){s.emit("error",new zn.CacheError(B))}})(),s.emit("response",y||I),typeof i=="function"&&i(y||I)};try{let I=e(g,m);I.once("error",f),I.once("abort",f),s.emit("request",I)}catch(I){s.emit("error",new zn.RequestError(I))}};return(async()=>{let g=async f=>{await Promise.resolve();let p=f.cache?await this.cache.get(a):void 0;if(typeof p=="undefined")return u(f);let m=x0.fromObject(p.cachePolicy);if(m.satisfiesWithoutRevalidation(f)&&!f.forceRefresh){let I=m.responseHeaders(),y=new u2(p.statusCode,I,p.body,p.url);y.cachePolicy=m,y.fromCache=!0,s.emit("response",y),typeof i=="function"&&i(y)}else l=p,f.headers=m.revalidationHeaders(f),u(f)},h=f=>s.emit("error",new zn.CacheError(f));this.cache.once("error",h),s.on("response",()=>this.cache.removeListener("error",h));try{await g(r)}catch(f){r.automaticFailover&&!c&&u(r),s.emit("error",new zn.CacheError(f))}})(),s}}};function Epe(t){let e={...t};return e.path=`${t.pathname||"/"}${t.search||""}`,delete e.pathname,delete e.search,e}function k0(t){return{protocol:t.protocol,auth:t.auth,hostname:t.hostname||t.host||"localhost",port:t.port,pathname:t.pathname,search:t.search}}zn.RequestError=class extends Error{constructor(t){super(t.message);this.name="RequestError",Object.assign(this,t)}};zn.CacheError=class extends Error{constructor(t){super(t.message);this.name="CacheError",Object.assign(this,t)}};c2.exports=zn});var f2=C((Y5e,h2)=>{"use strict";var ype=["aborted","complete","headers","httpVersion","httpVersionMinor","httpVersionMajor","method","rawHeaders","rawTrailers","setTimeout","socket","statusCode","statusMessage","trailers","url"];h2.exports=(t,e)=>{if(e._readableState.autoDestroy)throw new Error("The second stream must have the `autoDestroy` option set to `false`");let r=new Set(Object.keys(t).concat(ype)),i={};for(let n of r)n in e||(i[n]={get(){let s=t[n];return typeof s=="function"?s.bind(t):s},set(s){t[n]=s},enumerable:!0,configurable:!1});return Object.defineProperties(e,i),t.once("aborted",()=>{e.destroy(),e.emit("aborted")}),t.once("close",()=>{t.complete&&e.readable?e.once("end",()=>{e.emit("close")}):e.emit("close")}),e}});var d2=C((j5e,p2)=>{"use strict";var{Transform:Bpe,PassThrough:wpe}=require("stream"),v0=require("zlib"),Qpe=f2();p2.exports=t=>{let e=(t.headers["content-encoding"]||"").toLowerCase();if(!["gzip","deflate","br"].includes(e))return t;let r=e==="br";if(r&&typeof v0.createBrotliDecompress!="function")return t.destroy(new Error("Brotli is not supported on Node.js < 12")),t;let i=!0,n=new Bpe({transform(a,l,c){i=!1,c(null,a)},flush(a){a()}}),s=new wpe({autoDestroy:!1,destroy(a,l){t.destroy(),l(a)}}),o=r?v0.createBrotliDecompress():v0.createUnzip();return o.once("error",a=>{if(i&&!t.readable){s.end();return}s.destroy(a)}),Qpe(t,s),t.pipe(n).pipe(o).pipe(s),s}});var F0=C((G5e,C2)=>{"use strict";var m2=class{constructor(e={}){if(!(e.maxSize&&e.maxSize>0))throw new TypeError("`maxSize` must be a number greater than 0");this.maxSize=e.maxSize,this.onEviction=e.onEviction,this.cache=new Map,this.oldCache=new Map,this._size=0}_set(e,r){if(this.cache.set(e,r),this._size++,this._size>=this.maxSize){if(this._size=0,typeof this.onEviction=="function")for(let[i,n]of this.oldCache.entries())this.onEviction(i,n);this.oldCache=this.cache,this.cache=new Map}}get(e){if(this.cache.has(e))return this.cache.get(e);if(this.oldCache.has(e)){let r=this.oldCache.get(e);return this.oldCache.delete(e),this._set(e,r),r}}set(e,r){return this.cache.has(e)?this.cache.set(e,r):this._set(e,r),this}has(e){return this.cache.has(e)||this.oldCache.has(e)}peek(e){if(this.cache.has(e))return this.cache.get(e);if(this.oldCache.has(e))return this.oldCache.get(e)}delete(e){let r=this.cache.delete(e);return r&&this._size--,this.oldCache.delete(e)||r}clear(){this.cache.clear(),this.oldCache.clear(),this._size=0}*keys(){for(let[e]of this)yield e}*values(){for(let[,e]of this)yield e}*[Symbol.iterator](){for(let e of this.cache)yield e;for(let e of this.oldCache){let[r]=e;this.cache.has(r)||(yield e)}}get size(){let e=0;for(let r of this.oldCache.keys())this.cache.has(r)||e++;return Math.min(this._size+e,this.maxSize)}};C2.exports=m2});var L0=C((q5e,I2)=>{"use strict";var bpe=require("events"),Dpe=require("tls"),Spe=require("http2"),Ppe=F0(),ei=Symbol("currentStreamsCount"),E2=Symbol("request"),rn=Symbol("cachedOriginSet"),Ul=Symbol("gracefullyClosing"),xpe=["maxDeflateDynamicTableSize","maxSessionMemory","maxHeaderListPairs","maxOutstandingPings","maxReservedRemoteStreams","maxSendHeaderBlockLength","paddingStrategy","localAddress","path","rejectUnauthorized","minDHSize","ca","cert","clientCertEngine","ciphers","key","pfx","servername","minVersion","maxVersion","secureProtocol","crl","honorCipherOrder","ecdhCurve","dhparam","secureOptions","sessionIdContext"],kpe=(t,e,r)=>{let i=0,n=t.length;for(;i>>1;r(t[s],e)?i=s+1:n=s}return i},vpe=(t,e)=>t.remoteSettings.maxConcurrentStreams>e.remoteSettings.maxConcurrentStreams,R0=(t,e)=>{for(let r of t)r[rn].lengthe[rn].includes(i))&&r[ei]+e[ei]<=e.remoteSettings.maxConcurrentStreams&&y2(r)},Fpe=(t,e)=>{for(let r of t)e[rn].lengthr[rn].includes(i))&&e[ei]+r[ei]<=r.remoteSettings.maxConcurrentStreams&&y2(e)},B2=({agent:t,isFree:e})=>{let r={};for(let i in t.sessions){let s=t.sessions[i].filter(o=>{let a=o[Rs.kCurrentStreamsCount]{t[Ul]=!0,t[ei]===0&&t.close()},Rs=class extends bpe{constructor({timeout:e=6e4,maxSessions:r=Infinity,maxFreeSessions:i=10,maxCachedTlsSessions:n=100}={}){super();this.sessions={},this.queue={},this.timeout=e,this.maxSessions=r,this.maxFreeSessions=i,this._freeSessionsCount=0,this._sessionsCount=0,this.settings={enablePush:!1},this.tlsSessionCache=new Ppe({maxSize:n})}static normalizeOrigin(e,r){return typeof e=="string"&&(e=new URL(e)),r&&e.hostname!==r&&(e.hostname=r),e.origin}normalizeOptions(e){let r="";if(e)for(let i of xpe)e[i]&&(r+=`:${e[i]}`);return r}_tryToCreateNewSession(e,r){if(!(e in this.queue)||!(r in this.queue[e]))return;let i=this.queue[e][r];this._sessionsCount{Array.isArray(i)?(i=[...i],n()):i=[{resolve:n,reject:s}];let o=this.normalizeOptions(r),a=Rs.normalizeOrigin(e,r&&r.servername);if(a===void 0){for(let{reject:u}of i)u(new TypeError("The `origin` argument needs to be a string or an URL object"));return}if(o in this.sessions){let u=this.sessions[o],g=-1,h=-1,f;for(let p of u){let m=p.remoteSettings.maxConcurrentStreams;if(m=m||p[Ul]||p.destroyed)continue;f||(g=m),I>h&&(f=p,h=I)}}if(f){if(i.length!==1){for(let{reject:p}of i){let m=new Error(`Expected the length of listeners to be 1, got ${i.length}. -Please report this to https://github.com/szmarczak/http2-wrapper/`);p(m)}return}i[0].resolve(f);return}}if(o in this.queue){if(a in this.queue[o]){this.queue[o][a].listeners.push(...i),this._tryToCreateNewSession(o,a);return}}else this.queue[o]={};let l=()=>{o in this.queue&&this.queue[o][a]===c&&(delete this.queue[o][a],Object.keys(this.queue[o]).length===0&&delete this.queue[o])},c=()=>{let u=`${a}:${o}`,g=!1;try{let h=Spe.connect(e,{createConnection:this.createConnection,settings:this.settings,session:this.tlsSessionCache.get(u),...r});h[ei]=0,h[Ul]=!1;let f=()=>h[ei]{this.tlsSessionCache.set(u,I)}),h.once("error",I=>{for(let{reject:y}of i)y(I);this.tlsSessionCache.delete(u)}),h.setTimeout(this.timeout,()=>{h.destroy()}),h.once("close",()=>{if(g){p&&this._freeSessionsCount--,this._sessionsCount--;let I=this.sessions[o];I.splice(I.indexOf(h),1),I.length===0&&delete this.sessions[o]}else{let I=new Error("Session closed without receiving a SETTINGS frame");I.code="HTTP2WRAPPER_NOSETTINGS";for(let{reject:y}of i)y(I);l()}this._tryToCreateNewSession(o,a)});let m=()=>{if(!(!(o in this.queue)||!f())){for(let I of h[rn])if(I in this.queue[o]){let{listeners:y}=this.queue[o][I];for(;y.length!==0&&f();)y.shift().resolve(h);let B=this.queue[o];if(B[I].listeners.length===0&&(delete B[I],Object.keys(B).length===0)){delete this.queue[o];break}if(!f())break}}};h.on("origin",()=>{h[rn]=h.originSet,!!f()&&(m(),R0(this.sessions[o],h))}),h.once("remoteSettings",()=>{if(h.ref(),h.unref(),this._sessionsCount++,c.destroyed){let I=new Error("Agent has been destroyed");for(let y of i)y.reject(I);h.destroy();return}h[rn]=h.originSet;{let I=this.sessions;if(o in I){let y=I[o];y.splice(kpe(y,h,vpe),0,h)}else I[o]=[h]}this._freeSessionsCount+=1,g=!0,this.emit("session",h),m(),l(),h[ei]===0&&this._freeSessionsCount>this.maxFreeSessions&&h.close(),i.length!==0&&(this.getSession(a,r,i),i.length=0),h.on("remoteSettings",()=>{m(),R0(this.sessions[o],h)})}),h[E2]=h.request,h.request=(I,y)=>{if(h[Ul])throw new Error("The session is gracefully closing. No new streams are allowed.");let B=h[E2](I,y);return h.ref(),++h[ei],h[ei]===h.remoteSettings.maxConcurrentStreams&&this._freeSessionsCount--,B.once("close",()=>{if(p=f(),--h[ei],!h.destroyed&&!h.closed&&(Fpe(this.sessions[o],h),f()&&!h.closed)){p||(this._freeSessionsCount++,p=!0);let P=h[ei]===0;P&&h.unref(),P&&(this._freeSessionsCount>this.maxFreeSessions||h[Ul])?h.close():(R0(this.sessions[o],h),m())}}),B}}catch(h){for(let f of i)f.reject(h);l()}};c.listeners=i,c.completed=!1,c.destroyed=!1,this.queue[o][a]=c,this._tryToCreateNewSession(o,a)})}request(e,r,i,n){return new Promise((s,o)=>{this.getSession(e,r,[{reject:o,resolve:a=>{try{s(a.request(i,n))}catch(l){o(l)}}}])})}createConnection(e,r){return Rs.connect(e,r)}static connect(e,r){r.ALPNProtocols=["h2"];let i=e.port||443,n=e.hostname||e.host;return typeof r.servername=="undefined"&&(r.servername=n),Dpe.connect(i,n,r)}closeFreeSessions(){for(let e of Object.values(this.sessions))for(let r of e)r[ei]===0&&r.close()}destroy(e){for(let r of Object.values(this.sessions))for(let i of r)i.destroy(e);for(let r of Object.values(this.queue))for(let i of Object.values(r))i.destroyed=!0;this.queue={}}get freeSessions(){return B2({agent:this,isFree:!0})}get busySessions(){return B2({agent:this,isFree:!1})}};Rs.kCurrentStreamsCount=ei;Rs.kGracefullyClosing=Ul;I2.exports={Agent:Rs,globalAgent:new Rs}});var M0=C((J5e,w2)=>{"use strict";var{Readable:Rpe}=require("stream"),Q2=class extends Rpe{constructor(e,r){super({highWaterMark:r,autoDestroy:!1});this.statusCode=null,this.statusMessage="",this.httpVersion="2.0",this.httpVersionMajor=2,this.httpVersionMinor=0,this.headers={},this.trailers={},this.req=null,this.aborted=!1,this.complete=!1,this.upgrade=null,this.rawHeaders=[],this.rawTrailers=[],this.socket=e,this.connection=e,this._dumped=!1}_destroy(e){this.req._request.destroy(e)}setTimeout(e,r){return this.req.setTimeout(e,r),this}_dump(){this._dumped||(this._dumped=!0,this.removeAllListeners("data"),this.resume())}_read(){this.req&&this.req._request.resume()}};w2.exports=Q2});var N0=C((W5e,b2)=>{"use strict";b2.exports=t=>{let e={protocol:t.protocol,hostname:typeof t.hostname=="string"&&t.hostname.startsWith("[")?t.hostname.slice(1,-1):t.hostname,host:t.host,hash:t.hash,search:t.search,pathname:t.pathname,href:t.href,path:`${t.pathname||""}${t.search||""}`};return typeof t.port=="string"&&t.port.length!==0&&(e.port=Number(t.port)),(t.username||t.password)&&(e.auth=`${t.username||""}:${t.password||""}`),e}});var S2=C((z5e,D2)=>{"use strict";D2.exports=(t,e,r)=>{for(let i of r)t.on(i,(...n)=>e.emit(i,...n))}});var x2=C((X5e,P2)=>{"use strict";P2.exports=t=>{switch(t){case":method":case":scheme":case":authority":case":path":return!0;default:return!1}}});var v2=C((Z5e,k2)=>{"use strict";var Hl=(t,e,r)=>{k2.exports[e]=class extends t{constructor(...n){super(typeof r=="string"?r:r(n));this.name=`${super.name} [${e}]`,this.code=e}}};Hl(TypeError,"ERR_INVALID_ARG_TYPE",t=>{let e=t[0].includes(".")?"property":"argument",r=t[1],i=Array.isArray(r);return i&&(r=`${r.slice(0,-1).join(", ")} or ${r.slice(-1)}`),`The "${t[0]}" ${e} must be ${i?"one of":"of"} type ${r}. Received ${typeof t[2]}`});Hl(TypeError,"ERR_INVALID_PROTOCOL",t=>`Protocol "${t[0]}" not supported. Expected "${t[1]}"`);Hl(Error,"ERR_HTTP_HEADERS_SENT",t=>`Cannot ${t[0]} headers after they are sent to the client`);Hl(TypeError,"ERR_INVALID_HTTP_TOKEN",t=>`${t[0]} must be a valid HTTP token [${t[1]}]`);Hl(TypeError,"ERR_HTTP_INVALID_HEADER_VALUE",t=>`Invalid value "${t[0]} for header "${t[1]}"`);Hl(TypeError,"ERR_INVALID_CHAR",t=>`Invalid character in ${t[0]} [${t[1]}]`)});var U0=C((_5e,F2)=>{"use strict";var Lpe=require("http2"),{Writable:Mpe}=require("stream"),{Agent:R2,globalAgent:Npe}=L0(),Ope=M0(),Tpe=N0(),Kpe=S2(),Upe=x2(),{ERR_INVALID_ARG_TYPE:O0,ERR_INVALID_PROTOCOL:Hpe,ERR_HTTP_HEADERS_SENT:L2,ERR_INVALID_HTTP_TOKEN:Ype,ERR_HTTP_INVALID_HEADER_VALUE:jpe,ERR_INVALID_CHAR:Gpe}=v2(),{HTTP2_HEADER_STATUS:M2,HTTP2_HEADER_METHOD:N2,HTTP2_HEADER_PATH:O2,HTTP2_METHOD_CONNECT:qpe}=Lpe.constants,Tr=Symbol("headers"),T0=Symbol("origin"),K0=Symbol("session"),T2=Symbol("options"),om=Symbol("flushedHeaders"),Wg=Symbol("jobs"),Jpe=/^[\^`\-\w!#$%&*+.|~]+$/,Wpe=/[^\t\u0020-\u007E\u0080-\u00FF]/,K2=class extends Mpe{constructor(e,r,i){super({autoDestroy:!1});let n=typeof e=="string"||e instanceof URL;if(n&&(e=Tpe(e instanceof URL?e:new URL(e))),typeof r=="function"||r===void 0?(i=r,r=n?e:{...e}):r={...e,...r},r.h2session)this[K0]=r.h2session;else if(r.agent===!1)this.agent=new R2({maxFreeSessions:0});else if(typeof r.agent=="undefined"||r.agent===null)typeof r.createConnection=="function"?(this.agent=new R2({maxFreeSessions:0}),this.agent.createConnection=r.createConnection):this.agent=Npe;else if(typeof r.agent.request=="function")this.agent=r.agent;else throw new O0("options.agent",["Agent-like Object","undefined","false"],r.agent);if(r.protocol&&r.protocol!=="https:")throw new Hpe(r.protocol,"https:");let s=r.port||r.defaultPort||this.agent&&this.agent.defaultPort||443,o=r.hostname||r.host||"localhost";delete r.hostname,delete r.host,delete r.port;let{timeout:a}=r;if(r.timeout=void 0,this[Tr]=Object.create(null),this[Wg]=[],this.socket=null,this.connection=null,this.method=r.method||"GET",this.path=r.path,this.res=null,this.aborted=!1,this.reusedSocket=!1,r.headers)for(let[l,c]of Object.entries(r.headers))this.setHeader(l,c);r.auth&&!("authorization"in this[Tr])&&(this[Tr].authorization="Basic "+Buffer.from(r.auth).toString("base64")),r.session=r.tlsSession,r.path=r.socketPath,this[T2]=r,s===443?(this[T0]=`https://${o}`,":authority"in this[Tr]||(this[Tr][":authority"]=o)):(this[T0]=`https://${o}:${s}`,":authority"in this[Tr]||(this[Tr][":authority"]=`${o}:${s}`)),a&&this.setTimeout(a),i&&this.once("response",i),this[om]=!1}get method(){return this[Tr][N2]}set method(e){e&&(this[Tr][N2]=e.toUpperCase())}get path(){return this[Tr][O2]}set path(e){e&&(this[Tr][O2]=e)}get _mustNotHaveABody(){return this.method==="GET"||this.method==="HEAD"||this.method==="DELETE"}_write(e,r,i){if(this._mustNotHaveABody){i(new Error("The GET, HEAD and DELETE methods must NOT have a body"));return}this.flushHeaders();let n=()=>this._request.write(e,r,i);this._request?n():this[Wg].push(n)}_final(e){if(this.destroyed)return;this.flushHeaders();let r=()=>{if(this._mustNotHaveABody){e();return}this._request.end(e)};this._request?r():this[Wg].push(r)}abort(){this.res&&this.res.complete||(this.aborted||process.nextTick(()=>this.emit("abort")),this.aborted=!0,this.destroy())}_destroy(e,r){this.res&&this.res._dump(),this._request&&this._request.destroy(),r(e)}async flushHeaders(){if(this[om]||this.destroyed)return;this[om]=!0;let e=this.method===qpe,r=i=>{if(this._request=i,this.destroyed){i.destroy();return}e||Kpe(i,this,["timeout","continue","close","error"]);let n=o=>(...a)=>{!this.writable&&!this.destroyed?o(...a):this.once("finish",()=>{o(...a)})};i.once("response",n((o,a,l)=>{let c=new Ope(this.socket,i.readableHighWaterMark);this.res=c,c.req=this,c.statusCode=o[M2],c.headers=o,c.rawHeaders=l,c.once("end",()=>{this.aborted?(c.aborted=!0,c.emit("aborted")):(c.complete=!0,c.socket=null,c.connection=null)}),e?(c.upgrade=!0,this.emit("connect",c,i,Buffer.alloc(0))?this.emit("close"):i.destroy()):(i.on("data",u=>{!c._dumped&&!c.push(u)&&i.pause()}),i.once("end",()=>{c.push(null)}),this.emit("response",c)||c._dump())})),i.once("headers",n(o=>this.emit("information",{statusCode:o[M2]}))),i.once("trailers",n((o,a,l)=>{let{res:c}=this;c.trailers=o,c.rawTrailers=l}));let{socket:s}=i.session;this.socket=s,this.connection=s;for(let o of this[Wg])o();this.emit("socket",this.socket)};if(this[K0])try{r(this[K0].request(this[Tr]))}catch(i){this.emit("error",i)}else{this.reusedSocket=!0;try{r(await this.agent.request(this[T0],this[T2],this[Tr]))}catch(i){this.emit("error",i)}}}getHeader(e){if(typeof e!="string")throw new O0("name","string",e);return this[Tr][e.toLowerCase()]}get headersSent(){return this[om]}removeHeader(e){if(typeof e!="string")throw new O0("name","string",e);if(this.headersSent)throw new L2("remove");delete this[Tr][e.toLowerCase()]}setHeader(e,r){if(this.headersSent)throw new L2("set");if(typeof e!="string"||!Jpe.test(e)&&!Upe(e))throw new Ype("Header name",e);if(typeof r=="undefined")throw new jpe(r,e);if(Wpe.test(r))throw new Gpe("header content",e);this[Tr][e.toLowerCase()]=r}setNoDelay(){}setSocketKeepAlive(){}setTimeout(e,r){let i=()=>this._request.setTimeout(e,r);return this._request?i():this[Wg].push(i),this}get maxHeadersCount(){if(!this.destroyed&&this._request)return this._request.session.localSettings.maxHeaderListSize}set maxHeadersCount(e){}};F2.exports=K2});var H2=C(($5e,U2)=>{"use strict";var zpe=require("tls");U2.exports=(t={})=>new Promise((e,r)=>{let i=zpe.connect(t,()=>{t.resolveSocket?(i.off("error",r),e({alpnProtocol:i.alpnProtocol,socket:i})):(i.destroy(),e({alpnProtocol:i.alpnProtocol}))});i.on("error",r)})});var j2=C((e9e,Y2)=>{"use strict";var Xpe=require("net");Y2.exports=t=>{let e=t.host,r=t.headers&&t.headers.host;return r&&(r.startsWith("[")?r.indexOf("]")===-1?e=r:e=r.slice(1,-1):e=r.split(":",1)[0]),Xpe.isIP(e)?"":e}});var J2=C((t9e,H0)=>{"use strict";var G2=require("http"),Y0=require("https"),Vpe=H2(),Zpe=F0(),_pe=U0(),$pe=j2(),ede=N0(),am=new Zpe({maxSize:100}),zg=new Map,q2=(t,e,r)=>{e._httpMessage={shouldKeepAlive:!0};let i=()=>{t.emit("free",e,r)};e.on("free",i);let n=()=>{t.removeSocket(e,r)};e.on("close",n);let s=()=>{t.removeSocket(e,r),e.off("close",n),e.off("free",i),e.off("agentRemove",s)};e.on("agentRemove",s),t.emit("free",e,r)},tde=async t=>{let e=`${t.host}:${t.port}:${t.ALPNProtocols.sort()}`;if(!am.has(e)){if(zg.has(e))return(await zg.get(e)).alpnProtocol;let{path:r,agent:i}=t;t.path=t.socketPath;let n=Vpe(t);zg.set(e,n);try{let{socket:s,alpnProtocol:o}=await n;if(am.set(e,o),t.path=r,o==="h2")s.destroy();else{let{globalAgent:a}=Y0,l=Y0.Agent.prototype.createConnection;i?i.createConnection===l?q2(i,s,t):s.destroy():a.createConnection===l?q2(a,s,t):s.destroy()}return zg.delete(e),o}catch(s){throw zg.delete(e),s}}return am.get(e)};H0.exports=async(t,e,r)=>{if((typeof t=="string"||t instanceof URL)&&(t=ede(new URL(t))),typeof e=="function"&&(r=e,e=void 0),e={ALPNProtocols:["h2","http/1.1"],...t,...e,resolveSocket:!0},!Array.isArray(e.ALPNProtocols)||e.ALPNProtocols.length===0)throw new Error("The `ALPNProtocols` option must be an Array with at least one entry");e.protocol=e.protocol||"https:";let i=e.protocol==="https:";e.host=e.hostname||e.host||"localhost",e.session=e.tlsSession,e.servername=e.servername||$pe(e),e.port=e.port||(i?443:80),e._defaultAgent=i?Y0.globalAgent:G2.globalAgent;let n=e.agent;if(n){if(n.addRequest)throw new Error("The `options.agent` object can contain only `http`, `https` or `http2` properties");e.agent=n[i?"https":"http"]}return i&&await tde(e)==="h2"?(n&&(e.agent=n.http2),new _pe(e,r)):G2.request(e,r)};H0.exports.protocolCache=am});var z2=C((r9e,W2)=>{"use strict";var rde=require("http2"),ide=L0(),j0=U0(),nde=M0(),sde=J2(),ode=(t,e,r)=>new j0(t,e,r),ade=(t,e,r)=>{let i=new j0(t,e,r);return i.end(),i};W2.exports={...rde,ClientRequest:j0,IncomingMessage:nde,...ide,request:ode,get:ade,auto:sde}});var q0=C(G0=>{"use strict";Object.defineProperty(G0,"__esModule",{value:!0});var X2=Fs();G0.default=t=>X2.default.nodeStream(t)&&X2.default.function_(t.getBoundary)});var $2=C(J0=>{"use strict";Object.defineProperty(J0,"__esModule",{value:!0});var V2=require("fs"),Z2=require("util"),_2=Fs(),Ade=q0(),lde=Z2.promisify(V2.stat);J0.default=async(t,e)=>{if(e&&"content-length"in e)return Number(e["content-length"]);if(!t)return 0;if(_2.default.string(t))return Buffer.byteLength(t);if(_2.default.buffer(t))return t.length;if(Ade.default(t))return Z2.promisify(t.getLength.bind(t))();if(t instanceof V2.ReadStream){let{size:r}=await lde(t.path);return r}}});var z0=C(W0=>{"use strict";Object.defineProperty(W0,"__esModule",{value:!0});function cde(t,e,r){let i={};for(let n of r)i[n]=(...s)=>{e.emit(n,...s)},t.on(n,i[n]);return()=>{for(let n of r)t.off(n,i[n])}}W0.default=cde});var eH=C(X0=>{"use strict";Object.defineProperty(X0,"__esModule",{value:!0});X0.default=()=>{let t=[];return{once(e,r,i){e.once(r,i),t.push({origin:e,event:r,fn:i})},unhandleAll(){for(let e of t){let{origin:r,event:i,fn:n}=e;r.removeListener(i,n)}t.length=0}}}});var rH=C(Xg=>{"use strict";Object.defineProperty(Xg,"__esModule",{value:!0});Xg.TimeoutError=void 0;var ude=require("net"),gde=eH(),tH=Symbol("reentry"),hde=()=>{},V0=class extends Error{constructor(e,r){super(`Timeout awaiting '${r}' for ${e}ms`);this.event=r,this.name="TimeoutError",this.code="ETIMEDOUT"}};Xg.TimeoutError=V0;Xg.default=(t,e,r)=>{if(tH in t)return hde;t[tH]=!0;let i=[],{once:n,unhandleAll:s}=gde.default(),o=(g,h,f)=>{var p;let m=setTimeout(h,g,g,f);(p=m.unref)===null||p===void 0||p.call(m);let I=()=>{clearTimeout(m)};return i.push(I),I},{host:a,hostname:l}=r,c=(g,h)=>{t.destroy(new V0(g,h))},u=()=>{for(let g of i)g();s()};if(t.once("error",g=>{if(u(),t.listenerCount("error")===0)throw g}),t.once("close",u),n(t,"response",g=>{n(g,"end",u)}),typeof e.request!="undefined"&&o(e.request,c,"request"),typeof e.socket!="undefined"){let g=()=>{c(e.socket,"socket")};t.setTimeout(e.socket,g),i.push(()=>{t.removeListener("timeout",g)})}return n(t,"socket",g=>{var h;let{socketPath:f}=t;if(g.connecting){let p=Boolean(f!=null?f:ude.isIP((h=l!=null?l:a)!==null&&h!==void 0?h:"")!==0);if(typeof e.lookup!="undefined"&&!p&&typeof g.address().address=="undefined"){let m=o(e.lookup,c,"lookup");n(g,"lookup",m)}if(typeof e.connect!="undefined"){let m=()=>o(e.connect,c,"connect");p?n(g,"connect",m()):n(g,"lookup",I=>{I===null&&n(g,"connect",m())})}typeof e.secureConnect!="undefined"&&r.protocol==="https:"&&n(g,"connect",()=>{let m=o(e.secureConnect,c,"secureConnect");n(g,"secureConnect",m)})}if(typeof e.send!="undefined"){let p=()=>o(e.send,c,"send");g.connecting?n(g,"connect",()=>{n(t,"upload-complete",p())}):n(t,"upload-complete",p())}}),typeof e.response!="undefined"&&n(t,"upload-complete",()=>{let g=o(e.response,c,"response");n(t,"response",g)}),u}});var nH=C(Z0=>{"use strict";Object.defineProperty(Z0,"__esModule",{value:!0});var iH=Fs();Z0.default=t=>{t=t;let e={protocol:t.protocol,hostname:iH.default.string(t.hostname)&&t.hostname.startsWith("[")?t.hostname.slice(1,-1):t.hostname,host:t.host,hash:t.hash,search:t.search,pathname:t.pathname,href:t.href,path:`${t.pathname||""}${t.search||""}`};return iH.default.string(t.port)&&t.port.length!==0&&(e.port=Number(t.port)),(t.username||t.password)&&(e.auth=`${t.username||""}:${t.password||""}`),e}});var sH=C(_0=>{"use strict";Object.defineProperty(_0,"__esModule",{value:!0});var fde=require("url"),pde=["protocol","host","hostname","port","pathname","search"];_0.default=(t,e)=>{var r,i;if(e.path){if(e.pathname)throw new TypeError("Parameters `path` and `pathname` are mutually exclusive.");if(e.search)throw new TypeError("Parameters `path` and `search` are mutually exclusive.");if(e.searchParams)throw new TypeError("Parameters `path` and `searchParams` are mutually exclusive.")}if(e.search&&e.searchParams)throw new TypeError("Parameters `search` and `searchParams` are mutually exclusive.");if(!t){if(!e.protocol)throw new TypeError("No URL protocol specified");t=`${e.protocol}//${(i=(r=e.hostname)!==null&&r!==void 0?r:e.host)!==null&&i!==void 0?i:""}`}let n=new fde.URL(t);if(e.path){let s=e.path.indexOf("?");s===-1?e.pathname=e.path:(e.pathname=e.path.slice(0,s),e.search=e.path.slice(s+1)),delete e.path}for(let s of pde)e[s]&&(n[s]=e[s].toString());return n}});var aH=C($0=>{"use strict";Object.defineProperty($0,"__esModule",{value:!0});var oH=class{constructor(){this.weakMap=new WeakMap,this.map=new Map}set(e,r){typeof e=="object"?this.weakMap.set(e,r):this.map.set(e,r)}get(e){return typeof e=="object"?this.weakMap.get(e):this.map.get(e)}has(e){return typeof e=="object"?this.weakMap.has(e):this.map.has(e)}};$0.default=oH});var tb=C(eb=>{"use strict";Object.defineProperty(eb,"__esModule",{value:!0});var dde=async t=>{let e=[],r=0;for await(let i of t)e.push(i),r+=Buffer.byteLength(i);return Buffer.isBuffer(e[0])?Buffer.concat(e,r):Buffer.from(e.join(""))};eb.default=dde});var lH=C(za=>{"use strict";Object.defineProperty(za,"__esModule",{value:!0});za.dnsLookupIpVersionToFamily=za.isDnsLookupIpVersion=void 0;var AH={auto:0,ipv4:4,ipv6:6};za.isDnsLookupIpVersion=t=>t in AH;za.dnsLookupIpVersionToFamily=t=>{if(za.isDnsLookupIpVersion(t))return AH[t];throw new Error("Invalid DNS lookup IP version")}});var rb=C(Am=>{"use strict";Object.defineProperty(Am,"__esModule",{value:!0});Am.isResponseOk=void 0;Am.isResponseOk=t=>{let{statusCode:e}=t,r=t.request.options.followRedirect?299:399;return e>=200&&e<=r||e===304}});var uH=C(ib=>{"use strict";Object.defineProperty(ib,"__esModule",{value:!0});var cH=new Set;ib.default=t=>{cH.has(t)||(cH.add(t),process.emitWarning(`Got: ${t}`,{type:"DeprecationWarning"}))}});var gH=C(nb=>{"use strict";Object.defineProperty(nb,"__esModule",{value:!0});var Lt=Fs(),Cde=(t,e)=>{if(Lt.default.null_(t.encoding))throw new TypeError("To get a Buffer, set `options.responseType` to `buffer` instead");Lt.assert.any([Lt.default.string,Lt.default.undefined],t.encoding),Lt.assert.any([Lt.default.boolean,Lt.default.undefined],t.resolveBodyOnly),Lt.assert.any([Lt.default.boolean,Lt.default.undefined],t.methodRewriting),Lt.assert.any([Lt.default.boolean,Lt.default.undefined],t.isStream),Lt.assert.any([Lt.default.string,Lt.default.undefined],t.responseType),t.responseType===void 0&&(t.responseType="text");let{retry:r}=t;if(e?t.retry={...e.retry}:t.retry={calculateDelay:i=>i.computedValue,limit:0,methods:[],statusCodes:[],errorCodes:[],maxRetryAfter:void 0},Lt.default.object(r)?(t.retry={...t.retry,...r},t.retry.methods=[...new Set(t.retry.methods.map(i=>i.toUpperCase()))],t.retry.statusCodes=[...new Set(t.retry.statusCodes)],t.retry.errorCodes=[...new Set(t.retry.errorCodes)]):Lt.default.number(r)&&(t.retry.limit=r),Lt.default.undefined(t.retry.maxRetryAfter)&&(t.retry.maxRetryAfter=Math.min(...[t.timeout.request,t.timeout.connect].filter(Lt.default.number))),Lt.default.object(t.pagination)){e&&(t.pagination={...e.pagination,...t.pagination});let{pagination:i}=t;if(!Lt.default.function_(i.transform))throw new Error("`options.pagination.transform` must be implemented");if(!Lt.default.function_(i.shouldContinue))throw new Error("`options.pagination.shouldContinue` must be implemented");if(!Lt.default.function_(i.filter))throw new TypeError("`options.pagination.filter` must be implemented");if(!Lt.default.function_(i.paginate))throw new Error("`options.pagination.paginate` must be implemented")}return t.responseType==="json"&&t.headers.accept===void 0&&(t.headers.accept="application/json"),t};nb.default=Cde});var hH=C(Vg=>{"use strict";Object.defineProperty(Vg,"__esModule",{value:!0});Vg.retryAfterStatusCodes=void 0;Vg.retryAfterStatusCodes=new Set([413,429,503]);var mde=({attemptCount:t,retryOptions:e,error:r,retryAfter:i})=>{if(t>e.limit)return 0;let n=e.methods.includes(r.options.method),s=e.errorCodes.includes(r.code),o=r.response&&e.statusCodes.includes(r.response.statusCode);if(!n||!s&&!o)return 0;if(r.response){if(i)return e.maxRetryAfter===void 0||i>e.maxRetryAfter?0:i;if(r.response.statusCode===413)return 0}let a=Math.random()*100;return 2**(t-1)*1e3+a};Vg.default=mde});var _g=C(pt=>{"use strict";Object.defineProperty(pt,"__esModule",{value:!0});pt.UnsupportedProtocolError=pt.ReadError=pt.TimeoutError=pt.UploadError=pt.CacheError=pt.HTTPError=pt.MaxRedirectsError=pt.RequestError=pt.setNonEnumerableProperties=pt.knownHookEvents=pt.withoutBody=pt.kIsNormalizedAlready=void 0;var fH=require("util"),pH=require("stream"),Ide=require("fs"),xo=require("url"),dH=require("http"),sb=require("http"),Ede=require("https"),yde=bU(),Bde=FU(),CH=g2(),wde=d2(),Qde=z2(),bde=nm(),te=Fs(),Dde=$2(),mH=q0(),Sde=z0(),IH=rH(),Pde=nH(),EH=sH(),xde=aH(),kde=tb(),yH=lH(),vde=rb(),ko=uH(),Fde=gH(),Rde=hH(),Lde=new Bde.default,Br=Symbol("request"),lm=Symbol("response"),Yl=Symbol("responseSize"),jl=Symbol("downloadedSize"),Gl=Symbol("bodySize"),ql=Symbol("uploadedSize"),cm=Symbol("serverResponsesPiped"),BH=Symbol("unproxyEvents"),wH=Symbol("isFromCache"),ob=Symbol("cancelTimeouts"),QH=Symbol("startedReading"),Jl=Symbol("stopReading"),um=Symbol("triggerRead"),vo=Symbol("body"),Zg=Symbol("jobs"),bH=Symbol("originalResponse"),DH=Symbol("retryTimeout");pt.kIsNormalizedAlready=Symbol("isNormalizedAlready");var Mde=te.default.string(process.versions.brotli);pt.withoutBody=new Set(["GET","HEAD"]);pt.knownHookEvents=["init","beforeRequest","beforeRedirect","beforeError","beforeRetry","afterResponse"];function Nde(t){for(let e in t){let r=t[e];if(!te.default.string(r)&&!te.default.number(r)&&!te.default.boolean(r)&&!te.default.null_(r)&&!te.default.undefined(r))throw new TypeError(`The \`searchParams\` value '${String(r)}' must be a string, number, boolean or null`)}}function Ode(t){return te.default.object(t)&&!("statusCode"in t)}var ab=new xde.default,Tde=async t=>new Promise((e,r)=>{let i=n=>{r(n)};t.pending||e(),t.once("error",i),t.once("ready",()=>{t.off("error",i),e()})}),Kde=new Set([300,301,302,303,304,307,308]),Ude=["context","body","json","form"];pt.setNonEnumerableProperties=(t,e)=>{let r={};for(let i of t)if(!!i)for(let n of Ude)n in i&&(r[n]={writable:!0,configurable:!0,enumerable:!1,value:i[n]});Object.defineProperties(e,r)};var pr=class extends Error{constructor(e,r,i){var n;super(e);if(Error.captureStackTrace(this,this.constructor),this.name="RequestError",this.code=r.code,i instanceof Ab?(Object.defineProperty(this,"request",{enumerable:!1,value:i}),Object.defineProperty(this,"response",{enumerable:!1,value:i[lm]}),Object.defineProperty(this,"options",{enumerable:!1,value:i.options})):Object.defineProperty(this,"options",{enumerable:!1,value:i}),this.timings=(n=this.request)===null||n===void 0?void 0:n.timings,!te.default.undefined(r.stack)){let s=this.stack.indexOf(this.message)+this.message.length,o=this.stack.slice(s).split(` +`,n)}while(i!==-1);return s+=t.substr(n),s};oM.exports={stringReplaceAll:rAe,stringEncaseCRLFWithFirstIndex:iAe}});var gM=C((F4e,AM)=>{"use strict";var nAe=/(?:\\(u(?:[a-f\d]{4}|\{[a-f\d]{1,6}\})|x[a-f\d]{2}|.))|(?:\{(~)?(\w+(?:\([^)]*\))?(?:\.\w+(?:\([^)]*\))?)*)(?:[ \t]|(?=\r?\n)))|(\})|((?:.|[\r\n\f])+?)/gi,lM=/(?:^|\.)(\w+)(?:\(([^)]*)\))?/g,sAe=/^(['"])((?:\\.|(?!\1)[^\\])*)\1$/,oAe=/\\(u(?:[a-f\d]{4}|\{[a-f\d]{1,6}\})|x[a-f\d]{2}|.)|([^\\])/gi,aAe=new Map([["n",` +`],["r","\r"],["t"," "],["b","\b"],["f","\f"],["v","\v"],["0","\0"],["\\","\\"],["e",""],["a","\x07"]]);function cM(t){let e=t[0]==="u",r=t[1]==="{";return e&&!r&&t.length===5||t[0]==="x"&&t.length===3?String.fromCharCode(parseInt(t.slice(1),16)):e&&r?String.fromCodePoint(parseInt(t.slice(2,-1),16)):aAe.get(t)||t}function AAe(t,e){let r=[],i=e.trim().split(/\s*,\s*/g),n;for(let s of i){let o=Number(s);if(!Number.isNaN(o))r.push(o);else if(n=s.match(sAe))r.push(n[2].replace(oAe,(a,l,c)=>l?cM(l):c));else throw new Error(`Invalid Chalk template style argument: ${s} (in style '${t}')`)}return r}function lAe(t){lM.lastIndex=0;let e=[],r;for(;(r=lM.exec(t))!==null;){let i=r[1];if(r[2]){let n=AAe(i,r[2]);e.push([i].concat(n))}else e.push([i])}return e}function uM(t,e){let r={};for(let n of e)for(let s of n.styles)r[s[0]]=n.inverse?null:s.slice(1);let i=t;for(let[n,s]of Object.entries(r))if(!!Array.isArray(s)){if(!(n in i))throw new Error(`Unknown Chalk style: ${n}`);i=s.length>0?i[n](...s):i[n]}return i}AM.exports=(t,e)=>{let r=[],i=[],n=[];if(e.replace(nAe,(s,o,a,l,c,u)=>{if(o)n.push(cM(o));else if(l){let g=n.join("");n=[],i.push(r.length===0?g:uM(t,r)(g)),r.push({inverse:a,styles:lAe(l)})}else if(c){if(r.length===0)throw new Error("Found extraneous } in Chalk template literal");i.push(uM(t,r)(n.join(""))),n=[],r.pop()}else n.push(u)}),i.push(n.join("")),r.length>0){let s=`Chalk template literal is missing ${r.length} closing bracket${r.length===1?"":"s"} (\`}\`)`;throw new Error(s)}return i.join("")}});var rQ=C((R4e,hM)=>{"use strict";var Og=eM(),{stdout:_w,stderr:$w}=sM(),{stringReplaceAll:cAe,stringEncaseCRLFWithFirstIndex:uAe}=aM(),fM=["ansi","ansi","ansi256","ansi16m"],Ol=Object.create(null),gAe=(t,e={})=>{if(e.level>3||e.level<0)throw new Error("The `level` option should be an integer from 0 to 3");let r=_w?_w.level:0;t.level=e.level===void 0?r:e.level},pM=class{constructor(e){return dM(e)}},dM=t=>{let e={};return gAe(e,t),e.template=(...r)=>hAe(e.template,...r),Object.setPrototypeOf(e,vC.prototype),Object.setPrototypeOf(e.template,e),e.template.constructor=()=>{throw new Error("`chalk.constructor()` is deprecated. Use `new chalk.Instance()` instead.")},e.template.Instance=pM,e.template};function vC(t){return dM(t)}for(let[t,e]of Object.entries(Og))Ol[t]={get(){let r=FC(this,eQ(e.open,e.close,this._styler),this._isEmpty);return Object.defineProperty(this,t,{value:r}),r}};Ol.visible={get(){let t=FC(this,this._styler,!0);return Object.defineProperty(this,"visible",{value:t}),t}};var CM=["rgb","hex","keyword","hsl","hsv","hwb","ansi","ansi256"];for(let t of CM)Ol[t]={get(){let{level:e}=this;return function(...r){let i=eQ(Og.color[fM[e]][t](...r),Og.color.close,this._styler);return FC(this,i,this._isEmpty)}}};for(let t of CM){let e="bg"+t[0].toUpperCase()+t.slice(1);Ol[e]={get(){let{level:r}=this;return function(...i){let n=eQ(Og.bgColor[fM[r]][t](...i),Og.bgColor.close,this._styler);return FC(this,n,this._isEmpty)}}}}var fAe=Object.defineProperties(()=>{},V(k({},Ol),{level:{enumerable:!0,get(){return this._generator.level},set(t){this._generator.level=t}}})),eQ=(t,e,r)=>{let i,n;return r===void 0?(i=t,n=e):(i=r.openAll+t,n=e+r.closeAll),{open:t,close:e,openAll:i,closeAll:n,parent:r}},FC=(t,e,r)=>{let i=(...n)=>pAe(i,n.length===1?""+n[0]:n.join(" "));return i.__proto__=fAe,i._generator=t,i._styler=e,i._isEmpty=r,i},pAe=(t,e)=>{if(t.level<=0||!e)return t._isEmpty?"":e;let r=t._styler;if(r===void 0)return e;let{openAll:i,closeAll:n}=r;if(e.indexOf("")!==-1)for(;r!==void 0;)e=cAe(e,r.close,r.open),r=r.parent;let s=e.indexOf(` +`);return s!==-1&&(e=uAe(e,n,i,s)),i+e+n},tQ,hAe=(t,...e)=>{let[r]=e;if(!Array.isArray(r))return e.join(" ");let i=e.slice(1),n=[r.raw[0]];for(let s=1;s{mM.exports=[{name:"AppVeyor",constant:"APPVEYOR",env:"APPVEYOR",pr:"APPVEYOR_PULL_REQUEST_NUMBER"},{name:"Azure Pipelines",constant:"AZURE_PIPELINES",env:"SYSTEM_TEAMFOUNDATIONCOLLECTIONURI",pr:"SYSTEM_PULLREQUEST_PULLREQUESTID"},{name:"Bamboo",constant:"BAMBOO",env:"bamboo_planKey"},{name:"Bitbucket Pipelines",constant:"BITBUCKET",env:"BITBUCKET_COMMIT",pr:"BITBUCKET_PR_ID"},{name:"Bitrise",constant:"BITRISE",env:"BITRISE_IO",pr:"BITRISE_PULL_REQUEST"},{name:"Buddy",constant:"BUDDY",env:"BUDDY_WORKSPACE_ID",pr:"BUDDY_EXECUTION_PULL_REQUEST_ID"},{name:"Buildkite",constant:"BUILDKITE",env:"BUILDKITE",pr:{env:"BUILDKITE_PULL_REQUEST",ne:"false"}},{name:"CircleCI",constant:"CIRCLE",env:"CIRCLECI",pr:"CIRCLE_PULL_REQUEST"},{name:"Cirrus CI",constant:"CIRRUS",env:"CIRRUS_CI",pr:"CIRRUS_PR"},{name:"AWS CodeBuild",constant:"CODEBUILD",env:"CODEBUILD_BUILD_ARN"},{name:"Codeship",constant:"CODESHIP",env:{CI_NAME:"codeship"}},{name:"Drone",constant:"DRONE",env:"DRONE",pr:{DRONE_BUILD_EVENT:"pull_request"}},{name:"dsari",constant:"DSARI",env:"DSARI"},{name:"GitLab CI",constant:"GITLAB",env:"GITLAB_CI"},{name:"GoCD",constant:"GOCD",env:"GO_PIPELINE_LABEL"},{name:"Hudson",constant:"HUDSON",env:"HUDSON_URL"},{name:"Jenkins",constant:"JENKINS",env:["JENKINS_URL","BUILD_ID"],pr:{any:["ghprbPullId","CHANGE_ID"]}},{name:"Magnum CI",constant:"MAGNUM",env:"MAGNUM"},{name:"Netlify CI",constant:"NETLIFY",env:"NETLIFY_BUILD_BASE",pr:{env:"PULL_REQUEST",ne:"false"}},{name:"Sail CI",constant:"SAIL",env:"SAILCI",pr:"SAIL_PULL_REQUEST_NUMBER"},{name:"Semaphore",constant:"SEMAPHORE",env:"SEMAPHORE",pr:"PULL_REQUEST_NUMBER"},{name:"Shippable",constant:"SHIPPABLE",env:"SHIPPABLE",pr:{IS_PULL_REQUEST:"true"}},{name:"Solano CI",constant:"SOLANO",env:"TDDIUM",pr:"TDDIUM_PR_ID"},{name:"Strider CD",constant:"STRIDER",env:"STRIDER"},{name:"TaskCluster",constant:"TASKCLUSTER",env:["TASK_ID","RUN_ID"]},{name:"TeamCity",constant:"TEAMCITY",env:"TEAMCITY_VERSION"},{name:"Travis CI",constant:"TRAVIS",env:"TRAVIS",pr:{env:"TRAVIS_PULL_REQUEST",ne:"false"}}]});var Tg=C(Ti=>{"use strict";var EM=IM(),_n=process.env;Object.defineProperty(Ti,"_vendors",{value:EM.map(function(t){return t.constant})});Ti.name=null;Ti.isPR=null;EM.forEach(function(t){var e=Array.isArray(t.env)?t.env:[t.env],r=e.every(function(i){return yM(i)});if(Ti[t.constant]=r,r)switch(Ti.name=t.name,typeof t.pr){case"string":Ti.isPR=!!_n[t.pr];break;case"object":"env"in t.pr?Ti.isPR=t.pr.env in _n&&_n[t.pr.env]!==t.pr.ne:"any"in t.pr?Ti.isPR=t.pr.any.some(function(i){return!!_n[i]}):Ti.isPR=yM(t.pr);break;default:Ti.isPR=null}});Ti.isCI=!!(_n.CI||_n.CONTINUOUS_INTEGRATION||_n.BUILD_NUMBER||_n.RUN_ID||Ti.name);function yM(t){return typeof t=="string"?!!_n[t]:Object.keys(t).every(function(e){return _n[e]===t[e]})}});var RC=C(an=>{"use strict";an.isInteger=t=>typeof t=="number"?Number.isInteger(t):typeof t=="string"&&t.trim()!==""?Number.isInteger(Number(t)):!1;an.find=(t,e)=>t.nodes.find(r=>r.type===e);an.exceedsLimit=(t,e,r=1,i)=>i===!1||!an.isInteger(t)||!an.isInteger(e)?!1:(Number(e)-Number(t))/Number(r)>=i;an.escapeNode=(t,e=0,r)=>{let i=t.nodes[e];!i||(r&&i.type===r||i.type==="open"||i.type==="close")&&i.escaped!==!0&&(i.value="\\"+i.value,i.escaped=!0)};an.encloseBrace=t=>t.type!=="brace"?!1:t.commas>>0+t.ranges>>0==0?(t.invalid=!0,!0):!1;an.isInvalidBrace=t=>t.type!=="brace"?!1:t.invalid===!0||t.dollar?!0:t.commas>>0+t.ranges>>0==0||t.open!==!0||t.close!==!0?(t.invalid=!0,!0):!1;an.isOpenOrClose=t=>t.type==="open"||t.type==="close"?!0:t.open===!0||t.close===!0;an.reduce=t=>t.reduce((e,r)=>(r.type==="text"&&e.push(r.value),r.type==="range"&&(r.type="text"),e),[]);an.flatten=(...t)=>{let e=[],r=i=>{for(let n=0;n{"use strict";var wM=RC();BM.exports=(t,e={})=>{let r=(i,n={})=>{let s=e.escapeInvalid&&wM.isInvalidBrace(n),o=i.invalid===!0&&e.escapeInvalid===!0,a="";if(i.value)return(s||o)&&wM.isOpenOrClose(i)?"\\"+i.value:i.value;if(i.value)return i.value;if(i.nodes)for(let l of i.nodes)a+=r(l);return a};return r(t)}});var bM=C((K4e,QM)=>{"use strict";QM.exports=function(t){return typeof t=="number"?t-t==0:typeof t=="string"&&t.trim()!==""?Number.isFinite?Number.isFinite(+t):isFinite(+t):!1}});var LM=C((T4e,DM)=>{"use strict";var SM=bM(),Za=(t,e,r)=>{if(SM(t)===!1)throw new TypeError("toRegexRange: expected the first argument to be a number");if(e===void 0||t===e)return String(t);if(SM(e)===!1)throw new TypeError("toRegexRange: expected the second argument to be a number.");let i=k({relaxZeros:!0},r);typeof i.strictZeros=="boolean"&&(i.relaxZeros=i.strictZeros===!1);let n=String(i.relaxZeros),s=String(i.shorthand),o=String(i.capture),a=String(i.wrap),l=t+":"+e+"="+n+s+o+a;if(Za.cache.hasOwnProperty(l))return Za.cache[l].result;let c=Math.min(t,e),u=Math.max(t,e);if(Math.abs(c-u)===1){let m=t+"|"+e;return i.capture?`(${m})`:i.wrap===!1?m:`(?:${m})`}let g=PM(t)||PM(e),h={min:t,max:e,a:c,b:u},f=[],p=[];if(g&&(h.isPadded=g,h.maxLen=String(h.max).length),c<0){let m=u<0?Math.abs(u):1;p=xM(m,Math.abs(c),h,i),c=h.a=0}return u>=0&&(f=xM(c,u,h,i)),h.negatives=p,h.positives=f,h.result=dAe(p,f,i),i.capture===!0?h.result=`(${h.result})`:i.wrap!==!1&&f.length+p.length>1&&(h.result=`(?:${h.result})`),Za.cache[l]=h,h.result};function dAe(t,e,r){let i=iQ(t,e,"-",!1,r)||[],n=iQ(e,t,"",!1,r)||[],s=iQ(t,e,"-?",!0,r)||[];return i.concat(s).concat(n).join("|")}function mAe(t,e){let r=1,i=1,n=kM(t,r),s=new Set([e]);for(;t<=n&&n<=e;)s.add(n),r+=1,n=kM(t,r);for(n=vM(e+1,i)-1;t1&&a.count.pop(),a.count.push(u.count[0]),a.string=a.pattern+FM(a.count),o=c+1;continue}r.isPadded&&(g=BAe(c,r,i)),u.string=g+u.pattern+FM(u.count),s.push(u),o=c+1,a=u}return s}function iQ(t,e,r,i,n){let s=[];for(let o of t){let{string:a}=o;!i&&!RM(e,"string",a)&&s.push(r+a),i&&RM(e,"string",a)&&s.push(r+a)}return s}function IAe(t,e){let r=[];for(let i=0;ie?1:e>t?-1:0}function RM(t,e,r){return t.some(i=>i[e]===r)}function kM(t,e){return Number(String(t).slice(0,-e)+"9".repeat(e))}function vM(t,e){return t-t%Math.pow(10,e)}function FM(t){let[e=0,r=""]=t;return r||e>1?`{${e+(r?","+r:"")}}`:""}function EAe(t,e,r){return`[${t}${e-t==1?"":"-"}${e}]`}function PM(t){return/^-?(0+)\d/.test(t)}function BAe(t,e,r){if(!e.isPadded)return t;let i=Math.abs(e.maxLen-String(t).length),n=r.relaxZeros!==!1;switch(i){case 0:return"";case 1:return n?"0?":"0";case 2:return n?"0{0,2}":"00";default:return n?`0{0,${i}}`:`0{${i}}`}}Za.cache={};Za.clearCache=()=>Za.cache={};DM.exports=Za});var oQ=C((U4e,NM)=>{"use strict";var wAe=require("util"),MM=LM(),OM=t=>t!==null&&typeof t=="object"&&!Array.isArray(t),QAe=t=>e=>t===!0?Number(e):String(e),nQ=t=>typeof t=="number"||typeof t=="string"&&t!=="",Ug=t=>Number.isInteger(+t),sQ=t=>{let e=`${t}`,r=-1;if(e[0]==="-"&&(e=e.slice(1)),e==="0")return!1;for(;e[++r]==="0";);return r>0},bAe=(t,e,r)=>typeof t=="string"||typeof e=="string"?!0:r.stringify===!0,DAe=(t,e,r)=>{if(e>0){let i=t[0]==="-"?"-":"";i&&(t=t.slice(1)),t=i+t.padStart(i?e-1:e,"0")}return r===!1?String(t):t},KM=(t,e)=>{let r=t[0]==="-"?"-":"";for(r&&(t=t.slice(1),e--);t.length{t.negatives.sort((o,a)=>oa?1:0),t.positives.sort((o,a)=>oa?1:0);let r=e.capture?"":"?:",i="",n="",s;return t.positives.length&&(i=t.positives.join("|")),t.negatives.length&&(n=`-(${r}${t.negatives.join("|")})`),i&&n?s=`${i}|${n}`:s=i||n,e.wrap?`(${r}${s})`:s},TM=(t,e,r,i)=>{if(r)return MM(t,e,k({wrap:!1},i));let n=String.fromCharCode(t);if(t===e)return n;let s=String.fromCharCode(e);return`[${n}-${s}]`},UM=(t,e,r)=>{if(Array.isArray(t)){let i=r.wrap===!0,n=r.capture?"":"?:";return i?`(${n}${t.join("|")})`:t.join("|")}return MM(t,e,r)},HM=(...t)=>new RangeError("Invalid range arguments: "+wAe.inspect(...t)),YM=(t,e,r)=>{if(r.strictRanges===!0)throw HM([t,e]);return[]},xAe=(t,e)=>{if(e.strictRanges===!0)throw new TypeError(`Expected step "${t}" to be a number`);return[]},PAe=(t,e,r=1,i={})=>{let n=Number(t),s=Number(e);if(!Number.isInteger(n)||!Number.isInteger(s)){if(i.strictRanges===!0)throw HM([t,e]);return[]}n===0&&(n=0),s===0&&(s=0);let o=n>s,a=String(t),l=String(e),c=String(r);r=Math.max(Math.abs(r),1);let u=sQ(a)||sQ(l)||sQ(c),g=u?Math.max(a.length,l.length,c.length):0,h=u===!1&&bAe(t,e,i)===!1,f=i.transform||QAe(h);if(i.toRegex&&r===1)return TM(KM(t,g),KM(e,g),!0,i);let p={negatives:[],positives:[]},m=w=>p[w<0?"negatives":"positives"].push(Math.abs(w)),I=[],y=0;for(;o?n>=s:n<=s;)i.toRegex===!0&&r>1?m(n):I.push(DAe(f(n,y),g,h)),n=o?n-r:n+r,y++;return i.toRegex===!0?r>1?SAe(p,i):UM(I,null,k({wrap:!1},i)):I},kAe=(t,e,r=1,i={})=>{if(!Ug(t)&&t.length>1||!Ug(e)&&e.length>1)return YM(t,e,i);let n=i.transform||(h=>String.fromCharCode(h)),s=`${t}`.charCodeAt(0),o=`${e}`.charCodeAt(0),a=s>o,l=Math.min(s,o),c=Math.max(s,o);if(i.toRegex&&r===1)return TM(l,c,!1,i);let u=[],g=0;for(;a?s>=o:s<=o;)u.push(n(s,g)),s=a?s-r:s+r,g++;return i.toRegex===!0?UM(u,null,{wrap:!1,options:i}):u},NC=(t,e,r,i={})=>{if(e==null&&nQ(t))return[t];if(!nQ(t)||!nQ(e))return YM(t,e,i);if(typeof r=="function")return NC(t,e,1,{transform:r});if(OM(r))return NC(t,e,0,r);let n=k({},i);return n.capture===!0&&(n.wrap=!0),r=r||n.step||1,Ug(r)?Ug(t)&&Ug(e)?PAe(t,e,r,n):kAe(t,e,Math.max(Math.abs(r),1),n):r!=null&&!OM(r)?xAe(r,n):NC(t,e,1,r)};NM.exports=NC});var qM=C((H4e,GM)=>{"use strict";var vAe=oQ(),jM=RC(),FAe=(t,e={})=>{let r=(i,n={})=>{let s=jM.isInvalidBrace(n),o=i.invalid===!0&&e.escapeInvalid===!0,a=s===!0||o===!0,l=e.escapeInvalid===!0?"\\":"",c="";if(i.isOpen===!0||i.isClose===!0)return l+i.value;if(i.type==="open")return a?l+i.value:"(";if(i.type==="close")return a?l+i.value:")";if(i.type==="comma")return i.prev.type==="comma"?"":a?i.value:"|";if(i.value)return i.value;if(i.nodes&&i.ranges>0){let u=jM.reduce(i.nodes),g=vAe(...u,V(k({},e),{wrap:!1,toRegex:!0}));if(g.length!==0)return u.length>1&&g.length>1?`(${g})`:g}if(i.nodes)for(let u of i.nodes)c+=r(u,i);return c};return r(t)};GM.exports=FAe});var zM=C((Y4e,JM)=>{"use strict";var RAe=oQ(),WM=LC(),Kl=RC(),_a=(t="",e="",r=!1)=>{let i=[];if(t=[].concat(t),e=[].concat(e),!e.length)return t;if(!t.length)return r?Kl.flatten(e).map(n=>`{${n}}`):e;for(let n of t)if(Array.isArray(n))for(let s of n)i.push(_a(s,e,r));else for(let s of e)r===!0&&typeof s=="string"&&(s=`{${s}}`),i.push(Array.isArray(s)?_a(n,s,r):n+s);return Kl.flatten(i)},LAe=(t,e={})=>{let r=e.rangeLimit===void 0?1e3:e.rangeLimit,i=(n,s={})=>{n.queue=[];let o=s,a=s.queue;for(;o.type!=="brace"&&o.type!=="root"&&o.parent;)o=o.parent,a=o.queue;if(n.invalid||n.dollar){a.push(_a(a.pop(),WM(n,e)));return}if(n.type==="brace"&&n.invalid!==!0&&n.nodes.length===2){a.push(_a(a.pop(),["{}"]));return}if(n.nodes&&n.ranges>0){let g=Kl.reduce(n.nodes);if(Kl.exceedsLimit(...g,e.step,r))throw new RangeError("expanded array length exceeds range limit. Use options.rangeLimit to increase or disable the limit.");let h=RAe(...g,e);h.length===0&&(h=WM(n,e)),a.push(_a(a.pop(),h)),n.nodes=[];return}let l=Kl.encloseBrace(n),c=n.queue,u=n;for(;u.type!=="brace"&&u.type!=="root"&&u.parent;)u=u.parent,c=u.queue;for(let g=0;g{"use strict";VM.exports={MAX_LENGTH:1024*64,CHAR_0:"0",CHAR_9:"9",CHAR_UPPERCASE_A:"A",CHAR_LOWERCASE_A:"a",CHAR_UPPERCASE_Z:"Z",CHAR_LOWERCASE_Z:"z",CHAR_LEFT_PARENTHESES:"(",CHAR_RIGHT_PARENTHESES:")",CHAR_ASTERISK:"*",CHAR_AMPERSAND:"&",CHAR_AT:"@",CHAR_BACKSLASH:"\\",CHAR_BACKTICK:"`",CHAR_CARRIAGE_RETURN:"\r",CHAR_CIRCUMFLEX_ACCENT:"^",CHAR_COLON:":",CHAR_COMMA:",",CHAR_DOLLAR:"$",CHAR_DOT:".",CHAR_DOUBLE_QUOTE:'"',CHAR_EQUAL:"=",CHAR_EXCLAMATION_MARK:"!",CHAR_FORM_FEED:"\f",CHAR_FORWARD_SLASH:"/",CHAR_HASH:"#",CHAR_HYPHEN_MINUS:"-",CHAR_LEFT_ANGLE_BRACKET:"<",CHAR_LEFT_CURLY_BRACE:"{",CHAR_LEFT_SQUARE_BRACKET:"[",CHAR_LINE_FEED:` +`,CHAR_NO_BREAK_SPACE:"\xA0",CHAR_PERCENT:"%",CHAR_PLUS:"+",CHAR_QUESTION_MARK:"?",CHAR_RIGHT_ANGLE_BRACKET:">",CHAR_RIGHT_CURLY_BRACE:"}",CHAR_RIGHT_SQUARE_BRACKET:"]",CHAR_SEMICOLON:";",CHAR_SINGLE_QUOTE:"'",CHAR_SPACE:" ",CHAR_TAB:" ",CHAR_UNDERSCORE:"_",CHAR_VERTICAL_LINE:"|",CHAR_ZERO_WIDTH_NOBREAK_SPACE:"\uFEFF"}});var tO=C((j4e,ZM)=>{"use strict";var NAe=LC(),{MAX_LENGTH:_M,CHAR_BACKSLASH:aQ,CHAR_BACKTICK:MAe,CHAR_COMMA:OAe,CHAR_DOT:KAe,CHAR_LEFT_PARENTHESES:TAe,CHAR_RIGHT_PARENTHESES:UAe,CHAR_LEFT_CURLY_BRACE:HAe,CHAR_RIGHT_CURLY_BRACE:YAe,CHAR_LEFT_SQUARE_BRACKET:$M,CHAR_RIGHT_SQUARE_BRACKET:eO,CHAR_DOUBLE_QUOTE:GAe,CHAR_SINGLE_QUOTE:jAe,CHAR_NO_BREAK_SPACE:qAe,CHAR_ZERO_WIDTH_NOBREAK_SPACE:JAe}=XM(),WAe=(t,e={})=>{if(typeof t!="string")throw new TypeError("Expected a string");let r=e||{},i=typeof r.maxLength=="number"?Math.min(_M,r.maxLength):_M;if(t.length>i)throw new SyntaxError(`Input length (${t.length}), exceeds max characters (${i})`);let n={type:"root",input:t,nodes:[]},s=[n],o=n,a=n,l=0,c=t.length,u=0,g=0,h,f={},p=()=>t[u++],m=I=>{if(I.type==="text"&&a.type==="dot"&&(a.type="text"),a&&a.type==="text"&&I.type==="text"){a.value+=I.value;return}return o.nodes.push(I),I.parent=o,I.prev=a,a=I,I};for(m({type:"bos"});u0){if(o.ranges>0){o.ranges=0;let I=o.nodes.shift();o.nodes=[I,{type:"text",value:NAe(o)}]}m({type:"comma",value:h}),o.commas++;continue}if(h===KAe&&g>0&&o.commas===0){let I=o.nodes;if(g===0||I.length===0){m({type:"text",value:h});continue}if(a.type==="dot"){if(o.range=[],a.value+=h,a.type="range",o.nodes.length!==3&&o.nodes.length!==5){o.invalid=!0,o.ranges=0,a.type="text";continue}o.ranges++,o.args=[];continue}if(a.type==="range"){I.pop();let y=I[I.length-1];y.value+=a.value+h,a=y,o.ranges--;continue}m({type:"dot",value:h});continue}m({type:"text",value:h})}do if(o=s.pop(),o.type!=="root"){o.nodes.forEach(w=>{w.nodes||(w.type==="open"&&(w.isOpen=!0),w.type==="close"&&(w.isClose=!0),w.nodes||(w.type="text"),w.invalid=!0)});let I=s[s.length-1],y=I.nodes.indexOf(o);I.nodes.splice(y,1,...o.nodes)}while(s.length>0);return m({type:"eos"}),n};ZM.exports=WAe});var nO=C((q4e,rO)=>{"use strict";var iO=LC(),zAe=qM(),VAe=zM(),XAe=tO(),Ui=(t,e={})=>{let r=[];if(Array.isArray(t))for(let i of t){let n=Ui.create(i,e);Array.isArray(n)?r.push(...n):r.push(n)}else r=[].concat(Ui.create(t,e));return e&&e.expand===!0&&e.nodupes===!0&&(r=[...new Set(r)]),r};Ui.parse=(t,e={})=>XAe(t,e);Ui.stringify=(t,e={})=>typeof t=="string"?iO(Ui.parse(t,e),e):iO(t,e);Ui.compile=(t,e={})=>(typeof t=="string"&&(t=Ui.parse(t,e)),zAe(t,e));Ui.expand=(t,e={})=>{typeof t=="string"&&(t=Ui.parse(t,e));let r=VAe(t,e);return e.noempty===!0&&(r=r.filter(Boolean)),e.nodupes===!0&&(r=[...new Set(r)]),r};Ui.create=(t,e={})=>t===""||t.length<3?[t]:e.expand!==!0?Ui.compile(t,e):Ui.expand(t,e);rO.exports=Ui});var Hg=C((J4e,sO)=>{"use strict";var ZAe=require("path"),$n="\\\\/",oO=`[^${$n}]`,Ks="\\.",_Ae="\\+",$Ae="\\?",MC="\\/",ele="(?=.)",aO="[^/]",AQ=`(?:${MC}|$)`,AO=`(?:^|${MC})`,lQ=`${Ks}{1,2}${AQ}`,tle=`(?!${Ks})`,rle=`(?!${AO}${lQ})`,ile=`(?!${Ks}{0,1}${AQ})`,nle=`(?!${lQ})`,sle=`[^.${MC}]`,ole=`${aO}*?`,lO={DOT_LITERAL:Ks,PLUS_LITERAL:_Ae,QMARK_LITERAL:$Ae,SLASH_LITERAL:MC,ONE_CHAR:ele,QMARK:aO,END_ANCHOR:AQ,DOTS_SLASH:lQ,NO_DOT:tle,NO_DOTS:rle,NO_DOT_SLASH:ile,NO_DOTS_SLASH:nle,QMARK_NO_DOT:sle,STAR:ole,START_ANCHOR:AO},ale=V(k({},lO),{SLASH_LITERAL:`[${$n}]`,QMARK:oO,STAR:`${oO}*?`,DOTS_SLASH:`${Ks}{1,2}(?:[${$n}]|$)`,NO_DOT:`(?!${Ks})`,NO_DOTS:`(?!(?:^|[${$n}])${Ks}{1,2}(?:[${$n}]|$))`,NO_DOT_SLASH:`(?!${Ks}{0,1}(?:[${$n}]|$))`,NO_DOTS_SLASH:`(?!${Ks}{1,2}(?:[${$n}]|$))`,QMARK_NO_DOT:`[^.${$n}]`,START_ANCHOR:`(?:^|[${$n}])`,END_ANCHOR:`(?:[${$n}]|$)`}),Ale={alnum:"a-zA-Z0-9",alpha:"a-zA-Z",ascii:"\\x00-\\x7F",blank:" \\t",cntrl:"\\x00-\\x1F\\x7F",digit:"0-9",graph:"\\x21-\\x7E",lower:"a-z",print:"\\x20-\\x7E ",punct:"\\-!\"#$%&'()\\*+,./:;<=>?@[\\]^_`{|}~",space:" \\t\\r\\n\\v\\f",upper:"A-Z",word:"A-Za-z0-9_",xdigit:"A-Fa-f0-9"};sO.exports={MAX_LENGTH:1024*64,POSIX_REGEX_SOURCE:Ale,REGEX_BACKSLASH:/\\(?![*+?^${}(|)[\]])/g,REGEX_NON_SPECIAL_CHARS:/^[^@![\].,$*+?^{}()|\\/]+/,REGEX_SPECIAL_CHARS:/[-*+?.^${}(|)[\]]/,REGEX_SPECIAL_CHARS_BACKREF:/(\\?)((\W)(\3*))/g,REGEX_SPECIAL_CHARS_GLOBAL:/([-*+?.^${}(|)[\]])/g,REGEX_REMOVE_BACKSLASH:/(?:\[.*?[^\\]\]|\\(?=.))/g,REPLACEMENTS:{"***":"*","**/**":"**","**/**/**":"**"},CHAR_0:48,CHAR_9:57,CHAR_UPPERCASE_A:65,CHAR_LOWERCASE_A:97,CHAR_UPPERCASE_Z:90,CHAR_LOWERCASE_Z:122,CHAR_LEFT_PARENTHESES:40,CHAR_RIGHT_PARENTHESES:41,CHAR_ASTERISK:42,CHAR_AMPERSAND:38,CHAR_AT:64,CHAR_BACKWARD_SLASH:92,CHAR_CARRIAGE_RETURN:13,CHAR_CIRCUMFLEX_ACCENT:94,CHAR_COLON:58,CHAR_COMMA:44,CHAR_DOT:46,CHAR_DOUBLE_QUOTE:34,CHAR_EQUAL:61,CHAR_EXCLAMATION_MARK:33,CHAR_FORM_FEED:12,CHAR_FORWARD_SLASH:47,CHAR_GRAVE_ACCENT:96,CHAR_HASH:35,CHAR_HYPHEN_MINUS:45,CHAR_LEFT_ANGLE_BRACKET:60,CHAR_LEFT_CURLY_BRACE:123,CHAR_LEFT_SQUARE_BRACKET:91,CHAR_LINE_FEED:10,CHAR_NO_BREAK_SPACE:160,CHAR_PERCENT:37,CHAR_PLUS:43,CHAR_QUESTION_MARK:63,CHAR_RIGHT_ANGLE_BRACKET:62,CHAR_RIGHT_CURLY_BRACE:125,CHAR_RIGHT_SQUARE_BRACKET:93,CHAR_SEMICOLON:59,CHAR_SINGLE_QUOTE:39,CHAR_SPACE:32,CHAR_TAB:9,CHAR_UNDERSCORE:95,CHAR_VERTICAL_LINE:124,CHAR_ZERO_WIDTH_NOBREAK_SPACE:65279,SEP:ZAe.sep,extglobChars(t){return{"!":{type:"negate",open:"(?:(?!(?:",close:`))${t.STAR})`},"?":{type:"qmark",open:"(?:",close:")?"},"+":{type:"plus",open:"(?:",close:")+"},"*":{type:"star",open:"(?:",close:")*"},"@":{type:"at",open:"(?:",close:")"}}},globChars(t){return t===!0?ale:lO}}});var Yg=C(wi=>{"use strict";var lle=require("path"),cle=process.platform==="win32",{REGEX_BACKSLASH:ule,REGEX_REMOVE_BACKSLASH:gle,REGEX_SPECIAL_CHARS:hle,REGEX_SPECIAL_CHARS_GLOBAL:fle}=Hg();wi.isObject=t=>t!==null&&typeof t=="object"&&!Array.isArray(t);wi.hasRegexChars=t=>hle.test(t);wi.isRegexChar=t=>t.length===1&&wi.hasRegexChars(t);wi.escapeRegex=t=>t.replace(fle,"\\$1");wi.toPosixSlashes=t=>t.replace(ule,"/");wi.removeBackslashes=t=>t.replace(gle,e=>e==="\\"?"":e);wi.supportsLookbehinds=()=>{let t=process.version.slice(1).split(".").map(Number);return t.length===3&&t[0]>=9||t[0]===8&&t[1]>=10};wi.isWindows=t=>t&&typeof t.windows=="boolean"?t.windows:cle===!0||lle.sep==="\\";wi.escapeLast=(t,e,r)=>{let i=t.lastIndexOf(e,r);return i===-1?t:t[i-1]==="\\"?wi.escapeLast(t,e,i-1):`${t.slice(0,i)}\\${t.slice(i)}`};wi.removePrefix=(t,e={})=>{let r=t;return r.startsWith("./")&&(r=r.slice(2),e.prefix="./"),r};wi.wrapOutput=(t,e={},r={})=>{let i=r.contains?"":"^",n=r.contains?"":"$",s=`${i}(?:${t})${n}`;return e.negated===!0&&(s=`(?:^(?!${s}).*$)`),s}});var mO=C((z4e,cO)=>{"use strict";var uO=Yg(),{CHAR_ASTERISK:cQ,CHAR_AT:ple,CHAR_BACKWARD_SLASH:Gg,CHAR_COMMA:dle,CHAR_DOT:uQ,CHAR_EXCLAMATION_MARK:gO,CHAR_FORWARD_SLASH:hO,CHAR_LEFT_CURLY_BRACE:gQ,CHAR_LEFT_PARENTHESES:hQ,CHAR_LEFT_SQUARE_BRACKET:Cle,CHAR_PLUS:mle,CHAR_QUESTION_MARK:fO,CHAR_RIGHT_CURLY_BRACE:Ile,CHAR_RIGHT_PARENTHESES:pO,CHAR_RIGHT_SQUARE_BRACKET:Ele}=Hg(),dO=t=>t===hO||t===Gg,CO=t=>{t.isPrefix!==!0&&(t.depth=t.isGlobstar?Infinity:1)},yle=(t,e)=>{let r=e||{},i=t.length-1,n=r.parts===!0||r.scanToEnd===!0,s=[],o=[],a=[],l=t,c=-1,u=0,g=0,h=!1,f=!1,p=!1,m=!1,I=!1,y=!1,w=!1,x=!1,F=!1,N=0,K,v,J={value:"",depth:0,isGlob:!1},oe=()=>c>=i,T=()=>l.charCodeAt(c+1),A=()=>(K=v,l.charCodeAt(++c));for(;c0&&(ee=l.slice(0,u),l=l.slice(u),g-=u),W&&p===!0&&g>0?(W=l.slice(0,g),re=l.slice(g)):p===!0?(W="",re=l):W=l,W&&W!==""&&W!=="/"&&W!==l&&dO(W.charCodeAt(W.length-1))&&(W=W.slice(0,-1)),r.unescape===!0&&(re&&(re=uO.removeBackslashes(re)),W&&w===!0&&(W=uO.removeBackslashes(W)));let H={prefix:ee,input:t,start:u,base:W,glob:re,isBrace:h,isBracket:f,isGlob:p,isExtglob:m,isGlobstar:I,negated:x};if(r.tokens===!0&&(H.maxDepth=0,dO(v)||o.push(J),H.tokens=o),r.parts===!0||r.tokens===!0){let R;for(let ke=0;ke{"use strict";var OC=Hg(),Hi=Yg(),{MAX_LENGTH:KC,POSIX_REGEX_SOURCE:Ble,REGEX_NON_SPECIAL_CHARS:wle,REGEX_SPECIAL_CHARS_BACKREF:Qle,REPLACEMENTS:EO}=OC,ble=(t,e)=>{if(typeof e.expandRange=="function")return e.expandRange(...t,e);t.sort();let r=`[${t.join("-")}]`;try{new RegExp(r)}catch(i){return t.map(n=>Hi.escapeRegex(n)).join("..")}return r},Tl=(t,e)=>`Missing ${t}: "${e}" - use "\\\\${e}" to match literal characters`,yO=(t,e)=>{if(typeof t!="string")throw new TypeError("Expected a string");t=EO[t]||t;let r=k({},e),i=typeof r.maxLength=="number"?Math.min(KC,r.maxLength):KC,n=t.length;if(n>i)throw new SyntaxError(`Input length: ${n}, exceeds maximum allowed length: ${i}`);let s={type:"bos",value:"",output:r.prepend||""},o=[s],a=r.capture?"":"?:",l=Hi.isWindows(e),c=OC.globChars(l),u=OC.extglobChars(c),{DOT_LITERAL:g,PLUS_LITERAL:h,SLASH_LITERAL:f,ONE_CHAR:p,DOTS_SLASH:m,NO_DOT:I,NO_DOT_SLASH:y,NO_DOTS_SLASH:w,QMARK:x,QMARK_NO_DOT:F,STAR:N,START_ANCHOR:K}=c,v=X=>`(${a}(?:(?!${K}${X.dot?m:g}).)*?)`,J=r.dot?"":I,oe=r.dot?x:F,T=r.bash===!0?v(r):N;r.capture&&(T=`(${T})`),typeof r.noext=="boolean"&&(r.noextglob=r.noext);let A={input:t,index:-1,start:0,dot:r.dot===!0,consumed:"",output:"",prefix:"",backtrack:!1,negated:!1,brackets:0,braces:0,parens:0,quotes:0,globstar:!1,tokens:o};t=Hi.removePrefix(t,A),n=t.length;let W=[],ee=[],re=[],H=s,R,ke=()=>A.index===n-1,Le=A.peek=(X=1)=>t[A.index+X],qe=A.advance=()=>t[++A.index],Ke=()=>t.slice(A.index+1),ie=(X="",ae=0)=>{A.consumed+=X,A.index+=ae},ce=X=>{A.output+=X.output!=null?X.output:X.value,ie(X.value)},Se=()=>{let X=1;for(;Le()==="!"&&(Le(2)!=="("||Le(3)==="?");)qe(),A.start++,X++;return X%2==0?!1:(A.negated=!0,A.start++,!0)},he=X=>{A[X]++,re.push(X)},Ie=X=>{A[X]--,re.pop()},pe=X=>{if(H.type==="globstar"){let ae=A.braces>0&&(X.type==="comma"||X.type==="brace"),ue=X.extglob===!0||W.length&&(X.type==="pipe"||X.type==="paren");X.type!=="slash"&&X.type!=="paren"&&!ae&&!ue&&(A.output=A.output.slice(0,-H.output.length),H.type="star",H.value="*",H.output=T,A.output+=H.output)}if(W.length&&X.type!=="paren"&&!u[X.value]&&(W[W.length-1].inner+=X.value),(X.value||X.output)&&ce(X),H&&H.type==="text"&&X.type==="text"){H.value+=X.value,H.output=(H.output||"")+X.value;return}X.prev=H,o.push(X),H=X},Qe=(X,ae)=>{let ue=V(k({},u[ae]),{conditions:1,inner:""});ue.prev=H,ue.parens=A.parens,ue.output=A.output;let we=(r.capture?"(":"")+ue.open;he("parens"),pe({type:X,value:ae,output:A.output?"":p}),pe({type:"paren",extglob:!0,value:qe(),output:we}),W.push(ue)},Z=X=>{let ae=X.close+(r.capture?")":"");if(X.type==="negate"){let ue=T;X.inner&&X.inner.length>1&&X.inner.includes("/")&&(ue=v(r)),(ue!==T||ke()||/^\)+$/.test(Ke()))&&(ae=X.close=`)$))${ue}`),X.prev.type==="bos"&&(A.negatedExtglob=!0)}pe({type:"paren",extglob:!0,value:R,output:ae}),Ie("parens")};if(r.fastpaths!==!1&&!/(^[*!]|[/()[\]{}"])/.test(t)){let X=!1,ae=t.replace(Qle,(ue,we,lt,Ct,xt,xn)=>Ct==="\\"?(X=!0,ue):Ct==="?"?we?we+Ct+(xt?x.repeat(xt.length):""):xn===0?oe+(xt?x.repeat(xt.length):""):x.repeat(lt.length):Ct==="."?g.repeat(lt.length):Ct==="*"?we?we+Ct+(xt?T:""):T:we?ue:`\\${ue}`);return X===!0&&(r.unescape===!0?ae=ae.replace(/\\/g,""):ae=ae.replace(/\\+/g,ue=>ue.length%2==0?"\\\\":ue?"\\":"")),ae===t&&r.contains===!0?(A.output=t,A):(A.output=Hi.wrapOutput(ae,A,e),A)}for(;!ke();){if(R=qe(),R==="\0")continue;if(R==="\\"){let ue=Le();if(ue==="/"&&r.bash!==!0||ue==="."||ue===";")continue;if(!ue){R+="\\",pe({type:"text",value:R});continue}let we=/^\\+/.exec(Ke()),lt=0;if(we&&we[0].length>2&&(lt=we[0].length,A.index+=lt,lt%2!=0&&(R+="\\")),r.unescape===!0?R=qe()||"":R+=qe()||"",A.brackets===0){pe({type:"text",value:R});continue}}if(A.brackets>0&&(R!=="]"||H.value==="["||H.value==="[^")){if(r.posix!==!1&&R===":"){let ue=H.value.slice(1);if(ue.includes("[")&&(H.posix=!0,ue.includes(":"))){let we=H.value.lastIndexOf("["),lt=H.value.slice(0,we),Ct=H.value.slice(we+2),xt=Ble[Ct];if(xt){H.value=lt+xt,A.backtrack=!0,qe(),!s.output&&o.indexOf(H)===1&&(s.output=p);continue}}}(R==="["&&Le()!==":"||R==="-"&&Le()==="]")&&(R=`\\${R}`),R==="]"&&(H.value==="["||H.value==="[^")&&(R=`\\${R}`),r.posix===!0&&R==="!"&&H.value==="["&&(R="^"),H.value+=R,ce({value:R});continue}if(A.quotes===1&&R!=='"'){R=Hi.escapeRegex(R),H.value+=R,ce({value:R});continue}if(R==='"'){A.quotes=A.quotes===1?0:1,r.keepQuotes===!0&&pe({type:"text",value:R});continue}if(R==="("){he("parens"),pe({type:"paren",value:R});continue}if(R===")"){if(A.parens===0&&r.strictBrackets===!0)throw new SyntaxError(Tl("opening","("));let ue=W[W.length-1];if(ue&&A.parens===ue.parens+1){Z(W.pop());continue}pe({type:"paren",value:R,output:A.parens?")":"\\)"}),Ie("parens");continue}if(R==="["){if(r.nobracket===!0||!Ke().includes("]")){if(r.nobracket!==!0&&r.strictBrackets===!0)throw new SyntaxError(Tl("closing","]"));R=`\\${R}`}else he("brackets");pe({type:"bracket",value:R});continue}if(R==="]"){if(r.nobracket===!0||H&&H.type==="bracket"&&H.value.length===1){pe({type:"text",value:R,output:`\\${R}`});continue}if(A.brackets===0){if(r.strictBrackets===!0)throw new SyntaxError(Tl("opening","["));pe({type:"text",value:R,output:`\\${R}`});continue}Ie("brackets");let ue=H.value.slice(1);if(H.posix!==!0&&ue[0]==="^"&&!ue.includes("/")&&(R=`/${R}`),H.value+=R,ce({value:R}),r.literalBrackets===!1||Hi.hasRegexChars(ue))continue;let we=Hi.escapeRegex(H.value);if(A.output=A.output.slice(0,-H.value.length),r.literalBrackets===!0){A.output+=we,H.value=we;continue}H.value=`(${a}${we}|${H.value})`,A.output+=H.value;continue}if(R==="{"&&r.nobrace!==!0){he("braces");let ue={type:"brace",value:R,output:"(",outputIndex:A.output.length,tokensIndex:A.tokens.length};ee.push(ue),pe(ue);continue}if(R==="}"){let ue=ee[ee.length-1];if(r.nobrace===!0||!ue){pe({type:"text",value:R,output:R});continue}let we=")";if(ue.dots===!0){let lt=o.slice(),Ct=[];for(let xt=lt.length-1;xt>=0&&(o.pop(),lt[xt].type!=="brace");xt--)lt[xt].type!=="dots"&&Ct.unshift(lt[xt].value);we=ble(Ct,r),A.backtrack=!0}if(ue.comma!==!0&&ue.dots!==!0){let lt=A.output.slice(0,ue.outputIndex),Ct=A.tokens.slice(ue.tokensIndex);ue.value=ue.output="\\{",R=we="\\}",A.output=lt;for(let xt of Ct)A.output+=xt.output||xt.value}pe({type:"brace",value:R,output:we}),Ie("braces"),ee.pop();continue}if(R==="|"){W.length>0&&W[W.length-1].conditions++,pe({type:"text",value:R});continue}if(R===","){let ue=R,we=ee[ee.length-1];we&&re[re.length-1]==="braces"&&(we.comma=!0,ue="|"),pe({type:"comma",value:R,output:ue});continue}if(R==="/"){if(H.type==="dot"&&A.index===A.start+1){A.start=A.index+1,A.consumed="",A.output="",o.pop(),H=s;continue}pe({type:"slash",value:R,output:f});continue}if(R==="."){if(A.braces>0&&H.type==="dot"){H.value==="."&&(H.output=g);let ue=ee[ee.length-1];H.type="dots",H.output+=R,H.value+=R,ue.dots=!0;continue}if(A.braces+A.parens===0&&H.type!=="bos"&&H.type!=="slash"){pe({type:"text",value:R,output:g});continue}pe({type:"dot",value:R,output:g});continue}if(R==="?"){if(!(H&&H.value==="(")&&r.noextglob!==!0&&Le()==="("&&Le(2)!=="?"){Qe("qmark",R);continue}if(H&&H.type==="paren"){let we=Le(),lt=R;if(we==="<"&&!Hi.supportsLookbehinds())throw new Error("Node.js v10 or higher is required for regex lookbehinds");(H.value==="("&&!/[!=<:]/.test(we)||we==="<"&&!/<([!=]|\w+>)/.test(Ke()))&&(lt=`\\${R}`),pe({type:"text",value:R,output:lt});continue}if(r.dot!==!0&&(H.type==="slash"||H.type==="bos")){pe({type:"qmark",value:R,output:F});continue}pe({type:"qmark",value:R,output:x});continue}if(R==="!"){if(r.noextglob!==!0&&Le()==="("&&(Le(2)!=="?"||!/[!=<:]/.test(Le(3)))){Qe("negate",R);continue}if(r.nonegate!==!0&&A.index===0){Se();continue}}if(R==="+"){if(r.noextglob!==!0&&Le()==="("&&Le(2)!=="?"){Qe("plus",R);continue}if(H&&H.value==="("||r.regex===!1){pe({type:"plus",value:R,output:h});continue}if(H&&(H.type==="bracket"||H.type==="paren"||H.type==="brace")||A.parens>0){pe({type:"plus",value:R});continue}pe({type:"plus",value:h});continue}if(R==="@"){if(r.noextglob!==!0&&Le()==="("&&Le(2)!=="?"){pe({type:"at",extglob:!0,value:R,output:""});continue}pe({type:"text",value:R});continue}if(R!=="*"){(R==="$"||R==="^")&&(R=`\\${R}`);let ue=wle.exec(Ke());ue&&(R+=ue[0],A.index+=ue[0].length),pe({type:"text",value:R});continue}if(H&&(H.type==="globstar"||H.star===!0)){H.type="star",H.star=!0,H.value+=R,H.output=T,A.backtrack=!0,A.globstar=!0,ie(R);continue}let X=Ke();if(r.noextglob!==!0&&/^\([^?]/.test(X)){Qe("star",R);continue}if(H.type==="star"){if(r.noglobstar===!0){ie(R);continue}let ue=H.prev,we=ue.prev,lt=ue.type==="slash"||ue.type==="bos",Ct=we&&(we.type==="star"||we.type==="globstar");if(r.bash===!0&&(!lt||X[0]&&X[0]!=="/")){pe({type:"star",value:R,output:""});continue}let xt=A.braces>0&&(ue.type==="comma"||ue.type==="brace"),xn=W.length&&(ue.type==="pipe"||ue.type==="paren");if(!lt&&ue.type!=="paren"&&!xt&&!xn){pe({type:"star",value:R,output:""});continue}for(;X.slice(0,3)==="/**";){let Ii=t[A.index+4];if(Ii&&Ii!=="/")break;X=X.slice(3),ie("/**",3)}if(ue.type==="bos"&&ke()){H.type="globstar",H.value+=R,H.output=v(r),A.output=H.output,A.globstar=!0,ie(R);continue}if(ue.type==="slash"&&ue.prev.type!=="bos"&&!Ct&&ke()){A.output=A.output.slice(0,-(ue.output+H.output).length),ue.output=`(?:${ue.output}`,H.type="globstar",H.output=v(r)+(r.strictSlashes?")":"|$)"),H.value+=R,A.globstar=!0,A.output+=ue.output+H.output,ie(R);continue}if(ue.type==="slash"&&ue.prev.type!=="bos"&&X[0]==="/"){let Ii=X[1]!==void 0?"|$":"";A.output=A.output.slice(0,-(ue.output+H.output).length),ue.output=`(?:${ue.output}`,H.type="globstar",H.output=`${v(r)}${f}|${f}${Ii})`,H.value+=R,A.output+=ue.output+H.output,A.globstar=!0,ie(R+qe()),pe({type:"slash",value:"/",output:""});continue}if(ue.type==="bos"&&X[0]==="/"){H.type="globstar",H.value+=R,H.output=`(?:^|${f}|${v(r)}${f})`,A.output=H.output,A.globstar=!0,ie(R+qe()),pe({type:"slash",value:"/",output:""});continue}A.output=A.output.slice(0,-H.output.length),H.type="globstar",H.output=v(r),H.value+=R,A.output+=H.output,A.globstar=!0,ie(R);continue}let ae={type:"star",value:R,output:T};if(r.bash===!0){ae.output=".*?",(H.type==="bos"||H.type==="slash")&&(ae.output=J+ae.output),pe(ae);continue}if(H&&(H.type==="bracket"||H.type==="paren")&&r.regex===!0){ae.output=R,pe(ae);continue}(A.index===A.start||H.type==="slash"||H.type==="dot")&&(H.type==="dot"?(A.output+=y,H.output+=y):r.dot===!0?(A.output+=w,H.output+=w):(A.output+=J,H.output+=J),Le()!=="*"&&(A.output+=p,H.output+=p)),pe(ae)}for(;A.brackets>0;){if(r.strictBrackets===!0)throw new SyntaxError(Tl("closing","]"));A.output=Hi.escapeLast(A.output,"["),Ie("brackets")}for(;A.parens>0;){if(r.strictBrackets===!0)throw new SyntaxError(Tl("closing",")"));A.output=Hi.escapeLast(A.output,"("),Ie("parens")}for(;A.braces>0;){if(r.strictBrackets===!0)throw new SyntaxError(Tl("closing","}"));A.output=Hi.escapeLast(A.output,"{"),Ie("braces")}if(r.strictSlashes!==!0&&(H.type==="star"||H.type==="bracket")&&pe({type:"maybe_slash",value:"",output:`${f}?`}),A.backtrack===!0){A.output="";for(let X of A.tokens)A.output+=X.output!=null?X.output:X.value,X.suffix&&(A.output+=X.suffix)}return A};yO.fastpaths=(t,e)=>{let r=k({},e),i=typeof r.maxLength=="number"?Math.min(KC,r.maxLength):KC,n=t.length;if(n>i)throw new SyntaxError(`Input length: ${n}, exceeds maximum allowed length: ${i}`);t=EO[t]||t;let s=Hi.isWindows(e),{DOT_LITERAL:o,SLASH_LITERAL:a,ONE_CHAR:l,DOTS_SLASH:c,NO_DOT:u,NO_DOTS:g,NO_DOTS_SLASH:h,STAR:f,START_ANCHOR:p}=OC.globChars(s),m=r.dot?g:u,I=r.dot?h:u,y=r.capture?"":"?:",w={negated:!1,prefix:""},x=r.bash===!0?".*?":f;r.capture&&(x=`(${x})`);let F=J=>J.noglobstar===!0?x:`(${y}(?:(?!${p}${J.dot?c:o}).)*?)`,N=J=>{switch(J){case"*":return`${m}${l}${x}`;case".*":return`${o}${l}${x}`;case"*.*":return`${m}${x}${o}${l}${x}`;case"*/*":return`${m}${x}${a}${l}${I}${x}`;case"**":return m+F(r);case"**/*":return`(?:${m}${F(r)}${a})?${I}${l}${x}`;case"**/*.*":return`(?:${m}${F(r)}${a})?${I}${x}${o}${l}${x}`;case"**/.*":return`(?:${m}${F(r)}${a})?${o}${l}${x}`;default:{let oe=/^(.*?)\.(\w+)$/.exec(J);if(!oe)return;let T=N(oe[1]);return T?T+o+oe[2]:void 0}}},K=Hi.removePrefix(t,w),v=N(K);return v&&r.strictSlashes!==!0&&(v+=`${a}?`),v};IO.exports=yO});var QO=C((X4e,wO)=>{"use strict";var Dle=require("path"),Sle=mO(),fQ=BO(),pQ=Yg(),xle=Hg(),Ple=t=>t&&typeof t=="object"&&!Array.isArray(t),ir=(t,e,r=!1)=>{if(Array.isArray(t)){let u=t.map(h=>ir(h,e,r));return h=>{for(let f of u){let p=f(h);if(p)return p}return!1}}let i=Ple(t)&&t.tokens&&t.input;if(t===""||typeof t!="string"&&!i)throw new TypeError("Expected pattern to be a non-empty string");let n=e||{},s=pQ.isWindows(e),o=i?ir.compileRe(t,e):ir.makeRe(t,e,!1,!0),a=o.state;delete o.state;let l=()=>!1;if(n.ignore){let u=V(k({},e),{ignore:null,onMatch:null,onResult:null});l=ir(n.ignore,u,r)}let c=(u,g=!1)=>{let{isMatch:h,match:f,output:p}=ir.test(u,o,e,{glob:t,posix:s}),m={glob:t,state:a,regex:o,posix:s,input:u,output:p,match:f,isMatch:h};return typeof n.onResult=="function"&&n.onResult(m),h===!1?(m.isMatch=!1,g?m:!1):l(u)?(typeof n.onIgnore=="function"&&n.onIgnore(m),m.isMatch=!1,g?m:!1):(typeof n.onMatch=="function"&&n.onMatch(m),g?m:!0)};return r&&(c.state=a),c};ir.test=(t,e,r,{glob:i,posix:n}={})=>{if(typeof t!="string")throw new TypeError("Expected input to be a string");if(t==="")return{isMatch:!1,output:""};let s=r||{},o=s.format||(n?pQ.toPosixSlashes:null),a=t===i,l=a&&o?o(t):t;return a===!1&&(l=o?o(t):t,a=l===i),(a===!1||s.capture===!0)&&(s.matchBase===!0||s.basename===!0?a=ir.matchBase(t,e,r,n):a=e.exec(l)),{isMatch:Boolean(a),match:a,output:l}};ir.matchBase=(t,e,r,i=pQ.isWindows(r))=>(e instanceof RegExp?e:ir.makeRe(e,r)).test(Dle.basename(t));ir.isMatch=(t,e,r)=>ir(e,r)(t);ir.parse=(t,e)=>Array.isArray(t)?t.map(r=>ir.parse(r,e)):fQ(t,V(k({},e),{fastpaths:!1}));ir.scan=(t,e)=>Sle(t,e);ir.compileRe=(t,e,r=!1,i=!1)=>{if(r===!0)return t.output;let n=e||{},s=n.contains?"":"^",o=n.contains?"":"$",a=`${s}(?:${t.output})${o}`;t&&t.negated===!0&&(a=`^(?!${a}).*$`);let l=ir.toRegex(a,e);return i===!0&&(l.state=t),l};ir.makeRe=(t,e,r=!1,i=!1)=>{if(!t||typeof t!="string")throw new TypeError("Expected a non-empty string");let n=e||{},s={negated:!1,fastpaths:!0},o="",a;return t.startsWith("./")&&(t=t.slice(2),o=s.prefix="./"),n.fastpaths!==!1&&(t[0]==="."||t[0]==="*")&&(a=fQ.fastpaths(t,e)),a===void 0?(s=fQ(t,e),s.prefix=o+(s.prefix||"")):s.output=a,ir.compileRe(s,e,r,i)};ir.toRegex=(t,e)=>{try{let r=e||{};return new RegExp(t,r.flags||(r.nocase?"i":""))}catch(r){if(e&&e.debug===!0)throw r;return/$^/}};ir.constants=xle;wO.exports=ir});var dQ=C((Z4e,bO)=>{"use strict";bO.exports=QO()});var Yi=C((_4e,DO)=>{"use strict";var SO=require("util"),xO=nO(),es=dQ(),CQ=Yg(),PO=t=>typeof t=="string"&&(t===""||t==="./"),Wt=(t,e,r)=>{e=[].concat(e),t=[].concat(t);let i=new Set,n=new Set,s=new Set,o=0,a=u=>{s.add(u.output),r&&r.onResult&&r.onResult(u)};for(let u=0;u!i.has(u));if(r&&c.length===0){if(r.failglob===!0)throw new Error(`No matches found for "${e.join(", ")}"`);if(r.nonull===!0||r.nullglob===!0)return r.unescape?e.map(u=>u.replace(/\\/g,"")):e}return c};Wt.match=Wt;Wt.matcher=(t,e)=>es(t,e);Wt.isMatch=(t,e,r)=>es(e,r)(t);Wt.any=Wt.isMatch;Wt.not=(t,e,r={})=>{e=[].concat(e).map(String);let i=new Set,n=[],s=a=>{r.onResult&&r.onResult(a),n.push(a.output)},o=Wt(t,e,V(k({},r),{onResult:s}));for(let a of n)o.includes(a)||i.add(a);return[...i]};Wt.contains=(t,e,r)=>{if(typeof t!="string")throw new TypeError(`Expected a string: "${SO.inspect(t)}"`);if(Array.isArray(e))return e.some(i=>Wt.contains(t,i,r));if(typeof e=="string"){if(PO(t)||PO(e))return!1;if(t.includes(e)||t.startsWith("./")&&t.slice(2).includes(e))return!0}return Wt.isMatch(t,e,V(k({},r),{contains:!0}))};Wt.matchKeys=(t,e,r)=>{if(!CQ.isObject(t))throw new TypeError("Expected the first argument to be an object");let i=Wt(Object.keys(t),e,r),n={};for(let s of i)n[s]=t[s];return n};Wt.some=(t,e,r)=>{let i=[].concat(t);for(let n of[].concat(e)){let s=es(String(n),r);if(i.some(o=>s(o)))return!0}return!1};Wt.every=(t,e,r)=>{let i=[].concat(t);for(let n of[].concat(e)){let s=es(String(n),r);if(!i.every(o=>s(o)))return!1}return!0};Wt.all=(t,e,r)=>{if(typeof t!="string")throw new TypeError(`Expected a string: "${SO.inspect(t)}"`);return[].concat(e).every(i=>es(i,r)(t))};Wt.capture=(t,e,r)=>{let i=CQ.isWindows(r),s=es.makeRe(String(t),V(k({},r),{capture:!0})).exec(i?CQ.toPosixSlashes(e):e);if(s)return s.slice(1).map(o=>o===void 0?"":o)};Wt.makeRe=(...t)=>es.makeRe(...t);Wt.scan=(...t)=>es.scan(...t);Wt.parse=(t,e)=>{let r=[];for(let i of[].concat(t||[]))for(let n of xO(String(i),e))r.push(es.parse(n,e));return r};Wt.braces=(t,e)=>{if(typeof t!="string")throw new TypeError("Expected a string");return e&&e.nobrace===!0||!/\{.*\}/.test(t)?[t]:xO(t,e)};Wt.braceExpand=(t,e)=>{if(typeof t!="string")throw new TypeError("Expected a string");return Wt.braces(t,V(k({},e),{expand:!0}))};DO.exports=Wt});var vO=C(($4e,kO)=>{"use strict";kO.exports=({onlyFirst:t=!1}={})=>{let e=["[\\u001B\\u009B][[\\]()#;?]*(?:(?:(?:[a-zA-Z\\d]*(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]*)*)?\\u0007)","(?:(?:\\d{1,4}(?:;\\d{0,4})*)?[\\dA-PR-TZcf-ntqry=><~]))"].join("|");return new RegExp(e,t?void 0:"g")}});var RO=C((eze,FO)=>{"use strict";var kle=vO();FO.exports=t=>typeof t=="string"?t.replace(kle(),""):t});var Hl={};$e(Hl,{KeyRelationship:()=>tA,applyCascade:()=>DQ,base64RegExp:()=>KO,colorStringAlphaRegExp:()=>OO,colorStringRegExp:()=>MO,computeKey:()=>Mo,getPrintable:()=>lr,hasExactLength:()=>GO,hasForbiddenKeys:()=>Ace,hasKeyRelationship:()=>xQ,hasMaxLength:()=>qle,hasMinLength:()=>jle,hasMutuallyExclusiveKeys:()=>lce,hasRequiredKeys:()=>ace,hasUniqueItems:()=>Jle,isArray:()=>Mle,isAtLeast:()=>Vle,isAtMost:()=>Xle,isBase64:()=>sce,isBoolean:()=>Rle,isDate:()=>Nle,isDict:()=>Kle,isEnum:()=>ni,isHexColor:()=>nce,isISO8601:()=>ice,isInExclusiveRange:()=>_le,isInInclusiveRange:()=>Zle,isInstanceOf:()=>Ule,isInteger:()=>$le,isJSON:()=>oce,isLiteral:()=>vle,isLowerCase:()=>ece,isNegative:()=>Wle,isNullable:()=>Gle,isNumber:()=>Lle,isObject:()=>Tle,isOneOf:()=>Hle,isOptional:()=>Yle,isPositive:()=>zle,isString:()=>bQ,isTuple:()=>Ole,isUUID4:()=>rce,isUnknown:()=>YO,isUpperCase:()=>tce,iso8601RegExp:()=>QQ,makeCoercionFn:()=>eA,makeSetter:()=>HO,makeTrait:()=>UO,makeValidator:()=>ot,matchesRegExp:()=>SQ,plural:()=>YC,pushError:()=>et,simpleKeyRegExp:()=>NO,uuid4RegExp:()=>TO});function ot({test:t}){return UO(t)()}function lr(t){return t===null?"null":t===void 0?"undefined":t===""?"an empty string":JSON.stringify(t)}function Mo(t,e){var r,i,n;return typeof e=="number"?`${(r=t==null?void 0:t.p)!==null&&r!==void 0?r:"."}[${e}]`:NO.test(e)?`${(i=t==null?void 0:t.p)!==null&&i!==void 0?i:""}.${e}`:`${(n=t==null?void 0:t.p)!==null&&n!==void 0?n:"."}[${JSON.stringify(e)}]`}function eA(t,e){return r=>{let i=t[e];return t[e]=r,eA(t,e).bind(null,i)}}function HO(t,e){return r=>{t[e]=r}}function YC(t,e,r){return t===1?e:r}function et({errors:t,p:e}={},r){return t==null||t.push(`${e!=null?e:"."}: ${r}`),!1}function vle(t){return ot({test:(e,r)=>e!==t?et(r,`Expected a literal (got ${lr(t)})`):!0})}function ni(t){let e=Array.isArray(t)?t:Object.values(t),r=new Set(e);return ot({test:(i,n)=>r.has(i)?!0:et(n,`Expected a valid enumeration value (got ${lr(i)})`)})}var NO,MO,OO,KO,TO,QQ,UO,YO,bQ,Fle,Rle,Lle,Nle,Mle,Ole,Kle,Tle,Ule,Hle,DQ,Yle,Gle,jle,qle,GO,Jle,Wle,zle,Vle,Xle,Zle,_le,$le,SQ,ece,tce,rce,ice,nce,sce,oce,ace,Ace,lce,tA,cce,xQ,Fn=tae(()=>{NO=/^[a-zA-Z_][a-zA-Z0-9_]*$/,MO=/^#[0-9a-f]{6}$/i,OO=/^#[0-9a-f]{6}([0-9a-f]{2})?$/i,KO=/^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$/,TO=/^[a-f0-9]{8}-[a-f0-9]{4}-4[a-f0-9]{3}-[89aAbB][a-f0-9]{3}-[a-f0-9]{12}$/i,QQ=/^(?:[1-9]\d{3}(-?)(?:(?:0[1-9]|1[0-2])\1(?:0[1-9]|1\d|2[0-8])|(?:0[13-9]|1[0-2])\1(?:29|30)|(?:0[13578]|1[02])(?:\1)31|00[1-9]|0[1-9]\d|[12]\d{2}|3(?:[0-5]\d|6[0-5]))|(?:[1-9]\d(?:0[48]|[2468][048]|[13579][26])|(?:[2468][048]|[13579][26])00)(?:(-?)02(?:\2)29|-?366))T(?:[01]\d|2[0-3])(:?)[0-5]\d(?:\3[0-5]\d)?(?:Z|[+-][01]\d(?:\3[0-5]\d)?)$/,UO=t=>()=>t;YO=()=>ot({test:(t,e)=>!0});bQ=()=>ot({test:(t,e)=>typeof t!="string"?et(e,`Expected a string (got ${lr(t)})`):!0});Fle=new Map([["true",!0],["True",!0],["1",!0],[1,!0],["false",!1],["False",!1],["0",!1],[0,!1]]),Rle=()=>ot({test:(t,e)=>{var r;if(typeof t!="boolean"){if(typeof(e==null?void 0:e.coercions)!="undefined"){if(typeof(e==null?void 0:e.coercion)=="undefined")return et(e,"Unbound coercion result");let i=Fle.get(t);if(typeof i!="undefined")return e.coercions.push([(r=e.p)!==null&&r!==void 0?r:".",e.coercion.bind(null,i)]),!0}return et(e,`Expected a boolean (got ${lr(t)})`)}return!0}}),Lle=()=>ot({test:(t,e)=>{var r;if(typeof t!="number"){if(typeof(e==null?void 0:e.coercions)!="undefined"){if(typeof(e==null?void 0:e.coercion)=="undefined")return et(e,"Unbound coercion result");let i;if(typeof t=="string"){let n;try{n=JSON.parse(t)}catch(s){}if(typeof n=="number")if(JSON.stringify(n)===t)i=n;else return et(e,`Received a number that can't be safely represented by the runtime (${t})`)}if(typeof i!="undefined")return e.coercions.push([(r=e.p)!==null&&r!==void 0?r:".",e.coercion.bind(null,i)]),!0}return et(e,`Expected a number (got ${lr(t)})`)}return!0}}),Nle=()=>ot({test:(t,e)=>{var r;if(!(t instanceof Date)){if(typeof(e==null?void 0:e.coercions)!="undefined"){if(typeof(e==null?void 0:e.coercion)=="undefined")return et(e,"Unbound coercion result");let i;if(typeof t=="string"&&QQ.test(t))i=new Date(t);else{let n;if(typeof t=="string"){let s;try{s=JSON.parse(t)}catch(o){}typeof s=="number"&&(n=s)}else typeof t=="number"&&(n=t);if(typeof n!="undefined")if(Number.isSafeInteger(n)||!Number.isSafeInteger(n*1e3))i=new Date(n*1e3);else return et(e,`Received a timestamp that can't be safely represented by the runtime (${t})`)}if(typeof i!="undefined")return e.coercions.push([(r=e.p)!==null&&r!==void 0?r:".",e.coercion.bind(null,i)]),!0}return et(e,`Expected a date (got ${lr(t)})`)}return!0}}),Mle=(t,{delimiter:e}={})=>ot({test:(r,i)=>{var n;if(typeof r=="string"&&typeof e!="undefined"&&typeof(i==null?void 0:i.coercions)!="undefined"){if(typeof(i==null?void 0:i.coercion)=="undefined")return et(i,"Unbound coercion result");r=r.split(e),i.coercions.push([(n=i.p)!==null&&n!==void 0?n:".",i.coercion.bind(null,r)])}if(!Array.isArray(r))return et(i,`Expected an array (got ${lr(r)})`);let s=!0;for(let o=0,a=r.length;o{let r=GO(t.length);return ot({test:(i,n)=>{var s;if(typeof i=="string"&&typeof e!="undefined"&&typeof(n==null?void 0:n.coercions)!="undefined"){if(typeof(n==null?void 0:n.coercion)=="undefined")return et(n,"Unbound coercion result");i=i.split(e),n.coercions.push([(s=n.p)!==null&&s!==void 0?s:".",n.coercion.bind(null,i)])}if(!Array.isArray(i))return et(n,`Expected a tuple (got ${lr(i)})`);let o=r(i,Object.assign({},n));for(let a=0,l=i.length;aot({test:(r,i)=>{if(typeof r!="object"||r===null)return et(i,`Expected an object (got ${lr(r)})`);let n=Object.keys(r),s=!0;for(let o=0,a=n.length;o{let r=Object.keys(t);return ot({test:(i,n)=>{if(typeof i!="object"||i===null)return et(n,`Expected an object (got ${lr(i)})`);let s=new Set([...r,...Object.keys(i)]),o={},a=!0;for(let l of s){if(l==="constructor"||l==="__proto__")a=et(Object.assign(Object.assign({},n),{p:Mo(n,l)}),"Unsafe property name");else{let c=Object.prototype.hasOwnProperty.call(t,l)?t[l]:void 0,u=Object.prototype.hasOwnProperty.call(i,l)?i[l]:void 0;typeof c!="undefined"?a=c(u,Object.assign(Object.assign({},n),{p:Mo(n,l),coercion:eA(i,l)}))&&a:e===null?a=et(Object.assign(Object.assign({},n),{p:Mo(n,l)}),`Extraneous property (got ${lr(u)})`):Object.defineProperty(o,l,{enumerable:!0,get:()=>u,set:HO(i,l)})}if(!a&&(n==null?void 0:n.errors)==null)break}return e!==null&&(a||(n==null?void 0:n.errors)!=null)&&(a=e(o,n)&&a),a}})},Ule=t=>ot({test:(e,r)=>e instanceof t?!0:et(r,`Expected an instance of ${t.name} (got ${lr(e)})`)}),Hle=(t,{exclusive:e=!1}={})=>ot({test:(r,i)=>{var n,s,o;let a=[],l=typeof(i==null?void 0:i.errors)!="undefined"?[]:void 0;for(let c=0,u=t.length;c1?et(i,`Expected to match exactly a single predicate (matched ${a.join(", ")})`):(o=i==null?void 0:i.errors)===null||o===void 0||o.push(...l),!1}}),DQ=(t,e)=>ot({test:(r,i)=>{var n,s;let o={value:r},a=typeof(i==null?void 0:i.coercions)!="undefined"?eA(o,"value"):void 0,l=typeof(i==null?void 0:i.coercions)!="undefined"?[]:void 0;if(!t(r,Object.assign(Object.assign({},i),{coercion:a,coercions:l})))return!1;let c=[];if(typeof l!="undefined")for(let[,u]of l)c.push(u());try{if(typeof(i==null?void 0:i.coercions)!="undefined"){if(o.value!==r){if(typeof(i==null?void 0:i.coercion)=="undefined")return et(i,"Unbound coercion result");i.coercions.push([(n=i.p)!==null&&n!==void 0?n:".",i.coercion.bind(null,o.value)])}(s=i==null?void 0:i.coercions)===null||s===void 0||s.push(...l)}return e.every(u=>u(o.value,i))}finally{for(let u of c)u()}}}),Yle=t=>ot({test:(e,r)=>typeof e=="undefined"?!0:t(e,r)}),Gle=t=>ot({test:(e,r)=>e===null?!0:t(e,r)}),jle=t=>ot({test:(e,r)=>e.length>=t?!0:et(r,`Expected to have a length of at least ${t} elements (got ${e.length})`)}),qle=t=>ot({test:(e,r)=>e.length<=t?!0:et(r,`Expected to have a length of at most ${t} elements (got ${e.length})`)}),GO=t=>ot({test:(e,r)=>e.length!==t?et(r,`Expected to have a length of exactly ${t} elements (got ${e.length})`):!0}),Jle=({map:t}={})=>ot({test:(e,r)=>{let i=new Set,n=new Set;for(let s=0,o=e.length;sot({test:(t,e)=>t<=0?!0:et(e,`Expected to be negative (got ${t})`)}),zle=()=>ot({test:(t,e)=>t>=0?!0:et(e,`Expected to be positive (got ${t})`)}),Vle=t=>ot({test:(e,r)=>e>=t?!0:et(r,`Expected to be at least ${t} (got ${e})`)}),Xle=t=>ot({test:(e,r)=>e<=t?!0:et(r,`Expected to be at most ${t} (got ${e})`)}),Zle=(t,e)=>ot({test:(r,i)=>r>=t&&r<=e?!0:et(i,`Expected to be in the [${t}; ${e}] range (got ${r})`)}),_le=(t,e)=>ot({test:(r,i)=>r>=t&&rot({test:(e,r)=>e!==Math.round(e)?et(r,`Expected to be an integer (got ${e})`):Number.isSafeInteger(e)?!0:et(r,`Expected to be a safe integer (got ${e})`)}),SQ=t=>ot({test:(e,r)=>t.test(e)?!0:et(r,`Expected to match the pattern ${t.toString()} (got ${lr(e)})`)}),ece=()=>ot({test:(t,e)=>t!==t.toLowerCase()?et(e,`Expected to be all-lowercase (got ${t})`):!0}),tce=()=>ot({test:(t,e)=>t!==t.toUpperCase()?et(e,`Expected to be all-uppercase (got ${t})`):!0}),rce=()=>ot({test:(t,e)=>TO.test(t)?!0:et(e,`Expected to be a valid UUID v4 (got ${lr(t)})`)}),ice=()=>ot({test:(t,e)=>QQ.test(t)?!1:et(e,`Expected to be a valid ISO 8601 date string (got ${lr(t)})`)}),nce=({alpha:t=!1})=>ot({test:(e,r)=>(t?MO.test(e):OO.test(e))?!0:et(r,`Expected to be a valid hexadecimal color string (got ${lr(e)})`)}),sce=()=>ot({test:(t,e)=>KO.test(t)?!0:et(e,`Expected to be a valid base 64 string (got ${lr(t)})`)}),oce=(t=YO())=>ot({test:(e,r)=>{let i;try{i=JSON.parse(e)}catch(n){return et(r,`Expected to be a valid JSON string (got ${lr(e)})`)}return t(i,r)}}),ace=t=>{let e=new Set(t);return ot({test:(r,i)=>{let n=new Set(Object.keys(r)),s=[];for(let o of e)n.has(o)||s.push(o);return s.length>0?et(i,`Missing required ${YC(s.length,"property","properties")} ${s.map(o=>`"${o}"`).join(", ")}`):!0}})},Ace=t=>{let e=new Set(t);return ot({test:(r,i)=>{let n=new Set(Object.keys(r)),s=[];for(let o of e)n.has(o)&&s.push(o);return s.length>0?et(i,`Forbidden ${YC(s.length,"property","properties")} ${s.map(o=>`"${o}"`).join(", ")}`):!0}})},lce=t=>{let e=new Set(t);return ot({test:(r,i)=>{let n=new Set(Object.keys(r)),s=[];for(let o of e)n.has(o)&&s.push(o);return s.length>1?et(i,`Mutually exclusive properties ${s.map(o=>`"${o}"`).join(", ")}`):!0}})};(function(t){t.Forbids="Forbids",t.Requires="Requires"})(tA||(tA={}));cce={[tA.Forbids]:{expect:!1,message:"forbids using"},[tA.Requires]:{expect:!0,message:"requires using"}},xQ=(t,e,r,{ignore:i=[]}={})=>{let n=new Set(i),s=new Set(r),o=cce[e];return ot({test:(a,l)=>{let c=new Set(Object.keys(a));if(!c.has(t)||n.has(a[t]))return!0;let u=[];for(let g of s)(c.has(g)&&!n.has(a[g]))!==o.expect&&u.push(g);return u.length>=1?et(l,`Property "${t}" ${o.message} ${YC(u.length,"property","properties")} ${u.map(g=>`"${g}"`).join(", ")}`):!0}})}});var th=C((n5e,pK)=>{var Rce="2.0.0",Lce=256,Nce=Number.MAX_SAFE_INTEGER||9007199254740991,Mce=16;pK.exports={SEMVER_SPEC_VERSION:Rce,MAX_LENGTH:Lce,MAX_SAFE_INTEGER:Nce,MAX_SAFE_COMPONENT_LENGTH:Mce}});var rh=C((s5e,dK)=>{var Oce=typeof process=="object"&&process.env&&process.env.NODE_DEBUG&&/\bsemver\b/i.test(process.env.NODE_DEBUG)?(...t)=>console.error("SEMVER",...t):()=>{};dK.exports=Oce});var sA=C((Oo,CK)=>{var{MAX_SAFE_COMPONENT_LENGTH:HQ}=th(),Kce=rh();Oo=CK.exports={};var Tce=Oo.re=[],Te=Oo.src=[],Ue=Oo.t={},Uce=0,at=(t,e,r)=>{let i=Uce++;Kce(i,e),Ue[t]=i,Te[i]=e,Tce[i]=new RegExp(e,r?"g":void 0)};at("NUMERICIDENTIFIER","0|[1-9]\\d*");at("NUMERICIDENTIFIERLOOSE","[0-9]+");at("NONNUMERICIDENTIFIER","\\d*[a-zA-Z-][a-zA-Z0-9-]*");at("MAINVERSION",`(${Te[Ue.NUMERICIDENTIFIER]})\\.(${Te[Ue.NUMERICIDENTIFIER]})\\.(${Te[Ue.NUMERICIDENTIFIER]})`);at("MAINVERSIONLOOSE",`(${Te[Ue.NUMERICIDENTIFIERLOOSE]})\\.(${Te[Ue.NUMERICIDENTIFIERLOOSE]})\\.(${Te[Ue.NUMERICIDENTIFIERLOOSE]})`);at("PRERELEASEIDENTIFIER",`(?:${Te[Ue.NUMERICIDENTIFIER]}|${Te[Ue.NONNUMERICIDENTIFIER]})`);at("PRERELEASEIDENTIFIERLOOSE",`(?:${Te[Ue.NUMERICIDENTIFIERLOOSE]}|${Te[Ue.NONNUMERICIDENTIFIER]})`);at("PRERELEASE",`(?:-(${Te[Ue.PRERELEASEIDENTIFIER]}(?:\\.${Te[Ue.PRERELEASEIDENTIFIER]})*))`);at("PRERELEASELOOSE",`(?:-?(${Te[Ue.PRERELEASEIDENTIFIERLOOSE]}(?:\\.${Te[Ue.PRERELEASEIDENTIFIERLOOSE]})*))`);at("BUILDIDENTIFIER","[0-9A-Za-z-]+");at("BUILD",`(?:\\+(${Te[Ue.BUILDIDENTIFIER]}(?:\\.${Te[Ue.BUILDIDENTIFIER]})*))`);at("FULLPLAIN",`v?${Te[Ue.MAINVERSION]}${Te[Ue.PRERELEASE]}?${Te[Ue.BUILD]}?`);at("FULL",`^${Te[Ue.FULLPLAIN]}$`);at("LOOSEPLAIN",`[v=\\s]*${Te[Ue.MAINVERSIONLOOSE]}${Te[Ue.PRERELEASELOOSE]}?${Te[Ue.BUILD]}?`);at("LOOSE",`^${Te[Ue.LOOSEPLAIN]}$`);at("GTLT","((?:<|>)?=?)");at("XRANGEIDENTIFIERLOOSE",`${Te[Ue.NUMERICIDENTIFIERLOOSE]}|x|X|\\*`);at("XRANGEIDENTIFIER",`${Te[Ue.NUMERICIDENTIFIER]}|x|X|\\*`);at("XRANGEPLAIN",`[v=\\s]*(${Te[Ue.XRANGEIDENTIFIER]})(?:\\.(${Te[Ue.XRANGEIDENTIFIER]})(?:\\.(${Te[Ue.XRANGEIDENTIFIER]})(?:${Te[Ue.PRERELEASE]})?${Te[Ue.BUILD]}?)?)?`);at("XRANGEPLAINLOOSE",`[v=\\s]*(${Te[Ue.XRANGEIDENTIFIERLOOSE]})(?:\\.(${Te[Ue.XRANGEIDENTIFIERLOOSE]})(?:\\.(${Te[Ue.XRANGEIDENTIFIERLOOSE]})(?:${Te[Ue.PRERELEASELOOSE]})?${Te[Ue.BUILD]}?)?)?`);at("XRANGE",`^${Te[Ue.GTLT]}\\s*${Te[Ue.XRANGEPLAIN]}$`);at("XRANGELOOSE",`^${Te[Ue.GTLT]}\\s*${Te[Ue.XRANGEPLAINLOOSE]}$`);at("COERCE",`(^|[^\\d])(\\d{1,${HQ}})(?:\\.(\\d{1,${HQ}}))?(?:\\.(\\d{1,${HQ}}))?(?:$|[^\\d])`);at("COERCERTL",Te[Ue.COERCE],!0);at("LONETILDE","(?:~>?)");at("TILDETRIM",`(\\s*)${Te[Ue.LONETILDE]}\\s+`,!0);Oo.tildeTrimReplace="$1~";at("TILDE",`^${Te[Ue.LONETILDE]}${Te[Ue.XRANGEPLAIN]}$`);at("TILDELOOSE",`^${Te[Ue.LONETILDE]}${Te[Ue.XRANGEPLAINLOOSE]}$`);at("LONECARET","(?:\\^)");at("CARETTRIM",`(\\s*)${Te[Ue.LONECARET]}\\s+`,!0);Oo.caretTrimReplace="$1^";at("CARET",`^${Te[Ue.LONECARET]}${Te[Ue.XRANGEPLAIN]}$`);at("CARETLOOSE",`^${Te[Ue.LONECARET]}${Te[Ue.XRANGEPLAINLOOSE]}$`);at("COMPARATORLOOSE",`^${Te[Ue.GTLT]}\\s*(${Te[Ue.LOOSEPLAIN]})$|^$`);at("COMPARATOR",`^${Te[Ue.GTLT]}\\s*(${Te[Ue.FULLPLAIN]})$|^$`);at("COMPARATORTRIM",`(\\s*)${Te[Ue.GTLT]}\\s*(${Te[Ue.LOOSEPLAIN]}|${Te[Ue.XRANGEPLAIN]})`,!0);Oo.comparatorTrimReplace="$1$2$3";at("HYPHENRANGE",`^\\s*(${Te[Ue.XRANGEPLAIN]})\\s+-\\s+(${Te[Ue.XRANGEPLAIN]})\\s*$`);at("HYPHENRANGELOOSE",`^\\s*(${Te[Ue.XRANGEPLAINLOOSE]})\\s+-\\s+(${Te[Ue.XRANGEPLAINLOOSE]})\\s*$`);at("STAR","(<|>)?=?\\s*\\*");at("GTE0","^\\s*>=\\s*0.0.0\\s*$");at("GTE0PRE","^\\s*>=\\s*0.0.0-0\\s*$")});var ih=C((o5e,mK)=>{var Hce=["includePrerelease","loose","rtl"],Yce=t=>t?typeof t!="object"?{loose:!0}:Hce.filter(e=>t[e]).reduce((e,r)=>(e[r]=!0,e),{}):{};mK.exports=Yce});var VC=C((a5e,IK)=>{var EK=/^[0-9]+$/,yK=(t,e)=>{let r=EK.test(t),i=EK.test(e);return r&&i&&(t=+t,e=+e),t===e?0:r&&!i?-1:i&&!r?1:tyK(e,t);IK.exports={compareIdentifiers:yK,rcompareIdentifiers:Gce}});var Gr=C((A5e,BK)=>{var XC=rh(),{MAX_LENGTH:wK,MAX_SAFE_INTEGER:ZC}=th(),{re:QK,t:bK}=sA(),jce=ih(),{compareIdentifiers:nh}=VC(),ln=class{constructor(e,r){if(r=jce(r),e instanceof ln){if(e.loose===!!r.loose&&e.includePrerelease===!!r.includePrerelease)return e;e=e.version}else if(typeof e!="string")throw new TypeError(`Invalid Version: ${e}`);if(e.length>wK)throw new TypeError(`version is longer than ${wK} characters`);XC("SemVer",e,r),this.options=r,this.loose=!!r.loose,this.includePrerelease=!!r.includePrerelease;let i=e.trim().match(r.loose?QK[bK.LOOSE]:QK[bK.FULL]);if(!i)throw new TypeError(`Invalid Version: ${e}`);if(this.raw=e,this.major=+i[1],this.minor=+i[2],this.patch=+i[3],this.major>ZC||this.major<0)throw new TypeError("Invalid major version");if(this.minor>ZC||this.minor<0)throw new TypeError("Invalid minor version");if(this.patch>ZC||this.patch<0)throw new TypeError("Invalid patch version");i[4]?this.prerelease=i[4].split(".").map(n=>{if(/^[0-9]+$/.test(n)){let s=+n;if(s>=0&&s=0;)typeof this.prerelease[i]=="number"&&(this.prerelease[i]++,i=-2);i===-1&&this.prerelease.push(0)}r&&(this.prerelease[0]===r?isNaN(this.prerelease[1])&&(this.prerelease=[r,0]):this.prerelease=[r,0]);break;default:throw new Error(`invalid increment argument: ${e}`)}return this.format(),this.raw=this.version,this}};BK.exports=ln});var oA=C((l5e,DK)=>{var{MAX_LENGTH:qce}=th(),{re:SK,t:xK}=sA(),PK=Gr(),Jce=ih(),Wce=(t,e)=>{if(e=Jce(e),t instanceof PK)return t;if(typeof t!="string"||t.length>qce||!(e.loose?SK[xK.LOOSE]:SK[xK.FULL]).test(t))return null;try{return new PK(t,e)}catch(i){return null}};DK.exports=Wce});var vK=C((c5e,kK)=>{var zce=oA(),Vce=(t,e)=>{let r=zce(t,e);return r?r.version:null};kK.exports=Vce});var RK=C((u5e,FK)=>{var Xce=oA(),Zce=(t,e)=>{let r=Xce(t.trim().replace(/^[=v]+/,""),e);return r?r.version:null};FK.exports=Zce});var NK=C((g5e,LK)=>{var _ce=Gr(),$ce=(t,e,r,i)=>{typeof r=="string"&&(i=r,r=void 0);try{return new _ce(t,r).inc(e,i).version}catch(n){return null}};LK.exports=$ce});var cn=C((h5e,MK)=>{var OK=Gr(),eue=(t,e,r)=>new OK(t,r).compare(new OK(e,r));MK.exports=eue});var _C=C((f5e,KK)=>{var tue=cn(),rue=(t,e,r)=>tue(t,e,r)===0;KK.exports=rue});var HK=C((p5e,TK)=>{var UK=oA(),iue=_C(),nue=(t,e)=>{if(iue(t,e))return null;{let r=UK(t),i=UK(e),n=r.prerelease.length||i.prerelease.length,s=n?"pre":"",o=n?"prerelease":"";for(let a in r)if((a==="major"||a==="minor"||a==="patch")&&r[a]!==i[a])return s+a;return o}};TK.exports=nue});var GK=C((d5e,YK)=>{var sue=Gr(),oue=(t,e)=>new sue(t,e).major;YK.exports=oue});var qK=C((C5e,jK)=>{var aue=Gr(),Aue=(t,e)=>new aue(t,e).minor;jK.exports=Aue});var WK=C((m5e,JK)=>{var lue=Gr(),cue=(t,e)=>new lue(t,e).patch;JK.exports=cue});var VK=C((I5e,zK)=>{var uue=oA(),gue=(t,e)=>{let r=uue(t,e);return r&&r.prerelease.length?r.prerelease:null};zK.exports=gue});var ZK=C((E5e,XK)=>{var hue=cn(),fue=(t,e,r)=>hue(e,t,r);XK.exports=fue});var $K=C((y5e,_K)=>{var pue=cn(),due=(t,e)=>pue(t,e,!0);_K.exports=due});var $C=C((B5e,eT)=>{var tT=Gr(),Cue=(t,e,r)=>{let i=new tT(t,r),n=new tT(e,r);return i.compare(n)||i.compareBuild(n)};eT.exports=Cue});var iT=C((w5e,rT)=>{var mue=$C(),Iue=(t,e)=>t.sort((r,i)=>mue(r,i,e));rT.exports=Iue});var sT=C((Q5e,nT)=>{var Eue=$C(),yue=(t,e)=>t.sort((r,i)=>Eue(i,r,e));nT.exports=yue});var sh=C((b5e,oT)=>{var Bue=cn(),wue=(t,e,r)=>Bue(t,e,r)>0;oT.exports=wue});var em=C((D5e,aT)=>{var Que=cn(),bue=(t,e,r)=>Que(t,e,r)<0;aT.exports=bue});var YQ=C((S5e,AT)=>{var Due=cn(),Sue=(t,e,r)=>Due(t,e,r)!==0;AT.exports=Sue});var tm=C((x5e,lT)=>{var xue=cn(),Pue=(t,e,r)=>xue(t,e,r)>=0;lT.exports=Pue});var rm=C((P5e,cT)=>{var kue=cn(),vue=(t,e,r)=>kue(t,e,r)<=0;cT.exports=vue});var GQ=C((k5e,uT)=>{var Fue=_C(),Rue=YQ(),Lue=sh(),Nue=tm(),Mue=em(),Oue=rm(),Kue=(t,e,r,i)=>{switch(e){case"===":return typeof t=="object"&&(t=t.version),typeof r=="object"&&(r=r.version),t===r;case"!==":return typeof t=="object"&&(t=t.version),typeof r=="object"&&(r=r.version),t!==r;case"":case"=":case"==":return Fue(t,r,i);case"!=":return Rue(t,r,i);case">":return Lue(t,r,i);case">=":return Nue(t,r,i);case"<":return Mue(t,r,i);case"<=":return Oue(t,r,i);default:throw new TypeError(`Invalid operator: ${e}`)}};uT.exports=Kue});var hT=C((v5e,gT)=>{var Tue=Gr(),Uue=oA(),{re:im,t:nm}=sA(),Hue=(t,e)=>{if(t instanceof Tue)return t;if(typeof t=="number"&&(t=String(t)),typeof t!="string")return null;e=e||{};let r=null;if(!e.rtl)r=t.match(im[nm.COERCE]);else{let i;for(;(i=im[nm.COERCERTL].exec(t))&&(!r||r.index+r[0].length!==t.length);)(!r||i.index+i[0].length!==r.index+r[0].length)&&(r=i),im[nm.COERCERTL].lastIndex=i.index+i[1].length+i[2].length;im[nm.COERCERTL].lastIndex=-1}return r===null?null:Uue(`${r[2]}.${r[3]||"0"}.${r[4]||"0"}`,e)};gT.exports=Hue});var pT=C((F5e,fT)=>{"use strict";fT.exports=function(t){t.prototype[Symbol.iterator]=function*(){for(let e=this.head;e;e=e.next)yield e.value}}});var oh=C((R5e,dT)=>{"use strict";dT.exports=It;It.Node=aA;It.create=It;function It(t){var e=this;if(e instanceof It||(e=new It),e.tail=null,e.head=null,e.length=0,t&&typeof t.forEach=="function")t.forEach(function(n){e.push(n)});else if(arguments.length>0)for(var r=0,i=arguments.length;r1)r=e;else if(this.head)i=this.head.next,r=this.head.value;else throw new TypeError("Reduce of empty list with no initial value");for(var n=0;i!==null;n++)r=t(r,i.value,n),i=i.next;return r};It.prototype.reduceReverse=function(t,e){var r,i=this.tail;if(arguments.length>1)r=e;else if(this.tail)i=this.tail.prev,r=this.tail.value;else throw new TypeError("Reduce of empty list with no initial value");for(var n=this.length-1;i!==null;n--)r=t(r,i.value,n),i=i.prev;return r};It.prototype.toArray=function(){for(var t=new Array(this.length),e=0,r=this.head;r!==null;e++)t[e]=r.value,r=r.next;return t};It.prototype.toArrayReverse=function(){for(var t=new Array(this.length),e=0,r=this.tail;r!==null;e++)t[e]=r.value,r=r.prev;return t};It.prototype.slice=function(t,e){e=e||this.length,e<0&&(e+=this.length),t=t||0,t<0&&(t+=this.length);var r=new It;if(ethis.length&&(e=this.length);for(var i=0,n=this.head;n!==null&&ithis.length&&(e=this.length);for(var i=this.length,n=this.tail;n!==null&&i>e;i--)n=n.prev;for(;n!==null&&i>t;i--,n=n.prev)r.push(n.value);return r};It.prototype.splice=function(t,e,...r){t>this.length&&(t=this.length-1),t<0&&(t=this.length+t);for(var i=0,n=this.head;n!==null&&i{"use strict";var que=oh(),AA=Symbol("max"),Hs=Symbol("length"),Wl=Symbol("lengthCalculator"),ah=Symbol("allowStale"),lA=Symbol("maxAge"),Ys=Symbol("dispose"),mT=Symbol("noDisposeOnSet"),Dr=Symbol("lruList"),Ln=Symbol("cache"),IT=Symbol("updateAgeOnGet"),jQ=()=>1,ET=class{constructor(e){if(typeof e=="number"&&(e={max:e}),e||(e={}),e.max&&(typeof e.max!="number"||e.max<0))throw new TypeError("max must be a non-negative number");let r=this[AA]=e.max||Infinity,i=e.length||jQ;if(this[Wl]=typeof i!="function"?jQ:i,this[ah]=e.stale||!1,e.maxAge&&typeof e.maxAge!="number")throw new TypeError("maxAge must be a number");this[lA]=e.maxAge||0,this[Ys]=e.dispose,this[mT]=e.noDisposeOnSet||!1,this[IT]=e.updateAgeOnGet||!1,this.reset()}set max(e){if(typeof e!="number"||e<0)throw new TypeError("max must be a non-negative number");this[AA]=e||Infinity,Ah(this)}get max(){return this[AA]}set allowStale(e){this[ah]=!!e}get allowStale(){return this[ah]}set maxAge(e){if(typeof e!="number")throw new TypeError("maxAge must be a non-negative number");this[lA]=e,Ah(this)}get maxAge(){return this[lA]}set lengthCalculator(e){typeof e!="function"&&(e=jQ),e!==this[Wl]&&(this[Wl]=e,this[Hs]=0,this[Dr].forEach(r=>{r.length=this[Wl](r.value,r.key),this[Hs]+=r.length})),Ah(this)}get lengthCalculator(){return this[Wl]}get length(){return this[Hs]}get itemCount(){return this[Dr].length}rforEach(e,r){r=r||this;for(let i=this[Dr].tail;i!==null;){let n=i.prev;BT(this,e,i,r),i=n}}forEach(e,r){r=r||this;for(let i=this[Dr].head;i!==null;){let n=i.next;BT(this,e,i,r),i=n}}keys(){return this[Dr].toArray().map(e=>e.key)}values(){return this[Dr].toArray().map(e=>e.value)}reset(){this[Ys]&&this[Dr]&&this[Dr].length&&this[Dr].forEach(e=>this[Ys](e.key,e.value)),this[Ln]=new Map,this[Dr]=new que,this[Hs]=0}dump(){return this[Dr].map(e=>sm(this,e)?!1:{k:e.key,v:e.value,e:e.now+(e.maxAge||0)}).toArray().filter(e=>e)}dumpLru(){return this[Dr]}set(e,r,i){if(i=i||this[lA],i&&typeof i!="number")throw new TypeError("maxAge must be a number");let n=i?Date.now():0,s=this[Wl](r,e);if(this[Ln].has(e)){if(s>this[AA])return zl(this,this[Ln].get(e)),!1;let l=this[Ln].get(e).value;return this[Ys]&&(this[mT]||this[Ys](e,l.value)),l.now=n,l.maxAge=i,l.value=r,this[Hs]+=s-l.length,l.length=s,this.get(e),Ah(this),!0}let o=new yT(e,r,s,n,i);return o.length>this[AA]?(this[Ys]&&this[Ys](e,r),!1):(this[Hs]+=o.length,this[Dr].unshift(o),this[Ln].set(e,this[Dr].head),Ah(this),!0)}has(e){if(!this[Ln].has(e))return!1;let r=this[Ln].get(e).value;return!sm(this,r)}get(e){return qQ(this,e,!0)}peek(e){return qQ(this,e,!1)}pop(){let e=this[Dr].tail;return e?(zl(this,e),e.value):null}del(e){zl(this,this[Ln].get(e))}load(e){this.reset();let r=Date.now();for(let i=e.length-1;i>=0;i--){let n=e[i],s=n.e||0;if(s===0)this.set(n.k,n.v);else{let o=s-r;o>0&&this.set(n.k,n.v,o)}}}prune(){this[Ln].forEach((e,r)=>qQ(this,r,!1))}},qQ=(t,e,r)=>{let i=t[Ln].get(e);if(i){let n=i.value;if(sm(t,n)){if(zl(t,i),!t[ah])return}else r&&(t[IT]&&(i.value.now=Date.now()),t[Dr].unshiftNode(i));return n.value}},sm=(t,e)=>{if(!e||!e.maxAge&&!t[lA])return!1;let r=Date.now()-e.now;return e.maxAge?r>e.maxAge:t[lA]&&r>t[lA]},Ah=t=>{if(t[Hs]>t[AA])for(let e=t[Dr].tail;t[Hs]>t[AA]&&e!==null;){let r=e.prev;zl(t,e),e=r}},zl=(t,e)=>{if(e){let r=e.value;t[Ys]&&t[Ys](r.key,r.value),t[Hs]-=r.length,t[Ln].delete(r.key),t[Dr].removeNode(e)}},yT=class{constructor(e,r,i,n,s){this.key=e,this.value=r,this.length=i,this.now=n,this.maxAge=s||0}},BT=(t,e,r,i)=>{let n=r.value;sm(t,n)&&(zl(t,r),t[ah]||(n=void 0)),n&&e.call(i,n.value,n.key,t)};CT.exports=ET});var un=C((N5e,QT)=>{var Vl=class{constructor(e,r){if(r=Jue(r),e instanceof Vl)return e.loose===!!r.loose&&e.includePrerelease===!!r.includePrerelease?e:new Vl(e.raw,r);if(e instanceof JQ)return this.raw=e.value,this.set=[[e]],this.format(),this;if(this.options=r,this.loose=!!r.loose,this.includePrerelease=!!r.includePrerelease,this.raw=e,this.set=e.split(/\s*\|\|\s*/).map(i=>this.parseRange(i.trim())).filter(i=>i.length),!this.set.length)throw new TypeError(`Invalid SemVer Range: ${e}`);if(this.set.length>1){let i=this.set[0];if(this.set=this.set.filter(n=>!DT(n[0])),this.set.length===0)this.set=[i];else if(this.set.length>1){for(let n of this.set)if(n.length===1&&Zue(n[0])){this.set=[n];break}}}this.format()}format(){return this.range=this.set.map(e=>e.join(" ").trim()).join("||").trim(),this.range}toString(){return this.range}parseRange(e){e=e.trim();let i=`parseRange:${Object.keys(this.options).join(",")}:${e}`,n=bT.get(i);if(n)return n;let s=this.options.loose,o=s?jr[Kr.HYPHENRANGELOOSE]:jr[Kr.HYPHENRANGE];e=e.replace(o,ege(this.options.includePrerelease)),nr("hyphen replace",e),e=e.replace(jr[Kr.COMPARATORTRIM],zue),nr("comparator trim",e,jr[Kr.COMPARATORTRIM]),e=e.replace(jr[Kr.TILDETRIM],Vue),e=e.replace(jr[Kr.CARETTRIM],Xue),e=e.split(/\s+/).join(" ");let a=s?jr[Kr.COMPARATORLOOSE]:jr[Kr.COMPARATOR],l=e.split(" ").map(h=>_ue(h,this.options)).join(" ").split(/\s+/).map(h=>$ue(h,this.options)).filter(this.options.loose?h=>!!h.match(a):()=>!0).map(h=>new JQ(h,this.options)),c=l.length,u=new Map;for(let h of l){if(DT(h))return[h];u.set(h.value,h)}u.size>1&&u.has("")&&u.delete("");let g=[...u.values()];return bT.set(i,g),g}intersects(e,r){if(!(e instanceof Vl))throw new TypeError("a Range is required");return this.set.some(i=>ST(i,r)&&e.set.some(n=>ST(n,r)&&i.every(s=>n.every(o=>s.intersects(o,r)))))}test(e){if(!e)return!1;if(typeof e=="string")try{e=new Wue(e,this.options)}catch(r){return!1}for(let r=0;rt.value==="<0.0.0-0",Zue=t=>t.value==="",ST=(t,e)=>{let r=!0,i=t.slice(),n=i.pop();for(;r&&i.length;)r=i.every(s=>n.intersects(s,e)),n=i.pop();return r},_ue=(t,e)=>(nr("comp",t,e),t=nge(t,e),nr("caret",t),t=ige(t,e),nr("tildes",t),t=sge(t,e),nr("xrange",t),t=oge(t,e),nr("stars",t),t),oi=t=>!t||t.toLowerCase()==="x"||t==="*",ige=(t,e)=>t.trim().split(/\s+/).map(r=>age(r,e)).join(" "),age=(t,e)=>{let r=e.loose?jr[Kr.TILDELOOSE]:jr[Kr.TILDE];return t.replace(r,(i,n,s,o,a)=>{nr("tilde",t,i,n,s,o,a);let l;return oi(n)?l="":oi(s)?l=`>=${n}.0.0 <${+n+1}.0.0-0`:oi(o)?l=`>=${n}.${s}.0 <${n}.${+s+1}.0-0`:a?(nr("replaceTilde pr",a),l=`>=${n}.${s}.${o}-${a} <${n}.${+s+1}.0-0`):l=`>=${n}.${s}.${o} <${n}.${+s+1}.0-0`,nr("tilde return",l),l})},nge=(t,e)=>t.trim().split(/\s+/).map(r=>Age(r,e)).join(" "),Age=(t,e)=>{nr("caret",t,e);let r=e.loose?jr[Kr.CARETLOOSE]:jr[Kr.CARET],i=e.includePrerelease?"-0":"";return t.replace(r,(n,s,o,a,l)=>{nr("caret",t,n,s,o,a,l);let c;return oi(s)?c="":oi(o)?c=`>=${s}.0.0${i} <${+s+1}.0.0-0`:oi(a)?s==="0"?c=`>=${s}.${o}.0${i} <${s}.${+o+1}.0-0`:c=`>=${s}.${o}.0${i} <${+s+1}.0.0-0`:l?(nr("replaceCaret pr",l),s==="0"?o==="0"?c=`>=${s}.${o}.${a}-${l} <${s}.${o}.${+a+1}-0`:c=`>=${s}.${o}.${a}-${l} <${s}.${+o+1}.0-0`:c=`>=${s}.${o}.${a}-${l} <${+s+1}.0.0-0`):(nr("no pr"),s==="0"?o==="0"?c=`>=${s}.${o}.${a}${i} <${s}.${o}.${+a+1}-0`:c=`>=${s}.${o}.${a}${i} <${s}.${+o+1}.0-0`:c=`>=${s}.${o}.${a} <${+s+1}.0.0-0`),nr("caret return",c),c})},sge=(t,e)=>(nr("replaceXRanges",t,e),t.split(/\s+/).map(r=>lge(r,e)).join(" ")),lge=(t,e)=>{t=t.trim();let r=e.loose?jr[Kr.XRANGELOOSE]:jr[Kr.XRANGE];return t.replace(r,(i,n,s,o,a,l)=>{nr("xRange",t,i,n,s,o,a,l);let c=oi(s),u=c||oi(o),g=u||oi(a),h=g;return n==="="&&h&&(n=""),l=e.includePrerelease?"-0":"",c?n===">"||n==="<"?i="<0.0.0-0":i="*":n&&h?(u&&(o=0),a=0,n===">"?(n=">=",u?(s=+s+1,o=0,a=0):(o=+o+1,a=0)):n==="<="&&(n="<",u?s=+s+1:o=+o+1),n==="<"&&(l="-0"),i=`${n+s}.${o}.${a}${l}`):u?i=`>=${s}.0.0${l} <${+s+1}.0.0-0`:g&&(i=`>=${s}.${o}.0${l} <${s}.${+o+1}.0-0`),nr("xRange return",i),i})},oge=(t,e)=>(nr("replaceStars",t,e),t.trim().replace(jr[Kr.STAR],"")),$ue=(t,e)=>(nr("replaceGTE0",t,e),t.trim().replace(jr[e.includePrerelease?Kr.GTE0PRE:Kr.GTE0],"")),ege=t=>(e,r,i,n,s,o,a,l,c,u,g,h,f)=>(oi(i)?r="":oi(n)?r=`>=${i}.0.0${t?"-0":""}`:oi(s)?r=`>=${i}.${n}.0${t?"-0":""}`:o?r=`>=${r}`:r=`>=${r}${t?"-0":""}`,oi(c)?l="":oi(u)?l=`<${+c+1}.0.0-0`:oi(g)?l=`<${c}.${+u+1}.0-0`:h?l=`<=${c}.${u}.${g}-${h}`:t?l=`<${c}.${u}.${+g+1}-0`:l=`<=${l}`,`${r} ${l}`.trim()),tge=(t,e,r)=>{for(let i=0;i0){let n=t[i].semver;if(n.major===e.major&&n.minor===e.minor&&n.patch===e.patch)return!0}return!1}return!0}});var lh=C((M5e,xT)=>{var ch=Symbol("SemVer ANY"),uh=class{static get ANY(){return ch}constructor(e,r){if(r=cge(r),e instanceof uh){if(e.loose===!!r.loose)return e;e=e.value}zQ("comparator",e,r),this.options=r,this.loose=!!r.loose,this.parse(e),this.semver===ch?this.value="":this.value=this.operator+this.semver.version,zQ("comp",this)}parse(e){let r=this.options.loose?PT[kT.COMPARATORLOOSE]:PT[kT.COMPARATOR],i=e.match(r);if(!i)throw new TypeError(`Invalid comparator: ${e}`);this.operator=i[1]!==void 0?i[1]:"",this.operator==="="&&(this.operator=""),i[2]?this.semver=new vT(i[2],this.options.loose):this.semver=ch}toString(){return this.value}test(e){if(zQ("Comparator.test",e,this.options.loose),this.semver===ch||e===ch)return!0;if(typeof e=="string")try{e=new vT(e,this.options)}catch(r){return!1}return WQ(e,this.operator,this.semver,this.options)}intersects(e,r){if(!(e instanceof uh))throw new TypeError("a Comparator is required");if((!r||typeof r!="object")&&(r={loose:!!r,includePrerelease:!1}),this.operator==="")return this.value===""?!0:new FT(e.value,r).test(this.value);if(e.operator==="")return e.value===""?!0:new FT(this.value,r).test(e.semver);let i=(this.operator===">="||this.operator===">")&&(e.operator===">="||e.operator===">"),n=(this.operator==="<="||this.operator==="<")&&(e.operator==="<="||e.operator==="<"),s=this.semver.version===e.semver.version,o=(this.operator===">="||this.operator==="<=")&&(e.operator===">="||e.operator==="<="),a=WQ(this.semver,"<",e.semver,r)&&(this.operator===">="||this.operator===">")&&(e.operator==="<="||e.operator==="<"),l=WQ(this.semver,">",e.semver,r)&&(this.operator==="<="||this.operator==="<")&&(e.operator===">="||e.operator===">");return i||n||s&&o||a||l}};xT.exports=uh;var cge=ih(),{re:PT,t:kT}=sA(),WQ=GQ(),zQ=rh(),vT=Gr(),FT=un()});var gh=C((O5e,RT)=>{var uge=un(),gge=(t,e,r)=>{try{e=new uge(e,r)}catch(i){return!1}return e.test(t)};RT.exports=gge});var NT=C((K5e,LT)=>{var hge=un(),fge=(t,e)=>new hge(t,e).set.map(r=>r.map(i=>i.value).join(" ").trim().split(" "));LT.exports=fge});var OT=C((T5e,MT)=>{var pge=Gr(),dge=un(),Cge=(t,e,r)=>{let i=null,n=null,s=null;try{s=new dge(e,r)}catch(o){return null}return t.forEach(o=>{s.test(o)&&(!i||n.compare(o)===-1)&&(i=o,n=new pge(i,r))}),i};MT.exports=Cge});var TT=C((U5e,KT)=>{var mge=Gr(),Ige=un(),Ege=(t,e,r)=>{let i=null,n=null,s=null;try{s=new Ige(e,r)}catch(o){return null}return t.forEach(o=>{s.test(o)&&(!i||n.compare(o)===1)&&(i=o,n=new mge(i,r))}),i};KT.exports=Ege});var YT=C((H5e,UT)=>{var VQ=Gr(),yge=un(),HT=sh(),Bge=(t,e)=>{t=new yge(t,e);let r=new VQ("0.0.0");if(t.test(r)||(r=new VQ("0.0.0-0"),t.test(r)))return r;r=null;for(let i=0;i{let a=new VQ(o.semver.version);switch(o.operator){case">":a.prerelease.length===0?a.patch++:a.prerelease.push(0),a.raw=a.format();case"":case">=":(!s||HT(a,s))&&(s=a);break;case"<":case"<=":break;default:throw new Error(`Unexpected operation: ${o.operator}`)}}),s&&(!r||HT(r,s))&&(r=s)}return r&&t.test(r)?r:null};UT.exports=Bge});var jT=C((Y5e,GT)=>{var wge=un(),Qge=(t,e)=>{try{return new wge(t,e).range||"*"}catch(r){return null}};GT.exports=Qge});var om=C((G5e,qT)=>{var bge=Gr(),JT=lh(),{ANY:Dge}=JT,Sge=un(),xge=gh(),WT=sh(),zT=em(),Pge=rm(),kge=tm(),vge=(t,e,r,i)=>{t=new bge(t,i),e=new Sge(e,i);let n,s,o,a,l;switch(r){case">":n=WT,s=Pge,o=zT,a=">",l=">=";break;case"<":n=zT,s=kge,o=WT,a="<",l="<=";break;default:throw new TypeError('Must provide a hilo val of "<" or ">"')}if(xge(t,e,i))return!1;for(let c=0;c{f.semver===Dge&&(f=new JT(">=0.0.0")),g=g||f,h=h||f,n(f.semver,g.semver,i)?g=f:o(f.semver,h.semver,i)&&(h=f)}),g.operator===a||g.operator===l||(!h.operator||h.operator===a)&&s(t,h.semver))return!1;if(h.operator===l&&o(t,h.semver))return!1}return!0};qT.exports=vge});var XT=C((j5e,VT)=>{var Fge=om(),Rge=(t,e,r)=>Fge(t,e,">",r);VT.exports=Rge});var _T=C((q5e,ZT)=>{var Lge=om(),Nge=(t,e,r)=>Lge(t,e,"<",r);ZT.exports=Nge});var tU=C((J5e,$T)=>{var eU=un(),Mge=(t,e,r)=>(t=new eU(t,r),e=new eU(e,r),t.intersects(e));$T.exports=Mge});var iU=C((W5e,rU)=>{var Oge=gh(),Kge=cn();rU.exports=(t,e,r)=>{let i=[],n=null,s=null,o=t.sort((u,g)=>Kge(u,g,r));for(let u of o)Oge(u,e,r)?(s=u,n||(n=u)):(s&&i.push([n,s]),s=null,n=null);n&&i.push([n,null]);let a=[];for(let[u,g]of i)u===g?a.push(u):!g&&u===o[0]?a.push("*"):g?u===o[0]?a.push(`<=${g}`):a.push(`${u} - ${g}`):a.push(`>=${u}`);let l=a.join(" || "),c=typeof e.raw=="string"?e.raw:String(e);return l.length{var sU=un(),am=lh(),{ANY:XQ}=am,hh=gh(),ZQ=cn(),Uge=(t,e,r={})=>{if(t===e)return!0;t=new sU(t,r),e=new sU(e,r);let i=!1;e:for(let n of t.set){for(let s of e.set){let o=Tge(n,s,r);if(i=i||o!==null,o)continue e}if(i)return!1}return!0},Tge=(t,e,r)=>{if(t===e)return!0;if(t.length===1&&t[0].semver===XQ){if(e.length===1&&e[0].semver===XQ)return!0;r.includePrerelease?t=[new am(">=0.0.0-0")]:t=[new am(">=0.0.0")]}if(e.length===1&&e[0].semver===XQ){if(r.includePrerelease)return!0;e=[new am(">=0.0.0")]}let i=new Set,n,s;for(let f of t)f.operator===">"||f.operator===">="?n=oU(n,f,r):f.operator==="<"||f.operator==="<="?s=aU(s,f,r):i.add(f.semver);if(i.size>1)return null;let o;if(n&&s){if(o=ZQ(n.semver,s.semver,r),o>0)return null;if(o===0&&(n.operator!==">="||s.operator!=="<="))return null}for(let f of i){if(n&&!hh(f,String(n),r)||s&&!hh(f,String(s),r))return null;for(let p of e)if(!hh(f,String(p),r))return!1;return!0}let a,l,c,u,g=s&&!r.includePrerelease&&s.semver.prerelease.length?s.semver:!1,h=n&&!r.includePrerelease&&n.semver.prerelease.length?n.semver:!1;g&&g.prerelease.length===1&&s.operator==="<"&&g.prerelease[0]===0&&(g=!1);for(let f of e){if(u=u||f.operator===">"||f.operator===">=",c=c||f.operator==="<"||f.operator==="<=",n){if(h&&f.semver.prerelease&&f.semver.prerelease.length&&f.semver.major===h.major&&f.semver.minor===h.minor&&f.semver.patch===h.patch&&(h=!1),f.operator===">"||f.operator===">="){if(a=oU(n,f,r),a===f&&a!==n)return!1}else if(n.operator===">="&&!hh(n.semver,String(f),r))return!1}if(s){if(g&&f.semver.prerelease&&f.semver.prerelease.length&&f.semver.major===g.major&&f.semver.minor===g.minor&&f.semver.patch===g.patch&&(g=!1),f.operator==="<"||f.operator==="<="){if(l=aU(s,f,r),l===f&&l!==s)return!1}else if(s.operator==="<="&&!hh(s.semver,String(f),r))return!1}if(!f.operator&&(s||n)&&o!==0)return!1}return!(n&&c&&!s&&o!==0||s&&u&&!n&&o!==0||h||g)},oU=(t,e,r)=>{if(!t)return e;let i=ZQ(t.semver,e.semver,r);return i>0?t:i<0||e.operator===">"&&t.operator===">="?e:t},aU=(t,e,r)=>{if(!t)return e;let i=ZQ(t.semver,e.semver,r);return i<0?t:i>0||e.operator==="<"&&t.operator==="<="?e:t};nU.exports=Uge});var Cr=C((V5e,lU)=>{var _Q=sA();lU.exports={re:_Q.re,src:_Q.src,tokens:_Q.t,SEMVER_SPEC_VERSION:th().SEMVER_SPEC_VERSION,SemVer:Gr(),compareIdentifiers:VC().compareIdentifiers,rcompareIdentifiers:VC().rcompareIdentifiers,parse:oA(),valid:vK(),clean:RK(),inc:NK(),diff:HK(),major:GK(),minor:qK(),patch:WK(),prerelease:VK(),compare:cn(),rcompare:ZK(),compareLoose:$K(),compareBuild:$C(),sort:iT(),rsort:sT(),gt:sh(),lt:em(),eq:_C(),neq:YQ(),gte:tm(),lte:rm(),cmp:GQ(),coerce:hT(),Comparator:lh(),Range:un(),satisfies:gh(),toComparators:NT(),maxSatisfying:OT(),minSatisfying:TT(),minVersion:YT(),validRange:jT(),outside:om(),gtr:XT(),ltr:_T(),intersects:tU(),simplifyRange:iU(),subset:AU()}});var uU=C((X5e,cU)=>{"use strict";cU.exports=(...t)=>[...new Set([].concat(...t))]});var $Q=C((Z5e,gU)=>{"use strict";var Hge=require("stream"),hU=Hge.PassThrough,Yge=Array.prototype.slice;gU.exports=Gge;function Gge(){let t=[],e=!1,r=Yge.call(arguments),i=r[r.length-1];i&&!Array.isArray(i)&&i.pipe==null?r.pop():i={};let n=i.end!==!1;i.objectMode==null&&(i.objectMode=!0),i.highWaterMark==null&&(i.highWaterMark=64*1024);let s=hU(i);function o(){for(let c=0,u=arguments.length;c0||(e=!1,a())}function h(f){function p(){f.removeListener("merge2UnpipeEnd",p),f.removeListener("end",p),g()}if(f._readableState.endEmitted)return g();f.on("merge2UnpipeEnd",p),f.on("end",p),f.pipe(s,{end:!1}),f.resume()}for(let f=0;f{"use strict";Object.defineProperty(Am,"__esModule",{value:!0});function jge(t){return t.reduce((e,r)=>[].concat(e,r),[])}Am.flatten=jge;function qge(t,e){let r=[[]],i=0;for(let n of t)e(n)?(i++,r[i]=[]):r[i].push(n);return r}Am.splitWhen=qge});var dU=C(e0=>{"use strict";Object.defineProperty(e0,"__esModule",{value:!0});function Jge(t){return t.code==="ENOENT"}e0.isEnoentCodeError=Jge});var mU=C(t0=>{"use strict";Object.defineProperty(t0,"__esModule",{value:!0});var CU=class{constructor(e,r){this.name=e,this.isBlockDevice=r.isBlockDevice.bind(r),this.isCharacterDevice=r.isCharacterDevice.bind(r),this.isDirectory=r.isDirectory.bind(r),this.isFIFO=r.isFIFO.bind(r),this.isFile=r.isFile.bind(r),this.isSocket=r.isSocket.bind(r),this.isSymbolicLink=r.isSymbolicLink.bind(r)}};function Wge(t,e){return new CU(t,e)}t0.createDirentFromStats=Wge});var IU=C(Xl=>{"use strict";Object.defineProperty(Xl,"__esModule",{value:!0});var zge=require("path"),Vge=2,Xge=/(\\?)([()*?[\]{|}]|^!|[!+@](?=\())/g;function Zge(t){return t.replace(/\\/g,"/")}Xl.unixify=Zge;function _ge(t,e){return zge.resolve(t,e)}Xl.makeAbsolute=_ge;function $ge(t){return t.replace(Xge,"\\$2")}Xl.escape=$ge;function ehe(t){if(t.charAt(0)==="."){let e=t.charAt(1);if(e==="/"||e==="\\")return t.slice(Vge)}return t}Xl.removeLeadingDotSegment=ehe});var yU=C((r6e,EU)=>{EU.exports=function(e){if(typeof e!="string"||e==="")return!1;for(var r;r=/(\\).|([@?!+*]\(.*\))/g.exec(e);){if(r[2])return!0;e=e.slice(r.index+r[0].length)}return!1}});var wU=C((i6e,BU)=>{var the=yU(),rhe={"{":"}","(":")","[":"]"},ihe=/\\(.)|(^!|\*|[\].+)]\?|\[[^\\\]]+\]|\{[^\\}]+\}|\(\?[:!=][^\\)]+\)|\([^|]+\|[^\\)]+\))/,nhe=/\\(.)|(^!|[*?{}()[\]]|\(\?)/;BU.exports=function(e,r){if(typeof e!="string"||e==="")return!1;if(the(e))return!0;var i=ihe,n;for(r&&r.strict===!1&&(i=nhe);n=i.exec(e);){if(n[2])return!0;var s=n.index+n[0].length,o=n[1],a=o?rhe[o]:null;if(o&&a){var l=e.indexOf(a,s);l!==-1&&(s=l+1)}e=e.slice(s)}return!1}});var bU=C((n6e,QU)=>{"use strict";var she=wU(),ohe=require("path").posix.dirname,ahe=require("os").platform()==="win32",r0="/",Ahe=/\\/g,lhe=/[\{\[].*[\}\]]$/,che=/(^|[^\\])([\{\[]|\([^\)]+$)/,uhe=/\\([\!\*\?\|\[\]\(\)\{\}])/g;QU.exports=function(e,r){var i=Object.assign({flipBackslashes:!0},r);i.flipBackslashes&&ahe&&e.indexOf(r0)<0&&(e=e.replace(Ahe,r0)),lhe.test(e)&&(e+=r0),e+="a";do e=ohe(e);while(she(e)||che.test(e));return e.replace(uhe,"$1")}});var LU=C(cr=>{"use strict";Object.defineProperty(cr,"__esModule",{value:!0});var ghe=require("path"),hhe=bU(),DU=Yi(),fhe=dQ(),SU="**",phe="\\",dhe=/[*?]|^!/,Che=/\[.*]/,mhe=/(?:^|[^!*+?@])\(.*\|.*\)/,Ihe=/[!*+?@]\(.*\)/,Ehe=/{.*(?:,|\.\.).*}/;function PU(t,e={}){return!xU(t,e)}cr.isStaticPattern=PU;function xU(t,e={}){return!!(e.caseSensitiveMatch===!1||t.includes(phe)||dhe.test(t)||Che.test(t)||mhe.test(t)||e.extglob!==!1&&Ihe.test(t)||e.braceExpansion!==!1&&Ehe.test(t))}cr.isDynamicPattern=xU;function yhe(t){return lm(t)?t.slice(1):t}cr.convertToPositivePattern=yhe;function Bhe(t){return"!"+t}cr.convertToNegativePattern=Bhe;function lm(t){return t.startsWith("!")&&t[1]!=="("}cr.isNegativePattern=lm;function kU(t){return!lm(t)}cr.isPositivePattern=kU;function whe(t){return t.filter(lm)}cr.getNegativePatterns=whe;function Qhe(t){return t.filter(kU)}cr.getPositivePatterns=Qhe;function bhe(t){return hhe(t,{flipBackslashes:!1})}cr.getBaseDirectory=bhe;function Dhe(t){return t.includes(SU)}cr.hasGlobStar=Dhe;function vU(t){return t.endsWith("/"+SU)}cr.endsWithSlashGlobStar=vU;function She(t){let e=ghe.basename(t);return vU(t)||PU(e)}cr.isAffectDepthOfReadingPattern=She;function xhe(t){return t.reduce((e,r)=>e.concat(FU(r)),[])}cr.expandPatternsWithBraceExpansion=xhe;function FU(t){return DU.braces(t,{expand:!0,nodupes:!0})}cr.expandBraceExpansion=FU;function Phe(t,e){let r=fhe.scan(t,Object.assign(Object.assign({},e),{parts:!0}));return r.parts.length===0?[t]:r.parts}cr.getPatternParts=Phe;function RU(t,e){return DU.makeRe(t,e)}cr.makeRe=RU;function khe(t,e){return t.map(r=>RU(r,e))}cr.convertPatternsToRe=khe;function vhe(t,e){return e.some(r=>r.test(t))}cr.matchAny=vhe});var MU=C(i0=>{"use strict";Object.defineProperty(i0,"__esModule",{value:!0});var Fhe=$Q();function Rhe(t){let e=Fhe(t);return t.forEach(r=>{r.once("error",i=>e.emit("error",i))}),e.once("close",()=>NU(t)),e.once("end",()=>NU(t)),e}i0.merge=Rhe;function NU(t){t.forEach(e=>e.emit("close"))}});var OU=C(cm=>{"use strict";Object.defineProperty(cm,"__esModule",{value:!0});function Lhe(t){return typeof t=="string"}cm.isString=Lhe;function Nhe(t){return t===""}cm.isEmpty=Nhe});var js=C(Gs=>{"use strict";Object.defineProperty(Gs,"__esModule",{value:!0});var Mhe=pU();Gs.array=Mhe;var Ohe=dU();Gs.errno=Ohe;var Khe=mU();Gs.fs=Khe;var The=IU();Gs.path=The;var Uhe=LU();Gs.pattern=Uhe;var Hhe=MU();Gs.stream=Hhe;var Yhe=OU();Gs.string=Yhe});var YU=C(qs=>{"use strict";Object.defineProperty(qs,"__esModule",{value:!0});var cA=js();function Ghe(t,e){let r=KU(t),i=TU(t,e.ignore),n=r.filter(l=>cA.pattern.isStaticPattern(l,e)),s=r.filter(l=>cA.pattern.isDynamicPattern(l,e)),o=n0(n,i,!1),a=n0(s,i,!0);return o.concat(a)}qs.generate=Ghe;function n0(t,e,r){let i=UU(t);return"."in i?[s0(".",t,e,r)]:HU(i,e,r)}qs.convertPatternsToTasks=n0;function KU(t){return cA.pattern.getPositivePatterns(t)}qs.getPositivePatterns=KU;function TU(t,e){return cA.pattern.getNegativePatterns(t).concat(e).map(cA.pattern.convertToPositivePattern)}qs.getNegativePatternsAsPositive=TU;function UU(t){let e={};return t.reduce((r,i)=>{let n=cA.pattern.getBaseDirectory(i);return n in r?r[n].push(i):r[n]=[i],r},e)}qs.groupPatternsByBaseDirectory=UU;function HU(t,e,r){return Object.keys(t).map(i=>s0(i,t[i],e,r))}qs.convertPatternGroupsToTasks=HU;function s0(t,e,r,i){return{dynamic:i,positive:e,negative:r,base:t,patterns:[].concat(e,r.map(cA.pattern.convertToNegativePattern))}}qs.convertPatternGroupToTask=s0});var jU=C(um=>{"use strict";Object.defineProperty(um,"__esModule",{value:!0});um.read=void 0;function jhe(t,e,r){e.fs.lstat(t,(i,n)=>{if(i!==null){GU(r,i);return}if(!n.isSymbolicLink()||!e.followSymbolicLink){o0(r,n);return}e.fs.stat(t,(s,o)=>{if(s!==null){if(e.throwErrorOnBrokenSymbolicLink){GU(r,s);return}o0(r,n);return}e.markSymbolicLink&&(o.isSymbolicLink=()=>!0),o0(r,o)})})}um.read=jhe;function GU(t,e){t(e)}function o0(t,e){t(null,e)}});var qU=C(gm=>{"use strict";Object.defineProperty(gm,"__esModule",{value:!0});gm.read=void 0;function qhe(t,e){let r=e.fs.lstatSync(t);if(!r.isSymbolicLink()||!e.followSymbolicLink)return r;try{let i=e.fs.statSync(t);return e.markSymbolicLink&&(i.isSymbolicLink=()=>!0),i}catch(i){if(!e.throwErrorOnBrokenSymbolicLink)return r;throw i}}gm.read=qhe});var JU=C(Ko=>{"use strict";Object.defineProperty(Ko,"__esModule",{value:!0});Ko.createFileSystemAdapter=Ko.FILE_SYSTEM_ADAPTER=void 0;var hm=require("fs");Ko.FILE_SYSTEM_ADAPTER={lstat:hm.lstat,stat:hm.stat,lstatSync:hm.lstatSync,statSync:hm.statSync};function Jhe(t){return t===void 0?Ko.FILE_SYSTEM_ADAPTER:Object.assign(Object.assign({},Ko.FILE_SYSTEM_ADAPTER),t)}Ko.createFileSystemAdapter=Jhe});var zU=C(a0=>{"use strict";Object.defineProperty(a0,"__esModule",{value:!0});var Whe=JU(),WU=class{constructor(e={}){this._options=e,this.followSymbolicLink=this._getValue(this._options.followSymbolicLink,!0),this.fs=Whe.createFileSystemAdapter(this._options.fs),this.markSymbolicLink=this._getValue(this._options.markSymbolicLink,!1),this.throwErrorOnBrokenSymbolicLink=this._getValue(this._options.throwErrorOnBrokenSymbolicLink,!0)}_getValue(e,r){return e!=null?e:r}};a0.default=WU});var uA=C(To=>{"use strict";Object.defineProperty(To,"__esModule",{value:!0});To.statSync=To.stat=To.Settings=void 0;var VU=jU(),zhe=qU(),A0=zU();To.Settings=A0.default;function Vhe(t,e,r){if(typeof e=="function"){VU.read(t,l0(),e);return}VU.read(t,l0(e),r)}To.stat=Vhe;function Xhe(t,e){let r=l0(e);return zhe.read(t,r)}To.statSync=Xhe;function l0(t={}){return t instanceof A0.default?t:new A0.default(t)}});var ZU=C((p6e,XU)=>{XU.exports=Zhe;function Zhe(t,e){var r,i,n,s=!0;Array.isArray(t)?(r=[],i=t.length):(n=Object.keys(t),r={},i=n.length);function o(l){function c(){e&&e(l,r),e=null}s?process.nextTick(c):c()}function a(l,c,u){r[l]=u,(--i==0||c)&&o(c)}i?n?n.forEach(function(l){t[l](function(c,u){a(l,c,u)})}):t.forEach(function(l,c){l(function(u,g){a(c,u,g)})}):o(null),s=!1}});var c0=C(fm=>{"use strict";Object.defineProperty(fm,"__esModule",{value:!0});fm.IS_SUPPORT_READDIR_WITH_FILE_TYPES=void 0;var pm=process.versions.node.split(".");if(pm[0]===void 0||pm[1]===void 0)throw new Error(`Unexpected behavior. The 'process.versions.node' variable has invalid value: ${process.versions.node}`);var _U=Number.parseInt(pm[0],10),_he=Number.parseInt(pm[1],10),$U=10,$he=10,efe=_U>$U,tfe=_U===$U&&_he>=$he;fm.IS_SUPPORT_READDIR_WITH_FILE_TYPES=efe||tfe});var t1=C(dm=>{"use strict";Object.defineProperty(dm,"__esModule",{value:!0});dm.createDirentFromStats=void 0;var e1=class{constructor(e,r){this.name=e,this.isBlockDevice=r.isBlockDevice.bind(r),this.isCharacterDevice=r.isCharacterDevice.bind(r),this.isDirectory=r.isDirectory.bind(r),this.isFIFO=r.isFIFO.bind(r),this.isFile=r.isFile.bind(r),this.isSocket=r.isSocket.bind(r),this.isSymbolicLink=r.isSymbolicLink.bind(r)}};function rfe(t,e){return new e1(t,e)}dm.createDirentFromStats=rfe});var u0=C(Cm=>{"use strict";Object.defineProperty(Cm,"__esModule",{value:!0});Cm.fs=void 0;var ife=t1();Cm.fs=ife});var g0=C(mm=>{"use strict";Object.defineProperty(mm,"__esModule",{value:!0});mm.joinPathSegments=void 0;function nfe(t,e,r){return t.endsWith(r)?t+e:t+r+e}mm.joinPathSegments=nfe});var a1=C(Uo=>{"use strict";Object.defineProperty(Uo,"__esModule",{value:!0});Uo.readdir=Uo.readdirWithFileTypes=Uo.read=void 0;var sfe=uA(),r1=ZU(),ofe=c0(),i1=u0(),n1=g0();function afe(t,e,r){if(!e.stats&&ofe.IS_SUPPORT_READDIR_WITH_FILE_TYPES){s1(t,e,r);return}o1(t,e,r)}Uo.read=afe;function s1(t,e,r){e.fs.readdir(t,{withFileTypes:!0},(i,n)=>{if(i!==null){Im(r,i);return}let s=n.map(a=>({dirent:a,name:a.name,path:n1.joinPathSegments(t,a.name,e.pathSegmentSeparator)}));if(!e.followSymbolicLinks){h0(r,s);return}let o=s.map(a=>Afe(a,e));r1(o,(a,l)=>{if(a!==null){Im(r,a);return}h0(r,l)})})}Uo.readdirWithFileTypes=s1;function Afe(t,e){return r=>{if(!t.dirent.isSymbolicLink()){r(null,t);return}e.fs.stat(t.path,(i,n)=>{if(i!==null){if(e.throwErrorOnBrokenSymbolicLink){r(i);return}r(null,t);return}t.dirent=i1.fs.createDirentFromStats(t.name,n),r(null,t)})}}function o1(t,e,r){e.fs.readdir(t,(i,n)=>{if(i!==null){Im(r,i);return}let s=n.map(o=>{let a=n1.joinPathSegments(t,o,e.pathSegmentSeparator);return l=>{sfe.stat(a,e.fsStatSettings,(c,u)=>{if(c!==null){l(c);return}let g={name:o,path:a,dirent:i1.fs.createDirentFromStats(o,u)};e.stats&&(g.stats=u),l(null,g)})}});r1(s,(o,a)=>{if(o!==null){Im(r,o);return}h0(r,a)})})}Uo.readdir=o1;function Im(t,e){t(e)}function h0(t,e){t(null,e)}});var g1=C(Ho=>{"use strict";Object.defineProperty(Ho,"__esModule",{value:!0});Ho.readdir=Ho.readdirWithFileTypes=Ho.read=void 0;var lfe=uA(),cfe=c0(),A1=u0(),l1=g0();function ufe(t,e){return!e.stats&&cfe.IS_SUPPORT_READDIR_WITH_FILE_TYPES?c1(t,e):u1(t,e)}Ho.read=ufe;function c1(t,e){return e.fs.readdirSync(t,{withFileTypes:!0}).map(i=>{let n={dirent:i,name:i.name,path:l1.joinPathSegments(t,i.name,e.pathSegmentSeparator)};if(n.dirent.isSymbolicLink()&&e.followSymbolicLinks)try{let s=e.fs.statSync(n.path);n.dirent=A1.fs.createDirentFromStats(n.name,s)}catch(s){if(e.throwErrorOnBrokenSymbolicLink)throw s}return n})}Ho.readdirWithFileTypes=c1;function u1(t,e){return e.fs.readdirSync(t).map(i=>{let n=l1.joinPathSegments(t,i,e.pathSegmentSeparator),s=lfe.statSync(n,e.fsStatSettings),o={name:i,path:n,dirent:A1.fs.createDirentFromStats(i,s)};return e.stats&&(o.stats=s),o})}Ho.readdir=u1});var h1=C(Yo=>{"use strict";Object.defineProperty(Yo,"__esModule",{value:!0});Yo.createFileSystemAdapter=Yo.FILE_SYSTEM_ADAPTER=void 0;var Zl=require("fs");Yo.FILE_SYSTEM_ADAPTER={lstat:Zl.lstat,stat:Zl.stat,lstatSync:Zl.lstatSync,statSync:Zl.statSync,readdir:Zl.readdir,readdirSync:Zl.readdirSync};function gfe(t){return t===void 0?Yo.FILE_SYSTEM_ADAPTER:Object.assign(Object.assign({},Yo.FILE_SYSTEM_ADAPTER),t)}Yo.createFileSystemAdapter=gfe});var p1=C(f0=>{"use strict";Object.defineProperty(f0,"__esModule",{value:!0});var hfe=require("path"),ffe=uA(),pfe=h1(),f1=class{constructor(e={}){this._options=e,this.followSymbolicLinks=this._getValue(this._options.followSymbolicLinks,!1),this.fs=pfe.createFileSystemAdapter(this._options.fs),this.pathSegmentSeparator=this._getValue(this._options.pathSegmentSeparator,hfe.sep),this.stats=this._getValue(this._options.stats,!1),this.throwErrorOnBrokenSymbolicLink=this._getValue(this._options.throwErrorOnBrokenSymbolicLink,!0),this.fsStatSettings=new ffe.Settings({followSymbolicLink:this.followSymbolicLinks,fs:this.fs,throwErrorOnBrokenSymbolicLink:this.throwErrorOnBrokenSymbolicLink})}_getValue(e,r){return e!=null?e:r}};f0.default=f1});var Em=C(Go=>{"use strict";Object.defineProperty(Go,"__esModule",{value:!0});Go.Settings=Go.scandirSync=Go.scandir=void 0;var d1=a1(),dfe=g1(),p0=p1();Go.Settings=p0.default;function Cfe(t,e,r){if(typeof e=="function"){d1.read(t,d0(),e);return}d1.read(t,d0(e),r)}Go.scandir=Cfe;function mfe(t,e){let r=d0(e);return dfe.read(t,r)}Go.scandirSync=mfe;function d0(t={}){return t instanceof p0.default?t:new p0.default(t)}});var m1=C((b6e,C1)=>{"use strict";function Ife(t){var e=new t,r=e;function i(){var s=e;return s.next?e=s.next:(e=new t,r=e),s.next=null,s}function n(s){r.next=s,r=s}return{get:i,release:n}}C1.exports=Ife});var E1=C((D6e,C0)=>{"use strict";var Efe=m1();function I1(t,e,r){if(typeof t=="function"&&(r=e,e=t,t=null),r<1)throw new Error("fastqueue concurrency must be greater than 1");var i=Efe(yfe),n=null,s=null,o=0,a=null,l={push:m,drain:is,saturated:is,pause:u,paused:!1,concurrency:r,running:c,resume:f,idle:p,length:g,getQueue:h,unshift:I,empty:is,kill:w,killAndDrain:x,error:F};return l;function c(){return o}function u(){l.paused=!0}function g(){for(var N=n,K=0;N;)N=N.next,K++;return K}function h(){for(var N=n,K=[];N;)K.push(N.value),N=N.next;return K}function f(){if(!!l.paused){l.paused=!1;for(var N=0;N{"use strict";Object.defineProperty(ns,"__esModule",{value:!0});ns.joinPathSegments=ns.replacePathSegmentSeparator=ns.isAppliedFilter=ns.isFatalError=void 0;function wfe(t,e){return t.errorFilter===null?!0:!t.errorFilter(e)}ns.isFatalError=wfe;function Qfe(t,e){return t===null||t(e)}ns.isAppliedFilter=Qfe;function bfe(t,e){return t.split(/[/\\]/).join(e)}ns.replacePathSegmentSeparator=bfe;function Dfe(t,e,r){return t===""?e:t.endsWith(r)?t+e:t+r+e}ns.joinPathSegments=Dfe});var I0=C(m0=>{"use strict";Object.defineProperty(m0,"__esModule",{value:!0});var Sfe=ym(),y1=class{constructor(e,r){this._root=e,this._settings=r,this._root=Sfe.replacePathSegmentSeparator(e,r.pathSegmentSeparator)}};m0.default=y1});var y0=C(E0=>{"use strict";Object.defineProperty(E0,"__esModule",{value:!0});var xfe=require("events"),Pfe=Em(),kfe=E1(),Bm=ym(),vfe=I0(),B1=class extends vfe.default{constructor(e,r){super(e,r);this._settings=r,this._scandir=Pfe.scandir,this._emitter=new xfe.EventEmitter,this._queue=kfe(this._worker.bind(this),this._settings.concurrency),this._isFatalError=!1,this._isDestroyed=!1,this._queue.drain=()=>{this._isFatalError||this._emitter.emit("end")}}read(){return this._isFatalError=!1,this._isDestroyed=!1,setImmediate(()=>{this._pushToQueue(this._root,this._settings.basePath)}),this._emitter}get isDestroyed(){return this._isDestroyed}destroy(){if(this._isDestroyed)throw new Error("The reader is already destroyed");this._isDestroyed=!0,this._queue.killAndDrain()}onEntry(e){this._emitter.on("entry",e)}onError(e){this._emitter.once("error",e)}onEnd(e){this._emitter.once("end",e)}_pushToQueue(e,r){let i={directory:e,base:r};this._queue.push(i,n=>{n!==null&&this._handleError(n)})}_worker(e,r){this._scandir(e.directory,this._settings.fsScandirSettings,(i,n)=>{if(i!==null){r(i,void 0);return}for(let s of n)this._handleEntry(s,e.base);r(null,void 0)})}_handleError(e){this._isDestroyed||!Bm.isFatalError(this._settings,e)||(this._isFatalError=!0,this._isDestroyed=!0,this._emitter.emit("error",e))}_handleEntry(e,r){if(this._isDestroyed||this._isFatalError)return;let i=e.path;r!==void 0&&(e.path=Bm.joinPathSegments(r,e.name,this._settings.pathSegmentSeparator)),Bm.isAppliedFilter(this._settings.entryFilter,e)&&this._emitEntry(e),e.dirent.isDirectory()&&Bm.isAppliedFilter(this._settings.deepFilter,e)&&this._pushToQueue(i,e.path)}_emitEntry(e){this._emitter.emit("entry",e)}};E0.default=B1});var Q1=C(B0=>{"use strict";Object.defineProperty(B0,"__esModule",{value:!0});var Ffe=y0(),w1=class{constructor(e,r){this._root=e,this._settings=r,this._reader=new Ffe.default(this._root,this._settings),this._storage=new Set}read(e){this._reader.onError(r=>{Rfe(e,r)}),this._reader.onEntry(r=>{this._storage.add(r)}),this._reader.onEnd(()=>{Lfe(e,[...this._storage])}),this._reader.read()}};B0.default=w1;function Rfe(t,e){t(e)}function Lfe(t,e){t(null,e)}});var D1=C(w0=>{"use strict";Object.defineProperty(w0,"__esModule",{value:!0});var Nfe=require("stream"),Mfe=y0(),b1=class{constructor(e,r){this._root=e,this._settings=r,this._reader=new Mfe.default(this._root,this._settings),this._stream=new Nfe.Readable({objectMode:!0,read:()=>{},destroy:()=>{this._reader.isDestroyed||this._reader.destroy()}})}read(){return this._reader.onError(e=>{this._stream.emit("error",e)}),this._reader.onEntry(e=>{this._stream.push(e)}),this._reader.onEnd(()=>{this._stream.push(null)}),this._reader.read(),this._stream}};w0.default=b1});var x1=C(Q0=>{"use strict";Object.defineProperty(Q0,"__esModule",{value:!0});var Ofe=Em(),wm=ym(),Kfe=I0(),S1=class extends Kfe.default{constructor(){super(...arguments);this._scandir=Ofe.scandirSync,this._storage=new Set,this._queue=new Set}read(){return this._pushToQueue(this._root,this._settings.basePath),this._handleQueue(),[...this._storage]}_pushToQueue(e,r){this._queue.add({directory:e,base:r})}_handleQueue(){for(let e of this._queue.values())this._handleDirectory(e.directory,e.base)}_handleDirectory(e,r){try{let i=this._scandir(e,this._settings.fsScandirSettings);for(let n of i)this._handleEntry(n,r)}catch(i){this._handleError(i)}}_handleError(e){if(!!wm.isFatalError(this._settings,e))throw e}_handleEntry(e,r){let i=e.path;r!==void 0&&(e.path=wm.joinPathSegments(r,e.name,this._settings.pathSegmentSeparator)),wm.isAppliedFilter(this._settings.entryFilter,e)&&this._pushToStorage(e),e.dirent.isDirectory()&&wm.isAppliedFilter(this._settings.deepFilter,e)&&this._pushToQueue(i,e.path)}_pushToStorage(e){this._storage.add(e)}};Q0.default=S1});var k1=C(b0=>{"use strict";Object.defineProperty(b0,"__esModule",{value:!0});var Tfe=x1(),P1=class{constructor(e,r){this._root=e,this._settings=r,this._reader=new Tfe.default(this._root,this._settings)}read(){return this._reader.read()}};b0.default=P1});var F1=C(D0=>{"use strict";Object.defineProperty(D0,"__esModule",{value:!0});var Ufe=require("path"),Hfe=Em(),v1=class{constructor(e={}){this._options=e,this.basePath=this._getValue(this._options.basePath,void 0),this.concurrency=this._getValue(this._options.concurrency,Number.POSITIVE_INFINITY),this.deepFilter=this._getValue(this._options.deepFilter,null),this.entryFilter=this._getValue(this._options.entryFilter,null),this.errorFilter=this._getValue(this._options.errorFilter,null),this.pathSegmentSeparator=this._getValue(this._options.pathSegmentSeparator,Ufe.sep),this.fsScandirSettings=new Hfe.Settings({followSymbolicLinks:this._options.followSymbolicLinks,fs:this._options.fs,pathSegmentSeparator:this._options.pathSegmentSeparator,stats:this._options.stats,throwErrorOnBrokenSymbolicLink:this._options.throwErrorOnBrokenSymbolicLink})}_getValue(e,r){return e!=null?e:r}};D0.default=v1});var x0=C(ss=>{"use strict";Object.defineProperty(ss,"__esModule",{value:!0});ss.Settings=ss.walkStream=ss.walkSync=ss.walk=void 0;var R1=Q1(),Yfe=D1(),Gfe=k1(),S0=F1();ss.Settings=S0.default;function jfe(t,e,r){if(typeof e=="function"){new R1.default(t,Qm()).read(e);return}new R1.default(t,Qm(e)).read(r)}ss.walk=jfe;function qfe(t,e){let r=Qm(e);return new Gfe.default(t,r).read()}ss.walkSync=qfe;function Jfe(t,e){let r=Qm(e);return new Yfe.default(t,r).read()}ss.walkStream=Jfe;function Qm(t={}){return t instanceof S0.default?t:new S0.default(t)}});var k0=C(P0=>{"use strict";Object.defineProperty(P0,"__esModule",{value:!0});var Wfe=require("path"),zfe=uA(),L1=js(),N1=class{constructor(e){this._settings=e,this._fsStatSettings=new zfe.Settings({followSymbolicLink:this._settings.followSymbolicLinks,fs:this._settings.fs,throwErrorOnBrokenSymbolicLink:this._settings.followSymbolicLinks})}_getFullEntryPath(e){return Wfe.resolve(this._settings.cwd,e)}_makeEntry(e,r){let i={name:r,path:r,dirent:L1.fs.createDirentFromStats(r,e)};return this._settings.stats&&(i.stats=e),i}_isFatalError(e){return!L1.errno.isEnoentCodeError(e)&&!this._settings.suppressErrors}};P0.default=N1});var F0=C(v0=>{"use strict";Object.defineProperty(v0,"__esModule",{value:!0});var Vfe=require("stream"),Xfe=uA(),Zfe=x0(),_fe=k0(),M1=class extends _fe.default{constructor(){super(...arguments);this._walkStream=Zfe.walkStream,this._stat=Xfe.stat}dynamic(e,r){return this._walkStream(e,r)}static(e,r){let i=e.map(this._getFullEntryPath,this),n=new Vfe.PassThrough({objectMode:!0});n._write=(s,o,a)=>this._getEntry(i[s],e[s],r).then(l=>{l!==null&&r.entryFilter(l)&&n.push(l),s===i.length-1&&n.end(),a()}).catch(a);for(let s=0;sthis._makeEntry(n,r)).catch(n=>{if(i.errorFilter(n))return null;throw n})}_getStat(e){return new Promise((r,i)=>{this._stat(e,this._fsStatSettings,(n,s)=>n===null?r(s):i(n))})}};v0.default=M1});var K1=C(R0=>{"use strict";Object.defineProperty(R0,"__esModule",{value:!0});var _l=js(),O1=class{constructor(e,r,i){this._patterns=e,this._settings=r,this._micromatchOptions=i,this._storage=[],this._fillStorage()}_fillStorage(){let e=_l.pattern.expandPatternsWithBraceExpansion(this._patterns);for(let r of e){let i=this._getPatternSegments(r),n=this._splitSegmentsIntoSections(i);this._storage.push({complete:n.length<=1,pattern:r,segments:i,sections:n})}}_getPatternSegments(e){return _l.pattern.getPatternParts(e,this._micromatchOptions).map(i=>_l.pattern.isDynamicPattern(i,this._settings)?{dynamic:!0,pattern:i,patternRe:_l.pattern.makeRe(i,this._micromatchOptions)}:{dynamic:!1,pattern:i})}_splitSegmentsIntoSections(e){return _l.array.splitWhen(e,r=>r.dynamic&&_l.pattern.hasGlobStar(r.pattern))}};R0.default=O1});var U1=C(L0=>{"use strict";Object.defineProperty(L0,"__esModule",{value:!0});var $fe=K1(),T1=class extends $fe.default{match(e){let r=e.split("/"),i=r.length,n=this._storage.filter(s=>!s.complete||s.segments.length>i);for(let s of n){let o=s.sections[0];if(!s.complete&&i>o.length||r.every((l,c)=>{let u=s.segments[c];return!!(u.dynamic&&u.patternRe.test(l)||!u.dynamic&&u.pattern===l)}))return!0}return!1}};L0.default=T1});var Y1=C(N0=>{"use strict";Object.defineProperty(N0,"__esModule",{value:!0});var bm=js(),epe=U1(),H1=class{constructor(e,r){this._settings=e,this._micromatchOptions=r}getFilter(e,r,i){let n=this._getMatcher(r),s=this._getNegativePatternsRe(i);return o=>this._filter(e,o,n,s)}_getMatcher(e){return new epe.default(e,this._settings,this._micromatchOptions)}_getNegativePatternsRe(e){let r=e.filter(bm.pattern.isAffectDepthOfReadingPattern);return bm.pattern.convertPatternsToRe(r,this._micromatchOptions)}_filter(e,r,i,n){let s=this._getEntryLevel(e,r.path);if(this._isSkippedByDeep(s)||this._isSkippedSymbolicLink(r))return!1;let o=bm.path.removeLeadingDotSegment(r.path);return this._isSkippedByPositivePatterns(o,i)?!1:this._isSkippedByNegativePatterns(o,n)}_isSkippedByDeep(e){return e>=this._settings.deep}_isSkippedSymbolicLink(e){return!this._settings.followSymbolicLinks&&e.dirent.isSymbolicLink()}_getEntryLevel(e,r){let i=e.split("/").length;return r.split("/").length-(e===""?0:i)}_isSkippedByPositivePatterns(e,r){return!this._settings.baseNameMatch&&!r.match(e)}_isSkippedByNegativePatterns(e,r){return!bm.pattern.matchAny(e,r)}};N0.default=H1});var j1=C(M0=>{"use strict";Object.defineProperty(M0,"__esModule",{value:!0});var fh=js(),G1=class{constructor(e,r){this._settings=e,this._micromatchOptions=r,this.index=new Map}getFilter(e,r){let i=fh.pattern.convertPatternsToRe(e,this._micromatchOptions),n=fh.pattern.convertPatternsToRe(r,this._micromatchOptions);return s=>this._filter(s,i,n)}_filter(e,r,i){if(this._settings.unique){if(this._isDuplicateEntry(e))return!1;this._createIndexRecord(e)}if(this._onlyFileFilter(e)||this._onlyDirectoryFilter(e)||this._isSkippedByAbsoluteNegativePatterns(e,i))return!1;let n=this._settings.baseNameMatch?e.name:e.path;return this._isMatchToPatterns(n,r)&&!this._isMatchToPatterns(e.path,i)}_isDuplicateEntry(e){return this.index.has(e.path)}_createIndexRecord(e){this.index.set(e.path,void 0)}_onlyFileFilter(e){return this._settings.onlyFiles&&!e.dirent.isFile()}_onlyDirectoryFilter(e){return this._settings.onlyDirectories&&!e.dirent.isDirectory()}_isSkippedByAbsoluteNegativePatterns(e,r){if(!this._settings.absolute)return!1;let i=fh.path.makeAbsolute(this._settings.cwd,e.path);return this._isMatchToPatterns(i,r)}_isMatchToPatterns(e,r){let i=fh.path.removeLeadingDotSegment(e);return fh.pattern.matchAny(i,r)}};M0.default=G1});var J1=C(O0=>{"use strict";Object.defineProperty(O0,"__esModule",{value:!0});var tpe=js(),q1=class{constructor(e){this._settings=e}getFilter(){return e=>this._isNonFatalError(e)}_isNonFatalError(e){return tpe.errno.isEnoentCodeError(e)||this._settings.suppressErrors}};O0.default=q1});var V1=C(K0=>{"use strict";Object.defineProperty(K0,"__esModule",{value:!0});var W1=js(),z1=class{constructor(e){this._settings=e}getTransformer(){return e=>this._transform(e)}_transform(e){let r=e.path;return this._settings.absolute&&(r=W1.path.makeAbsolute(this._settings.cwd,r),r=W1.path.unixify(r)),this._settings.markDirectories&&e.dirent.isDirectory()&&(r+="/"),this._settings.objectMode?Object.assign(Object.assign({},e),{path:r}):r}};K0.default=z1});var Dm=C(T0=>{"use strict";Object.defineProperty(T0,"__esModule",{value:!0});var rpe=require("path"),ipe=Y1(),npe=j1(),spe=J1(),ope=V1(),X1=class{constructor(e){this._settings=e,this.errorFilter=new spe.default(this._settings),this.entryFilter=new npe.default(this._settings,this._getMicromatchOptions()),this.deepFilter=new ipe.default(this._settings,this._getMicromatchOptions()),this.entryTransformer=new ope.default(this._settings)}_getRootDirectory(e){return rpe.resolve(this._settings.cwd,e.base)}_getReaderOptions(e){let r=e.base==="."?"":e.base;return{basePath:r,pathSegmentSeparator:"/",concurrency:this._settings.concurrency,deepFilter:this.deepFilter.getFilter(r,e.positive,e.negative),entryFilter:this.entryFilter.getFilter(e.positive,e.negative),errorFilter:this.errorFilter.getFilter(),followSymbolicLinks:this._settings.followSymbolicLinks,fs:this._settings.fs,stats:this._settings.stats,throwErrorOnBrokenSymbolicLink:this._settings.throwErrorOnBrokenSymbolicLink,transform:this.entryTransformer.getTransformer()}}_getMicromatchOptions(){return{dot:this._settings.dot,matchBase:this._settings.baseNameMatch,nobrace:!this._settings.braceExpansion,nocase:!this._settings.caseSensitiveMatch,noext:!this._settings.extglob,noglobstar:!this._settings.globstar,posix:!0,strictSlashes:!1}}};T0.default=X1});var _1=C(U0=>{"use strict";Object.defineProperty(U0,"__esModule",{value:!0});var ape=F0(),Ape=Dm(),Z1=class extends Ape.default{constructor(){super(...arguments);this._reader=new ape.default(this._settings)}read(e){let r=this._getRootDirectory(e),i=this._getReaderOptions(e),n=[];return new Promise((s,o)=>{let a=this.api(r,e,i);a.once("error",o),a.on("data",l=>n.push(i.transform(l))),a.once("end",()=>s(n))})}api(e,r,i){return r.dynamic?this._reader.dynamic(e,i):this._reader.static(r.patterns,i)}};U0.default=Z1});var e2=C(H0=>{"use strict";Object.defineProperty(H0,"__esModule",{value:!0});var lpe=require("stream"),cpe=F0(),upe=Dm(),$1=class extends upe.default{constructor(){super(...arguments);this._reader=new cpe.default(this._settings)}read(e){let r=this._getRootDirectory(e),i=this._getReaderOptions(e),n=this.api(r,e,i),s=new lpe.Readable({objectMode:!0,read:()=>{}});return n.once("error",o=>s.emit("error",o)).on("data",o=>s.emit("data",i.transform(o))).once("end",()=>s.emit("end")),s.once("close",()=>n.destroy()),s}api(e,r,i){return r.dynamic?this._reader.dynamic(e,i):this._reader.static(r.patterns,i)}};H0.default=$1});var r2=C(Y0=>{"use strict";Object.defineProperty(Y0,"__esModule",{value:!0});var gpe=uA(),hpe=x0(),fpe=k0(),t2=class extends fpe.default{constructor(){super(...arguments);this._walkSync=hpe.walkSync,this._statSync=gpe.statSync}dynamic(e,r){return this._walkSync(e,r)}static(e,r){let i=[];for(let n of e){let s=this._getFullEntryPath(n),o=this._getEntry(s,n,r);o===null||!r.entryFilter(o)||i.push(o)}return i}_getEntry(e,r,i){try{let n=this._getStat(e);return this._makeEntry(n,r)}catch(n){if(i.errorFilter(n))return null;throw n}}_getStat(e){return this._statSync(e,this._fsStatSettings)}};Y0.default=t2});var n2=C(G0=>{"use strict";Object.defineProperty(G0,"__esModule",{value:!0});var ppe=r2(),dpe=Dm(),i2=class extends dpe.default{constructor(){super(...arguments);this._reader=new ppe.default(this._settings)}read(e){let r=this._getRootDirectory(e),i=this._getReaderOptions(e);return this.api(r,e,i).map(i.transform)}api(e,r,i){return r.dynamic?this._reader.dynamic(e,i):this._reader.static(r.patterns,i)}};G0.default=i2});var o2=C(ph=>{"use strict";Object.defineProperty(ph,"__esModule",{value:!0});var $l=require("fs"),Cpe=require("os"),mpe=Cpe.cpus().length;ph.DEFAULT_FILE_SYSTEM_ADAPTER={lstat:$l.lstat,lstatSync:$l.lstatSync,stat:$l.stat,statSync:$l.statSync,readdir:$l.readdir,readdirSync:$l.readdirSync};var s2=class{constructor(e={}){this._options=e,this.absolute=this._getValue(this._options.absolute,!1),this.baseNameMatch=this._getValue(this._options.baseNameMatch,!1),this.braceExpansion=this._getValue(this._options.braceExpansion,!0),this.caseSensitiveMatch=this._getValue(this._options.caseSensitiveMatch,!0),this.concurrency=this._getValue(this._options.concurrency,mpe),this.cwd=this._getValue(this._options.cwd,process.cwd()),this.deep=this._getValue(this._options.deep,Infinity),this.dot=this._getValue(this._options.dot,!1),this.extglob=this._getValue(this._options.extglob,!0),this.followSymbolicLinks=this._getValue(this._options.followSymbolicLinks,!0),this.fs=this._getFileSystemMethods(this._options.fs),this.globstar=this._getValue(this._options.globstar,!0),this.ignore=this._getValue(this._options.ignore,[]),this.markDirectories=this._getValue(this._options.markDirectories,!1),this.objectMode=this._getValue(this._options.objectMode,!1),this.onlyDirectories=this._getValue(this._options.onlyDirectories,!1),this.onlyFiles=this._getValue(this._options.onlyFiles,!0),this.stats=this._getValue(this._options.stats,!1),this.suppressErrors=this._getValue(this._options.suppressErrors,!1),this.throwErrorOnBrokenSymbolicLink=this._getValue(this._options.throwErrorOnBrokenSymbolicLink,!1),this.unique=this._getValue(this._options.unique,!0),this.onlyDirectories&&(this.onlyFiles=!1),this.stats&&(this.objectMode=!0)}_getValue(e,r){return e===void 0?r:e}_getFileSystemMethods(e={}){return Object.assign(Object.assign({},ph.DEFAULT_FILE_SYSTEM_ADAPTER),e)}};ph.default=s2});var Sm=C((X6e,a2)=>{"use strict";var A2=YU(),Ipe=_1(),Epe=e2(),ype=n2(),j0=o2(),gA=js();async function J0(t,e){ec(t);let r=q0(t,Ipe.default,e),i=await Promise.all(r);return gA.array.flatten(i)}(function(t){function e(o,a){ec(o);let l=q0(o,ype.default,a);return gA.array.flatten(l)}t.sync=e;function r(o,a){ec(o);let l=q0(o,Epe.default,a);return gA.stream.merge(l)}t.stream=r;function i(o,a){ec(o);let l=[].concat(o),c=new j0.default(a);return A2.generate(l,c)}t.generateTasks=i;function n(o,a){ec(o);let l=new j0.default(a);return gA.pattern.isDynamicPattern(o,l)}t.isDynamicPattern=n;function s(o){return ec(o),gA.path.escape(o)}t.escapePath=s})(J0||(J0={}));function q0(t,e,r){let i=[].concat(t),n=new j0.default(r),s=A2.generate(i,n),o=new e(n);return s.map(o.read,o)}function ec(t){if(![].concat(t).every(i=>gA.string.isString(i)&&!gA.string.isEmpty(i)))throw new TypeError("Patterns must be a string (non empty) or an array of strings")}a2.exports=J0});var c2=C(hA=>{"use strict";var{promisify:Bpe}=require("util"),l2=require("fs");async function W0(t,e,r){if(typeof r!="string")throw new TypeError(`Expected a string, got ${typeof r}`);try{return(await Bpe(l2[t])(r))[e]()}catch(i){if(i.code==="ENOENT")return!1;throw i}}function z0(t,e,r){if(typeof r!="string")throw new TypeError(`Expected a string, got ${typeof r}`);try{return l2[t](r)[e]()}catch(i){if(i.code==="ENOENT")return!1;throw i}}hA.isFile=W0.bind(null,"stat","isFile");hA.isDirectory=W0.bind(null,"stat","isDirectory");hA.isSymlink=W0.bind(null,"lstat","isSymbolicLink");hA.isFileSync=z0.bind(null,"statSync","isFile");hA.isDirectorySync=z0.bind(null,"statSync","isDirectory");hA.isSymlinkSync=z0.bind(null,"lstatSync","isSymbolicLink")});var p2=C((_6e,V0)=>{"use strict";var fA=require("path"),u2=c2(),g2=t=>t.length>1?`{${t.join(",")}}`:t[0],h2=(t,e)=>{let r=t[0]==="!"?t.slice(1):t;return fA.isAbsolute(r)?r:fA.join(e,r)},wpe=(t,e)=>fA.extname(t)?`**/${t}`:`**/${t}.${g2(e)}`,f2=(t,e)=>{if(e.files&&!Array.isArray(e.files))throw new TypeError(`Expected \`files\` to be of type \`Array\` but received type \`${typeof e.files}\``);if(e.extensions&&!Array.isArray(e.extensions))throw new TypeError(`Expected \`extensions\` to be of type \`Array\` but received type \`${typeof e.extensions}\``);return e.files&&e.extensions?e.files.map(r=>fA.posix.join(t,wpe(r,e.extensions))):e.files?e.files.map(r=>fA.posix.join(t,`**/${r}`)):e.extensions?[fA.posix.join(t,`**/*.${g2(e.extensions)}`)]:[fA.posix.join(t,"**")]};V0.exports=async(t,e)=>{if(e=k({cwd:process.cwd()},e),typeof e.cwd!="string")throw new TypeError(`Expected \`cwd\` to be of type \`string\` but received type \`${typeof e.cwd}\``);let r=await Promise.all([].concat(t).map(async i=>await u2.isDirectory(h2(i,e.cwd))?f2(i,e):i));return[].concat.apply([],r)};V0.exports.sync=(t,e)=>{if(e=k({cwd:process.cwd()},e),typeof e.cwd!="string")throw new TypeError(`Expected \`cwd\` to be of type \`string\` but received type \`${typeof e.cwd}\``);let r=[].concat(t).map(i=>u2.isDirectorySync(h2(i,e.cwd))?f2(i,e):i);return[].concat.apply([],r)}});var w2=C(($6e,d2)=>{function C2(t){return Array.isArray(t)?t:[t]}var Qpe=/^\s+$/,bpe=/^\\!/,Dpe=/^\\#/,Spe=/\r?\n/g,xpe=/^\.*\/|^\.+$/,X0="/",m2=typeof Symbol!="undefined"?Symbol.for("node-ignore"):"node-ignore",Ppe=(t,e,r)=>Object.defineProperty(t,e,{value:r}),kpe=/([0-z])-([0-z])/g,vpe=t=>t.replace(kpe,(e,r,i)=>r.charCodeAt(0)<=i.charCodeAt(0)?e:""),Fpe=[[/\\?\s+$/,t=>t.indexOf("\\")===0?" ":""],[/\\\s/g,()=>" "],[/[\\^$.|*+(){]/g,t=>`\\${t}`],[/\[([^\]/]*)($|\])/g,(t,e,r)=>r==="]"?`[${vpe(e)}]`:`\\${t}`],[/(?!\\)\?/g,()=>"[^/]"],[/^\//,()=>"^"],[/\//g,()=>"\\/"],[/^\^*\\\*\\\*\\\//,()=>"^(?:.*\\/)?"],[/(?:[^*])$/,t=>/\/$/.test(t)?`${t}$`:`${t}(?=$|\\/$)`],[/^(?=[^^])/,function(){return/\/(?!$)/.test(this)?"^":"(?:^|\\/)"}],[/\\\/\\\*\\\*(?=\\\/|$)/g,(t,e,r)=>e+6`${e}[^\\/]*`],[/(\^|\\\/)?\\\*$/,(t,e)=>`${e?`${e}[^/]+`:"[^/]*"}(?=$|\\/$)`],[/\\\\\\/g,()=>"\\"]],I2=Object.create(null),Rpe=(t,e,r)=>{let i=I2[t];if(i)return i;let n=Fpe.reduce((s,o)=>s.replace(o[0],o[1].bind(t)),t);return I2[t]=r?new RegExp(n,"i"):new RegExp(n)},Z0=t=>typeof t=="string",Lpe=t=>t&&Z0(t)&&!Qpe.test(t)&&t.indexOf("#")!==0,Npe=t=>t.split(Spe),E2=class{constructor(e,r,i,n){this.origin=e,this.pattern=r,this.negative=i,this.regex=n}},Mpe=(t,e)=>{let r=t,i=!1;t.indexOf("!")===0&&(i=!0,t=t.substr(1)),t=t.replace(bpe,"!").replace(Dpe,"#");let n=Rpe(t,i,e);return new E2(r,t,i,n)},Ope=(t,e)=>{throw new e(t)},Js=(t,e,r)=>Z0(t)?t?Js.isNotRelative(t)?r(`path should be a \`path.relative()\`d string, but got "${e}"`,RangeError):!0:r("path must not be empty",TypeError):r(`path must be a string, but got \`${e}\``,TypeError),y2=t=>xpe.test(t);Js.isNotRelative=y2;Js.convert=t=>t;var B2=class{constructor({ignorecase:e=!0}={}){this._rules=[],this._ignorecase=e,Ppe(this,m2,!0),this._initCache()}_initCache(){this._ignoreCache=Object.create(null),this._testCache=Object.create(null)}_addPattern(e){if(e&&e[m2]){this._rules=this._rules.concat(e._rules),this._added=!0;return}if(Lpe(e)){let r=Mpe(e,this._ignorecase);this._added=!0,this._rules.push(r)}}add(e){return this._added=!1,C2(Z0(e)?Npe(e):e).forEach(this._addPattern,this),this._added&&this._initCache(),this}addPattern(e){return this.add(e)}_testOne(e,r){let i=!1,n=!1;return this._rules.forEach(s=>{let{negative:o}=s;if(n===o&&i!==n||o&&!i&&!n&&!r)return;s.regex.test(e)&&(i=!o,n=o)}),{ignored:i,unignored:n}}_test(e,r,i,n){let s=e&&Js.convert(e);return Js(s,e,Ope),this._t(s,r,i,n)}_t(e,r,i,n){if(e in r)return r[e];if(n||(n=e.split(X0)),n.pop(),!n.length)return r[e]=this._testOne(e,i);let s=this._t(n.join(X0)+X0,r,i,n);return r[e]=s.ignored?s:this._testOne(e,i)}ignores(e){return this._test(e,this._ignoreCache,!1).ignored}createFilter(){return e=>!this.ignores(e)}filter(e){return C2(e).filter(this.createFilter())}test(e){return this._test(e,this._testCache,!0)}},xm=t=>new B2(t),Kpe=()=>!1,Tpe=t=>Js(t&&Js.convert(t),t,Kpe);xm.isPathValid=Tpe;xm.default=xm;d2.exports=xm;if(typeof process!="undefined"&&(process.env&&process.env.IGNORE_TEST_WIN32||process.platform==="win32")){let t=r=>/^\\\\\?\\/.test(r)||/["<>|\u0000-\u001F]+/u.test(r)?r:r.replace(/\\/g,"/");Js.convert=t;let e=/^[a-z]:\//i;Js.isNotRelative=r=>e.test(r)||y2(r)}});var b2=C((eVe,Q2)=>{"use strict";Q2.exports=t=>{let e=/^\\\\\?\\/.test(t),r=/[^\u0000-\u0080]+/.test(t);return e||r?t:t.replace(/\\/g,"/")}});var F2=C((tVe,_0)=>{"use strict";var{promisify:Upe}=require("util"),D2=require("fs"),Ws=require("path"),S2=Sm(),Hpe=w2(),dh=b2(),x2=["**/node_modules/**","**/flow-typed/**","**/coverage/**","**/.git"],Ype=Upe(D2.readFile),Gpe=t=>e=>e.startsWith("!")?"!"+Ws.posix.join(t,e.slice(1)):Ws.posix.join(t,e),jpe=(t,e)=>{let r=dh(Ws.relative(e.cwd,Ws.dirname(e.fileName)));return t.split(/\r?\n/).filter(Boolean).filter(i=>!i.startsWith("#")).map(Gpe(r))},P2=t=>{let e=Hpe();for(let r of t)e.add(jpe(r.content,{cwd:r.cwd,fileName:r.filePath}));return e},qpe=(t,e)=>{if(t=dh(t),Ws.isAbsolute(e)){if(dh(e).startsWith(t))return e;throw new Error(`Path ${e} is not in cwd ${t}`)}return Ws.join(t,e)},k2=(t,e)=>r=>t.ignores(dh(Ws.relative(e,qpe(e,r.path||r)))),Jpe=async(t,e)=>{let r=Ws.join(e,t),i=await Ype(r,"utf8");return{cwd:e,filePath:r,content:i}},Wpe=(t,e)=>{let r=Ws.join(e,t),i=D2.readFileSync(r,"utf8");return{cwd:e,filePath:r,content:i}},v2=({ignore:t=[],cwd:e=dh(process.cwd())}={})=>({ignore:t,cwd:e});_0.exports=async t=>{t=v2(t);let e=await S2("**/.gitignore",{ignore:x2.concat(t.ignore),cwd:t.cwd}),r=await Promise.all(e.map(n=>Jpe(n,t.cwd))),i=P2(r);return k2(i,t.cwd)};_0.exports.sync=t=>{t=v2(t);let r=S2.sync("**/.gitignore",{ignore:x2.concat(t.ignore),cwd:t.cwd}).map(n=>Wpe(n,t.cwd)),i=P2(r);return k2(i,t.cwd)}});var M2=C((rVe,R2)=>{"use strict";var{Transform:zpe}=require("stream"),$0=class extends zpe{constructor(){super({objectMode:!0})}},L2=class extends $0{constructor(e){super();this._filter=e}_transform(e,r,i){this._filter(e)&&this.push(e),i()}},N2=class extends $0{constructor(){super();this._pushed=new Set}_transform(e,r,i){this._pushed.has(e)||(this.push(e),this._pushed.add(e)),i()}};R2.exports={FilterStream:L2,UniqueStream:N2}});var ib=C((iVe,pA)=>{"use strict";var O2=require("fs"),Pm=uU(),Vpe=$Q(),km=Sm(),vm=p2(),eb=F2(),{FilterStream:Xpe,UniqueStream:Zpe}=M2(),K2=()=>!1,T2=t=>t[0]==="!",_pe=t=>{if(!t.every(e=>typeof e=="string"))throw new TypeError("Patterns must be a string or an array of strings")},$pe=(t={})=>{if(!t.cwd)return;let e;try{e=O2.statSync(t.cwd)}catch{return}if(!e.isDirectory())throw new Error("The `cwd` option must be a path to a directory")},ede=t=>t.stats instanceof O2.Stats?t.path:t,Fm=(t,e)=>{t=Pm([].concat(t)),_pe(t),$pe(e);let r=[];e=k({ignore:[],expandDirectories:!0},e);for(let[i,n]of t.entries()){if(T2(n))continue;let s=t.slice(i).filter(a=>T2(a)).map(a=>a.slice(1)),o=V(k({},e),{ignore:e.ignore.concat(s)});r.push({pattern:n,options:o})}return r},tde=(t,e)=>{let r={};return t.options.cwd&&(r.cwd=t.options.cwd),Array.isArray(t.options.expandDirectories)?r=V(k({},r),{files:t.options.expandDirectories}):typeof t.options.expandDirectories=="object"&&(r=k(k({},r),t.options.expandDirectories)),e(t.pattern,r)},tb=(t,e)=>t.options.expandDirectories?tde(t,e):[t.pattern],U2=t=>t&&t.gitignore?eb.sync({cwd:t.cwd,ignore:t.ignore}):K2,rb=t=>e=>{let{options:r}=t;return r.ignore&&Array.isArray(r.ignore)&&r.expandDirectories&&(r.ignore=vm.sync(r.ignore)),{pattern:e,options:r}};pA.exports=async(t,e)=>{let r=Fm(t,e),i=async()=>e&&e.gitignore?eb({cwd:e.cwd,ignore:e.ignore}):K2,n=async()=>{let l=await Promise.all(r.map(async c=>{let u=await tb(c,vm);return Promise.all(u.map(rb(c)))}));return Pm(...l)},[s,o]=await Promise.all([i(),n()]),a=await Promise.all(o.map(l=>km(l.pattern,l.options)));return Pm(...a).filter(l=>!s(ede(l)))};pA.exports.sync=(t,e)=>{let r=Fm(t,e),i=[];for(let o of r){let a=tb(o,vm.sync).map(rb(o));i.push(...a)}let n=U2(e),s=[];for(let o of i)s=Pm(s,km.sync(o.pattern,o.options));return s.filter(o=>!n(o))};pA.exports.stream=(t,e)=>{let r=Fm(t,e),i=[];for(let a of r){let l=tb(a,vm.sync).map(rb(a));i.push(...l)}let n=U2(e),s=new Xpe(a=>!n(a)),o=new Zpe;return Vpe(i.map(a=>km.stream(a.pattern,a.options))).pipe(s).pipe(o)};pA.exports.generateGlobTasks=Fm;pA.exports.hasMagic=(t,e)=>[].concat(t).some(r=>km.isDynamicPattern(r,e));pA.exports.gitignore=eb});var Vs=C((zs,qm)=>{"use strict";Object.defineProperty(zs,"__esModule",{value:!0});var V2=["Int8Array","Uint8Array","Uint8ClampedArray","Int16Array","Uint16Array","Int32Array","Uint32Array","Float32Array","Float64Array","BigInt64Array","BigUint64Array"];function fde(t){return V2.includes(t)}var pde=["Function","Generator","AsyncGenerator","GeneratorFunction","AsyncGeneratorFunction","AsyncFunction","Observable","Array","Buffer","Object","RegExp","Date","Error","Map","Set","WeakMap","WeakSet","ArrayBuffer","SharedArrayBuffer","DataView","Promise","URL","HTMLElement",...V2];function dde(t){return pde.includes(t)}var Cde=["null","undefined","string","number","bigint","boolean","symbol"];function mde(t){return Cde.includes(t)}function ac(t){return e=>typeof e===t}var{toString:X2}=Object.prototype,Sh=t=>{let e=X2.call(t).slice(8,-1);if(/HTML\w+Element/.test(e)&&q.domElement(t))return"HTMLElement";if(dde(e))return e},Vt=t=>e=>Sh(e)===t;function q(t){if(t===null)return"null";switch(typeof t){case"undefined":return"undefined";case"string":return"string";case"number":return"number";case"boolean":return"boolean";case"function":return"Function";case"bigint":return"bigint";case"symbol":return"symbol";default:}if(q.observable(t))return"Observable";if(q.array(t))return"Array";if(q.buffer(t))return"Buffer";let e=Sh(t);if(e)return e;if(t instanceof String||t instanceof Boolean||t instanceof Number)throw new TypeError("Please don't use object wrappers for primitive types");return"Object"}q.undefined=ac("undefined");q.string=ac("string");var Ide=ac("number");q.number=t=>Ide(t)&&!q.nan(t);q.bigint=ac("bigint");q.function_=ac("function");q.null_=t=>t===null;q.class_=t=>q.function_(t)&&t.toString().startsWith("class ");q.boolean=t=>t===!0||t===!1;q.symbol=ac("symbol");q.numericString=t=>q.string(t)&&!q.emptyStringOrWhitespace(t)&&!Number.isNaN(Number(t));q.array=(t,e)=>Array.isArray(t)?q.function_(e)?t.every(e):!0:!1;q.buffer=t=>{var e,r,i,n;return(n=(i=(r=(e=t)===null||e===void 0?void 0:e.constructor)===null||r===void 0?void 0:r.isBuffer)===null||i===void 0?void 0:i.call(r,t))!==null&&n!==void 0?n:!1};q.nullOrUndefined=t=>q.null_(t)||q.undefined(t);q.object=t=>!q.null_(t)&&(typeof t=="object"||q.function_(t));q.iterable=t=>{var e;return q.function_((e=t)===null||e===void 0?void 0:e[Symbol.iterator])};q.asyncIterable=t=>{var e;return q.function_((e=t)===null||e===void 0?void 0:e[Symbol.asyncIterator])};q.generator=t=>q.iterable(t)&&q.function_(t.next)&&q.function_(t.throw);q.asyncGenerator=t=>q.asyncIterable(t)&&q.function_(t.next)&&q.function_(t.throw);q.nativePromise=t=>Vt("Promise")(t);var Ede=t=>{var e,r;return q.function_((e=t)===null||e===void 0?void 0:e.then)&&q.function_((r=t)===null||r===void 0?void 0:r.catch)};q.promise=t=>q.nativePromise(t)||Ede(t);q.generatorFunction=Vt("GeneratorFunction");q.asyncGeneratorFunction=t=>Sh(t)==="AsyncGeneratorFunction";q.asyncFunction=t=>Sh(t)==="AsyncFunction";q.boundFunction=t=>q.function_(t)&&!t.hasOwnProperty("prototype");q.regExp=Vt("RegExp");q.date=Vt("Date");q.error=Vt("Error");q.map=t=>Vt("Map")(t);q.set=t=>Vt("Set")(t);q.weakMap=t=>Vt("WeakMap")(t);q.weakSet=t=>Vt("WeakSet")(t);q.int8Array=Vt("Int8Array");q.uint8Array=Vt("Uint8Array");q.uint8ClampedArray=Vt("Uint8ClampedArray");q.int16Array=Vt("Int16Array");q.uint16Array=Vt("Uint16Array");q.int32Array=Vt("Int32Array");q.uint32Array=Vt("Uint32Array");q.float32Array=Vt("Float32Array");q.float64Array=Vt("Float64Array");q.bigInt64Array=Vt("BigInt64Array");q.bigUint64Array=Vt("BigUint64Array");q.arrayBuffer=Vt("ArrayBuffer");q.sharedArrayBuffer=Vt("SharedArrayBuffer");q.dataView=Vt("DataView");q.directInstanceOf=(t,e)=>Object.getPrototypeOf(t)===e.prototype;q.urlInstance=t=>Vt("URL")(t);q.urlString=t=>{if(!q.string(t))return!1;try{return new URL(t),!0}catch(e){return!1}};q.truthy=t=>Boolean(t);q.falsy=t=>!t;q.nan=t=>Number.isNaN(t);q.primitive=t=>q.null_(t)||mde(typeof t);q.integer=t=>Number.isInteger(t);q.safeInteger=t=>Number.isSafeInteger(t);q.plainObject=t=>{if(X2.call(t)!=="[object Object]")return!1;let e=Object.getPrototypeOf(t);return e===null||e===Object.getPrototypeOf({})};q.typedArray=t=>fde(Sh(t));var yde=t=>q.safeInteger(t)&&t>=0;q.arrayLike=t=>!q.nullOrUndefined(t)&&!q.function_(t)&&yde(t.length);q.inRange=(t,e)=>{if(q.number(e))return t>=Math.min(0,e)&&t<=Math.max(e,0);if(q.array(e)&&e.length===2)return t>=Math.min(...e)&&t<=Math.max(...e);throw new TypeError(`Invalid range: ${JSON.stringify(e)}`)};var Bde=1,wde=["innerHTML","ownerDocument","style","attributes","nodeValue"];q.domElement=t=>q.object(t)&&t.nodeType===Bde&&q.string(t.nodeName)&&!q.plainObject(t)&&wde.every(e=>e in t);q.observable=t=>{var e,r,i,n;return t?t===((r=(e=t)[Symbol.observable])===null||r===void 0?void 0:r.call(e))||t===((n=(i=t)["@@observable"])===null||n===void 0?void 0:n.call(i)):!1};q.nodeStream=t=>q.object(t)&&q.function_(t.pipe)&&!q.observable(t);q.infinite=t=>t===Infinity||t===-Infinity;var Z2=t=>e=>q.integer(e)&&Math.abs(e%2)===t;q.evenInteger=Z2(0);q.oddInteger=Z2(1);q.emptyArray=t=>q.array(t)&&t.length===0;q.nonEmptyArray=t=>q.array(t)&&t.length>0;q.emptyString=t=>q.string(t)&&t.length===0;q.nonEmptyString=t=>q.string(t)&&t.length>0;var Qde=t=>q.string(t)&&!/\S/.test(t);q.emptyStringOrWhitespace=t=>q.emptyString(t)||Qde(t);q.emptyObject=t=>q.object(t)&&!q.map(t)&&!q.set(t)&&Object.keys(t).length===0;q.nonEmptyObject=t=>q.object(t)&&!q.map(t)&&!q.set(t)&&Object.keys(t).length>0;q.emptySet=t=>q.set(t)&&t.size===0;q.nonEmptySet=t=>q.set(t)&&t.size>0;q.emptyMap=t=>q.map(t)&&t.size===0;q.nonEmptyMap=t=>q.map(t)&&t.size>0;var _2=(t,e,r)=>{if(!q.function_(e))throw new TypeError(`Invalid predicate: ${JSON.stringify(e)}`);if(r.length===0)throw new TypeError("Invalid number of values");return t.call(r,e)};q.any=(t,...e)=>(q.array(t)?t:[t]).some(i=>_2(Array.prototype.some,i,e));q.all=(t,...e)=>_2(Array.prototype.every,t,e);var Re=(t,e,r)=>{if(!t)throw new TypeError(`Expected value which is \`${e}\`, received value of type \`${q(r)}\`.`)};zs.assert={undefined:t=>Re(q.undefined(t),"undefined",t),string:t=>Re(q.string(t),"string",t),number:t=>Re(q.number(t),"number",t),bigint:t=>Re(q.bigint(t),"bigint",t),function_:t=>Re(q.function_(t),"Function",t),null_:t=>Re(q.null_(t),"null",t),class_:t=>Re(q.class_(t),"Class",t),boolean:t=>Re(q.boolean(t),"boolean",t),symbol:t=>Re(q.symbol(t),"symbol",t),numericString:t=>Re(q.numericString(t),"string with a number",t),array:(t,e)=>{Re(q.array(t),"Array",t),e&&t.forEach(e)},buffer:t=>Re(q.buffer(t),"Buffer",t),nullOrUndefined:t=>Re(q.nullOrUndefined(t),"null or undefined",t),object:t=>Re(q.object(t),"Object",t),iterable:t=>Re(q.iterable(t),"Iterable",t),asyncIterable:t=>Re(q.asyncIterable(t),"AsyncIterable",t),generator:t=>Re(q.generator(t),"Generator",t),asyncGenerator:t=>Re(q.asyncGenerator(t),"AsyncGenerator",t),nativePromise:t=>Re(q.nativePromise(t),"native Promise",t),promise:t=>Re(q.promise(t),"Promise",t),generatorFunction:t=>Re(q.generatorFunction(t),"GeneratorFunction",t),asyncGeneratorFunction:t=>Re(q.asyncGeneratorFunction(t),"AsyncGeneratorFunction",t),asyncFunction:t=>Re(q.asyncFunction(t),"AsyncFunction",t),boundFunction:t=>Re(q.boundFunction(t),"Function",t),regExp:t=>Re(q.regExp(t),"RegExp",t),date:t=>Re(q.date(t),"Date",t),error:t=>Re(q.error(t),"Error",t),map:t=>Re(q.map(t),"Map",t),set:t=>Re(q.set(t),"Set",t),weakMap:t=>Re(q.weakMap(t),"WeakMap",t),weakSet:t=>Re(q.weakSet(t),"WeakSet",t),int8Array:t=>Re(q.int8Array(t),"Int8Array",t),uint8Array:t=>Re(q.uint8Array(t),"Uint8Array",t),uint8ClampedArray:t=>Re(q.uint8ClampedArray(t),"Uint8ClampedArray",t),int16Array:t=>Re(q.int16Array(t),"Int16Array",t),uint16Array:t=>Re(q.uint16Array(t),"Uint16Array",t),int32Array:t=>Re(q.int32Array(t),"Int32Array",t),uint32Array:t=>Re(q.uint32Array(t),"Uint32Array",t),float32Array:t=>Re(q.float32Array(t),"Float32Array",t),float64Array:t=>Re(q.float64Array(t),"Float64Array",t),bigInt64Array:t=>Re(q.bigInt64Array(t),"BigInt64Array",t),bigUint64Array:t=>Re(q.bigUint64Array(t),"BigUint64Array",t),arrayBuffer:t=>Re(q.arrayBuffer(t),"ArrayBuffer",t),sharedArrayBuffer:t=>Re(q.sharedArrayBuffer(t),"SharedArrayBuffer",t),dataView:t=>Re(q.dataView(t),"DataView",t),urlInstance:t=>Re(q.urlInstance(t),"URL",t),urlString:t=>Re(q.urlString(t),"string with a URL",t),truthy:t=>Re(q.truthy(t),"truthy",t),falsy:t=>Re(q.falsy(t),"falsy",t),nan:t=>Re(q.nan(t),"NaN",t),primitive:t=>Re(q.primitive(t),"primitive",t),integer:t=>Re(q.integer(t),"integer",t),safeInteger:t=>Re(q.safeInteger(t),"integer",t),plainObject:t=>Re(q.plainObject(t),"plain object",t),typedArray:t=>Re(q.typedArray(t),"TypedArray",t),arrayLike:t=>Re(q.arrayLike(t),"array-like",t),domElement:t=>Re(q.domElement(t),"HTMLElement",t),observable:t=>Re(q.observable(t),"Observable",t),nodeStream:t=>Re(q.nodeStream(t),"Node.js Stream",t),infinite:t=>Re(q.infinite(t),"infinite number",t),emptyArray:t=>Re(q.emptyArray(t),"empty array",t),nonEmptyArray:t=>Re(q.nonEmptyArray(t),"non-empty array",t),emptyString:t=>Re(q.emptyString(t),"empty string",t),nonEmptyString:t=>Re(q.nonEmptyString(t),"non-empty string",t),emptyStringOrWhitespace:t=>Re(q.emptyStringOrWhitespace(t),"empty string or whitespace",t),emptyObject:t=>Re(q.emptyObject(t),"empty object",t),nonEmptyObject:t=>Re(q.nonEmptyObject(t),"non-empty object",t),emptySet:t=>Re(q.emptySet(t),"empty set",t),nonEmptySet:t=>Re(q.nonEmptySet(t),"non-empty set",t),emptyMap:t=>Re(q.emptyMap(t),"empty map",t),nonEmptyMap:t=>Re(q.nonEmptyMap(t),"non-empty map",t),evenInteger:t=>Re(q.evenInteger(t),"even integer",t),oddInteger:t=>Re(q.oddInteger(t),"odd integer",t),directInstanceOf:(t,e)=>Re(q.directInstanceOf(t,e),"T",t),inRange:(t,e)=>Re(q.inRange(t,e),"in range",t),any:(t,...e)=>Re(q.any(t,...e),"predicate returns truthy for any value",e),all:(t,...e)=>Re(q.all(t,...e),"predicate returns truthy for all values",e)};Object.defineProperties(q,{class:{value:q.class_},function:{value:q.function_},null:{value:q.null_}});Object.defineProperties(zs.assert,{class:{value:zs.assert.class_},function:{value:zs.assert.function_},null:{value:zs.assert.null_}});zs.default=q;qm.exports=q;qm.exports.default=q;qm.exports.assert=zs.assert});var $2=C((QVe,Cb)=>{"use strict";var mb=class extends Error{constructor(e){super(e||"Promise was canceled");this.name="CancelError"}get isCanceled(){return!0}},xh=class{static fn(e){return(...r)=>new xh((i,n,s)=>{r.push(s),e(...r).then(i,n)})}constructor(e){this._cancelHandlers=[],this._isPending=!0,this._isCanceled=!1,this._rejectOnCancel=!0,this._promise=new Promise((r,i)=>{this._reject=i;let n=a=>{this._isPending=!1,r(a)},s=a=>{this._isPending=!1,i(a)},o=a=>{if(!this._isPending)throw new Error("The `onCancel` handler was attached after the promise settled.");this._cancelHandlers.push(a)};return Object.defineProperties(o,{shouldReject:{get:()=>this._rejectOnCancel,set:a=>{this._rejectOnCancel=a}}}),e(n,s,o)})}then(e,r){return this._promise.then(e,r)}catch(e){return this._promise.catch(e)}finally(e){return this._promise.finally(e)}cancel(e){if(!(!this._isPending||this._isCanceled)){if(this._cancelHandlers.length>0)try{for(let r of this._cancelHandlers)r()}catch(r){this._reject(r)}this._isCanceled=!0,this._rejectOnCancel&&this._reject(new mb(e))}}get isCanceled(){return this._isCanceled}};Object.setPrototypeOf(xh.prototype,Promise.prototype);Cb.exports=xh;Cb.exports.CancelError=mb});var eH=C((Ib,Eb)=>{"use strict";Object.defineProperty(Ib,"__esModule",{value:!0});var bde=require("tls"),yb=(t,e)=>{let r;typeof e=="function"?r={connect:e}:r=e;let i=typeof r.connect=="function",n=typeof r.secureConnect=="function",s=typeof r.close=="function",o=()=>{i&&r.connect(),t instanceof bde.TLSSocket&&n&&(t.authorized?r.secureConnect():t.authorizationError||t.once("secureConnect",r.secureConnect)),s&&t.once("close",r.close)};t.writable&&!t.connecting?o():t.connecting?t.once("connect",o):t.destroyed&&s&&r.close(t._hadError)};Ib.default=yb;Eb.exports=yb;Eb.exports.default=yb});var tH=C((Bb,wb)=>{"use strict";Object.defineProperty(Bb,"__esModule",{value:!0});var Dde=eH(),Sde=Number(process.versions.node.split(".")[0]),Qb=t=>{let e={start:Date.now(),socket:void 0,lookup:void 0,connect:void 0,secureConnect:void 0,upload:void 0,response:void 0,end:void 0,error:void 0,abort:void 0,phases:{wait:void 0,dns:void 0,tcp:void 0,tls:void 0,request:void 0,firstByte:void 0,download:void 0,total:void 0}};t.timings=e;let r=o=>{let a=o.emit.bind(o);o.emit=(l,...c)=>(l==="error"&&(e.error=Date.now(),e.phases.total=e.error-e.start,o.emit=a),a(l,...c))};r(t),t.prependOnceListener("abort",()=>{e.abort=Date.now(),(!e.response||Sde>=13)&&(e.phases.total=Date.now()-e.start)});let i=o=>{e.socket=Date.now(),e.phases.wait=e.socket-e.start;let a=()=>{e.lookup=Date.now(),e.phases.dns=e.lookup-e.socket};o.prependOnceListener("lookup",a),Dde.default(o,{connect:()=>{e.connect=Date.now(),e.lookup===void 0&&(o.removeListener("lookup",a),e.lookup=e.connect,e.phases.dns=e.lookup-e.socket),e.phases.tcp=e.connect-e.lookup},secureConnect:()=>{e.secureConnect=Date.now(),e.phases.tls=e.secureConnect-e.connect}})};t.socket?i(t.socket):t.prependOnceListener("socket",i);let n=()=>{var o;e.upload=Date.now(),e.phases.request=e.upload-(o=e.secureConnect,o!=null?o:e.connect)};return(()=>typeof t.writableFinished=="boolean"?t.writableFinished:t.finished&&t.outputSize===0&&(!t.socket||t.socket.writableLength===0))()?n():t.prependOnceListener("finish",n),t.prependOnceListener("response",o=>{e.response=Date.now(),e.phases.firstByte=e.response-e.upload,o.timings=e,r(o),o.prependOnceListener("end",()=>{e.end=Date.now(),e.phases.download=e.end-e.response,e.phases.total=e.end-e.start})}),e};Bb.default=Qb;wb.exports=Qb;wb.exports.default=Qb});var AH=C((bVe,bb)=>{"use strict";var{V4MAPPED:xde,ADDRCONFIG:Pde,ALL:rH,promises:{Resolver:iH},lookup:kde}=require("dns"),{promisify:Db}=require("util"),vde=require("os"),Ac=Symbol("cacheableLookupCreateConnection"),Sb=Symbol("cacheableLookupInstance"),nH=Symbol("expires"),Fde=typeof rH=="number",sH=t=>{if(!(t&&typeof t.createConnection=="function"))throw new Error("Expected an Agent instance as the first argument")},Rde=t=>{for(let e of t)e.family!==6&&(e.address=`::ffff:${e.address}`,e.family=6)},oH=()=>{let t=!1,e=!1;for(let r of Object.values(vde.networkInterfaces()))for(let i of r)if(!i.internal&&(i.family==="IPv6"?e=!0:t=!0,t&&e))return{has4:t,has6:e};return{has4:t,has6:e}},Lde=t=>Symbol.iterator in t,aH={ttl:!0},Nde={all:!0},xb=class{constructor({cache:e=new Map,maxTtl:r=Infinity,fallbackDuration:i=3600,errorTtl:n=.15,resolver:s=new iH,lookup:o=kde}={}){if(this.maxTtl=r,this.errorTtl=n,this._cache=e,this._resolver=s,this._dnsLookup=Db(o),this._resolver instanceof iH?(this._resolve4=this._resolver.resolve4.bind(this._resolver),this._resolve6=this._resolver.resolve6.bind(this._resolver)):(this._resolve4=Db(this._resolver.resolve4.bind(this._resolver)),this._resolve6=Db(this._resolver.resolve6.bind(this._resolver))),this._iface=oH(),this._pending={},this._nextRemovalTime=!1,this._hostnamesToFallback=new Set,i<1)this._fallback=!1;else{this._fallback=!0;let a=setInterval(()=>{this._hostnamesToFallback.clear()},i*1e3);a.unref&&a.unref()}this.lookup=this.lookup.bind(this),this.lookupAsync=this.lookupAsync.bind(this)}set servers(e){this.clear(),this._resolver.setServers(e)}get servers(){return this._resolver.getServers()}lookup(e,r,i){if(typeof r=="function"?(i=r,r={}):typeof r=="number"&&(r={family:r}),!i)throw new Error("Callback must be a function.");this.lookupAsync(e,r).then(n=>{r.all?i(null,n):i(null,n.address,n.family,n.expires,n.ttl)},i)}async lookupAsync(e,r={}){typeof r=="number"&&(r={family:r});let i=await this.query(e);if(r.family===6){let n=i.filter(s=>s.family===6);r.hints&xde&&(Fde&&r.hints&rH||n.length===0)?Rde(i):i=n}else r.family===4&&(i=i.filter(n=>n.family===4));if(r.hints&Pde){let{_iface:n}=this;i=i.filter(s=>s.family===6?n.has6:n.has4)}if(i.length===0){let n=new Error(`cacheableLookup ENOTFOUND ${e}`);throw n.code="ENOTFOUND",n.hostname=e,n}return r.all?i:i[0]}async query(e){let r=await this._cache.get(e);if(!r){let i=this._pending[e];if(i)r=await i;else{let n=this.queryAndCache(e);this._pending[e]=n,r=await n}}return r=r.map(i=>k({},i)),r}async _resolve(e){let r=async c=>{try{return await c}catch(u){if(u.code==="ENODATA"||u.code==="ENOTFOUND")return[];throw u}},[i,n]=await Promise.all([this._resolve4(e,aH),this._resolve6(e,aH)].map(c=>r(c))),s=0,o=0,a=0,l=Date.now();for(let c of i)c.family=4,c.expires=l+c.ttl*1e3,s=Math.max(s,c.ttl);for(let c of n)c.family=6,c.expires=l+c.ttl*1e3,o=Math.max(o,c.ttl);return i.length>0?n.length>0?a=Math.min(s,o):a=s:a=o,{entries:[...i,...n],cacheTtl:a}}async _lookup(e){try{return{entries:await this._dnsLookup(e,{all:!0}),cacheTtl:0}}catch(r){return{entries:[],cacheTtl:0}}}async _set(e,r,i){if(this.maxTtl>0&&i>0){i=Math.min(i,this.maxTtl)*1e3,r[nH]=Date.now()+i;try{await this._cache.set(e,r,i)}catch(n){this.lookupAsync=async()=>{let s=new Error("Cache Error. Please recreate the CacheableLookup instance.");throw s.cause=n,s}}Lde(this._cache)&&this._tick(i)}}async queryAndCache(e){if(this._hostnamesToFallback.has(e))return this._dnsLookup(e,Nde);try{let r=await this._resolve(e);r.entries.length===0&&this._fallback&&(r=await this._lookup(e),r.entries.length!==0&&this._hostnamesToFallback.add(e));let i=r.entries.length===0?this.errorTtl:r.cacheTtl;return await this._set(e,r.entries,i),delete this._pending[e],r.entries}catch(r){throw delete this._pending[e],r}}_tick(e){let r=this._nextRemovalTime;(!r||e{this._nextRemovalTime=!1;let i=Infinity,n=Date.now();for(let[s,o]of this._cache){let a=o[nH];n>=a?this._cache.delete(s):a("lookup"in r||(r.lookup=this.lookup),e[Ac](r,i))}uninstall(e){if(sH(e),e[Ac]){if(e[Sb]!==this)throw new Error("The agent is not owned by this CacheableLookup instance");e.createConnection=e[Ac],delete e[Ac],delete e[Sb]}}updateInterfaceInfo(){let{_iface:e}=this;this._iface=oH(),(e.has4&&!this._iface.has4||e.has6&&!this._iface.has6)&&this._cache.clear()}clear(e){if(e){this._cache.delete(e);return}this._cache.clear()}};bb.exports=xb;bb.exports.default=xb});var uH=C((DVe,Pb)=>{"use strict";var Mde=typeof URL=="undefined"?require("url").URL:URL,Ode="text/plain",Kde="us-ascii",lH=(t,e)=>e.some(r=>r instanceof RegExp?r.test(t):r===t),Tde=(t,{stripHash:e})=>{let r=t.match(/^data:([^,]*?),([^#]*?)(?:#(.*))?$/);if(!r)throw new Error(`Invalid URL: ${t}`);let i=r[1].split(";"),n=r[2],s=e?"":r[3],o=!1;i[i.length-1]==="base64"&&(i.pop(),o=!0);let a=(i.shift()||"").toLowerCase(),c=[...i.map(u=>{let[g,h=""]=u.split("=").map(f=>f.trim());return g==="charset"&&(h=h.toLowerCase(),h===Kde)?"":`${g}${h?`=${h}`:""}`}).filter(Boolean)];return o&&c.push("base64"),(c.length!==0||a&&a!==Ode)&&c.unshift(a),`data:${c.join(";")},${o?n.trim():n}${s?`#${s}`:""}`},cH=(t,e)=>{if(e=k({defaultProtocol:"http:",normalizeProtocol:!0,forceHttp:!1,forceHttps:!1,stripAuthentication:!0,stripHash:!1,stripWWW:!0,removeQueryParameters:[/^utm_\w+/i],removeTrailingSlash:!0,removeDirectoryIndex:!1,sortQueryParameters:!0},e),Reflect.has(e,"normalizeHttps"))throw new Error("options.normalizeHttps is renamed to options.forceHttp");if(Reflect.has(e,"normalizeHttp"))throw new Error("options.normalizeHttp is renamed to options.forceHttps");if(Reflect.has(e,"stripFragment"))throw new Error("options.stripFragment is renamed to options.stripHash");if(t=t.trim(),/^data:/i.test(t))return Tde(t,e);let r=t.startsWith("//");!r&&/^\.*\//.test(t)||(t=t.replace(/^(?!(?:\w+:)?\/\/)|^\/\//,e.defaultProtocol));let n=new Mde(t);if(e.forceHttp&&e.forceHttps)throw new Error("The `forceHttp` and `forceHttps` options cannot be used together");if(e.forceHttp&&n.protocol==="https:"&&(n.protocol="http:"),e.forceHttps&&n.protocol==="http:"&&(n.protocol="https:"),e.stripAuthentication&&(n.username="",n.password=""),e.stripHash&&(n.hash=""),n.pathname&&(n.pathname=n.pathname.replace(/((?!:).|^)\/{2,}/g,(s,o)=>/^(?!\/)/g.test(o)?`${o}/`:"/")),n.pathname&&(n.pathname=decodeURI(n.pathname)),e.removeDirectoryIndex===!0&&(e.removeDirectoryIndex=[/^index\.[a-z]+$/]),Array.isArray(e.removeDirectoryIndex)&&e.removeDirectoryIndex.length>0){let s=n.pathname.split("/"),o=s[s.length-1];lH(o,e.removeDirectoryIndex)&&(s=s.slice(0,s.length-1),n.pathname=s.slice(1).join("/")+"/")}if(n.hostname&&(n.hostname=n.hostname.replace(/\.$/,""),e.stripWWW&&/^www\.([a-z\-\d]{2,63})\.([a-z.]{2,5})$/.test(n.hostname)&&(n.hostname=n.hostname.replace(/^www\./,""))),Array.isArray(e.removeQueryParameters))for(let s of[...n.searchParams.keys()])lH(s,e.removeQueryParameters)&&n.searchParams.delete(s);return e.sortQueryParameters&&n.searchParams.sort(),e.removeTrailingSlash&&(n.pathname=n.pathname.replace(/\/$/,"")),t=n.toString(),(e.removeTrailingSlash||n.pathname==="/")&&n.hash===""&&(t=t.replace(/\/$/,"")),r&&!e.normalizeProtocol&&(t=t.replace(/^http:\/\//,"//")),e.stripProtocol&&(t=t.replace(/^(?:https?:)?\/\//,"")),t};Pb.exports=cH;Pb.exports.default=cH});var fH=C((SVe,gH)=>{gH.exports=hH;function hH(t,e){if(t&&e)return hH(t)(e);if(typeof t!="function")throw new TypeError("need wrapper function");return Object.keys(t).forEach(function(i){r[i]=t[i]}),r;function r(){for(var i=new Array(arguments.length),n=0;n{var pH=fH();kb.exports=pH(Jm);kb.exports.strict=pH(dH);Jm.proto=Jm(function(){Object.defineProperty(Function.prototype,"once",{value:function(){return Jm(this)},configurable:!0}),Object.defineProperty(Function.prototype,"onceStrict",{value:function(){return dH(this)},configurable:!0})});function Jm(t){var e=function(){return e.called?e.value:(e.called=!0,e.value=t.apply(this,arguments))};return e.called=!1,e}function dH(t){var e=function(){if(e.called)throw new Error(e.onceError);return e.called=!0,e.value=t.apply(this,arguments)},r=t.name||"Function wrapped with `once`";return e.onceError=r+" shouldn't be called more than once",e.called=!1,e}});var Fb=C((PVe,CH)=>{var Ude=vb(),Hde=function(){},Yde=function(t){return t.setHeader&&typeof t.abort=="function"},Gde=function(t){return t.stdio&&Array.isArray(t.stdio)&&t.stdio.length===3},mH=function(t,e,r){if(typeof e=="function")return mH(t,null,e);e||(e={}),r=Ude(r||Hde);var i=t._writableState,n=t._readableState,s=e.readable||e.readable!==!1&&t.readable,o=e.writable||e.writable!==!1&&t.writable,a=function(){t.writable||l()},l=function(){o=!1,s||r.call(t)},c=function(){s=!1,o||r.call(t)},u=function(p){r.call(t,p?new Error("exited with error code: "+p):null)},g=function(p){r.call(t,p)},h=function(){if(s&&!(n&&n.ended))return r.call(t,new Error("premature close"));if(o&&!(i&&i.ended))return r.call(t,new Error("premature close"))},f=function(){t.req.on("finish",l)};return Yde(t)?(t.on("complete",l),t.on("abort",h),t.req?f():t.on("request",f)):o&&!i&&(t.on("end",a),t.on("close",a)),Gde(t)&&t.on("exit",u),t.on("end",c),t.on("finish",l),e.error!==!1&&t.on("error",g),t.on("close",h),function(){t.removeListener("complete",l),t.removeListener("abort",h),t.removeListener("request",f),t.req&&t.req.removeListener("finish",l),t.removeListener("end",a),t.removeListener("close",a),t.removeListener("finish",l),t.removeListener("exit",u),t.removeListener("end",c),t.removeListener("error",g),t.removeListener("close",h)}};CH.exports=mH});var yH=C((kVe,IH)=>{var jde=vb(),qde=Fb(),Rb=require("fs"),Ph=function(){},Jde=/^v?\.0/.test(process.version),Wm=function(t){return typeof t=="function"},Wde=function(t){return!Jde||!Rb?!1:(t instanceof(Rb.ReadStream||Ph)||t instanceof(Rb.WriteStream||Ph))&&Wm(t.close)},zde=function(t){return t.setHeader&&Wm(t.abort)},Vde=function(t,e,r,i){i=jde(i);var n=!1;t.on("close",function(){n=!0}),qde(t,{readable:e,writable:r},function(o){if(o)return i(o);n=!0,i()});var s=!1;return function(o){if(!n&&!s){if(s=!0,Wde(t))return t.close(Ph);if(zde(t))return t.abort();if(Wm(t.destroy))return t.destroy();i(o||new Error("stream was destroyed"))}}},EH=function(t){t()},Xde=function(t,e){return t.pipe(e)},Zde=function(){var t=Array.prototype.slice.call(arguments),e=Wm(t[t.length-1]||Ph)&&t.pop()||Ph;if(Array.isArray(t[0])&&(t=t[0]),t.length<2)throw new Error("pump requires two streams per minimum");var r,i=t.map(function(n,s){var o=s0;return Vde(n,o,a,function(l){r||(r=l),l&&i.forEach(EH),!o&&(i.forEach(EH),e(r))})});return t.reduce(Xde)};IH.exports=Zde});var wH=C((vVe,BH)=>{"use strict";var{PassThrough:_de}=require("stream");BH.exports=t=>{t=k({},t);let{array:e}=t,{encoding:r}=t,i=r==="buffer",n=!1;e?n=!(r||i):r=r||"utf8",i&&(r=null);let s=new _de({objectMode:n});r&&s.setEncoding(r);let o=0,a=[];return s.on("data",l=>{a.push(l),n?o=a.length:o+=l.length}),s.getBufferedValue=()=>e?a:i?Buffer.concat(a,o):a.join(""),s.getBufferedLength=()=>o,s}});var QH=C((FVe,lc)=>{"use strict";var $de=yH(),eCe=wH(),Lb=class extends Error{constructor(){super("maxBuffer exceeded");this.name="MaxBufferError"}};async function zm(t,e){if(!t)return Promise.reject(new Error("Expected a stream"));e=k({maxBuffer:Infinity},e);let{maxBuffer:r}=e,i;return await new Promise((n,s)=>{let o=a=>{a&&(a.bufferedData=i.getBufferedValue()),s(a)};i=$de(t,eCe(e),a=>{if(a){o(a);return}n()}),i.on("data",()=>{i.getBufferedLength()>r&&o(new Lb)})}),i.getBufferedValue()}lc.exports=zm;lc.exports.default=zm;lc.exports.buffer=(t,e)=>zm(t,V(k({},e),{encoding:"buffer"}));lc.exports.array=(t,e)=>zm(t,V(k({},e),{array:!0}));lc.exports.MaxBufferError=Lb});var DH=C((LVe,bH)=>{"use strict";var tCe=[200,203,204,206,300,301,404,405,410,414,501],rCe=[200,203,204,300,301,302,303,307,308,404,405,410,414,501],iCe={date:!0,connection:!0,"keep-alive":!0,"proxy-authenticate":!0,"proxy-authorization":!0,te:!0,trailer:!0,"transfer-encoding":!0,upgrade:!0},nCe={"content-length":!0,"content-encoding":!0,"transfer-encoding":!0,"content-range":!0};function Nb(t){let e={};if(!t)return e;let r=t.trim().split(/\s*,\s*/);for(let i of r){let[n,s]=i.split(/\s*=\s*/,2);e[n]=s===void 0?!0:s.replace(/^"|"$/g,"")}return e}function sCe(t){let e=[];for(let r in t){let i=t[r];e.push(i===!0?r:r+"="+i)}if(!!e.length)return e.join(", ")}bH.exports=class{constructor(e,r,{shared:i,cacheHeuristic:n,immutableMinTimeToLive:s,ignoreCargoCult:o,trustServerDate:a,_fromObject:l}={}){if(l){this._fromObject(l);return}if(!r||!r.headers)throw Error("Response headers missing");this._assertRequestHasHeaders(e),this._responseTime=this.now(),this._isShared=i!==!1,this._trustServerDate=a!==void 0?a:!0,this._cacheHeuristic=n!==void 0?n:.1,this._immutableMinTtl=s!==void 0?s:24*3600*1e3,this._status="status"in r?r.status:200,this._resHeaders=r.headers,this._rescc=Nb(r.headers["cache-control"]),this._method="method"in e?e.method:"GET",this._url=e.url,this._host=e.headers.host,this._noAuthorization=!e.headers.authorization,this._reqHeaders=r.headers.vary?e.headers:null,this._reqcc=Nb(e.headers["cache-control"]),o&&"pre-check"in this._rescc&&"post-check"in this._rescc&&(delete this._rescc["pre-check"],delete this._rescc["post-check"],delete this._rescc["no-cache"],delete this._rescc["no-store"],delete this._rescc["must-revalidate"],this._resHeaders=Object.assign({},this._resHeaders,{"cache-control":sCe(this._rescc)}),delete this._resHeaders.expires,delete this._resHeaders.pragma),!r.headers["cache-control"]&&/no-cache/.test(r.headers.pragma)&&(this._rescc["no-cache"]=!0)}now(){return Date.now()}storable(){return!!(!this._reqcc["no-store"]&&(this._method==="GET"||this._method==="HEAD"||this._method==="POST"&&this._hasExplicitExpiration())&&rCe.indexOf(this._status)!==-1&&!this._rescc["no-store"]&&(!this._isShared||!this._rescc.private)&&(!this._isShared||this._noAuthorization||this._allowsStoringAuthenticated())&&(this._resHeaders.expires||this._rescc.public||this._rescc["max-age"]||this._rescc["s-maxage"]||tCe.indexOf(this._status)!==-1))}_hasExplicitExpiration(){return this._isShared&&this._rescc["s-maxage"]||this._rescc["max-age"]||this._resHeaders.expires}_assertRequestHasHeaders(e){if(!e||!e.headers)throw Error("Request headers missing")}satisfiesWithoutRevalidation(e){this._assertRequestHasHeaders(e);let r=Nb(e.headers["cache-control"]);return r["no-cache"]||/no-cache/.test(e.headers.pragma)||r["max-age"]&&this.age()>r["max-age"]||r["min-fresh"]&&this.timeToLive()<1e3*r["min-fresh"]||this.stale()&&!(r["max-stale"]&&!this._rescc["must-revalidate"]&&(r["max-stale"]===!0||r["max-stale"]>this.age()-this.maxAge()))?!1:this._requestMatches(e,!1)}_requestMatches(e,r){return(!this._url||this._url===e.url)&&this._host===e.headers.host&&(!e.method||this._method===e.method||r&&e.method==="HEAD")&&this._varyMatches(e)}_allowsStoringAuthenticated(){return this._rescc["must-revalidate"]||this._rescc.public||this._rescc["s-maxage"]}_varyMatches(e){if(!this._resHeaders.vary)return!0;if(this._resHeaders.vary==="*")return!1;let r=this._resHeaders.vary.trim().toLowerCase().split(/\s*,\s*/);for(let i of r)if(e.headers[i]!==this._reqHeaders[i])return!1;return!0}_copyWithoutHopByHopHeaders(e){let r={};for(let i in e)iCe[i]||(r[i]=e[i]);if(e.connection){let i=e.connection.trim().split(/\s*,\s*/);for(let n of i)delete r[n]}if(r.warning){let i=r.warning.split(/,/).filter(n=>!/^\s*1[0-9][0-9]/.test(n));i.length?r.warning=i.join(",").trim():delete r.warning}return r}responseHeaders(){let e=this._copyWithoutHopByHopHeaders(this._resHeaders),r=this.age();return r>3600*24&&!this._hasExplicitExpiration()&&this.maxAge()>3600*24&&(e.warning=(e.warning?`${e.warning}, `:"")+'113 - "rfc7234 5.5.4"'),e.age=`${Math.round(r)}`,e.date=new Date(this.now()).toUTCString(),e}date(){return this._trustServerDate?this._serverDate():this._responseTime}_serverDate(){let e=Date.parse(this._resHeaders.date);if(isFinite(e)){let r=8*3600*1e3;if(Math.abs(this._responseTime-e)e&&(e=i)}let r=(this.now()-this._responseTime)/1e3;return e+r}_ageValue(){let e=parseInt(this._resHeaders.age);return isFinite(e)?e:0}maxAge(){if(!this.storable()||this._rescc["no-cache"]||this._isShared&&this._resHeaders["set-cookie"]&&!this._rescc.public&&!this._rescc.immutable||this._resHeaders.vary==="*")return 0;if(this._isShared){if(this._rescc["proxy-revalidate"])return 0;if(this._rescc["s-maxage"])return parseInt(this._rescc["s-maxage"],10)}if(this._rescc["max-age"])return parseInt(this._rescc["max-age"],10);let e=this._rescc.immutable?this._immutableMinTtl:0,r=this._serverDate();if(this._resHeaders.expires){let i=Date.parse(this._resHeaders.expires);return Number.isNaN(i)||ii)return Math.max(e,(r-i)/1e3*this._cacheHeuristic)}return e}timeToLive(){return Math.max(0,this.maxAge()-this.age())*1e3}stale(){return this.maxAge()<=this.age()}static fromObject(e){return new this(void 0,void 0,{_fromObject:e})}_fromObject(e){if(this._responseTime)throw Error("Reinitialized");if(!e||e.v!==1)throw Error("Invalid serialization");this._responseTime=e.t,this._isShared=e.sh,this._cacheHeuristic=e.ch,this._immutableMinTtl=e.imm!==void 0?e.imm:24*3600*1e3,this._status=e.st,this._resHeaders=e.resh,this._rescc=e.rescc,this._method=e.m,this._url=e.u,this._host=e.h,this._noAuthorization=e.a,this._reqHeaders=e.reqh,this._reqcc=e.reqcc}toObject(){return{v:1,t:this._responseTime,sh:this._isShared,ch:this._cacheHeuristic,imm:this._immutableMinTtl,st:this._status,resh:this._resHeaders,rescc:this._rescc,m:this._method,u:this._url,h:this._host,a:this._noAuthorization,reqh:this._reqHeaders,reqcc:this._reqcc}}revalidationHeaders(e){this._assertRequestHasHeaders(e);let r=this._copyWithoutHopByHopHeaders(e.headers);if(delete r["if-range"],!this._requestMatches(e,!0)||!this.storable())return delete r["if-none-match"],delete r["if-modified-since"],r;if(this._resHeaders.etag&&(r["if-none-match"]=r["if-none-match"]?`${r["if-none-match"]}, ${this._resHeaders.etag}`:this._resHeaders.etag),r["accept-ranges"]||r["if-match"]||r["if-unmodified-since"]||this._method&&this._method!="GET"){if(delete r["if-modified-since"],r["if-none-match"]){let n=r["if-none-match"].split(/,/).filter(s=>!/^\s*W\//.test(s));n.length?r["if-none-match"]=n.join(",").trim():delete r["if-none-match"]}}else this._resHeaders["last-modified"]&&!r["if-modified-since"]&&(r["if-modified-since"]=this._resHeaders["last-modified"]);return r}revalidatedPolicy(e,r){if(this._assertRequestHasHeaders(e),!r||!r.headers)throw Error("Response headers missing");let i=!1;if(r.status!==void 0&&r.status!=304?i=!1:r.headers.etag&&!/^\s*W\//.test(r.headers.etag)?i=this._resHeaders.etag&&this._resHeaders.etag.replace(/^\s*W\//,"")===r.headers.etag:this._resHeaders.etag&&r.headers.etag?i=this._resHeaders.etag.replace(/^\s*W\//,"")===r.headers.etag.replace(/^\s*W\//,""):this._resHeaders["last-modified"]?i=this._resHeaders["last-modified"]===r.headers["last-modified"]:!this._resHeaders.etag&&!this._resHeaders["last-modified"]&&!r.headers.etag&&!r.headers["last-modified"]&&(i=!0),!i)return{policy:new this.constructor(e,r),modified:r.status!=304,matches:!1};let n={};for(let o in this._resHeaders)n[o]=o in r.headers&&!nCe[o]?r.headers[o]:this._resHeaders[o];let s=Object.assign({},r,{status:this._status,method:this._method,headers:n});return{policy:new this.constructor(e,s,{shared:this._isShared,cacheHeuristic:this._cacheHeuristic,immutableMinTimeToLive:this._immutableMinTtl,trustServerDate:this._trustServerDate}),modified:!1,matches:!0}}}});var Vm=C((NVe,SH)=>{"use strict";SH.exports=t=>{let e={};for(let[r,i]of Object.entries(t))e[r.toLowerCase()]=i;return e}});var kH=C((MVe,xH)=>{"use strict";var oCe=require("stream").Readable,aCe=Vm(),PH=class extends oCe{constructor(e,r,i,n){if(typeof e!="number")throw new TypeError("Argument `statusCode` should be a number");if(typeof r!="object")throw new TypeError("Argument `headers` should be an object");if(!(i instanceof Buffer))throw new TypeError("Argument `body` should be a buffer");if(typeof n!="string")throw new TypeError("Argument `url` should be a string");super();this.statusCode=e,this.headers=aCe(r),this.body=i,this.url=n}_read(){this.push(this.body),this.push(null)}};xH.exports=PH});var FH=C((OVe,vH)=>{"use strict";var ACe=["destroy","setTimeout","socket","headers","trailers","rawHeaders","statusCode","httpVersion","httpVersionMinor","httpVersionMajor","rawTrailers","statusMessage"];vH.exports=(t,e)=>{let r=new Set(Object.keys(t).concat(ACe));for(let i of r)i in e||(e[i]=typeof t[i]=="function"?t[i].bind(t):t[i])}});var LH=C((KVe,RH)=>{"use strict";var lCe=require("stream").PassThrough,cCe=FH(),uCe=t=>{if(!(t&&t.pipe))throw new TypeError("Parameter `response` must be a response stream.");let e=new lCe;return cCe(t,e),t.pipe(e)};RH.exports=uCe});var NH=C(Mb=>{Mb.stringify=function t(e){if(typeof e=="undefined")return e;if(e&&Buffer.isBuffer(e))return JSON.stringify(":base64:"+e.toString("base64"));if(e&&e.toJSON&&(e=e.toJSON()),e&&typeof e=="object"){var r="",i=Array.isArray(e);r=i?"[":"{";var n=!0;for(var s in e){var o=typeof e[s]=="function"||!i&&typeof e[s]=="undefined";Object.hasOwnProperty.call(e,s)&&!o&&(n||(r+=","),n=!1,i?e[s]==null?r+="null":r+=t(e[s]):e[s]!==void 0&&(r+=t(s)+":"+t(e[s])))}return r+=i?"]":"}",r}else return typeof e=="string"?JSON.stringify(/^:/.test(e)?":"+e:e):typeof e=="undefined"?"null":JSON.stringify(e)};Mb.parse=function(t){return JSON.parse(t,function(e,r){return typeof r=="string"?/^:base64:/.test(r)?Buffer.from(r.substring(8),"base64"):/^:/.test(r)?r.substring(1):r:r})}});var TH=C((UVe,MH)=>{"use strict";var gCe=require("events"),OH=NH(),hCe=t=>{let e={redis:"@keyv/redis",mongodb:"@keyv/mongo",mongo:"@keyv/mongo",sqlite:"@keyv/sqlite",postgresql:"@keyv/postgres",postgres:"@keyv/postgres",mysql:"@keyv/mysql"};if(t.adapter||t.uri){let r=t.adapter||/^[^:]*/.exec(t.uri)[0];return new(require(e[r]))(t)}return new Map},KH=class extends gCe{constructor(e,r){super();if(this.opts=Object.assign({namespace:"keyv",serialize:OH.stringify,deserialize:OH.parse},typeof e=="string"?{uri:e}:e,r),!this.opts.store){let i=Object.assign({},this.opts);this.opts.store=hCe(i)}typeof this.opts.store.on=="function"&&this.opts.store.on("error",i=>this.emit("error",i)),this.opts.store.namespace=this.opts.namespace}_getKeyPrefix(e){return`${this.opts.namespace}:${e}`}get(e,r){e=this._getKeyPrefix(e);let{store:i}=this.opts;return Promise.resolve().then(()=>i.get(e)).then(n=>typeof n=="string"?this.opts.deserialize(n):n).then(n=>{if(n!==void 0){if(typeof n.expires=="number"&&Date.now()>n.expires){this.delete(e);return}return r&&r.raw?n:n.value}})}set(e,r,i){e=this._getKeyPrefix(e),typeof i=="undefined"&&(i=this.opts.ttl),i===0&&(i=void 0);let{store:n}=this.opts;return Promise.resolve().then(()=>{let s=typeof i=="number"?Date.now()+i:null;return r={value:r,expires:s},this.opts.serialize(r)}).then(s=>n.set(e,s,i)).then(()=>!0)}delete(e){e=this._getKeyPrefix(e);let{store:r}=this.opts;return Promise.resolve().then(()=>r.delete(e))}clear(){let{store:e}=this.opts;return Promise.resolve().then(()=>e.clear())}};MH.exports=KH});var YH=C((HVe,UH)=>{"use strict";var fCe=require("events"),Xm=require("url"),pCe=uH(),dCe=QH(),Ob=DH(),HH=kH(),CCe=Vm(),mCe=LH(),ICe=TH(),as=class{constructor(e,r){if(typeof e!="function")throw new TypeError("Parameter `request` must be a function");return this.cache=new ICe({uri:typeof r=="string"&&r,store:typeof r!="string"&&r,namespace:"cacheable-request"}),this.createCacheableRequest(e)}createCacheableRequest(e){return(r,i)=>{let n;if(typeof r=="string")n=Kb(Xm.parse(r)),r={};else if(r instanceof Xm.URL)n=Kb(Xm.parse(r.toString())),r={};else{let[g,...h]=(r.path||"").split("?"),f=h.length>0?`?${h.join("?")}`:"";n=Kb(V(k({},r),{pathname:g,search:f}))}r=k(k({headers:{},method:"GET",cache:!0,strictTtl:!1,automaticFailover:!1},r),ECe(n)),r.headers=CCe(r.headers);let s=new fCe,o=pCe(Xm.format(n),{stripWWW:!1,removeTrailingSlash:!1,stripAuthentication:!1}),a=`${r.method}:${o}`,l=!1,c=!1,u=g=>{c=!0;let h=!1,f,p=new Promise(I=>{f=()=>{h||(h=!0,I())}}),m=I=>{if(l&&!g.forceRefresh){I.status=I.statusCode;let w=Ob.fromObject(l.cachePolicy).revalidatedPolicy(g,I);if(!w.modified){let x=w.policy.responseHeaders();I=new HH(l.statusCode,x,l.body,l.url),I.cachePolicy=w.policy,I.fromCache=!0}}I.fromCache||(I.cachePolicy=new Ob(g,I,g),I.fromCache=!1);let y;g.cache&&I.cachePolicy.storable()?(y=mCe(I),(async()=>{try{let w=dCe.buffer(I);if(await Promise.race([p,new Promise(K=>I.once("end",K))]),h)return;let x=await w,F={cachePolicy:I.cachePolicy.toObject(),url:I.url,statusCode:I.fromCache?l.statusCode:I.statusCode,body:x},N=g.strictTtl?I.cachePolicy.timeToLive():void 0;g.maxTtl&&(N=N?Math.min(N,g.maxTtl):g.maxTtl),await this.cache.set(a,F,N)}catch(w){s.emit("error",new as.CacheError(w))}})()):g.cache&&l&&(async()=>{try{await this.cache.delete(a)}catch(w){s.emit("error",new as.CacheError(w))}})(),s.emit("response",y||I),typeof i=="function"&&i(y||I)};try{let I=e(g,m);I.once("error",f),I.once("abort",f),s.emit("request",I)}catch(I){s.emit("error",new as.RequestError(I))}};return(async()=>{let g=async f=>{await Promise.resolve();let p=f.cache?await this.cache.get(a):void 0;if(typeof p=="undefined")return u(f);let m=Ob.fromObject(p.cachePolicy);if(m.satisfiesWithoutRevalidation(f)&&!f.forceRefresh){let I=m.responseHeaders(),y=new HH(p.statusCode,I,p.body,p.url);y.cachePolicy=m,y.fromCache=!0,s.emit("response",y),typeof i=="function"&&i(y)}else l=p,f.headers=m.revalidationHeaders(f),u(f)},h=f=>s.emit("error",new as.CacheError(f));this.cache.once("error",h),s.on("response",()=>this.cache.removeListener("error",h));try{await g(r)}catch(f){r.automaticFailover&&!c&&u(r),s.emit("error",new as.CacheError(f))}})(),s}}};function ECe(t){let e=k({},t);return e.path=`${t.pathname||"/"}${t.search||""}`,delete e.pathname,delete e.search,e}function Kb(t){return{protocol:t.protocol,auth:t.auth,hostname:t.hostname||t.host||"localhost",port:t.port,pathname:t.pathname,search:t.search}}as.RequestError=class extends Error{constructor(t){super(t.message);this.name="RequestError",Object.assign(this,t)}};as.CacheError=class extends Error{constructor(t){super(t.message);this.name="CacheError",Object.assign(this,t)}};UH.exports=as});var jH=C((YVe,GH)=>{"use strict";var yCe=["aborted","complete","headers","httpVersion","httpVersionMinor","httpVersionMajor","method","rawHeaders","rawTrailers","setTimeout","socket","statusCode","statusMessage","trailers","url"];GH.exports=(t,e)=>{if(e._readableState.autoDestroy)throw new Error("The second stream must have the `autoDestroy` option set to `false`");let r=new Set(Object.keys(t).concat(yCe)),i={};for(let n of r)n in e||(i[n]={get(){let s=t[n];return typeof s=="function"?s.bind(t):s},set(s){t[n]=s},enumerable:!0,configurable:!1});return Object.defineProperties(e,i),t.once("aborted",()=>{e.destroy(),e.emit("aborted")}),t.once("close",()=>{t.complete&&e.readable?e.once("end",()=>{e.emit("close")}):e.emit("close")}),e}});var JH=C((GVe,qH)=>{"use strict";var{Transform:BCe,PassThrough:wCe}=require("stream"),Tb=require("zlib"),QCe=jH();qH.exports=t=>{let e=(t.headers["content-encoding"]||"").toLowerCase();if(!["gzip","deflate","br"].includes(e))return t;let r=e==="br";if(r&&typeof Tb.createBrotliDecompress!="function")return t.destroy(new Error("Brotli is not supported on Node.js < 12")),t;let i=!0,n=new BCe({transform(a,l,c){i=!1,c(null,a)},flush(a){a()}}),s=new wCe({autoDestroy:!1,destroy(a,l){t.destroy(),l(a)}}),o=r?Tb.createBrotliDecompress():Tb.createUnzip();return o.once("error",a=>{if(i&&!t.readable){s.end();return}s.destroy(a)}),QCe(t,s),t.pipe(n).pipe(o).pipe(s),s}});var Ub=C((jVe,WH)=>{"use strict";var zH=class{constructor(e={}){if(!(e.maxSize&&e.maxSize>0))throw new TypeError("`maxSize` must be a number greater than 0");this.maxSize=e.maxSize,this.onEviction=e.onEviction,this.cache=new Map,this.oldCache=new Map,this._size=0}_set(e,r){if(this.cache.set(e,r),this._size++,this._size>=this.maxSize){if(this._size=0,typeof this.onEviction=="function")for(let[i,n]of this.oldCache.entries())this.onEviction(i,n);this.oldCache=this.cache,this.cache=new Map}}get(e){if(this.cache.has(e))return this.cache.get(e);if(this.oldCache.has(e)){let r=this.oldCache.get(e);return this.oldCache.delete(e),this._set(e,r),r}}set(e,r){return this.cache.has(e)?this.cache.set(e,r):this._set(e,r),this}has(e){return this.cache.has(e)||this.oldCache.has(e)}peek(e){if(this.cache.has(e))return this.cache.get(e);if(this.oldCache.has(e))return this.oldCache.get(e)}delete(e){let r=this.cache.delete(e);return r&&this._size--,this.oldCache.delete(e)||r}clear(){this.cache.clear(),this.oldCache.clear(),this._size=0}*keys(){for(let[e]of this)yield e}*values(){for(let[,e]of this)yield e}*[Symbol.iterator](){for(let e of this.cache)yield e;for(let e of this.oldCache){let[r]=e;this.cache.has(r)||(yield e)}}get size(){let e=0;for(let r of this.oldCache.keys())this.cache.has(r)||e++;return Math.min(this._size+e,this.maxSize)}};WH.exports=zH});var Yb=C((qVe,VH)=>{"use strict";var bCe=require("events"),DCe=require("tls"),SCe=require("http2"),xCe=Ub(),li=Symbol("currentStreamsCount"),XH=Symbol("request"),hn=Symbol("cachedOriginSet"),cc=Symbol("gracefullyClosing"),PCe=["maxDeflateDynamicTableSize","maxSessionMemory","maxHeaderListPairs","maxOutstandingPings","maxReservedRemoteStreams","maxSendHeaderBlockLength","paddingStrategy","localAddress","path","rejectUnauthorized","minDHSize","ca","cert","clientCertEngine","ciphers","key","pfx","servername","minVersion","maxVersion","secureProtocol","crl","honorCipherOrder","ecdhCurve","dhparam","secureOptions","sessionIdContext"],kCe=(t,e,r)=>{let i=0,n=t.length;for(;i>>1;r(t[s],e)?i=s+1:n=s}return i},vCe=(t,e)=>t.remoteSettings.maxConcurrentStreams>e.remoteSettings.maxConcurrentStreams,Hb=(t,e)=>{for(let r of t)r[hn].lengthe[hn].includes(i))&&r[li]+e[li]<=e.remoteSettings.maxConcurrentStreams&&ZH(r)},FCe=(t,e)=>{for(let r of t)e[hn].lengthr[hn].includes(i))&&e[li]+r[li]<=r.remoteSettings.maxConcurrentStreams&&ZH(e)},_H=({agent:t,isFree:e})=>{let r={};for(let i in t.sessions){let s=t.sessions[i].filter(o=>{let a=o[Xs.kCurrentStreamsCount]{t[cc]=!0,t[li]===0&&t.close()},Xs=class extends bCe{constructor({timeout:e=6e4,maxSessions:r=Infinity,maxFreeSessions:i=10,maxCachedTlsSessions:n=100}={}){super();this.sessions={},this.queue={},this.timeout=e,this.maxSessions=r,this.maxFreeSessions=i,this._freeSessionsCount=0,this._sessionsCount=0,this.settings={enablePush:!1},this.tlsSessionCache=new xCe({maxSize:n})}static normalizeOrigin(e,r){return typeof e=="string"&&(e=new URL(e)),r&&e.hostname!==r&&(e.hostname=r),e.origin}normalizeOptions(e){let r="";if(e)for(let i of PCe)e[i]&&(r+=`:${e[i]}`);return r}_tryToCreateNewSession(e,r){if(!(e in this.queue)||!(r in this.queue[e]))return;let i=this.queue[e][r];this._sessionsCount{Array.isArray(i)?(i=[...i],n()):i=[{resolve:n,reject:s}];let o=this.normalizeOptions(r),a=Xs.normalizeOrigin(e,r&&r.servername);if(a===void 0){for(let{reject:u}of i)u(new TypeError("The `origin` argument needs to be a string or an URL object"));return}if(o in this.sessions){let u=this.sessions[o],g=-1,h=-1,f;for(let p of u){let m=p.remoteSettings.maxConcurrentStreams;if(m=m||p[cc]||p.destroyed)continue;f||(g=m),I>h&&(f=p,h=I)}}if(f){if(i.length!==1){for(let{reject:p}of i){let m=new Error(`Expected the length of listeners to be 1, got ${i.length}. +Please report this to https://github.com/szmarczak/http2-wrapper/`);p(m)}return}i[0].resolve(f);return}}if(o in this.queue){if(a in this.queue[o]){this.queue[o][a].listeners.push(...i),this._tryToCreateNewSession(o,a);return}}else this.queue[o]={};let l=()=>{o in this.queue&&this.queue[o][a]===c&&(delete this.queue[o][a],Object.keys(this.queue[o]).length===0&&delete this.queue[o])},c=()=>{let u=`${a}:${o}`,g=!1;try{let h=SCe.connect(e,k({createConnection:this.createConnection,settings:this.settings,session:this.tlsSessionCache.get(u)},r));h[li]=0,h[cc]=!1;let f=()=>h[li]{this.tlsSessionCache.set(u,I)}),h.once("error",I=>{for(let{reject:y}of i)y(I);this.tlsSessionCache.delete(u)}),h.setTimeout(this.timeout,()=>{h.destroy()}),h.once("close",()=>{if(g){p&&this._freeSessionsCount--,this._sessionsCount--;let I=this.sessions[o];I.splice(I.indexOf(h),1),I.length===0&&delete this.sessions[o]}else{let I=new Error("Session closed without receiving a SETTINGS frame");I.code="HTTP2WRAPPER_NOSETTINGS";for(let{reject:y}of i)y(I);l()}this._tryToCreateNewSession(o,a)});let m=()=>{if(!(!(o in this.queue)||!f())){for(let I of h[hn])if(I in this.queue[o]){let{listeners:y}=this.queue[o][I];for(;y.length!==0&&f();)y.shift().resolve(h);let w=this.queue[o];if(w[I].listeners.length===0&&(delete w[I],Object.keys(w).length===0)){delete this.queue[o];break}if(!f())break}}};h.on("origin",()=>{h[hn]=h.originSet,!!f()&&(m(),Hb(this.sessions[o],h))}),h.once("remoteSettings",()=>{if(h.ref(),h.unref(),this._sessionsCount++,c.destroyed){let I=new Error("Agent has been destroyed");for(let y of i)y.reject(I);h.destroy();return}h[hn]=h.originSet;{let I=this.sessions;if(o in I){let y=I[o];y.splice(kCe(y,h,vCe),0,h)}else I[o]=[h]}this._freeSessionsCount+=1,g=!0,this.emit("session",h),m(),l(),h[li]===0&&this._freeSessionsCount>this.maxFreeSessions&&h.close(),i.length!==0&&(this.getSession(a,r,i),i.length=0),h.on("remoteSettings",()=>{m(),Hb(this.sessions[o],h)})}),h[XH]=h.request,h.request=(I,y)=>{if(h[cc])throw new Error("The session is gracefully closing. No new streams are allowed.");let w=h[XH](I,y);return h.ref(),++h[li],h[li]===h.remoteSettings.maxConcurrentStreams&&this._freeSessionsCount--,w.once("close",()=>{if(p=f(),--h[li],!h.destroyed&&!h.closed&&(FCe(this.sessions[o],h),f()&&!h.closed)){p||(this._freeSessionsCount++,p=!0);let x=h[li]===0;x&&h.unref(),x&&(this._freeSessionsCount>this.maxFreeSessions||h[cc])?h.close():(Hb(this.sessions[o],h),m())}}),w}}catch(h){for(let f of i)f.reject(h);l()}};c.listeners=i,c.completed=!1,c.destroyed=!1,this.queue[o][a]=c,this._tryToCreateNewSession(o,a)})}request(e,r,i,n){return new Promise((s,o)=>{this.getSession(e,r,[{reject:o,resolve:a=>{try{s(a.request(i,n))}catch(l){o(l)}}}])})}createConnection(e,r){return Xs.connect(e,r)}static connect(e,r){r.ALPNProtocols=["h2"];let i=e.port||443,n=e.hostname||e.host;return typeof r.servername=="undefined"&&(r.servername=n),DCe.connect(i,n,r)}closeFreeSessions(){for(let e of Object.values(this.sessions))for(let r of e)r[li]===0&&r.close()}destroy(e){for(let r of Object.values(this.sessions))for(let i of r)i.destroy(e);for(let r of Object.values(this.queue))for(let i of Object.values(r))i.destroyed=!0;this.queue={}}get freeSessions(){return _H({agent:this,isFree:!0})}get busySessions(){return _H({agent:this,isFree:!1})}};Xs.kCurrentStreamsCount=li;Xs.kGracefullyClosing=cc;VH.exports={Agent:Xs,globalAgent:new Xs}});var Gb=C((JVe,$H)=>{"use strict";var{Readable:RCe}=require("stream"),eY=class extends RCe{constructor(e,r){super({highWaterMark:r,autoDestroy:!1});this.statusCode=null,this.statusMessage="",this.httpVersion="2.0",this.httpVersionMajor=2,this.httpVersionMinor=0,this.headers={},this.trailers={},this.req=null,this.aborted=!1,this.complete=!1,this.upgrade=null,this.rawHeaders=[],this.rawTrailers=[],this.socket=e,this.connection=e,this._dumped=!1}_destroy(e){this.req._request.destroy(e)}setTimeout(e,r){return this.req.setTimeout(e,r),this}_dump(){this._dumped||(this._dumped=!0,this.removeAllListeners("data"),this.resume())}_read(){this.req&&this.req._request.resume()}};$H.exports=eY});var jb=C((WVe,tY)=>{"use strict";tY.exports=t=>{let e={protocol:t.protocol,hostname:typeof t.hostname=="string"&&t.hostname.startsWith("[")?t.hostname.slice(1,-1):t.hostname,host:t.host,hash:t.hash,search:t.search,pathname:t.pathname,href:t.href,path:`${t.pathname||""}${t.search||""}`};return typeof t.port=="string"&&t.port.length!==0&&(e.port=Number(t.port)),(t.username||t.password)&&(e.auth=`${t.username||""}:${t.password||""}`),e}});var iY=C((zVe,rY)=>{"use strict";rY.exports=(t,e,r)=>{for(let i of r)t.on(i,(...n)=>e.emit(i,...n))}});var sY=C((VVe,nY)=>{"use strict";nY.exports=t=>{switch(t){case":method":case":scheme":case":authority":case":path":return!0;default:return!1}}});var aY=C((ZVe,oY)=>{"use strict";var uc=(t,e,r)=>{oY.exports[e]=class extends t{constructor(...n){super(typeof r=="string"?r:r(n));this.name=`${super.name} [${e}]`,this.code=e}}};uc(TypeError,"ERR_INVALID_ARG_TYPE",t=>{let e=t[0].includes(".")?"property":"argument",r=t[1],i=Array.isArray(r);return i&&(r=`${r.slice(0,-1).join(", ")} or ${r.slice(-1)}`),`The "${t[0]}" ${e} must be ${i?"one of":"of"} type ${r}. Received ${typeof t[2]}`});uc(TypeError,"ERR_INVALID_PROTOCOL",t=>`Protocol "${t[0]}" not supported. Expected "${t[1]}"`);uc(Error,"ERR_HTTP_HEADERS_SENT",t=>`Cannot ${t[0]} headers after they are sent to the client`);uc(TypeError,"ERR_INVALID_HTTP_TOKEN",t=>`${t[0]} must be a valid HTTP token [${t[1]}]`);uc(TypeError,"ERR_HTTP_INVALID_HEADER_VALUE",t=>`Invalid value "${t[0]} for header "${t[1]}"`);uc(TypeError,"ERR_INVALID_CHAR",t=>`Invalid character in ${t[0]} [${t[1]}]`)});var zb=C((_Ve,AY)=>{"use strict";var LCe=require("http2"),{Writable:NCe}=require("stream"),{Agent:lY,globalAgent:MCe}=Yb(),OCe=Gb(),KCe=jb(),TCe=iY(),UCe=sY(),{ERR_INVALID_ARG_TYPE:qb,ERR_INVALID_PROTOCOL:HCe,ERR_HTTP_HEADERS_SENT:cY,ERR_INVALID_HTTP_TOKEN:YCe,ERR_HTTP_INVALID_HEADER_VALUE:GCe,ERR_INVALID_CHAR:jCe}=aY(),{HTTP2_HEADER_STATUS:uY,HTTP2_HEADER_METHOD:gY,HTTP2_HEADER_PATH:hY,HTTP2_METHOD_CONNECT:qCe}=LCe.constants,Jr=Symbol("headers"),Jb=Symbol("origin"),Wb=Symbol("session"),fY=Symbol("options"),Zm=Symbol("flushedHeaders"),kh=Symbol("jobs"),JCe=/^[\^`\-\w!#$%&*+.|~]+$/,WCe=/[^\t\u0020-\u007E\u0080-\u00FF]/,pY=class extends NCe{constructor(e,r,i){super({autoDestroy:!1});let n=typeof e=="string"||e instanceof URL;if(n&&(e=KCe(e instanceof URL?e:new URL(e))),typeof r=="function"||r===void 0?(i=r,r=n?e:k({},e)):r=k(k({},e),r),r.h2session)this[Wb]=r.h2session;else if(r.agent===!1)this.agent=new lY({maxFreeSessions:0});else if(typeof r.agent=="undefined"||r.agent===null)typeof r.createConnection=="function"?(this.agent=new lY({maxFreeSessions:0}),this.agent.createConnection=r.createConnection):this.agent=MCe;else if(typeof r.agent.request=="function")this.agent=r.agent;else throw new qb("options.agent",["Agent-like Object","undefined","false"],r.agent);if(r.protocol&&r.protocol!=="https:")throw new HCe(r.protocol,"https:");let s=r.port||r.defaultPort||this.agent&&this.agent.defaultPort||443,o=r.hostname||r.host||"localhost";delete r.hostname,delete r.host,delete r.port;let{timeout:a}=r;if(r.timeout=void 0,this[Jr]=Object.create(null),this[kh]=[],this.socket=null,this.connection=null,this.method=r.method||"GET",this.path=r.path,this.res=null,this.aborted=!1,this.reusedSocket=!1,r.headers)for(let[l,c]of Object.entries(r.headers))this.setHeader(l,c);r.auth&&!("authorization"in this[Jr])&&(this[Jr].authorization="Basic "+Buffer.from(r.auth).toString("base64")),r.session=r.tlsSession,r.path=r.socketPath,this[fY]=r,s===443?(this[Jb]=`https://${o}`,":authority"in this[Jr]||(this[Jr][":authority"]=o)):(this[Jb]=`https://${o}:${s}`,":authority"in this[Jr]||(this[Jr][":authority"]=`${o}:${s}`)),a&&this.setTimeout(a),i&&this.once("response",i),this[Zm]=!1}get method(){return this[Jr][gY]}set method(e){e&&(this[Jr][gY]=e.toUpperCase())}get path(){return this[Jr][hY]}set path(e){e&&(this[Jr][hY]=e)}get _mustNotHaveABody(){return this.method==="GET"||this.method==="HEAD"||this.method==="DELETE"}_write(e,r,i){if(this._mustNotHaveABody){i(new Error("The GET, HEAD and DELETE methods must NOT have a body"));return}this.flushHeaders();let n=()=>this._request.write(e,r,i);this._request?n():this[kh].push(n)}_final(e){if(this.destroyed)return;this.flushHeaders();let r=()=>{if(this._mustNotHaveABody){e();return}this._request.end(e)};this._request?r():this[kh].push(r)}abort(){this.res&&this.res.complete||(this.aborted||process.nextTick(()=>this.emit("abort")),this.aborted=!0,this.destroy())}_destroy(e,r){this.res&&this.res._dump(),this._request&&this._request.destroy(),r(e)}async flushHeaders(){if(this[Zm]||this.destroyed)return;this[Zm]=!0;let e=this.method===qCe,r=i=>{if(this._request=i,this.destroyed){i.destroy();return}e||TCe(i,this,["timeout","continue","close","error"]);let n=o=>(...a)=>{!this.writable&&!this.destroyed?o(...a):this.once("finish",()=>{o(...a)})};i.once("response",n((o,a,l)=>{let c=new OCe(this.socket,i.readableHighWaterMark);this.res=c,c.req=this,c.statusCode=o[uY],c.headers=o,c.rawHeaders=l,c.once("end",()=>{this.aborted?(c.aborted=!0,c.emit("aborted")):(c.complete=!0,c.socket=null,c.connection=null)}),e?(c.upgrade=!0,this.emit("connect",c,i,Buffer.alloc(0))?this.emit("close"):i.destroy()):(i.on("data",u=>{!c._dumped&&!c.push(u)&&i.pause()}),i.once("end",()=>{c.push(null)}),this.emit("response",c)||c._dump())})),i.once("headers",n(o=>this.emit("information",{statusCode:o[uY]}))),i.once("trailers",n((o,a,l)=>{let{res:c}=this;c.trailers=o,c.rawTrailers=l}));let{socket:s}=i.session;this.socket=s,this.connection=s;for(let o of this[kh])o();this.emit("socket",this.socket)};if(this[Wb])try{r(this[Wb].request(this[Jr]))}catch(i){this.emit("error",i)}else{this.reusedSocket=!0;try{r(await this.agent.request(this[Jb],this[fY],this[Jr]))}catch(i){this.emit("error",i)}}}getHeader(e){if(typeof e!="string")throw new qb("name","string",e);return this[Jr][e.toLowerCase()]}get headersSent(){return this[Zm]}removeHeader(e){if(typeof e!="string")throw new qb("name","string",e);if(this.headersSent)throw new cY("remove");delete this[Jr][e.toLowerCase()]}setHeader(e,r){if(this.headersSent)throw new cY("set");if(typeof e!="string"||!JCe.test(e)&&!UCe(e))throw new YCe("Header name",e);if(typeof r=="undefined")throw new GCe(r,e);if(WCe.test(r))throw new jCe("header content",e);this[Jr][e.toLowerCase()]=r}setNoDelay(){}setSocketKeepAlive(){}setTimeout(e,r){let i=()=>this._request.setTimeout(e,r);return this._request?i():this[kh].push(i),this}get maxHeadersCount(){if(!this.destroyed&&this._request)return this._request.session.localSettings.maxHeaderListSize}set maxHeadersCount(e){}};AY.exports=pY});var CY=C(($Ve,dY)=>{"use strict";var zCe=require("tls");dY.exports=(t={})=>new Promise((e,r)=>{let i=zCe.connect(t,()=>{t.resolveSocket?(i.off("error",r),e({alpnProtocol:i.alpnProtocol,socket:i})):(i.destroy(),e({alpnProtocol:i.alpnProtocol}))});i.on("error",r)})});var IY=C((e9e,mY)=>{"use strict";var VCe=require("net");mY.exports=t=>{let e=t.host,r=t.headers&&t.headers.host;return r&&(r.startsWith("[")?r.indexOf("]")===-1?e=r:e=r.slice(1,-1):e=r.split(":",1)[0]),VCe.isIP(e)?"":e}});var BY=C((t9e,Vb)=>{"use strict";var EY=require("http"),Xb=require("https"),XCe=CY(),ZCe=Ub(),_Ce=zb(),$Ce=IY(),eme=jb(),_m=new ZCe({maxSize:100}),vh=new Map,yY=(t,e,r)=>{e._httpMessage={shouldKeepAlive:!0};let i=()=>{t.emit("free",e,r)};e.on("free",i);let n=()=>{t.removeSocket(e,r)};e.on("close",n);let s=()=>{t.removeSocket(e,r),e.off("close",n),e.off("free",i),e.off("agentRemove",s)};e.on("agentRemove",s),t.emit("free",e,r)},tme=async t=>{let e=`${t.host}:${t.port}:${t.ALPNProtocols.sort()}`;if(!_m.has(e)){if(vh.has(e))return(await vh.get(e)).alpnProtocol;let{path:r,agent:i}=t;t.path=t.socketPath;let n=XCe(t);vh.set(e,n);try{let{socket:s,alpnProtocol:o}=await n;if(_m.set(e,o),t.path=r,o==="h2")s.destroy();else{let{globalAgent:a}=Xb,l=Xb.Agent.prototype.createConnection;i?i.createConnection===l?yY(i,s,t):s.destroy():a.createConnection===l?yY(a,s,t):s.destroy()}return vh.delete(e),o}catch(s){throw vh.delete(e),s}}return _m.get(e)};Vb.exports=async(t,e,r)=>{if((typeof t=="string"||t instanceof URL)&&(t=eme(new URL(t))),typeof e=="function"&&(r=e,e=void 0),e=V(k(k({ALPNProtocols:["h2","http/1.1"]},t),e),{resolveSocket:!0}),!Array.isArray(e.ALPNProtocols)||e.ALPNProtocols.length===0)throw new Error("The `ALPNProtocols` option must be an Array with at least one entry");e.protocol=e.protocol||"https:";let i=e.protocol==="https:";e.host=e.hostname||e.host||"localhost",e.session=e.tlsSession,e.servername=e.servername||$Ce(e),e.port=e.port||(i?443:80),e._defaultAgent=i?Xb.globalAgent:EY.globalAgent;let n=e.agent;if(n){if(n.addRequest)throw new Error("The `options.agent` object can contain only `http`, `https` or `http2` properties");e.agent=n[i?"https":"http"]}return i&&await tme(e)==="h2"?(n&&(e.agent=n.http2),new _Ce(e,r)):EY.request(e,r)};Vb.exports.protocolCache=_m});var QY=C((r9e,wY)=>{"use strict";var rme=require("http2"),ime=Yb(),Zb=zb(),nme=Gb(),sme=BY(),ome=(t,e,r)=>new Zb(t,e,r),ame=(t,e,r)=>{let i=new Zb(t,e,r);return i.end(),i};wY.exports=V(k(V(k({},rme),{ClientRequest:Zb,IncomingMessage:nme}),ime),{request:ome,get:ame,auto:sme})});var $b=C(_b=>{"use strict";Object.defineProperty(_b,"__esModule",{value:!0});var bY=Vs();_b.default=t=>bY.default.nodeStream(t)&&bY.default.function_(t.getBoundary)});var PY=C(eD=>{"use strict";Object.defineProperty(eD,"__esModule",{value:!0});var DY=require("fs"),SY=require("util"),xY=Vs(),Ame=$b(),lme=SY.promisify(DY.stat);eD.default=async(t,e)=>{if(e&&"content-length"in e)return Number(e["content-length"]);if(!t)return 0;if(xY.default.string(t))return Buffer.byteLength(t);if(xY.default.buffer(t))return t.length;if(Ame.default(t))return SY.promisify(t.getLength.bind(t))();if(t instanceof DY.ReadStream){let{size:r}=await lme(t.path);return r}}});var rD=C(tD=>{"use strict";Object.defineProperty(tD,"__esModule",{value:!0});function cme(t,e,r){let i={};for(let n of r)i[n]=(...s)=>{e.emit(n,...s)},t.on(n,i[n]);return()=>{for(let n of r)t.off(n,i[n])}}tD.default=cme});var kY=C(iD=>{"use strict";Object.defineProperty(iD,"__esModule",{value:!0});iD.default=()=>{let t=[];return{once(e,r,i){e.once(r,i),t.push({origin:e,event:r,fn:i})},unhandleAll(){for(let e of t){let{origin:r,event:i,fn:n}=e;r.removeListener(i,n)}t.length=0}}}});var FY=C(Fh=>{"use strict";Object.defineProperty(Fh,"__esModule",{value:!0});Fh.TimeoutError=void 0;var ume=require("net"),gme=kY(),vY=Symbol("reentry"),hme=()=>{},nD=class extends Error{constructor(e,r){super(`Timeout awaiting '${r}' for ${e}ms`);this.event=r,this.name="TimeoutError",this.code="ETIMEDOUT"}};Fh.TimeoutError=nD;Fh.default=(t,e,r)=>{if(vY in t)return hme;t[vY]=!0;let i=[],{once:n,unhandleAll:s}=gme.default(),o=(g,h,f)=>{var p;let m=setTimeout(h,g,g,f);(p=m.unref)===null||p===void 0||p.call(m);let I=()=>{clearTimeout(m)};return i.push(I),I},{host:a,hostname:l}=r,c=(g,h)=>{t.destroy(new nD(g,h))},u=()=>{for(let g of i)g();s()};if(t.once("error",g=>{if(u(),t.listenerCount("error")===0)throw g}),t.once("close",u),n(t,"response",g=>{n(g,"end",u)}),typeof e.request!="undefined"&&o(e.request,c,"request"),typeof e.socket!="undefined"){let g=()=>{c(e.socket,"socket")};t.setTimeout(e.socket,g),i.push(()=>{t.removeListener("timeout",g)})}return n(t,"socket",g=>{var h;let{socketPath:f}=t;if(g.connecting){let p=Boolean(f!=null?f:ume.isIP((h=l!=null?l:a)!==null&&h!==void 0?h:"")!==0);if(typeof e.lookup!="undefined"&&!p&&typeof g.address().address=="undefined"){let m=o(e.lookup,c,"lookup");n(g,"lookup",m)}if(typeof e.connect!="undefined"){let m=()=>o(e.connect,c,"connect");p?n(g,"connect",m()):n(g,"lookup",I=>{I===null&&n(g,"connect",m())})}typeof e.secureConnect!="undefined"&&r.protocol==="https:"&&n(g,"connect",()=>{let m=o(e.secureConnect,c,"secureConnect");n(g,"secureConnect",m)})}if(typeof e.send!="undefined"){let p=()=>o(e.send,c,"send");g.connecting?n(g,"connect",()=>{n(t,"upload-complete",p())}):n(t,"upload-complete",p())}}),typeof e.response!="undefined"&&n(t,"upload-complete",()=>{let g=o(e.response,c,"response");n(t,"response",g)}),u}});var LY=C(sD=>{"use strict";Object.defineProperty(sD,"__esModule",{value:!0});var RY=Vs();sD.default=t=>{t=t;let e={protocol:t.protocol,hostname:RY.default.string(t.hostname)&&t.hostname.startsWith("[")?t.hostname.slice(1,-1):t.hostname,host:t.host,hash:t.hash,search:t.search,pathname:t.pathname,href:t.href,path:`${t.pathname||""}${t.search||""}`};return RY.default.string(t.port)&&t.port.length!==0&&(e.port=Number(t.port)),(t.username||t.password)&&(e.auth=`${t.username||""}:${t.password||""}`),e}});var NY=C(oD=>{"use strict";Object.defineProperty(oD,"__esModule",{value:!0});var fme=require("url"),pme=["protocol","host","hostname","port","pathname","search"];oD.default=(t,e)=>{var r,i;if(e.path){if(e.pathname)throw new TypeError("Parameters `path` and `pathname` are mutually exclusive.");if(e.search)throw new TypeError("Parameters `path` and `search` are mutually exclusive.");if(e.searchParams)throw new TypeError("Parameters `path` and `searchParams` are mutually exclusive.")}if(e.search&&e.searchParams)throw new TypeError("Parameters `search` and `searchParams` are mutually exclusive.");if(!t){if(!e.protocol)throw new TypeError("No URL protocol specified");t=`${e.protocol}//${(i=(r=e.hostname)!==null&&r!==void 0?r:e.host)!==null&&i!==void 0?i:""}`}let n=new fme.URL(t);if(e.path){let s=e.path.indexOf("?");s===-1?e.pathname=e.path:(e.pathname=e.path.slice(0,s),e.search=e.path.slice(s+1)),delete e.path}for(let s of pme)e[s]&&(n[s]=e[s].toString());return n}});var OY=C(aD=>{"use strict";Object.defineProperty(aD,"__esModule",{value:!0});var MY=class{constructor(){this.weakMap=new WeakMap,this.map=new Map}set(e,r){typeof e=="object"?this.weakMap.set(e,r):this.map.set(e,r)}get(e){return typeof e=="object"?this.weakMap.get(e):this.map.get(e)}has(e){return typeof e=="object"?this.weakMap.has(e):this.map.has(e)}};aD.default=MY});var lD=C(AD=>{"use strict";Object.defineProperty(AD,"__esModule",{value:!0});var dme=async t=>{let e=[],r=0;for await(let i of t)e.push(i),r+=Buffer.byteLength(i);return Buffer.isBuffer(e[0])?Buffer.concat(e,r):Buffer.from(e.join(""))};AD.default=dme});var TY=C(EA=>{"use strict";Object.defineProperty(EA,"__esModule",{value:!0});EA.dnsLookupIpVersionToFamily=EA.isDnsLookupIpVersion=void 0;var KY={auto:0,ipv4:4,ipv6:6};EA.isDnsLookupIpVersion=t=>t in KY;EA.dnsLookupIpVersionToFamily=t=>{if(EA.isDnsLookupIpVersion(t))return KY[t];throw new Error("Invalid DNS lookup IP version")}});var cD=C($m=>{"use strict";Object.defineProperty($m,"__esModule",{value:!0});$m.isResponseOk=void 0;$m.isResponseOk=t=>{let{statusCode:e}=t,r=t.request.options.followRedirect?299:399;return e>=200&&e<=r||e===304}});var HY=C(uD=>{"use strict";Object.defineProperty(uD,"__esModule",{value:!0});var UY=new Set;uD.default=t=>{UY.has(t)||(UY.add(t),process.emitWarning(`Got: ${t}`,{type:"DeprecationWarning"}))}});var YY=C(gD=>{"use strict";Object.defineProperty(gD,"__esModule",{value:!0});var Ut=Vs(),Cme=(t,e)=>{if(Ut.default.null_(t.encoding))throw new TypeError("To get a Buffer, set `options.responseType` to `buffer` instead");Ut.assert.any([Ut.default.string,Ut.default.undefined],t.encoding),Ut.assert.any([Ut.default.boolean,Ut.default.undefined],t.resolveBodyOnly),Ut.assert.any([Ut.default.boolean,Ut.default.undefined],t.methodRewriting),Ut.assert.any([Ut.default.boolean,Ut.default.undefined],t.isStream),Ut.assert.any([Ut.default.string,Ut.default.undefined],t.responseType),t.responseType===void 0&&(t.responseType="text");let{retry:r}=t;if(e?t.retry=k({},e.retry):t.retry={calculateDelay:i=>i.computedValue,limit:0,methods:[],statusCodes:[],errorCodes:[],maxRetryAfter:void 0},Ut.default.object(r)?(t.retry=k(k({},t.retry),r),t.retry.methods=[...new Set(t.retry.methods.map(i=>i.toUpperCase()))],t.retry.statusCodes=[...new Set(t.retry.statusCodes)],t.retry.errorCodes=[...new Set(t.retry.errorCodes)]):Ut.default.number(r)&&(t.retry.limit=r),Ut.default.undefined(t.retry.maxRetryAfter)&&(t.retry.maxRetryAfter=Math.min(...[t.timeout.request,t.timeout.connect].filter(Ut.default.number))),Ut.default.object(t.pagination)){e&&(t.pagination=k(k({},e.pagination),t.pagination));let{pagination:i}=t;if(!Ut.default.function_(i.transform))throw new Error("`options.pagination.transform` must be implemented");if(!Ut.default.function_(i.shouldContinue))throw new Error("`options.pagination.shouldContinue` must be implemented");if(!Ut.default.function_(i.filter))throw new TypeError("`options.pagination.filter` must be implemented");if(!Ut.default.function_(i.paginate))throw new Error("`options.pagination.paginate` must be implemented")}return t.responseType==="json"&&t.headers.accept===void 0&&(t.headers.accept="application/json"),t};gD.default=Cme});var GY=C(Rh=>{"use strict";Object.defineProperty(Rh,"__esModule",{value:!0});Rh.retryAfterStatusCodes=void 0;Rh.retryAfterStatusCodes=new Set([413,429,503]);var mme=({attemptCount:t,retryOptions:e,error:r,retryAfter:i})=>{if(t>e.limit)return 0;let n=e.methods.includes(r.options.method),s=e.errorCodes.includes(r.code),o=r.response&&e.statusCodes.includes(r.response.statusCode);if(!n||!s&&!o)return 0;if(r.response){if(i)return e.maxRetryAfter===void 0||i>e.maxRetryAfter?0:i;if(r.response.statusCode===413)return 0}let a=Math.random()*100;return 2**(t-1)*1e3+a};Rh.default=mme});var Nh=C(Et=>{"use strict";Object.defineProperty(Et,"__esModule",{value:!0});Et.UnsupportedProtocolError=Et.ReadError=Et.TimeoutError=Et.UploadError=Et.CacheError=Et.HTTPError=Et.MaxRedirectsError=Et.RequestError=Et.setNonEnumerableProperties=Et.knownHookEvents=Et.withoutBody=Et.kIsNormalizedAlready=void 0;var jY=require("util"),qY=require("stream"),Ime=require("fs"),Wo=require("url"),JY=require("http"),hD=require("http"),Eme=require("https"),yme=tH(),Bme=AH(),WY=YH(),wme=JH(),Qme=QY(),bme=Vm(),se=Vs(),Dme=PY(),zY=$b(),Sme=rD(),VY=FY(),xme=LY(),XY=NY(),Pme=OY(),kme=lD(),ZY=TY(),vme=cD(),zo=HY(),Fme=YY(),Rme=GY(),Lme=new Bme.default,xr=Symbol("request"),eI=Symbol("response"),gc=Symbol("responseSize"),hc=Symbol("downloadedSize"),fc=Symbol("bodySize"),pc=Symbol("uploadedSize"),tI=Symbol("serverResponsesPiped"),_Y=Symbol("unproxyEvents"),$Y=Symbol("isFromCache"),fD=Symbol("cancelTimeouts"),eG=Symbol("startedReading"),dc=Symbol("stopReading"),rI=Symbol("triggerRead"),Vo=Symbol("body"),Lh=Symbol("jobs"),tG=Symbol("originalResponse"),rG=Symbol("retryTimeout");Et.kIsNormalizedAlready=Symbol("isNormalizedAlready");var Nme=se.default.string(process.versions.brotli);Et.withoutBody=new Set(["GET","HEAD"]);Et.knownHookEvents=["init","beforeRequest","beforeRedirect","beforeError","beforeRetry","afterResponse"];function Mme(t){for(let e in t){let r=t[e];if(!se.default.string(r)&&!se.default.number(r)&&!se.default.boolean(r)&&!se.default.null_(r)&&!se.default.undefined(r))throw new TypeError(`The \`searchParams\` value '${String(r)}' must be a string, number, boolean or null`)}}function Ome(t){return se.default.object(t)&&!("statusCode"in t)}var pD=new Pme.default,Kme=async t=>new Promise((e,r)=>{let i=n=>{r(n)};t.pending||e(),t.once("error",i),t.once("ready",()=>{t.off("error",i),e()})}),Tme=new Set([300,301,302,303,304,307,308]),Ume=["context","body","json","form"];Et.setNonEnumerableProperties=(t,e)=>{let r={};for(let i of t)if(!!i)for(let n of Ume)n in i&&(r[n]={writable:!0,configurable:!0,enumerable:!1,value:i[n]});Object.defineProperties(e,r)};var Ir=class extends Error{constructor(e,r,i){var n;super(e);if(Error.captureStackTrace(this,this.constructor),this.name="RequestError",this.code=r.code,i instanceof dD?(Object.defineProperty(this,"request",{enumerable:!1,value:i}),Object.defineProperty(this,"response",{enumerable:!1,value:i[eI]}),Object.defineProperty(this,"options",{enumerable:!1,value:i.options})):Object.defineProperty(this,"options",{enumerable:!1,value:i}),this.timings=(n=this.request)===null||n===void 0?void 0:n.timings,!se.default.undefined(r.stack)){let s=this.stack.indexOf(this.message)+this.message.length,o=this.stack.slice(s).split(` `).reverse(),a=r.stack.slice(r.stack.indexOf(r.message)+r.message.length).split(` `).reverse();for(;a.length!==0&&a[0]===o[0];)o.shift();this.stack=`${this.stack.slice(0,s)}${o.reverse().join(` `)}${a.reverse().join(` -`)}`}}};pt.RequestError=pr;var lb=class extends pr{constructor(e){super(`Redirected ${e.options.maxRedirects} times. Aborting.`,{},e);this.name="MaxRedirectsError"}};pt.MaxRedirectsError=lb;var cb=class extends pr{constructor(e){super(`Response code ${e.statusCode} (${e.statusMessage})`,{},e.request);this.name="HTTPError"}};pt.HTTPError=cb;var ub=class extends pr{constructor(e,r){super(e.message,e,r);this.name="CacheError"}};pt.CacheError=ub;var gb=class extends pr{constructor(e,r){super(e.message,e,r);this.name="UploadError"}};pt.UploadError=gb;var hb=class extends pr{constructor(e,r,i){super(e.message,e,i);this.name="TimeoutError",this.event=e.event,this.timings=r}};pt.TimeoutError=hb;var gm=class extends pr{constructor(e,r){super(e.message,e,r);this.name="ReadError"}};pt.ReadError=gm;var fb=class extends pr{constructor(e){super(`Unsupported protocol "${e.url.protocol}"`,{},e);this.name="UnsupportedProtocolError"}};pt.UnsupportedProtocolError=fb;var Hde=["socket","connect","continue","information","upgrade","timeout"],Ab=class extends pH.Duplex{constructor(e,r={},i){super({autoDestroy:!1,highWaterMark:0});this[jl]=0,this[ql]=0,this.requestInitialized=!1,this[cm]=new Set,this.redirects=[],this[Jl]=!1,this[um]=!1,this[Zg]=[],this.retryCount=0,this._progressCallbacks=[];let n=()=>this._unlockWrite(),s=()=>this._lockWrite();this.on("pipe",c=>{c.prependListener("data",n),c.on("data",s),c.prependListener("end",n),c.on("end",s)}),this.on("unpipe",c=>{c.off("data",n),c.off("data",s),c.off("end",n),c.off("end",s)}),this.on("pipe",c=>{c instanceof sb.IncomingMessage&&(this.options.headers={...c.headers,...this.options.headers})});let{json:o,body:a,form:l}=r;if((o||a||l)&&this._lockWrite(),pt.kIsNormalizedAlready in r)this.options=r;else try{this.options=this.constructor.normalizeArguments(e,r,i)}catch(c){te.default.nodeStream(r.body)&&r.body.destroy(),this.destroy(c);return}(async()=>{var c;try{this.options.body instanceof Ide.ReadStream&&await Tde(this.options.body);let{url:u}=this.options;if(!u)throw new TypeError("Missing `url` property");if(this.requestUrl=u.toString(),decodeURI(this.requestUrl),await this._finalizeBody(),await this._makeRequest(),this.destroyed){(c=this[Br])===null||c===void 0||c.destroy();return}for(let g of this[Zg])g();this[Zg].length=0,this.requestInitialized=!0}catch(u){if(u instanceof pr){this._beforeError(u);return}this.destroyed||this.destroy(u)}})()}static normalizeArguments(e,r,i){var n,s,o,a,l;let c=r;if(te.default.object(e)&&!te.default.urlInstance(e))r={...i,...e,...r};else{if(e&&r&&r.url!==void 0)throw new TypeError("The `url` option is mutually exclusive with the `input` argument");r={...i,...r},e!==void 0&&(r.url=e),te.default.urlInstance(r.url)&&(r.url=new xo.URL(r.url.toString()))}if(r.cache===!1&&(r.cache=void 0),r.dnsCache===!1&&(r.dnsCache=void 0),te.assert.any([te.default.string,te.default.undefined],r.method),te.assert.any([te.default.object,te.default.undefined],r.headers),te.assert.any([te.default.string,te.default.urlInstance,te.default.undefined],r.prefixUrl),te.assert.any([te.default.object,te.default.undefined],r.cookieJar),te.assert.any([te.default.object,te.default.string,te.default.undefined],r.searchParams),te.assert.any([te.default.object,te.default.string,te.default.undefined],r.cache),te.assert.any([te.default.object,te.default.number,te.default.undefined],r.timeout),te.assert.any([te.default.object,te.default.undefined],r.context),te.assert.any([te.default.object,te.default.undefined],r.hooks),te.assert.any([te.default.boolean,te.default.undefined],r.decompress),te.assert.any([te.default.boolean,te.default.undefined],r.ignoreInvalidCookies),te.assert.any([te.default.boolean,te.default.undefined],r.followRedirect),te.assert.any([te.default.number,te.default.undefined],r.maxRedirects),te.assert.any([te.default.boolean,te.default.undefined],r.throwHttpErrors),te.assert.any([te.default.boolean,te.default.undefined],r.http2),te.assert.any([te.default.boolean,te.default.undefined],r.allowGetBody),te.assert.any([te.default.string,te.default.undefined],r.localAddress),te.assert.any([yH.isDnsLookupIpVersion,te.default.undefined],r.dnsLookupIpVersion),te.assert.any([te.default.object,te.default.undefined],r.https),te.assert.any([te.default.boolean,te.default.undefined],r.rejectUnauthorized),r.https&&(te.assert.any([te.default.boolean,te.default.undefined],r.https.rejectUnauthorized),te.assert.any([te.default.function_,te.default.undefined],r.https.checkServerIdentity),te.assert.any([te.default.string,te.default.object,te.default.array,te.default.undefined],r.https.certificateAuthority),te.assert.any([te.default.string,te.default.object,te.default.array,te.default.undefined],r.https.key),te.assert.any([te.default.string,te.default.object,te.default.array,te.default.undefined],r.https.certificate),te.assert.any([te.default.string,te.default.undefined],r.https.passphrase),te.assert.any([te.default.string,te.default.buffer,te.default.array,te.default.undefined],r.https.pfx)),te.assert.any([te.default.object,te.default.undefined],r.cacheOptions),te.default.string(r.method)?r.method=r.method.toUpperCase():r.method="GET",r.headers===(i==null?void 0:i.headers)?r.headers={...r.headers}:r.headers=bde({...i==null?void 0:i.headers,...r.headers}),"slashes"in r)throw new TypeError("The legacy `url.Url` has been deprecated. Use `URL` instead.");if("auth"in r)throw new TypeError("Parameter `auth` is deprecated. Use `username` / `password` instead.");if("searchParams"in r&&r.searchParams&&r.searchParams!==(i==null?void 0:i.searchParams)){let f;if(te.default.string(r.searchParams)||r.searchParams instanceof xo.URLSearchParams)f=new xo.URLSearchParams(r.searchParams);else{Nde(r.searchParams),f=new xo.URLSearchParams;for(let p in r.searchParams){let m=r.searchParams[p];m===null?f.append(p,""):m!==void 0&&f.append(p,m)}}(n=i==null?void 0:i.searchParams)===null||n===void 0||n.forEach((p,m)=>{f.has(m)||f.append(m,p)}),r.searchParams=f}if(r.username=(s=r.username)!==null&&s!==void 0?s:"",r.password=(o=r.password)!==null&&o!==void 0?o:"",te.default.undefined(r.prefixUrl)?r.prefixUrl=(a=i==null?void 0:i.prefixUrl)!==null&&a!==void 0?a:"":(r.prefixUrl=r.prefixUrl.toString(),r.prefixUrl!==""&&!r.prefixUrl.endsWith("/")&&(r.prefixUrl+="/")),te.default.string(r.url)){if(r.url.startsWith("/"))throw new Error("`input` must not start with a slash when using `prefixUrl`");r.url=EH.default(r.prefixUrl+r.url,r)}else(te.default.undefined(r.url)&&r.prefixUrl!==""||r.protocol)&&(r.url=EH.default(r.prefixUrl,r));if(r.url){"port"in r&&delete r.port;let{prefixUrl:f}=r;Object.defineProperty(r,"prefixUrl",{set:m=>{let I=r.url;if(!I.href.startsWith(m))throw new Error(`Cannot change \`prefixUrl\` from ${f} to ${m}: ${I.href}`);r.url=new xo.URL(m+I.href.slice(f.length)),f=m},get:()=>f});let{protocol:p}=r.url;if(p==="unix:"&&(p="http:",r.url=new xo.URL(`http://unix${r.url.pathname}${r.url.search}`)),r.searchParams&&(r.url.search=r.searchParams.toString()),p!=="http:"&&p!=="https:")throw new fb(r);r.username===""?r.username=r.url.username:r.url.username=r.username,r.password===""?r.password=r.url.password:r.url.password=r.password}let{cookieJar:u}=r;if(u){let{setCookie:f,getCookieString:p}=u;te.assert.function_(f),te.assert.function_(p),f.length===4&&p.length===0&&(f=fH.promisify(f.bind(r.cookieJar)),p=fH.promisify(p.bind(r.cookieJar)),r.cookieJar={setCookie:f,getCookieString:p})}let{cache:g}=r;if(g&&(ab.has(g)||ab.set(g,new CH((f,p)=>{let m=f[Br](f,p);return te.default.promise(m)&&(m.once=(I,y)=>{if(I==="error")m.catch(y);else if(I==="abort")(async()=>{try{(await m).once("abort",y)}catch(B){}})();else throw new Error(`Unknown HTTP2 promise event: ${I}`);return m}),m},g))),r.cacheOptions={...r.cacheOptions},r.dnsCache===!0)r.dnsCache=Lde;else if(!te.default.undefined(r.dnsCache)&&!r.dnsCache.lookup)throw new TypeError(`Parameter \`dnsCache\` must be a CacheableLookup instance or a boolean, got ${te.default(r.dnsCache)}`);te.default.number(r.timeout)?r.timeout={request:r.timeout}:i&&r.timeout!==i.timeout?r.timeout={...i.timeout,...r.timeout}:r.timeout={...r.timeout},r.context||(r.context={});let h=r.hooks===(i==null?void 0:i.hooks);r.hooks={...r.hooks};for(let f of pt.knownHookEvents)if(f in r.hooks)if(te.default.array(r.hooks[f]))r.hooks[f]=[...r.hooks[f]];else throw new TypeError(`Parameter \`${f}\` must be an Array, got ${te.default(r.hooks[f])}`);else r.hooks[f]=[];if(i&&!h)for(let f of pt.knownHookEvents)i.hooks[f].length!==0&&(r.hooks[f]=[...i.hooks[f],...r.hooks[f]]);if("family"in r&&ko.default('"options.family" was never documented, please use "options.dnsLookupIpVersion"'),(i==null?void 0:i.https)&&(r.https={...i.https,...r.https}),"rejectUnauthorized"in r&&ko.default('"options.rejectUnauthorized" is now deprecated, please use "options.https.rejectUnauthorized"'),"checkServerIdentity"in r&&ko.default('"options.checkServerIdentity" was never documented, please use "options.https.checkServerIdentity"'),"ca"in r&&ko.default('"options.ca" was never documented, please use "options.https.certificateAuthority"'),"key"in r&&ko.default('"options.key" was never documented, please use "options.https.key"'),"cert"in r&&ko.default('"options.cert" was never documented, please use "options.https.certificate"'),"passphrase"in r&&ko.default('"options.passphrase" was never documented, please use "options.https.passphrase"'),"pfx"in r&&ko.default('"options.pfx" was never documented, please use "options.https.pfx"'),"followRedirects"in r)throw new TypeError("The `followRedirects` option does not exist. Use `followRedirect` instead.");if(r.agent){for(let f in r.agent)if(f!=="http"&&f!=="https"&&f!=="http2")throw new TypeError(`Expected the \`options.agent\` properties to be \`http\`, \`https\` or \`http2\`, got \`${f}\``)}return r.maxRedirects=(l=r.maxRedirects)!==null&&l!==void 0?l:0,pt.setNonEnumerableProperties([i,c],r),Fde.default(r,i)}_lockWrite(){let e=()=>{throw new TypeError("The payload has been already provided")};this.write=e,this.end=e}_unlockWrite(){this.write=super.write,this.end=super.end}async _finalizeBody(){let{options:e}=this,{headers:r}=e,i=!te.default.undefined(e.form),n=!te.default.undefined(e.json),s=!te.default.undefined(e.body),o=i||n||s,a=pt.withoutBody.has(e.method)&&!(e.method==="GET"&&e.allowGetBody);if(this._cannotHaveBody=a,o){if(a)throw new TypeError(`The \`${e.method}\` method cannot be used with a body`);if([s,i,n].filter(l=>l).length>1)throw new TypeError("The `body`, `json` and `form` options are mutually exclusive");if(s&&!(e.body instanceof pH.Readable)&&!te.default.string(e.body)&&!te.default.buffer(e.body)&&!mH.default(e.body))throw new TypeError("The `body` option must be a stream.Readable, string or Buffer");if(i&&!te.default.object(e.form))throw new TypeError("The `form` option must be an Object");{let l=!te.default.string(r["content-type"]);s?(mH.default(e.body)&&l&&(r["content-type"]=`multipart/form-data; boundary=${e.body.getBoundary()}`),this[vo]=e.body):i?(l&&(r["content-type"]="application/x-www-form-urlencoded"),this[vo]=new xo.URLSearchParams(e.form).toString()):(l&&(r["content-type"]="application/json"),this[vo]=e.stringifyJson(e.json));let c=await Dde.default(this[vo],e.headers);te.default.undefined(r["content-length"])&&te.default.undefined(r["transfer-encoding"])&&!a&&!te.default.undefined(c)&&(r["content-length"]=String(c))}}else a?this._lockWrite():this._unlockWrite();this[Gl]=Number(r["content-length"])||void 0}async _onResponseBase(e){let{options:r}=this,{url:i}=r;this[bH]=e,r.decompress&&(e=wde(e));let n=e.statusCode,s=e;s.statusMessage=s.statusMessage?s.statusMessage:dH.STATUS_CODES[n],s.url=r.url.toString(),s.requestUrl=this.requestUrl,s.redirectUrls=this.redirects,s.request=this,s.isFromCache=e.fromCache||!1,s.ip=this.ip,s.retryCount=this.retryCount,this[wH]=s.isFromCache,this[Yl]=Number(e.headers["content-length"])||void 0,this[lm]=e,e.once("end",()=>{this[Yl]=this[jl],this.emit("downloadProgress",this.downloadProgress)}),e.once("error",a=>{e.destroy(),this._beforeError(new gm(a,this))}),e.once("aborted",()=>{this._beforeError(new gm({name:"Error",message:"The server aborted pending request",code:"ECONNRESET"},this))}),this.emit("downloadProgress",this.downloadProgress);let o=e.headers["set-cookie"];if(te.default.object(r.cookieJar)&&o){let a=o.map(async l=>r.cookieJar.setCookie(l,i.toString()));r.ignoreInvalidCookies&&(a=a.map(async l=>l.catch(()=>{})));try{await Promise.all(a)}catch(l){this._beforeError(l);return}}if(r.followRedirect&&e.headers.location&&Kde.has(n)){if(e.resume(),this[Br]&&(this[ob](),delete this[Br],this[BH]()),(n===303&&r.method!=="GET"&&r.method!=="HEAD"||!r.methodRewriting)&&(r.method="GET","body"in r&&delete r.body,"json"in r&&delete r.json,"form"in r&&delete r.form,this[vo]=void 0,delete r.headers["content-length"]),this.redirects.length>=r.maxRedirects){this._beforeError(new lb(this));return}try{let l=Buffer.from(e.headers.location,"binary").toString(),c=new xo.URL(l,i),u=c.toString();decodeURI(u),c.hostname!==i.hostname||c.port!==i.port?("host"in r.headers&&delete r.headers.host,"cookie"in r.headers&&delete r.headers.cookie,"authorization"in r.headers&&delete r.headers.authorization,(r.username||r.password)&&(r.username="",r.password="")):(c.username=r.username,c.password=r.password),this.redirects.push(u),r.url=c;for(let g of r.hooks.beforeRedirect)await g(r,s);this.emit("redirect",s,r),await this._makeRequest()}catch(l){this._beforeError(l);return}return}if(r.isStream&&r.throwHttpErrors&&!vde.isResponseOk(s)){this._beforeError(new cb(s));return}e.on("readable",()=>{this[um]&&this._read()}),this.on("resume",()=>{e.resume()}),this.on("pause",()=>{e.pause()}),e.once("end",()=>{this.push(null)}),this.emit("response",e);for(let a of this[cm])if(!a.headersSent){for(let l in e.headers){let c=r.decompress?l!=="content-encoding":!0,u=e.headers[l];c&&a.setHeader(l,u)}a.statusCode=n}}async _onResponse(e){try{await this._onResponseBase(e)}catch(r){this._beforeError(r)}}_onRequest(e){let{options:r}=this,{timeout:i,url:n}=r;yde.default(e),this[ob]=IH.default(e,i,n);let s=r.cache?"cacheableResponse":"response";e.once(s,l=>{this._onResponse(l)}),e.once("error",l=>{var c;e.destroy(),(c=e.res)===null||c===void 0||c.removeAllListeners("end"),l instanceof IH.TimeoutError?l=new hb(l,this.timings,this):l=new pr(l.message,l,this),this._beforeError(l)}),this[BH]=Sde.default(e,this,Hde),this[Br]=e,this.emit("uploadProgress",this.uploadProgress);let o=this[vo],a=this.redirects.length===0?this:e;te.default.nodeStream(o)?(o.pipe(a),o.once("error",l=>{this._beforeError(new gb(l,this))})):(this._unlockWrite(),te.default.undefined(o)?(this._cannotHaveBody||this._noPipe)&&(a.end(),this._lockWrite()):(this._writeRequest(o,void 0,()=>{}),a.end(),this._lockWrite())),this.emit("request",e)}async _createCacheableRequest(e,r){return new Promise((i,n)=>{Object.assign(r,Pde.default(e)),delete r.url;let s,o=ab.get(r.cache)(r,async a=>{a._readableState.autoDestroy=!1,s&&(await s).emit("cacheableResponse",a),i(a)});r.url=e,o.once("error",n),o.once("request",async a=>{s=a,i(s)})})}async _makeRequest(){var e,r,i,n,s;let{options:o}=this,{headers:a}=o;for(let y in a)if(te.default.undefined(a[y]))delete a[y];else if(te.default.null_(a[y]))throw new TypeError(`Use \`undefined\` instead of \`null\` to delete the \`${y}\` header`);if(o.decompress&&te.default.undefined(a["accept-encoding"])&&(a["accept-encoding"]=Mde?"gzip, deflate, br":"gzip, deflate"),o.cookieJar){let y=await o.cookieJar.getCookieString(o.url.toString());te.default.nonEmptyString(y)&&(o.headers.cookie=y)}for(let y of o.hooks.beforeRequest){let B=await y(o);if(!te.default.undefined(B)){o.request=()=>B;break}}o.body&&this[vo]!==o.body&&(this[vo]=o.body);let{agent:l,request:c,timeout:u,url:g}=o;if(o.dnsCache&&!("lookup"in o)&&(o.lookup=o.dnsCache.lookup),g.hostname==="unix"){let y=/(?.+?):(?.+)/.exec(`${g.pathname}${g.search}`);if(y==null?void 0:y.groups){let{socketPath:B,path:P}=y.groups;Object.assign(o,{socketPath:B,path:P,host:""})}}let h=g.protocol==="https:",f;o.http2?f=Qde.auto:f=h?Ede.request:dH.request;let p=(e=o.request)!==null&&e!==void 0?e:f,m=o.cache?this._createCacheableRequest:p;l&&!o.http2&&(o.agent=l[h?"https":"http"]),o[Br]=p,delete o.request,delete o.timeout;let I=o;if(I.shared=(r=o.cacheOptions)===null||r===void 0?void 0:r.shared,I.cacheHeuristic=(i=o.cacheOptions)===null||i===void 0?void 0:i.cacheHeuristic,I.immutableMinTimeToLive=(n=o.cacheOptions)===null||n===void 0?void 0:n.immutableMinTimeToLive,I.ignoreCargoCult=(s=o.cacheOptions)===null||s===void 0?void 0:s.ignoreCargoCult,o.dnsLookupIpVersion!==void 0)try{I.family=yH.dnsLookupIpVersionToFamily(o.dnsLookupIpVersion)}catch(y){throw new Error("Invalid `dnsLookupIpVersion` option value")}o.https&&("rejectUnauthorized"in o.https&&(I.rejectUnauthorized=o.https.rejectUnauthorized),o.https.checkServerIdentity&&(I.checkServerIdentity=o.https.checkServerIdentity),o.https.certificateAuthority&&(I.ca=o.https.certificateAuthority),o.https.certificate&&(I.cert=o.https.certificate),o.https.key&&(I.key=o.https.key),o.https.passphrase&&(I.passphrase=o.https.passphrase),o.https.pfx&&(I.pfx=o.https.pfx));try{let y=await m(g,I);te.default.undefined(y)&&(y=f(g,I)),o.request=c,o.timeout=u,o.agent=l,o.https&&("rejectUnauthorized"in o.https&&delete I.rejectUnauthorized,o.https.checkServerIdentity&&delete I.checkServerIdentity,o.https.certificateAuthority&&delete I.ca,o.https.certificate&&delete I.cert,o.https.key&&delete I.key,o.https.passphrase&&delete I.passphrase,o.https.pfx&&delete I.pfx),Ode(y)?this._onRequest(y):this.writable?(this.once("finish",()=>{this._onResponse(y)}),this._unlockWrite(),this.end(),this._lockWrite()):this._onResponse(y)}catch(y){throw y instanceof CH.CacheError?new ub(y,this):new pr(y.message,y,this)}}async _error(e){try{for(let r of this.options.hooks.beforeError)e=await r(e)}catch(r){e=new pr(r.message,r,this)}this.destroy(e)}_beforeError(e){if(this[Jl])return;let{options:r}=this,i=this.retryCount+1;this[Jl]=!0,e instanceof pr||(e=new pr(e.message,e,this));let n=e,{response:s}=n;(async()=>{if(s&&!s.body){s.setEncoding(this._readableState.encoding);try{s.rawBody=await kde.default(s),s.body=s.rawBody.toString()}catch(o){}}if(this.listenerCount("retry")!==0){let o;try{let a;s&&"retry-after"in s.headers&&(a=Number(s.headers["retry-after"]),Number.isNaN(a)?(a=Date.parse(s.headers["retry-after"])-Date.now(),a<=0&&(a=1)):a*=1e3),o=await r.retry.calculateDelay({attemptCount:i,retryOptions:r.retry,error:n,retryAfter:a,computedValue:Rde.default({attemptCount:i,retryOptions:r.retry,error:n,retryAfter:a,computedValue:0})})}catch(a){this._error(new pr(a.message,a,this));return}if(o){let a=async()=>{try{for(let l of this.options.hooks.beforeRetry)await l(this.options,n,i)}catch(l){this._error(new pr(l.message,e,this));return}this.destroyed||(this.destroy(),this.emit("retry",i,e))};this[DH]=setTimeout(a,o);return}}this._error(n)})()}_read(){this[um]=!0;let e=this[lm];if(e&&!this[Jl]){e.readableLength&&(this[um]=!1);let r;for(;(r=e.read())!==null;){this[jl]+=r.length,this[QH]=!0;let i=this.downloadProgress;i.percent<1&&this.emit("downloadProgress",i),this.push(r)}}}_write(e,r,i){let n=()=>{this._writeRequest(e,r,i)};this.requestInitialized?n():this[Zg].push(n)}_writeRequest(e,r,i){this[Br].destroyed||(this._progressCallbacks.push(()=>{this[ql]+=Buffer.byteLength(e,r);let n=this.uploadProgress;n.percent<1&&this.emit("uploadProgress",n)}),this[Br].write(e,r,n=>{!n&&this._progressCallbacks.length!==0&&this._progressCallbacks.shift()(),i(n)}))}_final(e){let r=()=>{for(;this._progressCallbacks.length!==0;)this._progressCallbacks.shift()();if(!(Br in this)){e();return}if(this[Br].destroyed){e();return}this[Br].end(i=>{i||(this[Gl]=this[ql],this.emit("uploadProgress",this.uploadProgress),this[Br].emit("upload-complete")),e(i)})};this.requestInitialized?r():this[Zg].push(r)}_destroy(e,r){var i;this[Jl]=!0,clearTimeout(this[DH]),Br in this&&(this[ob](),((i=this[lm])===null||i===void 0?void 0:i.complete)||this[Br].destroy()),e!==null&&!te.default.undefined(e)&&!(e instanceof pr)&&(e=new pr(e.message,e,this)),r(e)}get _isAboutToError(){return this[Jl]}get ip(){var e;return(e=this[Br])===null||e===void 0?void 0:e.socket.remoteAddress}get aborted(){var e,r,i;return((r=(e=this[Br])===null||e===void 0?void 0:e.destroyed)!==null&&r!==void 0?r:this.destroyed)&&!((i=this[bH])===null||i===void 0?void 0:i.complete)}get socket(){var e;return(e=this[Br])===null||e===void 0?void 0:e.socket}get downloadProgress(){let e;return this[Yl]?e=this[jl]/this[Yl]:this[Yl]===this[jl]?e=1:e=0,{percent:e,transferred:this[jl],total:this[Yl]}}get uploadProgress(){let e;return this[Gl]?e=this[ql]/this[Gl]:this[Gl]===this[ql]?e=1:e=0,{percent:e,transferred:this[ql],total:this[Gl]}}get timings(){var e;return(e=this[Br])===null||e===void 0?void 0:e.timings}get isFromCache(){return this[wH]}pipe(e,r){if(this[QH])throw new Error("Failed to pipe. The response has been emitted already.");return e instanceof sb.ServerResponse&&this[cm].add(e),super.pipe(e,r)}unpipe(e){return e instanceof sb.ServerResponse&&this[cm].delete(e),super.unpipe(e),this}};pt.default=Ab});var $g=C(Sn=>{"use strict";var Yde=Sn&&Sn.__createBinding||(Object.create?function(t,e,r,i){i===void 0&&(i=r),Object.defineProperty(t,i,{enumerable:!0,get:function(){return e[r]}})}:function(t,e,r,i){i===void 0&&(i=r),t[i]=e[r]}),jde=Sn&&Sn.__exportStar||function(t,e){for(var r in t)r!=="default"&&!Object.prototype.hasOwnProperty.call(e,r)&&Yde(e,t,r)};Object.defineProperty(Sn,"__esModule",{value:!0});Sn.CancelError=Sn.ParseError=void 0;var SH=_g(),PH=class extends SH.RequestError{constructor(e,r){let{options:i}=r.request;super(`${e.message} in "${i.url.toString()}"`,e,r.request);this.name="ParseError"}};Sn.ParseError=PH;var xH=class extends SH.RequestError{constructor(e){super("Promise was canceled",{},e);this.name="CancelError"}get isCanceled(){return!0}};Sn.CancelError=xH;jde(_g(),Sn)});var vH=C(pb=>{"use strict";Object.defineProperty(pb,"__esModule",{value:!0});var kH=$g(),Gde=(t,e,r,i)=>{let{rawBody:n}=t;try{if(e==="text")return n.toString(i);if(e==="json")return n.length===0?"":r(n.toString());if(e==="buffer")return n;throw new kH.ParseError({message:`Unknown body type '${e}'`,name:"Error"},t)}catch(s){throw new kH.ParseError(s,t)}};pb.default=Gde});var db=C(Fo=>{"use strict";var qde=Fo&&Fo.__createBinding||(Object.create?function(t,e,r,i){i===void 0&&(i=r),Object.defineProperty(t,i,{enumerable:!0,get:function(){return e[r]}})}:function(t,e,r,i){i===void 0&&(i=r),t[i]=e[r]}),Jde=Fo&&Fo.__exportStar||function(t,e){for(var r in t)r!=="default"&&!Object.prototype.hasOwnProperty.call(e,r)&&qde(e,t,r)};Object.defineProperty(Fo,"__esModule",{value:!0});var Wde=require("events"),zde=Fs(),Xde=wU(),hm=$g(),FH=vH(),RH=_g(),Vde=z0(),Zde=tb(),LH=rb(),_de=["request","response","redirect","uploadProgress","downloadProgress"];function MH(t){let e,r,i=new Wde.EventEmitter,n=new Xde((o,a,l)=>{let c=u=>{let g=new RH.default(void 0,t);g.retryCount=u,g._noPipe=!0,l(()=>g.destroy()),l.shouldReject=!1,l(()=>a(new hm.CancelError(g))),e=g,g.once("response",async f=>{var p;if(f.retryCount=u,f.request.aborted)return;let m;try{m=await Zde.default(g),f.rawBody=m}catch(P){return}if(g._isAboutToError)return;let I=((p=f.headers["content-encoding"])!==null&&p!==void 0?p:"").toLowerCase(),y=["gzip","deflate","br"].includes(I),{options:B}=g;if(y&&!B.decompress)f.body=m;else try{f.body=FH.default(f,B.responseType,B.parseJson,B.encoding)}catch(P){if(f.body=m.toString(),LH.isResponseOk(f)){g._beforeError(P);return}}try{for(let[P,k]of B.hooks.afterResponse.entries())f=await k(f,async N=>{let O=RH.default.normalizeArguments(void 0,{...N,retry:{calculateDelay:()=>0},throwHttpErrors:!1,resolveBodyOnly:!1},B);O.hooks.afterResponse=O.hooks.afterResponse.slice(0,P);for(let U of O.hooks.beforeRetry)await U(O);let v=MH(O);return l(()=>{v.catch(()=>{}),v.cancel()}),v})}catch(P){g._beforeError(new hm.RequestError(P.message,P,g));return}if(!LH.isResponseOk(f)){g._beforeError(new hm.HTTPError(f));return}r=f,o(g.options.resolveBodyOnly?f.body:f)});let h=f=>{if(n.isCanceled)return;let{options:p}=g;if(f instanceof hm.HTTPError&&!p.throwHttpErrors){let{response:m}=f;o(g.options.resolveBodyOnly?m.body:m);return}a(f)};g.once("error",h),g.once("retry",(f,p)=>{var m;if(zde.default.nodeStream((m=p.request)===null||m===void 0?void 0:m.options.body)){h(p);return}c(f)}),Vde.default(g,i,_de)};c(0)});n.on=(o,a)=>(i.on(o,a),n);let s=o=>{let a=(async()=>{await n;let{options:l}=r.request;return FH.default(r,o,l.parseJson,l.encoding)})();return Object.defineProperties(a,Object.getOwnPropertyDescriptors(n)),a};return n.json=()=>{let{headers:o}=e.options;return!e.writableFinished&&o.accept===void 0&&(o.accept="application/json"),s("json")},n.buffer=()=>s("buffer"),n.text=()=>s("text"),n}Fo.default=MH;Jde($g(),Fo)});var NH=C(Cb=>{"use strict";Object.defineProperty(Cb,"__esModule",{value:!0});var $de=$g();function eCe(t,...e){let r=(async()=>{if(t instanceof $de.RequestError)try{for(let n of e)if(n)for(let s of n)t=await s(t)}catch(n){t=n}throw t})(),i=()=>r;return r.json=i,r.text=i,r.buffer=i,r.on=i,r}Cb.default=eCe});var KH=C(mb=>{"use strict";Object.defineProperty(mb,"__esModule",{value:!0});var OH=Fs();function TH(t){for(let e of Object.values(t))(OH.default.plainObject(e)||OH.default.array(e))&&TH(e);return Object.freeze(t)}mb.default=TH});var HH=C(UH=>{"use strict";Object.defineProperty(UH,"__esModule",{value:!0})});var Ib=C(nn=>{"use strict";var tCe=nn&&nn.__createBinding||(Object.create?function(t,e,r,i){i===void 0&&(i=r),Object.defineProperty(t,i,{enumerable:!0,get:function(){return e[r]}})}:function(t,e,r,i){i===void 0&&(i=r),t[i]=e[r]}),rCe=nn&&nn.__exportStar||function(t,e){for(var r in t)r!=="default"&&!Object.prototype.hasOwnProperty.call(e,r)&&tCe(e,t,r)};Object.defineProperty(nn,"__esModule",{value:!0});nn.defaultHandler=void 0;var YH=Fs(),sn=db(),iCe=NH(),fm=_g(),nCe=KH(),sCe={RequestError:sn.RequestError,CacheError:sn.CacheError,ReadError:sn.ReadError,HTTPError:sn.HTTPError,MaxRedirectsError:sn.MaxRedirectsError,TimeoutError:sn.TimeoutError,ParseError:sn.ParseError,CancelError:sn.CancelError,UnsupportedProtocolError:sn.UnsupportedProtocolError,UploadError:sn.UploadError},oCe=async t=>new Promise(e=>{setTimeout(e,t)}),{normalizeArguments:pm}=fm.default,jH=(...t)=>{let e;for(let r of t)e=pm(void 0,r,e);return e},aCe=t=>t.isStream?new fm.default(void 0,t):sn.default(t),ACe=t=>"defaults"in t&&"options"in t.defaults,lCe=["get","post","put","patch","head","delete"];nn.defaultHandler=(t,e)=>e(t);var GH=(t,e)=>{if(t)for(let r of t)r(e)},qH=t=>{t._rawHandlers=t.handlers,t.handlers=t.handlers.map(i=>(n,s)=>{let o,a=i(n,l=>(o=s(l),o));if(a!==o&&!n.isStream&&o){let l=a,{then:c,catch:u,finally:g}=l;Object.setPrototypeOf(l,Object.getPrototypeOf(o)),Object.defineProperties(l,Object.getOwnPropertyDescriptors(o)),l.then=c,l.catch=u,l.finally=g}return a});let e=(i,n,s)=>{var o,a;let l=0,c=u=>t.handlers[l++](u,l===t.handlers.length?aCe:c);if(YH.default.plainObject(i)){let u={...i,...n};fm.setNonEnumerableProperties([i,n],u),n=u,i=void 0}try{let u;try{GH(t.options.hooks.init,n),GH((o=n==null?void 0:n.hooks)===null||o===void 0?void 0:o.init,n)}catch(h){u=h}let g=pm(i,n,s!=null?s:t.options);if(g[fm.kIsNormalizedAlready]=!0,u)throw new sn.RequestError(u.message,u,g);return c(g)}catch(u){if(n==null?void 0:n.isStream)throw u;return iCe.default(u,t.options.hooks.beforeError,(a=n==null?void 0:n.hooks)===null||a===void 0?void 0:a.beforeError)}};e.extend=(...i)=>{let n=[t.options],s=[...t._rawHandlers],o;for(let a of i)ACe(a)?(n.push(a.defaults.options),s.push(...a.defaults._rawHandlers),o=a.defaults.mutableDefaults):(n.push(a),"handlers"in a&&s.push(...a.handlers),o=a.mutableDefaults);return s=s.filter(a=>a!==nn.defaultHandler),s.length===0&&s.push(nn.defaultHandler),qH({options:jH(...n),handlers:s,mutableDefaults:Boolean(o)})};let r=async function*(i,n){let s=pm(i,n,t.options);s.resolveBodyOnly=!1;let o=s.pagination;if(!YH.default.object(o))throw new TypeError("`options.pagination` must be implemented");let a=[],{countLimit:l}=o,c=0;for(;c{let s=[];for await(let o of r(i,n))s.push(o);return s},e.paginate.each=r,e.stream=(i,n)=>e(i,{...n,isStream:!0});for(let i of lCe)e[i]=(n,s)=>e(n,{...s,method:i}),e.stream[i]=(n,s)=>e(n,{...s,method:i,isStream:!0});return Object.assign(e,sCe),Object.defineProperty(e,"defaults",{value:t.mutableDefaults?t:nCe.default(t),writable:t.mutableDefaults,configurable:t.mutableDefaults,enumerable:!0}),e.mergeOptions=jH,e};nn.default=qH;rCe(HH(),nn)});var Cm=C((Ls,dm)=>{"use strict";var cCe=Ls&&Ls.__createBinding||(Object.create?function(t,e,r,i){i===void 0&&(i=r),Object.defineProperty(t,i,{enumerable:!0,get:function(){return e[r]}})}:function(t,e,r,i){i===void 0&&(i=r),t[i]=e[r]}),JH=Ls&&Ls.__exportStar||function(t,e){for(var r in t)r!=="default"&&!Object.prototype.hasOwnProperty.call(e,r)&&cCe(e,t,r)};Object.defineProperty(Ls,"__esModule",{value:!0});var uCe=require("url"),WH=Ib(),gCe={options:{method:"GET",retry:{limit:2,methods:["GET","PUT","HEAD","DELETE","OPTIONS","TRACE"],statusCodes:[408,413,429,500,502,503,504,521,522,524],errorCodes:["ETIMEDOUT","ECONNRESET","EADDRINUSE","ECONNREFUSED","EPIPE","ENOTFOUND","ENETUNREACH","EAI_AGAIN"],maxRetryAfter:void 0,calculateDelay:({computedValue:t})=>t},timeout:{},headers:{"user-agent":"got (https://github.com/sindresorhus/got)"},hooks:{init:[],beforeRequest:[],beforeRedirect:[],beforeRetry:[],beforeError:[],afterResponse:[]},cache:void 0,dnsCache:void 0,decompress:!0,throwHttpErrors:!0,followRedirect:!0,isStream:!1,responseType:"text",resolveBodyOnly:!1,maxRedirects:10,prefixUrl:"",methodRewriting:!0,ignoreInvalidCookies:!1,context:{},http2:!1,allowGetBody:!1,https:void 0,pagination:{transform:t=>t.request.options.responseType==="json"?t.body:JSON.parse(t.body),paginate:t=>{if(!Reflect.has(t.headers,"link"))return!1;let e=t.headers.link.split(","),r;for(let i of e){let n=i.split(";");if(n[1].includes("next")){r=n[0].trimStart().trim(),r=r.slice(1,-1);break}}return r?{url:new uCe.URL(r)}:!1},filter:()=>!0,shouldContinue:()=>!0,countLimit:Infinity,backoff:0,requestLimit:1e4,stackAllItems:!0},parseJson:t=>JSON.parse(t),stringifyJson:t=>JSON.stringify(t),cacheOptions:{}},handlers:[WH.defaultHandler],mutableDefaults:!1},Eb=WH.default(gCe);Ls.default=Eb;dm.exports=Eb;dm.exports.default=Eb;dm.exports.__esModule=!0;JH(Ib(),Ls);JH(db(),Ls)});var ZH=C(Wl=>{"use strict";var b9e=require("net"),hCe=require("tls"),yb=require("http"),zH=require("https"),fCe=require("events"),D9e=require("assert"),pCe=require("util");Wl.httpOverHttp=dCe;Wl.httpsOverHttp=CCe;Wl.httpOverHttps=mCe;Wl.httpsOverHttps=ICe;function dCe(t){var e=new Ms(t);return e.request=yb.request,e}function CCe(t){var e=new Ms(t);return e.request=yb.request,e.createSocket=XH,e.defaultPort=443,e}function mCe(t){var e=new Ms(t);return e.request=zH.request,e}function ICe(t){var e=new Ms(t);return e.request=zH.request,e.createSocket=XH,e.defaultPort=443,e}function Ms(t){var e=this;e.options=t||{},e.proxyOptions=e.options.proxy||{},e.maxSockets=e.options.maxSockets||yb.Agent.defaultMaxSockets,e.requests=[],e.sockets=[],e.on("free",function(i,n,s,o){for(var a=VH(n,s,o),l=0,c=e.requests.length;l=this.maxSockets){s.requests.push(o);return}s.createSocket(o,function(a){a.on("free",l),a.on("close",c),a.on("agentRemove",c),e.onSocket(a);function l(){s.emit("free",a,o)}function c(u){s.removeSocket(a),a.removeListener("free",l),a.removeListener("close",c),a.removeListener("agentRemove",c)}})};Ms.prototype.createSocket=function(e,r){var i=this,n={};i.sockets.push(n);var s=Bb({},i.proxyOptions,{method:"CONNECT",path:e.host+":"+e.port,agent:!1,headers:{host:e.host+":"+e.port}});e.localAddress&&(s.localAddress=e.localAddress),s.proxyAuth&&(s.headers=s.headers||{},s.headers["Proxy-Authorization"]="Basic "+new Buffer(s.proxyAuth).toString("base64")),Ro("making CONNECT request");var o=i.request(s);o.useChunkedEncodingByDefault=!1,o.once("response",a),o.once("upgrade",l),o.once("connect",c),o.once("error",u),o.end();function a(g){g.upgrade=!0}function l(g,h,f){process.nextTick(function(){c(g,h,f)})}function c(g,h,f){if(o.removeAllListeners(),h.removeAllListeners(),g.statusCode!==200){Ro("tunneling socket could not be established, statusCode=%d",g.statusCode),h.destroy();var p=new Error("tunneling socket could not be established, statusCode="+g.statusCode);p.code="ECONNRESET",e.request.emit("error",p),i.removeSocket(n);return}if(f.length>0){Ro("got illegal response body from proxy"),h.destroy();var p=new Error("got illegal response body from proxy");p.code="ECONNRESET",e.request.emit("error",p),i.removeSocket(n);return}return Ro("tunneling connection has established"),i.sockets[i.sockets.indexOf(n)]=h,r(h)}function u(g){o.removeAllListeners(),Ro(`tunneling socket could not be established, cause=%s -`,g.message,g.stack);var h=new Error("tunneling socket could not be established, cause="+g.message);h.code="ECONNRESET",e.request.emit("error",h),i.removeSocket(n)}};Ms.prototype.removeSocket=function(e){var r=this.sockets.indexOf(e);if(r!==-1){this.sockets.splice(r,1);var i=this.requests.shift();i&&this.createSocket(i,function(n){i.request.onSocket(n)})}};function XH(t,e){var r=this;Ms.prototype.createSocket.call(r,t,function(i){var n=t.request.getHeader("host"),s=Bb({},r.options,{socket:i,servername:n?n.replace(/:.*$/,""):t.host}),o=hCe.connect(0,s);r.sockets[r.sockets.indexOf(i)]=o,e(o)})}function VH(t,e,r){return typeof t=="string"?{host:t,port:e,localAddress:r}:t}function Bb(t){for(var e=1,r=arguments.length;e{_H.exports=ZH()});var OY=C((K6e,Pb)=>{var uY=Object.assign({},require("fs")),V=typeof V!="undefined"?V:{},th={},Mo;for(Mo in V)V.hasOwnProperty(Mo)&&(th[Mo]=V[Mo]);var xb=[],gY="./this.program",hY=function(t,e){throw e},fY=!1,Va=!0,rh="";function PCe(t){return V.locateFile?V.locateFile(t,rh):rh+t}var Em,kb,ym,vb;Va&&(fY?rh=require("path").dirname(rh)+"/":rh=__dirname+"/",Em=function(e,r){var i=dY(e);return i?r?i:i.toString():(ym||(ym=uY),vb||(vb=require("path")),e=vb.normalize(e),ym.readFileSync(e,r?null:"utf8"))},kb=function(e){var r=Em(e,!0);return r.buffer||(r=new Uint8Array(r)),pY(r.buffer),r},process.argv.length>1&&(gY=process.argv[1].replace(/\\/g,"/")),xb=process.argv.slice(2),typeof Pb!="undefined"&&(Pb.exports=V),hY=function(t){process.exit(t)},V.inspect=function(){return"[Emscripten Module object]"});var ih=V.print||console.log.bind(console),xr=V.printErr||console.warn.bind(console);for(Mo in th)th.hasOwnProperty(Mo)&&(V[Mo]=th[Mo]);th=null;V.arguments&&(xb=V.arguments);V.thisProgram&&(gY=V.thisProgram);V.quit&&(hY=V.quit);var xCe=0,kCe=function(t){xCe=t},Fb;V.wasmBinary&&(Fb=V.wasmBinary);var CY;V.noExitRuntime&&(CY=V.noExitRuntime);typeof WebAssembly!="object"&&xr("no native wasm support detected");function vCe(t,e,r){switch(e=e||"i8",e.charAt(e.length-1)==="*"&&(e="i32"),e){case"i1":return mi[t>>0];case"i8":return mi[t>>0];case"i16":return Rb[t>>1];case"i32":return Ne[t>>2];case"i64":return Ne[t>>2];case"float":return mY[t>>2];case"double":return IY[t>>3];default:or("invalid type for getValue: "+e)}return null}var Za,FCe=new WebAssembly.Table({initial:31,maximum:31+0,element:"anyfunc"}),EY=!1,RCe=0;function pY(t,e){t||or("Assertion failed: "+e)}function yY(t){var e=V["_"+t];return pY(e,"Cannot call unknown function "+t+", make sure it is exported"),e}function OCe(t,e,r,i,n){var s={string:function(f){var p=0;if(f!=null&&f!==0){var m=(f.length<<2)+1;p=wY(m),Lb(f,p,m)}return p},array:function(f){var p=wY(f.length);return LCe(f,p),p}};function o(f){return e==="string"?BY(f):e==="boolean"?Boolean(f):f}var a=yY(t),l=[],c=0;if(i)for(var u=0;u=i);)++n;if(n-e>16&&t.subarray&&QY)return QY.decode(t.subarray(e,n));for(var s="";e>10,56320|c&1023)}}return s}function BY(t,e){return t?zl(_a,t,e):""}function Bm(t,e,r,i){if(!(i>0))return 0;for(var n=r,s=r+i-1,o=0;o=55296&&a<=57343){var l=t.charCodeAt(++o);a=65536+((a&1023)<<10)|l&1023}if(a<=127){if(r>=s)break;e[r++]=a}else if(a<=2047){if(r+1>=s)break;e[r++]=192|a>>6,e[r++]=128|a&63}else if(a<=65535){if(r+2>=s)break;e[r++]=224|a>>12,e[r++]=128|a>>6&63,e[r++]=128|a&63}else{if(r+3>=s)break;e[r++]=240|a>>18,e[r++]=128|a>>12&63,e[r++]=128|a>>6&63,e[r++]=128|a&63}}return e[r]=0,r-n}function Lb(t,e,r){return Bm(t,_a,e,r)}function wm(t){for(var e=0,r=0;r=55296&&i<=57343&&(i=65536+((i&1023)<<10)|t.charCodeAt(++r)&1023),i<=127?++e:i<=2047?e+=2:i<=65535?e+=3:e+=4}return e}var H9e=typeof TextDecoder!="undefined"?new TextDecoder("utf-16le"):void 0;function DY(t){var e=wm(t)+1,r=bY(e);return r&&Bm(t,mi,r,e),r}function LCe(t,e){mi.set(t,e)}var KCe=65536;function UCe(t,e){return t%e>0&&(t+=e-t%e),t}var nh,mi,_a,Rb,HCe,Ne,YCe,mY,IY;function SY(t){nh=t,V.HEAP8=mi=new Int8Array(t),V.HEAP16=Rb=new Int16Array(t),V.HEAP32=Ne=new Int32Array(t),V.HEAPU8=_a=new Uint8Array(t),V.HEAPU16=HCe=new Uint16Array(t),V.HEAPU32=YCe=new Uint32Array(t),V.HEAPF32=mY=new Float32Array(t),V.HEAPF64=IY=new Float64Array(t)}var jCe=5263680,GCe=20640,PY=V.TOTAL_MEMORY||16777216;V.wasmMemory?Za=V.wasmMemory:Za=new WebAssembly.Memory({initial:PY/KCe});Za&&(nh=Za.buffer);PY=nh.byteLength;SY(nh);Ne[GCe>>2]=jCe;function Qm(t){for(;t.length>0;){var e=t.shift();if(typeof e=="function"){e();continue}var r=e.func;typeof r=="number"?e.arg===void 0?V.dynCall_v(r):V.dynCall_vi(r,e.arg):r(e.arg===void 0?null:e.arg)}}var xY=[],kY=[],qCe=[],vY=[],JCe=!1;function zCe(){if(V.preRun)for(typeof V.preRun=="function"&&(V.preRun=[V.preRun]);V.preRun.length;)WCe(V.preRun.shift());Qm(xY)}function XCe(){JCe=!0,!V.noFSInit&&!E.init.initialized&&E.init(),No.init(),Qm(kY)}function VCe(){E.ignorePermissions=!1,Qm(qCe)}function _Ce(){if(V.postRun)for(typeof V.postRun=="function"&&(V.postRun=[V.postRun]);V.postRun.length;)ZCe(V.postRun.shift());Qm(vY)}function WCe(t){xY.unshift(t)}function ZCe(t){vY.unshift(t)}var Mb=Math.abs,Nb=Math.ceil,Ob=Math.floor,Tb=Math.min,$a=0,Kb=null,sh=null;function $Ce(t){return t}function FY(t){$a++,V.monitorRunDependencies&&V.monitorRunDependencies($a)}function Ub(t){if($a--,V.monitorRunDependencies&&V.monitorRunDependencies($a),$a==0&&(Kb!==null&&(clearInterval(Kb),Kb=null),sh)){var e=sh;sh=null,e()}}V.preloadedImages={};V.preloadedAudios={};function or(t){throw V.onAbort&&V.onAbort(t),t+="",ih(t),xr(t),EY=!0,RCe=1,t="abort("+t+"). Build with -s ASSERTIONS=1 for more info.",new WebAssembly.RuntimeError(t)}var Hb="data:application/octet-stream;base64,";function RY(t){return String.prototype.startsWith?t.startsWith(Hb):t.indexOf(Hb)===0}var oh="data:application/octet-stream;base64,AGFzbQEAAAAB0QIwYAF/AX9gAn9/AX9gA39/fwF/YAF/AGACf38AYAR/f39/AX9gBX9/f39/AX9gA39/fwBgAAF/YAR/fn9/AX9gAn9+AX9gA39+fwF/YAF/AX5gBX9/f35/AX5gA39/fgF+YAR/f35/AX5gA39+fwF+YAN/f34Bf2AEf39+fwF/YAR/f39/AX5gBH9/f38AYAZ/f39/f38Bf2AFf39+f38Bf2ACfn8Bf2ADf39/AX5gBH9+fn8AYAN/fH8AYAV/fn9/fwF/YAZ/fH9/f38Bf2ACf38BfmAAAGAFf39/f38AYAV/f39+fwBgAn9+AGADf35/AGACf3wAYAN/fHwAYAR/f35+AX9gBH9+fn8Bf2AIf35+f39/fn8Bf2ABfgF/YAN+f38Bf2AFf39/f38BfmAEf39/fgF+YAJ/fgF+YAV+fn9+fwF+YAJ+fgF8YAJ8fwF8AqQBGQFhAWEAAwFhAWIAAwFhAWMAAAFhAWQAAwFhAWUAAQFhAWYAAQFhAWcABQFhAWgAAAFhAWkAAAFhAWoAAAFhAWsAAgFhAWwAAAFhAW0ABgFhAW4ABQFhAW8AAQFhAXAAAQFhAXEAAQFhAXIAAQFhAXMAAQFhAXQAAQFhAXUAAQFhAXYAAQFhAXcAAQFhBm1lbW9yeQIAgAIBYQV0YWJsZQFwAB8DiAOGAwcDAwQAAgIDAwAKBAQPBwMfAwMLFAoAIQ4ACgwMAAcDHQMBAwwRAQMAAgMHCQ4EFwkAAAEADAAECQkFAgATAxQjAgIBAwMCBQUAAwMFAwEYAgkDAgAAAQYYBwIIFQIABwQBIBIJABYnEAEGBhIEAAMtBQACAgAEAgQACwsBAQcMDAAAAQkbGxMKChYCAgMGAQIBAQAHBwcvAwMDAgMsARILCQkLAioHAgsXAgEABgEBAQAGCAoBAAUIAgICAAMAAAQAAAEABgAFBQYGBgIEAQUFBQYVFQUCAhwEAwAICAgIAAUJAQkpFhIBCgIBFwIAAQAADyYAAgEBBAgACAMCAgABAQQAHQ4LAgAJAAATAAAYCQwECgcBAQABAgcREQIKAgEAAAANKw0FBQAAAgIDEQAAAAMCAAIDAAABAAAuBAEBAQEZAQMDAAABGQEHBBQAAAMDAwgCBAIBDQYPDgsPAQAKJAMQAwMoIhMCAwMABAMBAQ0AJRAEAQEBAAgIDgoAAQAOAwAIHgYJAX8BQaChwQILB70COwF4AJwDAXkAmwMBegDqAgFBAKQCAUIA2wEBQwDYAQFEANYBAUUA0wEBRgDPAQFHAMoBAUgAmgMBSQCXAwFKAJUDAUsAuAIBTADuAQFNAO0BAU4AQQFPANcBAVAAogIBUQChAgFSAK4CAVMApQIBVADsAQFVAOsBAVYA6gEBVwDpAQFYAJ4CAVkA6AEBWgDnAQFfAOYBASQA5QECYWEA4wECYmEAhAICY2EAjgECZGEA4gECZWEA4QECZmEA4AECZ2EANAJoYQDZAQJpYQAeAmphANQBAmthAEsCbGEA3wECbWEA3gECbmEAbQJvYQDdAQJwYQD4AQJxYQDcAQJyYQD3AQJzYQCSAwJ0YQD2AQJ1YQD1AQJ2YQD0AQJ3YQAbAnhhABgCeWEA8wECemEA8gECQWEA8QECQmEA8AEJQQEAQQELHu8B5AGIA/QC7wLwAu0C7AKpAdYC1QLKAskCyALHAsYCxQLEAsMCwgK9ArsCsAKtAlr6AoADjAKQA4kCCv+eCYYDQAEBfyMAQRBrIgMgADYCDCADIAE2AgggAyACNgIEIAMoAgwEQCADKAIMIAMoAgg2AgAgAygCDCADKAIENgIECwuqDQEHfwJAIABFDQAgAEF4aiIDIABBfGooAgAiAUF4cSIAaiEFAkAgAUEBcQ0AIAFBA3FFDQEgAyADKAIAIgJrIgNBmJ0BKAIAIgRJDQEgACACaiEAIANBnJ0BKAIARwRAIAJB/wFNBEAgAygCCCIEIAJBA3YiAkEDdEGwnQFqRxogBCADKAIMIgFGBEBBiJ0BQYidASgCAEF+IAJ3cTYCAAwDCyAEIAE2AgwgASAENgIIDAILIAMoAhghBgJAIAMgAygCDCIBRwRAIAQgAygCCCICTQRAIAIoAgwaCyACIAE2AgwgASACNgIIDAELAkAgA0EUaiICKAIAIgQNACADQRBqIgIoAgAiBA0AQQAhAQwBCwNAIAIhByAEIgFBFGoiAigCACIEDQAgAUEQaiECIAEoAhAiBA0ACyAHQQA2AgALIAZFDQECQCADIAMoAhwiAkECdEG4nwFqIgQoAgBGBEAgBCABNgIAIAENAUGMnQFBjJ0BKAIAQX4gAndxNgIADAMLIAZBEEEUIAYoAhAgA0YbaiABNgIAIAFFDQILIAEgBjYCGCADKAIQIgIEQCABIAI2AhAgAiABNgIYCyADKAIUIgJFDQEgASACNgIUIAIgATYCGAwBCyAFKAIEIgFBA3FBA0cNAEGQnQEgADYCACAFIAFBfnE2AgQgAyAAQQFyNgIEIAAgA2ogADYCAA8LIAUgA00NACAFKAIEIgFBAXFFDQACQCABQQJxRQRAIAVBoJ0BKAIARgRAQaCdASADNgIAQZSdAUGUnQEoAgAgAGoiADYCACADIABBAXI2AgQgA0GcnQEoAgBHDQNBkJ0BQQA2AgBBnJ0BQQA2AgAPCyAFQZydASgCAEYEQEGcnQEgAzYCAEGQnQFBkJ0BKAIAIABqIgA2AgAgAyAAQQFyNgIEIAAgA2ogADYCAA8LIAFBeHEgAGohAAJAIAFB/wFNBEAgBSgCDCECIAUoAggiBCABQQN2IgFBA3RBsJ0BaiIHRwRAQZidASgCABoLIAIgBEYEQEGInQFBiJ0BKAIAQX4gAXdxNgIADAILIAIgB0cEQEGYnQEoAgAaCyAEIAI2AgwgAiAENgIIDAELIAUoAhghBgJAIAUgBSgCDCIBRwRAQZidASgCACAFKAIIIgJNBEAgAigCDBoLIAIgATYCDCABIAI2AggMAQsCQCAFQRRqIgIoAgAiBA0AIAVBEGoiAigCACIEDQBBACEBDAELA0AgAiEHIAQiAUEUaiICKAIAIgQNACABQRBqIQIgASgCECIEDQALIAdBADYCAAsgBkUNAAJAIAUgBSgCHCICQQJ0QbifAWoiBCgCAEYEQCAEIAE2AgAgAQ0BQYydAUGMnQEoAgBBfiACd3E2AgAMAgsgBkEQQRQgBigCECAFRhtqIAE2AgAgAUUNAQsgASAGNgIYIAUoAhAiAgRAIAEgAjYCECACIAE2AhgLIAUoAhQiAkUNACABIAI2AhQgAiABNgIYCyADIABBAXI2AgQgACADaiAANgIAIANBnJ0BKAIARw0BQZCdASAANgIADwsgBSABQX5xNgIEIAMgAEEBcjYCBCAAIANqIAA2AgALIABB/wFNBEAgAEEDdiIBQQN0QbCdAWohAAJ/QYidASgCACICQQEgAXQiAXFFBEBBiJ0BIAEgAnI2AgAgAAwBCyAAKAIICyECIAAgAzYCCCACIAM2AgwgAyAANgIMIAMgAjYCCA8LIANCADcCECADAn9BACAAQQh2IgFFDQAaQR8gAEH///8HSw0AGiABIAFBgP4/akEQdkEIcSIBdCICIAJBgOAfakEQdkEEcSICdCIEIARBgIAPakEQdkECcSIEdEEPdiABIAJyIARyayIBQQF0IAAgAUEVanZBAXFyQRxqCyICNgIcIAJBAnRBuJ8BaiEBAkACQAJAQYydASgCACIEQQEgAnQiB3FFBEBBjJ0BIAQgB3I2AgAgASADNgIAIAMgATYCGAwBCyAAQQBBGSACQQF2ayACQR9GG3QhAiABKAIAIQEDQCABIgQoAgRBeHEgAEYNAiACQR12IQEgAkEBdCECIAQgAUEEcWoiB0EQaigCACIBDQALIAcgAzYCECADIAQ2AhgLIAMgAzYCDCADIAM2AggMAQsgBCgCCCIAIAM2AgwgBCADNgIIIANBADYCGCADIAQ2AgwgAyAANgIIC0GonQFBqJ0BKAIAQX9qIgA2AgAgAA0AQdCgASEDA0AgAygCACIAQQhqIQMgAA0AC0GonQFBfzYCAAsLQgEBfyMAQRBrIgEkACABIAA2AgwgASgCDARAIAEoAgwtAAFBAXEEQCABKAIMKAIEEBgLIAEoAgwQGAsgAUEQaiQAC0MBAX8jAEEQayICJAAgAiAANgIMIAIgATYCCCACKAIMAn8jAEEQayIAIAIoAgg2AgwgACgCDEEMagsQRSACQRBqJAALzy4BC38jAEEQayILJAACQAJAAkACQAJAAkACQAJAAkACQAJAIABB9AFNBEBBiJ0BKAIAIgZBECAAQQtqQXhxIABBC0kbIgVBA3YiAHYiAUEDcQRAIAFBf3NBAXEgAGoiAkEDdCIEQbidAWooAgAiAUEIaiEAAkAgASgCCCIDIARBsJ0BaiIERgRAQYidASAGQX4gAndxNgIADAELQZidASgCABogAyAENgIMIAQgAzYCCAsgASACQQN0IgJBA3I2AgQgASACaiIBIAEoAgRBAXI2AgQMDAsgBUGQnQEoAgAiCE0NASABBEACQEECIAB0IgJBACACa3IgASAAdHEiAEEAIABrcUF/aiIAIABBDHZBEHEiAHYiAUEFdkEIcSICIAByIAEgAnYiAEECdkEEcSIBciAAIAF2IgBBAXZBAnEiAXIgACABdiIAQQF2QQFxIgFyIAAgAXZqIgJBA3QiA0G4nQFqKAIAIgEoAggiACADQbCdAWoiA0YEQEGInQEgBkF+IAJ3cSIGNgIADAELQZidASgCABogACADNgIMIAMgADYCCAsgAUEIaiEAIAEgBUEDcjYCBCABIAVqIgcgAkEDdCICIAVrIgNBAXI2AgQgASACaiADNgIAIAgEQCAIQQN2IgRBA3RBsJ0BaiEBQZydASgCACECAn8gBkEBIAR0IgRxRQRAQYidASAEIAZyNgIAIAEMAQsgASgCCAshBCABIAI2AgggBCACNgIMIAIgATYCDCACIAQ2AggLQZydASAHNgIAQZCdASADNgIADAwLQYydASgCACIKRQ0BIApBACAKa3FBf2oiACAAQQx2QRBxIgB2IgFBBXZBCHEiAiAAciABIAJ2IgBBAnZBBHEiAXIgACABdiIAQQF2QQJxIgFyIAAgAXYiAEEBdkEBcSIBciAAIAF2akECdEG4nwFqKAIAIgEoAgRBeHEgBWshAyABIQIDQAJAIAIoAhAiAEUEQCACKAIUIgBFDQELIAAoAgRBeHEgBWsiAiADIAIgA0kiAhshAyAAIAEgAhshASAAIQIMAQsLIAEoAhghCSABIAEoAgwiBEcEQEGYnQEoAgAgASgCCCIATQRAIAAoAgwaCyAAIAQ2AgwgBCAANgIIDAsLIAFBFGoiAigCACIARQRAIAEoAhAiAEUNAyABQRBqIQILA0AgAiEHIAAiBEEUaiICKAIAIgANACAEQRBqIQIgBCgCECIADQALIAdBADYCAAwKC0F/IQUgAEG/f0sNACAAQQtqIgBBeHEhBUGMnQEoAgAiB0UNAEEAIAVrIQICQAJAAkACf0EAIABBCHYiAEUNABpBHyAFQf///wdLDQAaIAAgAEGA/j9qQRB2QQhxIgB0IgEgAUGA4B9qQRB2QQRxIgF0IgMgA0GAgA9qQRB2QQJxIgN0QQ92IAAgAXIgA3JrIgBBAXQgBSAAQRVqdkEBcXJBHGoLIghBAnRBuJ8BaigCACIDRQRAQQAhAAwBCyAFQQBBGSAIQQF2ayAIQR9GG3QhAUEAIQADQAJAIAMoAgRBeHEgBWsiBiACTw0AIAMhBCAGIgINAEEAIQIgAyEADAMLIAAgAygCFCIGIAYgAyABQR12QQRxaigCECIDRhsgACAGGyEAIAEgA0EAR3QhASADDQALCyAAIARyRQRAQQIgCHQiAEEAIABrciAHcSIARQ0DIABBACAAa3FBf2oiACAAQQx2QRBxIgB2IgFBBXZBCHEiAyAAciABIAN2IgBBAnZBBHEiAXIgACABdiIAQQF2QQJxIgFyIAAgAXYiAEEBdkEBcSIBciAAIAF2akECdEG4nwFqKAIAIQALIABFDQELA0AgACgCBEF4cSAFayIDIAJJIQEgAyACIAEbIQIgACAEIAEbIQQgACgCECIBBH8gAQUgACgCFAsiAA0ACwsgBEUNACACQZCdASgCACAFa08NACAEKAIYIQggBCAEKAIMIgFHBEBBmJ0BKAIAIAQoAggiAE0EQCAAKAIMGgsgACABNgIMIAEgADYCCAwJCyAEQRRqIgMoAgAiAEUEQCAEKAIQIgBFDQMgBEEQaiEDCwNAIAMhBiAAIgFBFGoiAygCACIADQAgAUEQaiEDIAEoAhAiAA0ACyAGQQA2AgAMCAtBkJ0BKAIAIgEgBU8EQEGcnQEoAgAhAAJAIAEgBWsiAkEQTwRAQZCdASACNgIAQZydASAAIAVqIgM2AgAgAyACQQFyNgIEIAAgAWogAjYCACAAIAVBA3I2AgQMAQtBnJ0BQQA2AgBBkJ0BQQA2AgAgACABQQNyNgIEIAAgAWoiASABKAIEQQFyNgIECyAAQQhqIQAMCgtBlJ0BKAIAIgEgBUsEQEGUnQEgASAFayIBNgIAQaCdAUGgnQEoAgAiACAFaiICNgIAIAIgAUEBcjYCBCAAIAVBA3I2AgQgAEEIaiEADAoLQQAhACAFQS9qIgQCf0HgoAEoAgAEQEHooAEoAgAMAQtB7KABQn83AgBB5KABQoCggICAgAQ3AgBB4KABIAtBDGpBcHFB2KrVqgVzNgIAQfSgAUEANgIAQcSgAUEANgIAQYAgCyICaiIGQQAgAmsiB3EiAiAFTQ0JQcCgASgCACIDBEBBuKABKAIAIgggAmoiCSAITQ0KIAkgA0sNCgtBxKABLQAAQQRxDQQCQAJAQaCdASgCACIDBEBByKABIQADQCAAKAIAIgggA00EQCAIIAAoAgRqIANLDQMLIAAoAggiAA0ACwtBABA/IgFBf0YNBSACIQZB5KABKAIAIgBBf2oiAyABcQRAIAIgAWsgASADakEAIABrcWohBgsgBiAFTQ0FIAZB/v///wdLDQVBwKABKAIAIgAEQEG4oAEoAgAiAyAGaiIHIANNDQYgByAASw0GCyAGED8iACABRw0BDAcLIAYgAWsgB3EiBkH+////B0sNBCAGED8iASAAKAIAIAAoAgRqRg0DIAEhAAsgACEBAkAgBUEwaiAGTQ0AIAZB/v///wdLDQAgAUF/Rg0AQeigASgCACIAIAQgBmtqQQAgAGtxIgBB/v///wdLDQYgABA/QX9HBEAgACAGaiEGDAcLQQAgBmsQPxoMBAsgAUF/Rw0FDAMLQQAhBAwHC0EAIQEMBQsgAUF/Rw0CC0HEoAFBxKABKAIAQQRyNgIACyACQf7///8HSw0BIAIQPyIBQQAQPyIATw0BIAFBf0YNASAAQX9GDQEgACABayIGIAVBKGpNDQELQbigAUG4oAEoAgAgBmoiADYCACAAQbygASgCAEsEQEG8oAEgADYCAAsCQAJAAkBBoJ0BKAIAIgMEQEHIoAEhAANAIAEgACgCACICIAAoAgQiBGpGDQIgACgCCCIADQALDAILQZidASgCACIAQQAgASAATxtFBEBBmJ0BIAE2AgALQQAhAEHMoAEgBjYCAEHIoAEgATYCAEGonQFBfzYCAEGsnQFB4KABKAIANgIAQdSgAUEANgIAA0AgAEEDdCICQbidAWogAkGwnQFqIgM2AgAgAkG8nQFqIAM2AgAgAEEBaiIAQSBHDQALQZSdASAGQVhqIgBBeCABa0EHcUEAIAFBCGpBB3EbIgJrIgM2AgBBoJ0BIAEgAmoiAjYCACACIANBAXI2AgQgACABakEoNgIEQaSdAUHwoAEoAgA2AgAMAgsgAC0ADEEIcQ0AIAEgA00NACACIANLDQAgACAEIAZqNgIEQaCdASADQXggA2tBB3FBACADQQhqQQdxGyIAaiIBNgIAQZSdAUGUnQEoAgAgBmoiAiAAayIANgIAIAEgAEEBcjYCBCACIANqQSg2AgRBpJ0BQfCgASgCADYCAAwBCyABQZidASgCACIESQRAQZidASABNgIAIAEhBAsgASAGaiECQcigASEAAkACQAJAAkACQAJAA0AgAiAAKAIARwRAIAAoAggiAA0BDAILCyAALQAMQQhxRQ0BC0HIoAEhAANAIAAoAgAiAiADTQRAIAIgACgCBGoiBCADSw0DCyAAKAIIIQAMAAALAAsgACABNgIAIAAgACgCBCAGajYCBCABQXggAWtBB3FBACABQQhqQQdxG2oiCSAFQQNyNgIEIAJBeCACa0EHcUEAIAJBCGpBB3EbaiIBIAlrIAVrIQAgBSAJaiEHIAEgA0YEQEGgnQEgBzYCAEGUnQFBlJ0BKAIAIABqIgA2AgAgByAAQQFyNgIEDAMLIAFBnJ0BKAIARgRAQZydASAHNgIAQZCdAUGQnQEoAgAgAGoiADYCACAHIABBAXI2AgQgACAHaiAANgIADAMLIAEoAgQiAkEDcUEBRgRAIAJBeHEhCgJAIAJB/wFNBEAgASgCCCIDIAJBA3YiBEEDdEGwnQFqRxogAyABKAIMIgJGBEBBiJ0BQYidASgCAEF+IAR3cTYCAAwCCyADIAI2AgwgAiADNgIIDAELIAEoAhghCAJAIAEgASgCDCIGRwRAIAQgASgCCCICTQRAIAIoAgwaCyACIAY2AgwgBiACNgIIDAELAkAgAUEUaiIDKAIAIgUNACABQRBqIgMoAgAiBQ0AQQAhBgwBCwNAIAMhAiAFIgZBFGoiAygCACIFDQAgBkEQaiEDIAYoAhAiBQ0ACyACQQA2AgALIAhFDQACQCABIAEoAhwiAkECdEG4nwFqIgMoAgBGBEAgAyAGNgIAIAYNAUGMnQFBjJ0BKAIAQX4gAndxNgIADAILIAhBEEEUIAgoAhAgAUYbaiAGNgIAIAZFDQELIAYgCDYCGCABKAIQIgIEQCAGIAI2AhAgAiAGNgIYCyABKAIUIgJFDQAgBiACNgIUIAIgBjYCGAsgASAKaiEBIAAgCmohAAsgASABKAIEQX5xNgIEIAcgAEEBcjYCBCAAIAdqIAA2AgAgAEH/AU0EQCAAQQN2IgFBA3RBsJ0BaiEAAn9BiJ0BKAIAIgJBASABdCIBcUUEQEGInQEgASACcjYCACAADAELIAAoAggLIQEgACAHNgIIIAEgBzYCDCAHIAA2AgwgByABNgIIDAMLIAcCf0EAIABBCHYiAUUNABpBHyAAQf///wdLDQAaIAEgAUGA/j9qQRB2QQhxIgF0IgIgAkGA4B9qQRB2QQRxIgJ0IgMgA0GAgA9qQRB2QQJxIgN0QQ92IAEgAnIgA3JrIgFBAXQgACABQRVqdkEBcXJBHGoLIgE2AhwgB0IANwIQIAFBAnRBuJ8BaiECAkBBjJ0BKAIAIgNBASABdCIEcUUEQEGMnQEgAyAEcjYCACACIAc2AgAMAQsgAEEAQRkgAUEBdmsgAUEfRht0IQMgAigCACEBA0AgASICKAIEQXhxIABGDQMgA0EddiEBIANBAXQhAyACIAFBBHFqIgQoAhAiAQ0ACyAEIAc2AhALIAcgAjYCGCAHIAc2AgwgByAHNgIIDAILQZSdASAGQVhqIgBBeCABa0EHcUEAIAFBCGpBB3EbIgJrIgc2AgBBoJ0BIAEgAmoiAjYCACACIAdBAXI2AgQgACABakEoNgIEQaSdAUHwoAEoAgA2AgAgAyAEQScgBGtBB3FBACAEQVlqQQdxG2pBUWoiACAAIANBEGpJGyICQRs2AgQgAkHQoAEpAgA3AhAgAkHIoAEpAgA3AghB0KABIAJBCGo2AgBBzKABIAY2AgBByKABIAE2AgBB1KABQQA2AgAgAkEYaiEAA0AgAEEHNgIEIABBCGohASAAQQRqIQAgBCABSw0ACyACIANGDQMgAiACKAIEQX5xNgIEIAMgAiADayIEQQFyNgIEIAIgBDYCACAEQf8BTQRAIARBA3YiAUEDdEGwnQFqIQACf0GInQEoAgAiAkEBIAF0IgFxRQRAQYidASABIAJyNgIAIAAMAQsgACgCCAshASAAIAM2AgggASADNgIMIAMgADYCDCADIAE2AggMBAsgA0IANwIQIAMCf0EAIARBCHYiAEUNABpBHyAEQf///wdLDQAaIAAgAEGA/j9qQRB2QQhxIgB0IgEgAUGA4B9qQRB2QQRxIgF0IgIgAkGAgA9qQRB2QQJxIgJ0QQ92IAAgAXIgAnJrIgBBAXQgBCAAQRVqdkEBcXJBHGoLIgA2AhwgAEECdEG4nwFqIQECQEGMnQEoAgAiAkEBIAB0IgZxRQRAQYydASACIAZyNgIAIAEgAzYCACADIAE2AhgMAQsgBEEAQRkgAEEBdmsgAEEfRht0IQAgASgCACEBA0AgASICKAIEQXhxIARGDQQgAEEddiEBIABBAXQhACACIAFBBHFqIgYoAhAiAQ0ACyAGIAM2AhAgAyACNgIYCyADIAM2AgwgAyADNgIIDAMLIAIoAggiACAHNgIMIAIgBzYCCCAHQQA2AhggByACNgIMIAcgADYCCAsgCUEIaiEADAULIAIoAggiACADNgIMIAIgAzYCCCADQQA2AhggAyACNgIMIAMgADYCCAtBlJ0BKAIAIgAgBU0NAEGUnQEgACAFayIBNgIAQaCdAUGgnQEoAgAiACAFaiICNgIAIAIgAUEBcjYCBCAAIAVBA3I2AgQgAEEIaiEADAMLQbScAUEwNgIAQQAhAAwCCwJAIAhFDQACQCAEKAIcIgBBAnRBuJ8BaiIDKAIAIARGBEAgAyABNgIAIAENAUGMnQEgB0F+IAB3cSIHNgIADAILIAhBEEEUIAgoAhAgBEYbaiABNgIAIAFFDQELIAEgCDYCGCAEKAIQIgAEQCABIAA2AhAgACABNgIYCyAEKAIUIgBFDQAgASAANgIUIAAgATYCGAsCQCACQQ9NBEAgBCACIAVqIgBBA3I2AgQgACAEaiIAIAAoAgRBAXI2AgQMAQsgBCAFQQNyNgIEIAQgBWoiAyACQQFyNgIEIAIgA2ogAjYCACACQf8BTQRAIAJBA3YiAUEDdEGwnQFqIQACf0GInQEoAgAiAkEBIAF0IgFxRQRAQYidASABIAJyNgIAIAAMAQsgACgCCAshASAAIAM2AgggASADNgIMIAMgADYCDCADIAE2AggMAQsgAwJ/QQAgAkEIdiIARQ0AGkEfIAJB////B0sNABogACAAQYD+P2pBEHZBCHEiAHQiASABQYDgH2pBEHZBBHEiAXQiBSAFQYCAD2pBEHZBAnEiBXRBD3YgACABciAFcmsiAEEBdCACIABBFWp2QQFxckEcagsiADYCHCADQgA3AhAgAEECdEG4nwFqIQECQAJAIAdBASAAdCIFcUUEQEGMnQEgBSAHcjYCACABIAM2AgAMAQsgAkEAQRkgAEEBdmsgAEEfRht0IQAgASgCACEFA0AgBSIBKAIEQXhxIAJGDQIgAEEddiEFIABBAXQhACABIAVBBHFqIgYoAhAiBQ0ACyAGIAM2AhALIAMgATYCGCADIAM2AgwgAyADNgIIDAELIAEoAggiACADNgIMIAEgAzYCCCADQQA2AhggAyABNgIMIAMgADYCCAsgBEEIaiEADAELAkAgCUUNAAJAIAEoAhwiAEECdEG4nwFqIgIoAgAgAUYEQCACIAQ2AgAgBA0BQYydASAKQX4gAHdxNgIADAILIAlBEEEUIAkoAhAgAUYbaiAENgIAIARFDQELIAQgCTYCGCABKAIQIgAEQCAEIAA2AhAgACAENgIYCyABKAIUIgBFDQAgBCAANgIUIAAgBDYCGAsCQCADQQ9NBEAgASADIAVqIgBBA3I2AgQgACABaiIAIAAoAgRBAXI2AgQMAQsgASAFQQNyNgIEIAEgBWoiBCADQQFyNgIEIAMgBGogAzYCACAIBEAgCEEDdiIFQQN0QbCdAWohAEGcnQEoAgAhAgJ/QQEgBXQiBSAGcUUEQEGInQEgBSAGcjYCACAADAELIAAoAggLIQUgACACNgIIIAUgAjYCDCACIAA2AgwgAiAFNgIIC0GcnQEgBDYCAEGQnQEgAzYCAAsgAUEIaiEACyALQRBqJAAgAAuDBAEDfyACQYDAAE8EQCAAIAEgAhAKGiAADwsgACACaiEDAkAgACABc0EDcUUEQAJAIAJBAUgEQCAAIQIMAQsgAEEDcUUEQCAAIQIMAQsgACECA0AgAiABLQAAOgAAIAFBAWohASACQQFqIgIgA08NASACQQNxDQALCwJAIANBfHEiBEHAAEkNACACIARBQGoiBUsNAANAIAIgASgCADYCACACIAEoAgQ2AgQgAiABKAIINgIIIAIgASgCDDYCDCACIAEoAhA2AhAgAiABKAIUNgIUIAIgASgCGDYCGCACIAEoAhw2AhwgAiABKAIgNgIgIAIgASgCJDYCJCACIAEoAig2AiggAiABKAIsNgIsIAIgASgCMDYCMCACIAEoAjQ2AjQgAiABKAI4NgI4IAIgASgCPDYCPCABQUBrIQEgAkFAayICIAVNDQALCyACIARPDQEDQCACIAEoAgA2AgAgAUEEaiEBIAJBBGoiAiAESQ0ACwwBCyADQQRJBEAgACECDAELIANBfGoiBCAASQRAIAAhAgwBCyAAIQIDQCACIAEtAAA6AAAgAiABLQABOgABIAIgAS0AAjoAAiACIAEtAAM6AAMgAUEEaiEBIAJBBGoiAiAETQ0ACwsgAiADSQRAA0AgAiABLQAAOgAAIAFBAWohASACQQFqIgIgA0cNAAsLIAALPwEBfyMAQRBrIgMkACADIAA2AgwgAyABNgIIIAMgAjYCBCADKAIMIAMoAgggAygCBBDSASEAIANBEGokACAAC90BAQF/IwBBEGsiASQAIAEgADYCDAJAIAEoAgxFDQAgASgCDCgCMEEASwRAIAEoAgwiACAAKAIwQX9qNgIwCyABKAIMKAIwQQBLDQAgASgCDCgCIEEASwRAIAEoAgxBATYCICABKAIMEDQaCyABKAIMKAIkQQFGBEAgASgCDBBkCwJAIAEoAgwoAixFDQAgASgCDC0AKEEBcQ0AIAEoAgwoAiwgASgCDBCEAwsgASgCDEEAQgBBBRAkGiABKAIMKAIABEAgASgCDCgCABAeCyABKAIMEBgLIAFBEGokAAuBAgEBfyMAQRBrIgEkACABIAA2AgwgASABKAIMKAIcNgIEIAEoAgQQ6AIgASABKAIEKAIUNgIIIAEoAgggASgCDCgCEEsEQCABIAEoAgwoAhA2AggLAkAgASgCCEUNACABKAIMKAIMIAEoAgQoAhAgASgCCBAcGiABKAIMIgAgASgCCCAAKAIMajYCDCABKAIEIgAgASgCCCAAKAIQajYCECABKAIMIgAgASgCCCAAKAIUajYCFCABKAIMIgAgACgCECABKAIIazYCECABKAIEIgAgACgCFCABKAIIazYCFCABKAIEKAIUDQAgASgCBCABKAIEKAIINgIQCyABQRBqJAALYAEBfyMAQRBrIgEkACABIAA2AgggASABKAIIQgIQITYCBAJAIAEoAgRFBEAgAUEAOwEODAELIAEgASgCBC0AACABKAIELQABQQh0ajsBDgsgAS8BDiEAIAFBEGokACAAC1oBAX8jAEEgayICJAAgAiAANgIcIAIgATcDECACIAIoAhwgAikDEBDLATYCDCACKAIMBEAgAigCHCIAIAIpAxAgACkDEHw3AxALIAIoAgwhACACQSBqJAAgAAtvAQF/IwBBEGsiAiQAIAIgADYCCCACIAE7AQYgAiACKAIIQgIQITYCAAJAIAIoAgBFBEAgAkF/NgIMDAELIAIoAgAgAi8BBjoAACACKAIAIAIvAQZBCHU6AAEgAkEANgIMCyACKAIMGiACQRBqJAALjwEBAX8jAEEQayICJAAgAiAANgIIIAIgATYCBCACIAIoAghCBBAhNgIAAkAgAigCAEUEQCACQX82AgwMAQsgAigCACACKAIEOgAAIAIoAgAgAigCBEEIdjoAASACKAIAIAIoAgRBEHY6AAIgAigCACACKAIEQRh2OgADIAJBADYCDAsgAigCDBogAkEQaiQAC7YCAQF/IwBBMGsiBCQAIAQgADYCJCAEIAE2AiAgBCACNwMYIAQgAzYCFAJAIAQoAiQpAxhCASAEKAIUrYaDUARAIAQoAiRBDGpBHEEAEBcgBEJ/NwMoDAELAkAgBCgCJCgCAEUE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AykDGFAEQCADQgA3AygMAQsgA0IANwMQA0AgAykDECADKQMYVARAIAMgAygCJCADKAIgIAMpAxCnaiADKQMYIAMpAxB9QQEQJCICNwMIIAJCAFMEQCADKAIkQQE6ADUgAykDEFAEQCADQn83AygMBAsgAyADKQMQNwMoDAMLIAMpAwhQBEAgAygCJEEBOgA0BSADIAMpAwggAykDEHw3AxAMAgsLCyADIAMpAxA3AygLIAMpAyghAiADQTBqJAAgAguPAQEDfyAAIQECQAJAIABBA3FFDQAgAC0AAEUEQAwCCwNAIAFBAWoiAUEDcUUNASABLQAADQALDAELA0AgASICQQRqIQEgAigCACIDQX9zIANB//37d2pxQYCBgoR4cUUNAAsgA0H/AXFFBEAgAiEBDAELA0AgAi0AASEDIAJBAWoiASECIAMNAAsLIAEgAGsLYQEBfyMAQRBrIgIgADYCCCACIAE3AwACQCACKQMAIAIoAggpAwhWBEAgAigCCEEAOgAAIAJBfzYCDAwBCyACKAIIQQE6AAAgAigCCCACKQMANwMQIAJBADYCDAsgAigCDAs2AQF/IwBBEGsiASAANgIMAn4gASgCDC0AAEEBcQRAIAEoAgwpAwggASgCDCkDEH0MAQtCAAsLsgECAX8BfiMAQRBrIgEkACABIAA2AgQgASABKAIEQggQITYCAAJAIAEoAgBFBEAgAUIANwMIDAELIAEgASgCAC0AAK0gASgCAC0AB61COIYgASgCAC0ABq1CMIZ8IAEoAgAtAAWtQiiGfCABKAIALQAErUIghnwgASgCAC0AA61CGIZ8IAEoAgAtAAKtQhCGfCABKAIALQABrUIIhnx8NwMICyABKQMIIQIgAUEQaiQAIAILqAEBAX8jAEEQayIBJAAgASAANgIIAkAgASgCCCgCIEEATQRAIAEoAghBDGpBEkEAEBcgAUF/NgIMDAELIAEoAggiACAAKAIgQX9qNgIgIAEoAggoAiBFBEAgASgCCEEAQgBBAhAkGiABKAIIKAIABEAgASgCCCgCABA0QQBIBEAgASgCCEEMakEUQQAQFwsLCyABQQA2AgwLIAEoAgwhACABQRBqJAAgAAvxAgICfwF+AkAgAkUNACAAIAJqIgNBf2ogAToAACAAIAE6AAAgAkEDSQ0AIANBfmogAToAACAAIAE6AAEgA0F9aiABOgAAIAAgAToAAiACQQdJDQAgA0F8aiABOgAAIAAgAToAAyACQQlJDQAgAEEAIABrQQNxIgRqIgMgAUH/AXFBgYKECGwiADYCACADIAIgBGtBfHEiAmoiAUF8aiAANgIAIAJBCUkNACADIAA2AgggAyAANgIEIAFBeGogADYCACABQXRqIAA2AgAgAkEZSQ0AIAMgADYCGCADIAA2AhQgAyAANgIQIAMgADYCDCABQXBqIAA2AgAgAUFsaiAANgIAIAFBaGogADYCACABQWRqIAA2AgAgAiADQQRxQRhyIgFrIgJBIEkNACAArSIFQiCGIAWEIQUgASADaiEBA0AgASAFNwMYIAEgBTcDECABIAU3AwggASAFNwMAIAFBIGohASACQWBqIgJBH0sNAAsLC9wBAQF/IwBBEGsiASQAIAEgADYCDCABKAIMBEAgASgCDCgCKARAIAEoAgwoAihBADYCKCABKAIMKAIoQgA3AyAgASgCDAJ+IAEoAgwpAxggASgCDCkDIFYEQCABKAIMKQMYDAELIAEoAgwpAyALNwMYCyABIAEoAgwpAxg3AwADQCABKQMAIAEoAgwpAwhaRQRAIAEoAgwoAgAgASkDAKdBBHRqKAIAEBggASABKQMAQgF8NwMADAELCyABKAIMKAIAEBggASgCDCgCBBAYIAEoAgwQGAsgAUEQaiQAC2sBAX8jAEEgayICIAA2AhwgAkIBIAIoAhythjcDECACQQxqIAE2AgADQCACIAIoAgwiAEEEajYCDCACIAAoAgA2AgggAigCCEEASEUEQCACIAIpAxBCASACKAIIrYaENwMQDAELCyACKQMQCy8BAX8jAEEQayIBJAAgASAANgIMIAEoAgwoAggQGCABKAIMQQA2AgggAUEQaiQAC80BAQF/IwBBEGsiAiQAIAIgADYCCCACIAE2AgQCQCACKAIILQAoQQFxBEAgAkF/NgIMDAELIAIoAgRFBEAgAigCCEEMakESQQAQFyACQX82AgwMAQsgAigCBBA+IAIoAggoAgAEQCACKAIIKAIAIAIoAgQQOUEASARAIAIoAghBDGogAigCCCgCABAaIAJBfzYCDAwCCwsgAigCCCACKAIEQjhBAxAkQgBTBEAgAkF/NgIMDAELIAJBADYCDAsgAigCDCEAIAJBEGokACAACzEB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AyACawuJAgEBfyMAQRBrIgEkACABIAA2AgwCQCABKAIMLQAFQQFxBEAgASgCDCgCAEECcUUNAQsgASgCDCgCMBApIAEoAgxBADYCMAsCQCABKAIMLQAFQQFxBEAgASgCDCgCAEEIcUUNAQsgASgCDCgCNBAmIAEoAgxBADYCNAsCQCABKAIMLQAFQQFxBEAgASgCDCgCAEEEcUUNAQsgASgCDCgCOBApIAEoAgxBADYCOAsCQCABKAIMLQAFQQFxBEAgASgCDCgCAEGAAXFFDQELIAEoAgwoAlQEQCABKAIMKAJUQQAgASgCDCgCVBAwEDULIAEoAgwoAlQQGCABKAIMQQA2AlQLIAFBEGokAAvxAQEBfyMAQRBrIgEgADYCDCABKAIMQQA2AgAgASgCDEEAOgAEIAEoAgxBADoABSABKAIMQQE6AAYgASgCDEG/BjsBCCABKAIMQQo7AQogASgCDEEAOwEMIAEoAgxBfzYCECABKAIMQQA2AhQgASgCDEEANgIYIAEoAgxCADcDICABKAIMQgA3AyggASgCDEEANgIwIAEoAgxBADYCNCABKAIMQQA2AjggASgCDEEANgI8IAEoAgxBADsBQCABKAIMQYCA2I14NgJEIAEoAgxCADcDSCABKAIMQQA7AVAgASgCDEEAOwFSIAEoAgxBADYCVAvaEwEBfyMAQbABayIDJAAgAyAANgKoASADIAE2AqQBIAMgAjYCoAEgA0EANgKQASADIAMoAqQBKAIwQQAQPTYClAEgAyADKAKkASgCOEEAED02ApgBAkACQAJAAkAgAygClAFBAkYEQCADKAKYAUEBRg0BCyADKAKUAUEBRgRAIAMoApgBQQJGDQELIAMoApQBQQJHDQEgAygCmAFBAkcNAQsgAygCpAEiACAALwEMQYAQcjsBDAwBCyADKAKkASIAIAAvAQxB/+8DcTsBDCADKAKUAUECRgRAIANB9eABIAMoAqQBKAIwIAMoAqgBQQhqEL4BNgKQASADKAKQAUUEQCADQX82AqwBDAMLCwJAIAMoAqABQYACcQ0AIAMoApgBQQJHDQAgA0H1xgEgAygCpAEoAjggAygCqAFBCGoQvgE2AkggAygCSEUEQCADKAKQARAmIANBfzYCrAEMAwsgAygCSCADKAKQATYCACADIAMoAkg2ApABCwsCQCADKAKkAS8BUkUEQCADKAKkASIAIAAvAQxB/v8DcTsBDAwBCyADKAKkASIAIAAvAQxBAXI7AQwLIAMgAygCpAEgAygCoAEQgAFBAXE6AIYBIAMgAygCoAFBgApxQYAKRwR/IAMtAIYBBUEBC0EBcToAhwEgAwJ/QQEgAygCpAEvAVJBgQJGDQAaQQEgAygCpAEvAVJBggJGDQAaIAMoAqQBLwFSQYMCRgtBAXE6AIUBIAMtAIcBQQFxBEAgAyADQSBqQhwQLDYCHCADKAIcRQRAIAMoAqgBQQhqQQ5BABAXIAMoApABECYgA0F/NgKsAQwCCwJAIAMoAqABQYACcQRAAkAgAygCoAFBgAhxDQAgAygCpAEpAyBC/////w9WDQAgAygCpAEpAyhC/////w9YDQILIAMoAhwgAygCpAEpAygQLiADKAIcIAMoAqQBKQMgEC4MAQsCQAJAIAMoAqABQYAIcQ0AIAMoAqQBKQMgQv////8PVg0AIAMoAqQBKQMoQv////8PVg0AIAMoAqQBKQNIQv////8PWA0BCyADKAKkASkDKEL/////D1oEQCADKAIcIAMoAqQBKQMoEC4LIAMoAqQBKQMgQv////8PWgRAIAMoAhwgAygCpAEpAyAQLgsgAygCpAEpA0hC/////w9aBEAgAygCHCADKAKkASkDSBAuCwsLAn8jAEEQayIAIAMoAhw2AgwgACgCDC0AAEEBcUULBEAgAygCqAFBCGpBFEEAEBcgAygCHBAZIAMoApABECYgA0F/NgKsAQwCCyADQQECfyMAQRBrIgAgAygCHDYCDAJ+IAAoAgwtAABBAXEEQCAAKAIMKQMQDAELQgALp0H//wNxCyADQSBqQYAGEF42AowBIAMoAhwQGSADKAKMASADKAKQATYCACADIAMoAowBNgKQAQsgAy0AhQFBAXEEQCADIANBFWpCBxAsNgIQIAMoAhBFBEAgAygCqAFBCGpBDkEAEBcgAygCkAEQJiADQX82AqwBDAILIAMoAhBBAhAiIAMoAhBB79cAQQIQQiADKAIQIAMoAqQBLwFSQf8BcRCEASADKAIQIAMoAqQBKAIQQf//A3EQIgJ/IwBBEGsiACADKAIQNgIMIAAoAgwtAABBAXFFCwRAIAMoAqgBQQhqQRRBABAXIAMoAhAQGSADKAKQARAmIANBfzYCrAEMAgsgA0GBsgJBByADQRVqQYAGEF42AgwgAygCEBAZIAMoAgwgAygCkAE2AgAgAyADKAIMNgKQAQsgAyADQdAAakIuECwiADYCTCAARQRAIAMoAqgBQQhqQQ5BABAXIAMoApABECYgA0F/NgKsAQwBCyADKAJMQeXXAEHq1wAgAygCoAFBgAJxG0EEEEIgAygCoAFBgAJxRQRAIAMoAkwCf0EtIAMtAIYBQQFxDQAaIAMoAqQBLwEIC0H//wNxECILIAMoAkwCf0EtIAMtAIYBQQFxDQAaIAMoAqQBLwEKC0H//wNxECIgAygCTCADKAKkAS8BDBAiAkAgAy0AhQFBAXEEQCADKAJMQeMAECIMAQsgAygCTCADKAKkASgCEEH//wNxECILIAMoAqQBKAIUIANBngFqIANBnAFqEL0BIAMoAkwgAy8BngEQIiADKAJMIAMvAZwBECICQAJAIAMtAIUBQQFxRQ0AIAMoAqQBKQMoQhRaDQAgAygCTEEAECMMAQsgAygCTCADKAKkASgCGBAjCwJAAkAgAygCoAFBgAJxQYACRw0AIAMoAqQBKQMgQv////8PVARAIAMoAqQBKQMoQv////8PVA0BCyADKAJMQX8QIyADKAJMQX8QIwwBCwJAIAMoAqQBKQMgQv////8PVARAIAMoAkwgAygCpAEpAyCnECMMAQsgAygCTEF/ECMLAkAgAygCpAEpAyhC/////w9UBEAgAygCTCADKAKkASkDKKcQIwwBCyADKAJMQX8QIwsLIAMoAkwgAygCpAEoAjAQYEH//wNxECIgAyADKAKkASgCNCADKAKgARDCAUH//wNxIAMoApABQYAGEMIBQf//A3FqNgKIASADKAJMIAMoAogBQf//A3EQIiADKAKgAUGAAnFFBEAgAygCTCADKAKkASgCOBBgQf//A3EQIiADKAJMIAMoAqQBKAI8Qf//A3EQIiADKAJMIAMoAqQBLwFAECIgAygCTCADKAKkASgCRBAjAkAgAygCpAEpA0hC/////w9UBEAgAygCTCADKAKkASkDSKcQIwwBCyADKAJMQX8QIwsLAn8jAEEQayIAIAMoAkw2AgwgACgCDC0AAEEBcUULBEAgAygCqAFBCGpBFEEAEBcgAygCTBAZIAMoApABECYgA0F/NgKsAQwBCyADKAKoASADQdAAagJ+IwBBEGsi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NwMAIANBfzYCNCADQQ82AjAgA0ENNgIsIANBDDYCKCADQQo2AiQgA0EJNgIgQeibAUEIIANBIGoQNzcDAAtB4JsBKQMAIAMpA0BB4JsBKQMAg1IEQCADKAJQQRxBABAXIANBADYCXAwBC0HomwEpAwAgAykDQEHomwEpAwCDUgRAIAMgAygCTEEQcjYCTAsgAygCTEEYcUEYRgRAIAMoAlBBGUEAEBcgA0EANgJcDAELIAMgAygCWCADKAJQEIICNgI8IAMoAjxBAWoiAEEBTQRAIABBAWsEQCADQQA2AlwMAgsgAygCTEEBcUUEQCADKAJQQQlBABAXIANBADYCXAwCCyADIAMoAlggAygCTCADKAJQEGc2AlwMAQsgAygCTEECcQRAIAMoAlBBCkEAEBcgA0EANgJcDAELIAMoAlgQS0EASARAIAMoAlAgAygCWBAaIANBADYCXAwBCwJAIAMoAkxBCHEEQCADIAMoAlggAygCTCADKAJQEGc2AjgMAQsgAyADKAJYIAMoAkwgAygCUBCBAjYCOAsgAygCOEUEQCADKAJYEDQaIANBADYCXAwBCyADIAMoAjg2AlwLIAMoAlwhACADQeAAaiQAIAALjgEBAX8jAEEQayICJAAgAiAANgIMIAIgATYCCCACQQA2AgQgAigCCARAIwBBEGsiACACKAIINgIMIAIgACgCDCgCADYCBCACKAIIEIwBQQFGBEAjAEEQayIAIAIoAgg2AgxBtJwBIAAoAgwoAgQ2AgALCyACKAIMBEAgAigCDCACKAIENgIACyACQRBqJAALlQEBAX8jAEEQayIBJAAgASAANgIIAkACfyMAQRBrIgAgASgCCDYCDCAAKAIMKQMYQoCAEINQCwRAIAEoAggoAgAEQCABIAEoAggoAgAQkAFBAXE6AA8MAgsgAUEBOgAPDAELIAEgASgCCEEAQgBBEhAkPgIEIAEgASgCBEEARzoADwsgAS0AD0EBcSEAIAFBEGokACAAC38BAX8jAEEgayIDJAAgAyAANgIYIAMgATcDECADQQA2AgwgAyACNgIIAkAgAykDEEL///////////8AVgRAIAMoAghBBEE9EBcgA0F/NgIcDAELIAMgAygCGCADKQMQIAMoAgwgAygCCBBoNgIcCyADKAIcIQAgA0EgaiQAIAALfQAgAkEBRgRAIAEg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CAwBCyACKAIYCzsBDiACQQA2AhACQANAIAIoAhBBuJoBKAIASQRAIAIoAhBBDGxBvJoBai8BACACLwEORgRAIAItABdBAXEEQCACIAIoAhBBDGxBvJoBaigCBDYCHAwECyACIAIoAhBBDGxBvJoBaigCCDYCHAwDBSACIAIoAhBBAWo2AhAMAgsACwsgAkEANgIcCyACKAIcC+QBAQF/IwBBIGsiAyQAIAMgADoAGyADIAE2AhQgAyACNgIQIANByAAQGyIANgIMAkAgAEUEQCADKAIQQQFBtJwBKAIAEBcgA0EANgIcDAELIAMoAgwgAygCEDYCACADKAIMIAMtABtBAXE6AAQgAygCDCADKAIUNgIIAkAgAygCDCgCCEEBTgRAIAMoAgwoAghBCUwNAQsgAygCDEEJNgIICyADKAIMQQA6AAwgAygCDEEANgIwIAMoAgxBADYCNCADKAIMQQA2AjggAyADKAIMNgIcCyADKAIcIQAgA0EgaiQAIAAL4wgBAX8jAEFAaiICIAA2AjggAiABNgI0IAIgAigCOCgCfDYCMCACIAIoAjgoAjggAigCOCgCbGo2AiwgAiACKAI4KAJ4NgIgIAIgAigCOCgCkAE2AhwgAgJ/IAIoAjgoAmwgAigCOCgCLEGGAmtLBEAgAigCOCgCbCACKAI4KAIsQYYCa2sMAQtBAAs2AhggAiACKAI4KAJANgIUIAIgAigCOCgCNDYCECACIAIoAjgoAjggAigCOCgCbGpBggJqNgIMIAIgAigCLCACKAIgQQFrai0AADoACyACIAIoAiwgAigCIGotAAA6AAogAigCOCgCeCACKAI4KAKMAU8EQCACIAIoAjBBAnY2AjALIAIoAhwgAigCOCgCdEsEQCACIAIoAjgoAnQ2AhwLA0ACQCACIAIoAjgoAjggAigCNGo2AigCQCACKAIoIAIoAiBqLQAAIAItAApHDQAgAigCKCACKAIgQQFrai0AACACLQALRw0AIAIoAigtAAAgAigCLC0AAEcNACACIAIoAigiAEEBajYCKCAALQABIAIoAiwtAAFHBEAMAQsgAiACKAIsQQJqNgIsIAIgAigCKEEBajYCKANAIAIgAigCLCIAQQFqNgIsIAAtAAEhASACIAIoAigiAEEBajYCKAJ/QQAgAC0AASABRw0AGiACIAIoAiwiAEEBajYCLCAALQABIQEgAiACKAIoIgBBAWo2AihBACAALQABIAFHDQAaIAIgAigCLCIAQQFqNgIsIAAtAAEhASACIAIoAigiAEEBajYCKEEAIAAtAAEgAUcNABogAiACKAIsIgBBAWo2AiwgAC0AASEBIAIgAigCKCIAQQFqNgIoQQAgAC0AASABRw0AGiACIAIoAiwiAEEBajYCLCAALQABIQEgAiACKAIoIgBBAWo2AihBACAALQABIAFHDQAaIAIgAigCLCIAQQFqNgIsIAAtAAEhASACIAIoAigiAEEBajYCKEEAIAAtAAEgAUcNABogAiACKAIsIgBBAWo2AiwgAC0AASEBIAIgAigCKCIAQQFqNgIoQQAgAC0AASABRw0AGiACIAIoAiwiAEEBajYCLCAALQABIQEgAiACKAIoIgBBAWo2AihBACAALQABIAFHDQAaIAIoAiwgAigCDEkLQQFxDQALIAJBggIgAigCDCACKAIsa2s2AiQgAiACKAIMQf59ajYCLCACKAIkIAIoAiBKBEAgAigCOCACKAI0NgJwIAIgAigCJDYCICACKAIkIAIoAhxODQIgAiACKAIsIAIoAiBBAWtqLQAAOgALIAIgAigCLCACKAIgai0AADoACgsLIAIgAigCFCACKAI0IAIoAhBxQQF0ai8BACIBNgI0QQAhACABIAIoAhhLBH8gAiACKAIwQX9qIgA2AjAgAEEARwVBAAtBAXENAQsLAkAgAigCICACKAI4KAJ0TQRAIAIgAigCIDYCPAwBCyACIAIoAjgoAnQ2AjwLIAIoAjwLnhABAX8jAEEwayICJAAgAiAANgIoIAIgATYCJCACAn8gAigCKCgCDEEFayACKAIoKAIsSwRAIAIoAigoAiwMAQsgAigCKCgCDEEFaws2AiAgAkEANgIQIAIgAigCKCgCACgCBDYCDANAAkAgAkH//wM2AhwgAiACKAIoKAK8LUEqakEDdTYCFCACKAIoKAIAKAIQIAIoAhRJDQAgAiACKAIoKAIAKAIQIAIoAhRrNgIUIAIgAigCKCgCbCACKAIoKAJcazYCGCACKAIcIAIoAhggAigCKCgCACgCBGpLBEAgAiACKAIYIAIoAigoAgAoAgRqNgIcCyACKAIcIAIoAhRLBEAgAiACKAIUNgIcCwJAIAIoAhwgAigCIE8NAAJAIAIoAhxFBEAgAigCJEEERw0BCyACKAIkRQ0AIAIoAhwgAigCGCACKAIoKAIAKAIEakYNAQsMAQtBACEAIAJBAUEAIAIoAiRBBEYEfyACKAIcIAIoAhggAigCKCgCACgCBGpGBUEAC0EBcRs2AhAgAigCKEEAQQAgAigCEBBWIAIoAigoAgggAigCKCgCFEEEa2ogAigCHDoAACACKAIoKAIIIAIoAigoAhRBA2tqIAIoAhxBCHY6AAAgAigCKCgCCCACKAIoKAIUQQJraiACKAIcQX9zOgAAIAIoAigoAgggAigCKCgCFEEBa2ogAigCHEF/c0EIdjoAACACKAIoKAIAEB8gAigCGARAIAIoAhggAigCHEsEQCACIAIoAhw2AhgLIAIoAigoAgAoAgwgAigCKCgCOCACKAIoKAJcaiACKAIYEBwaIAIoAigoAgAiACACKAIYIAAoAgxqNgIMIAIoAigoAgAiACAAKAIQIAIoAhhrNgIQIAIoAigoAgAiACACKAIYIAAoAhRqNgIUIAIoAigiACACKAIYIAAoAlxqNgJcIAIgAigCHCACKAIYazYCHAsgAigCHARAIAIoAigoAgAgAigCKCgCACgCDCACKAIcEHQaIAIoAigoAgAiACACKAIcIAAoAgxqNgIMIAIoAigoAgAiACAAKAIQIAIoAhxrNgIQIAIoAigoAgAiACACKAIcIAAoAhRqNgIUCyACKAIQRQ0BCwsgAiACKAIMIAIoAigoAgAoAgRrNgIMIAIoAgwEQAJAIAIoAgwgAigCKCgCLE8EQCACKAIoQQI2ArAtIAIoAigoAjggAigCKCgCACgCACACKAIoKAIsayACKAIoKAIsEBwaIAIoAiggAigCKCgCLDYCbAwBCyACKAIoKAI8IAIoAigoAmxrIAIoAgxNBEAgAigCKCIAIAAoAmwgAigCKCgCLGs2AmwgAigCKCgCOCACKAIoKAI4IAIoAigoAixqIAIoAigoAmwQHBogAigCKCgCsC1BAkkEQCACKAIoIgAgACgCsC1BAWo2ArAtCwsgAigCKCgCOCACKAIoKAJsaiACKAIoKAIAKAIAIAIoAgxrIAIoAgwQHBogAigCKCIAIAIoAgwgACgCbGo2AmwLIAIoAiggAigCKCgCbDYCXCACKAIoIgECfyACKAIMIAIoAigoAiwgAigCKCgCtC1rSwRAIAIoAigoAiwgAigCKCgCtC1rDAELIAIoAgwLIAEoArQtajYCtC0LIAIoAigoAsAtIAIoAigoAmxJBEAgAigCKCACKAIoKAJsNgLALQsCQCACKAIQBEAgAkEDNgIsDAELAkAgAigCJEUNACACKAIkQQRGDQAgAigCKCgCACgCBA0AIAIoAigoAmwgAigCKCgCXEcNACACQQE2AiwMAQsgAiACKAIoKAI8IAIoAigoAmxrQQFrNgIUAkAgAigCKCgCACgCBCACKAIUTQ0AIAIoAigoAlwgAigCKCgCLEgNACACKAIoIgAgACgCXCACKAIoKAIsazYCXCACKAIoIgAgACgCbCACKAIoKAIsazYCbCACKAIoKAI4IAIoAigoAjggAigCKCgCLGogAigCKCgCbBAcGiACKAIoKAKwLUECSQRAIAIoAigiACAAKAKwLUEBajYCsC0LIAIgAigCKCgCLCACKAIUajYCFAsgAigCFCACKAIoKAIAKAIESwRAIAIgAigCKCgCACgCBDYCFAsgAigCFARAIAIoAigoAgAgAigCKCgCOCACKAIoKAJsaiACKAIUEHQaIAIoAigiACACKAIUIAAoAmxqNgJsCyACKAIoKALALSACKAIoKAJsSQRAIAIoAiggAigCKCgCbDYCwC0LIAIgAigCKCgCvC1BKmpBA3U2AhQgAgJ/Qf//AyACKAIoKAIMIAIoAhRrQf//A0sNABogAigCKCgCDCACKAIUaws2AhQgAgJ/IAIoAhQgAigCKCgCLEsEQCACKAIoKAIsDAELIAIoAhQLNgIgIAIgAigCKCgCbCACKAIoKAJcazYCGAJAIAIoAhggAigCIEkEQCACKAIYRQRAIAIoAiRBBEcNAgsgAigCJEUNASACKAIoKAIAKAIEDQEgAigCGCACKAIUSw0BCyACAn8gAigCGCACKAIUSwRAIAIoAhQMAQsgAigCGAs2AhwgAkEBQQACf0EAIAIoAiRBBEcNABpBACACKAIoKAIAKAIEDQAaIAIoAhwgAigCGEYLQQFxGzYCECACKAIoIAIoAigoAjggAigCKCgCXGogAigCHCACKAIQEFYgAigCKCIAIAIoAhwgACgCXGo2AlwgAigCKCgCABAfCyACQQJBACACKAIQGzYCLAsgAigCLCEAIAJBMGokACAAC7ICAQF/IwBBEGsi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AhhBAnRqIgAgAygCECAALwEAajsBAAwBCwJAIAMoAhgEQCADKAIYIAMoAhxHBEAgAygCLCADKAIYQQJ0akH8FGoiACAALwEAQQFqOwEACyADKAIsIgAgAEG8FWovAQBBAWo7AbwVDAELAkAgAygCEEEKTARAIAMoAiwiACAAQcAVai8BAEEBajsBwBUMAQsgAygCLCIAIABBxBVqLwEAQQFqOwHEFQsLCyADQQA2AhAgAyADKAIYNgIcAkAgAygCFEUEQCADQYoBNgIMIANBAzYCCAwBCwJAIAMoAhggAygCFEYEQCADQQY2AgwgA0EDNgIIDAELIANBBzYCDCADQQQ2AggLCwsgAyADKAIgQQFqNgIgDAELCwunEgECfyMAQdAAayIDIAA2AkwgAyABNgJIIAMgAjYCRCADQQA2AjggAygCTCgCoC0EQANAIAMgAygCTCgCpC0gAygCOEEBdGovAQA2AkAgAygCTCgCmC0hACADIAMoAjgiAUEBajYCOCADIAAgAWotAAA2AjwCQCADKAJARQRAIAMgAygCSCADKAI8QQJ0ai8BAjYCLAJAIAMoAkwoArwtQRAgAygCLGtKBEAgAyADKAJIIAMoAjxBAnRqLwEANgIoIAMoAkwiACAALwG4LSADKAIoQf//A3EgAygCTCgCvC10cjsBuC0gAygCTC8BuC1B/wFxIQEgAygCTCgCCCECIAMoAkwiBCgCFCEAIAQgAEEBajYCFCAAIAJqIAE6AAAgAygCTC8BuC1BCHUhASADKAJMKAIIIQIgAygCTCIEKAIUIQAgBCAAQQFqNgIUIAAgAmogAToAACADKAJMIAMoAihB//8DcUEQIAMoAkwoArwta3U7AbgtIAMoAkwiACAAKAK8LSADKAIsQRBrajYCvC0MAQsgAygCTCIAIAAvAbgtIAMoAkggAygCPEECdGovAQAgAygCTCgCvC10cjsBuC0gAygCTCIAIAMoAiwgACgCvC1qNgK8LQsMAQsgAyADKAI8LQCgXTYCNCADIAMoAkggAygCNEGBAmpBAnRqLwECNgIkAkAgAygCTCgCvC1BECADKAIka0oEQCADIAMoAkggAygCNEGBAmpBAnRqLwEANgIgIAMoAkwiACAALwG4LSADKAIgQf//A3EgAygCTCgCvC10cjsBuC0gAygCTC8BuC1B/wFxIQEg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/wNxCwJ/IwBBEGsiACADKAIENgIMIAAoAgwoAgQLQYAGEF42AgAgAygCBBAZIAMgAygCADYCHAsgAygCHCEAIANBIGokACAAC7QCAQF/IwBBMGsiAyQAIAMgADYCKCADIAE3AyAgAyACNgIcAkAgAykDIFAEQCADQQE6AC8MAQsgAyADKAIoKQMQIAMpAyB8NwMIAkAgAykDCCADKQMgWgRAIAMpAwhC/////wBYDQELIAMoAhxBDkEAEBcgA0EAOgAvDAELIAMgAygCKCgCACADKQMIp0EEdBBKIgA2AgQgAEUEQCADKAIcQQ5BABAXIANBADoALwwBCyADKAIoIAMoAgQ2AgAgAyADKAIoKQMINwMQA0AgAykDECADKQMIWkUEQCADKAIoKAIAIAMpAxCnQQR0ahCGASADIAMpAxBCAXw3AxAMAQsLIAMoAiggAykDCCIBNwMQIAMoAiggATcDCCADQQE6AC8LIAMtAC9BAXEhACADQTBqJAAgAAvMAQEBfyMAQSBrIgIkACACIAA3AxAgAiABNgIMIAJBMBAbIgE2AggCQCABRQRAIAIoAgxBDkEAEBcgAkEANgIcDAELIAIoAghBADYCACACKAIIQgA3AxAgAigCCEIANwMIIAIoAghCADcDICACKAIIQgA3AxggAigCCEEANgIoIAIoAghBADoALCACKAIIIAIpAxAgAigCDBC/AUEBcUUEQCACKAIIECggAkEANgIcDAELIAIgAigCCDYCHAsgAigCHCEBIAJBIGokACABC9kCAQF/IwBBIGsiAyQAIAMgADYCGCADIAE2AhQgAyACNgIQIAMgA0EMakIEECw2AggCQCADKAIIRQRAIANBfzYCHAwBCwNAIAMoAhQEQCADKAIUKAIEIAMoAhBxQYAGcQRAIAMoAghCABAxGiADKAIIIAMoAhQvAQgQIiADKAIIIAMoAhQvAQoQIgJ/IwBBEGsiACADKAIINgIMIAAoAgwtAABBAXFFCwRAIAMoAhhBCGpBFEEAEBcgAygCCBAZIANBfzYCHAwECyADKAIYIANBDGpCBBA8QQBIBEAgAygCCBAZIANBfzYCHAwECyADKAIULwEKQQBKBEAgAygCGCADKAIUKAIMIAMoAhQvAQqtEDxBAEgEQCADKAIIEBkgA0F/NgIcDAULCwsgAyADKAIUKAIANgIU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TAwBCyACQQE2AkwLIAIoAkwhACACQdAAaiQAIAALLQAgAFBFBEADQCABQX9qIgEgAKdBB3FBMHI6AAAgAEIDiCIAQgBSDQALCyABC+oBAQF/IwBBMGsiAyQAIAMgADYCKCADIAE2AiQgAyACNgIgIwBBEGsiACADQQhqIgE2AgwgACgCDEEANgIAIAAoAgxBADYCBCAAKAIMQQA2AgggAyADKAIoIAEQhgIiADYCGAJAIABFBEAgAygCICADQQhqIgAQjwEgABA4IANBADYCLAwBCyADIAMoAhggAygCJCADQQhqEI4BIgA2AhwgAEUEQCADKAIYEB4gAygCICADQQhqIgAQjwEgABA4IANBADYCLAwBCyADQQhqEDggAyADKAIcNgIsCyADKAIsIQAgA0EwaiQAIAALyAIBAX8jAEEQayIBJAAgASAANgIIIAFB2AAQGzYCBAJAIAEoAgRFBEAgASgCCEEOQQAQFyABQQA2AgwMAQsgASgCCBCDAyEAIAEoAgQgADYCUCAARQRAIAEoAgQQGCABQQA2AgwMAQsgASgCBEEANgIAIAEoAgRBADYCBCMAQRBrIgAgASgCBEEIajYCDCAAKAIMQQA2AgAgACgCDEEANgIEIAAoAgxBADYCCCABKAIEQQA2AhggASgCBEEANgIUIAEoAgRBADYCHCABKAIEQQA2AiQgASgCBEEANgIgIAEoAgRBADoAKCABKAIEQgA3AzggASgCBEIANwMwIAEoAgRBADYCQCABKAIEQQA2AkggASgCBEEANgJEIAEoAgRBADYCTCABKAIEQQA2AlQgASABKAIENgIMCyABKAIMIQAgAUEQaiQAIAALgQEBAX8jAEEgayICJAAgAiAANgIYIAJCADcDECACQn83AwggAiABNgIEAkACQCACKAIYBEAgAikDCEJ/WQ0BCyACKAIEQRJBABAXIAJBADYCHAwBCyACIAIoAhggAikDECACKQMIIAIoAgQQigI2AhwLIAIoAhwhACACQSBqJAAgAAvNAQECfyMAQSBrIgEkACABIAA2AhggAUEAOgAXIAFBgIAgNgIMAkAgAS0AF0EBcQRAIAEgASgCDEECcjYCDAwBCyABIAEoAgw2AgwLIAEoAhghACABKAIMIQIgAUG2AzYCACABIAAgAiABEGoiADYCEAJAIABBAEgEQCABQQA2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AUEBajYCFCABIAA6AAAgAiACKAIMQSRuNgIMDAELCyACKAIoIQAgAgJ/QbYDIAIoAiRBf0YNABogAigCJAs2AgAgAiAAQcKBICACEGoiADYCICAAQQBOBEAgAigCJEF/RwRAIAIoAiggAigCJBCPAgsgAiACKAIgNgIsDAILQbScASgCAEEURg0ACyACQX82AiwLIAIoAiwhACACQTBqJAAgAAtDAQF/IwBBEGsiAiQAIAIgATYCBCACIAA2AgBBDyACEBAiAEGBYE8Ef0G0nAFBACAAazYCAEEABSAACxogAkEQaiQAC2cBAn8jAEEQayIAJAACQCAAQQhqEJECQQFxBEAgACAAKAIINgIMDAELQYShAS0AAEEBcUUEQEEAEAIhAUH4oAEQAyABEJMCQfigARABCyAAEJICNgIMCyAAKAIMIQEgAEEQaiQAIAELjAEBAX8jAEEQayIBJAAgASAANgIIIAFBBDsBBiABQeeXAUEAQQAQaiIANgIAAkAgAEEASARAIAFBADoADwwBCyABKAIAIAEoAgggAS8BBhCUAiABLwEGRwRAIAEoAgAQaSABQQA6AA8MAQsgASgCABBpIAFBAToADwsgAS0AD0EBcSEAIAFBEGokACAAC60BAQR/QfigARADQcyaASgCACEAAkBByJoBKAIAIgNFBEAgACAAKAIAQe2cmY4EbEG54ABqQf////8HcSIANgIADAELIABB0JoBKAIAIgJBAnRqIgEgASgCACAAQYChASgCACIBQQJ0aigCAGoiADYCAEGAoQFBACABQQFqIgEgASADRhs2AgBB0JoBQQAgAkEBaiICIAIgA0YbNgIAIABBAXYhAAtB+KABEAEgAAujAQIDfwF+QciaASgCACIBRQRAQcyaASgCACAANgIADwtB0JoBQQNBA0EBIAFBB0YbIAFBH0YbNgIAQYChAUEANgIAAkAgAUEATARAQcyaASgCACECDAELQcyaASgCACECIACtIQQDQCACIANBAnRqIARCrf7V5NSF/ajYAH5CAXwiBEIgiD4CACADQQFqIgMgAUcNAAsLIAIgAigCAEEBcjYCAAtKAQF/IwBBEGsiAyQAIAMgAjYCCCADIAE2AgQgAyAANgIAQQMgAxARIgBBgWBPBEBBtJwBQQAgAGs2AgBBfyEACyADQRBqJAAgAAuxAQECfyAC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fyMAQbABayIBJAAgASAANgKoASABKAKoARA4AkACQCABKAKoASgCAEEATgRAIAEoAqgBKAIAQcASKAIASA0BCyABIAEoAqgBKAIANgIQIAFBIGpBvJcBIAFBEGoQcCABQQA2AqQBIAEgAUEgajYCoAEMAQsgASABKAKoASgCAEECdEHAEWooAgA2AqQBAkAgASgCqAEoAgBBAnRB0BJqKAIAQX9qIgBBAU0EQCAAQQFrBEAgASABKAKoASgCBEHAmQEoAgAQrwI2AqABDAILIwBBEGsiACABKAKoASgCBDYCDCABQQAgACgCDGtBAnRB+NgAaigCADYCoAEMAQsgAUEANgKgAQsLAkAgASgCoAFFBEAgASABKAKkATYCrAEMAQsgASABKAKgARAwAn8gASgCpAEEQCABKAKkARAwQQJqDAELQQALakEBahAbIgA2AhwgAEUEQCABQfgRKAIANgKsAQwBCyABKAIcIQACfyABKAKkAQRAIAEoAqQBDAELQdSXAQshAkHVlwFB1JcBIAEoAqQBGyEDIAEgASgCoAE2AgggASADNgIEIAEgAjYCACAAQc2XASABEHAgASgCqAEgASgCHDYCCCABIAEoAhw2AqwBCyABKAKsASEAIAFBsAFqJAAgAAtxAQN/AkACQANAIAAgAkHQiAFqLQAARwRAQdcAIQMgAkEBaiICQdcARw0BDAILCyACIgMNAEGwiQEhAAwBC0GwiQEhAgNAIAItAAAhBCACQQFqIgAhAiAEDQAgACECIANBf2oiAw0ACwsgASgCFBogAAszAQF/IAAoAhQiAyABIAIgACgCECADayIBIAEgAksbIgEQHBogACAAKAIUIAFqNgIUIAILigEBAn8jAEGgAWsiAyQAIANBCGpBuIcBQZABEBwaIAMgADYCNCADIAA2AhwgA0F+IABrIgRB/////wdB/////wcgBEsbIgQ2AjggAyAAIARqIgA2AiQgAyAANgIYIANBCGogASACEKsCIAQEQCADKAIcIgAgACADKAIYRmtBADoAAAsgA0GgAWokAAu+AgEBfyMAQcDAAGsiAyQAIAMgADYCuEAgAyABNgK0QCADIAI3A6hAAkAgAygCtEAQS0EASARAIAMoArhAQQhqIAMoArRAEBogA0F/NgK8QAwBCyADQQA2AgwgA0IANwMQA0ACQCADIAMoArRAIANBIGpCgMAAEC8iAjcDGCACQgBXDQAgAygCuEAgA0EgaiADKQMYEDxBAEgEQCADQX82AgwFIAMpAxhCgMAAUg0CIAMoArhAKAJURQ0CIAMpA6hAQgBXDQIgAyADKQMYIAMpAxB8NwMQIAMoArhAKAJUIAMpAxC5IAMpA6hAuaMQVwwCCwsLIAMpAxhCAFMEQCADKAK4QEEIaiADKAK0QBAaIANBfzYCDAsgAygCtEAQNBogAyADKAIMNgK8QAsgAygCvEAhACADQcDAAGokACAAC6oBAQF/IwBBMGsiAyQAIAMgADYCKCADIAE2AiQgAyACNwMYIAMgAygCKCgCABA7IgI3AxACQCACQgBTBEAgA0F/NgIsDAELIAMgAygCKCADKAIkIAMpAxgQkwMiAjcDACACQgBTBEAgA0F/NgIsDAELIAMgAygCKCgCABA7IgI3AwggAkIAUwRAIANBfzYCLAwBCyADQQA2AiwLIAMoAiwhACADQTBqJAAgAAsvACABAn8gAigCTEF/TARAIAAgASACEHEMAQsgACABIAIQcQsiAEYEQCABDwsgAAv/AQEBfyMAQaDAAGsiAiQAIAIgADYCmEAgAiABNwOQQCACIAIpA5BAujkDAAJAA0AgAikDkEBCAFYEQCACAn5CgMAAIAIpA5BAQoDAAFYNABogAikDkEALPgIMIAIoAphAKAIAIAJBEGogAigCDK0gAigCmEBBCGoQgwFBAEgEQCACQX82ApxADAMLIAIoAphAIAJBEGogAigCDK0QPEEASARAIAJBfzYCnEAMAwUgAiACKQOQQCACNQIMfTcDkEAgAigCmEAoAlQgAisDACACKQOQQLqhIAIrAwCjEFcMAgsACwsgAkEANgKcQAsgAigCnEAhACACQaDAAGokACAAC/IRAgF/AX4jAEGgAWsiAyQAIAMgADYCmAEgAyABNgKUASADIAI2ApABAkAgAygClAEgA0E4ahA5QQBIBEAgAygCmAFBCGogAygClAEQGiADQX82ApwBDAELIAMpAzhCwACDUARAIAMgAykDOELAAIQ3AzggA0EAOwFoCwJAAkAgAygCkAEoAhBBf0cEQCADKAKQASgCEEF+Rw0BCyADLwFoRQ0AIAMoApABIAMvAWg2AhAMAQsCQAJAIAMoApABKAIQDQAgAykDOEIEg1ANACAD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oyADQgF8uiAEoxD4AiABIAEoAiggASkDSKdBA3RqKQMANwNQIAEgASgCWCgCQCABKQNQp0EEdGo2AhACQAJAIAEoAhAoAgBFDQAgASgCECgCACkDSCABKQM4Wg0ADAELIAECf0EBIAEoAhAoAggNABogASgCECgCBARAQQEgASgCECgCBCgCAEEBcQ0BGgsgASgCECgCBAR/IAEoAhAoAgQoAgBBwABxQQBHBUEACwtBAXE2AhQgASgCECgCBEUEQCABKAIQKAIAEEghACABKAIQIAA2AgQgAEUEQCABKAJYQQhqQQ5BABAXIAFBATYCLAwDCwsgASABKAIQKAIENgIMIAEoAlggASkDUBCUA0EASARAIAFBATYCLAwCCyABIAEoAlgoAgAQOyIDNwMwIANCAFMEQCABQQE2AiwMAgsgASgCDCABKQMwNwNIAkAgASgCFARAIAFBADYCCCABKAIQKAIIRQRAIAEgASgCWCABKAJYIAEpA1BBCEEAEKEBIgA2AgggAEUEQCABQQE2AiwMBQsLIAEoAlgCfyABKAIIBEAgASgCCAwBCyABKAIQKAIICyABKAIMELYCQQBIBEAgAUEBNgIsIAEoAggEQCABKAIIEB4LDAQLIAEoAggEQCABKAIIEB4LDAELIAEoAgwiACAALwEMQff/A3E7AQwgASgCWCABKAIMQYACEF1BAEgEQCABQQE2AiwMAwsgASABKAJYIAEpA1AgASgCWEEIahB/IgM3AwAgA1AEQCABQQE2AiwMAwsgASgCWCgCACABKQMAQQAQKkEASARAIAEoAlhBCGogASgCWCgCABAaIAFBATYCLAwDCyABKAJYIAEoAgwpAyAQtQJBAEgEQCABQQE2AiwMAwsLCyABIAEpA0hCAXw3A0gMAQsLIAEoAixFBEAgASgCWCABKAIoIAEpA0AQswJBAEgEQCABQQE2AiwLCyABKAIoEBggASgCLEUEQCABKAJYKAIAELoCBEAgASgCWEEIaiABKAJYKAIAEBogAUEBNgIsCwsgASgCWCgCVBD8AiABKAIsBEAgASgCWCgCABBkIAFBfzYCXAwBCyABKAJYEEEgAUEANgJcCyABKAJcIQAgAUHgAGokACAAC7MBAQF/IwBBEGsiASQAIAEgADYCCAJAA0AgASgCCARAIAEoAggpAxhCgIAEg0IAUgRA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GEEANgIcCyABIAEoAgg2AhwLIAEoAhwhACABQSBqJAAgAAutAgEBfyMAQSBrIgIkACACIAA2AhggAiABNgIUAkAgAigCGBBNBEAgAkF+NgIcDAELIAIgAigCGCgCHDYCDAJAIAIoAhRBAEgEQCACQQA2AhAgAkEAIAIoAhRrNgIUDAELIAIgAigCFEEEdUEFajYCECACKAIUQTBIBEAgAiACKAIUQQ9xNgIUCwsCQCACKAIURQ0AIAIoAhRBCE4EQCACKAIUQQ9MDQELIAJBfjYCHAwBCwJAIAIoAgwoAjhFDQAgAigCDCgCKCACKAIURg0AIAIoAhgoAiggAigCDCgCOCACKAIYKAIkEQQAIAIoAgxBADYCOAsgAigCDCACKAIQNgIMIAIoAgwgAigCFDYCKCACIAIoAhgQ0QI2AhwLIAIoAhwhACACQSBqJAAgAAtyAQF/IwBBEGsiASQAIAEgADYCCAJAIAEoAggQTQRAIAFBfjYCDAwBCyABIAEoAggoAhw2AgQgASgCBEEANgIsIAEoAgRBADYCMCABKAIEQQA2AjQgASABKAIIENICNgIMCyABKAIMIQAgAUEQaiQAIAALmwIBAX8jAEEQayIBJAAgASAANgIIAkAgASgCCBBNBEAgAUF+NgIMDAELIAEgASgCCCgCHDYCBCABKAIEQQA2AiAgASgCCEEANgIUIAEoAghBADYCCCABKAIIQQA2AhggASgCBCgCDARAIAEoAgggASgCBCgCDEEBcTYCMAsgASgCBEG0/gA2AgQgASgCBEEANgIIIAEoAgRBADYCECABKAIEQYCAAjYCGCABKAIEQQA2AiQgASgCBEEANgI8IAEoAgRBADYCQCABKAIEIAEoAgRBtApqIgA2AnAgASgCBCAANgJUIAEoAgQgADYCUCABKAIEQQE2AsQ3IAEoAgRBfzYCyDcgAUEANgIMCyABKAIMIQAgAUEQaiQAIAAL2QMCAn8CfiMAQSBrIgIkAAJAIAFC////////////AIMiBUKAgICAgIDA/0N8IAVCgICAgICAwIC8f3xUBEAgAUIEhiAAQjyIhCEEIABC//////////8PgyIAQoGAgICAgICACFoEQCAEQoGAgICAgICAwAB8IQQMAgsgBEKAgICAgICAgEB9IQQgAEKAgICAgICAgAiFQgBSDQEgBEIBgyAEfCEEDAELIABQIAVCgICAgICAwP//AFQgBUKAgICAgIDA//8AURtFBEAgAUIEhiAAQjyIhEL/////////A4NCgICAgICAgPz/AIQhBAwBC0KAgICAgICA+P8AIQQgBUL///////+//8MAVg0AQgAhBCAFQjCIpyIDQZH3AEkNACACIAAgAUL///////8/g0KAgICAgIDAAIQiBEGB+AAgA2sQ4AIgAkEQaiAAIAQgA0H/iH9qENkCIAIpAwhCBIYgAikDACIAQjyIhCEEIAIpAxAgAikDGIRCAFKtIABC//////////8Pg4QiAEKBgICAgICAgAhaBEAgBEIBfCEEDAELIABCgICAgICAgIAIhUIAUg0AIARCAYMgBHwhBAsgAkEgaiQAIAQgAUKAgICAgICAgIB/g4S/C5IVAQF/IwBB4ABrIgIgADYCXCACIAE2AlggAiACKAJcKAIcNgJUIAIgAigCXCgCADYCUCACIAIoAlAgAigCXCgCBEEFa2o2AkwgAiACKAJcKAIMNgJIIAIgAigCSCACKAJYIAIoAlwoAhBrazYCRCACIAIoAkggAigCXCgCEEGBAmtqNgJAIAIgAigCVCgCLDYCPCACIAIoAlQoAjA2AjggAiACKAJUKAI0NgI0IAIgAigCVCgCODYCMCACIAIoAlQoAjw2AiwgAiACKAJUKAJANgIoIAIgAigCVCgCUDYCJCACIAIoAlQoAlQ2AiAgAkEBIAIoAlQoAlh0QQFrNgIcIAJBASACKAJUKAJcdEEBazYCGANAIAIoAihBD0kEQCACIAIoAlAiAEEBajYCUCACIAIoAiwgAC0AACACKAIodGo2AiwgAiACKAIoQQhqNgIoIAIgAigCUCIAQQFqNgJQIAIgAigCLCAALQAAIAIoAih0ajYCLCACIAIoAihBCGo2AigLIAJBEGogAigCJCACKAIsIAIoAhxxQQJ0aigBADYBAAJAAkADQCACIAItABE2AgwgAiACKAIsIAIoAgx2NgIsIAIgAigCKCACKAIMazYCKCACIAItABA2AgwgAigCDEUEQCACLwESIQAgAiACKAJIIgFBAWo2AkggASAAOgAADAILIAIoAgxBEHEEQCACIAIvARI2AgggAiACKAIMQQ9xNgIMIAIoAgwEQCACKAIoIAIoAgxJBEAgAiACKAJQIgBBAWo2AlAgAiACKAIsIAAtAAAgAigCKHRqNgIsIAIgAigCKEEIajYCKAsgAiACKAIIIAIoAixBASACKAIMdEEBa3FqNgIIIAIgAigCLCACKAIMdjYCLCACIAIoAiggAigCDGs2AigLIAIoAihBD0kEQCACIAIoAlAiAEEBajYCUCACIAIoAiwgAC0AACACKAIodGo2AiwgAiACKAIoQQhqNgIoIAIgAigCUCIAQQFqNgJQIAIgAigCLCAALQAAIAIoAih0ajYCLCACIAIoAihBCGo2AigLIAJBEGogAigCICACKAIsIAIoAhhxQQJ0aigBADYBAAJAA0AgAiACLQARNgIMIAIgAigCLCACKAIMdjYCLCACIAIoAiggAigCDGs2AiggAiACLQAQNgIMIAIoAgxBEHEEQCACIAIvARI2AgQgAiACKAIMQQ9xNgIMIAIoAiggAigCDEkEQCACIAIoAlAiAEEBajYCUCACIAIoAiwgAC0AACACKAIodGo2AiwgAiACKAIoQQhqNgIoIAIoAiggAigCDEkEQCACIAIoAlAiAEEBajYCUCACIAIoAiwgAC0AACACKAIodGo2AiwgAiACKAIoQQhqNgIoCwsgAiACKAIEIAIoAixBASACKAIMdEEBa3FqNgIEIAIgAigCLCACKAIMdjYCLCACIAIoAiggAigCDGs2AiggAiACKAJIIAIoAkRrNgIMAkAgAigCBCACKAIMSwRAIAIgAigCBCACKAIMazYCDCACKAIMIAIoAjhLBEAgAigCVCgCxDcEQCACKAJcQdDxADYCGCACKAJUQdH+ADYCBAwKCwsgAiACKAIwNgIAAkAgAigCNEUEQCACIAIoAgAgAigCPCACKAIMa2o2AgAgAigCDCACKAIISQRAIAIgAigCCCACKAIMazYCCANAIAIgAigCACIAQQFqNgIAIAAtAAAhACACIAIoAkgiAUEBajYCSCABIAA6AAAgAiACKAIMQX9qIgA2AgwgAA0ACyACIAIoAkggAigCBGs2AgALDAELAkAgAigCNCACKAIMSQRAIAIgAigCACACKAI8IAIoAjRqIAIoAgxrajYCACACIAIoAgwgAigCNGs2AgwgAigCDCACKAIISQRAIAIgAigCCCACKAIMazYCCANAIAIgAigCACIAQQFqNgIAIAAtAAAhACACIAIoAkgiAUEBajYCSCABIAA6AAAgAiACKAIMQX9qIgA2AgwgAA0ACyACIAIoAjA2AgAgAigCNCACKAIISQRAIAIgAigCNDYCDCACIAIoAgggAigCDGs2AggDQCACIAIoAgAiAEEBajYCACAALQAAIQAgAiACKAJIIgFBAWo2AkggASAAOgAAIAIgAigCDEF/aiIANgIMIAANAAsgAiACKAJIIAIoAgRrNgIACwsMAQsgAiACKAIAIAIoAjQgAigCDGtqNgIAIAIoAgwgAigCCEkEQCACIAIoAgggAigCDGs2AggDQCACIAIoAgAiAEEBajYCACAALQAAIQAgAiACKAJIIgFBAWo2AkggASAAOgAAIAIgAigCDEF/aiIANgIMIAANAAsgAiACKAJIIAIoAgRrNgIACwsLA0AgAigCCEECTUUEQCACIAIoAgAiAEEBajYCACAALQAAIQAgAiACKAJIIgFBAWo2AkggASAAOgAAIAIgAigCACIAQQFqNgIAIAAtAAAhACACIAIoAkgiAUEBajYCSCABIAA6AAAgAiACKAIAIgBBAWo2AgAgAC0AACEAIAIgAigCSCIBQQFqNgJIIAEgADoAACACIAIoAghBA2s2AggMAQsLDAELIAIgAigCSCACKAIEazYCAANAIAIgAigCACIAQQFqNgIAIAAtAAAhACACIAIoAkgiAUEBajYCSCABIAA6AAAgAiACKAIAIgBBAWo2AgAgAC0AACEAIAIgAigCSCIBQQFqNgJIIAEgADoAACACIAIoAgAiAEEBajYCACAALQAAIQAgAiACKAJIIgFBAWo2AkggASAAOgAAIAIgAigCCEEDazYCCCACKAIIQQJLDQALCyACKAIIBEAgAiACKAIAIgBBAWo2AgAgAC0AACEAIAIgAigCSCIBQQFqNgJIIAEgADoAACACKAIIQQFLBEAgAiACKAIAIgBBAWo2AgAgAC0AACEAIAIgAigCSCIBQQFqNgJIIAEgADoAAAsLDAILIAIoAgxBwABxRQRAIAJBEGogAigCICACLwESIAIoAixBASACKAIMdEEBa3FqQQJ0aigBADYBAAwBCwsgAigCXEHu8QA2AhggAigCVEHR/gA2AgQMBAsMAgsgAigCDEHAAHFFBEAgAkEQaiACKAIkIAIvARIgAigCLEEBIAIoAgx0QQFrcWpBAnRqKAEANgEADAELCyACKAIM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AhwhASACIAIoAhgiA0EBajYCGEEAIAMtAAEgAUcNABogAigCHCEBIAIgAigCGCIDQQFqNgIYQQAgAy0AASABRw0AGiACKAIcIQEgAiACKAIYIgNBAWo2AhhBACADLQABIAFHDQAaIAIoAhwhASACIAIoAhgiA0EBajYCGEEAIAMtAAEgAUcNABogAigCHCEBIAIgAigCGCIDQQFqNgIYQQAgAy0AASABRw0AGiACKAIcIQEgAiACKAIYIgNBAWo2AhhBACADLQABIAFHDQAaIAIoAhggAigCFEkLQQFxDQALIAIoAihBggIgAigCFCACKAIYa2s2AmAgAigCKCgCYCACKAIoKAJ0SwRAIAIoAiggAigCKCgCdDYCYAsLCwJAIAIoAigoAmBBA08EQCACIAIoAigoAmBBfWo6ABMgAkEBOwEQIAIoAigiACgCpC0gACgCoC1BAXRqIAIvARA7AQAgAi0AEyEBIAIoAigiACgCmC0hAyAAIAAoAqAtIgBBAWo2AqAtIAAgA2ogAToAACACIAIvARBBf2o7ARAgAigCKCACLQATQaDdAGotAABBAnRqQZgJaiIAIAAvAQBBAWo7AQAgAigCKEGIE2oCfyACLwEQQYACSARAIAIvARAtAKBZDAELIAIvARBBB3VBgAJqLQCgWQtBAnRqIgAgAC8BAEEBajsBACACIAIoAigoAqAtIAIoAigoApwtQQFrRjYCICACKAIoIgAgACgCdCACKAIoKAJgazYCdCACKAIoIgAgAigCKCgCYCAAKAJsajYCbCACKAIoQQA2AmAMAQsgAiACKAIoIgAoAjggACgCbGotAAA6AA8gAigCKCIAKAKkLSAAKAKgLUEBdGpBADsBACACLQAPIQEgAigCKCIAKAKYLSEDIAAgACgCoC0iAEEBajYCoC0gACADaiABOgAAIAIoAiggAi0AD0ECdGoiACAALwGUAUEBajsBlAEgAiACKAIoKAKgLSACKAIoKAKcLUEBa0Y2AiAgAigCKCIAIAAoAnRBf2o2AnQgAigCKCIAIAAoAmxBAWo2AmwLIAIoAiAEQCACKAIoAn8gAigCKCgCXEEATgRAIAIoAigoAjggAigCKCgCXGoMAQtBAAsgAigCKCgCbCACKAIoKAJca0EAECsgAigCKCACKAIoKAJsNgJcIAIoAigoAgAQHyACKAIo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AjBB//8DcRBOC0EAQQBBABBAIQAgAigCOCAANgIwIAIoAixB8QA2AgQgAigCOBAfIAIoAiwoAhQEQCACKAIsQX82AiggAkEANgI8DAILCyACKAIsKAIEQTlGBEBBAEEAQQAQHSEAIAIoAjggADYCMCACKAIsKAIIIQEgAigCLCIDKAIUIQAgAyAAQQFqNgIUIAAgAWpBHzoAACACKAIsKAIIIQEgAigCLCIDKAIUIQAgAyAAQQFqNgIUIAAgAWpBiwE6AAAgAigCLCgCCCEBIAIoAiwiAygCFCEAIAMgAEEBajYCFCAAIAFqQQg6AAACQCACKAIsKAIcRQRAIAIoAiwoAgghASACKAIsIgMoAhQhACADIABBAWo2AhQgACABakEAOgAAIAIoAiwoAgghASACKAIsIgMoAhQhACADIABBAWo2AhQgACABakEAOgAAIAIoAiwoAgghASACKAIsIgMoAhQhACADIABBAWo2AhQgACABakEAOgAAIAIoAiwoAgghASACKAIsIgMoAhQhACADIABBAWo2AhQgACABakEAOgAAIAIoAiwoAgghASACKAIsIgMoAhQhACADIABBAWo2AhQgACABakEAOgAAAn9BAiACKAIsKAKEAUEJRg0AGkEBIQBBBEEAIAIoAiwoAogBQQJIBH8gAigCLCgChAFBAkgFQQELQQFxGwshACACKAIsKAIIIQMgAigCLCIEKAIUIQEgBCABQQFqNgIUIAEgA2ogADoAACACKAIsKAIIIQEgAigCLCIDKAIUIQAgAyAAQQFqNgIUIAAgAWpBAzoAACACKAIsQfEANgIEIAIoAjgQHyACKAIsKAIUBEAgAigCLEF/NgIoIAJBADYCPAwECwwBC0EBQQAgAigCLCgCHCgCABtBAkEAIAIoAiwoAhwoAiwbakEEQQAgAigCLCgCHCgCEBtqQQhBACACKAIsKAIcKAIcG2pBEEEAIAIoAiwoAhwoAiQbaiEBIAIoAiwoAgghAyACKAIsIgQoAhQhACAEIABBAWo2AhQgACADaiABOgAAIAIoAiwoAhwoAgRB/wFxIQEgAigCLCgCCCEDIAIoAiwiBCgCFCEAIAQgAEEBajYCFCAAIANqIAE6AAAgAigCLCgCHCgCBEEIdkH/AXEhASACKAIsKAIIIQMgAigCLCIEKAIUIQAgBCAAQQFqNgIUIAAgA2ogAToAACACKAIsKAIcKAIEQRB2Qf8BcSEBIAIoAiwoAgghAyACKAIsIgQoAhQhACAEIABBAWo2AhQgACADaiABOgAAIAIoAiwoAhwoAgRBGHYhASACKAIsKAIIIQMgAigCLCIEKAIUIQAgBCAAQQFqNgIUIAAgA2ogAToAAAJ/QQIgAigCLCgChAFBCUYNABpBASEAQQRBACACKAIsKAKIAUECSAR/IAIoAiwoAoQBQQJIBUEBC0EBcRsLIQAgAigCLCgCCCEDIAIoAiwiBCgCFCEBIAQgAUEBajYCFCABIANqIAA6AAAgAigCLCgCHCgCDEH/AXEhASACKAIsKAIIIQMgAigCLCIEKAIUIQAgBCAAQQFqNgIUIAAgA2ogAToAACACKAIsKAIcKAIQBEAgAigCLCgCHCgCFEH/AXEhASACKAIsKAIIIQMgAigCLCIEKAIUIQAgBCAAQQFqNgIUIAAgA2ogAToAACACKAIsKAIcKAIUQQh2Qf8BcSEBIAIoAiwoAgghAyACKAIsIgQoAhQhACAEIABBAWo2AhQgACADaiABOgAACyACKAIsKAIcKAIsBEAgAigCOCgCMCACKAIsKAIIIAIoAiwoAhQQHSEAIAIoAjggADYCMAsgAigCLEEANgIgIAIoAixBxQA2AgQLCyACKAIsKAIEQcUARgRAIAIoAiwoAhwoAhAEQCACIAIoAiwoAhQ2AiAgAiACKAIsKAIcKAIUQf//A3EgAigCLCgCIGs2AhwDQCACKAIsKAIUIAIoAhxqIAIoAiwoAgxLBEAgAiACKAIsKAIMIAIoAiwoAhRrNgIYIAIoAiwoAgggAigCLCgCFGogAigCLCgCHCgCECACKAIsKAIgaiACKAIYEBwaIAIoAiwgAigCLCgCDDYCFAJAIAIoAiwoAhwoAixFDQAgAigCLCgCFCACKAIgTQ0AIAIoAjgoAjAgAigCLCgCCCACKAIgaiACKAIsKAIUIAIoAiBrEB0hACACKAI4IAA2AjALIAIoAiwiACACKAIYIAAoAiBqNgIgIAIoAjgQHyACKAIsKAIUBEAgAigCLEF/NgIoIAJBADYCPAwFBSACQQA2AiAgAiACKAIcIAIoAhhrNgIcDAILAAsLIAIoAiwoAgggAigCLCgCFGogAigCLCgCHCgCECACKAIsKAIgaiACKAIcEBwaIAIoAiwiACACKAIcIAAoAhRqNgIUAkAgAigCLCgCHCgCLEUNACACKAIsKAIUIAIoAiBNDQAgAigCOCgCMCACKAIsKAIIIAIoAiBqIAIoAiwoAhQgAigCIGsQHSEAIAIoAjggADYCMAsgAigCLEEANgIgCyACKAIsQckANgIECyACKAIsKAIEQckARgRAIAIoAiwoAhwoAhwEQCACIAIoAiwoAhQ2AhQDQCACKAIsKAIUIAIoAiwoAgxGBEACQCACKAIsKAIcKAIsRQ0AIAIoAiwoAhQgAigCFE0NACACKAI4KAIwIAIoAiwoAgggAigCFGogAigCLCgCFCACKAIUaxAdIQAgAigCOCAANgIwCyACKAI4EB8gAigCLCgCFARAIAIoAixBfzYCKCACQQA2AjwMBQsgAkEANgIUCyACKAIsKAIcKAIcIQEgAigCLCIDKAIgIQAgAyAAQQFqNgIgIAIgACABai0AADYCECACKAIQIQEgAigCLCgCCCEDIAIoAiwiBCgCFCEAIAQgAEEBajYCFCAAIANqIAE6AAAgAigCEA0ACwJAIAIoAiwoAhwoAixFDQAgAigCLCgCFCACKAIUTQ0AIAIoAjgoAjAgAigCLCgCCCACKAIUaiACKAIsKAIUIAIoAhRrEB0hACACKAI4IAA2AjALIAIoAixBADYCIAsgAigCLEHbADYCBAsgAigCLCgCBEHbAEYEQCACKAIsKAIcKAIkBEAgAiACKAIsKAIUNgIMA0AgAigCLCgCFCACKAIsKAIMRgRAAkAgAigCLCgCHCgCLEUNACACKAIsKAIUIAIoAgxNDQAgAigCOCgCMCACKAIsKAIIIAIoAgxqIAIoAiwoAhQgAigCDGsQHSEAIAIoAjggADYCMAsgAigCOBAfIAIoAiwoAhQEQCACKAIsQX82AiggAkEANgI8DAULIAJBADYCDAsgAigCLCgCHCgCJCEBIAIoAiwiAygCICEAIAMgAEEBajYCICACIAAgAWotAAA2AgggAigCCCEBIAIoAiwoAgghAyACKAIsIgQoAhQhACAEIABBAWo2AhQgACADaiABOgAAIAIoAggNAAsCQCACKAIsKAIcKAIsRQ0AIAIoAiwoAhQgAigCDE0NACACKAI4KAIwIAIoAiwoAgggAigCDGogAigCLCgCFCACKAIMaxAdIQAgAigCOCAANgIwCwsgAigCLEHnADYCBAsgAigCLCgCBEHnAEYEQCACKAIsKAIcKAIsBEAgAigCLCgCFEECaiACKAIsKAIMSwRAIAIoAjgQHyACKAIsKAIUBEAgAigCLEF/NgIoIAJBADYCPAwECwsgAigCOCgCMEH/AXEhASACKAIsKAIIIQMgAigCLCIEKAIUIQAgBCAAQQFqNgIUIAAgA2ogAToAACACKAI4KAIwQQh2Qf8BcSEBIAIoAiwoAgghAyACKAIsIgQoAhQhACAEIABBAWo2AhQgACADaiABOgAAQQBBAEEAEB0hACACKAI4IAA2AjALIAIoAixB8QA2AgQgAigCOBAfIAIoAiwoAhQEQCACKAIsQX82AiggAkEANgI8DAILCwJAAkAgAigCOCgCBA0AIAIoAiwoAnQNACACKAI0RQ0BIAIoAiwoAgRBmgVGDQELIAICfyACKAIsKAKEAUUEQCACKAIsIAIoAjQQqQEMAQsCfyACKAIsKAKIAUECRgRAIAIoAiwgAigCNBDYAgwBCwJ/IAIoAiwoAogBQQNGBEAgAigCLCACKAI0ENcCDAELIAIoAiwgAigCNCACKAIsKAKEAUEMbEHQ7gBqKAIIEQEACwsLNgIEAkAgAigCBEECRwRAIAIoAgRBA0cNAQsgAigCLEGaBTYCBAsCQCACKAIEBEAgAigCBEECRw0BCyACKAI4KAIQRQRAIAIoAixBfzYCKAsgAkEANgI8DAILIAIoAgRBAUYEQAJAIAIoAjRBAUYEQCACKAIsEOcCDAELIAIoAjRBBUcEQCACKAIsQQBBAEEAEFYgAigCNEEDRgRAIAIoAiwoAkQgAigCLCgCTEEBa0EBdGpBADsBACACKAIsKAJEQQAgAigCLCgCTEEBa0EBdBA1IAIoAiwoAnRFBEAgAigCLEEANgJsIAIoAixBADYCXCACKAIsQQA2ArQtCwsLCyACKAI4EB8gAigCOCgCEEUEQCACKAIsQX82AiggAkEANgI8DAMLCwsgAigCNEEERwRAIAJBADYCPAwBCyACKAIsKAIYQQBMBEAgAkEBNgI8DAELAkAgAigCLCgCGEECRgRAIAIoAjgoAjBB/wFxIQEgAigCLCgCCCEDIAIoAiwiBCgCFCEAIAQgAEEBajYCFCAAIANqIAE6AAAgAigCOCgCMEEIdkH/AXEhASACKAIsKAIIIQMgAigCLCIEKAIUIQAgBCAAQQFqNgIUIAAgA2ogAToAACACKAI4KAIwQRB2Qf8BcSEBIAIoAiwoAgghAyACKAIsIgQoAhQhACAEIABBAWo2AhQgACADaiABOgAAIAIoAjgoAjBBGHYhASACKAIsKAIIIQMgAigCLCIEKAIUIQAgBCAAQQFqNgIUIAAgA2ogAToAACACKAI4KAIIQf8BcSEBIAIoAiwoAgghAyACKAIsIgQoAhQhACAEIABBAWo2AhQgACADaiABOgAAIAIoAjgoAghBCHZB/wFxIQEgAigCLCgCCCEDIAIoAiwiBCgCFCEAIAQgAEEBajYCFCAAIANqIAE6AAAgAigCOCgCCEEQdkH/AXEhASACKAIsKAIIIQMgAigCLCIEKAIUIQAgBCAAQQFqNgIUIAAgA2ogAToAACACKAI4KAIIQRh2IQEgAigCLCgCCCEDIAIoAiwiBCgCFCEAIAQgAEEBajYCFCAAIANqIAE6AAAMAQsgAigCLCACKAI4KAIwQRB2EE4gAigCLCACKAI4KAIwQf//A3EQTgsgAigCOBAfIAIoAiwoAhhBAEoEQCACKAIsQQAgAigCLCgCGGs2AhgLIAJBAEEBIAIoAiwoAhQbNgI8CyACKAI8IQAgAkFAayQAIAALjgIBAX8jAEEgayIBIAA2AhwgASABKAIcKAIsNgIMIAEgASgCHCgCTDYCGCABIAEoAhwoAkQgASgCGEEBdGo2AhADQCABIAEoAhBBfmoiADYCECABIAAvAQA2AhQgASgCEAJ/IAEoAhQgASgCDE8EQCABKAIUIAEoAgxrDAELQQALOwEAIAEgASgCGEF/aiIANgIYIAANAAsgASABKAIMNgIYIAEgASgCHCgCQCABKAIYQQF0ajYCEANAIAEgASgCEEF+aiIANgIQIAEgAC8BADYCFCABKAIQAn8gASgCFCABKAIMTwRAIAEoAhQgASgCDGsMAQtBAAs7AQAgASABKAIYQX9qIgA2AhggAA0ACwuoAgEBfyMAQRBrIgEkACABIAA2AgwgASgCDCABKAIMKAIsQQF0NgI8IAEoAgwoAkQgASgCDCgCTEEBa0EBdGpBADsBACABKAIMKAJEQQAgASgCDCgCTEEBa0EBdBA1IAEoAgwgASgCDCgChAFBDGxB0O4Aai8BAjYCgAEgASgCDCABKAIMKAKEAUEMbEHQ7gBqLwEANgKMASABKAIMIAEoAgwoAoQBQQxsQdDuAGovAQQ2ApABIAEoAgwgASgCDCgChAFBDGxB0O4Aai8BBjYCfCABKAIMQQA2AmwgASgCDEEANgJcIAEoAgxBADYCdCABKAIMQQA2ArQtIAEoAgxBAjYCeCABKAIMQQI2AmAgASgCDEEANgJoIAEoAgxBADYCSCABQRBqJAALmwIBAX8jAEEQayIBJAAgASAANgIIAkAgASgCCBB1BEAgAUF+NgIMDAELIAEoAghBADYCFCABKAIIQQA2AgggASgCCEEANgIYIAEoAghBAjYCLCABIAEoAggoAhw2AgQgASgCBEEANgIUIAEoAgQgASgCBCgCCDYCECABKAIEKAIYQQBIBEAgASgCBEEAIAEoAgQoAhhrNgIYCyABKAIEAn9BOSABKAIEKAIYQQJGDQAaQSpB8QAgASgCBCgCGBsLNgIEAn8gASgCBCgCGEECRgRAQQBBAEEAEB0MAQtBAEEAQQAQQAshACABKAIIIAA2AjAgASgCBEEANgIoIAEoAgQQ6QIgAUEANgIMCyABKAIMIQAgAUEQaiQAIAALRQEBfyMAQRBrIgEkACABIAA2AgwgASABKAIMEN0CNgIIIAEoAghFBEAgASgCDCgCHBDcAgsgASgCCCEAIAFBEGokACAAC+AIAQF/IwBBMGsiAiQAIAIgADYCKCACIAE2AiQgAkEINgIgIAJBcTYCHCACQQk2AhggAkEANgIUIAJBsIcBNgIQIAJBODYCDCACQQE2AgQCQAJAAkAgAigCEEUNACACKAIQLAAAQcjuACwAAEcNACACKAIMQThGDQELIAJBejYCLAwBCyACKAIoRQRAIAJBfjYCLAwBCyACKAIoQQA2AhggAigCKCgCIEUEQCACKAIoQQc2AiAgAigCKEEANgIoCyACKAIoKAIkRQRAIAIoAihBCDYCJAsgAigCJEF/RgRAIAJBBjYCJAsCQCACKAIcQQBIBEAgAkEANgIEIAJBACACKAIcazYCHAwBCyACKAIcQQ9KBEAgAkECNgIEIAIgAigCHEEQazYCHAsLAkACQCACKAIYQQFIDQAgAigCGEEJSg0AIAIoAiBBCEcNACACKAIcQQhIDQAgAigCHEEPSg0AIAIoAiRBAEgNACACKAIkQQlKDQAgAigCFEEASA0AIAIoAhRBBEoNACACKAIcQQhHDQEgAigCBEEBRg0BCyACQX42AiwMAQsgAigCHEEIRgRAIAJBCTYCHAsgAiACKAIoKAIoQQFBxC0gAigCKCgCIBECADYCCCACKAIIRQRAIAJBfDYCLAwBCyACKAIoIAIoAgg2AhwgAigCCCACKAIoNgIAIAIoAghBKjYCBCACKAIIIAIoAgQ2AhggAigCCEEANgIcIAIoAgggAigCHDYCMCACKAIIQQEgAigCCCgCMHQ2AiwgAigCCCACKAIIKAIsQQFrNgI0IAIoAgggAigCGEEHajYCUCACKAIIQQEgAigCCCgCUHQ2AkwgAigCCCACKAIIKAJMQQFrNgJUIAIoAgggAigCCCgCUEECakEDbjYCWCACKAIoKAIoIAIoAggoAixBAiACKAIoKAIgEQIAIQAgAigCCCAANgI4IAIoAigoAiggAigCCCgCLEECIAIoAigoAiARAgAhACACKAIIIAA2AkAgAigCKCgCKCACKAIIKAJMQQIgAigCKCgCIBECACEAIAIoAgggADYCRCACKAIIQQA2AsAtIAIoAghBASACKAIYQQZqdDYCnC0gAiACKAIoKAIoIAIoAggoApwtQQQgAigCKCgCIBECADYCACACKAIIIAIoAgA2AgggAigCCCACKAIIKAKcLUECdDYCDAJAAkAgAigCCCgCOEUNACACKAIIKAJARQ0AIAIoAggoAkRFDQAgAigCCCgCCA0BCyACKAIIQZoFNgIEIAIoAihBiNkAKAIANgIYIAIoAigQqgEaIAJBfDYCLAwBCyACKAIIIAIoAgAgAigCCCgCnC1BAXZBAXRqNgKkLSACKAIIIAIoAggoAgggAigCCCgCnC1BA2xqNgKYLSACKAIIIAIoAiQ2AoQBIAIoAgggAigCFDYCiAEgAigCCCACKAIgOgAkIAIgAigCKBDeAjYCLAsgAigCLCEAIAJBMGokACAAC1ABAX4CQCADQcAAcQRAIAIgA0FAaq2IIQFCACECDAELIANFDQAgAkHAACADa62GIAEgA60iBIiEIQEgAiAEiCECCyAAIAE3AwAgACACNwMIC2wBAX8jAEEQayICIAA2AgwgAiABNgIIIAJBADYCBANAIAIgAigCBCACKAIMQQFxcjYCBCACIAIoAgxBAXY2AgwgAiACKAIEQQF0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AygCGCADKAIMQRB0cjYCHAwBCwNAIAMoAhBBsCtJRQRAIAMgAygCEEGwK2s2AhAgA0HbAjYCCANAIAMgAygCFC0AACADKAIYajYCGCADIAMoAhggAygCDGo2AgwgAyADKAIULQABIAMoAhhqNgIYIAMgAygCGCADKAIMajYCDCADIAMoAhQtAAIgAygCGGo2AhggAyADKAIYIAMoAgxqNgIMIAMgAygCFC0AAyADKAIYajYCGCADIAMoAhggAygCDGo2AgwgAyADKAIULQAEIAMoAhhqNgIYIAMgAygCGCADKAIMajYCDCADIAMoAhQtAAUgAygCGGo2AhggAyADKAIYIAMoAgxqNgIMIAMgAygCFC0ABiADKAIYajYCGCADIAMoAhggAygCDGo2AgwgAyADKAIULQAHIAMoAhhqNgIYIAMgAygCGCADKAIMajYCDCADIAMoAhQtAAggAygCGGo2AhggAyADKAIYIAMoAgxqNgIMIAMgAygCFC0ACSADKAIYajYCGCADIAMoAhggAygCDGo2AgwgAyADKAIULQAKIAMoAhhqNgIYIAMgAygCGCADKAIMajYCDCADIAMoAhQtAAsgAygCGGo2AhggAyADKAIYIAMoAgxqNgIMIAMgAygCFC0ADCADKAIYajYCGCADIAMoAhggAygCDGo2AgwgAyADKAIULQANIAMoAhhqNgIYIAMgAygCGCADKAIMajYCDCADIAMoAhQtAA4gAygCGGo2AhggAyADKAIYIAMoAgxqNgIMIAMgAygCFC0ADyADKAIYajYCGCADIAMoAhggAygCDGo2AgwgAyADKAIUQRBqNgIUIAMgAygCCEF/aiIANgIIIAANAAsgAyADKAIYQfH/A3A2AhggAyADKAIMQfH/A3A2AgwMAQsLIAMoAhAEQANAIAMoAhBBEElFBEAgAyADKAIQQRBrNgIQIAMgAygCFC0AACADKAIYajYCGCADIAMoAhggAygCDGo2AgwgAyADKAIULQABIAMoAhhqNgIYIAMgAygCGCADKAIMajYCDCADIAMoAhQtAAIgAygCGGo2AhggAyADKAIYIAMoAgxqNgIMIAMgAygCFC0AAyADKAIYajYCGCADIAMoAhggAygCDGo2AgwgAyADKAIULQAEIAMoAhhqNgIYIAMgAygCGCADKAIMajYCDCADIAMoAhQtAAUgAygCGGo2AhggAyADKAIYIAMoAgxqNgIMIAMgAygCFC0ABiADKAIYajYCGCADIAMoAhggAygCDGo2AgwgAyADKAIULQAHIAMoAhhqNgIYIAMgAygCGCADKAIMajYCDCADIAMoAhQtAAggAygCGGo2AhggAyADKAIYIAMoAgxqNgIMIAMgAygCFC0ACSADKAIYajYCGCADIAMoAhggAygCDGo2AgwgAyADKAIULQAKIAMoAhhqNgIYIAMgAygCGCADKAIMajYCDCADIAMoAhQtAAsgAygCGGo2AhggAyADKAIYIAMoAgxqNgIMIAMgAygCFC0ADCADKAIYajYCGCADIAMoAhggAygCDGo2AgwgAyADKAIULQANIAMoAhhqNgIYIAMgAygCGCADKAIMajYCDCADIAMoAhQtAA4gAygCGGo2AhggAyADKAIYIAMoAgxqNgIMIAMgAygCFC0ADyADKAIYajYCGCADIAMoAhggAygCDGo2AgwgAyADKAIUQRBqNgIUDAELCwNAIAMgAygCECIAQX9qNgIQIAAEQCADIAMoAhQiAEEBajYCFCADIAAtAAAgAygCGGo2AhggAyADKAIYIAMoAgxqNgIMDAELCyADIAMoAhhB8f8DcDYCGCADIAMoAgxB8f8DcDYCDAsgAyADKAIYIAMoAgxBEHRyNgIcCyADKAIcCykBAX8jAEEQayICJAAgAiAANgIMIAIgATYCCCACKAIIEBggAkEQaiQACzoBAX8jAEEQayIDJAAgAyAANgIMIAMgATYCCCADIAI2AgQgAygCCCADKAIEbBAbIQAgA0EQaiQAIAALhAICAX8BfiMAQeAAayICJAAgAiAANgJYIAIgATYCVCACIAIoAlggAkHIAGpCDBAvIgM3AwgCQCADQgBTBEAgAigCVCACKAJYEBogAkF/NgJcDAELIAIpAwhCDFIEQCACKAJUQRFBABAXIAJBfzYCXAwBCyACKAJUIAJByABqIgAgAEIMQQAQeSACKAJYIAJBEGoQOUEASARAIAJBADYCXAwBCyACKAI4IAJBBmogAkEEahC9AQJAIAItAFMgAigCPEEYdkYNACACLQBTIAIvAQZBCHVGDQAgAigCVEEbQQAQFyACQX82AlwMAQsgAkEANgJcCyACKAJcIQAgAkHgAGokACAAC9UDAQF/IwBB0ABrIgUk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BEAgA0IANwM4DAELIAMpAyhC////////////AFYEQCADQn83AzgMAQsgAyADKAI0KQNANwMYIAMgAygCNCkDOCADKAI0KAIEIAMpAxinQQN0aikDAH03AxAgA0IANwMgA0AgAykDICADKQMoVARAIAMCfiADKQMoIAMpAyB9IAMoAjQoAgAgAykDGKdBBHRqKQMIIAMpAxB9VARAIAMpAyggAykDIH0MAQsgAygCNCgCACADKQMYp0EEdGopAwggAykDEH0LNwMIIAMoAjAgAykDIKdqIAMoAjQoAgAgAykDGKdBBHRqKAIAIAMpAxCnaiADKQMIpxAcGiADKQMIIAMoAjQoAgAgAykDGKdBBHRqKQMIIAMpAxB9UQRAIAMgAykDGEIBfDcDGAsgAyADKQMIIAMpAyB8NwMgIANCADcDEAwBCwsgAygCNCIAIAMpAyAgACkDOHw3AzggAygCNCADKQMYNwNAIAMgAykDIDcDOAsgAykDOCECIANBQGskACACC64EAQF/IwBBQGoiAyQAIAMgADYCOCADIAE3AzAgAyACNgIsAkAgAykDMFAEQCADQQBCAEEBIAMoAiwQTzYCPAwBCyADKQMwIAMoAjgpAzBWBEAgAygCLEESQQAQFyADQQA2AjwMAQsgAygCOCgCKARAIAMoAixBHUEAEBcgA0EANgI8DAELIAMgAygCOCADKQMwELQBNwMgIAMgAykDMCADKAI4KAIEIAMpAyCnQQN0aikDAH03AxggAykDGFAEQCADIAMpAyBCf3w3AyAgAyADKAI4KAIAIAMpAyCnQQR0aikDCDcDGAsgAyADKAI4KAIAIAMpAyCnQQR0aikDCCADKQMYfTcDECADKQMQIAMpAzBWBEAgAygCLEEcQQAQFyADQQA2AjwMAQsgAyADKAI4KAIAIAMpAyBCAXxBACADKAIsEE8iADYCDCAARQRAIANBADYCPAwBCyADKAIMKAIAIAMoAgwpAwhCAX2nQQR0aiADKQMYNwMIIAMoAgwoAgQgAygCDCkDCKdBA3RqIAMpAzA3AwAgAygCDCADKQMwNwMwIAMoAgwCfiADKAI4KQMYIAMoAgwpAwhCAX1UBEAgAygCOCkDGAwBCyADKAIMKQMIQgF9CzcDGCADKAI4IAMoAgw2AiggAygCDCADKAI4NgIoIAMoAjggAygCDCkD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f0F/IAMpA5gBQv////8PWg0AGiADKQOYAacLECMgAygCLAJ/QX8gAykDoAFC/////w9aDQAaIAMpA6ABpwsQIyADAn8gAygCtAEtAChBAXEEQCADKAK0ASgCJAwBCyADKAK0ASgCIAs2ApQBIAMoAiwCfyADKAKUAQRAIAMoApQBLwEEDAELQQALQf//A3EQIgJ/IwBBEGsiACADKAIsNgIMIAAoAgwtAABBAXFFCwRAIAMoArQBQQhqQRRBABAXIAMoAiwQGSADQn83A7gBDAELIAMoArQBAn8jAEEQayIAIAMoAiw2AgwgACgCDCgCBAsCfiMAQRBrIgAgAygCLDYCDAJ+IAAoAgwtAABBAXEEQCAAKAIMKQMQDAELQgALCxA8QQBIBEAgAygCLBAZIANCfzcDuAEMAQsgAygCLBAZIAMoApQBBEAgAygCtAEgAygClAEoAgAgAygClAEvAQStEDxBAEgEQCADQn83A7gBDAILCyADIAMpA5gBNwO4AQsgAykDuAEhAiADQcABaiQAIAILtwUBAX8jAEEwayICJAAgAiAANgIoIAIgATcDIAJAIAIpAyAgAigCKCkDMFoEQCACKAIoQQhqQRJBABAXIAJBfzYCLAwBCyACIAIoAigoAkAgAikDIKdBBHRqNgIcAkAgAigCHCgCAARAIAIoAhwoAgAtAARBAXFFDQELIAJBADYCLAwBCyACKAIcKAIAKQNIQhp8Qv///////////wBWBEAgAigCKEEIakEEQRYQFyACQX82AiwMAQsgAigCKCgCACACKAIcKAIAKQNIQhp8QQAQKkEASARAIAIoAihBCGogAigCKCgCABAaIAJBfzYCLAwBCyACIAIoAigoAgBCBCACQRhqIAIoAihBCGoQQyIANgIUIABFBEAgAkF/NgIsDAELIAIgAigCFBAgOwESIAIgAigCFBAgOwEQIAIoAhQQSUEBcUUEQCACKAIUEBkgAigCKEEIakEUQQAQFyACQX82AiwMAQsgAigCFBAZIAIvARBBAEoEQCACKAIoKAIAIAIvARKtQQEQKkEASARAIAIoAihBCGpBBEG0nAEoAgAQFyACQX82AiwMAgsgAkEAIAIoAigoAgAgAi8BEEEAIAIoAihBCGoQggE2AgggAigCCEUEQCACQX82AiwMAgsgAigCCCACLwEQQYACIAJBDGogAigCKEEIahDEAUEBcUUEQCACKAIIEBggAkF/NgIsDAILIAIoAggQGCACKAIMBEAgAiACKAIMEMMBNgIMIAIoAhwoAgAoAjQgAigCDBDFASEAIAIoAhwoAgAgADYCNAsLIAIoAhwoAgBBAToABAJAIAIoAhwoAgRFDQAgAigCHCgCBC0ABEEBcQ0AIAIoAhwoAgQgAigCHCgCACgCNDYCNCACKAIcKAIEQQE6AAQLIAJBADYCLAsgAigCLCEAIAJBMGokACAACwcAIAAvATALjAEBAX8jAEEgayICJAAgAiAANgIYIAIgATYCFCACQQA2AhACQCACKAIURQRAIAJBADYCHAwBCyACIAIoAhQQGzYCDCACKAIMRQRAIAIoAhBBDkEAEBcgAkEANgIcDAELIAIoAgwgAigCGCACKAIUEBwaIAIgAigCDDYCHAsgAigCHCEAIAJBIGokACAACwcAIAAoAiALiAEBAX8jAEEgayIDJAAgAyAANgIUIAMgATYCECADIAI3AwgCQAJAIAMoAhQoAiRBAUYEQCADKQMIQv///////////wBYDQELIAMoAhRBDGpBEkEAEBcgA0J/NwMYDAELIAMgAygCFCADKAIQIAMpAwhBCxAkNwMYCyADKQMYIQIgA0EgaiQAIAILcwEBfyMAQSBrIgEkACABIAA2AhggAUIINwMQIAEgASgCGCkDECABKQMQfDcDCAJAIAEpAwggASgCGCkDEFQEQCABKAIYQQA6AAAgAUF/NgIcDAELIAEgASgCGCABKQMIEDE2AhwLIAEoAhwaIAFBIGokAAsHACAAKAIACwgAQQFBOBBlCwMAAQsL4Y0BJQBBgAgLEC0rICAgMFgweAAobnVsbCkAQaAIC0ERAAoAERERAAAAAAUAAAAAAAAJAAAAAAsAAAAAAAAAABEADwoREREDCgcAARMJCwsAAAkGCwAACwAGEQAAABEREQBB8QgLIQsAAAAAAAAAABEACgoREREACgAAAgAJCwAAAAkACwAACwBBqwkLAQwAQbcJCxUMAAAAAAwAAAAACQwAAAAAAAwAAAwAQeUJCwEOAEHxCQsVDQAAAAQNAAAAAAkOAAAAAAAOAAAOAEGfCgsBEABBqwoLHg8AAAAADwAAAAAJEAAAAAAAEAAAEAAAEgAAABISEgBB4goLDhIAAAASEhIAAAAAAAAJAEGTCwsBCwBBnwsLFQoAAAAACgAAAAAJCwAAAAAACwAACwBBzQsLAQwAQdkLC+gGDAAAAAAMAAAAAAkMAAAAAAAMAAAMAAAwMTIzNDU2Nzg5QUJDREVGLTBYKzBYIDBYLTB4KzB4IDB4AGluZgBJTkYAbmFuAE5BTgAuAE5vIGVycm9yAE11bHRpLWRpc2sgemlwIGFyY2hpdmVzIG5vdCBzdXBwb3J0ZWQAUmVuYW1pbmcgdGVtcG9yYXJ5IGZpbGUgZmFpbGVkAENsb3NpbmcgemlwIGFyY2hpdmUgZmFpbGVkAFNlZWsgZXJyb3IAUmVhZCBlcnJvcgBXcml0ZSBlcnJvcgBDUkMgZXJyb3IAQ29udGFpbmluZyB6aXAgYXJjaGl2ZSB3YXMgY2xvc2VkAE5vIHN1Y2ggZmlsZQBGaWxlIGFscmVhZHkgZXhpc3RzAENhbid0IG9wZW4gZmlsZQBGYWlsdXJlIHRvIGNyZWF0ZSB0ZW1wb3JhcnkgZmlsZQBabGliIGVycm9yAE1hbGxvYyBmYWlsdXJlAEVudHJ5IGhhcyBiZWVuIGNoYW5nZWQAQ29tcHJlc3Npb24gbWV0aG9kIG5vdCBzdXBwb3J0ZWQAUHJlbWF0dXJlIGVuZCBvZiBmaWxlAEludmFsaWQgYXJndW1lbnQATm90IGEgemlwIGFyY2hpdmUASW50ZXJuYWwgZXJyb3IAWmlwIGFyY2hpdmUgaW5jb25zaXN0ZW50AENhbid0IHJlbW92ZSBmaWxlAEVudHJ5IGhhcyBiZWVuIGRlbGV0ZWQARW5jcnlwdGlvbiBtZXRob2Qgbm90IHN1cHBvcnRlZABSZWFkLW9ubHkgYXJjaGl2ZQBObyBwYXNzd29yZCBwcm92aWRlZABXcm9uZyBwYXNzd29yZCBwcm92aWRlZABPcGVyYXRpb24gbm90IHN1cHBvcnRlZABSZXNvdXJjZSBzdGlsbCBpbiB1c2UAVGVsbCBlcnJvcgBDb21wcmVzc2VkIGRhdGEgaW52YWxpZAAAAAAAAAAlBgAALgYAAFQGAABzBgAAjgYAAJkGAACkBgAAsAYAALoGAADcBgAA6QYAAP0GAAANBwAALgcAADkHAABIBwAAXwcAAIAHAACWBwAApwcAALkHAADIBwAA4QcAAPMHAAAKCAAAKggAADwI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ogAIAGIACADiAAgAEgAIAJIACABSAAgA0gAIADIACACyAAgAcgAIAPIACAAKAAgAigAIAEoACADKAAgAKgAIAKoACABqAAgA6gAIABoACACaAAgAWgAIANoACAA6AAgAugAIAHoACAD6AAgABgAIAIYACABGAAgAxgAIACYACACmAAgAZgAIAOYACAAWAAgAlgAIAFYACADWAAgANgAIALYACAB2AAgA9gAIAA4ACACOAAgATgAIAM4ACAAuAAgArgAIAG4ACADuAAgAHgAIAJ4ACABeAAgA3gAIAD4ACAC+AAgAfgAIAP4ACAABAAgAgQAIAEEACADBAAgAIQAIAKEACABhAAgA4QAIABEACACRAAgAUQAIANEACAAxAAgAsQAIAHEACADxAAgACQAIAIkACABJAAgAyQAIACkACACpAAgAaQAIAOkACAAZAAgAmQAIAFkACADZAAgAOQAIALkACAB5AAgA+QAIAAUACACFAAgARQAIAMUACAAlAAgApQAIAGUACADlAAgAFQAIAJUACABVAAgA1QAIADUACAC1AAgAdQAIAPUACAANAAgAjQAIAE0ACADNAAgALQAIAK0ACABtAAgA7QAIAB0ACACdAAgAXQAIAN0ACAA9AAgAvQAIAH0ACAD9AAgAEwAJABMBCQCTAAkAkwEJAFMACQBTAQkA0wAJANMBCQAzAAkAMwEJALMACQCzAQkAcwAJAHMBCQDzAAkA8wEJAAsACQALAQkAiwAJAIsBCQBLAAkASwEJAMsACQDLAQkAKwAJACsBCQCrAAkAqwEJAGsACQBrAQkA6wAJAOsBCQAbAAkAGwEJAJsACQCbAQkAWwAJAFsBCQDbAAkA2wEJADsACQA7AQkAuwAJALsBCQB7AAkAewEJAPsACQD7AQkABwAJAAcBCQCHAAkAhwEJAEcACQBHAQkAxwAJAMcBCQAnAAkAJwEJAKcACQCnAQkAZwAJAGcBCQDnAAkA5wEJABcACQAXAQkAlwAJAJcBCQBXAAkAVwEJANcACQDXAQkANwAJADcBCQC3AAkAtwEJAHcACQB3AQkA9wAJAPcBCQAPAAkADwEJAI8ACQCPAQkATwAJAE8BCQDPAAkAzwEJAC8ACQAvAQkArwAJAK8BCQBvAAkAbwEJAO8ACQDvAQkAHwAJAB8BCQCfAAkAnwEJAF8ACQBfAQkA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AEhvc3QgaXMgdW5yZWFjaGFibGUAQWRkcmVzcyBpbiB1c2UAQnJva2VuIHBpcGUASS9PIGVycm9yAE5vIHN1Y2ggZGV2aWNlIG9yIGFkZHJlc3MAQmxvY2sgZGV2aWNlIHJlcXVpcmVkAE5vIHN1Y2ggZGV2aWNlAE5vdCBhIGRpcmVjdG9yeQBJcyBhIGRpcmVjdG9yeQBUZXh0IGZpbGUgYnVzeQBFeGVjIGZvcm1hdCBlcnJvcgBJbnZhbGlkIGFyZ3VtZW50AEFyZ3VtZW50IGxpc3QgdG9vIGxvbmcAU3ltYm9saWMgbGluayBsb29wAEZpbGVuYW1lIHRvbyBsb25nAFRvbyBtYW55IG9wZW4gZmlsZXMgaW4gc3lzdGVtAE5vIGZpbGUgZGVzY3JpcHRvcnMgYXZhaWxhYmxlAEJhZCBmaWxlIGRlc2NyaXB0b3IATm8gY2hpbGQgcHJvY2VzcwBCYWQgYWRkcmVzcwBGaWxlIHRvbyBsYXJnZQBUb28gbWFueSBsaW5rcwBObyBsb2NrcyBhdmFpbGFibGUAUmVzb3VyY2UgZGVhZGxvY2sgd291bGQgb2NjdXIAU3RhdGUgbm90IHJlY292ZXJhYmxlAFByZXZpb3VzIG93bmVyIGRpZWQAT3BlcmF0aW9uIGNhbmNlbGVkAEZ1bmN0aW9uIG5vdCBpbXBsZW1lbnRlZABObyBtZXNzYWdlIG9mIGRlc2lyZWQgdHlwZQBJZGVudGlmaWVyIHJlbW92ZWQARGV2aWNlIG5vdCBhIHN0cmVhbQBObyBkYXRhIGF2YWlsYWJsZQBEZXZpY2UgdGltZW91dABPdXQgb2Ygc3RyZWFtcyByZXNvdXJjZXMATGluayBoYXMgYmVlbiBzZXZlcmVkAFByb3RvY29sIGVycm9yAEJhZCBtZXNzYWdlAEZpbGUgZGVzY3JpcHRvciBpbiBiYWQgc3RhdGUATm90IGEgc29ja2V0AERlc3RpbmF0aW9uIGFkZHJlc3MgcmVxdWlyZWQATWVzc2FnZSB0b28gbGFyZ2UAUHJvdG9jb2wgd3JvbmcgdHlwZSBmb3Igc29ja2V0AFByb3RvY29sIG5vdCBhdmFpbGFibGUAUHJvdG9jb2wgbm90IHN1cHBvcnRlZABTb2NrZXQgdHlwZSBub3Qgc3VwcG9ydGVkAE5vdCBzdXBwb3J0ZWQAUHJvdG9jb2wgZmFtaWx5IG5vdCBzdXBwb3J0ZWQAQWRkcmVzcyBmYW1pbHkgbm90IHN1cHBvcnRlZCBieSBwcm90b2NvbABBZGRyZXNzIG5vdCBhdmFpbGFibGUATmV0d29yayBpcyBkb3duAE5ldHdvcmsgdW5yZWFjaGFibGUAQ29ubmVjdGlvbiByZXNldCBieSBuZXR3b3JrAENvbm5lY3Rpb24gYWJvcnRlZABObyBidWZmZXIgc3BhY2UgYXZhaWxhYmxlAFNvY2tldCBpcyBjb25uZWN0ZWQAU29ja2V0IG5vdCBjb25uZWN0ZWQAQ2Fubm90IHNlbmQgYWZ0ZXIgc29ja2V0IHNodXRkb3duAE9wZXJhdGlvbiBhbHJlYWR5IGluIHByb2dyZXNzAE9wZXJhdGlvbiBpbiBwcm9ncmVzcwBTdGFsZSBmaWxlIGhhbmRsZQBSZW1vdGUgSS9PIGVycm9yAFF1b3RhIGV4Y2VlZGVkAE5vIG1lZGl1bSBmb3VuZABXcm9uZyBtZWRpdW0gdHlwZQBObyBlcnJvciBpbmZvcm1hdGlvbgAAVW5rbm93biBlcnJvciAlZAAlcyVzJXMAADogAC9wcm9jL3NlbGYvZmQvAC9kZXYvdXJhbmRvbQByd2EAJXMuWFhYWFhYAHIrYgByYgBQSwUGAEHAmQELAmBOAEH4mQELWQwAAAANAAAADgAAAA8AAAAQAAAAEQAAABIAAAATAAAAFAAAAA0AAAAOAAAADwAAABAAAAARAAAAEgAAABMAAAABAAAACAAAAPhMAAAYTQAAHwAAAGRNAAADAEHkmgELjAEt9FFYz4yxwEb2tcspMQPHBFtwMLRd/SB4f4ua2FkpUGhIiaunVgNs/7fNiD/Ud7QrpaNw8brkqPxBg/3Zb+GKei8tdJYHHw0JXgN2LHD3QKUsp29XQaiqdN+gWGQDSsfEPFOur18YBBWx420ohqsMpL9D8OlQgTlXFlI3/////////////////////w==";RY(oh)||(oh=PCe(oh));function eme(){try{if(Fb)return new Uint8Array(Fb);var t=dY(oh);if(t)return t;if(kb)return kb(oh);throw"sync fetching of the wasm failed: you can preload it to Module['wasmBinary'] manually, or emcc.py will do that for you when generating HTML (but not JS)"}catch(e){or(e)}}function rme(){var t={a:tme};function e(n,s){var o=n.exports;V.asm=o,Ub("wasm-instantiate")}FY("wasm-instantiate");function r(){var n,s,o;try{o=eme(),s=new WebAssembly.Module(o),n=new WebAssembly.Instance(s,t)}catch(l){var a=l.toString();throw xr("failed to compile wasm module: "+a),(a.indexOf("imported Memory")>=0||a.indexOf("memory import")>=0)&&xr("Memory size incompatibility issues may be due to changing TOTAL_MEMORY at runtime to something too large. Use ALLOW_MEMORY_GROWTH to allow any size memory (and also make sure not to set TOTAL_MEMORY at runtime to something smaller than it was at compile time)."),l}e(n,s)}if(V.instantiateWasm)try{var i=V.instantiateWasm(t,e);return i}catch(n){return xr("Module.instantiateWasm callback failed with error: "+n),!1}return r(),V.asm}var wr,Ns;kY.push({func:function(){ime()}});function nme(t){return t}function sme(t){var e=/\b_Z[\w\d_]+/g;return t.replace(e,function(r){var i=nme(r);return r===i?r:i+" ["+r+"]"})}function ome(){var t=new Error;if(!t.stack){try{throw new Error}catch(e){t=e}if(!t.stack)return"(no stack trace available)"}return t.stack.toString()}function ame(){var t=ome();return V.extraStackTrace&&(t+=` -`+V.extraStackTrace()),sme(t)}function Ame(){}var st={splitPath:function(t){var e=/^(\/?|)([\s\S]*?)((?:\.{1,2}|[^\/]+?|)(\.[^.\/]*|))(?:[\/]*)$/;return e.exec(t).slice(1)},normalizeArray:function(t,e){for(var r=0,i=t.length-1;i>=0;i--){var n=t[i];n==="."?t.splice(i,1):n===".."?(t.splice(i,1),r++):r&&(t.splice(i,1),r--)}if(e)for(;r;r--)t.unshift("..");return t},normalize:function(t){var e=t.charAt(0)==="/",r=t.substr(-1)==="/";return t=st.normalizeArray(t.split("/").filter(function(i){return!!i}),!e).join("/"),!t&&!e&&(t="."),t&&r&&(t+="/"),(e?"/":"")+t},dirname:function(t){var e=st.splitPath(t),r=e[0],i=e[1];return!r&&!i?".":(i&&(i=i.substr(0,i.length-1)),r+i)},basename:function(t){if(t==="/")return"/";var e=t.lastIndexOf("/");return e===-1?t:t.substr(e+1)},extname:function(t){return st.splitPath(t)[3]},join:function(){var t=Array.prototype.slice.call(arguments,0);return st.normalize(t.join("/"))},join2:function(t,e){return st.normalize(t+"/"+e)}};function bm(t){return V.___errno_location&&(Ne[V.___errno_location()>>2]=t),t}var Xn={resolve:function(){for(var t="",e=!1,r=arguments.length-1;r>=-1&&!e;r--){var i=r>=0?arguments[r]:E.cwd();if(typeof i!="string")throw new TypeError("Arguments to path.resolve must be strings");if(!i)return"";t=i+"/"+t,e=i.charAt(0)==="/"}return t=st.normalizeArray(t.split("/").filter(function(n){return!!n}),!e).join("/"),(e?"/":"")+t||"."},relative:function(t,e){t=Xn.resolve(t).substr(1),e=Xn.resolve(e).substr(1);function r(c){for(var u=0;u=0&&c[g]==="";g--);return u>g?[]:c.slice(u,g-u+1)}for(var i=r(t.split("/")),n=r(e.split("/")),s=Math.min(i.length,n.length),o=s,a=0;a0?e=i.slice(0,n).toString("utf-8"):e=null}else typeof window!="undefined"&&typeof window.prompt=="function"?(e=window.prompt("Input: "),e!==null&&(e+=` +`)}`}}};Et.RequestError=Ir;var CD=class extends Ir{constructor(e){super(`Redirected ${e.options.maxRedirects} times. Aborting.`,{},e);this.name="MaxRedirectsError"}};Et.MaxRedirectsError=CD;var mD=class extends Ir{constructor(e){super(`Response code ${e.statusCode} (${e.statusMessage})`,{},e.request);this.name="HTTPError"}};Et.HTTPError=mD;var ID=class extends Ir{constructor(e,r){super(e.message,e,r);this.name="CacheError"}};Et.CacheError=ID;var ED=class extends Ir{constructor(e,r){super(e.message,e,r);this.name="UploadError"}};Et.UploadError=ED;var yD=class extends Ir{constructor(e,r,i){super(e.message,e,i);this.name="TimeoutError",this.event=e.event,this.timings=r}};Et.TimeoutError=yD;var iI=class extends Ir{constructor(e,r){super(e.message,e,r);this.name="ReadError"}};Et.ReadError=iI;var BD=class extends Ir{constructor(e){super(`Unsupported protocol "${e.url.protocol}"`,{},e);this.name="UnsupportedProtocolError"}};Et.UnsupportedProtocolError=BD;var Hme=["socket","connect","continue","information","upgrade","timeout"],dD=class extends qY.Duplex{constructor(e,r={},i){super({autoDestroy:!1,highWaterMark:0});this[hc]=0,this[pc]=0,this.requestInitialized=!1,this[tI]=new Set,this.redirects=[],this[dc]=!1,this[rI]=!1,this[Lh]=[],this.retryCount=0,this._progressCallbacks=[];let n=()=>this._unlockWrite(),s=()=>this._lockWrite();this.on("pipe",c=>{c.prependListener("data",n),c.on("data",s),c.prependListener("end",n),c.on("end",s)}),this.on("unpipe",c=>{c.off("data",n),c.off("data",s),c.off("end",n),c.off("end",s)}),this.on("pipe",c=>{c instanceof hD.IncomingMessage&&(this.options.headers=k(k({},c.headers),this.options.headers))});let{json:o,body:a,form:l}=r;if((o||a||l)&&this._lockWrite(),Et.kIsNormalizedAlready in r)this.options=r;else try{this.options=this.constructor.normalizeArguments(e,r,i)}catch(c){se.default.nodeStream(r.body)&&r.body.destroy(),this.destroy(c);return}(async()=>{var c;try{this.options.body instanceof Ime.ReadStream&&await Kme(this.options.body);let{url:u}=this.options;if(!u)throw new TypeError("Missing `url` property");if(this.requestUrl=u.toString(),decodeURI(this.requestUrl),await this._finalizeBody(),await this._makeRequest(),this.destroyed){(c=this[xr])===null||c===void 0||c.destroy();return}for(let g of this[Lh])g();this[Lh].length=0,this.requestInitialized=!0}catch(u){if(u instanceof Ir){this._beforeError(u);return}this.destroyed||this.destroy(u)}})()}static normalizeArguments(e,r,i){var n,s,o,a,l;let c=r;if(se.default.object(e)&&!se.default.urlInstance(e))r=k(k(k({},i),e),r);else{if(e&&r&&r.url!==void 0)throw new TypeError("The `url` option is mutually exclusive with the `input` argument");r=k(k({},i),r),e!==void 0&&(r.url=e),se.default.urlInstance(r.url)&&(r.url=new Wo.URL(r.url.toString()))}if(r.cache===!1&&(r.cache=void 0),r.dnsCache===!1&&(r.dnsCache=void 0),se.assert.any([se.default.string,se.default.undefined],r.method),se.assert.any([se.default.object,se.default.undefined],r.headers),se.assert.any([se.default.string,se.default.urlInstance,se.default.undefined],r.prefixUrl),se.assert.any([se.default.object,se.default.undefined],r.cookieJar),se.assert.any([se.default.object,se.default.string,se.default.undefined],r.searchParams),se.assert.any([se.default.object,se.default.string,se.default.undefined],r.cache),se.assert.any([se.default.object,se.default.number,se.default.undefined],r.timeout),se.assert.any([se.default.object,se.default.undefined],r.context),se.assert.any([se.default.object,se.default.undefined],r.hooks),se.assert.any([se.default.boolean,se.default.undefined],r.decompress),se.assert.any([se.default.boolean,se.default.undefined],r.ignoreInvalidCookies),se.assert.any([se.default.boolean,se.default.undefined],r.followRedirect),se.assert.any([se.default.number,se.default.undefined],r.maxRedirects),se.assert.any([se.default.boolean,se.default.undefined],r.throwHttpErrors),se.assert.any([se.default.boolean,se.default.undefined],r.http2),se.assert.any([se.default.boolean,se.default.undefined],r.allowGetBody),se.assert.any([se.default.string,se.default.undefined],r.localAddress),se.assert.any([ZY.isDnsLookupIpVersion,se.default.undefined],r.dnsLookupIpVersion),se.assert.any([se.default.object,se.default.undefined],r.https),se.assert.any([se.default.boolean,se.default.undefined],r.rejectUnauthorized),r.https&&(se.assert.any([se.default.boolean,se.default.undefined],r.https.rejectUnauthorized),se.assert.any([se.default.function_,se.default.undefined],r.https.checkServerIdentity),se.assert.any([se.default.string,se.default.object,se.default.array,se.default.undefined],r.https.certificateAuthority),se.assert.any([se.default.string,se.default.object,se.default.array,se.default.undefined],r.https.key),se.assert.any([se.default.string,se.default.object,se.default.array,se.default.undefined],r.https.certificate),se.assert.any([se.default.string,se.default.undefined],r.https.passphrase),se.assert.any([se.default.string,se.default.buffer,se.default.array,se.default.undefined],r.https.pfx)),se.assert.any([se.default.object,se.default.undefined],r.cacheOptions),se.default.string(r.method)?r.method=r.method.toUpperCase():r.method="GET",r.headers===(i==null?void 0:i.headers)?r.headers=k({},r.headers):r.headers=bme(k(k({},i==null?void 0:i.headers),r.headers)),"slashes"in r)throw new TypeError("The legacy `url.Url` has been deprecated. Use `URL` instead.");if("auth"in r)throw new TypeError("Parameter `auth` is deprecated. Use `username` / `password` instead.");if("searchParams"in r&&r.searchParams&&r.searchParams!==(i==null?void 0:i.searchParams)){let f;if(se.default.string(r.searchParams)||r.searchParams instanceof Wo.URLSearchParams)f=new Wo.URLSearchParams(r.searchParams);else{Mme(r.searchParams),f=new Wo.URLSearchParams;for(let p in r.searchParams){let m=r.searchParams[p];m===null?f.append(p,""):m!==void 0&&f.append(p,m)}}(n=i==null?void 0:i.searchParams)===null||n===void 0||n.forEach((p,m)=>{f.has(m)||f.append(m,p)}),r.searchParams=f}if(r.username=(s=r.username)!==null&&s!==void 0?s:"",r.password=(o=r.password)!==null&&o!==void 0?o:"",se.default.undefined(r.prefixUrl)?r.prefixUrl=(a=i==null?void 0:i.prefixUrl)!==null&&a!==void 0?a:"":(r.prefixUrl=r.prefixUrl.toString(),r.prefixUrl!==""&&!r.prefixUrl.endsWith("/")&&(r.prefixUrl+="/")),se.default.string(r.url)){if(r.url.startsWith("/"))throw new Error("`input` must not start with a slash when using `prefixUrl`");r.url=XY.default(r.prefixUrl+r.url,r)}else(se.default.undefined(r.url)&&r.prefixUrl!==""||r.protocol)&&(r.url=XY.default(r.prefixUrl,r));if(r.url){"port"in r&&delete r.port;let{prefixUrl:f}=r;Object.defineProperty(r,"prefixUrl",{set:m=>{let I=r.url;if(!I.href.startsWith(m))throw new Error(`Cannot change \`prefixUrl\` from ${f} to ${m}: ${I.href}`);r.url=new Wo.URL(m+I.href.slice(f.length)),f=m},get:()=>f});let{protocol:p}=r.url;if(p==="unix:"&&(p="http:",r.url=new Wo.URL(`http://unix${r.url.pathname}${r.url.search}`)),r.searchParams&&(r.url.search=r.searchParams.toString()),p!=="http:"&&p!=="https:")throw new BD(r);r.username===""?r.username=r.url.username:r.url.username=r.username,r.password===""?r.password=r.url.password:r.url.password=r.password}let{cookieJar:u}=r;if(u){let{setCookie:f,getCookieString:p}=u;se.assert.function_(f),se.assert.function_(p),f.length===4&&p.length===0&&(f=jY.promisify(f.bind(r.cookieJar)),p=jY.promisify(p.bind(r.cookieJar)),r.cookieJar={setCookie:f,getCookieString:p})}let{cache:g}=r;if(g&&(pD.has(g)||pD.set(g,new WY((f,p)=>{let m=f[xr](f,p);return se.default.promise(m)&&(m.once=(I,y)=>{if(I==="error")m.catch(y);else if(I==="abort")(async()=>{try{(await m).once("abort",y)}catch(w){}})();else throw new Error(`Unknown HTTP2 promise event: ${I}`);return m}),m},g))),r.cacheOptions=k({},r.cacheOptions),r.dnsCache===!0)r.dnsCache=Lme;else if(!se.default.undefined(r.dnsCache)&&!r.dnsCache.lookup)throw new TypeError(`Parameter \`dnsCache\` must be a CacheableLookup instance or a boolean, got ${se.default(r.dnsCache)}`);se.default.number(r.timeout)?r.timeout={request:r.timeout}:i&&r.timeout!==i.timeout?r.timeout=k(k({},i.timeout),r.timeout):r.timeout=k({},r.timeout),r.context||(r.context={});let h=r.hooks===(i==null?void 0:i.hooks);r.hooks=k({},r.hooks);for(let f of Et.knownHookEvents)if(f in r.hooks)if(se.default.array(r.hooks[f]))r.hooks[f]=[...r.hooks[f]];else throw new TypeError(`Parameter \`${f}\` must be an Array, got ${se.default(r.hooks[f])}`);else r.hooks[f]=[];if(i&&!h)for(let f of Et.knownHookEvents)i.hooks[f].length!==0&&(r.hooks[f]=[...i.hooks[f],...r.hooks[f]]);if("family"in r&&zo.default('"options.family" was never documented, please use "options.dnsLookupIpVersion"'),(i==null?void 0:i.https)&&(r.https=k(k({},i.https),r.https)),"rejectUnauthorized"in r&&zo.default('"options.rejectUnauthorized" is now deprecated, please use "options.https.rejectUnauthorized"'),"checkServerIdentity"in r&&zo.default('"options.checkServerIdentity" was never documented, please use "options.https.checkServerIdentity"'),"ca"in r&&zo.default('"options.ca" was never documented, please use "options.https.certificateAuthority"'),"key"in r&&zo.default('"options.key" was never documented, please use "options.https.key"'),"cert"in r&&zo.default('"options.cert" was never documented, please use "options.https.certificate"'),"passphrase"in r&&zo.default('"options.passphrase" was never documented, please use "options.https.passphrase"'),"pfx"in r&&zo.default('"options.pfx" was never documented, please use "options.https.pfx"'),"followRedirects"in r)throw new TypeError("The `followRedirects` option does not exist. Use `followRedirect` instead.");if(r.agent){for(let f in r.agent)if(f!=="http"&&f!=="https"&&f!=="http2")throw new TypeError(`Expected the \`options.agent\` properties to be \`http\`, \`https\` or \`http2\`, got \`${f}\``)}return r.maxRedirects=(l=r.maxRedirects)!==null&&l!==void 0?l:0,Et.setNonEnumerableProperties([i,c],r),Fme.default(r,i)}_lockWrite(){let e=()=>{throw new TypeError("The payload has been already provided")};this.write=e,this.end=e}_unlockWrite(){this.write=super.write,this.end=super.end}async _finalizeBody(){let{options:e}=this,{headers:r}=e,i=!se.default.undefined(e.form),n=!se.default.undefined(e.json),s=!se.default.undefined(e.body),o=i||n||s,a=Et.withoutBody.has(e.method)&&!(e.method==="GET"&&e.allowGetBody);if(this._cannotHaveBody=a,o){if(a)throw new TypeError(`The \`${e.method}\` method cannot be used with a body`);if([s,i,n].filter(l=>l).length>1)throw new TypeError("The `body`, `json` and `form` options are mutually exclusive");if(s&&!(e.body instanceof qY.Readable)&&!se.default.string(e.body)&&!se.default.buffer(e.body)&&!zY.default(e.body))throw new TypeError("The `body` option must be a stream.Readable, string or Buffer");if(i&&!se.default.object(e.form))throw new TypeError("The `form` option must be an Object");{let l=!se.default.string(r["content-type"]);s?(zY.default(e.body)&&l&&(r["content-type"]=`multipart/form-data; boundary=${e.body.getBoundary()}`),this[Vo]=e.body):i?(l&&(r["content-type"]="application/x-www-form-urlencoded"),this[Vo]=new Wo.URLSearchParams(e.form).toString()):(l&&(r["content-type"]="application/json"),this[Vo]=e.stringifyJson(e.json));let c=await Dme.default(this[Vo],e.headers);se.default.undefined(r["content-length"])&&se.default.undefined(r["transfer-encoding"])&&!a&&!se.default.undefined(c)&&(r["content-length"]=String(c))}}else a?this._lockWrite():this._unlockWrite();this[fc]=Number(r["content-length"])||void 0}async _onResponseBase(e){let{options:r}=this,{url:i}=r;this[tG]=e,r.decompress&&(e=wme(e));let n=e.statusCode,s=e;s.statusMessage=s.statusMessage?s.statusMessage:JY.STATUS_CODES[n],s.url=r.url.toString(),s.requestUrl=this.requestUrl,s.redirectUrls=this.redirects,s.request=this,s.isFromCache=e.fromCache||!1,s.ip=this.ip,s.retryCount=this.retryCount,this[$Y]=s.isFromCache,this[gc]=Number(e.headers["content-length"])||void 0,this[eI]=e,e.once("end",()=>{this[gc]=this[hc],this.emit("downloadProgress",this.downloadProgress)}),e.once("error",a=>{e.destroy(),this._beforeError(new iI(a,this))}),e.once("aborted",()=>{this._beforeError(new iI({name:"Error",message:"The server aborted pending request",code:"ECONNRESET"},this))}),this.emit("downloadProgress",this.downloadProgress);let o=e.headers["set-cookie"];if(se.default.object(r.cookieJar)&&o){let a=o.map(async l=>r.cookieJar.setCookie(l,i.toString()));r.ignoreInvalidCookies&&(a=a.map(async l=>l.catch(()=>{})));try{await Promise.all(a)}catch(l){this._beforeError(l);return}}if(r.followRedirect&&e.headers.location&&Tme.has(n)){if(e.resume(),this[xr]&&(this[fD](),delete this[xr],this[_Y]()),(n===303&&r.method!=="GET"&&r.method!=="HEAD"||!r.methodRewriting)&&(r.method="GET","body"in r&&delete r.body,"json"in r&&delete r.json,"form"in r&&delete r.form,this[Vo]=void 0,delete r.headers["content-length"]),this.redirects.length>=r.maxRedirects){this._beforeError(new CD(this));return}try{let l=Buffer.from(e.headers.location,"binary").toString(),c=new Wo.URL(l,i),u=c.toString();decodeURI(u),c.hostname!==i.hostname||c.port!==i.port?("host"in r.headers&&delete r.headers.host,"cookie"in r.headers&&delete r.headers.cookie,"authorization"in r.headers&&delete r.headers.authorization,(r.username||r.password)&&(r.username="",r.password="")):(c.username=r.username,c.password=r.password),this.redirects.push(u),r.url=c;for(let g of r.hooks.beforeRedirect)await g(r,s);this.emit("redirect",s,r),await this._makeRequest()}catch(l){this._beforeError(l);return}return}if(r.isStream&&r.throwHttpErrors&&!vme.isResponseOk(s)){this._beforeError(new mD(s));return}e.on("readable",()=>{this[rI]&&this._read()}),this.on("resume",()=>{e.resume()}),this.on("pause",()=>{e.pause()}),e.once("end",()=>{this.push(null)}),this.emit("response",e);for(let a of this[tI])if(!a.headersSent){for(let l in e.headers){let c=r.decompress?l!=="content-encoding":!0,u=e.headers[l];c&&a.setHeader(l,u)}a.statusCode=n}}async _onResponse(e){try{await this._onResponseBase(e)}catch(r){this._beforeError(r)}}_onRequest(e){let{options:r}=this,{timeout:i,url:n}=r;yme.default(e),this[fD]=VY.default(e,i,n);let s=r.cache?"cacheableResponse":"response";e.once(s,l=>{this._onResponse(l)}),e.once("error",l=>{var c;e.destroy(),(c=e.res)===null||c===void 0||c.removeAllListeners("end"),l instanceof VY.TimeoutError?l=new yD(l,this.timings,this):l=new Ir(l.message,l,this),this._beforeError(l)}),this[_Y]=Sme.default(e,this,Hme),this[xr]=e,this.emit("uploadProgress",this.uploadProgress);let o=this[Vo],a=this.redirects.length===0?this:e;se.default.nodeStream(o)?(o.pipe(a),o.once("error",l=>{this._beforeError(new ED(l,this))})):(this._unlockWrite(),se.default.undefined(o)?(this._cannotHaveBody||this._noPipe)&&(a.end(),this._lockWrite()):(this._writeRequest(o,void 0,()=>{}),a.end(),this._lockWrite())),this.emit("request",e)}async _createCacheableRequest(e,r){return new Promise((i,n)=>{Object.assign(r,xme.default(e)),delete r.url;let s,o=pD.get(r.cache)(r,async a=>{a._readableState.autoDestroy=!1,s&&(await s).emit("cacheableResponse",a),i(a)});r.url=e,o.once("error",n),o.once("request",async a=>{s=a,i(s)})})}async _makeRequest(){var e,r,i,n,s;let{options:o}=this,{headers:a}=o;for(let y in a)if(se.default.undefined(a[y]))delete a[y];else if(se.default.null_(a[y]))throw new TypeError(`Use \`undefined\` instead of \`null\` to delete the \`${y}\` header`);if(o.decompress&&se.default.undefined(a["accept-encoding"])&&(a["accept-encoding"]=Nme?"gzip, deflate, br":"gzip, deflate"),o.cookieJar){let y=await o.cookieJar.getCookieString(o.url.toString());se.default.nonEmptyString(y)&&(o.headers.cookie=y)}for(let y of o.hooks.beforeRequest){let w=await y(o);if(!se.default.undefined(w)){o.request=()=>w;break}}o.body&&this[Vo]!==o.body&&(this[Vo]=o.body);let{agent:l,request:c,timeout:u,url:g}=o;if(o.dnsCache&&!("lookup"in o)&&(o.lookup=o.dnsCache.lookup),g.hostname==="unix"){let y=/(?.+?):(?.+)/.exec(`${g.pathname}${g.search}`);if(y==null?void 0:y.groups){let{socketPath:w,path:x}=y.groups;Object.assign(o,{socketPath:w,path:x,host:""})}}let h=g.protocol==="https:",f;o.http2?f=Qme.auto:f=h?Eme.request:JY.request;let p=(e=o.request)!==null&&e!==void 0?e:f,m=o.cache?this._createCacheableRequest:p;l&&!o.http2&&(o.agent=l[h?"https":"http"]),o[xr]=p,delete o.request,delete o.timeout;let I=o;if(I.shared=(r=o.cacheOptions)===null||r===void 0?void 0:r.shared,I.cacheHeuristic=(i=o.cacheOptions)===null||i===void 0?void 0:i.cacheHeuristic,I.immutableMinTimeToLive=(n=o.cacheOptions)===null||n===void 0?void 0:n.immutableMinTimeToLive,I.ignoreCargoCult=(s=o.cacheOptions)===null||s===void 0?void 0:s.ignoreCargoCult,o.dnsLookupIpVersion!==void 0)try{I.family=ZY.dnsLookupIpVersionToFamily(o.dnsLookupIpVersion)}catch(y){throw new Error("Invalid `dnsLookupIpVersion` option value")}o.https&&("rejectUnauthorized"in o.https&&(I.rejectUnauthorized=o.https.rejectUnauthorized),o.https.checkServerIdentity&&(I.checkServerIdentity=o.https.checkServerIdentity),o.https.certificateAuthority&&(I.ca=o.https.certificateAuthority),o.https.certificate&&(I.cert=o.https.certificate),o.https.key&&(I.key=o.https.key),o.https.passphrase&&(I.passphrase=o.https.passphrase),o.https.pfx&&(I.pfx=o.https.pfx));try{let y=await m(g,I);se.default.undefined(y)&&(y=f(g,I)),o.request=c,o.timeout=u,o.agent=l,o.https&&("rejectUnauthorized"in o.https&&delete I.rejectUnauthorized,o.https.checkServerIdentity&&delete I.checkServerIdentity,o.https.certificateAuthority&&delete I.ca,o.https.certificate&&delete I.cert,o.https.key&&delete I.key,o.https.passphrase&&delete I.passphrase,o.https.pfx&&delete I.pfx),Ome(y)?this._onRequest(y):this.writable?(this.once("finish",()=>{this._onResponse(y)}),this._unlockWrite(),this.end(),this._lockWrite()):this._onResponse(y)}catch(y){throw y instanceof WY.CacheError?new ID(y,this):new Ir(y.message,y,this)}}async _error(e){try{for(let r of this.options.hooks.beforeError)e=await r(e)}catch(r){e=new Ir(r.message,r,this)}this.destroy(e)}_beforeError(e){if(this[dc])return;let{options:r}=this,i=this.retryCount+1;this[dc]=!0,e instanceof Ir||(e=new Ir(e.message,e,this));let n=e,{response:s}=n;(async()=>{if(s&&!s.body){s.setEncoding(this._readableState.encoding);try{s.rawBody=await kme.default(s),s.body=s.rawBody.toString()}catch(o){}}if(this.listenerCount("retry")!==0){let o;try{let a;s&&"retry-after"in s.headers&&(a=Number(s.headers["retry-after"]),Number.isNaN(a)?(a=Date.parse(s.headers["retry-after"])-Date.now(),a<=0&&(a=1)):a*=1e3),o=await r.retry.calculateDelay({attemptCount:i,retryOptions:r.retry,error:n,retryAfter:a,computedValue:Rme.default({attemptCount:i,retryOptions:r.retry,error:n,retryAfter:a,computedValue:0})})}catch(a){this._error(new Ir(a.message,a,this));return}if(o){let a=async()=>{try{for(let l of this.options.hooks.beforeRetry)await l(this.options,n,i)}catch(l){this._error(new Ir(l.message,e,this));return}this.destroyed||(this.destroy(),this.emit("retry",i,e))};this[rG]=setTimeout(a,o);return}}this._error(n)})()}_read(){this[rI]=!0;let e=this[eI];if(e&&!this[dc]){e.readableLength&&(this[rI]=!1);let r;for(;(r=e.read())!==null;){this[hc]+=r.length,this[eG]=!0;let i=this.downloadProgress;i.percent<1&&this.emit("downloadProgress",i),this.push(r)}}}_write(e,r,i){let n=()=>{this._writeRequest(e,r,i)};this.requestInitialized?n():this[Lh].push(n)}_writeRequest(e,r,i){this[xr].destroyed||(this._progressCallbacks.push(()=>{this[pc]+=Buffer.byteLength(e,r);let n=this.uploadProgress;n.percent<1&&this.emit("uploadProgress",n)}),this[xr].write(e,r,n=>{!n&&this._progressCallbacks.length!==0&&this._progressCallbacks.shift()(),i(n)}))}_final(e){let r=()=>{for(;this._progressCallbacks.length!==0;)this._progressCallbacks.shift()();if(!(xr in this)){e();return}if(this[xr].destroyed){e();return}this[xr].end(i=>{i||(this[fc]=this[pc],this.emit("uploadProgress",this.uploadProgress),this[xr].emit("upload-complete")),e(i)})};this.requestInitialized?r():this[Lh].push(r)}_destroy(e,r){var i;this[dc]=!0,clearTimeout(this[rG]),xr in this&&(this[fD](),((i=this[eI])===null||i===void 0?void 0:i.complete)||this[xr].destroy()),e!==null&&!se.default.undefined(e)&&!(e instanceof Ir)&&(e=new Ir(e.message,e,this)),r(e)}get _isAboutToError(){return this[dc]}get ip(){var e;return(e=this[xr])===null||e===void 0?void 0:e.socket.remoteAddress}get aborted(){var e,r,i;return((r=(e=this[xr])===null||e===void 0?void 0:e.destroyed)!==null&&r!==void 0?r:this.destroyed)&&!((i=this[tG])===null||i===void 0?void 0:i.complete)}get socket(){var e;return(e=this[xr])===null||e===void 0?void 0:e.socket}get downloadProgress(){let e;return this[gc]?e=this[hc]/this[gc]:this[gc]===this[hc]?e=1:e=0,{percent:e,transferred:this[hc],total:this[gc]}}get uploadProgress(){let e;return this[fc]?e=this[pc]/this[fc]:this[fc]===this[pc]?e=1:e=0,{percent:e,transferred:this[pc],total:this[fc]}}get timings(){var e;return(e=this[xr])===null||e===void 0?void 0:e.timings}get isFromCache(){return this[$Y]}pipe(e,r){if(this[eG])throw new Error("Failed to pipe. The response has been emitted already.");return e instanceof hD.ServerResponse&&this[tI].add(e),super.pipe(e,r)}unpipe(e){return e instanceof hD.ServerResponse&&this[tI].delete(e),super.unpipe(e),this}};Et.default=dD});var Mh=C(On=>{"use strict";var Yme=On&&On.__createBinding||(Object.create?function(t,e,r,i){i===void 0&&(i=r),Object.defineProperty(t,i,{enumerable:!0,get:function(){return e[r]}})}:function(t,e,r,i){i===void 0&&(i=r),t[i]=e[r]}),Gme=On&&On.__exportStar||function(t,e){for(var r in t)r!=="default"&&!Object.prototype.hasOwnProperty.call(e,r)&&Yme(e,t,r)};Object.defineProperty(On,"__esModule",{value:!0});On.CancelError=On.ParseError=void 0;var iG=Nh(),nG=class extends iG.RequestError{constructor(e,r){let{options:i}=r.request;super(`${e.message} in "${i.url.toString()}"`,e,r.request);this.name="ParseError"}};On.ParseError=nG;var sG=class extends iG.RequestError{constructor(e){super("Promise was canceled",{},e);this.name="CancelError"}get isCanceled(){return!0}};On.CancelError=sG;Gme(Nh(),On)});var aG=C(wD=>{"use strict";Object.defineProperty(wD,"__esModule",{value:!0});var oG=Mh(),jme=(t,e,r,i)=>{let{rawBody:n}=t;try{if(e==="text")return n.toString(i);if(e==="json")return n.length===0?"":r(n.toString());if(e==="buffer")return n;throw new oG.ParseError({message:`Unknown body type '${e}'`,name:"Error"},t)}catch(s){throw new oG.ParseError(s,t)}};wD.default=jme});var QD=C(Xo=>{"use strict";var qme=Xo&&Xo.__createBinding||(Object.create?function(t,e,r,i){i===void 0&&(i=r),Object.defineProperty(t,i,{enumerable:!0,get:function(){return e[r]}})}:function(t,e,r,i){i===void 0&&(i=r),t[i]=e[r]}),Jme=Xo&&Xo.__exportStar||function(t,e){for(var r in t)r!=="default"&&!Object.prototype.hasOwnProperty.call(e,r)&&qme(e,t,r)};Object.defineProperty(Xo,"__esModule",{value:!0});var Wme=require("events"),zme=Vs(),Vme=$2(),nI=Mh(),AG=aG(),lG=Nh(),Xme=rD(),Zme=lD(),cG=cD(),_me=["request","response","redirect","uploadProgress","downloadProgress"];function uG(t){let e,r,i=new Wme.EventEmitter,n=new Vme((o,a,l)=>{let c=u=>{let g=new lG.default(void 0,t);g.retryCount=u,g._noPipe=!0,l(()=>g.destroy()),l.shouldReject=!1,l(()=>a(new nI.CancelError(g))),e=g,g.once("response",async f=>{var p;if(f.retryCount=u,f.request.aborted)return;let m;try{m=await Zme.default(g),f.rawBody=m}catch(x){return}if(g._isAboutToError)return;let I=((p=f.headers["content-encoding"])!==null&&p!==void 0?p:"").toLowerCase(),y=["gzip","deflate","br"].includes(I),{options:w}=g;if(y&&!w.decompress)f.body=m;else try{f.body=AG.default(f,w.responseType,w.parseJson,w.encoding)}catch(x){if(f.body=m.toString(),cG.isResponseOk(f)){g._beforeError(x);return}}try{for(let[x,F]of w.hooks.afterResponse.entries())f=await F(f,async N=>{let K=lG.default.normalizeArguments(void 0,V(k({},N),{retry:{calculateDelay:()=>0},throwHttpErrors:!1,resolveBodyOnly:!1}),w);K.hooks.afterResponse=K.hooks.afterResponse.slice(0,x);for(let J of K.hooks.beforeRetry)await J(K);let v=uG(K);return l(()=>{v.catch(()=>{}),v.cancel()}),v})}catch(x){g._beforeError(new nI.RequestError(x.message,x,g));return}if(!cG.isResponseOk(f)){g._beforeError(new nI.HTTPError(f));return}r=f,o(g.options.resolveBodyOnly?f.body:f)});let h=f=>{if(n.isCanceled)return;let{options:p}=g;if(f instanceof nI.HTTPError&&!p.throwHttpErrors){let{response:m}=f;o(g.options.resolveBodyOnly?m.body:m);return}a(f)};g.once("error",h),g.once("retry",(f,p)=>{var m;if(zme.default.nodeStream((m=p.request)===null||m===void 0?void 0:m.options.body)){h(p);return}c(f)}),Xme.default(g,i,_me)};c(0)});n.on=(o,a)=>(i.on(o,a),n);let s=o=>{let a=(async()=>{await n;let{options:l}=r.request;return AG.default(r,o,l.parseJson,l.encoding)})();return Object.defineProperties(a,Object.getOwnPropertyDescriptors(n)),a};return n.json=()=>{let{headers:o}=e.options;return!e.writableFinished&&o.accept===void 0&&(o.accept="application/json"),s("json")},n.buffer=()=>s("buffer"),n.text=()=>s("text"),n}Xo.default=uG;Jme(Mh(),Xo)});var gG=C(bD=>{"use strict";Object.defineProperty(bD,"__esModule",{value:!0});var $me=Mh();function eIe(t,...e){let r=(async()=>{if(t instanceof $me.RequestError)try{for(let n of e)if(n)for(let s of n)t=await s(t)}catch(n){t=n}throw t})(),i=()=>r;return r.json=i,r.text=i,r.buffer=i,r.on=i,r}bD.default=eIe});var pG=C(DD=>{"use strict";Object.defineProperty(DD,"__esModule",{value:!0});var hG=Vs();function fG(t){for(let e of Object.values(t))(hG.default.plainObject(e)||hG.default.array(e))&&fG(e);return Object.freeze(t)}DD.default=fG});var CG=C(dG=>{"use strict";Object.defineProperty(dG,"__esModule",{value:!0})});var SD=C(fn=>{"use strict";var tIe=fn&&fn.__createBinding||(Object.create?function(t,e,r,i){i===void 0&&(i=r),Object.defineProperty(t,i,{enumerable:!0,get:function(){return e[r]}})}:function(t,e,r,i){i===void 0&&(i=r),t[i]=e[r]}),rIe=fn&&fn.__exportStar||function(t,e){for(var r in t)r!=="default"&&!Object.prototype.hasOwnProperty.call(e,r)&&tIe(e,t,r)};Object.defineProperty(fn,"__esModule",{value:!0});fn.defaultHandler=void 0;var mG=Vs(),pn=QD(),iIe=gG(),sI=Nh(),nIe=pG(),sIe={RequestError:pn.RequestError,CacheError:pn.CacheError,ReadError:pn.ReadError,HTTPError:pn.HTTPError,MaxRedirectsError:pn.MaxRedirectsError,TimeoutError:pn.TimeoutError,ParseError:pn.ParseError,CancelError:pn.CancelError,UnsupportedProtocolError:pn.UnsupportedProtocolError,UploadError:pn.UploadError},oIe=async t=>new Promise(e=>{setTimeout(e,t)}),{normalizeArguments:oI}=sI.default,IG=(...t)=>{let e;for(let r of t)e=oI(void 0,r,e);return e},aIe=t=>t.isStream?new sI.default(void 0,t):pn.default(t),AIe=t=>"defaults"in t&&"options"in t.defaults,lIe=["get","post","put","patch","head","delete"];fn.defaultHandler=(t,e)=>e(t);var EG=(t,e)=>{if(t)for(let r of t)r(e)},yG=t=>{t._rawHandlers=t.handlers,t.handlers=t.handlers.map(i=>(n,s)=>{let o,a=i(n,l=>(o=s(l),o));if(a!==o&&!n.isStream&&o){let l=a,{then:c,catch:u,finally:g}=l;Object.setPrototypeOf(l,Object.getPrototypeOf(o)),Object.defineProperties(l,Object.getOwnPropertyDescriptors(o)),l.then=c,l.catch=u,l.finally=g}return a});let e=(i,n,s)=>{var o,a;let l=0,c=u=>t.handlers[l++](u,l===t.handlers.length?aIe:c);if(mG.default.plainObject(i)){let u=k(k({},i),n);sI.setNonEnumerableProperties([i,n],u),n=u,i=void 0}try{let u;try{EG(t.options.hooks.init,n),EG((o=n==null?void 0:n.hooks)===null||o===void 0?void 0:o.init,n)}catch(h){u=h}let g=oI(i,n,s!=null?s:t.options);if(g[sI.kIsNormalizedAlready]=!0,u)throw new pn.RequestError(u.message,u,g);return c(g)}catch(u){if(n==null?void 0:n.isStream)throw u;return iIe.default(u,t.options.hooks.beforeError,(a=n==null?void 0:n.hooks)===null||a===void 0?void 0:a.beforeError)}};e.extend=(...i)=>{let n=[t.options],s=[...t._rawHandlers],o;for(let a of i)AIe(a)?(n.push(a.defaults.options),s.push(...a.defaults._rawHandlers),o=a.defaults.mutableDefaults):(n.push(a),"handlers"in a&&s.push(...a.handlers),o=a.mutableDefaults);return s=s.filter(a=>a!==fn.defaultHandler),s.length===0&&s.push(fn.defaultHandler),yG({options:IG(...n),handlers:s,mutableDefaults:Boolean(o)})};let r=async function*(i,n){let s=oI(i,n,t.options);s.resolveBodyOnly=!1;let o=s.pagination;if(!mG.default.object(o))throw new TypeError("`options.pagination` must be implemented");let a=[],{countLimit:l}=o,c=0;for(;c{let s=[];for await(let o of r(i,n))s.push(o);return s},e.paginate.each=r,e.stream=(i,n)=>e(i,V(k({},n),{isStream:!0}));for(let i of lIe)e[i]=(n,s)=>e(n,V(k({},s),{method:i})),e.stream[i]=(n,s)=>e(n,V(k({},s),{method:i,isStream:!0}));return Object.assign(e,sIe),Object.defineProperty(e,"defaults",{value:t.mutableDefaults?t:nIe.default(t),writable:t.mutableDefaults,configurable:t.mutableDefaults,enumerable:!0}),e.mergeOptions=IG,e};fn.default=yG;rIe(CG(),fn)});var AI=C((Zs,aI)=>{"use strict";var cIe=Zs&&Zs.__createBinding||(Object.create?function(t,e,r,i){i===void 0&&(i=r),Object.defineProperty(t,i,{enumerable:!0,get:function(){return e[r]}})}:function(t,e,r,i){i===void 0&&(i=r),t[i]=e[r]}),BG=Zs&&Zs.__exportStar||function(t,e){for(var r in t)r!=="default"&&!Object.prototype.hasOwnProperty.call(e,r)&&cIe(e,t,r)};Object.defineProperty(Zs,"__esModule",{value:!0});var uIe=require("url"),wG=SD(),gIe={options:{method:"GET",retry:{limit:2,methods:["GET","PUT","HEAD","DELETE","OPTIONS","TRACE"],statusCodes:[408,413,429,500,502,503,504,521,522,524],errorCodes:["ETIMEDOUT","ECONNRESET","EADDRINUSE","ECONNREFUSED","EPIPE","ENOTFOUND","ENETUNREACH","EAI_AGAIN"],maxRetryAfter:void 0,calculateDelay:({computedValue:t})=>t},timeout:{},headers:{"user-agent":"got (https://github.com/sindresorhus/got)"},hooks:{init:[],beforeRequest:[],beforeRedirect:[],beforeRetry:[],beforeError:[],afterResponse:[]},cache:void 0,dnsCache:void 0,decompress:!0,throwHttpErrors:!0,followRedirect:!0,isStream:!1,responseType:"text",resolveBodyOnly:!1,maxRedirects:10,prefixUrl:"",methodRewriting:!0,ignoreInvalidCookies:!1,context:{},http2:!1,allowGetBody:!1,https:void 0,pagination:{transform:t=>t.request.options.responseType==="json"?t.body:JSON.parse(t.body),paginate:t=>{if(!Reflect.has(t.headers,"link"))return!1;let e=t.headers.link.split(","),r;for(let i of e){let n=i.split(";");if(n[1].includes("next")){r=n[0].trimStart().trim(),r=r.slice(1,-1);break}}return r?{url:new uIe.URL(r)}:!1},filter:()=>!0,shouldContinue:()=>!0,countLimit:Infinity,backoff:0,requestLimit:1e4,stackAllItems:!0},parseJson:t=>JSON.parse(t),stringifyJson:t=>JSON.stringify(t),cacheOptions:{}},handlers:[wG.defaultHandler],mutableDefaults:!1},xD=wG.default(gIe);Zs.default=xD;aI.exports=xD;aI.exports.default=xD;aI.exports.__esModule=!0;BG(SD(),Zs);BG(QD(),Zs)});var SG=C(Cc=>{"use strict";var b9e=require("net"),hIe=require("tls"),PD=require("http"),QG=require("https"),fIe=require("events"),D9e=require("assert"),pIe=require("util");Cc.httpOverHttp=dIe;Cc.httpsOverHttp=CIe;Cc.httpOverHttps=mIe;Cc.httpsOverHttps=IIe;function dIe(t){var e=new _s(t);return e.request=PD.request,e}function CIe(t){var e=new _s(t);return e.request=PD.request,e.createSocket=bG,e.defaultPort=443,e}function mIe(t){var e=new _s(t);return e.request=QG.request,e}function IIe(t){var e=new _s(t);return e.request=QG.request,e.createSocket=bG,e.defaultPort=443,e}function _s(t){var e=this;e.options=t||{},e.proxyOptions=e.options.proxy||{},e.maxSockets=e.options.maxSockets||PD.Agent.defaultMaxSockets,e.requests=[],e.sockets=[],e.on("free",function(i,n,s,o){for(var a=DG(n,s,o),l=0,c=e.requests.length;l=this.maxSockets){s.requests.push(o);return}s.createSocket(o,function(a){a.on("free",l),a.on("close",c),a.on("agentRemove",c),e.onSocket(a);function l(){s.emit("free",a,o)}function c(u){s.removeSocket(a),a.removeListener("free",l),a.removeListener("close",c),a.removeListener("agentRemove",c)}})};_s.prototype.createSocket=function(e,r){var i=this,n={};i.sockets.push(n);var s=kD({},i.proxyOptions,{method:"CONNECT",path:e.host+":"+e.port,agent:!1,headers:{host:e.host+":"+e.port}});e.localAddress&&(s.localAddress=e.localAddress),s.proxyAuth&&(s.headers=s.headers||{},s.headers["Proxy-Authorization"]="Basic "+new Buffer(s.proxyAuth).toString("base64")),Zo("making CONNECT request");var o=i.request(s);o.useChunkedEncodingByDefault=!1,o.once("response",a),o.once("upgrade",l),o.once("connect",c),o.once("error",u),o.end();function a(g){g.upgrade=!0}function l(g,h,f){process.nextTick(function(){c(g,h,f)})}function c(g,h,f){if(o.removeAllListeners(),h.removeAllListeners(),g.statusCode!==200){Zo("tunneling socket could not be established, statusCode=%d",g.statusCode),h.destroy();var p=new Error("tunneling socket could not be established, statusCode="+g.statusCode);p.code="ECONNRESET",e.request.emit("error",p),i.removeSocket(n);return}if(f.length>0){Zo("got illegal response body from proxy"),h.destroy();var p=new Error("got illegal response body from proxy");p.code="ECONNRESET",e.request.emit("error",p),i.removeSocket(n);return}return Zo("tunneling connection has established"),i.sockets[i.sockets.indexOf(n)]=h,r(h)}function u(g){o.removeAllListeners(),Zo(`tunneling socket could not be established, cause=%s +`,g.message,g.stack);var h=new Error("tunneling socket could not be established, cause="+g.message);h.code="ECONNRESET",e.request.emit("error",h),i.removeSocket(n)}};_s.prototype.removeSocket=function(e){var r=this.sockets.indexOf(e);if(r!==-1){this.sockets.splice(r,1);var i=this.requests.shift();i&&this.createSocket(i,function(n){i.request.onSocket(n)})}};function bG(t,e){var r=this;_s.prototype.createSocket.call(r,t,function(i){var n=t.request.getHeader("host"),s=kD({},r.options,{socket:i,servername:n?n.replace(/:.*$/,""):t.host}),o=hIe.connect(0,s);r.sockets[r.sockets.indexOf(i)]=o,e(o)})}function DG(t,e,r){return typeof t=="string"?{host:t,port:e,localAddress:r}:t}function kD(t){for(var e=1,r=arguments.length;e{xG.exports=SG()});var gj=C((U7e,ND)=>{var HG=Object.assign({},require("fs")),ne=typeof ne!="undefined"?ne:{},Kh={},$o;for($o in ne)ne.hasOwnProperty($o)&&(Kh[$o]=ne[$o]);var MD=[],YG="./this.program",GG=function(t,e){throw e},jG=!1,BA=!0,Th="";function xIe(t){return ne.locateFile?ne.locateFile(t,Th):Th+t}var uI,OD,gI,KD;BA&&(jG?Th=require("path").dirname(Th)+"/":Th=__dirname+"/",uI=function(e,r){var i=JG(e);return i?r?i:i.toString():(gI||(gI=HG),KD||(KD=require("path")),e=KD.normalize(e),gI.readFileSync(e,r?null:"utf8"))},OD=function(e){var r=uI(e,!0);return r.buffer||(r=new Uint8Array(r)),qG(r.buffer),r},process.argv.length>1&&(YG=process.argv[1].replace(/\\/g,"/")),MD=process.argv.slice(2),typeof ND!="undefined"&&(ND.exports=ne),GG=function(t){process.exit(t)},ne.inspect=function(){return"[Emscripten Module object]"});var hI=ne.print||console.log.bind(console),Wr=ne.printErr||console.warn.bind(console);for($o in Kh)Kh.hasOwnProperty($o)&&(ne[$o]=Kh[$o]);Kh=null;ne.arguments&&(MD=ne.arguments);ne.thisProgram&&(YG=ne.thisProgram);ne.quit&&(GG=ne.quit);var PIe=16;function kIe(t,e){return e||(e=PIe),Math.ceil(t/e)*e}var vIe=0,FIe=function(t){vIe=t},TD;ne.wasmBinary&&(TD=ne.wasmBinary);var Y9e=ne.noExitRuntime||!0;typeof WebAssembly!="object"&&ur("no native wasm support detected");function RIe(t,e,r){switch(e=e||"i8",e.charAt(e.length-1)==="*"&&(e="i32"),e){case"i1":return ui[t>>0];case"i8":return ui[t>>0];case"i16":return UD[t>>1];case"i32":return Ye[t>>2];case"i64":return Ye[t>>2];case"float":return WG[t>>2];case"double":return zG[t>>3];default:ur("invalid type for getValue: "+e)}return null}var fI,VG=!1,LIe;function qG(t,e){t||ur("Assertion failed: "+e)}function XG(t){var e=ne["_"+t];return qG(e,"Cannot call unknown function "+t+", make sure it is exported"),e}function KIe(t,e,r,i,n){var s={string:function(f){var p=0;if(f!=null&&f!==0){var m=(f.length<<2)+1;p=$G(m),_G(f,p,m)}return p},array:function(f){var p=$G(f.length);return NIe(f,p),p}};function o(f){return e==="string"?ZG(f):e==="boolean"?Boolean(f):f}var a=XG(t),l=[],c=0;if(i)for(var u=0;u=i);)++n;if(n-e>16&&t.subarray&&ej)return ej.decode(t.subarray(e,n));for(var s="";e>10,56320|c&1023)}}return s}function ZG(t,e){return t?mc(Ic,t,e):""}function pI(t,e,r,i){if(!(i>0))return 0;for(var n=r,s=r+i-1,o=0;o=55296&&a<=57343){var l=t.charCodeAt(++o);a=65536+((a&1023)<<10)|l&1023}if(a<=127){if(r>=s)break;e[r++]=a}else if(a<=2047){if(r+1>=s)break;e[r++]=192|a>>6,e[r++]=128|a&63}else if(a<=65535){if(r+2>=s)break;e[r++]=224|a>>12,e[r++]=128|a>>6&63,e[r++]=128|a&63}else{if(r+3>=s)break;e[r++]=240|a>>18,e[r++]=128|a>>12&63,e[r++]=128|a>>6&63,e[r++]=128|a&63}}return e[r]=0,r-n}function _G(t,e,r){return pI(t,Ic,e,r)}function dI(t){for(var e=0,r=0;r=55296&&i<=57343&&(i=65536+((i&1023)<<10)|t.charCodeAt(++r)&1023),i<=127?++e:i<=2047?e+=2:i<=65535?e+=3:e+=4}return e}function HD(t){var e=dI(t)+1,r=tj(e);return r&&pI(t,ui,r,e),r}function NIe(t,e){ui.set(t,e)}function UIe(t,e){return t%e>0&&(t+=e-t%e),t}var YD,ui,Ic,UD,HIe,Ye,YIe,WG,zG;function rj(t){YD=t,ne.HEAP8=ui=new Int8Array(t),ne.HEAP16=UD=new Int16Array(t),ne.HEAP32=Ye=new Int32Array(t),ne.HEAPU8=Ic=new Uint8Array(t),ne.HEAPU16=HIe=new Uint16Array(t),ne.HEAPU32=YIe=new Uint32Array(t),ne.HEAPF32=WG=new Float32Array(t),ne.HEAPF64=zG=new Float64Array(t)}var G9e=ne.INITIAL_MEMORY||16777216,GD,ij=[],nj=[],sj=[],GIe=!1;function qIe(){if(ne.preRun)for(typeof ne.preRun=="function"&&(ne.preRun=[ne.preRun]);ne.preRun.length;)jIe(ne.preRun.shift());jD(ij)}function JIe(){GIe=!0,!ne.noFSInit&&!E.init.initialized&&E.init(),ea.init(),jD(nj)}function zIe(){if(ne.postRun)for(typeof ne.postRun=="function"&&(ne.postRun=[ne.postRun]);ne.postRun.length;)WIe(ne.postRun.shift());jD(sj)}function jIe(t){ij.unshift(t)}function VIe(t){nj.unshift(t)}function WIe(t){sj.unshift(t)}var wA=0,qD=null,Uh=null;function XIe(t){return t}function oj(t){wA++,ne.monitorRunDependencies&&ne.monitorRunDependencies(wA)}function JD(t){if(wA--,ne.monitorRunDependencies&&ne.monitorRunDependencies(wA),wA==0&&(qD!==null&&(clearInterval(qD),qD=null),Uh)){var e=Uh;Uh=null,e()}}ne.preloadedImages={};ne.preloadedAudios={};function ur(t){ne.onAbort&&ne.onAbort(t),t+="",Wr(t),VG=!0,LIe=1,t="abort("+t+"). Build with -s ASSERTIONS=1 for more info.";var e=new WebAssembly.RuntimeError(t);throw e}var aj="data:application/octet-stream;base64,";function Aj(t){return t.startsWith(aj)}var Hh="data:application/octet-stream;base64,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AkEEaiEBIAIoAgAiA0F/cyADQYGChAhrcUGAgYKEeHFFDQALIANB/wFxRQRAIAIgAGsPCwNAIAItAAEhAyACQQFqIgEhAiADDQALCyABIABrC2EBAX8jAEEQayICIAA2AgggAiABNwMAAkAgAikDACACKAIIKQMIVgRAIAIoAghBADoAACACQX82AgwMAQsgAigCCEEBOgAAIAIoAgggAikDADcDECACQQA2AgwLIAIoAgwL7wEBAX8jAEEgayICJAAgAiAANgIYIAIgATcDECACIAIoAhhCCBAeNgIMAkAgAigCDEUEQCACQX82AhwMAQsgAigCDCACKQMQQv8BgzwAACACKAIMIAIpAxBCCIhC/wGDPAABIAIoAgwgAikDEEIQiEL/AYM8AAIgAigCDCACKQMQQhiIQv8BgzwAAyACKAIMIAIpAxBCIIhC/wGDPAAEIAIoAgwgAikDEEIoiEL/AYM8AAUgAigCDCACKQMQQjCIQv8BgzwABiACKAIMIAIpAxBCOIhC/wGDPAAHIAJBADYCHAsgAigCHBogAkEgaiQAC4cDAQF/IwBBMGsiAyQAIAMgADYCJCADIAE2AiAgAyACNwMYAkAgAygCJC0AKEEBcQRAIANCfzcDKAwBCwJAAkAgAygCJCgCIEUNACADKQMYQv///////////wBWDQAgAykDGFANASADKAIgDQELIAMoAiRBDGpBEkEAEBQgA0J/NwMoDAELIAMoAiQtADVBAXEEQCADQn83AygMAQsCfyMAQRBrIgAgAygCJDYCDCAAKAIMLQA0QQFxCwRAIANCADcDKAwBCyADKQMYUARAIANCADcDKAwBCyADQgA3AxADQCADKQMQIAMpAxhUBEAgAyADKAIkIAMoAiAgAykDEKdqIAMpAxggAykDEH1BARAhIgI3AwggAkIAUwRAIAMoAiRBAToANSADKQMQUARAIANCfzcDKAwECyADIAMpAxA3AygMAwsgAykDCFAEQCADKAIkQQE6ADQFIAMgAykDCCADKQMQfDcDEAwCCwsLIAMgAykDEDcDKAsgAykDKCECIANBMGokACACCzYBAX8jAEEQayIBIAA2AgwCfiABKAIMLQAAQQFxBEAgASgCDCkDCCABKAIMKQMQfQwBC0IACwuyAQIBfwF+IwBBEGsiASQAIAEgADYCBCABIAEoAgRC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AkEBNgIQIAJBADYCCANAAkAgAigCCCACKAIYLwEETw0AAkAgAigCDCACKAIIai0AAEEfSwRAIAIoAgwgAigCCGotAABBgAFJDQELIAIoAgwgAigCCGotAABBDUYNACACKAIMIAIoAghqLQAAQQpGDQAgAigCDCACKAIIai0AAEEJRgRADAELIAJBAzYCEAJAIAIoAgwgAigCCGotAABB4AFxQcABRgRAIAJBATYCAAwBCwJAIAIoAgwgAigCCGotAABB8AFxQeABRgRAIAJBAjYCAAwBCwJAIAIoAgwgAigCCGotAABB+AFxQfABRgRAIAJBAzYCAAwBCyACQQQ2AhAMBAsLCyACKAIYLwEEIAIoAgggAigCAGpNBEAgAkEENgIQDAILIAJBATYCBANAIAIoAgQgAigCAE0EQCACKAIMIAIoAgggAigCBGpqLQAAQcABcUGAAUcEQCACQQQ2AhAMBgUgAiACKAIEQQFqNgIEDAILAAsLIAIgAigCACACKAIIajYCCAsgAiACKAIIQQFqNgIIDAELCwsgAigCGCACKAIQNgIIIAIoAhQEQAJAIAIoAhRBAkcNACACKAIQQQNHDQAgAkECNgIQIAIoAhhBAjYCCAsCQCACKAIUIAIoAhBGDQAgAigCEEEBRg0AIAJBBTYCHAwCCwsgAiACKAIQNgIcCyACKAIcC2oBAX8jAEEQayIBIAA2AgwgASgCDEIANwMAIAEoAgxBADYCCCABKAIMQn83AxAgASgCDEEANgIsIAEoAgxBfzYCKCABKAIMQgA3AxggASgCDEIANwMgIAEoAgxBADsBMCABKAIMQQA7ATILUgECf0GQlwEoAgAiASAAQQNqQXxxIgJqIQACQCACQQAgACABTRsNACAAPwBBEHRLBEAgABATRQ0BC0GQlwEgADYCACABDwtBtJsBQTA2AgBBfwuNBQEDfyMAQRBrIgEkACABIAA2AgwgASgCDARAIAEoAgwoAgAEQCABKAIMKAIAEDEaIAEoAgwoAgAQGwsgASgCDCgCHBAVIAEoAgwoAiAQJSABKAIMKAIkECUgASgCDCgCUCECIwBBEGsiACQAIAAgAjYCDCAAKAIMBEAgACgCDCgCEARAIABBADYCCANAIAAoAgggACgCDCgCAEkEQCAAKAIMKAIQIAAoAghBAnRqKAIABEAgACgCDCgC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A3EQHwsgAygCpAEoAhQgA0GeAWogA0GcAWoQgQEgAygCTCADLwGeARAfIAMoAkwgAy8BnAEQHwJAAkAgAy0AhQFBAXFFDQAgAygCpAEpAyhCFFoNACADKAJMQQAQIAwBCyADKAJMIAMoAqQBKAIYECALAkACQCADKAKgAUGAAnFBgAJHDQAgAygCpAEpAyBC/////w9UBEAgAygCpAEpAyhC/////w9UDQELIAMoAkxBfxAgIAMoAkxBfxAgDAELAkAgAygCpAEpAyBC/////w9UBEAgAygCTCADKAKkASkDIKcQIAwBCyADKAJMQX8QIAsCQCADKAKkASkDKEL/////D1QEQCADKAJMIAMoAqQBKQMopxAgDAELIAMoAkxBfxAgCwsgAygCTCADKAKkASgCMBBTQf//A3EQHyADIAMoAqQBKAI0IAMoAqABEIYBQf//A3EgAygCkAFBgAYQhgFB//8DcWo2AogBIAMoAkwgAygCiAFB//8DcRAfIAMoAqABQYACcUUEQCADKAJMIAMoAqQBKAI4EFNB//8DcRAfIAMoAkwgAygCpAEoAjxB//8DcRAfIAMoAkwgAygCpAEvAUAQHyADKAJMIAMoAqQBKAJEECACQCADKAKkASkDSEL/////D1QEQCADKAJMIAMoAqQBKQNIpxAgDAELIAMoAkxBfxAgCwsCfyMAQRBrIgAgAygCTDYCDCAAKAIMLQAAQQFxRQsEQCADKAKoAUEIakEUQQAQFCADKAJMEBYgAygCkAEQIyADQX82AqwBDAELIAMoAqgBIANB0ABqAn4jAEEQayIAIAMoAkw2AgwCfiAAKAIMLQAAQQFxBEAgACgCDCkDEAwBC0IACwsQNUEASARAIAMoAkwQFiADKAKQARAjIANBfzYCrAEMAQsgAygCTBAWIAMoAqQBKAIwBEAgAygCqAEgAygCpAEoAjAQigFBAEgEQCADKAKQARAjIANBfzYCrAEMAgsLIAMoApABBEAgAygCqAEgAygCkAFBgAYQhQFBAEgEQCADKAKQARAjIANBfzYCrAEMAgsLIAMoApABECMgAygCpAEoAjQEQCADKAKoASADKAKkASgCNCADKAKgARCFAUEASARAIANBfzYCrAEMAgsLIAMoAqABQYACcUUEQCADKAKkASgCOARAIAMoAqgBIAMoAqQBKAI4EIoB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HCAAIAAoAhRBAWo2AhQMAQsLIAAoAggQR0EBcUUEQCAAKAIgQRRBABAUIAAoAggQFiAAQX82AiwMAQsgACgCCBAWIAAgACgCHDYCLAsgACgCLCECIABBMGokACADIAIiADYCBCAAQQBIBEAgA0IANwMoDAELIAMpAwggAygCBK18Qv///////////wBWBEAgAygCFEEEQRYQFCADQgA3AygMAQsgAyADKQMIIAMoAgStfDcDKAsgAykDKCEBIANBMGokACABC20BAX8jAEEgayIEJAAgBCAANgIYIAQgATYCFCAEIAI2AhAgBCADNgIMAkAgBCgCGEUEQCAEQQA2AhwMAQsgBCAEKAIUIAQoAhAgBCgCDCAEKAIYQQhqEJIBNgIcCyAEKAIcIQAgBEEgaiQAIAALVQEBfyMAQRBrIgEkACABIAA2AgwCQAJAIAEoAgwoAiRBAUYNACABKAIMKAIkQQJGDQAMAQsgASgCDEEAQgBBChAhGiABKAIMQQA2AiQLIAFBEGokAAumAQEBfyMAQRBrIgIkACACIAA2AgggAiABNgIEAkAgAigCCC0AKEEBcQRAIAJBfzYCDAwBCyACKAIIKAIABEAgAigCCCgCACACKAIEEGhBAEgEQCACKAIIQQxqIAIoAggoAgAQFyACQX82AgwMAgsLIAIoAgggAkEEakIEQRMQIUIAUwRAIAJBfzYCDAwBCyACQQA2AgwLIAIoAgwhACACQRBqJAAgAAuNCAIBfwF+IwBBkAFrIgMkACADIAA2AoQBIAMgATYCgAEgAyACNgJ8IAMQTwJAIAMoAoABKQMIQgBSBEAgAyADKAKAASgCACgCACkDSDcDYCADIAMoAoABKAIAKAIAKQNINwNoDAELIANCADcDYCADQgA3A2gLIANCADcDcAJAA0AgAykDcCADKAKAASkDCFQEQCADKAKAASgCACADKQNwp0EEdGooAgApA0ggAykDaFQEQCADIAMoAoABKAIAIAMpA3CnQQR0aigCACkDSDcDaAsgAykDaCADKAKAASkDIFYEQCADKAJ8QRNBABAUIANCfzcDiAEMAwsgAyADKAKAASgCACADKQNwp0EEdGooAgApA0ggAygCgAEoAgAgAykDcKdBBHRqKAIAKQMgfCADKAKAASgCACADKQNwp0EEdGooAgAoAjAQU0H//wNxrXxC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DEECdGooAgBBAnRqLwEASA0AAkAgAygCGCADKAIQQQJ0ai8BACADKAIYIAMoAhxB3BZqIAMoAgxBAnRqKAIAQQJ0ai8BAEcNACADKAIQIAMoAhxB2Chqai0AACADKAIcQdwWaiADKAIMQQJ0aigCACADKAIcQdgoamotAABKDQAMAQsgAygCHEHcFmogAygCFEECdGogAygCHEHcFmogAygCDEECdGooAgA2AgAgAyADKAIMNgIUIAMgAygCDEEBdDYCDAwBCwsgAygCHEHcFmogAygCFEECdGogAygCEDYCAAvXEwEDfyMAQTBrIgIkACACIAA2AiwgAiABNgIoIAIgAigCKCgCADYCJCACIAIoAigoAggoAgA2AiAgAiACKAIoKAIIKAIMNgIcIAJBfzYCECACKAIsQQA2AtAoIAIoAixBvQQ2AtQoIAJBADYCGANAIAIoAhggAigCHEgEQAJAIAIoAiQgAigCGEECdGovAQAEQCACIAIoAhgiATYCECACKAIsQdwWaiEDIAIoAiwiBCgC0ChBAWohACAEIAA2AtAoIABBAnQgA2ogATYCACACKAIYIAIoAixB2ChqakEAOgAADAELIAIoAiQgAigCGEECdGpBADsBAgsgAiACKAIYQQFqNgIYDAELCwNAIAIoAiwoAtAoQQJIBEACQCACKAIQQQJIBEAgAiACKAIQQQFqIgA2AhAMAQtBACEACyACKAIsQdwWaiEDIAIoAiwiBCgC0ChBAWohASAEIAE2AtAoIAFBAnQgA2ogADYCACACIAA2AgwgAigCJCACKAIMQQJ0akEBOwEAIAIoAgwgAigCLEHYKGpqQQA6AAAgAigCLCIAIAAoAqgtQQFrNgKoLSACKAIgBEAgAigCLCIAIAAoAqwtIAIoAiAgAigCDEECdGovAQJrNgKsLQsMAQsLIAIoAiggAigCEDYCBCACIAIoAiwoAtAoQQJtNgIYA0AgAigCGEEBTgRAIAIoAiwgAigCJCACKAIYEHogAiACKAIYQQFrNgIYDAELCyACIAIoAhw2AgwDQCACIAIoAiwoAuAWNgIYIAIoAixB3BZqIQEgAigCLCIDKALQKCEAIAMgAEEBazYC0CggAigCLCAAQQJ0IAFqKAIANgLgFiACKAIsIAIoAiRBARB6IAIgAigCLCgC4BY2AhQgAigCGCEBIAIoAixB3BZqIQMgAigCLCIEKALUKEEBayEAIAQgADYC1CggAEECdCADaiABNgIAIAIoAhQhASACKAIsQdwWaiEDIAIoAiwiBCgC1ChBAWshACAEIAA2AtQoIABBAnQgA2ogATYCACACKAIkIAIoAgxBAnRqIAIoAiQgAigCGEECdGovAQAgAigCJCACKAIUQQJ0ai8BAGo7AQAgAigCDCACKAIsQdgoamoCfyACKAIYIAIoAixB2Chqai0AACACKAIUIAIoAixB2Chqai0AAE4EQCACKAIYIAIoAixB2Chqai0AAAwBCyACKAIUIAIoAixB2Chqai0AAAtBAWo6AAAgAigCJCACKAIUQQJ0aiACKAIMIgA7AQIgAigCJCACKAIYQQJ0aiAAOwECIAIgAigCDCIAQQFqNgIMIAIoAiwgADYC4BYgAigCLCACKAIkQQEQeiACKAIsKALQKEECTg0ACyACKAIsKALgFiEBIAIoAixB3BZqIQMgAigCLCIEKALUKEEBayEAIAQgADYC1CggAEECdCADaiABNgIAIAIoAighASMAQUBqIgAgAigCLDYCPCAAIAE2AjggACAAKAI4KAIANgI0IAAgACgCOCgCBDYCMCAAIAAoAjgoAggoAgA2AiwgACAAKAI4KAIIKAIENgIoIAAgACgCOCgCCCgCCDYCJCAAIAAoAjgoAggoAhA2AiAgAEEANgIEIABBADYCEANAIAAoAhBBD0wEQCAAKAI8QbwWaiAAKAIQQQF0akEAOwEAIAAgACgCEEEBajYCEAwBCwsgACgCNCAAKAI8QdwWaiAAKAI8KALUKEECdGooAgBBAnRqQQA7AQIgACAAKAI8KALUKEEBajYCHANAIAAoAhxBvQRIBEAgACAAKAI8QdwWaiAAKAIcQQJ0aigCADYCGCAAIAAoAjQgACgCNCAAKAIYQQJ0ai8BAkECdGovAQJBAWo2AhAgACgCECAAKAIgSgRAIAAgACgCIDYCECAAIAAoAgRBAWo2AgQLIAAoAjQgACgCGEECdGogACgCEDsBAiAAKAIYIAAoAjBMBEAgACgCPCAAKAIQQQF0akG8FmoiASABLwEAQQFqOwEAIABBADYCDCAAKAIYIAAoAiROBEAgACAAKAIoIAAoAhggACgCJGtBAnRqKAIANgIMCyAAIAAoAjQgACgCGEECdGovAQA7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EANAIAMpAxAgAykDCFpFBEAgAygCKCgCACADKQMQp0EEdGoQkAEgAyADKQMQQgF8NwMQDAELCyADKAIoIAMpAwgiATcDECADKAIoIAE3AwggA0EBOgAvCyADLQAvQQFxIQAgA0EwaiQAIAALzAEBAX8jAEEgayICJAAgAiAANwMQIAIgATYCDCACQTAQGCIBNgIIAkAgAUUEQCACKAIMQQ5BABAUIAJBADYCHAwBCyACKAIIQQA2AgAgAigCCEIANwMQIAIoAghCADcDCCACKAIIQgA3AyAgAigCCEIANwMYIAIoAghBADYCKCACKAIIQQA6ACwgAigCCCACKQMQIAIoAgwQgwFBAXFFBEAgAigCCBAkIAJBADYCHAwBCyACIAIoAgg2AhwLIAIoAhwhASACQSBqJAAgAQvWAgEBfyMAQSBrIgMkACADIAA2AhggAyABNgIUIAMgAjYCECADIANBDGpCBBApNgIIAkAgAygCCEUEQCADQX82AhwMAQsDQCADKAIUBEAgAygCFCgCBCADKAIQcUGABnEEQCADKAIIQgAQLBogAygCCCADKAIULwEIEB8gAygCCCADKAIULwEKEB8CfyMAQRBrIgAgAygCCDYCDCAAKAIMLQAAQQFxRQsEQCADKAIYQQhqQRRBABAUIAMoAggQFiADQX82AhwMBAsgAygCGCADQQxqQgQQNUEASARAIAMoAggQFiADQX82AhwMBAsgAygCFC8BCgRAIAMoAhggAygCFCgCDCADKAIULwEKrRA1QQBIBEAgAygCCBAWIANBfzYCHAwFCwsLIAMgAygCFCgCADYCFAwBCwsgAygCCBAWIANBADYCHAsgAygCHCEAIANBIGokACAAC2gBAX8jAEEQayICIAA2AgwgAiABNgIIIAJBADsBBgNAIAIoAgwEQCACKAIMKAIEIAIoAghxQYAGcQRAIAIgAigCDC8BCiACLwEGQQRqajsBBgsgAiACKAIMKAIANgIMDAELCyACLwEGC/ABAQF/IwBBEGsiASQAIAEgADYCDCABIAEoAgw2AgggAUEANgIEA0AgASgCDARAAkACQCABKAIMLwEIQfXGAUYNACABKAIMLwEIQfXgAUYNACABKAIMLwEIQYGyAkYNACABKAIMLwEIQQFHDQELIAEgASgCDCgCADYCACABKAIIIAEoAgxGBEAg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IAEpA4ABIAEpAzB8IAEpA5gBIAEpAzh8VgRAIAEoApABQRVBABAUIAFBADYCrAEMAQsCQCABKAKUAUEEcUUNACABKQOAASABKQMwfCABKQOYASABKQM4fFENACABKAKQAUEVQQAQFCABQQA2AqwBDAELIAEpAyggASkDMEIugFYEQCABKAKQAUEVQQAQFCABQQA2AqwBDAELIAEgASkDKCABKAKQARCEASIFNgKMASAFRQRAIAFBADYCrAEMAQsgASgCjAFBAToALCABKAKMASABKQMwNwMYIAEoAowBIAEpA4ABNwMgIAEgASgCjAE2AqwBCyABKAKsASEFIAFBsAFqJAAgACAFNgJQDAELIAAoAmQgACkDMBAsGiAAKAJkIQUgACkDWCEJIAAoAmgoAhQhBiAAKAJUIQcjAEHQAGsiASQAIAEgBTYCSCABIAk3A0AgASAGNgI8IAEgBzYCOAJAIAEoAkgQL0IWVARAIAEoAjhBFUEAEBQgAUEANgJMDAELIwBBEGsiBSABKAJINgIMIAECfiAFKAIMLQAAQQFxBEAgBSgCDCkDEAwBC0IACzcDCCABKAJIQgQQHhogASgCSBAqBEAgASgCOEEBQQAQFCABQQA2AkwMAQsgASABKAJIEB1B//8Dca03AyggASABKAJIEB1B//8Dca03AyAgASkDICABKQMoUgRAIAEoAjhBE0EAEBQgAUEANgJMDAELIAEgASgCSBAqrTcDGCABIAEoAkgQKq03AxAgASkDECABKQMQIAEpAxh8VgRAIAEoAjhBBEEWEBQgAUEANgJMDAELIAEpAxAgASkDGHwgASkDQCABKQMIfFYEQCABKAI4QRVBABAUIAFBADYCTAwBCwJAIAEoAjxBBHFFDQAgASkDECABKQMYfCABKQNAIAEpAwh8UQ0AIAEoAjhBFUEAEBQgAUEANgJMDAELIAEgASkDICABKAI4EIQBIgU2AjQgBUUEQCABQQA2AkwMAQsgASgCNEEAOgAsIAEoAjQgASkDGDcDGCABKAI0IAEpAxA3AyAgASABKAI0NgJMCyABKAJMIQUgAUHQAGokACAAIAU2AlALIAAoAlBFBEAgAEEANgJsDAELIAAoAmQgACkDMEIUfBAsGiAAIAAoAmQQHTsBTiAAKAJQKQMgIAAoAlApAxh8IAApA1ggACkDMHxWBEAg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IAIgAigCLCIAQQFqNgIsIAAtAAEhASACIAIoAigiAEEBajYCKEEAIAAtAAEgAUcNABogAiACKAIsIgBBAWo2AiwgAC0AASEBIAIgAigCKCIAQQFqNgIoQQAgAC0AASABRw0AGiACIAIoAiwiAEEBajYCLCAALQABIQEgAiACKAIoIgBBAWo2AihBACAALQABIAFHDQAaIAIgAigCLCIAQQFqNgIsIAAtAAEhASACIAIoAigiAEEBajYCKEEAIAAtAAEgAUcNABogAiACKAIsIgBBAWo2AiwgAC0AASEBIAIgAigCKCIAQQFqNgIoQQAgAC0AASABRw0AGiACKAIsIAIoAgxJC0EBcQ0ACyACQYICIAIoAgwgAigCLGtrNgIkIAIgAigCDEGCAms2AiwgAigCJCACKAIgSgRAIAIoAjggAigCNDYCcCACIAIoAiQ2AiAgAigCJCACKAIcTg0CIAIgAigCLCACKAIgQQFrai0AADoACyACIAIoAiwgAigCIGotAAA6AAoLCyACIAIoAhQgAigCNCACKAIQcUEBdGovAQAiATYCNEEAIQAgASACKAIYSwR/IAIgAigCMEEBayIANgIwIABBAEcFQQALQQFxDQELCwJAIAIoAiAgAigCOCgCdE0EQCACIAIoAiA2AjwMAQsgAiACKAI4KAJ0NgI8CyACKAI8C5IQAQF/IwBBMGsiAiQAIAIgADYCKCACIAE2AiQgAgJ/IAIoAigoAiwgAigCKCgCDEEFa0kEQCACKAIoKAIsDAELIAIoAigoAgxBBWsLNgIgIAJBADYCECACIAIoAigoAgAoAgQ2AgwDQAJAIAJB//8DNgIcIAIgAigCKCgCvC1BKmpBA3U2AhQgAigCKCgCACgCECACKAIUSQ0AIAIgAigCKCgCACgCECACKAIUazYCFCACIAIoAigoAmwgAigCKCgCXGs2AhggAigCHCACKAIYIAIoAigoAgAoAgRqSwRAIAIgAigCGCACKAIoKAIAKAIEajYCHAsgAigCHCACKAIUSwRAIAIgAigCFDYCHAsCQCACKAIcIAIoAiBPDQACQCACKAIcRQRAIAIoAiRBBEcNAQsgAigCJEUNACACKAIcIAIoAhggAigCKCgCACgCBGpGDQELDAELQQAhACACIAIoAiRBBEYEfyACKAIcIAIoAhggAigCKCgCACgCBGpGBUEAC0EBcTYCECACKAIoQQBBACACKAIQEFwgAigCKCgCCCACKAIoKAIUQQRraiACKAIcOgAAIAIoAigoAgggAigCKCgCFEEDa2ogAigCHEEIdjoAACACKAIoKAIIIAIoAigoAhRBAmtqIAIoAhxBf3M6AAAgAigCKCgCCCACKAIoKAIUQQFraiACKAIcQX9zQQh2OgAAIAIoAigoAgAQHCACKAIYBEAgAigCGCACKAIcSwRAIAIgAigCHDYCGAsgAigCKCgCACgCDCACKAIoKAI4IAIoAigoAlxqIAIoAhgQGRogAigCKCgCACIAIAIoAhggACgCDGo2AgwgAigCKCgCACIAIAAoAhAgAigCGGs2AhAgAigCKCgCACIAIAIoAhggACgCFGo2AhQgAigCKCIAIAIoAhggACgCXGo2AlwgAiACKAIcIAIoAhhrNgIcCyACKAIcBEAgAigCKCgCACACKAIoKAIAKAIMIAIoAhwQeBogAigCKCgCACIAIAIoAhwgACgCDGo2AgwgAigCKCgCACIAIAAoAhAgAigCHGs2AhAgAigCKCgCACIAIAIoAhwgACgCFGo2AhQLIAIoAhBFDQELCyACIAIoAgwgAigCKCgCACgCBGs2AgwgAigCDARAAkAgAigCDCACKAIoKAIsTwRAIAIoAihBAjYCsC0gAigCKCgCOCACKAIoKAIAKAIAIAIoAigoAixrIAIoAigoAiwQGRogAigCKCACKAIoKAIsNgJsDAELIAIoAgwgAigCKCgCPCACKAIoKAJsa08EQCACKAIoIgAgACgCbCACKAIoKAIsazYCbCACKAIoKAI4IAIoAigoAjggAigCKCgCLGogAigCKCgCbBAZGiACKAIoKAKwLUECSQRAIAIoAigiACAAKAKwLUEBajYCsC0LCyACKAIoKAI4IAIoAigoAmxqIAIoAigoAgAoAgAgAigCDGsgAigCDBAZGiACKAIoIgAgAigCDCAAKAJsajYCbAsgAigCKCACKAIoKAJsNgJcIAIoAigiAQJ/IAIoAgwgAigCKCgCLCACKAIoKAK0LWtLBEAgAigCKCgCLCACKAIoKAK0LWsMAQsgAigCDAsgASgCtC1qNgK0LQsgAigCKCgCwC0gAigCKCgCbEkEQCACKAIoIAIoAigoAmw2AsAtCwJAIAIoAhAEQCACQQM2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mwFCADcDAEGYmwFCADcDAEGQmwFCADcDAEGImwFCADcDAEGAmwFCADcDAEH4mgFCADcDAEHwmgFCADcDAEHwmgEL1QQBBX8jAEGwAWsiASQAIAEgADYCqAEgASgCqAEQNwJAAkAgASgCqAEoAgBBAE4EQCABKAKoASgCAEGAFCgCAEgNAQsgASABKAKoASgCADYCECABQSBqQY8SIAFBEGoQcCABQQA2AqQBIAEgAUEgajYCoAEMAQsgASABKAKoASgCAEECdEGAE2ooAgA2AqQBAkACQAJAAkAgASgCqAEoAgBBAnRBkBRqKAIAQQFrDgIAAQILIAEoAqgBKAIEIQJBkJkBKAIAIQRBACEAAkACQANAIAIgAEGgiAFqLQAARwRAQdcAIQMgAEEBaiIAQdcARw0BDAILCyAAIgMNAEGAiQEhAgwBC0GAiQEhAANAIAAtAAAhBSAAQQFqIgIhACAFDQAgAiEAIANBAWsiAw0ACwsgBCgCFBogASACNgKgAQwCCyMAQRBrIgAgASgCqAEoAgQ2AgwgAUEAIAAoAgxrQQJ0QajZAGooAgA2AqABDAELIAFBADYCoAELCwJAIAEoAqABRQRAIAEgASgCpAE2AqwBDAELIAEgASgCoAEQKwJ/IAEoAqQBBEAgASgCpAEQK0ECagwBC0EAC2pBAWoQGCIANgIcIABFBEAgAUG4EygCADYCrAEMAQsgASgCHCEAAn8gASgCpAEEQCABKAKkAQwBC0H6EgshA0HfEkH6EiABKAKkARshAiABIAEoAqABNgIIIAEgAjYCBCABIAM2AgAgAEG+CiABEHAgASgCqAEgASgCHDYCCCABIAEoAhw2AqwBCyABKAKsASEAIAFBsAFqJAAgAAszAQF/IAAoAhQiAyABIAIgACgCECADayIBIAEgAksbIgEQGRogACAAKAIUIAFqNgIUIAILjwUCBn4BfyABIAEoAgBBD2pBcHEiAUEQajYCACAAAnwgASkDACEDIAEpAwghBiMAQSBrIggkAAJAIAZC////////////AIMiBEKAgICAgIDAgDx9IARCgICAgICAwP/DAH1UBEAgBkIEhiADQjyIhCEEIANC//////////8PgyIDQoGAgICAgICACFoEQCAEQoGAgICAgICAwAB8IQIMAgsgBEKAgICAgICAgEB9IQIgA0KAgICAgICAgAiFQgBSDQEgAiAEQgGDfCECDAELIANQIARCgICAgICAwP//AFQgBEKAgICAgIDA//8AURtFBEAgBkIEhiADQjyIhEL/////////A4NCgICAgICAgPz/AIQhAgwBC0KAgICAgICA+P8AIQIgBEL///////+//8MAVg0AQgAhAiAEQjCIpyIAQZH3AEkNACADIQIgBkL///////8/g0KAgICAgIDAAIQiBSEHAkAgAEGB9wBrIgFBwABxBEAgAiABQUBqrYYhB0IAIQIMAQsgAUUNACAHIAGtIgSGIAJBwAAgAWutiIQhByACIASGIQILIAggAjcDECAIIAc3AxgCQEGB+AAgAGsiAEHAAHEEQCAFIABBQGqtiCEDQgAhBQwBCyAARQ0AIAVBwAAgAGuthiADIACtIgKIhCEDIAUgAoghBQsgCCADNwMAIAggBTcDCCAIKQMIQgSGIAgpAwAiA0I8iIQhAiAIKQMQIAgpAxiEQgBSrSADQv//////////D4OEIgNCgYCAgICAgIAIWgRAIAJCAXwhAgwBCyADQoCAgICAgICACIVCAFINACACQgGDIAJ8IQILIAhBIGokACACIAZCgICAgICAgICAf4OEvws5AwALrRcDEn8CfgF8IwBBsARrIgkkACAJQQA2AiwCQCABvSIYQn9XBEBBASESQa4IIRMgAZoiAb0hGAwBCyAEQYAQcQRAQQEhEkGxCCETDAELQbQIQa8IIARBAXEiEhshEyASRSEXCwJAIBhCgICAgICAgPj/AINCgICAgICAgPj/AFEEQCAAQSAgAiASQQNqIg0gBEH//3txECYgACATIBIQIiAAQeQLQbUSIAVBIHEiAxtBjw1BuRIgAxsgASABYhtBAxAiDAELIAlBEGohEAJAAn8CQCABIAlBLGoQqQEiASABoCIBRAAAAAAAAAAAYgRAIAkgCSgCLCIGQQFrNgIsIAVBIHIiFEHhAEcNAQwDCyAFQSByIhRB4QBGDQIgCSgCLCELQQYgAyADQQBIGwwBCyAJIAZBHWsiCzYCLCABRAAAAAAAALBBoiEBQQYgAyADQQBIGwshCiAJQTBqIAlB0AJqIAtBAEgbIg4hBwNAIAcCfyABRAAAAAAAAPBBYyABRAAAAAAAAAAAZnEEQCABqwwBC0EACyIDNgIAIAdBBGohByABIAO4oUQA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HCECIAEgASgCGCIDQQFqNgIYQQAgAy0AASACRw0AGiABKAIcIQIgASABKAIYIgNBAWo2AhhBACADLQABIAJHDQAaIAEoAhwhAiABIAEoAhgiA0EBajYCGEEAIAMtAAEgAkcNABogASgCHCECIAEgASgCGCIDQQFqNgIYQQAgAy0AASACRw0AGiABKAIcIQIgASABKAIYIgNBAWo2AhhBACADLQABIAJHDQAaIAEoAhwhAiABIAEoAhgiA0EBajYCGEEAIAMtAAEgAkcNABogASgCGCABKAIUSQtBAXENAAsgASgCKEGCAiABKAIUIAEoAhhrazYCYCABKAIoKAJgIAEoAigoAnRLBEAgASgCKCABKAIoKAJ0NgJgCwsLAkAgASgCKCgCYEEDTwRAIAEgASgCKCgCYEEDazoAEyABQQE7ARAgASgCKCICKAKkLSACKAKgLUEBdGogAS8BEDsBACABLQATIQMgASgCKCICKAKYLSEEIAIgAigCoC0iAkEBajYCoC0gAiAEaiADOgAAIAEgAS8BEEEBazsBECABKAIoIAEtABNB0N0Aai0AAEECdGpBmAlqIgIgAi8BAEEBajsBACABKAIoQYgTagJ/IAEvARBBgAJJBEAgAS8BEC0A0FkMAQsgAS8BEEEHdkGAAmotANBZC0ECdGoiAiACLwEAQQFqOwEAIAEgASgCKCgCoC0gASgCKCgCnC1BAWtGNgIgIAEoAigiAiACKAJ0IAEoAigoAmBrNgJ0IAEoAigiAiABKAIoKAJgIAIoAmxqNgJsIAEoAihBADYCYAwBCyABIAEoAigiAigCOCACKAJsai0AADoADyABKAIoIgIoAqQtIAIoAqAtQQF0akEAOwEAIAEtAA8hAyABKAIoIgIoApgtIQQgAiACKAKgLSICQQFqNgKgLSACIARqIAM6AAAgASgCKCABLQAPQQJ0aiICIAIvAZQBQQFqOwGUASABIAEoAigoAqAtIAEoAigoApwtQQFrRjYCICABKAIoIgIgAigCdEEBazYCdCABKAIoIgIgAigCbEEBajYCbAsgASgCIARAIAEoAigCfyABKAIoKAJcQQBOBEAgASgCKCgCOCABKAIoKAJcagwBC0EACyABKAIoKAJsIAEoAigoAlxrQQAQKCABKAIoIAEoAigoAmw2AlwgASgCKCgCABAcIAEoAigo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QCABKAIoQQ9JBEAgASABKAJQIgJBAWo2AlAgASABKAIsIAItAAAgASgCKHRqNgIsIAEgASgCKEEIajYCKCABIAEoAlAiAkEBajYCUCABIAEoAiwgAi0AACABKAIodGo2AiwgASABKAIoQQhqNgIoCyABIAEoAiQgASgCLCABKAIccUECdGooAQA2ARACQAJAA0AgASABLQARNgIMIAEgASgCLCABKAIMdjYCLCABIAEoAiggASgCDGs2AiggASABLQAQNgIMIAEoAgxFBEAgAS8BEiECIAEgASgCSCIDQQFqNgJIIAMgAjoAAAwCCyABKAIMQRBxBEAgASABLwESNgIIIAEgASgCDEEPcTYCDCABKAIMBEAgASgCKCABKAIMSQRAIAEgASgCUCICQQFqNgJQIAEgASgCLCACLQAAIAEoAih0ajYCLCABIAEoAihBCGo2AigLIAEgASgCCCABKAIsQQEgASgCDHRBAWtxajYCCCABIAEoAiwgASgCDHY2AiwgASABKAIoIAEoAgxrNgIoCyABKAIoQQ9JBEAgASABKAJQIgJBAWo2AlAgASABKAIsIAItAAAgASgCKHRqNgIsIAEgASgCKEEIajYCKCABIAEoAlAiAkEBajYCUCABIAEoAiwgAi0AACABKAIodGo2AiwgASABKAIoQQhqNgIoCyABIAEoAiAgASgCLCABKAIYcUECdGooAQA2ARACQANAIAEgAS0AETYCDCABIAEoAiwgASgCDHY2AiwgASABKAIoIAEoAgxrNgIoIAEgAS0AEDYCDCABKAIMQRBxBEAgASABLwESNgIEIAEgASgCDEEPcTYCDCABKAIoIAEoAgxJBEAgASABKAJQIgJBAWo2AlAgASABKAIsIAItAAAgASgCKHRqNgIsIAEgASgCKEEIajYCKCABKAIoIAEoAgxJBEAgASABKAJQIgJBAWo2AlAgASABKAIsIAItAAAgASgCKHRqNgIsIAEgASgCKEEIajYCKAsLIAEgASgCBCABKAIsQQEgASgCDHRBAWtxajYCBCABIAEoAiwgASgCDHY2AiwgASABKAIoIAEoAgxrNgIoIAEgASgCSCABKAJEazYCDAJAIAEoAgQgASgCDEsEQCABIAEoAgQgASgCDGs2AgwgASgCDCABKAI4SwRAIAEoAlQoAsQ3BEAgASgCXEHdDDYCGCABKAJUQdH+ADYCBAwKCwsgASABKAIwNgIAAkAgASgCNEUEQCABIAEoAgAgASgCPCABKAIMa2o2AgAgASgCDCABKAIISQRAIAEgASgCCCABKAIMazYCCANAIAEgASgCACICQQFqNgIAIAItAAAhAiABIAEoAkgiA0EBajYCSCADIAI6AAAgASABKAIMQQFrIgI2AgwgAg0ACyABIAEoAkggASgCBGs2AgALDAELAkAgASgCNCABKAIMSQRAIAEgASgCACABKAI8IAEoAjRqIAEoAgxrajYCACABIAEoAgwgASgCNGs2AgwgASgCDCABKAIISQRAIAEgASgCCCABKAIMazYCCANAIAEgASgCACICQQFqNgIAIAItAAAhAiABIAEoAkgiA0EBajYCSCADIAI6AAAgASABKAIMQQFrIgI2AgwgAg0ACyABIAEoAjA2AgAgASgCNCABKAIISQRAIAEgASgCNDYCDCABIAEoAgggASgCDGs2AggDQCABIAEoAgAiAkEBajYCACACLQAAIQIgASABKAJIIgNBAWo2AkggAyACOgAAIAEgASgCDEEBayICNgIMIAINAAsgASABKAJIIAEoAgRrNgIACwsMAQsgASABKAIAIAEoAjQgASgCDGtqNgIAIAEoAgwgASgCCEkEQCABIAEoAgggASgCDGs2AggDQCABIAEoAgAiAkEBajYCACACLQAAIQIgASABKAJIIgNBAWo2AkggAyACOgAAIAEgASgCDEEBayICNgIMIAINAAsgASABKAJIIAEoAgRrNgIACwsLA0AgASgCCEECSwRAIAEgASgCACICQQFqNgIAIAItAAAhAiABIAEoAkgiA0EBajYCSCADIAI6AAAgASABKAIAIgJBAWo2AgAgAi0AACECIAEgASgCSCIDQQFqNgJIIAMgAjoAACABIAEoAgAiAkEBajYCACACLQAAIQIgASABKAJIIgNBAWo2AkggAyACOgAAIAEgASgCCEEDazYCCAwBCwsMAQsgASABKAJIIAEoAgRrNgIAA0AgASABKAIAIgJBAWo2AgAgAi0AACECIAEgASgCSCIDQQFqNgJIIAMgAjoAACABIAEoAgAiAkEBajYCACACLQAAIQIgASABKAJIIgNBAWo2AkggAyACOgAAIAEgASgCACICQQFqNgIAIAItAAAhAiABIAEoAkgi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ZWFkIGVycm9yAFpsaWIgZXJyb3IAZGF0YSBlcnJvcgBDUkMgZXJyb3IAaW5jb21wYXRpYmxlIHZlcnNpb24AbmFuAC9kZXYvdXJhbmRvbQBpbnZhbGlkIGNvZGUgLS0gbWlzc2luZyBlbmQtb2YtYmxvY2sAaW5jb3JyZWN0IGhlYWRlciBjaGVjawBpbmNvcnJlY3QgbGVuZ3RoIGNoZWNrAGluY29ycmVjdCBkYXRhIGNoZWNrAGludmFsaWQgZGlzdGFuY2UgdG9vIGZhciBiYWNrAGhlYWRlciBjcmMgbWlzbWF0Y2gAaW5mAGludmFsaWQgd2luZG93IHNpemUAUmVhZC1vbmx5IGFyY2hpdmUATm90IGEgemlwIGFyY2hpdmUAUmVzb3VyY2Ugc3RpbGwgaW4gdXNlAE1hbGxvYyBmYWlsdXJlAGludmFsaWQgYmxvY2sgdHlwZQBGYWlsdXJlIHRvIGNyZWF0ZSB0ZW1wb3JhcnkgZmlsZQBDYW4ndCBvcGVuIGZpbGUATm8gc3VjaCBmaWxlAFByZW1hdHVyZSBlbmQgb2YgZmlsZQBDYW4ndCByZW1vdmUgZmlsZQBpbnZhbGlkIGxpdGVyYWwvbGVuZ3RoIGNvZGUAaW52YWxpZCBkaXN0YW5jZSBjb2RlAHVua25vd24gY29tcHJlc3Npb24gbWV0aG9kAHN0cmVhbSBlbmQAQ29tcHJlc3NlZCBkYXRhIGludmFsaWQATXVsdGktZGlzayB6aXAgYXJjaGl2ZXMgbm90IHN1cHBvcnRlZABPcGVyYXRpb24gbm90IHN1cHBvcnRlZABFbmNyeXB0aW9uIG1ldGhvZCBub3Qgc3VwcG9ydGVkAENvbXByZXNzaW9uIG1ldGhvZCBub3Qgc3VwcG9ydGVkAEVudHJ5IGhhcyBiZWVuIGRlbGV0ZWQAQ29udGFpbmluZyB6aXAgYXJjaGl2ZSB3YXMgY2xvc2VkAENsb3NpbmcgemlwIGFyY2hpdmUgZmFpbGVkAFJlbmFtaW5nIHRlbXBvcmFyeSBmaWxlIGZhaWxlZABFbnRyeSBoYXMgYmVlbiBjaGFuZ2VkAE5vIHBhc3N3b3JkIHByb3ZpZGVkAFdyb25nIHBhc3N3b3JkIHByb3ZpZGVkAFVua25vd24gZXJyb3IgJWQAcmIAcitiAHJ3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CADcAAgAPAAIALwACAB8AAgA/AAIAAIACACCAAgAQgAIAMIACAAiAAgAogAIAGIACADiAAgAEgAIAJIACABSAAgA0gAIADIACACyAAgAcgAIAPIACAAKAAgAigAIAEoACADKAAgAKgAIAKoACABqAAgA6gAIABoACACaAAgAWgAIANoACAA6AAgAugAIAHoACAD6AAgABgAIAIYACABGAAgAxgAIACYACACmAAgAZgAIAOYACAAWAAgAlgAIAFYACADWAAgANgAIALYACAB2AAgA9gAIAA4ACACOAAgATgAIAM4ACAAuAAgArgAIAG4ACADuAAgAHgAIAJ4ACABeAAgA3gAIAD4ACAC+AAgAfgAIAP4ACAABAAgAgQAIAEEACADBAAgAIQAIAKEACABhAAgA4QAIABEACACRAAgAUQAIANEACAAxAAgAsQAIAHEACADxAAgACQAIAIkACABJAAgAyQAIACkACACpAAgAaQAIAOkACAAZAAgAmQAIAFkACADZAAgAOQAIALkACAB5AAgA+QAIAAUACACFAAgARQAIAMUACAAlAAgApQAIAGUACADlAAgAFQAIAJUACABVAAgA1QAIADUACAC1AAgAdQAIAPUACAANAAgAjQAIAE0ACADNAAgALQAIAK0ACABtAAgA7QAIAB0ACACdAAgAXQAIAN0ACAA9AAgAvQAIAH0ACAD9AAgAEwAJABMBCQCTAAkAkwEJAFMACQBTAQkA0wAJANMBCQAzAAkAMwEJALMACQCzAQkAcwAJAHMBCQDzAAkA8wEJAAsACQALAQkAiwAJAIsBCQBLAAkASwEJAMsACQDLAQkAKwAJACsBCQCrAAkAqwEJAGsACQBrAQkA6wAJAOsBCQAbAAkAGwEJAJsACQCbAQkAWwAJAFsBCQDbAAkA2wEJADsACQA7AQkAuwAJALsBCQB7AAkAewEJAPsACQD7AQkABwAJAAcBCQCHAAkAhwEJAEcACQBHAQkAxwAJAMcBCQAnAAkAJwEJAKcACQCnAQkAZwAJAGcBCQDnAAkA5wEJABcACQAXAQkAlwAJAJcBCQBXAAkAVwEJANcACQDXAQkANwAJADcBCQC3AAkAtwEJAHcACQB3AQkA9wAJAPcBCQAPAAkADwEJAI8ACQCPAQkATwAJAE8BCQDPAAkAzwEJAC8ACQAvAQkArwAJAK8BCQBvAAkAbwEJAO8ACQDvAQkAHwAJAB8BCQCfAAkAnwEJAF8ACQBfAQkA3wAJAN8BCQA/AAkAPwEJAL8ACQC/AQkAfwAJAH8BCQD/AAkA/wEJAAAABwBAAAcAIAAHAGAABwAQAAcAUAAHADAABwBwAAcACAAHAEgABwAoAAcAaAAHABgABwBYAAcAOAAHAHgABwAEAAcARAAHACQABwBkAAcAFAAHAFQABwA0AAcAdAAHAAMACACDAAgAQwAIAMMACAAjAAgAowAIAGMACADjAAgAAAAFABAABQAIAAUAGAAFAAQABQAUAAUADAAFABwABQACAAUAEgAFAAoABQAaAAUABgAFABYABQAOAAUAHgAFAAEABQARAAUACQAFABkABQAFAAUAFQAFAA0ABQAdAAUAAwAFABMABQALAAUAGwAFAAcABQAXAAUAQbDqAAtNAQAAAAEAAAABAAAAAQAAAAIAAAACAAAAAgAAAAIAAAADAAAAAwAAAAMAAAADAAAABAAAAAQAAAAEAAAABAAAAAUAAAAFAAAABQAAAAUAQaDrAAtlAQAAAAEAAAACAAAAAgAAAAMAAAADAAAABAAAAAQAAAAFAAAABQAAAAYAAAAGAAAABwAAAAcAAAAIAAAACAAAAAkAAAAJAAAACgAAAAoAAAALAAAACwAAAAwAAAAMAAAADQAAAA0AQdDsAAsjAgAAAAMAAAAHAAAAAAAAABAREgAIBwkGCgULBAwDDQIOAQ8AQYTtAAtpAQAAAAIAAAADAAAABAAAAAUAAAAGAAAABwAAAAgAAAAKAAAADAAAAA4AAAAQAAAAFAAAABgAAAAcAAAAIAAAACgAAAAwAAAAOAAAAEAAAABQAAAAYAAAAHAAAACAAAAAoAAAAMAAAADgAEGE7gALegEAAAACAAAAAwAAAAQAAAAGAAAACAAAAAwAAAAQAAAAGAAAACAAAAAwAAAAQAAAAGAAAACAAAAAwAAAAAABAACAAQAAAAIAAAADAAAABAAAAAYAAAAIAAAADAAAABAAAAAYAAAAIAAAADAAAABAAAAAYAAAMS4yLjExAEGI7wALbQcAAAAEAAQACAAEAAgAAAAEAAUAEAAIAAgAAAAEAAYAIAAgAAgAAAAEAAQAEAAQAAkAAAAIABAAIAAgAAkAAAAIABAAgACAAAkAAAAIACAAgAAAAQkAAAAgAIAAAgEABAkAAAAgAAIBAgEAEAkAQYDwAAulAgMABAAFAAYABwAIAAkACgALAA0ADwARABMAFwAbAB8AIwArADMAOwBDAFMAYwBzAIMAowDDAOMAAgEAAAAAAAAQABAAEAAQABAAEAAQABAAEQARABEAEQASABIAEgASABMAEwATABMAFAAUABQAFAAVABUAFQAVABAATQDKAAAAAQACAAMABAAFAAcACQANABEAGQAhADEAQQBhAIEAwQABAYEBAQIBAwEEAQYBCAEMARABGAEgATABQAFgAAAAABAAEAAQABAAEQARABIAEgATABMAFAAUABUAFQAWABYAFwAXABgAGAAZABkAGgAaABsAGwAcABwAHQAdAEAAQAAQABEAEgAAAAgABwAJAAYACgAFAAsABAAMAAMADQACAA4AAQAPAEGw8gALwRFgBwAAAAhQAAAIEAAUCHMAEgcfAAAIcAAACDAAAAnAABAHCgAACGAAAAggAAAJoAAACAAAAAiAAAAIQAAACeAAEAcGAAAIWAAACBgAAAmQABMHOwAACHgAAAg4AAAJ0AARBxEAAAhoAAAIKAAACbAAAAgIAAAIiAAACEgAAAnwABAHBAAACFQAAAgUABUI4wATBysAAAh0AAAINAAACcgAEQcNAAAIZAAACCQAAAmoAAAIBAAACIQAAAhEAAAJ6AAQBwgAAAhcAAAIHAAACZgAFAdTAAAIfAAACDwAAAnYABIHFwAACGwAAAgsAAAJuAAACAwAAAiMAAAITAAACfgAEAcDAAAIUgAACBIAFQijABMHIwAACHIAAAgyAAAJxAARBwsAAAhiAAAIIgAACaQAAAgCAAAIggAACEIAAAnkABAHBwAACFoAAAgaAAAJlAAUB0MAAAh6AAAIOgAACdQAEgcTAAAIagAACCoAAAm0AAAICgAACIoAAAhKAAAJ9AAQBwUAAAhWAAAIFgBACAAAEwczAAAIdgAACDYAAAnMABEHDwAACGYAAAgmAAAJrAAACAYAAAiGAAAIRgAACewAEAcJAAAIXgAACB4AAAmcABQHYwAACH4AAAg+AAAJ3AASBxsAAAhuAAAILgAACbwAAAgOAAAIjgAACE4AAAn8AGAHAAAACFEAAAgRABUIgwASBx8AAAhxAAAIMQAACcIAEAcKAAAIYQAACCEAAAmiAAAIAQAACIEAAAhBAAAJ4gAQBwYAAAhZAAAIGQAACZIAEwc7AAAIeQAACDkAAAnSABEHEQAACGkAAAgpAAAJsgAACAkAAAiJAAAISQAACfIAEAcEAAAIVQAACBUAEAgCARMHKwAACHUAAAg1AAAJygARBw0AAAhlAAAIJQAACaoAAAgFAAAIhQAACEUAAAnqABAHCAAACF0AAAgdAAAJmgAUB1MAAAh9AAAIPQAACdoAEgcXAAAIbQAACC0AAAm6AAAIDQAACI0AAAhNAAAJ+gAQBwMAAAhTAAAIEwAVCMMAEwcjAAAIcwAACDMAAAnGABEHCwAACGMAAAgjAAAJpgAACAMAAAiDAAAIQwAACeYAEAcHAAAIWwAACBsAAAmWABQHQwAACHsAAAg7AAAJ1gASBxMAAAhrAAAIKwAACbYAAAgLAAAIiwAACEsAAAn2ABAHBQAACFcAAAgXAEAIAAATBzMAAAh3AAAINwAACc4AEQcPAAAIZwAACCcAAAmuAAAIBwAACIcAAAhHAAAJ7gAQBwkAAAhfAAAIHwAACZ4AFAdjAAAIfwAACD8AAAneABIHGwAACG8AAAgvAAAJvgAACA8AAAiPAAAITwAACf4AYAcAAAAIUAAACBAAFAhzABIHHwAACHAAAAgwAAAJwQAQBwoAAAhgAAAIIAAACaEAAAgAAAAIgAAACEAAAAnhABAHBgAACFgAAAgYAAAJkQATBzsAAAh4AAAIOAAACdEAEQcRAAAIaAAACCgAAAmxAAAICAAACIgAAAhIAAAJ8QAQBwQAAAhUAAAIFAAVCOMAEwcrAAAIdAAACDQAAAnJABEHDQAACGQAAAgkAAAJqQAACAQAAAiEAAAIRAAACekAEAcIAAAIXAAACBwAAAmZABQHUwAACHwAAAg8AAAJ2QASBxcAAAhsAAAILAAACbkAAAgMAAAIjAAACEwAAAn5ABAHAwAACFIAAAgSABUIowATByMAAAhyAAAIMgAACcUAEQcLAAAIYgAACCIAAAmlAAAIAgAACIIAAAhCAAAJ5QAQBwcAAAhaAAAIGgAACZUAFAdDAAAIegAACDoAAAnVABIHEwAACGoAAAgqAAAJtQAACAoAAAiKAAAISgAACfUAEAcFAAAIVgAACBYAQAgAABMHMwAACHYAAAg2AAAJzQARBw8AAAhmAAAIJgAACa0AAAgGAAAIhgAACEYAAAntABAHCQAACF4AAAgeAAAJnQAUB2MAAAh+AAAIPgAACd0AEgcbAAAIbgAACC4AAAm9AAAIDgAACI4AAAhOAAAJ/QBgBwAAAAhRAAAIEQAVCIMAEgcfAAAIcQAACDEAAAnDABAHCgAACGEAAAghAAAJowAACAEAAAiBAAAIQQAACeMAEAcGAAAIWQAACBkAAAmTABMHOwAACHkAAAg5AAAJ0wARBxEAAAhpAAAIKQAACbMAAAgJAAAIiQAACEkAAAnzABAHBAAACFUAAAgVABAIAgETBysAAAh1AAAINQAACcsAEQcNAAAIZQAACCUAAAmrAAAIBQAACIUAAAhFAAAJ6wAQBwgAAAhdAAAIHQAACZsAFAdTAAAIfQAACD0AAAnbABIHFwAACG0AAAgtAAAJuwAACA0AAAiNAAAITQAACfsAEAcDAAAIUwAACBMAFQjDABMHIwAACHMAAAgzAAAJxwARBwsAAAhjAAAIIwAACacAAAgDAAAIgwAACEMAAAnnABAHBwAACFsAAAgbAAAJlwAUB0MAAAh7AAAIOwAACdcAEgcTAAAIawAACCsAAAm3AAAICwAACIsAAAhLAAAJ9wAQBwUAAAhXAAAIFwBACAAAEwczAAAIdwAACDcAAAnPABEHDwAACGcAAAgnAAAJrwAACAcAAAiHAAAIRwAACe8AEAcJAAAIXwAACB8AAAmfABQHYwAACH8AAAg/AAAJ3wASBxsAAAhvAAAILwAACb8AAAgPAAAIjwAACE8AAAn/ABAFAQAXBQEBEwURABsFARARBQUAGQUBBBUFQQAdBQFAEAUDABgFAQIUBSEAHAUBIBIFCQAaBQEIFgWBAEAFAAAQBQIAFwWBARMFGQAbBQEYEQUHABkFAQYVBWEAHQUBYBAFBAAYBQEDFAUxABwFATASBQ0AGgUBDBYFwQBABQAAEQAKABEREQAAAAAFAAAAAAAACQAAAAALAAAAAAAAAAARAA8KERERAwoHAAEACQsLAAAJBgsAAAsABhEAAAAREREAQYGEAQshCwAAAAAAAAAAEQAKChEREQAKAAACAAkLAAAACQALAAALAEG7hAELAQwAQceEAQsVDAAAAAAMAAAAAAkMAAAAAAAMAAAMAEH1hAELAQ4AQYGFAQsVDQAAAAQNAAAAAAkOAAAAAAAOAAAOAEGvhQELARAAQbuFAQseDwAAAAAPAAAAAAkQAAAAAAAQAAAQAAASAAAAEhISAEHyhQELDhIAAAASEhIAAAAAAAAJAEGjhgELAQsAQa+GAQsVCgAAAAAKAAAAAAkLAAAAAAALAAALAEHdhgELAQwAQemGAQsnDAAAAAAMAAAAAAkMAAAAAAAMAAAMAAAwMTIzNDU2Nzg5QUJDREVGAEG0hwELARkAQduHAQsF//////8AQaCIAQtXGRJEOwI/LEcUPTMwChsGRktFNw9JDo4XA0AdPGkrNh9KLRwBICUpIQgMFRYiLhA4Pgs0MRhkdHV2L0EJfzkRI0MyQomKiwUEJignDSoeNYwHGkiTE5SVAEGAiQELig5JbGxlZ2FsIGJ5dGUgc2VxdWVuY2UARG9tYWluIGVycm9yAFJlc3VsdCBub3QgcmVwcmVzZW50YWJsZQBOb3QgYSB0dHkAUGVybWlzc2lvbiBkZW5pZWQAT3BlcmF0aW9uIG5vdCBwZXJtaXR0ZWQATm8gc3VjaCBmaWxlIG9yIGRpcmVjdG9yeQBObyBzdWNoIHByb2Nlc3MARmlsZSBleGlzdHMAVmFsdWUgdG9vIGxhcmdlIGZvciBkYXRhIHR5cGUATm8gc3BhY2UgbGVmdCBvbiBkZXZpY2UAT3V0IG9mIG1lbW9yeQBSZXNvdXJjZSBidXN5AEludGVycnVwdGVkIHN5c3RlbSBjYWxsAFJlc291cmNlIHRlbXBvcmFyaWx5IHVuYXZhaWxhYmxlAEludmFsaWQgc2VlawBDcm9zcy1kZXZpY2UgbGluawBSZWFkLW9ubHkgZmlsZSBzeXN0ZW0ARGlyZWN0b3J5IG5vdCBlbXB0eQBDb25uZWN0aW9uIHJlc2V0IGJ5IHBlZXIAT3BlcmF0aW9uIHRpbWVkIG91dABDb25uZWN0aW9uIHJlZnVzZWQASG9zdCBpcyBkb3duAEhvc3QgaXMgdW5yZWFjaGFibGUAQWRkcmVzcyBpbiB1c2UAQnJva2VuIHBpcGUASS9PIGVycm9yAE5vIHN1Y2ggZGV2aWNlIG9yIGFkZHJlc3MAQmxvY2sgZGV2aWNlIHJlcXVpcmVkAE5vIHN1Y2ggZGV2aWNlAE5vdCBhIGRpcmVjdG9yeQBJcyBhIGRpcmVjdG9yeQBUZXh0IGZpbGUgYnVzeQBFeGVjIGZvcm1hdCBlcnJvcgBJbnZhbGlkIGFyZ3VtZW50AEFyZ3VtZW50IGxpc3QgdG9vIGxvbmcAU3ltYm9saWMgbGluayBsb29wAEZpbGVuYW1lIHRvbyBsb25nAFRvbyBtYW55IG9wZW4gZmlsZXMgaW4gc3lzdGVtAE5vIGZpbGUgZGVzY3JpcHRvcnMgYXZhaWxhYmxlAEJhZCBmaWxlIGRlc2NyaXB0b3IATm8gY2hpbGQgcHJvY2VzcwBCYWQgYWRkcmVzcwBGaWxlIHRvbyBsYXJnZQBUb28gbWFueSBsaW5rcwBObyBsb2NrcyBhdmFpbGFibGUAUmVzb3VyY2UgZGVhZGxvY2sgd291bGQgb2NjdXIAU3RhdGUgbm90IHJlY292ZXJhYmxlAFByZXZpb3VzIG93bmVyIGRpZWQAT3BlcmF0aW9uIGNhbmNlbGVkAEZ1bmN0aW9uIG5vdCBpbXBsZW1lbnRlZABObyBtZXNzYWdlIG9mIGRlc2lyZWQgdHlwZQBJZGVudGlmaWVyIHJlbW92ZWQARGV2aWNlIG5vdCBhIHN0cmVhbQBObyBkYXRhIGF2YWlsYWJsZQBEZXZpY2UgdGltZW91dABPdXQgb2Ygc3RyZWFtcyByZXNvdXJjZXMATGluayBoYXMgYmVlbiBzZXZlcmVkAFByb3RvY29sIGVycm9yAEJhZCBtZXNzYWdlAEZpbGUgZGVzY3JpcHRvciBpbiBiYWQgc3RhdGUATm90IGEgc29ja2V0AERlc3RpbmF0aW9uIGFkZHJlc3MgcmVxdWlyZWQATWVzc2FnZSB0b28gbGFyZ2UAUHJvdG9jb2wgd3JvbmcgdHlwZSBmb3Igc29ja2V0AFByb3RvY29sIG5vdCBhdmFpbGFibGUAUHJvdG9jb2wgbm90IHN1cHBvcnRlZABTb2NrZXQgdHlwZSBub3Qgc3VwcG9ydGVkAE5vdCBzdXBwb3J0ZWQAUHJvdG9jb2wgZmFtaWx5IG5vdCBzdXBwb3J0ZWQAQWRkcmVzcyBmYW1pbHkgbm90IHN1cHBvcnRlZCBieSBwcm90b2NvbABBZGRyZXNzIG5vdCBhdmFpbGFibGUATmV0d29yayBpcyBkb3duAE5ldHdvcmsgdW5yZWFjaGFibGUAQ29ubmVjdGlvbiByZXNldCBieSBuZXR3b3JrAENvbm5lY3Rpb24gYWJvcnRlZABObyBidWZmZXIgc3BhY2UgYXZhaWxhYmxlAFNvY2tldCBpcyBjb25uZWN0ZWQAU29ja2V0IG5vdCBjb25uZWN0ZWQAQ2Fubm90IHNlbmQgYWZ0ZXIgc29ja2V0IHNodXRkb3duAE9wZXJhdGlvbiBhbHJlYWR5IGluIHByb2dyZXNzAE9wZXJhdGlvbiBpbiBwcm9ncmVzcwBTdGFsZSBmaWxlIGhhbmRsZQBSZW1vdGUgSS9PIGVycm9yAFF1b3RhIGV4Y2VlZGVkAE5vIG1lZGl1bSBmb3VuZABXcm9uZyBtZWRpdW0gdHlwZQBObyBlcnJvciBpbmZvcm1hdGlvbgBBkJcBC1JQUFAACgAAAAsAAAAMAAAADQAAAA4AAAAPAAAAEAAAABEAAAASAAAACwAAAAwAAAANAAAADgAAAA8AAAAQAAAAEQAAAAEAAAAIAAAAlEsAALRLAEGQmQELAgxQAEHImQELCR8AAADkTAAAAwBB5JkBC4wBLfRRWM+MscBG9rXLKTEDxwRbcDC0Xf0geH+LmthZKVBoSImrp1YDbP+3zYg/1He0K6WjcPG65Kj8QYP92W/hinovLXSWBx8NCV4Ddixw90ClLKdvV0GoqnTfoFhkA0rHxDxTrq9fGAQVseNtKIarDKS/Q/DpUIE5VxZSN/////////////////////8=";Aj(Hh)||(Hh=xIe(Hh));function ZIe(t){try{if(t==Hh&&TD)return new Uint8Array(TD);var e=JG(t);if(e)return e;if(OD)return OD(t);throw"sync fetching of the wasm failed: you can preload it to Module['wasmBinary'] manually, or emcc.py will do that for you when generating HTML (but not JS)"}catch(r){ur(r)}}function _Ie(t,e){var r,i,n;try{n=ZIe(t),i=new WebAssembly.Module(n),r=new WebAssembly.Instance(i,e)}catch(o){var s=o.toString();throw Wr("failed to compile wasm module: "+s),(s.includes("imported Memory")||s.includes("memory import"))&&Wr("Memory size incompatibility issues may be due to changing INITIAL_MEMORY at runtime to something too large. Use ALLOW_MEMORY_GROWTH to allow any size memory (and also make sure not to set INITIAL_MEMORY at runtime to something smaller than it was at compile time)."),o}return[r,i]}function eEe(){var t={a:$Ie};function e(n,s){var o=n.exports;ne.asm=o,fI=ne.asm.u,rj(fI.buffer),GD=ne.asm.za,VIe(ne.asm.v),JD("wasm-instantiate")}if(oj("wasm-instantiate"),ne.instantiateWasm)try{var r=ne.instantiateWasm(t,e);return r}catch(n){return Wr("Module.instantiateWasm callback failed with error: "+n),!1}var i=_Ie(Hh,t);return e(i[0]),ne.asm}var Pr,$s;function jD(t){for(;t.length>0;){var e=t.shift();if(typeof e=="function"){e(ne);continue}var r=e.func;typeof r=="number"?e.arg===void 0?GD.get(r)():GD.get(r)(e.arg):r(e.arg===void 0?null:e.arg)}}function CI(t,e){var r=new Date(Ye[t>>2]*1e3);Ye[e>>2]=r.getUTCSeconds(),Ye[e+4>>2]=r.getUTCMinutes(),Ye[e+8>>2]=r.getUTCHours(),Ye[e+12>>2]=r.getUTCDate(),Ye[e+16>>2]=r.getUTCMonth(),Ye[e+20>>2]=r.getUTCFullYear()-1900,Ye[e+24>>2]=r.getUTCDay(),Ye[e+36>>2]=0,Ye[e+32>>2]=0;var i=Date.UTC(r.getUTCFullYear(),0,1,0,0,0,0),n=(r.getTime()-i)/(1e3*60*60*24)|0;return Ye[e+28>>2]=n,CI.GMTString||(CI.GMTString=HD("GMT")),Ye[e+40>>2]=CI.GMTString,e}function tEe(t,e){return CI(t,e)}var ut={splitPath:function(t){var e=/^(\/?|)([\s\S]*?)((?:\.{1,2}|[^\/]+?|)(\.[^.\/]*|))(?:[\/]*)$/;return e.exec(t).slice(1)},normalizeArray:function(t,e){for(var r=0,i=t.length-1;i>=0;i--){var n=t[i];n==="."?t.splice(i,1):n===".."?(t.splice(i,1),r++):r&&(t.splice(i,1),r--)}if(e)for(;r;r--)t.unshift("..");return t},normalize:function(t){var e=t.charAt(0)==="/",r=t.substr(-1)==="/";return t=ut.normalizeArray(t.split("/").filter(function(i){return!!i}),!e).join("/"),!t&&!e&&(t="."),t&&r&&(t+="/"),(e?"/":"")+t},dirname:function(t){var e=ut.splitPath(t),r=e[0],i=e[1];return!r&&!i?".":(i&&(i=i.substr(0,i.length-1)),r+i)},basename:function(t){if(t==="/")return"/";t=ut.normalize(t),t=t.replace(/\/$/,"");var e=t.lastIndexOf("/");return e===-1?t:t.substr(e+1)},extname:function(t){return ut.splitPath(t)[3]},join:function(){var t=Array.prototype.slice.call(arguments,0);return ut.normalize(t.join("/"))},join2:function(t,e){return ut.normalize(t+"/"+e)}};function rEe(){if(typeof crypto=="object"&&typeof crypto.getRandomValues=="function"){var t=new Uint8Array(1);return function(){return crypto.getRandomValues(t),t[0]}}else if(BA)try{var e=require("crypto");return function(){return e.randomBytes(1)[0]}}catch(r){}return function(){ur("randomDevice")}}var eo={resolve:function(){for(var t="",e=!1,r=arguments.length-1;r>=-1&&!e;r--){var i=r>=0?arguments[r]:E.cwd();if(typeof i!="string")throw new TypeError("Arguments to path.resolve must be strings");if(!i)return"";t=i+"/"+t,e=i.charAt(0)==="/"}return t=ut.normalizeArray(t.split("/").filter(function(n){return!!n}),!e).join("/"),(e?"/":"")+t||"."},relative:function(t,e){t=eo.resolve(t).substr(1),e=eo.resolve(e).substr(1);function r(c){for(var u=0;u=0&&c[g]==="";g--);return u>g?[]:c.slice(u,g-u+1)}for(var i=r(t.split("/")),n=r(e.split("/")),s=Math.min(i.length,n.length),o=s,a=0;a0?e=i.slice(0,n).toString("utf-8"):e=null}else typeof window!="undefined"&&typeof window.prompt=="function"?(e=window.prompt("Input: "),e!==null&&(e+=` `)):typeof readline=="function"&&(e=readline(),e!==null&&(e+=` -`));if(!e)return null;t.input=Yb(e,!0)}return t.input.shift()},put_char:function(t,e){e===null||e===10?(ih(zl(t.output,0)),t.output=[]):e!=0&&t.output.push(e)},flush:function(t){t.output&&t.output.length>0&&(ih(zl(t.output,0)),t.output=[])}},default_tty1_ops:{put_char:function(t,e){e===null||e===10?(xr(zl(t.output,0)),t.output=[]):e!=0&&t.output.push(e)},flush:function(t){t.output&&t.output.length>0&&(xr(zl(t.output,0)),t.output=[])}}},tt={ops_table:null,mount:function(t){return tt.createNode(null,"/",16384|511,0)},createNode:function(t,e,r,i){if(E.isBlkdev(r)||E.isFIFO(r))throw new E.ErrnoError(63);tt.ops_table||(tt.ops_table={dir:{node:{getattr:tt.node_ops.getattr,setattr:tt.node_ops.setattr,lookup:tt.node_ops.lookup,mknod:tt.node_ops.mknod,rename:tt.node_ops.rename,unlink:tt.node_ops.unlink,rmdir:tt.node_ops.rmdir,readdir:tt.node_ops.readdir,symlink:tt.node_ops.symlink},stream:{llseek:tt.stream_ops.llseek}},file:{node:{getattr:tt.node_ops.getattr,setattr:tt.node_ops.setattr},stream:{llseek:tt.stream_ops.llseek,read:tt.stream_ops.read,write:tt.stream_ops.write,allocate:tt.stream_ops.allocate,mmap:tt.stream_ops.mmap,msync:tt.stream_ops.msync}},link:{node:{getattr:tt.node_ops.getattr,setattr:tt.node_ops.setattr,readlink:tt.node_ops.readlink},stream:{}},chrdev:{node:{getattr:tt.node_ops.getattr,setattr:tt.node_ops.setattr},stream:E.chrdev_stream_ops}});var n=E.createNode(t,e,r,i);return E.isDir(n.mode)?(n.node_ops=tt.ops_table.dir.node,n.stream_ops=tt.ops_table.dir.stream,n.contents={}):E.isFile(n.mode)?(n.node_ops=tt.ops_table.file.node,n.stream_ops=tt.ops_table.file.stream,n.usedBytes=0,n.contents=null):E.isLink(n.mode)?(n.node_ops=tt.ops_table.link.node,n.stream_ops=tt.ops_table.link.stream):E.isChrdev(n.mode)&&(n.node_ops=tt.ops_table.chrdev.node,n.stream_ops=tt.ops_table.chrdev.stream),n.timestamp=Date.now(),t&&(t.contents[e]=n),n},getFileDataAsRegularArray:function(t){if(t.contents&&t.contents.subarray){for(var e=[],r=0;r=e)){var i=1024*1024;e=Math.max(e,r*(r0&&t.contents.set(n.subarray(0,t.usedBytes),0)}},resizeFileStorage:function(t,e){if(t.usedBytes!=e){if(e==0){t.contents=null,t.usedBytes=0;return}if(!t.contents||t.contents.subarray){var r=t.contents;t.contents=new Uint8Array(e),r&&t.contents.set(r.subarray(0,Math.min(e,t.usedBytes))),t.usedBytes=e;return}if(t.contents||(t.contents=[]),t.contents.length>e)t.contents.length=e;else for(;t.contents.length=t.node.usedBytes)return 0;var o=Math.min(t.node.usedBytes-n,i);if(o>8&&s.subarray)e.set(s.subarray(n,n+o),r);else for(var a=0;a0||n+i>2)}catch(r){throw r.code?new E.ErrnoError(Je.convertNodeCode(r)):r}return e.mode},realPath:function(t){for(var e=[];t.parent!==t;)e.push(t.name),t=t.parent;return e.push(t.mount.opts.root),e.reverse(),st.join.apply(null,e)},flagsForNode:function(t){t&=~2097152,t&=~2048,t&=~32768,t&=~524288;var e=0;for(var r in Je.flagsForNodeMap)t&r&&(e|=Je.flagsForNodeMap[r],t^=r);if(t)throw new E.ErrnoError(28);return e},node_ops:{getattr:function(t){var e=Je.realPath(t),r;try{r=et.lstatSync(e)}catch(i){throw i.code?new E.ErrnoError(Je.convertNodeCode(i)):i}return Je.isWindows&&!r.blksize&&(r.blksize=4096),Je.isWindows&&!r.blocks&&(r.blocks=(r.size+r.blksize-1)/r.blksize|0),{dev:r.dev,ino:r.ino,mode:r.mode,nlink:r.nlink,uid:r.uid,gid:r.gid,rdev:r.rdev,size:r.size,atime:r.atime,mtime:r.mtime,ctime:r.ctime,blksize:r.blksize,blocks:r.blocks}},setattr:function(t,e){var r=Je.realPath(t);try{if(e.mode!==void 0&&(et.chmodSync(r,e.mode),t.mode=e.mode),e.timestamp!==void 0){var i=new Date(e.timestamp);et.utimesSync(r,i,i)}e.size!==void 0&&et.truncateSync(r,e.size)}catch(n){throw n.code?new E.ErrnoError(Je.convertNodeCode(n)):n}},lookup:function(t,e){var r=st.join2(Je.realPath(t),e),i=Je.getMode(r);return Je.createNode(t,e,i)},mknod:function(t,e,r,i){var n=Je.createNode(t,e,r,i),s=Je.realPath(n);try{E.isDir(n.mode)?et.mkdirSync(s,n.mode):et.writeFileSync(s,"",{mode:n.mode})}catch(o){throw o.code?new E.ErrnoError(Je.convertNodeCode(o)):o}return n},rename:function(t,e,r){var i=Je.realPath(t),n=st.join2(Je.realPath(e),r);try{et.renameSync(i,n)}catch(s){throw s.code?new E.ErrnoError(Je.convertNodeCode(s)):s}},unlink:function(t,e){var r=st.join2(Je.realPath(t),e);try{et.unlinkSync(r)}catch(i){throw i.code?new E.ErrnoError(Je.convertNodeCode(i)):i}},rmdir:function(t,e){var r=st.join2(Je.realPath(t),e);try{et.rmdirSync(r)}catch(i){throw i.code?new E.ErrnoError(Je.convertNodeCode(i)):i}},readdir:function(t){var e=Je.realPath(t);try{return et.readdirSync(e)}catch(r){throw r.code?new E.ErrnoError(Je.convertNodeCode(r)):r}},symlink:function(t,e,r){var i=st.join2(Je.realPath(t),e);try{et.symlinkSync(r,i)}catch(n){throw n.code?new E.ErrnoError(Je.convertNodeCode(n)):n}},readlink:function(t){var e=Je.realPath(t);try{return e=et.readlinkSync(e),e=jb.relative(jb.resolve(t.mount.opts.root),e),e}catch(r){throw r.code?new E.ErrnoError(Je.convertNodeCode(r)):r}}},stream_ops:{open:function(t){var e=Je.realPath(t.node);try{E.isFile(t.node.mode)&&(t.nfd=et.openSync(e,Je.flagsForNode(t.flags)))}catch(r){throw r.code?new E.ErrnoError(Je.convertNodeCode(r)):r}},close:function(t){try{E.isFile(t.node.mode)&&t.nfd&&et.closeSync(t.nfd)}catch(e){throw e.code?new E.ErrnoError(Je.convertNodeCode(e)):e}},read:function(t,e,r,i,n){if(i===0)return 0;try{return et.readSync(t.nfd,Je.bufferFrom(e.buffer),r,i,n)}catch(s){throw new E.ErrnoError(Je.convertNodeCode(s))}},write:function(t,e,r,i,n){try{return et.writeSync(t.nfd,Je.bufferFrom(e.buffer),r,i,n)}catch(s){throw new E.ErrnoError(Je.convertNodeCode(s))}},llseek:function(t,e,r){var i=e;if(r===1)i+=t.position;else if(r===2&&E.isFile(t.node.mode))try{var n=et.fstatSync(t.nfd);i+=n.size}catch(s){throw new E.ErrnoError(Je.convertNodeCode(s))}if(i<0)throw new E.ErrnoError(28);return i}}},LY={lookupPath:function(t){return{path:t,node:{mode:Je.getMode(t)}}},createStandardStreams:function(){E.streams[0]={fd:0,nfd:0,position:0,path:"",flags:0,tty:!0,seekable:!1};for(var t=1;t<3;t++)E.streams[t]={fd:t,nfd:t,position:0,path:"",flags:577,tty:!0,seekable:!1}},cwd:function(){return process.cwd()},chdir:function(){process.chdir.apply(void 0,arguments)},mknod:function(t,e){E.isDir(t)?et.mkdirSync(t,e):et.writeFileSync(t,"",{mode:e})},mkdir:function(){et.mkdirSync.apply(void 0,arguments)},symlink:function(){et.symlinkSync.apply(void 0,arguments)},rename:function(){et.renameSync.apply(void 0,arguments)},rmdir:function(){et.rmdirSync.apply(void 0,arguments)},readdir:function(){et.readdirSync.apply(void 0,arguments)},unlink:function(){et.unlinkSync.apply(void 0,arguments)},readlink:function(){return et.readlinkSync.apply(void 0,arguments)},stat:function(){return et.statSync.apply(void 0,arguments)},lstat:function(){return et.lstatSync.apply(void 0,arguments)},chmod:function(){et.chmodSync.apply(void 0,arguments)},fchmod:function(){et.fchmodSync.apply(void 0,arguments)},chown:function(){et.chownSync.apply(void 0,arguments)},fchown:function(){et.fchownSync.apply(void 0,arguments)},truncate:function(){et.truncateSync.apply(void 0,arguments)},ftruncate:function(){et.ftruncateSync.apply(void 0,arguments)},utime:function(){et.utimesSync.apply(void 0,arguments)},open:function(t,e,r,i){typeof e=="string"&&(e=ah.modeStringToFlags(e));var n=et.openSync(t,Je.flagsForNode(e),r),s=i!=null?i:E.nextfd(n),o={fd:s,nfd:n,position:0,path:t,flags:e,seekable:!0};return E.streams[s]=o,o},close:function(t){t.stream_ops||et.closeSync(t.nfd),E.closeStream(t.fd)},llseek:function(t,e,r){if(t.stream_ops)return ah.llseek(t,e,r);var i=e;if(r===1)i+=t.position;else if(r===2)i+=et.fstatSync(t.nfd).size;else if(r!==0)throw new E.ErrnoError(eA.EINVAL);if(i<0)throw new E.ErrnoError(eA.EINVAL);return t.position=i,i},read:function(t,e,r,i,n){if(t.stream_ops)return ah.read(t,e,r,i,n);var s=typeof n!="undefined";!s&&t.seekable&&(n=t.position);var o=et.readSync(t.nfd,Je.bufferFrom(e.buffer),r,i,n);return s||(t.position+=o),o},write:function(t,e,r,i,n){if(t.stream_ops)return ah.write(t,e,r,i,n);t.flags&+"1024"&&E.llseek(t,0,+"2");var s=typeof n!="undefined";!s&&t.seekable&&(n=t.position);var o=et.writeSync(t.nfd,Je.bufferFrom(e.buffer),r,i,n);return s||(t.position+=o),o},allocate:function(){throw new E.ErrnoError(eA.EOPNOTSUPP)},mmap:function(){throw new E.ErrnoError(eA.ENODEV)},msync:function(){return 0},munmap:function(){return 0},ioctl:function(){throw new E.ErrnoError(eA.ENOTTY)}},E={root:null,mounts:[],devices:{},streams:[],nextInode:1,nameTable:null,currentPath:"/",initialized:!1,ignorePermissions:!0,trackingDelegate:{},tracking:{openFlags:{READ:1,WRITE:2}},ErrnoError:null,genericErrors:{},filesystems:null,syncFSRequests:0,handleFSError:function(t){if(!(t instanceof E.ErrnoError))throw t+" : "+ame();return bm(t.errno)},lookupPath:function(t,e){if(t=Xn.resolve(E.cwd(),t),e=e||{},!t)return{path:"",node:null};var r={follow_mount:!0,recurse_count:0};for(var i in r)e[i]===void 0&&(e[i]=r[i]);if(e.recurse_count>8)throw new E.ErrnoError(32);for(var n=st.normalizeArray(t.split("/").filter(function(h){return!!h}),!1),s=E.root,o="/",a=0;a40)throw new E.ErrnoError(32)}}return{path:o,node:s}},getPath:function(t){for(var e;;){if(E.isRoot(t)){var r=t.mount.mountpoint;return e?r[r.length-1]!=="/"?r+"/"+e:r+e:r}e=e?t.name+"/"+e:t.name,t=t.parent}},hashName:function(t,e){for(var r=0,i=0;i>>0)%E.nameTable.length},hashAddNode:function(t){var e=E.hashName(t.parent.id,t.name);t.name_next=E.nameTable[e],E.nameTable[e]=t},hashRemoveNode:function(t){var e=E.hashName(t.parent.id,t.name);if(E.nameTable[e]===t)E.nameTable[e]=t.name_next;else for(var r=E.nameTable[e];r;){if(r.name_next===t){r.name_next=t.name_next;break}r=r.name_next}},lookupNode:function(t,e){var r=E.mayLookup(t);if(r)throw new E.ErrnoError(r,t);for(var i=E.hashName(t.id,e),n=E.nameTable[i];n;n=n.name_next){var s=n.name;if(n.parent.id===t.id&&s===e)return n}return E.lookup(t,e)},createNode:function(t,e,r,i){if(!E.FSNode){E.FSNode=function(a,l,c,u){a||(a=this),this.parent=a,this.mount=a.mount,this.mounted=null,this.id=E.nextInode++,this.name=l,this.mode=c,this.node_ops={},this.stream_ops={},this.rdev=u},E.FSNode.prototype={};var n=292|73,s=146;Object.defineProperties(E.FSNode.prototype,{read:{get:function(){return(this.mode&n)===n},set:function(a){a?this.mode|=n:this.mode&=~n}},write:{get:function(){return(this.mode&s)===s},set:function(a){a?this.mode|=s:this.mode&=~s}},isFolder:{get:function(){return E.isDir(this.mode)}},isDevice:{get:function(){return E.isChrdev(this.mode)}}})}var o=new E.FSNode(t,e,r,i);return E.hashAddNode(o),o},destroyNode:function(t){E.hashRemoveNode(t)},isRoot:function(t){return t===t.parent},isMountpoint:function(t){return!!t.mounted},isFile:function(t){return(t&61440)==32768},isDir:function(t){return(t&61440)==16384},isLink:function(t){return(t&61440)==40960},isChrdev:function(t){return(t&61440)==8192},isBlkdev:function(t){return(t&61440)==24576},isFIFO:function(t){return(t&61440)==4096},isSocket:function(t){return(t&49152)==49152},flagModes:{r:0,rs:1052672,"r+":2,w:577,wx:705,xw:705,"w+":578,"wx+":706,"xw+":706,a:1089,ax:1217,xa:1217,"a+":1090,"ax+":1218,"xa+":1218},modeStringToFlags:function(t){var e=E.flagModes[t];if(typeof e=="undefined")throw new Error("Unknown file open mode: "+t);return e},flagsToPermissionString:function(t){var e=["r","w","rw"][t&3];return t&512&&(e+="w"),e},nodePermissions:function(t,e){return E.ignorePermissions?0:e.indexOf("r")!==-1&&!(t.mode&292)||e.indexOf("w")!==-1&&!(t.mode&146)||e.indexOf("x")!==-1&&!(t.mode&73)?2:0},mayLookup:function(t){var e=E.nodePermissions(t,"x");return e||(t.node_ops.lookup?0:2)},mayCreate:function(t,e){try{var r=E.lookupNode(t,e);return 20}catch(i){}return E.nodePermissions(t,"wx")},mayDelete:function(t,e,r){var i;try{i=E.lookupNode(t,e)}catch(s){return s.errno}var n=E.nodePermissions(t,"wx");if(n)return n;if(r){if(!E.isDir(i.mode))return 54;if(E.isRoot(i)||E.getPath(i)===E.cwd())return 10}else if(E.isDir(i.mode))return 31;return 0},mayOpen:function(t,e){return t?E.isLink(t.mode)?32:E.isDir(t.mode)&&(E.flagsToPermissionString(e)!=="r"||e&512)?31:E.nodePermissions(t,E.flagsToPermissionString(e)):44},MAX_OPEN_FDS:4096,nextfd:function(t,e){t=t||0,e=e||E.MAX_OPEN_FDS;for(var r=t;r<=e;r++)if(!E.streams[r])return r;throw new E.ErrnoError(33)},getStream:function(t){return E.streams[t]},createStream:function(t,e,r){E.FSStream||(E.FSStream=function(){},E.FSStream.prototype={},Object.defineProperties(E.FSStream.prototype,{object:{get:function(){return this.node},set:function(o){this.node=o}},isRead:{get:function(){return(this.flags&2097155)!=1}},isWrite:{get:function(){return(this.flags&2097155)!=0}},isAppend:{get:function(){return this.flags&1024}}}));var i=new E.FSStream;for(var n in t)i[n]=t[n];t=i;var s=E.nextfd(e,r);return t.fd=s,E.streams[s]=t,t},closeStream:function(t){E.streams[t]=null},chrdev_stream_ops:{open:function(t){var e=E.getDevice(t.node.rdev);t.stream_ops=e.stream_ops,t.stream_ops.open&&t.stream_ops.open(t)},llseek:function(){throw new E.ErrnoError(70)}},major:function(t){return t>>8},minor:function(t){return t&255},makedev:function(t,e){return t<<8|e},registerDevice:function(t,e){E.devices[t]={stream_ops:e}},getDevice:function(t){return E.devices[t]},getMounts:function(t){for(var e=[],r=[t];r.length;){var i=r.pop();e.push(i),r.push.apply(r,i.mounts)}return e},syncfs:function(t,e){typeof t=="function"&&(e=t,t=!1),E.syncFSRequests++,E.syncFSRequests>1&&xr("warning: "+E.syncFSRequests+" FS.syncfs operations in flight at once, probably just doing extra work");var r=E.getMounts(E.root.mount),i=0;function n(o){return E.syncFSRequests--,e(o)}function s(o){if(o)return s.errored?void 0:(s.errored=!0,n(o));++i>=r.length&&n(null)}r.forEach(function(o){if(!o.type.syncfs)return s(null);o.type.syncfs(o,t,s)})},mount:function(t,e,r){var i=r==="/",n=!r,s;if(i&&E.root)throw new E.ErrnoError(10);if(!i&&!n){var o=E.lookupPath(r,{follow_mount:!1});if(r=o.path,s=o.node,E.isMountpoint(s))throw new E.ErrnoError(10);if(!E.isDir(s.mode))throw new E.ErrnoError(54)}var a={type:t,opts:e,mountpoint:r,mounts:[]},l=t.mount(a);return l.mount=a,a.root=l,i?E.root=l:s&&(s.mounted=a,s.mount&&s.mount.mounts.push(a)),l},unmount:function(t){var e=E.lookupPath(t,{follow_mount:!1});if(!E.isMountpoint(e.node))throw new E.ErrnoError(28);var r=e.node,i=r.mounted,n=E.getMounts(i);Object.keys(E.nameTable).forEach(function(o){for(var a=E.nameTable[o];a;){var l=a.name_next;n.indexOf(a.mount)!==-1&&E.destroyNode(a),a=l}}),r.mounted=null;var s=r.mount.mounts.indexOf(i);r.mount.mounts.splice(s,1)},lookup:function(t,e){return t.node_ops.lookup(t,e)},mknod:function(t,e,r){var i=E.lookupPath(t,{parent:!0}),n=i.node,s=st.basename(t);if(!s||s==="."||s==="..")throw new E.ErrnoError(28);var o=E.mayCreate(n,s);if(o)throw new E.ErrnoError(o);if(!n.node_ops.mknod)throw new E.ErrnoError(63);return n.node_ops.mknod(n,s,e,r)},create:function(t,e){return e=e!==void 0?e:438,e&=4095,e|=32768,E.mknod(t,e,0)},mkdir:function(t,e){return e=e!==void 0?e:511,e&=511|512,e|=16384,E.mknod(t,e,0)},mkdirTree:function(t,e){for(var r=t.split("/"),i="",n=0;nthis.length-1||h<0)){var f=h%this.chunkSize,p=h/this.chunkSize|0;return this.getter(p)[f]}},s.prototype.setDataGetter=function(h){this.getter=h},s.prototype.cacheLength=function(){var h=new XMLHttpRequest;if(h.open("HEAD",r,!1),h.send(null),!(h.status>=200&&h.status<300||h.status===304))throw new Error("Couldn't load "+r+". Status: "+h.status);var f=Number(h.getResponseHeader("Content-length")),p,m=(p=h.getResponseHeader("Accept-Ranges"))&&p==="bytes",I=(p=h.getResponseHeader("Content-Encoding"))&&p==="gzip",y=1024*1024;m||(y=f);var B=function(k,N){if(k>N)throw new Error("invalid range ("+k+", "+N+") or no bytes requested!");if(N>f-1)throw new Error("only "+f+" bytes available! programmer error!");var O=new XMLHttpRequest;if(O.open("GET",r,!1),f!==y&&O.setRequestHeader("Range","bytes="+k+"-"+N),typeof Uint8Array!="undefined"&&(O.responseType="arraybuffer"),O.overrideMimeType&&O.overrideMimeType("text/plain; charset=x-user-defined"),O.send(null),!(O.status>=200&&O.status<300||O.status===304))throw new Error("Couldn't load "+r+". Status: "+O.status);return O.response!==void 0?new Uint8Array(O.response||[]):Yb(O.responseText||"",!0)},P=this;P.setDataGetter(function(k){var N=k*y,O=(k+1)*y-1;if(O=Math.min(O,f-1),typeof P.chunks[k]=="undefined"&&(P.chunks[k]=B(N,O)),typeof P.chunks[k]=="undefined")throw new Error("doXHR failed!");return P.chunks[k]}),(I||!f)&&(y=f=1,f=this.getter(0).length,y=f,ih("LazyFiles on gzip forces download of the whole file when length is accessed")),this._length=f,this._chunkSize=y,this.lengthKnown=!0},typeof XMLHttpRequest!="undefined"){if(!fY)throw"Cannot do synchronous binary XHRs outside webworkers in modern browsers. Use --embed-file or --preload-file in emcc";var o=new s;Object.defineProperties(o,{length:{get:function(){return this.lengthKnown||this.cacheLength(),this._length}},chunkSize:{get:function(){return this.lengthKnown||this.cacheLength(),this._chunkSize}}});var a={isDevice:!1,contents:o}}else var a={isDevice:!1,url:r};var l=E.createFile(t,e,a,i,n);a.contents?l.contents=a.contents:a.url&&(l.contents=null,l.url=a.url),Object.defineProperties(l,{usedBytes:{get:function(){return this.contents.length}}});var c={},u=Object.keys(l.stream_ops);return u.forEach(function(g){var h=l.stream_ops[g];c[g]=function(){if(!E.forceLoadFile(l))throw new E.ErrnoError(29);return h.apply(null,arguments)}}),c.read=function(h,f,p,m,I){if(!E.forceLoadFile(l))throw new E.ErrnoError(29);var y=h.node.contents;if(I>=y.length)return 0;var B=Math.min(y.length-I,m);if(y.slice)for(var P=0;P>2]=i.dev,Ne[r+4>>2]=0,Ne[r+8>>2]=i.ino,Ne[r+12>>2]=i.mode,Ne[r+16>>2]=i.nlink,Ne[r+20>>2]=i.uid,Ne[r+24>>2]=i.gid,Ne[r+28>>2]=i.rdev,Ne[r+32>>2]=0,Ns=[i.size>>>0,(wr=i.size,+Mb(wr)>=1?wr>0?(Tb(+Ob(wr/4294967296),4294967295)|0)>>>0:~~+Nb((wr-+(~~wr>>>0))/4294967296)>>>0:0)],Ne[r+40>>2]=Ns[0],Ne[r+44>>2]=Ns[1],Ne[r+48>>2]=4096,Ne[r+52>>2]=i.blocks,Ne[r+56>>2]=i.atime.getTime()/1e3|0,Ne[r+60>>2]=0,Ne[r+64>>2]=i.mtime.getTime()/1e3|0,Ne[r+68>>2]=0,Ne[r+72>>2]=i.ctime.getTime()/1e3|0,Ne[r+76>>2]=0,Ns=[i.ino>>>0,(wr=i.ino,+Mb(wr)>=1?wr>0?(Tb(+Ob(wr/4294967296),4294967295)|0)>>>0:~~+Nb((wr-+(~~wr>>>0))/4294967296)>>>0:0)],Ne[r+80>>2]=Ns[0],Ne[r+84>>2]=Ns[1],0},doMsync:function(t,e,r,i,n){var s=_a.slice(t,t+r);E.msync(e,s,n,r,i)},doMkdir:function(t,e){return t=st.normalize(t),t[t.length-1]==="/"&&(t=t.substr(0,t.length-1)),E.mkdir(t,e,0),0},doMknod:function(t,e,r){switch(e&61440){case 32768:case 8192:case 24576:case 4096:case 49152:break;default:return-28}return E.mknod(t,e,r),0},doReadlink:function(t,e,r){if(r<=0)return-28;var i=E.readlink(t),n=Math.min(r,wm(i)),s=mi[e+n];return Lb(i,e,r+1),mi[e+n]=s,n},doAccess:function(t,e){if(e&~7)return-28;var r,i=E.lookupPath(t,{follow:!0});if(r=i.node,!r)return-44;var n="";return e&4&&(n+="r"),e&2&&(n+="w"),e&1&&(n+="x"),n&&E.nodePermissions(r,n)?-2:0},doDup:function(t,e,r){var i=E.getStream(r);return i&&E.close(i),E.open(t,e,0,r,r).fd},doReadv:function(t,e,r,i){for(var n=0,s=0;s>2],a=Ne[e+(s*8+4)>>2],l=E.read(t,mi,o,a,i);if(l<0)return-1;if(n+=l,l>2],a=Ne[e+(s*8+4)>>2],l=E.write(t,mi,o,a,i);if(l<0)return-1;n+=l}return n},varargs:0,get:function(t){qe.varargs+=4;var e=Ne[qe.varargs-4>>2];return e},getStr:function(){var t=BY(qe.get());return t},getStreamFromFD:function(t){t===void 0&&(t=qe.get());var e=E.getStream(t);if(!e)throw new E.ErrnoError(8);return e},get64:function(){var t=qe.get(),e=qe.get();return t},getZero:function(){qe.get()}};function lme(t,e){qe.varargs=e;try{var r=qe.getStr();return E.unlink(r),0}catch(i){return(typeof E=="undefined"||!(i instanceof E.ErrnoError))&&or(i),-i.errno}}function cme(t,e){qe.varargs=e;try{var r=qe.getStr(),i=qe.get();return E.chmod(r,i),0}catch(n){return(typeof E=="undefined"||!(n instanceof E.ErrnoError))&&or(n),-n.errno}}function ume(t,e){qe.varargs=e;try{var r=qe.getStr(),i=qe.get();return qe.doStat(E.stat,r,i)}catch(n){return(typeof E=="undefined"||!(n instanceof E.ErrnoError))&&or(n),-n.errno}}function gme(t,e){qe.varargs=e;try{var r=qe.getStreamFromFD(),i=qe.get();return qe.doStat(E.stat,r.path,i)}catch(n){return(typeof E=="undefined"||!(n instanceof E.ErrnoError))&&or(n),-n.errno}}function hme(t,e){qe.varargs=e;try{var r=qe.getStreamFromFD(),i=qe.get();switch(i){case 0:{var n=qe.get();if(n<0)return-28;var s;return s=E.open(r.path,r.flags,0,n),s.fd}case 1:case 2:return 0;case 3:return r.flags;case 4:{var n=qe.get();return r.flags|=n,0}case 12:{var n=qe.get(),o=0;return Rb[n+o>>1]=2,0}case 13:case 14:return 0;case 16:case 8:return-28;case 9:return bm(28),-1;default:return-28}}catch(a){return(typeof E=="undefined"||!(a instanceof E.ErrnoError))&&or(a),-a.errno}}function fme(t,e){qe.varargs=e;try{var r=qe.getStreamFromFD(),i=qe.get(),n=qe.get();return E.read(r,mi,i,n)}catch(s){return(typeof E=="undefined"||!(s instanceof E.ErrnoError))&&or(s),-s.errno}}function pme(t,e){qe.varargs=e;try{var r=qe.getStr(),i=qe.getStr();return E.rename(r,i),0}catch(n){return(typeof E=="undefined"||!(n instanceof E.ErrnoError))&&or(n),-n.errno}}function dme(t,e){qe.varargs=e;try{var r=qe.getStr();return E.rmdir(r),0}catch(i){return(typeof E=="undefined"||!(i instanceof E.ErrnoError))&&or(i),-i.errno}}function Cme(t,e){qe.varargs=e;try{var r=qe.getStr(),i=qe.get(),n=qe.get(),s=E.open(r,i,n);return s.fd}catch(o){return(typeof E=="undefined"||!(o instanceof E.ErrnoError))&&or(o),-o.errno}}function mme(t,e){qe.varargs=e;try{var r=qe.getStreamFromFD(),i=qe.get();switch(i){case 21509:case 21505:return r.tty?0:-59;case 21510:case 21511:case 21512:case 21506:case 21507:case 21508:return r.tty?0:-59;case 21519:{if(!r.tty)return-59;var n=qe.get();return Ne[n>>2]=0,0}case 21520:return r.tty?-28:-59;case 21531:{var n=qe.get();return E.ioctl(r,i,n)}case 21523:return r.tty?0:-59;case 21524:return r.tty?0:-59;default:or("bad ioctl syscall "+i)}}catch(s){return(typeof E=="undefined"||!(s instanceof E.ErrnoError))&&or(s),-s.errno}}function Ime(){}function Eme(){return _a.length}function yme(t,e,r){_a.set(_a.subarray(e,e+r),t)}function Bme(t){try{return Za.grow(t-nh.byteLength+65535>>16),SY(Za.buffer),1}catch(e){}}function wme(t){var e=Eme(),r=65536,i=2147483648-r;if(t>i)return!1;for(var n=16777216,s=1;s<=4;s*=2){var o=e*(1+.2/s);o=Math.min(o,t+100663296);var a=Math.min(i,UCe(Math.max(n,t,o),r)),l=Bme(a);if(l)return!0}return!1}function Qme(t){try{var e=qe.getStreamFromFD(t);return E.close(e),0}catch(r){return(typeof E=="undefined"||!(r instanceof E.ErrnoError))&&or(r),r.errno}}function bme(t,e){try{var r=qe.getStreamFromFD(t),i=r.tty?2:E.isDir(r.mode)?3:E.isLink(r.mode)?7:4;return mi[e>>0]=i,0}catch(n){return(typeof E=="undefined"||!(n instanceof E.ErrnoError))&&or(n),n.errno}}function Dme(t,e,r,i){try{var n=qe.getStreamFromFD(t),s=qe.doReadv(n,e,r);return Ne[i>>2]=s,0}catch(o){return(typeof E=="undefined"||!(o instanceof E.ErrnoError))&&or(o),o.errno}}function Sme(t,e,r,i,n){try{var s=qe.getStreamFromFD(t),o=4294967296,a=r*o+(e>>>0),l=9007199254740992;return a<=-l||a>=l?-61:(E.llseek(s,a,i),Ns=[s.position>>>0,(wr=s.position,+Mb(wr)>=1?wr>0?(Tb(+Ob(wr/4294967296),4294967295)|0)>>>0:~~+Nb((wr-+(~~wr>>>0))/4294967296)>>>0:0)],Ne[n>>2]=Ns[0],Ne[n+4>>2]=Ns[1],s.getdents&&a===0&&i===0&&(s.getdents=null),0)}catch(c){return(typeof E=="undefined"||!(c instanceof E.ErrnoError))&&or(c),c.errno}}function Pme(t,e,r,i){try{var n=qe.getStreamFromFD(t),s=qe.doWritev(n,e,r);return Ne[i>>2]=s,0}catch(o){return(typeof E=="undefined"||!(o instanceof E.ErrnoError))&&or(o),o.errno}}var xme=20656,kme=(Lb("GMT",20704,4),20704);function vme(t,e){var r=new Date(Ne[t>>2]*1e3);Ne[e>>2]=r.getUTCSeconds(),Ne[e+4>>2]=r.getUTCMinutes(),Ne[e+8>>2]=r.getUTCHours(),Ne[e+12>>2]=r.getUTCDate(),Ne[e+16>>2]=r.getUTCMonth(),Ne[e+20>>2]=r.getUTCFullYear()-1900,Ne[e+24>>2]=r.getUTCDay(),Ne[e+36>>2]=0,Ne[e+32>>2]=0;var i=Date.UTC(r.getUTCFullYear(),0,1,0,0,0,0),n=(r.getTime()-i)/(1e3*60*60*24)|0;return Ne[e+28>>2]=n,Ne[e+40>>2]=kme,e}function Fme(t){return vme(t,xme)}function Rme(t){kCe(t|0)}function Lme(t){var e=Date.now()/1e3|0;return t&&(Ne[t>>2]=e),e}function Gb(){if(Gb.called)return;Gb.called=!0,Ne[Nme()>>2]=new Date().getTimezoneOffset()*60;var t=new Date().getFullYear(),e=new Date(t,0,1),r=new Date(t,6,1);Ne[Mme()>>2]=Number(e.getTimezoneOffset()!=r.getTimezoneOffset());function i(l){var c=l.toTimeString().match(/\(([A-Za-z ]+)\)$/);return c?c[1]:"GMT"}var n=i(e),s=i(r),o=DY(n),a=DY(s);r.getTimezoneOffset()>2]=o,Ne[Dm()+4>>2]=a):(Ne[Dm()>>2]=a,Ne[Dm()+4>>2]=o)}function Ome(t){Gb();var e=Date.UTC(Ne[t+20>>2]+1900,Ne[t+16>>2],Ne[t+12>>2],Ne[t+8>>2],Ne[t+4>>2],Ne[t>>2],0),r=new Date(e);Ne[t+24>>2]=r.getUTCDay();var i=Date.UTC(r.getUTCFullYear(),0,1,0,0,0,0),n=(r.getTime()-i)/(1e3*60*60*24)|0;return Ne[t+28>>2]=n,r.getTime()/1e3|0}E.staticInit();Va&&(et=uY,jb=require("path"),Je.staticInit());var et,jb;if(Va){MY=function(t){return function(){try{return t.apply(this,arguments)}catch(e){throw e.code?new E.ErrnoError(eA[e.code]):e}}},ah=Object.assign({},E);for(var NY in LY)E[NY]=MY(LY[NY])}else throw new Error("NODERAWFS is currently only supported on Node.js environment.");var MY,ah;function Yb(t,e,r){var i=r>0?r:wm(t)+1,n=new Array(i),s=Bm(t,n,0,n.length);return e&&(n.length=s),n}var Tme=typeof atob=="function"?atob:function(t){var e="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",r="",i,n,s,o,a,l,c,u=0;t=t.replace(/[^A-Za-z0-9\+\/\=]/g,"");do o=e.indexOf(t.charAt(u++)),a=e.indexOf(t.charAt(u++)),l=e.indexOf(t.charAt(u++)),c=e.indexOf(t.charAt(u++)),i=o<<2|a>>4,n=(a&15)<<4|l>>2,s=(l&3)<<6|c,r=r+String.fromCharCode(i),l!==64&&(r=r+String.fromCharCode(n)),c!==64&&(r=r+String.fromCharCode(s));while(u0||(zCe(),$a>0))return;function e(){Sm||(Sm=!0,!EY&&(XCe(),VCe(),V.onRuntimeInitialized&&V.onRuntimeInitialized(),_Ce()))}V.setStatus?(V.setStatus("Running..."),setTimeout(function(){setTimeout(function(){V.setStatus("")},1),e()},1)):e()}V.run=qb;if(V.preInit)for(typeof V.preInit=="function"&&(V.preInit=[V.preInit]);V.preInit.length>0;)V.preInit.pop()();CY=!0;qb()});var UY=C((Y6e,KY)=>{"use strict";function Ume(t,e){function r(){this.constructor=t}r.prototype=e.prototype,t.prototype=new r}function tA(t,e,r,i){this.message=t,this.expected=e,this.found=r,this.location=i,this.name="SyntaxError",typeof Error.captureStackTrace=="function"&&Error.captureStackTrace(this,tA)}Ume(tA,Error);tA.buildMessage=function(t,e){var r={literal:function(c){return'"'+n(c.text)+'"'},class:function(c){var u="",g;for(g=0;g0){for(g=1,h=1;g>",W=ut(">>",!1),ie=">&",ae=ut(">&",!1),me=">",ot=ut(">",!1),ct="<<<",wt=ut("<<<",!1),In="<&",li=ut("<&",!1),Jt="<",Yi=ut("<",!1),Tn=function(d){return{type:"argument",segments:[].concat(...d)}},Ca=function(d){return d},xu="'",lo=ut("'",!1),nd=function(d){return[{type:"text",text:d}]},sd='"',od=ut('"',!1),ku=function(d){return d},_y=function(d){return{type:"arithmetic",arithmetic:d,quoted:!0}},$y=function(d){return{type:"shell",shell:d,quoted:!0}},ad=function(d){return{type:"variable",...d,quoted:!0}},Ad=function(d){return{type:"text",text:d}},eB=function(d){return{type:"arithmetic",arithmetic:d,quoted:!1}},ld=function(d){return{type:"shell",shell:d,quoted:!1}},tB=function(d){return{type:"variable",...d,quoted:!1}},rB=function(d){return{type:"glob",pattern:d}},ds="\\",co=ut("\\",!1),ji=ms(),Pi=function(d){return d},cd=/^[^']/,ud=Rr(["'"],!0,!1),ma=function(d){return d.join("")},gd=/^[^$"]/,hd=Rr(["$",'"'],!0,!1),il="-",vu=ut("-",!1),Fu="+",nl=ut("+",!1),uo=/^[0-9]/,go=Rr([["0","9"]],!1,!1),iB=".",nB=ut(".",!1),sB=function(d,Q,x){return{type:"number",value:(d==="-"?-1:1)*parseFloat(Q.join("")+"."+x.join(""))}},fd=function(d,Q){return{type:"number",value:(d==="-"?-1:1)*parseInt(Q.join(""))}},pd=function(d){return{type:"variable",...d}},oB=function(d){return{type:"variable",name:d}},dd=function(d){return d},Cd="*",md=ut("*",!1),aB=function(d,Q){return{type:"multiplication",left:d,right:Q}},AB="/",lB=ut("/",!1),cB=function(d,Q){return{type:"division",left:d,right:Q}},uB=function(d,Q){return{type:"addition",left:d,right:Q}},L=function(d,Q){return{type:"subtraction",left:d,right:Q}},_e="$((",sl=ut("$((",!1),xi="))",Ru=ut("))",!1),Fe=function(d){return d},Ia="$(",Id=ut("$(",!1),sR=function(d){return d},Ea="${",Ed=ut("${",!1),vt=":-",Kn=ut(":-",!1),gB=function(d,Q){return{name:d,defaultValue:Q}},yd=":-}",ho=ut(":-}",!1),Bd=function(d){return{name:d,defaultValue:[]}},fo=function(d){return{name:d}},Ye="$",hB=ut("$",!1),wd=function(d){return e.isGlobPattern(d)},Qd=function(d){return d},bd=/^[a-zA-Z0-9_]/,Lu=Rr([["a","z"],["A","Z"],["0","9"],"_"],!1,!1),Mu=function(){return pB()},Nu=/^[$@*?#a-zA-Z0-9_\-]/,ya=Rr(["$","@","*","?","#",["a","z"],["A","Z"],["0","9"],"_","-"],!1,!1),Ba=/^[(){}<>$|&; \t"']/,fB=Rr(["(",")","{","}","<",">","$","|","&",";"," "," ",'"',"'"],!1,!1),Dd=/^[<>&; \t"']/,Sd=Rr(["<",">","&",";"," "," ",'"',"'"],!1,!1),Pd=/^[ \t]/,po=Rr([" "," "],!1,!1),D=0,xe=0,wa=[{line:1,column:1}],ci=0,ol=[],ye=0,Cs;if("startRule"in e){if(!(e.startRule in i))throw new Error(`Can't start parsing from rule "`+e.startRule+'".');n=i[e.startRule]}function pB(){return t.substring(xe,D)}function dB(){return M(xe,D)}function Ou(d,Q){throw Q=Q!==void 0?Q:M(xe,D),ge([al(d)],t.substring(xe,D),Q)}function lr(d,Q){throw Q=Q!==void 0?Q:M(xe,D),de(d,Q)}function ut(d,Q){return{type:"literal",text:d,ignoreCase:Q}}function Rr(d,Q,x){return{type:"class",parts:d,inverted:Q,ignoreCase:x}}function ms(){return{type:"any"}}function xd(){return{type:"end"}}function al(d){return{type:"other",description:d}}function S(d){var Q=wa[d],x;if(Q)return Q;for(x=d-1;!wa[x];)x--;for(Q=wa[x],Q={line:Q.line,column:Q.column};xci&&(ci=D,ol=[]),ol.push(d))}function de(d,Q){return new tA(d,null,null,Q)}function ge(d,Q,x){return new tA(tA.buildMessage(d,Q),d,Q,x)}function ve(){var d,Q;return d=D,Q=Ze(),Q===r&&(Q=null),Q!==r&&(xe=d,Q=s(Q)),d=Q,d}function Ze(){var d,Q,x,K,_;if(d=D,Q=CB(),Q!==r){for(x=[],K=Ie();K!==r;)x.push(K),K=Ie();x!==r?(K=Is(),K!==r?(_=Ft(),_===r&&(_=null),_!==r?(xe=d,Q=o(Q,K,_),d=Q):(D=d,d=r)):(D=d,d=r)):(D=d,d=r)}else D=d,d=r;if(d===r)if(d=D,Q=CB(),Q!==r){for(x=[],K=Ie();K!==r;)x.push(K),K=Ie();x!==r?(K=Is(),K===r&&(K=null),K!==r?(xe=d,Q=a(Q,K),d=Q):(D=d,d=r)):(D=d,d=r)}else D=d,d=r;return d}function Ft(){var d,Q,x,K,_;for(d=D,Q=[],x=Ie();x!==r;)Q.push(x),x=Ie();if(Q!==r)if(x=Ze(),x!==r){for(K=[],_=Ie();_!==r;)K.push(_),_=Ie();K!==r?(xe=d,Q=l(x),d=Q):(D=d,d=r)}else D=d,d=r;else D=d,d=r;return d}function Is(){var d;return t.charCodeAt(D)===59?(d=c,D++):(d=r,ye===0&&H(u)),d===r&&(t.charCodeAt(D)===38?(d=g,D++):(d=r,ye===0&&H(h))),d}function CB(){var d,Q,x;return d=D,Q=oR(),Q!==r?(x=Vne(),x===r&&(x=null),x!==r?(xe=d,Q=f(Q,x),d=Q):(D=d,d=r)):(D=d,d=r),d}function Vne(){var d,Q,x,K,_,Be,Qt;for(d=D,Q=[],x=Ie();x!==r;)Q.push(x),x=Ie();if(Q!==r)if(x=Zne(),x!==r){for(K=[],_=Ie();_!==r;)K.push(_),_=Ie();if(K!==r)if(_=CB(),_!==r){for(Be=[],Qt=Ie();Qt!==r;)Be.push(Qt),Qt=Ie();Be!==r?(xe=d,Q=p(x,_),d=Q):(D=d,d=r)}else D=d,d=r;else D=d,d=r}else D=d,d=r;else D=d,d=r;return d}function Zne(){var d;return t.substr(D,2)===m?(d=m,D+=2):(d=r,ye===0&&H(I)),d===r&&(t.substr(D,2)===y?(d=y,D+=2):(d=r,ye===0&&H(B))),d}function oR(){var d,Q,x;return d=D,Q=ese(),Q!==r?(x=_ne(),x===r&&(x=null),x!==r?(xe=d,Q=P(Q,x),d=Q):(D=d,d=r)):(D=d,d=r),d}function _ne(){var d,Q,x,K,_,Be,Qt;for(d=D,Q=[],x=Ie();x!==r;)Q.push(x),x=Ie();if(Q!==r)if(x=$ne(),x!==r){for(K=[],_=Ie();_!==r;)K.push(_),_=Ie();if(K!==r)if(_=oR(),_!==r){for(Be=[],Qt=Ie();Qt!==r;)Be.push(Qt),Qt=Ie();Be!==r?(xe=d,Q=k(x,_),d=Q):(D=d,d=r)}else D=d,d=r;else D=d,d=r}else D=d,d=r;else D=d,d=r;return d}function $ne(){var d;return t.substr(D,2)===N?(d=N,D+=2):(d=r,ye===0&&H(O)),d===r&&(t.charCodeAt(D)===124?(d=v,D++):(d=r,ye===0&&H(U))),d}function kd(){var d,Q,x,K,_,Be;if(d=D,Q=fR(),Q!==r)if(t.charCodeAt(D)===61?(x=re,D++):(x=r,ye===0&&H(F)),x!==r)if(K=AR(),K!==r){for(_=[],Be=Ie();Be!==r;)_.push(Be),Be=Ie();_!==r?(xe=d,Q=A(Q,K),d=Q):(D=d,d=r)}else D=d,d=r;else D=d,d=r;else D=d,d=r;if(d===r)if(d=D,Q=fR(),Q!==r)if(t.charCodeAt(D)===61?(x=re,D++):(x=r,ye===0&&H(F)),x!==r){for(K=[],_=Ie();_!==r;)K.push(_),_=Ie();K!==r?(xe=d,Q=q(Q),d=Q):(D=d,d=r)}else D=d,d=r;else D=d,d=r;return d}function ese(){var d,Q,x,K,_,Be,Qt,Al,Lr,ui,Co;for(d=D,Q=[],x=Ie();x!==r;)Q.push(x),x=Ie();if(Q!==r)if(t.charCodeAt(D)===40?(x=Z,D++):(x=r,ye===0&&H($)),x!==r){for(K=[],_=Ie();_!==r;)K.push(_),_=Ie();if(K!==r)if(_=Ze(),_!==r){for(Be=[],Qt=Ie();Qt!==r;)Be.push(Qt),Qt=Ie();if(Be!==r)if(t.charCodeAt(D)===41?(Qt=T,D++):(Qt=r,ye===0&&H(G)),Qt!==r){for(Al=[],Lr=Ie();Lr!==r;)Al.push(Lr),Lr=Ie();if(Al!==r){for(Lr=[],ui=Tu();ui!==r;)Lr.push(ui),ui=Tu();if(Lr!==r){for(ui=[],Co=Ie();Co!==r;)ui.push(Co),Co=Ie();ui!==r?(xe=d,Q=Qe(_,Lr),d=Q):(D=d,d=r)}else D=d,d=r}else D=d,d=r}else D=d,d=r;else D=d,d=r}else D=d,d=r;else D=d,d=r}else D=d,d=r;else D=d,d=r;if(d===r){for(d=D,Q=[],x=Ie();x!==r;)Q.push(x),x=Ie();if(Q!==r)if(t.charCodeAt(D)===123?(x=Pe,D++):(x=r,ye===0&&H(He)),x!==r){for(K=[],_=Ie();_!==r;)K.push(_),_=Ie();if(K!==r)if(_=Ze(),_!==r){for(Be=[],Qt=Ie();Qt!==r;)Be.push(Qt),Qt=Ie();if(Be!==r)if(t.charCodeAt(D)===125?(Qt=Re,D++):(Qt=r,ye===0&&H(ee)),Qt!==r){for(Al=[],Lr=Ie();Lr!==r;)Al.push(Lr),Lr=Ie();if(Al!==r){for(Lr=[],ui=Tu();ui!==r;)Lr.push(ui),ui=Tu();if(Lr!==r){for(ui=[],Co=Ie();Co!==r;)ui.push(Co),Co=Ie();ui!==r?(xe=d,Q=ne(_,Lr),d=Q):(D=d,d=r)}else D=d,d=r}else D=d,d=r}else D=d,d=r;else D=d,d=r}else D=d,d=r;else D=d,d=r}else D=d,d=r;else D=d,d=r;if(d===r){for(d=D,Q=[],x=Ie();x!==r;)Q.push(x),x=Ie();if(Q!==r){for(x=[],K=kd();K!==r;)x.push(K),K=kd();if(x!==r){for(K=[],_=Ie();_!==r;)K.push(_),_=Ie();if(K!==r){if(_=[],Be=aR(),Be!==r)for(;Be!==r;)_.push(Be),Be=aR();else _=r;if(_!==r){for(Be=[],Qt=Ie();Qt!==r;)Be.push(Qt),Qt=Ie();Be!==r?(xe=d,Q=Ee(x,_),d=Q):(D=d,d=r)}else D=d,d=r}else D=d,d=r}else D=d,d=r}else D=d,d=r;if(d===r){for(d=D,Q=[],x=Ie();x!==r;)Q.push(x),x=Ie();if(Q!==r){if(x=[],K=kd(),K!==r)for(;K!==r;)x.push(K),K=kd();else x=r;if(x!==r){for(K=[],_=Ie();_!==r;)K.push(_),_=Ie();K!==r?(xe=d,Q=le(x),d=Q):(D=d,d=r)}else D=d,d=r}else D=d,d=r}}}return d}function tse(){var d,Q,x,K,_;for(d=D,Q=[],x=Ie();x!==r;)Q.push(x),x=Ie();if(Q!==r){if(x=[],K=vd(),K!==r)for(;K!==r;)x.push(K),K=vd();else x=r;if(x!==r){for(K=[],_=Ie();_!==r;)K.push(_),_=Ie();K!==r?(xe=d,Q=fe(x),d=Q):(D=d,d=r)}else D=d,d=r}else D=d,d=r;return d}function aR(){var d,Q,x;for(d=D,Q=[],x=Ie();x!==r;)Q.push(x),x=Ie();if(Q!==r?(x=Tu(),x!==r?(xe=d,Q=ue(x),d=Q):(D=d,d=r)):(D=d,d=r),d===r){for(d=D,Q=[],x=Ie();x!==r;)Q.push(x),x=Ie();Q!==r?(x=vd(),x!==r?(xe=d,Q=ue(x),d=Q):(D=d,d=r)):(D=d,d=r)}return d}function Tu(){var d,Q,x,K;for(d=D,Q=[],x=Ie();x!==r;)Q.push(x),x=Ie();return Q!==r?(x=rse(),x!==r?(K=vd(),K!==r?(xe=d,Q=De(x,K),d=Q):(D=d,d=r)):(D=d,d=r)):(D=d,d=r),d}function rse(){var d;return t.substr(D,2)===z?(d=z,D+=2):(d=r,ye===0&&H(W)),d===r&&(t.substr(D,2)===ie?(d=ie,D+=2):(d=r,ye===0&&H(ae)),d===r&&(t.charCodeAt(D)===62?(d=me,D++):(d=r,ye===0&&H(ot)),d===r&&(t.substr(D,3)===ct?(d=ct,D+=3):(d=r,ye===0&&H(wt)),d===r&&(t.substr(D,2)===In?(d=In,D+=2):(d=r,ye===0&&H(li)),d===r&&(t.charCodeAt(D)===60?(d=Jt,D++):(d=r,ye===0&&H(Yi))))))),d}function vd(){var d,Q,x;for(d=D,Q=[],x=Ie();x!==r;)Q.push(x),x=Ie();return Q!==r?(x=AR(),x!==r?(xe=d,Q=ue(x),d=Q):(D=d,d=r)):(D=d,d=r),d}function AR(){var d,Q,x;if(d=D,Q=[],x=lR(),x!==r)for(;x!==r;)Q.push(x),x=lR();else Q=r;return Q!==r&&(xe=d,Q=Tn(Q)),d=Q,d}function lR(){var d,Q;return d=D,Q=ise(),Q!==r&&(xe=d,Q=Ca(Q)),d=Q,d===r&&(d=D,Q=nse(),Q!==r&&(xe=d,Q=Ca(Q)),d=Q,d===r&&(d=D,Q=sse(),Q!==r&&(xe=d,Q=Ca(Q)),d=Q)),d}function ise(){var d,Q,x,K;return d=D,t.charCodeAt(D)===39?(Q=xu,D++):(Q=r,ye===0&&H(lo)),Q!==r?(x=ose(),x!==r?(t.charCodeAt(D)===39?(K=xu,D++):(K=r,ye===0&&H(lo)),K!==r?(xe=d,Q=nd(x),d=Q):(D=d,d=r)):(D=d,d=r)):(D=d,d=r),d}function nse(){var d,Q,x,K;if(d=D,t.charCodeAt(D)===34?(Q=sd,D++):(Q=r,ye===0&&H(od)),Q!==r){for(x=[],K=cR();K!==r;)x.push(K),K=cR();x!==r?(t.charCodeAt(D)===34?(K=sd,D++):(K=r,ye===0&&H(od)),K!==r?(xe=d,Q=ku(x),d=Q):(D=d,d=r)):(D=d,d=r)}else D=d,d=r;return d}function sse(){var d,Q,x;if(d=D,Q=[],x=uR(),x!==r)for(;x!==r;)Q.push(x),x=uR();else Q=r;return Q!==r&&(xe=d,Q=ku(Q)),d=Q,d}function cR(){var d,Q;return d=D,Q=gR(),Q!==r&&(xe=d,Q=_y(Q)),d=Q,d===r&&(d=D,Q=hR(),Q!==r&&(xe=d,Q=$y(Q)),d=Q,d===r&&(d=D,Q=IB(),Q!==r&&(xe=d,Q=ad(Q)),d=Q,d===r&&(d=D,Q=ase(),Q!==r&&(xe=d,Q=Ad(Q)),d=Q))),d}function uR(){var d,Q;return d=D,Q=gR(),Q!==r&&(xe=d,Q=eB(Q)),d=Q,d===r&&(d=D,Q=hR(),Q!==r&&(xe=d,Q=ld(Q)),d=Q,d===r&&(d=D,Q=IB(),Q!==r&&(xe=d,Q=tB(Q)),d=Q,d===r&&(d=D,Q=lse(),Q!==r&&(xe=d,Q=rB(Q)),d=Q,d===r&&(d=D,Q=Ase(),Q!==r&&(xe=d,Q=Ad(Q)),d=Q)))),d}function ose(){var d,Q,x,K,_;for(d=D,Q=[],x=D,t.charCodeAt(D)===92?(K=ds,D++):(K=r,ye===0&&H(co)),K!==r?(t.length>D?(_=t.charAt(D),D++):(_=r,ye===0&&H(ji)),_!==r?(xe=x,K=Pi(_),x=K):(D=x,x=r)):(D=x,x=r),x===r&&(cd.test(t.charAt(D))?(x=t.charAt(D),D++):(x=r,ye===0&&H(ud)));x!==r;)Q.push(x),x=D,t.charCodeAt(D)===92?(K=ds,D++):(K=r,ye===0&&H(co)),K!==r?(t.length>D?(_=t.charAt(D),D++):(_=r,ye===0&&H(ji)),_!==r?(xe=x,K=Pi(_),x=K):(D=x,x=r)):(D=x,x=r),x===r&&(cd.test(t.charAt(D))?(x=t.charAt(D),D++):(x=r,ye===0&&H(ud)));return Q!==r&&(xe=d,Q=ma(Q)),d=Q,d}function ase(){var d,Q,x,K,_;if(d=D,Q=[],x=D,t.charCodeAt(D)===92?(K=ds,D++):(K=r,ye===0&&H(co)),K!==r?(t.length>D?(_=t.charAt(D),D++):(_=r,ye===0&&H(ji)),_!==r?(xe=x,K=Pi(_),x=K):(D=x,x=r)):(D=x,x=r),x===r&&(gd.test(t.charAt(D))?(x=t.charAt(D),D++):(x=r,ye===0&&H(hd))),x!==r)for(;x!==r;)Q.push(x),x=D,t.charCodeAt(D)===92?(K=ds,D++):(K=r,ye===0&&H(co)),K!==r?(t.length>D?(_=t.charAt(D),D++):(_=r,ye===0&&H(ji)),_!==r?(xe=x,K=Pi(_),x=K):(D=x,x=r)):(D=x,x=r),x===r&&(gd.test(t.charAt(D))?(x=t.charAt(D),D++):(x=r,ye===0&&H(hd)));else Q=r;return Q!==r&&(xe=d,Q=ma(Q)),d=Q,d}function Ase(){var d,Q,x,K,_;if(d=D,Q=[],x=D,t.charCodeAt(D)===92?(K=ds,D++):(K=r,ye===0&&H(co)),K!==r?(t.length>D?(_=t.charAt(D),D++):(_=r,ye===0&&H(ji)),_!==r?(xe=x,K=Pi(_),x=K):(D=x,x=r)):(D=x,x=r),x===r&&(x=D,K=D,ye++,_=pR(),ye--,_===r?K=void 0:(D=K,K=r),K!==r?(t.length>D?(_=t.charAt(D),D++):(_=r,ye===0&&H(ji)),_!==r?(xe=x,K=Pi(_),x=K):(D=x,x=r)):(D=x,x=r)),x!==r)for(;x!==r;)Q.push(x),x=D,t.charCodeAt(D)===92?(K=ds,D++):(K=r,ye===0&&H(co)),K!==r?(t.length>D?(_=t.charAt(D),D++):(_=r,ye===0&&H(ji)),_!==r?(xe=x,K=Pi(_),x=K):(D=x,x=r)):(D=x,x=r),x===r&&(x=D,K=D,ye++,_=pR(),ye--,_===r?K=void 0:(D=K,K=r),K!==r?(t.length>D?(_=t.charAt(D),D++):(_=r,ye===0&&H(ji)),_!==r?(xe=x,K=Pi(_),x=K):(D=x,x=r)):(D=x,x=r));else Q=r;return Q!==r&&(xe=d,Q=ma(Q)),d=Q,d}function mB(){var d,Q,x,K,_,Be;if(d=D,t.charCodeAt(D)===45?(Q=il,D++):(Q=r,ye===0&&H(vu)),Q===r&&(t.charCodeAt(D)===43?(Q=Fu,D++):(Q=r,ye===0&&H(nl))),Q===r&&(Q=null),Q!==r){if(x=[],uo.test(t.charAt(D))?(K=t.charAt(D),D++):(K=r,ye===0&&H(go)),K!==r)for(;K!==r;)x.push(K),uo.test(t.charAt(D))?(K=t.charAt(D),D++):(K=r,ye===0&&H(go));else x=r;if(x!==r)if(t.charCodeAt(D)===46?(K=iB,D++):(K=r,ye===0&&H(nB)),K!==r){if(_=[],uo.test(t.charAt(D))?(Be=t.charAt(D),D++):(Be=r,ye===0&&H(go)),Be!==r)for(;Be!==r;)_.push(Be),uo.test(t.charAt(D))?(Be=t.charAt(D),D++):(Be=r,ye===0&&H(go));else _=r;_!==r?(xe=d,Q=sB(Q,x,_),d=Q):(D=d,d=r)}else D=d,d=r;else D=d,d=r}else D=d,d=r;if(d===r){if(d=D,t.charCodeAt(D)===45?(Q=il,D++):(Q=r,ye===0&&H(vu)),Q===r&&(t.charCodeAt(D)===43?(Q=Fu,D++):(Q=r,ye===0&&H(nl))),Q===r&&(Q=null),Q!==r){if(x=[],uo.test(t.charAt(D))?(K=t.charAt(D),D++):(K=r,ye===0&&H(go)),K!==r)for(;K!==r;)x.push(K),uo.test(t.charAt(D))?(K=t.charAt(D),D++):(K=r,ye===0&&H(go));else x=r;x!==r?(xe=d,Q=fd(Q,x),d=Q):(D=d,d=r)}else D=d,d=r;if(d===r&&(d=D,Q=IB(),Q!==r&&(xe=d,Q=pd(Q)),d=Q,d===r&&(d=D,Q=Uu(),Q!==r&&(xe=d,Q=oB(Q)),d=Q,d===r)))if(d=D,t.charCodeAt(D)===40?(Q=Z,D++):(Q=r,ye===0&&H($)),Q!==r){for(x=[],K=Ie();K!==r;)x.push(K),K=Ie();if(x!==r)if(K=Fd(),K!==r){for(_=[],Be=Ie();Be!==r;)_.push(Be),Be=Ie();_!==r?(t.charCodeAt(D)===41?(Be=T,D++):(Be=r,ye===0&&H(G)),Be!==r?(xe=d,Q=dd(K),d=Q):(D=d,d=r)):(D=d,d=r)}else D=d,d=r;else D=d,d=r}else D=d,d=r}return d}function Ku(){var d,Q,x,K,_,Be;if(d=D,Q=mB(),Q!==r){for(x=[],K=Ie();K!==r;)x.push(K),K=Ie();if(x!==r)if(t.charCodeAt(D)===42?(K=Cd,D++):(K=r,ye===0&&H(md)),K!==r){for(_=[],Be=Ie();Be!==r;)_.push(Be),Be=Ie();_!==r?(Be=Ku(),Be!==r?(xe=d,Q=aB(Q,Be),d=Q):(D=d,d=r)):(D=d,d=r)}else D=d,d=r;else D=d,d=r}else D=d,d=r;if(d===r){if(d=D,Q=mB(),Q!==r){for(x=[],K=Ie();K!==r;)x.push(K),K=Ie();if(x!==r)if(t.charCodeAt(D)===47?(K=AB,D++):(K=r,ye===0&&H(lB)),K!==r){for(_=[],Be=Ie();Be!==r;)_.push(Be),Be=Ie();_!==r?(Be=Ku(),Be!==r?(xe=d,Q=cB(Q,Be),d=Q):(D=d,d=r)):(D=d,d=r)}else D=d,d=r;else D=d,d=r}else D=d,d=r;d===r&&(d=mB())}return d}function Fd(){var d,Q,x,K,_,Be;if(d=D,Q=Ku(),Q!==r){for(x=[],K=Ie();K!==r;)x.push(K),K=Ie();if(x!==r)if(t.charCodeAt(D)===43?(K=Fu,D++):(K=r,ye===0&&H(nl)),K!==r){for(_=[],Be=Ie();Be!==r;)_.push(Be),Be=Ie();_!==r?(Be=Fd(),Be!==r?(xe=d,Q=uB(Q,Be),d=Q):(D=d,d=r)):(D=d,d=r)}else D=d,d=r;else D=d,d=r}else D=d,d=r;if(d===r){if(d=D,Q=Ku(),Q!==r){for(x=[],K=Ie();K!==r;)x.push(K),K=Ie();if(x!==r)if(t.charCodeAt(D)===45?(K=il,D++):(K=r,ye===0&&H(vu)),K!==r){for(_=[],Be=Ie();Be!==r;)_.push(Be),Be=Ie();_!==r?(Be=Fd(),Be!==r?(xe=d,Q=L(Q,Be),d=Q):(D=d,d=r)):(D=d,d=r)}else D=d,d=r;else D=d,d=r}else D=d,d=r;d===r&&(d=Ku())}return d}function gR(){var d,Q,x,K,_,Be;if(d=D,t.substr(D,3)===_e?(Q=_e,D+=3):(Q=r,ye===0&&H(sl)),Q!==r){for(x=[],K=Ie();K!==r;)x.push(K),K=Ie();if(x!==r)if(K=Fd(),K!==r){for(_=[],Be=Ie();Be!==r;)_.push(Be),Be=Ie();_!==r?(t.substr(D,2)===xi?(Be=xi,D+=2):(Be=r,ye===0&&H(Ru)),Be!==r?(xe=d,Q=Fe(K),d=Q):(D=d,d=r)):(D=d,d=r)}else D=d,d=r;else D=d,d=r}else D=d,d=r;return d}function hR(){var d,Q,x,K;return d=D,t.substr(D,2)===Ia?(Q=Ia,D+=2):(Q=r,ye===0&&H(Id)),Q!==r?(x=Ze(),x!==r?(t.charCodeAt(D)===41?(K=T,D++):(K=r,ye===0&&H(G)),K!==r?(xe=d,Q=sR(x),d=Q):(D=d,d=r)):(D=d,d=r)):(D=d,d=r),d}function IB(){var d,Q,x,K,_,Be;return d=D,t.substr(D,2)===Ea?(Q=Ea,D+=2):(Q=r,ye===0&&H(Ed)),Q!==r?(x=Uu(),x!==r?(t.substr(D,2)===vt?(K=vt,D+=2):(K=r,ye===0&&H(Kn)),K!==r?(_=tse(),_!==r?(t.charCodeAt(D)===125?(Be=Re,D++):(Be=r,ye===0&&H(ee)),Be!==r?(xe=d,Q=gB(x,_),d=Q):(D=d,d=r)):(D=d,d=r)):(D=d,d=r)):(D=d,d=r)):(D=d,d=r),d===r&&(d=D,t.substr(D,2)===Ea?(Q=Ea,D+=2):(Q=r,ye===0&&H(Ed)),Q!==r?(x=Uu(),x!==r?(t.substr(D,3)===yd?(K=yd,D+=3):(K=r,ye===0&&H(ho)),K!==r?(xe=d,Q=Bd(x),d=Q):(D=d,d=r)):(D=d,d=r)):(D=d,d=r),d===r&&(d=D,t.substr(D,2)===Ea?(Q=Ea,D+=2):(Q=r,ye===0&&H(Ed)),Q!==r?(x=Uu(),x!==r?(t.charCodeAt(D)===125?(K=Re,D++):(K=r,ye===0&&H(ee)),K!==r?(xe=d,Q=fo(x),d=Q):(D=d,d=r)):(D=d,d=r)):(D=d,d=r),d===r&&(d=D,t.charCodeAt(D)===36?(Q=Ye,D++):(Q=r,ye===0&&H(hB)),Q!==r?(x=Uu(),x!==r?(xe=d,Q=fo(x),d=Q):(D=d,d=r)):(D=d,d=r)))),d}function lse(){var d,Q,x;return d=D,Q=cse(),Q!==r?(xe=D,x=wd(Q),x?x=void 0:x=r,x!==r?(xe=d,Q=Qd(Q),d=Q):(D=d,d=r)):(D=d,d=r),d}function cse(){var d,Q,x,K,_;if(d=D,Q=[],x=D,K=D,ye++,_=dR(),ye--,_===r?K=void 0:(D=K,K=r),K!==r?(t.length>D?(_=t.charAt(D),D++):(_=r,ye===0&&H(ji)),_!==r?(xe=x,K=Pi(_),x=K):(D=x,x=r)):(D=x,x=r),x!==r)for(;x!==r;)Q.push(x),x=D,K=D,ye++,_=dR(),ye--,_===r?K=void 0:(D=K,K=r),K!==r?(t.length>D?(_=t.charAt(D),D++):(_=r,ye===0&&H(ji)),_!==r?(xe=x,K=Pi(_),x=K):(D=x,x=r)):(D=x,x=r);else Q=r;return Q!==r&&(xe=d,Q=ma(Q)),d=Q,d}function fR(){var d,Q,x;if(d=D,Q=[],bd.test(t.charAt(D))?(x=t.charAt(D),D++):(x=r,ye===0&&H(Lu)),x!==r)for(;x!==r;)Q.push(x),bd.test(t.charAt(D))?(x=t.charAt(D),D++):(x=r,ye===0&&H(Lu));else Q=r;return Q!==r&&(xe=d,Q=Mu()),d=Q,d}function Uu(){var d,Q,x;if(d=D,Q=[],Nu.test(t.charAt(D))?(x=t.charAt(D),D++):(x=r,ye===0&&H(ya)),x!==r)for(;x!==r;)Q.push(x),Nu.test(t.charAt(D))?(x=t.charAt(D),D++):(x=r,ye===0&&H(ya));else Q=r;return Q!==r&&(xe=d,Q=Mu()),d=Q,d}function pR(){var d;return Ba.test(t.charAt(D))?(d=t.charAt(D),D++):(d=r,ye===0&&H(fB)),d}function dR(){var d;return Dd.test(t.charAt(D))?(d=t.charAt(D),D++):(d=r,ye===0&&H(Sd)),d}function Ie(){var d,Q;if(d=[],Pd.test(t.charAt(D))?(Q=t.charAt(D),D++):(Q=r,ye===0&&H(po)),Q!==r)for(;Q!==r;)d.push(Q),Pd.test(t.charAt(D))?(Q=t.charAt(D),D++):(Q=r,ye===0&&H(po));else d=r;return d}if(Cs=n(),Cs!==r&&D===t.length)return Cs;throw Cs!==r&&D{"use strict";function Yme(t,e){function r(){this.constructor=t}r.prototype=e.prototype,t.prototype=new r}function rA(t,e,r,i){this.message=t,this.expected=e,this.found=r,this.location=i,this.name="SyntaxError",typeof Error.captureStackTrace=="function"&&Error.captureStackTrace(this,rA)}Yme(rA,Error);rA.buildMessage=function(t,e){var r={literal:function(c){return`"${n(c.text)}"`},class:function(c){var u="",g;for(g=0;g0){for(g=1,h=1;gN&&(N=B,O=[]),O.push(z))}function ee(z,W){return new rA(z,null,null,W)}function ne(z,W,ie){return new rA(rA.buildMessage(z,W),z,W,ie)}function Ee(){var z,W,ie,ae;return z=B,W=le(),W!==r?(t.charCodeAt(B)===47?(ie=s,B++):(ie=r,v===0&&Re(o)),ie!==r?(ae=le(),ae!==r?(P=z,W=a(W,ae),z=W):(B=z,z=r)):(B=z,z=r)):(B=z,z=r),z===r&&(z=B,W=le(),W!==r&&(P=z,W=l(W)),z=W),z}function le(){var z,W,ie,ae;return z=B,W=fe(),W!==r?(t.charCodeAt(B)===64?(ie=c,B++):(ie=r,v===0&&Re(u)),ie!==r?(ae=De(),ae!==r?(P=z,W=g(W,ae),z=W):(B=z,z=r)):(B=z,z=r)):(B=z,z=r),z===r&&(z=B,W=fe(),W!==r&&(P=z,W=h(W)),z=W),z}function fe(){var z,W,ie,ae,me;return z=B,t.charCodeAt(B)===64?(W=c,B++):(W=r,v===0&&Re(u)),W!==r?(ie=ue(),ie!==r?(t.charCodeAt(B)===47?(ae=s,B++):(ae=r,v===0&&Re(o)),ae!==r?(me=ue(),me!==r?(P=z,W=f(),z=W):(B=z,z=r)):(B=z,z=r)):(B=z,z=r)):(B=z,z=r),z===r&&(z=B,W=ue(),W!==r&&(P=z,W=f()),z=W),z}function ue(){var z,W,ie;if(z=B,W=[],p.test(t.charAt(B))?(ie=t.charAt(B),B++):(ie=r,v===0&&Re(m)),ie!==r)for(;ie!==r;)W.push(ie),p.test(t.charAt(B))?(ie=t.charAt(B),B++):(ie=r,v===0&&Re(m));else W=r;return W!==r&&(P=z,W=f()),z=W,z}function De(){var z,W,ie;if(z=B,W=[],I.test(t.charAt(B))?(ie=t.charAt(B),B++):(ie=r,v===0&&Re(y)),ie!==r)for(;ie!==r;)W.push(ie),I.test(t.charAt(B))?(ie=t.charAt(B),B++):(ie=r,v===0&&Re(y));else W=r;return W!==r&&(P=z,W=f()),z=W,z}if(U=n(),U!==r&&B===t.length)return U;throw U!==r&&B{"use strict";function qY(t){return typeof t=="undefined"||t===null}function Gme(t){return typeof t=="object"&&t!==null}function qme(t){return Array.isArray(t)?t:qY(t)?[]:[t]}function Jme(t,e){var r,i,n,s;if(e)for(s=Object.keys(e),r=0,i=s.length;r{"use strict";function lh(t,e){Error.call(this),this.name="YAMLException",this.reason=t,this.mark=e,this.message=(this.reason||"(unknown reason)")+(this.mark?" "+this.mark.toString():""),Error.captureStackTrace?Error.captureStackTrace(this,this.constructor):this.stack=new Error().stack||""}lh.prototype=Object.create(Error.prototype);lh.prototype.constructor=lh;lh.prototype.toString=function(e){var r=this.name+": ";return r+=this.reason||"(unknown reason)",!e&&this.mark&&(r+=" "+this.mark.toString()),r};JY.exports=lh});var XY=C((z6e,WY)=>{"use strict";var zY=nA();function Wb(t,e,r,i,n){this.name=t,this.buffer=e,this.position=r,this.line=i,this.column=n}Wb.prototype.getSnippet=function(e,r){var i,n,s,o,a;if(!this.buffer)return null;for(e=e||4,r=r||75,i="",n=this.position;n>0&&`\0\r +`));if(!e)return null;t.input=WD(e,!0)}return t.input.shift()},put_char:function(t,e){e===null||e===10?(hI(mc(t.output,0)),t.output=[]):e!=0&&t.output.push(e)},flush:function(t){t.output&&t.output.length>0&&(hI(mc(t.output,0)),t.output=[])}},default_tty1_ops:{put_char:function(t,e){e===null||e===10?(Wr(mc(t.output,0)),t.output=[]):e!=0&&t.output.push(e)},flush:function(t){t.output&&t.output.length>0&&(Wr(mc(t.output,0)),t.output=[])}}};function zD(t){for(var e=kIe(t,65536),r=tj(e);t=e)){var i=1024*1024;e=Math.max(e,r*(r>>0),r!=0&&(e=Math.max(e,256));var n=t.contents;t.contents=new Uint8Array(e),t.usedBytes>0&&t.contents.set(n.subarray(0,t.usedBytes),0)}},resizeFileStorage:function(t,e){if(t.usedBytes!=e)if(e==0)t.contents=null,t.usedBytes=0;else{var r=t.contents;t.contents=new Uint8Array(e),r&&t.contents.set(r.subarray(0,Math.min(e,t.usedBytes))),t.usedBytes=e}},node_ops:{getattr:function(t){var e={};return e.dev=E.isChrdev(t.mode)?t.id:1,e.ino=t.id,e.mode=t.mode,e.nlink=1,e.uid=0,e.gid=0,e.rdev=t.rdev,E.isDir(t.mode)?e.size=4096:E.isFile(t.mode)?e.size=t.usedBytes:E.isLink(t.mode)?e.size=t.link.length:e.size=0,e.atime=new Date(t.timestamp),e.mtime=new Date(t.timestamp),e.ctime=new Date(t.timestamp),e.blksize=4096,e.blocks=Math.ceil(e.size/e.blksize),e},setattr:function(t,e){e.mode!==void 0&&(t.mode=e.mode),e.timestamp!==void 0&&(t.timestamp=e.timestamp),e.size!==void 0&&st.resizeFileStorage(t,e.size)},lookup:function(t,e){throw E.genericErrors[44]},mknod:function(t,e,r,i){return st.createNode(t,e,r,i)},rename:function(t,e,r){if(E.isDir(t.mode)){var i;try{i=E.lookupNode(e,r)}catch(s){}if(i)for(var n in i.contents)throw new E.ErrnoError(55)}delete t.parent.contents[t.name],t.parent.timestamp=Date.now(),t.name=r,e.contents[r]=t,e.timestamp=t.parent.timestamp,t.parent=e},unlink:function(t,e){delete t.contents[e],t.timestamp=Date.now()},rmdir:function(t,e){var r=E.lookupNode(t,e);for(var i in r.contents)throw new E.ErrnoError(55);delete t.contents[e],t.timestamp=Date.now()},readdir:function(t){var e=[".",".."];for(var r in t.contents)!t.contents.hasOwnProperty(r)||e.push(r);return e},symlink:function(t,e,r){var i=st.createNode(t,e,511|40960,0);return i.link=r,i},readlink:function(t){if(!E.isLink(t.mode))throw new E.ErrnoError(28);return t.link}},stream_ops:{read:function(t,e,r,i,n){var s=t.node.contents;if(n>=t.node.usedBytes)return 0;var o=Math.min(t.node.usedBytes-n,i);if(o>8&&s.subarray)e.set(s.subarray(n,n+o),r);else for(var a=0;a0||i+r>2)}catch(r){throw r.code?new E.ErrnoError(Ve.convertNodeCode(r)):r}return e.mode},realPath:function(t){for(var e=[];t.parent!==t;)e.push(t.name),t=t.parent;return e.push(t.mount.opts.root),e.reverse(),ut.join.apply(null,e)},flagsForNode:function(t){t&=~2097152,t&=~2048,t&=~32768,t&=~524288;var e=0;for(var r in Ve.flagsForNodeMap)t&r&&(e|=Ve.flagsForNodeMap[r],t^=r);if(t)throw new E.ErrnoError(28);return e},node_ops:{getattr:function(t){var e=Ve.realPath(t),r;try{r=nt.lstatSync(e)}catch(i){throw i.code?new E.ErrnoError(Ve.convertNodeCode(i)):i}return Ve.isWindows&&!r.blksize&&(r.blksize=4096),Ve.isWindows&&!r.blocks&&(r.blocks=(r.size+r.blksize-1)/r.blksize|0),{dev:r.dev,ino:r.ino,mode:r.mode,nlink:r.nlink,uid:r.uid,gid:r.gid,rdev:r.rdev,size:r.size,atime:r.atime,mtime:r.mtime,ctime:r.ctime,blksize:r.blksize,blocks:r.blocks}},setattr:function(t,e){var r=Ve.realPath(t);try{if(e.mode!==void 0&&(nt.chmodSync(r,e.mode),t.mode=e.mode),e.timestamp!==void 0){var i=new Date(e.timestamp);nt.utimesSync(r,i,i)}e.size!==void 0&&nt.truncateSync(r,e.size)}catch(n){throw n.code?new E.ErrnoError(Ve.convertNodeCode(n)):n}},lookup:function(t,e){var r=ut.join2(Ve.realPath(t),e),i=Ve.getMode(r);return Ve.createNode(t,e,i)},mknod:function(t,e,r,i){var n=Ve.createNode(t,e,r,i),s=Ve.realPath(n);try{E.isDir(n.mode)?nt.mkdirSync(s,n.mode):nt.writeFileSync(s,"",{mode:n.mode})}catch(o){throw o.code?new E.ErrnoError(Ve.convertNodeCode(o)):o}return n},rename:function(t,e,r){var i=Ve.realPath(t),n=ut.join2(Ve.realPath(e),r);try{nt.renameSync(i,n)}catch(s){throw s.code?new E.ErrnoError(Ve.convertNodeCode(s)):s}t.name=r},unlink:function(t,e){var r=ut.join2(Ve.realPath(t),e);try{nt.unlinkSync(r)}catch(i){throw i.code?new E.ErrnoError(Ve.convertNodeCode(i)):i}},rmdir:function(t,e){var r=ut.join2(Ve.realPath(t),e);try{nt.rmdirSync(r)}catch(i){throw i.code?new E.ErrnoError(Ve.convertNodeCode(i)):i}},readdir:function(t){var e=Ve.realPath(t);try{return nt.readdirSync(e)}catch(r){throw r.code?new E.ErrnoError(Ve.convertNodeCode(r)):r}},symlink:function(t,e,r){var i=ut.join2(Ve.realPath(t),e);try{nt.symlinkSync(r,i)}catch(n){throw n.code?new E.ErrnoError(Ve.convertNodeCode(n)):n}},readlink:function(t){var e=Ve.realPath(t);try{return e=nt.readlinkSync(e),e=VD.relative(VD.resolve(t.mount.opts.root),e),e}catch(r){throw r.code?new E.ErrnoError(Ve.convertNodeCode(r)):r}}},stream_ops:{open:function(t){var e=Ve.realPath(t.node);try{E.isFile(t.node.mode)&&(t.nfd=nt.openSync(e,Ve.flagsForNode(t.flags)))}catch(r){throw r.code?new E.ErrnoError(Ve.convertNodeCode(r)):r}},close:function(t){try{E.isFile(t.node.mode)&&t.nfd&&nt.closeSync(t.nfd)}catch(e){throw e.code?new E.ErrnoError(Ve.convertNodeCode(e)):e}},read:function(t,e,r,i,n){if(i===0)return 0;try{return nt.readSync(t.nfd,Ve.bufferFrom(e.buffer),r,i,n)}catch(s){throw new E.ErrnoError(Ve.convertNodeCode(s))}},write:function(t,e,r,i,n){try{return nt.writeSync(t.nfd,Ve.bufferFrom(e.buffer),r,i,n)}catch(s){throw new E.ErrnoError(Ve.convertNodeCode(s))}},llseek:function(t,e,r){var i=e;if(r===1)i+=t.position;else if(r===2&&E.isFile(t.node.mode))try{var n=nt.fstatSync(t.nfd);i+=n.size}catch(s){throw new E.ErrnoError(Ve.convertNodeCode(s))}if(i<0)throw new E.ErrnoError(28);return i},mmap:function(t,e,r,i,n,s){if(e!==0)throw new E.ErrnoError(28);if(!E.isFile(t.node.mode))throw new E.ErrnoError(43);var o=zD(r);return Ve.stream_ops.read(t,ui,o,r,i),{ptr:o,allocated:!0}},msync:function(t,e,r,i,n){if(!E.isFile(t.node.mode))throw new E.ErrnoError(43);if(n&2)return 0;var s=Ve.stream_ops.write(t,e,0,i,r,!1);return 0}}},lj={lookupPath:function(t){return{path:t,node:{mode:Ve.getMode(t)}}},createStandardStreams:function(){E.streams[0]={fd:0,nfd:0,position:0,path:"",flags:0,tty:!0,seekable:!1};for(var t=1;t<3;t++)E.streams[t]={fd:t,nfd:t,position:0,path:"",flags:577,tty:!0,seekable:!1}},cwd:function(){return process.cwd()},chdir:function(){process.chdir.apply(void 0,arguments)},mknod:function(t,e){E.isDir(t)?nt.mkdirSync(t,e):nt.writeFileSync(t,"",{mode:e})},mkdir:function(){nt.mkdirSync.apply(void 0,arguments)},symlink:function(){nt.symlinkSync.apply(void 0,arguments)},rename:function(){nt.renameSync.apply(void 0,arguments)},rmdir:function(){nt.rmdirSync.apply(void 0,arguments)},readdir:function(){nt.readdirSync.apply(void 0,arguments)},unlink:function(){nt.unlinkSync.apply(void 0,arguments)},readlink:function(){return nt.readlinkSync.apply(void 0,arguments)},stat:function(){return nt.statSync.apply(void 0,arguments)},lstat:function(){return nt.lstatSync.apply(void 0,arguments)},chmod:function(){nt.chmodSync.apply(void 0,arguments)},fchmod:function(){nt.fchmodSync.apply(void 0,arguments)},chown:function(){nt.chownSync.apply(void 0,arguments)},fchown:function(){nt.fchownSync.apply(void 0,arguments)},truncate:function(){nt.truncateSync.apply(void 0,arguments)},ftruncate:function(t,e){if(e<0)throw new E.ErrnoError(28);nt.ftruncateSync.apply(void 0,arguments)},utime:function(){nt.utimesSync.apply(void 0,arguments)},open:function(t,e,r,i){typeof e=="string"&&(e=QA.modeStringToFlags(e));var n=nt.openSync(t,Ve.flagsForNode(e),r),s=i!=null?i:E.nextfd(n),o={fd:s,nfd:n,position:0,path:t,flags:e,seekable:!0};return E.streams[s]=o,o},close:function(t){t.stream_ops||nt.closeSync(t.nfd),E.closeStream(t.fd)},llseek:function(t,e,r){if(t.stream_ops)return QA.llseek(t,e,r);var i=e;if(r===1)i+=t.position;else if(r===2)i+=nt.fstatSync(t.nfd).size;else if(r!==0)throw new E.ErrnoError(Ec.EINVAL);if(i<0)throw new E.ErrnoError(Ec.EINVAL);return t.position=i,i},read:function(t,e,r,i,n){if(t.stream_ops)return QA.read(t,e,r,i,n);var s=typeof n!="undefined";!s&&t.seekable&&(n=t.position);var o=nt.readSync(t.nfd,Ve.bufferFrom(e.buffer),r,i,n);return s||(t.position+=o),o},write:function(t,e,r,i,n){if(t.stream_ops)return QA.write(t,e,r,i,n);t.flags&+"1024"&&E.llseek(t,0,+"2");var s=typeof n!="undefined";!s&&t.seekable&&(n=t.position);var o=nt.writeSync(t.nfd,Ve.bufferFrom(e.buffer),r,i,n);return s||(t.position+=o),o},allocate:function(){throw new E.ErrnoError(Ec.EOPNOTSUPP)},mmap:function(t,e,r,i,n,s){if(t.stream_ops)return QA.mmap(t,e,r,i,n,s);if(e!==0)throw new E.ErrnoError(28);var o=zD(r);return E.read(t,ui,o,r,i),{ptr:o,allocated:!0}},msync:function(t,e,r,i,n){return t.stream_ops?QA.msync(t,e,r,i,n):(n&2||E.write(t,e,0,i,r),0)},munmap:function(){return 0},ioctl:function(){throw new E.ErrnoError(Ec.ENOTTY)}},E={root:null,mounts:[],devices:{},streams:[],nextInode:1,nameTable:null,currentPath:"/",initialized:!1,ignorePermissions:!0,trackingDelegate:{},tracking:{openFlags:{READ:1,WRITE:2}},ErrnoError:null,genericErrors:{},filesystems:null,syncFSRequests:0,lookupPath:function(t,e){if(t=eo.resolve(E.cwd(),t),e=e||{},!t)return{path:"",node:null};var r={follow_mount:!0,recurse_count:0};for(var i in r)e[i]===void 0&&(e[i]=r[i]);if(e.recurse_count>8)throw new E.ErrnoError(32);for(var n=ut.normalizeArray(t.split("/").filter(function(h){return!!h}),!1),s=E.root,o="/",a=0;a40)throw new E.ErrnoError(32)}}return{path:o,node:s}},getPath:function(t){for(var e;;){if(E.isRoot(t)){var r=t.mount.mountpoint;return e?r[r.length-1]!=="/"?r+"/"+e:r+e:r}e=e?t.name+"/"+e:t.name,t=t.parent}},hashName:function(t,e){for(var r=0,i=0;i>>0)%E.nameTable.length},hashAddNode:function(t){var e=E.hashName(t.parent.id,t.name);t.name_next=E.nameTable[e],E.nameTable[e]=t},hashRemoveNode:function(t){var e=E.hashName(t.parent.id,t.name);if(E.nameTable[e]===t)E.nameTable[e]=t.name_next;else for(var r=E.nameTable[e];r;){if(r.name_next===t){r.name_next=t.name_next;break}r=r.name_next}},lookupNode:function(t,e){var r=E.mayLookup(t);if(r)throw new E.ErrnoError(r,t);for(var i=E.hashName(t.id,e),n=E.nameTable[i];n;n=n.name_next){var s=n.name;if(n.parent.id===t.id&&s===e)return n}return E.lookup(t,e)},createNode:function(t,e,r,i){var n=new E.FSNode(t,e,r,i);return E.hashAddNode(n),n},destroyNode:function(t){E.hashRemoveNode(t)},isRoot:function(t){return t===t.parent},isMountpoint:function(t){return!!t.mounted},isFile:function(t){return(t&61440)==32768},isDir:function(t){return(t&61440)==16384},isLink:function(t){return(t&61440)==40960},isChrdev:function(t){return(t&61440)==8192},isBlkdev:function(t){return(t&61440)==24576},isFIFO:function(t){return(t&61440)==4096},isSocket:function(t){return(t&49152)==49152},flagModes:{r:0,"r+":2,w:577,"w+":578,a:1089,"a+":1090},modeStringToFlags:function(t){var e=E.flagModes[t];if(typeof e=="undefined")throw new Error("Unknown file open mode: "+t);return e},flagsToPermissionString:function(t){var e=["r","w","rw"][t&3];return t&512&&(e+="w"),e},nodePermissions:function(t,e){return E.ignorePermissions?0:e.includes("r")&&!(t.mode&292)||e.includes("w")&&!(t.mode&146)||e.includes("x")&&!(t.mode&73)?2:0},mayLookup:function(t){var e=E.nodePermissions(t,"x");return e||(t.node_ops.lookup?0:2)},mayCreate:function(t,e){try{var r=E.lookupNode(t,e);return 20}catch(i){}return E.nodePermissions(t,"wx")},mayDelete:function(t,e,r){var i;try{i=E.lookupNode(t,e)}catch(s){return s.errno}var n=E.nodePermissions(t,"wx");if(n)return n;if(r){if(!E.isDir(i.mode))return 54;if(E.isRoot(i)||E.getPath(i)===E.cwd())return 10}else if(E.isDir(i.mode))return 31;return 0},mayOpen:function(t,e){return t?E.isLink(t.mode)?32:E.isDir(t.mode)&&(E.flagsToPermissionString(e)!=="r"||e&512)?31:E.nodePermissions(t,E.flagsToPermissionString(e)):44},MAX_OPEN_FDS:4096,nextfd:function(t,e){t=t||0,e=e||E.MAX_OPEN_FDS;for(var r=t;r<=e;r++)if(!E.streams[r])return r;throw new E.ErrnoError(33)},getStream:function(t){return E.streams[t]},createStream:function(t,e,r){E.FSStream||(E.FSStream=function(){},E.FSStream.prototype={object:{get:function(){return this.node},set:function(o){this.node=o}},isRead:{get:function(){return(this.flags&2097155)!=1}},isWrite:{get:function(){return(this.flags&2097155)!=0}},isAppend:{get:function(){return this.flags&1024}}});var i=new E.FSStream;for(var n in t)i[n]=t[n];t=i;var s=E.nextfd(e,r);return t.fd=s,E.streams[s]=t,t},closeStream:function(t){E.streams[t]=null},chrdev_stream_ops:{open:function(t){var e=E.getDevice(t.node.rdev);t.stream_ops=e.stream_ops,t.stream_ops.open&&t.stream_ops.open(t)},llseek:function(){throw new E.ErrnoError(70)}},major:function(t){return t>>8},minor:function(t){return t&255},makedev:function(t,e){return t<<8|e},registerDevice:function(t,e){E.devices[t]={stream_ops:e}},getDevice:function(t){return E.devices[t]},getMounts:function(t){for(var e=[],r=[t];r.length;){var i=r.pop();e.push(i),r.push.apply(r,i.mounts)}return e},syncfs:function(t,e){typeof t=="function"&&(e=t,t=!1),E.syncFSRequests++,E.syncFSRequests>1&&Wr("warning: "+E.syncFSRequests+" FS.syncfs operations in flight at once, probably just doing extra work");var r=E.getMounts(E.root.mount),i=0;function n(o){return E.syncFSRequests--,e(o)}function s(o){if(o)return s.errored?void 0:(s.errored=!0,n(o));++i>=r.length&&n(null)}r.forEach(function(o){if(!o.type.syncfs)return s(null);o.type.syncfs(o,t,s)})},mount:function(t,e,r){var i=r==="/",n=!r,s;if(i&&E.root)throw new E.ErrnoError(10);if(!i&&!n){var o=E.lookupPath(r,{follow_mount:!1});if(r=o.path,s=o.node,E.isMountpoint(s))throw new E.ErrnoError(10);if(!E.isDir(s.mode))throw new E.ErrnoError(54)}var a={type:t,opts:e,mountpoint:r,mounts:[]},l=t.mount(a);return l.mount=a,a.root=l,i?E.root=l:s&&(s.mounted=a,s.mount&&s.mount.mounts.push(a)),l},unmount:function(t){var e=E.lookupPath(t,{follow_mount:!1});if(!E.isMountpoint(e.node))throw new E.ErrnoError(28);var r=e.node,i=r.mounted,n=E.getMounts(i);Object.keys(E.nameTable).forEach(function(o){for(var a=E.nameTable[o];a;){var l=a.name_next;n.includes(a.mount)&&E.destroyNode(a),a=l}}),r.mounted=null;var s=r.mount.mounts.indexOf(i);r.mount.mounts.splice(s,1)},lookup:function(t,e){return t.node_ops.lookup(t,e)},mknod:function(t,e,r){var i=E.lookupPath(t,{parent:!0}),n=i.node,s=ut.basename(t);if(!s||s==="."||s==="..")throw new E.ErrnoError(28);var o=E.mayCreate(n,s);if(o)throw new E.ErrnoError(o);if(!n.node_ops.mknod)throw new E.ErrnoError(63);return n.node_ops.mknod(n,s,e,r)},create:function(t,e){return e=e!==void 0?e:438,e&=4095,e|=32768,E.mknod(t,e,0)},mkdir:function(t,e){return e=e!==void 0?e:511,e&=511|512,e|=16384,E.mknod(t,e,0)},mkdirTree:function(t,e){for(var r=t.split("/"),i="",n=0;nthis.length-1||h<0)){var f=h%this.chunkSize,p=h/this.chunkSize|0;return this.getter(p)[f]}},s.prototype.setDataGetter=function(h){this.getter=h},s.prototype.cacheLength=function(){var h=new XMLHttpRequest;if(h.open("HEAD",r,!1),h.send(null),!(h.status>=200&&h.status<300||h.status===304))throw new Error("Couldn't load "+r+". Status: "+h.status);var f=Number(h.getResponseHeader("Content-length")),p,m=(p=h.getResponseHeader("Accept-Ranges"))&&p==="bytes",I=(p=h.getResponseHeader("Content-Encoding"))&&p==="gzip",y=1024*1024;m||(y=f);var w=function(F,N){if(F>N)throw new Error("invalid range ("+F+", "+N+") or no bytes requested!");if(N>f-1)throw new Error("only "+f+" bytes available! programmer error!");var K=new XMLHttpRequest;if(K.open("GET",r,!1),f!==y&&K.setRequestHeader("Range","bytes="+F+"-"+N),typeof Uint8Array!="undefined"&&(K.responseType="arraybuffer"),K.overrideMimeType&&K.overrideMimeType("text/plain; charset=x-user-defined"),K.send(null),!(K.status>=200&&K.status<300||K.status===304))throw new Error("Couldn't load "+r+". Status: "+K.status);return K.response!==void 0?new Uint8Array(K.response||[]):WD(K.responseText||"",!0)},x=this;x.setDataGetter(function(F){var N=F*y,K=(F+1)*y-1;if(K=Math.min(K,f-1),typeof x.chunks[F]=="undefined"&&(x.chunks[F]=w(N,K)),typeof x.chunks[F]=="undefined")throw new Error("doXHR failed!");return x.chunks[F]}),(I||!f)&&(y=f=1,f=this.getter(0).length,y=f,hI("LazyFiles on gzip forces download of the whole file when length is accessed")),this._length=f,this._chunkSize=y,this.lengthKnown=!0},typeof XMLHttpRequest!="undefined"){if(!jG)throw"Cannot do synchronous binary XHRs outside webworkers in modern browsers. Use --embed-file or --preload-file in emcc";var o=new s;Object.defineProperties(o,{length:{get:function(){return this.lengthKnown||this.cacheLength(),this._length}},chunkSize:{get:function(){return this.lengthKnown||this.cacheLength(),this._chunkSize}}});var a={isDevice:!1,contents:o}}else var a={isDevice:!1,url:r};var l=E.createFile(t,e,a,i,n);a.contents?l.contents=a.contents:a.url&&(l.contents=null,l.url=a.url),Object.defineProperties(l,{usedBytes:{get:function(){return this.contents.length}}});var c={},u=Object.keys(l.stream_ops);return u.forEach(function(g){var h=l.stream_ops[g];c[g]=function(){return E.forceLoadFile(l),h.apply(null,arguments)}}),c.read=function(h,f,p,m,I){E.forceLoadFile(l);var y=h.node.contents;if(I>=y.length)return 0;var w=Math.min(y.length-I,m);if(y.slice)for(var x=0;x>2]=i.dev,Ye[r+4>>2]=0,Ye[r+8>>2]=i.ino,Ye[r+12>>2]=i.mode,Ye[r+16>>2]=i.nlink,Ye[r+20>>2]=i.uid,Ye[r+24>>2]=i.gid,Ye[r+28>>2]=i.rdev,Ye[r+32>>2]=0,$s=[i.size>>>0,(Pr=i.size,+Math.abs(Pr)>=1?Pr>0?(Math.min(+Math.floor(Pr/4294967296),4294967295)|0)>>>0:~~+Math.ceil((Pr-+(~~Pr>>>0))/4294967296)>>>0:0)],Ye[r+40>>2]=$s[0],Ye[r+44>>2]=$s[1],Ye[r+48>>2]=4096,Ye[r+52>>2]=i.blocks,Ye[r+56>>2]=i.atime.getTime()/1e3|0,Ye[r+60>>2]=0,Ye[r+64>>2]=i.mtime.getTime()/1e3|0,Ye[r+68>>2]=0,Ye[r+72>>2]=i.ctime.getTime()/1e3|0,Ye[r+76>>2]=0,$s=[i.ino>>>0,(Pr=i.ino,+Math.abs(Pr)>=1?Pr>0?(Math.min(+Math.floor(Pr/4294967296),4294967295)|0)>>>0:~~+Math.ceil((Pr-+(~~Pr>>>0))/4294967296)>>>0:0)],Ye[r+80>>2]=$s[0],Ye[r+84>>2]=$s[1],0},doMsync:function(t,e,r,i,n){var s=Ic.slice(t,t+r);E.msync(e,s,n,r,i)},doMkdir:function(t,e){return t=ut.normalize(t),t[t.length-1]==="/"&&(t=t.substr(0,t.length-1)),E.mkdir(t,e,0),0},doMknod:function(t,e,r){switch(e&61440){case 32768:case 8192:case 24576:case 4096:case 49152:break;default:return-28}return E.mknod(t,e,r),0},doReadlink:function(t,e,r){if(r<=0)return-28;var i=E.readlink(t),n=Math.min(r,dI(i)),s=ui[e+n];return _G(i,e,r+1),ui[e+n]=s,n},doAccess:function(t,e){if(e&~7)return-28;var r,i=E.lookupPath(t,{follow:!0});if(r=i.node,!r)return-44;var n="";return e&4&&(n+="r"),e&2&&(n+="w"),e&1&&(n+="x"),n&&E.nodePermissions(r,n)?-2:0},doDup:function(t,e,r){var i=E.getStream(r);return i&&E.close(i),E.open(t,e,0,r,r).fd},doReadv:function(t,e,r,i){for(var n=0,s=0;s>2],a=Ye[e+(s*8+4)>>2],l=E.read(t,ui,o,a,i);if(l<0)return-1;if(n+=l,l>2],a=Ye[e+(s*8+4)>>2],l=E.write(t,ui,o,a,i);if(l<0)return-1;n+=l}return n},varargs:void 0,get:function(){Qt.varargs+=4;var t=Ye[Qt.varargs-4>>2];return t},getStr:function(t){var e=ZG(t);return e},getStreamFromFD:function(t){var e=E.getStream(t);if(!e)throw new E.ErrnoError(8);return e},get64:function(t,e){return t}};function iEe(t,e){try{return t=Qt.getStr(t),E.chmod(t,e),0}catch(r){return(typeof E=="undefined"||!(r instanceof E.ErrnoError))&&ur(r),-r.errno}}function sEe(t){return Ye[nEe()>>2]=t,t}function oEe(t,e,r){Qt.varargs=r;try{var i=Qt.getStreamFromFD(t);switch(e){case 0:{var n=Qt.get();if(n<0)return-28;var s;return s=E.open(i.path,i.flags,0,n),s.fd}case 1:case 2:return 0;case 3:return i.flags;case 4:{var n=Qt.get();return i.flags|=n,0}case 12:{var n=Qt.get(),o=0;return UD[n+o>>1]=2,0}case 13:case 14:return 0;case 16:case 8:return-28;case 9:return sEe(28),-1;default:return-28}}catch(a){return(typeof E=="undefined"||!(a instanceof E.ErrnoError))&&ur(a),-a.errno}}function aEe(t,e){try{var r=Qt.getStreamFromFD(t);return Qt.doStat(E.stat,r.path,e)}catch(i){return(typeof E=="undefined"||!(i instanceof E.ErrnoError))&&ur(i),-i.errno}}function AEe(t,e,r){Qt.varargs=r;try{var i=Qt.getStreamFromFD(t);switch(e){case 21509:case 21505:return i.tty?0:-59;case 21510:case 21511:case 21512:case 21506:case 21507:case 21508:return i.tty?0:-59;case 21519:{if(!i.tty)return-59;var n=Qt.get();return Ye[n>>2]=0,0}case 21520:return i.tty?-28:-59;case 21531:{var n=Qt.get();return E.ioctl(i,e,n)}case 21523:return i.tty?0:-59;case 21524:return i.tty?0:-59;default:ur("bad ioctl syscall "+e)}}catch(s){return(typeof E=="undefined"||!(s instanceof E.ErrnoError))&&ur(s),-s.errno}}function lEe(t,e,r){Qt.varargs=r;try{var i=Qt.getStr(t),n=r?Qt.get():0,s=E.open(i,e,n);return s.fd}catch(o){return(typeof E=="undefined"||!(o instanceof E.ErrnoError))&&ur(o),-o.errno}}function cEe(t,e){try{return t=Qt.getStr(t),e=Qt.getStr(e),E.rename(t,e),0}catch(r){return(typeof E=="undefined"||!(r instanceof E.ErrnoError))&&ur(r),-r.errno}}function uEe(t){try{return t=Qt.getStr(t),E.rmdir(t),0}catch(e){return(typeof E=="undefined"||!(e instanceof E.ErrnoError))&&ur(e),-e.errno}}function gEe(t,e){try{return t=Qt.getStr(t),Qt.doStat(E.stat,t,e)}catch(r){return(typeof E=="undefined"||!(r instanceof E.ErrnoError))&&ur(r),-r.errno}}function hEe(t){try{return t=Qt.getStr(t),E.unlink(t),0}catch(e){return(typeof E=="undefined"||!(e instanceof E.ErrnoError))&&ur(e),-e.errno}}function fEe(t,e,r){Ic.copyWithin(t,e,e+r)}function pEe(t){try{return fI.grow(t-YD.byteLength+65535>>>16),rj(fI.buffer),1}catch(e){}}function dEe(t){var e=Ic.length;t=t>>>0;var r=2147483648;if(t>r)return!1;for(var i=1;i<=4;i*=2){var n=e*(1+.2/i);n=Math.min(n,t+100663296);var s=Math.min(r,UIe(Math.max(t,n),65536)),o=pEe(s);if(o)return!0}return!1}function CEe(t){try{var e=Qt.getStreamFromFD(t);return E.close(e),0}catch(r){return(typeof E=="undefined"||!(r instanceof E.ErrnoError))&&ur(r),r.errno}}function mEe(t,e){try{var r=Qt.getStreamFromFD(t),i=r.tty?2:E.isDir(r.mode)?3:E.isLink(r.mode)?7:4;return ui[e>>0]=i,0}catch(n){return(typeof E=="undefined"||!(n instanceof E.ErrnoError))&&ur(n),n.errno}}function IEe(t,e,r,i){try{var n=Qt.getStreamFromFD(t),s=Qt.doReadv(n,e,r);return Ye[i>>2]=s,0}catch(o){return(typeof E=="undefined"||!(o instanceof E.ErrnoError))&&ur(o),o.errno}}function EEe(t,e,r,i,n){try{var s=Qt.getStreamFromFD(t),o=4294967296,a=r*o+(e>>>0),l=9007199254740992;return a<=-l||a>=l?-61:(E.llseek(s,a,i),$s=[s.position>>>0,(Pr=s.position,+Math.abs(Pr)>=1?Pr>0?(Math.min(+Math.floor(Pr/4294967296),4294967295)|0)>>>0:~~+Math.ceil((Pr-+(~~Pr>>>0))/4294967296)>>>0:0)],Ye[n>>2]=$s[0],Ye[n+4>>2]=$s[1],s.getdents&&a===0&&i===0&&(s.getdents=null),0)}catch(c){return(typeof E=="undefined"||!(c instanceof E.ErrnoError))&&ur(c),c.errno}}function yEe(t,e,r,i){try{var n=Qt.getStreamFromFD(t),s=Qt.doWritev(n,e,r);return Ye[i>>2]=s,0}catch(o){return(typeof E=="undefined"||!(o instanceof E.ErrnoError))&&ur(o),o.errno}}function BEe(t){FIe(t)}function wEe(t){var e=Date.now()/1e3|0;return t&&(Ye[t>>2]=e),e}function XD(){if(XD.called)return;XD.called=!0;var t=new Date().getFullYear(),e=new Date(t,0,1),r=new Date(t,6,1),i=e.getTimezoneOffset(),n=r.getTimezoneOffset(),s=Math.max(i,n);Ye[bEe()>>2]=s*60,Ye[QEe()>>2]=Number(i!=n);function o(g){var h=g.toTimeString().match(/\(([A-Za-z ]+)\)$/);return h?h[1]:"GMT"}var a=o(e),l=o(r),c=HD(a),u=HD(l);n>2]=c,Ye[mI()+4>>2]=u):(Ye[mI()>>2]=u,Ye[mI()+4>>2]=c)}function DEe(t){XD();var e=Date.UTC(Ye[t+20>>2]+1900,Ye[t+16>>2],Ye[t+12>>2],Ye[t+8>>2],Ye[t+4>>2],Ye[t>>2],0),r=new Date(e);Ye[t+24>>2]=r.getUTCDay();var i=Date.UTC(r.getUTCFullYear(),0,1,0,0,0,0),n=(r.getTime()-i)/(1e3*60*60*24)|0;return Ye[t+28>>2]=n,r.getTime()/1e3|0}var cj=function(t,e,r,i){t||(t=this),this.parent=t,this.mount=t.mount,this.mounted=null,this.id=E.nextInode++,this.name=e,this.mode=r,this.node_ops={},this.stream_ops={},this.rdev=i},II=292|73,EI=146;Object.defineProperties(cj.prototype,{read:{get:function(){return(this.mode&II)===II},set:function(t){t?this.mode|=II:this.mode&=~II}},write:{get:function(){return(this.mode&EI)===EI},set:function(t){t?this.mode|=EI:this.mode&=~EI}},isFolder:{get:function(){return E.isDir(this.mode)}},isDevice:{get:function(){return E.isChrdev(this.mode)}}});E.FSNode=cj;E.staticInit();BA&&(nt=HG,VD=require("path"),Ve.staticInit());var nt,VD;if(BA){uj=function(t){return function(){try{return t.apply(this,arguments)}catch(e){throw e.code?new E.ErrnoError(Ec[e.code]):e}}},QA=Object.assign({},E);for(ZD in lj)E[ZD]=uj(lj[ZD])}else throw new Error("NODERAWFS is currently only supported on Node.js environment.");var uj,QA,ZD;function WD(t,e,r){var i=r>0?r:dI(t)+1,n=new Array(i),s=pI(t,n,0,n.length);return e&&(n.length=s),n}var SEe=typeof atob=="function"?atob:function(t){var e="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",r="",i,n,s,o,a,l,c,u=0;t=t.replace(/[^A-Za-z0-9\+\/\=]/g,"");do o=e.indexOf(t.charAt(u++)),a=e.indexOf(t.charAt(u++)),l=e.indexOf(t.charAt(u++)),c=e.indexOf(t.charAt(u++)),i=o<<2|a>>4,n=(a&15)<<4|l>>2,s=(l&3)<<6|c,r=r+String.fromCharCode(i),l!==64&&(r=r+String.fromCharCode(n)),c!==64&&(r=r+String.fromCharCode(s));while(u0||(qIe(),wA>0))return;function e(){yI||(yI=!0,ne.calledRun=!0,!VG&&(JIe(),ne.onRuntimeInitialized&&ne.onRuntimeInitialized(),zIe()))}ne.setStatus?(ne.setStatus("Running..."),setTimeout(function(){setTimeout(function(){ne.setStatus("")},1),e()},1)):e()}ne.run=_D;if(ne.preInit)for(typeof ne.preInit=="function"&&(ne.preInit=[ne.preInit]);ne.preInit.length>0;)ne.preInit.pop()();_D()});var pj=C((G7e,fj)=>{"use strict";function PEe(t,e){function r(){this.constructor=t}r.prototype=e.prototype,t.prototype=new r}function bA(t,e,r,i){this.message=t,this.expected=e,this.found=r,this.location=i,this.name="SyntaxError",typeof Error.captureStackTrace=="function"&&Error.captureStackTrace(this,bA)}PEe(bA,Error);bA.buildMessage=function(t,e){var r={literal:function(c){return'"'+n(c.text)+'"'},class:function(c){var u="",g;for(g=0;g0){for(g=1,h=1;g>",ue=ft(">>",!1),we=">&",lt=ft(">&",!1),Ct=">",xt=ft(">",!1),xn="<<<",Ii=ft("<<<",!1),Xt="<&",_i=ft("<&",!1),Vn="<",rg=ft("<",!1),Gd=function(d){return{type:"argument",segments:[].concat(...d)}},Ps=function(d){return d},ig="'",jd=ft("'",!1),qB=function(d){return[{type:"text",text:d}]},ng='"',qd=ft('"',!1),Jd=function(d){return d},Wd=function(d){return{type:"arithmetic",arithmetic:d,quoted:!0}},JB=function(d){return{type:"shell",shell:d,quoted:!0}},WB=function(d){return V(k({type:"variable"},d),{quoted:!0})},sg=function(d){return{type:"text",text:d}},zB=function(d){return{type:"arithmetic",arithmetic:d,quoted:!1}},VB=function(d){return{type:"shell",shell:d,quoted:!1}},zd=function(d){return V(k({type:"variable"},d),{quoted:!1})},XB=function(d){return{type:"glob",pattern:d}},_="\\",ks=ft("\\",!1),$i=Fs(),en=function(d){return d},og=/^[^']/,Vd=Hr(["'"],!0,!1),Ql=function(d){return d.join("")},ag=/^[^$"]/,Xd=Hr(["$",'"'],!0,!1),Ag="-",bl=ft("-",!1),lg="+",cg=ft("+",!1),ZB=".",_B=ft(".",!1),$B=function(d,D,P){return{type:"number",value:(d==="-"?-1:1)*parseFloat(D.join("")+"."+P.join(""))}},Zd=function(d,D){return{type:"number",value:(d==="-"?-1:1)*parseInt(D.join(""))}},_d=function(d){return k({type:"variable"},d)},ew=function(d){return{type:"variable",name:d}},$d=function(d){return d},eC="*",tC=ft("*",!1),tw=function(d,D){return{type:"multiplication",left:d,right:D}},rw="/",iw=ft("/",!1),nw=function(d,D){return{type:"division",left:d,right:D}},sw=function(d,D){return{type:"addition",left:d,right:D}},O=function(d,D){return{type:"subtraction",left:d,right:D}},rt="$((",Dl=ft("$((",!1),Ki="))",ug=ft("))",!1),Oe=function(d){return d},Ka="$(",rC=ft("$(",!1),pL=function(d){return d},Ta="${",iC=ft("${",!1),Ot=":-",Xn=ft(":-",!1),ow=function(d,D){return{name:d,defaultValue:D}},nC=":-}",So=ft(":-}",!1),sC=function(d){return{name:d,defaultValue:[]}},xo=function(d){return{name:d}},ze="$",aw=ft("$",!1),oC=function(d){return e.isGlobPattern(d)},aC=function(d){return d},AC=/^[a-zA-Z0-9_]/,gg=Hr([["a","z"],["A","Z"],["0","9"],"_"],!1,!1),hg=function(){return lw()},fg=/^[$@*?#a-zA-Z0-9_\-]/,Ua=Hr(["$","@","*","?","#",["a","z"],["A","Z"],["0","9"],"_","-"],!1,!1),Ha=/^[(){}<>$|&; \t"']/,Aw=Hr(["(",")","{","}","<",">","$","|","&",";"," "," ",'"',"'"],!1,!1),lC=/^[<>&; \t"']/,cC=Hr(["<",">","&",";"," "," ",'"',"'"],!1,!1),uC=/^[ \t]/,Po=Hr([" "," "],!1,!1),b=0,Ne=0,Ya=[{line:1,column:1}],Ei=0,Sl=[],be=0,vs;if("startRule"in e){if(!(e.startRule in i))throw new Error(`Can't start parsing from rule "`+e.startRule+'".');n=i[e.startRule]}function lw(){return t.substring(Ne,b)}function cw(){return U(Ne,b)}function pg(d,D){throw D=D!==void 0?D:U(Ne,b),Ce([xl(d)],t.substring(Ne,b),D)}function fr(d,D){throw D=D!==void 0?D:U(Ne,b),ye(d,D)}function ft(d,D){return{type:"literal",text:d,ignoreCase:D}}function Hr(d,D,P){return{type:"class",parts:d,inverted:D,ignoreCase:P}}function Fs(){return{type:"any"}}function gC(){return{type:"end"}}function xl(d){return{type:"other",description:d}}function S(d){var D=Ya[d],P;if(D)return D;for(P=d-1;!Ya[P];)P--;for(D=Ya[P],D={line:D.line,column:D.column};PEi&&(Ei=b,Sl=[]),Sl.push(d))}function ye(d,D){return new bA(d,null,null,D)}function Ce(d,D,P){return new bA(bA.buildMessage(d,D),d,D,P)}function Me(){var d,D;return d=b,D=tt(),D===r&&(D=null),D!==r&&(Ne=d,D=s(D)),d=D,d}function tt(){var d,D,P,Y,$;if(d=b,D=uw(),D!==r){for(P=[],Y=De();Y!==r;)P.push(Y),Y=De();P!==r?(Y=Rs(),Y!==r?($=Kt(),$===r&&($=null),$!==r?(Ne=d,D=o(D,Y,$),d=D):(b=d,d=r)):(b=d,d=r)):(b=d,d=r)}else b=d,d=r;if(d===r)if(d=b,D=uw(),D!==r){for(P=[],Y=De();Y!==r;)P.push(Y),Y=De();P!==r?(Y=Rs(),Y===r&&(Y=null),Y!==r?(Ne=d,D=a(D,Y),d=D):(b=d,d=r)):(b=d,d=r)}else b=d,d=r;return d}function Kt(){var d,D,P,Y,$;for(d=b,D=[],P=De();P!==r;)D.push(P),P=De();if(D!==r)if(P=tt(),P!==r){for(Y=[],$=De();$!==r;)Y.push($),$=De();Y!==r?(Ne=d,D=l(P),d=D):(b=d,d=r)}else b=d,d=r;else b=d,d=r;return d}function Rs(){var d;return t.charCodeAt(b)===59?(d=c,b++):(d=r,be===0&&j(u)),d===r&&(t.charCodeAt(b)===38?(d=g,b++):(d=r,be===0&&j(h))),d}function uw(){var d,D,P;return d=b,D=dL(),D!==r?(P=Roe(),P===r&&(P=null),P!==r?(Ne=d,D=f(D,P),d=D):(b=d,d=r)):(b=d,d=r),d}function Roe(){var d,D,P,Y,$,Pe,Pt;for(d=b,D=[],P=De();P!==r;)D.push(P),P=De();if(D!==r)if(P=Loe(),P!==r){for(Y=[],$=De();$!==r;)Y.push($),$=De();if(Y!==r)if($=uw(),$!==r){for(Pe=[],Pt=De();Pt!==r;)Pe.push(Pt),Pt=De();Pe!==r?(Ne=d,D=p(P,$),d=D):(b=d,d=r)}else b=d,d=r;else b=d,d=r}else b=d,d=r;else b=d,d=r;return d}function Loe(){var d;return t.substr(b,2)===m?(d=m,b+=2):(d=r,be===0&&j(I)),d===r&&(t.substr(b,2)===y?(d=y,b+=2):(d=r,be===0&&j(w))),d}function dL(){var d,D,P;return d=b,D=Ooe(),D!==r?(P=Noe(),P===r&&(P=null),P!==r?(Ne=d,D=x(D,P),d=D):(b=d,d=r)):(b=d,d=r),d}function Noe(){var d,D,P,Y,$,Pe,Pt;for(d=b,D=[],P=De();P!==r;)D.push(P),P=De();if(D!==r)if(P=Moe(),P!==r){for(Y=[],$=De();$!==r;)Y.push($),$=De();if(Y!==r)if($=dL(),$!==r){for(Pe=[],Pt=De();Pt!==r;)Pe.push(Pt),Pt=De();Pe!==r?(Ne=d,D=F(P,$),d=D):(b=d,d=r)}else b=d,d=r;else b=d,d=r}else b=d,d=r;else b=d,d=r;return d}function Moe(){var d;return t.substr(b,2)===N?(d=N,b+=2):(d=r,be===0&&j(K)),d===r&&(t.charCodeAt(b)===124?(d=v,b++):(d=r,be===0&&j(J))),d}function hC(){var d,D,P,Y,$,Pe;if(d=b,D=QL(),D!==r)if(t.charCodeAt(b)===61?(P=oe,b++):(P=r,be===0&&j(T)),P!==r)if(Y=mL(),Y!==r){for($=[],Pe=De();Pe!==r;)$.push(Pe),Pe=De();$!==r?(Ne=d,D=A(D,Y),d=D):(b=d,d=r)}else b=d,d=r;else b=d,d=r;else b=d,d=r;if(d===r)if(d=b,D=QL(),D!==r)if(t.charCodeAt(b)===61?(P=oe,b++):(P=r,be===0&&j(T)),P!==r){for(Y=[],$=De();$!==r;)Y.push($),$=De();Y!==r?(Ne=d,D=W(D),d=D):(b=d,d=r)}else b=d,d=r;else b=d,d=r;return d}function Ooe(){var d,D,P,Y,$,Pe,Pt,Pl,Yr,yi,ko;for(d=b,D=[],P=De();P!==r;)D.push(P),P=De();if(D!==r)if(t.charCodeAt(b)===40?(P=ee,b++):(P=r,be===0&&j(re)),P!==r){for(Y=[],$=De();$!==r;)Y.push($),$=De();if(Y!==r)if($=tt(),$!==r){for(Pe=[],Pt=De();Pt!==r;)Pe.push(Pt),Pt=De();if(Pe!==r)if(t.charCodeAt(b)===41?(Pt=H,b++):(Pt=r,be===0&&j(R)),Pt!==r){for(Pl=[],Yr=De();Yr!==r;)Pl.push(Yr),Yr=De();if(Pl!==r){for(Yr=[],yi=dg();yi!==r;)Yr.push(yi),yi=dg();if(Yr!==r){for(yi=[],ko=De();ko!==r;)yi.push(ko),ko=De();yi!==r?(Ne=d,D=ke($,Yr),d=D):(b=d,d=r)}else b=d,d=r}else b=d,d=r}else b=d,d=r;else b=d,d=r}else b=d,d=r;else b=d,d=r}else b=d,d=r;else b=d,d=r;if(d===r){for(d=b,D=[],P=De();P!==r;)D.push(P),P=De();if(D!==r)if(t.charCodeAt(b)===123?(P=Le,b++):(P=r,be===0&&j(qe)),P!==r){for(Y=[],$=De();$!==r;)Y.push($),$=De();if(Y!==r)if($=tt(),$!==r){for(Pe=[],Pt=De();Pt!==r;)Pe.push(Pt),Pt=De();if(Pe!==r)if(t.charCodeAt(b)===125?(Pt=Ke,b++):(Pt=r,be===0&&j(ie)),Pt!==r){for(Pl=[],Yr=De();Yr!==r;)Pl.push(Yr),Yr=De();if(Pl!==r){for(Yr=[],yi=dg();yi!==r;)Yr.push(yi),yi=dg();if(Yr!==r){for(yi=[],ko=De();ko!==r;)yi.push(ko),ko=De();yi!==r?(Ne=d,D=ce($,Yr),d=D):(b=d,d=r)}else b=d,d=r}else b=d,d=r}else b=d,d=r;else b=d,d=r}else b=d,d=r;else b=d,d=r}else b=d,d=r;else b=d,d=r;if(d===r){for(d=b,D=[],P=De();P!==r;)D.push(P),P=De();if(D!==r){for(P=[],Y=hC();Y!==r;)P.push(Y),Y=hC();if(P!==r){for(Y=[],$=De();$!==r;)Y.push($),$=De();if(Y!==r){if($=[],Pe=CL(),Pe!==r)for(;Pe!==r;)$.push(Pe),Pe=CL();else $=r;if($!==r){for(Pe=[],Pt=De();Pt!==r;)Pe.push(Pt),Pt=De();Pe!==r?(Ne=d,D=Se(P,$),d=D):(b=d,d=r)}else b=d,d=r}else b=d,d=r}else b=d,d=r}else b=d,d=r;if(d===r){for(d=b,D=[],P=De();P!==r;)D.push(P),P=De();if(D!==r){if(P=[],Y=hC(),Y!==r)for(;Y!==r;)P.push(Y),Y=hC();else P=r;if(P!==r){for(Y=[],$=De();$!==r;)Y.push($),$=De();Y!==r?(Ne=d,D=he(P),d=D):(b=d,d=r)}else b=d,d=r}else b=d,d=r}}}return d}function Koe(){var d,D,P,Y,$;for(d=b,D=[],P=De();P!==r;)D.push(P),P=De();if(D!==r){if(P=[],Y=fC(),Y!==r)for(;Y!==r;)P.push(Y),Y=fC();else P=r;if(P!==r){for(Y=[],$=De();$!==r;)Y.push($),$=De();Y!==r?(Ne=d,D=Ie(P),d=D):(b=d,d=r)}else b=d,d=r}else b=d,d=r;return d}function CL(){var d,D,P;for(d=b,D=[],P=De();P!==r;)D.push(P),P=De();if(D!==r?(P=dg(),P!==r?(Ne=d,D=pe(P),d=D):(b=d,d=r)):(b=d,d=r),d===r){for(d=b,D=[],P=De();P!==r;)D.push(P),P=De();D!==r?(P=fC(),P!==r?(Ne=d,D=pe(P),d=D):(b=d,d=r)):(b=d,d=r)}return d}function dg(){var d,D,P,Y,$;for(d=b,D=[],P=De();P!==r;)D.push(P),P=De();return D!==r?(Qe.test(t.charAt(b))?(P=t.charAt(b),b++):(P=r,be===0&&j(Z)),P===r&&(P=null),P!==r?(Y=Toe(),Y!==r?($=fC(),$!==r?(Ne=d,D=X(P,Y,$),d=D):(b=d,d=r)):(b=d,d=r)):(b=d,d=r)):(b=d,d=r),d}function Toe(){var d;return t.substr(b,2)===ae?(d=ae,b+=2):(d=r,be===0&&j(ue)),d===r&&(t.substr(b,2)===we?(d=we,b+=2):(d=r,be===0&&j(lt)),d===r&&(t.charCodeAt(b)===62?(d=Ct,b++):(d=r,be===0&&j(xt)),d===r&&(t.substr(b,3)===xn?(d=xn,b+=3):(d=r,be===0&&j(Ii)),d===r&&(t.substr(b,2)===Xt?(d=Xt,b+=2):(d=r,be===0&&j(_i)),d===r&&(t.charCodeAt(b)===60?(d=Vn,b++):(d=r,be===0&&j(rg))))))),d}function fC(){var d,D,P;for(d=b,D=[],P=De();P!==r;)D.push(P),P=De();return D!==r?(P=mL(),P!==r?(Ne=d,D=pe(P),d=D):(b=d,d=r)):(b=d,d=r),d}function mL(){var d,D,P;if(d=b,D=[],P=IL(),P!==r)for(;P!==r;)D.push(P),P=IL();else D=r;return D!==r&&(Ne=d,D=Gd(D)),d=D,d}function IL(){var d,D;return d=b,D=Uoe(),D!==r&&(Ne=d,D=Ps(D)),d=D,d===r&&(d=b,D=Hoe(),D!==r&&(Ne=d,D=Ps(D)),d=D,d===r&&(d=b,D=Yoe(),D!==r&&(Ne=d,D=Ps(D)),d=D)),d}function Uoe(){var d,D,P,Y;return d=b,t.charCodeAt(b)===39?(D=ig,b++):(D=r,be===0&&j(jd)),D!==r?(P=Goe(),P!==r?(t.charCodeAt(b)===39?(Y=ig,b++):(Y=r,be===0&&j(jd)),Y!==r?(Ne=d,D=qB(P),d=D):(b=d,d=r)):(b=d,d=r)):(b=d,d=r),d}function Hoe(){var d,D,P,Y;if(d=b,t.charCodeAt(b)===34?(D=ng,b++):(D=r,be===0&&j(qd)),D!==r){for(P=[],Y=EL();Y!==r;)P.push(Y),Y=EL();P!==r?(t.charCodeAt(b)===34?(Y=ng,b++):(Y=r,be===0&&j(qd)),Y!==r?(Ne=d,D=Jd(P),d=D):(b=d,d=r)):(b=d,d=r)}else b=d,d=r;return d}function Yoe(){var d,D,P;if(d=b,D=[],P=yL(),P!==r)for(;P!==r;)D.push(P),P=yL();else D=r;return D!==r&&(Ne=d,D=Jd(D)),d=D,d}function EL(){var d,D;return d=b,D=BL(),D!==r&&(Ne=d,D=Wd(D)),d=D,d===r&&(d=b,D=wL(),D!==r&&(Ne=d,D=JB(D)),d=D,d===r&&(d=b,D=hw(),D!==r&&(Ne=d,D=WB(D)),d=D,d===r&&(d=b,D=joe(),D!==r&&(Ne=d,D=sg(D)),d=D))),d}function yL(){var d,D;return d=b,D=BL(),D!==r&&(Ne=d,D=zB(D)),d=D,d===r&&(d=b,D=wL(),D!==r&&(Ne=d,D=VB(D)),d=D,d===r&&(d=b,D=hw(),D!==r&&(Ne=d,D=zd(D)),d=D,d===r&&(d=b,D=Joe(),D!==r&&(Ne=d,D=XB(D)),d=D,d===r&&(d=b,D=qoe(),D!==r&&(Ne=d,D=sg(D)),d=D)))),d}function Goe(){var d,D,P,Y,$;for(d=b,D=[],P=b,t.charCodeAt(b)===92?(Y=_,b++):(Y=r,be===0&&j(ks)),Y!==r?(t.length>b?($=t.charAt(b),b++):($=r,be===0&&j($i)),$!==r?(Ne=P,Y=en($),P=Y):(b=P,P=r)):(b=P,P=r),P===r&&(og.test(t.charAt(b))?(P=t.charAt(b),b++):(P=r,be===0&&j(Vd)));P!==r;)D.push(P),P=b,t.charCodeAt(b)===92?(Y=_,b++):(Y=r,be===0&&j(ks)),Y!==r?(t.length>b?($=t.charAt(b),b++):($=r,be===0&&j($i)),$!==r?(Ne=P,Y=en($),P=Y):(b=P,P=r)):(b=P,P=r),P===r&&(og.test(t.charAt(b))?(P=t.charAt(b),b++):(P=r,be===0&&j(Vd)));return D!==r&&(Ne=d,D=Ql(D)),d=D,d}function joe(){var d,D,P,Y,$;if(d=b,D=[],P=b,t.charCodeAt(b)===92?(Y=_,b++):(Y=r,be===0&&j(ks)),Y!==r?(t.length>b?($=t.charAt(b),b++):($=r,be===0&&j($i)),$!==r?(Ne=P,Y=en($),P=Y):(b=P,P=r)):(b=P,P=r),P===r&&(ag.test(t.charAt(b))?(P=t.charAt(b),b++):(P=r,be===0&&j(Xd))),P!==r)for(;P!==r;)D.push(P),P=b,t.charCodeAt(b)===92?(Y=_,b++):(Y=r,be===0&&j(ks)),Y!==r?(t.length>b?($=t.charAt(b),b++):($=r,be===0&&j($i)),$!==r?(Ne=P,Y=en($),P=Y):(b=P,P=r)):(b=P,P=r),P===r&&(ag.test(t.charAt(b))?(P=t.charAt(b),b++):(P=r,be===0&&j(Xd)));else D=r;return D!==r&&(Ne=d,D=Ql(D)),d=D,d}function qoe(){var d,D,P,Y,$;if(d=b,D=[],P=b,t.charCodeAt(b)===92?(Y=_,b++):(Y=r,be===0&&j(ks)),Y!==r?(t.length>b?($=t.charAt(b),b++):($=r,be===0&&j($i)),$!==r?(Ne=P,Y=en($),P=Y):(b=P,P=r)):(b=P,P=r),P===r&&(P=b,Y=b,be++,$=bL(),be--,$===r?Y=void 0:(b=Y,Y=r),Y!==r?(t.length>b?($=t.charAt(b),b++):($=r,be===0&&j($i)),$!==r?(Ne=P,Y=en($),P=Y):(b=P,P=r)):(b=P,P=r)),P!==r)for(;P!==r;)D.push(P),P=b,t.charCodeAt(b)===92?(Y=_,b++):(Y=r,be===0&&j(ks)),Y!==r?(t.length>b?($=t.charAt(b),b++):($=r,be===0&&j($i)),$!==r?(Ne=P,Y=en($),P=Y):(b=P,P=r)):(b=P,P=r),P===r&&(P=b,Y=b,be++,$=bL(),be--,$===r?Y=void 0:(b=Y,Y=r),Y!==r?(t.length>b?($=t.charAt(b),b++):($=r,be===0&&j($i)),$!==r?(Ne=P,Y=en($),P=Y):(b=P,P=r)):(b=P,P=r));else D=r;return D!==r&&(Ne=d,D=Ql(D)),d=D,d}function gw(){var d,D,P,Y,$,Pe;if(d=b,t.charCodeAt(b)===45?(D=Ag,b++):(D=r,be===0&&j(bl)),D===r&&(t.charCodeAt(b)===43?(D=lg,b++):(D=r,be===0&&j(cg))),D===r&&(D=null),D!==r){if(P=[],Qe.test(t.charAt(b))?(Y=t.charAt(b),b++):(Y=r,be===0&&j(Z)),Y!==r)for(;Y!==r;)P.push(Y),Qe.test(t.charAt(b))?(Y=t.charAt(b),b++):(Y=r,be===0&&j(Z));else P=r;if(P!==r)if(t.charCodeAt(b)===46?(Y=ZB,b++):(Y=r,be===0&&j(_B)),Y!==r){if($=[],Qe.test(t.charAt(b))?(Pe=t.charAt(b),b++):(Pe=r,be===0&&j(Z)),Pe!==r)for(;Pe!==r;)$.push(Pe),Qe.test(t.charAt(b))?(Pe=t.charAt(b),b++):(Pe=r,be===0&&j(Z));else $=r;$!==r?(Ne=d,D=$B(D,P,$),d=D):(b=d,d=r)}else b=d,d=r;else b=d,d=r}else b=d,d=r;if(d===r){if(d=b,t.charCodeAt(b)===45?(D=Ag,b++):(D=r,be===0&&j(bl)),D===r&&(t.charCodeAt(b)===43?(D=lg,b++):(D=r,be===0&&j(cg))),D===r&&(D=null),D!==r){if(P=[],Qe.test(t.charAt(b))?(Y=t.charAt(b),b++):(Y=r,be===0&&j(Z)),Y!==r)for(;Y!==r;)P.push(Y),Qe.test(t.charAt(b))?(Y=t.charAt(b),b++):(Y=r,be===0&&j(Z));else P=r;P!==r?(Ne=d,D=Zd(D,P),d=D):(b=d,d=r)}else b=d,d=r;if(d===r&&(d=b,D=hw(),D!==r&&(Ne=d,D=_d(D)),d=D,d===r&&(d=b,D=mg(),D!==r&&(Ne=d,D=ew(D)),d=D,d===r)))if(d=b,t.charCodeAt(b)===40?(D=ee,b++):(D=r,be===0&&j(re)),D!==r){for(P=[],Y=De();Y!==r;)P.push(Y),Y=De();if(P!==r)if(Y=pC(),Y!==r){for($=[],Pe=De();Pe!==r;)$.push(Pe),Pe=De();$!==r?(t.charCodeAt(b)===41?(Pe=H,b++):(Pe=r,be===0&&j(R)),Pe!==r?(Ne=d,D=$d(Y),d=D):(b=d,d=r)):(b=d,d=r)}else b=d,d=r;else b=d,d=r}else b=d,d=r}return d}function Cg(){var d,D,P,Y,$,Pe;if(d=b,D=gw(),D!==r){for(P=[],Y=De();Y!==r;)P.push(Y),Y=De();if(P!==r)if(t.charCodeAt(b)===42?(Y=eC,b++):(Y=r,be===0&&j(tC)),Y!==r){for($=[],Pe=De();Pe!==r;)$.push(Pe),Pe=De();$!==r?(Pe=Cg(),Pe!==r?(Ne=d,D=tw(D,Pe),d=D):(b=d,d=r)):(b=d,d=r)}else b=d,d=r;else b=d,d=r}else b=d,d=r;if(d===r){if(d=b,D=gw(),D!==r){for(P=[],Y=De();Y!==r;)P.push(Y),Y=De();if(P!==r)if(t.charCodeAt(b)===47?(Y=rw,b++):(Y=r,be===0&&j(iw)),Y!==r){for($=[],Pe=De();Pe!==r;)$.push(Pe),Pe=De();$!==r?(Pe=Cg(),Pe!==r?(Ne=d,D=nw(D,Pe),d=D):(b=d,d=r)):(b=d,d=r)}else b=d,d=r;else b=d,d=r}else b=d,d=r;d===r&&(d=gw())}return d}function pC(){var d,D,P,Y,$,Pe;if(d=b,D=Cg(),D!==r){for(P=[],Y=De();Y!==r;)P.push(Y),Y=De();if(P!==r)if(t.charCodeAt(b)===43?(Y=lg,b++):(Y=r,be===0&&j(cg)),Y!==r){for($=[],Pe=De();Pe!==r;)$.push(Pe),Pe=De();$!==r?(Pe=pC(),Pe!==r?(Ne=d,D=sw(D,Pe),d=D):(b=d,d=r)):(b=d,d=r)}else b=d,d=r;else b=d,d=r}else b=d,d=r;if(d===r){if(d=b,D=Cg(),D!==r){for(P=[],Y=De();Y!==r;)P.push(Y),Y=De();if(P!==r)if(t.charCodeAt(b)===45?(Y=Ag,b++):(Y=r,be===0&&j(bl)),Y!==r){for($=[],Pe=De();Pe!==r;)$.push(Pe),Pe=De();$!==r?(Pe=pC(),Pe!==r?(Ne=d,D=O(D,Pe),d=D):(b=d,d=r)):(b=d,d=r)}else b=d,d=r;else b=d,d=r}else b=d,d=r;d===r&&(d=Cg())}return d}function BL(){var d,D,P,Y,$,Pe;if(d=b,t.substr(b,3)===rt?(D=rt,b+=3):(D=r,be===0&&j(Dl)),D!==r){for(P=[],Y=De();Y!==r;)P.push(Y),Y=De();if(P!==r)if(Y=pC(),Y!==r){for($=[],Pe=De();Pe!==r;)$.push(Pe),Pe=De();$!==r?(t.substr(b,2)===Ki?(Pe=Ki,b+=2):(Pe=r,be===0&&j(ug)),Pe!==r?(Ne=d,D=Oe(Y),d=D):(b=d,d=r)):(b=d,d=r)}else b=d,d=r;else b=d,d=r}else b=d,d=r;return d}function wL(){var d,D,P,Y;return d=b,t.substr(b,2)===Ka?(D=Ka,b+=2):(D=r,be===0&&j(rC)),D!==r?(P=tt(),P!==r?(t.charCodeAt(b)===41?(Y=H,b++):(Y=r,be===0&&j(R)),Y!==r?(Ne=d,D=pL(P),d=D):(b=d,d=r)):(b=d,d=r)):(b=d,d=r),d}function hw(){var d,D,P,Y,$,Pe;return d=b,t.substr(b,2)===Ta?(D=Ta,b+=2):(D=r,be===0&&j(iC)),D!==r?(P=mg(),P!==r?(t.substr(b,2)===Ot?(Y=Ot,b+=2):(Y=r,be===0&&j(Xn)),Y!==r?($=Koe(),$!==r?(t.charCodeAt(b)===125?(Pe=Ke,b++):(Pe=r,be===0&&j(ie)),Pe!==r?(Ne=d,D=ow(P,$),d=D):(b=d,d=r)):(b=d,d=r)):(b=d,d=r)):(b=d,d=r)):(b=d,d=r),d===r&&(d=b,t.substr(b,2)===Ta?(D=Ta,b+=2):(D=r,be===0&&j(iC)),D!==r?(P=mg(),P!==r?(t.substr(b,3)===nC?(Y=nC,b+=3):(Y=r,be===0&&j(So)),Y!==r?(Ne=d,D=sC(P),d=D):(b=d,d=r)):(b=d,d=r)):(b=d,d=r),d===r&&(d=b,t.substr(b,2)===Ta?(D=Ta,b+=2):(D=r,be===0&&j(iC)),D!==r?(P=mg(),P!==r?(t.charCodeAt(b)===125?(Y=Ke,b++):(Y=r,be===0&&j(ie)),Y!==r?(Ne=d,D=xo(P),d=D):(b=d,d=r)):(b=d,d=r)):(b=d,d=r),d===r&&(d=b,t.charCodeAt(b)===36?(D=ze,b++):(D=r,be===0&&j(aw)),D!==r?(P=mg(),P!==r?(Ne=d,D=xo(P),d=D):(b=d,d=r)):(b=d,d=r)))),d}function Joe(){var d,D,P;return d=b,D=Woe(),D!==r?(Ne=b,P=oC(D),P?P=void 0:P=r,P!==r?(Ne=d,D=aC(D),d=D):(b=d,d=r)):(b=d,d=r),d}function Woe(){var d,D,P,Y,$;if(d=b,D=[],P=b,Y=b,be++,$=DL(),be--,$===r?Y=void 0:(b=Y,Y=r),Y!==r?(t.length>b?($=t.charAt(b),b++):($=r,be===0&&j($i)),$!==r?(Ne=P,Y=en($),P=Y):(b=P,P=r)):(b=P,P=r),P!==r)for(;P!==r;)D.push(P),P=b,Y=b,be++,$=DL(),be--,$===r?Y=void 0:(b=Y,Y=r),Y!==r?(t.length>b?($=t.charAt(b),b++):($=r,be===0&&j($i)),$!==r?(Ne=P,Y=en($),P=Y):(b=P,P=r)):(b=P,P=r);else D=r;return D!==r&&(Ne=d,D=Ql(D)),d=D,d}function QL(){var d,D,P;if(d=b,D=[],AC.test(t.charAt(b))?(P=t.charAt(b),b++):(P=r,be===0&&j(gg)),P!==r)for(;P!==r;)D.push(P),AC.test(t.charAt(b))?(P=t.charAt(b),b++):(P=r,be===0&&j(gg));else D=r;return D!==r&&(Ne=d,D=hg()),d=D,d}function mg(){var d,D,P;if(d=b,D=[],fg.test(t.charAt(b))?(P=t.charAt(b),b++):(P=r,be===0&&j(Ua)),P!==r)for(;P!==r;)D.push(P),fg.test(t.charAt(b))?(P=t.charAt(b),b++):(P=r,be===0&&j(Ua));else D=r;return D!==r&&(Ne=d,D=hg()),d=D,d}function bL(){var d;return Ha.test(t.charAt(b))?(d=t.charAt(b),b++):(d=r,be===0&&j(Aw)),d}function DL(){var d;return lC.test(t.charAt(b))?(d=t.charAt(b),b++):(d=r,be===0&&j(cC)),d}function De(){var d,D;if(d=[],uC.test(t.charAt(b))?(D=t.charAt(b),b++):(D=r,be===0&&j(Po)),D!==r)for(;D!==r;)d.push(D),uC.test(t.charAt(b))?(D=t.charAt(b),b++):(D=r,be===0&&j(Po));else d=r;return d}if(vs=n(),vs!==r&&b===t.length)return vs;throw vs!==r&&b{"use strict";function vEe(t,e){function r(){this.constructor=t}r.prototype=e.prototype,t.prototype=new r}function DA(t,e,r,i){this.message=t,this.expected=e,this.found=r,this.location=i,this.name="SyntaxError",typeof Error.captureStackTrace=="function"&&Error.captureStackTrace(this,DA)}vEe(DA,Error);DA.buildMessage=function(t,e){var r={literal:function(c){return'"'+n(c.text)+'"'},class:function(c){var u="",g;for(g=0;g0){for(g=1,h=1;gN&&(N=w,K=[]),K.push(Z))}function ie(Z,X){return new DA(Z,null,null,X)}function ce(Z,X,ae){return new DA(DA.buildMessage(Z,X),Z,X,ae)}function Se(){var Z,X,ae,ue;return Z=w,X=he(),X!==r?(t.charCodeAt(w)===47?(ae=s,w++):(ae=r,v===0&&Ke(o)),ae!==r?(ue=he(),ue!==r?(x=Z,X=a(X,ue),Z=X):(w=Z,Z=r)):(w=Z,Z=r)):(w=Z,Z=r),Z===r&&(Z=w,X=he(),X!==r&&(x=Z,X=l(X)),Z=X),Z}function he(){var Z,X,ae,ue;return Z=w,X=Ie(),X!==r?(t.charCodeAt(w)===64?(ae=c,w++):(ae=r,v===0&&Ke(u)),ae!==r?(ue=Qe(),ue!==r?(x=Z,X=g(X,ue),Z=X):(w=Z,Z=r)):(w=Z,Z=r)):(w=Z,Z=r),Z===r&&(Z=w,X=Ie(),X!==r&&(x=Z,X=h(X)),Z=X),Z}function Ie(){var Z,X,ae,ue,we;return Z=w,t.charCodeAt(w)===64?(X=c,w++):(X=r,v===0&&Ke(u)),X!==r?(ae=pe(),ae!==r?(t.charCodeAt(w)===47?(ue=s,w++):(ue=r,v===0&&Ke(o)),ue!==r?(we=pe(),we!==r?(x=Z,X=f(),Z=X):(w=Z,Z=r)):(w=Z,Z=r)):(w=Z,Z=r)):(w=Z,Z=r),Z===r&&(Z=w,X=pe(),X!==r&&(x=Z,X=f()),Z=X),Z}function pe(){var Z,X,ae;if(Z=w,X=[],p.test(t.charAt(w))?(ae=t.charAt(w),w++):(ae=r,v===0&&Ke(m)),ae!==r)for(;ae!==r;)X.push(ae),p.test(t.charAt(w))?(ae=t.charAt(w),w++):(ae=r,v===0&&Ke(m));else X=r;return X!==r&&(x=Z,X=f()),Z=X,Z}function Qe(){var Z,X,ae;if(Z=w,X=[],I.test(t.charAt(w))?(ae=t.charAt(w),w++):(ae=r,v===0&&Ke(y)),ae!==r)for(;ae!==r;)X.push(ae),I.test(t.charAt(w))?(ae=t.charAt(w),w++):(ae=r,v===0&&Ke(y));else X=r;return X!==r&&(x=Z,X=f()),Z=X,Z}if(J=n(),J!==r&&w===t.length)return J;throw J!==r&&w{"use strict";function Ej(t){return typeof t=="undefined"||t===null}function REe(t){return typeof t=="object"&&t!==null}function LEe(t){return Array.isArray(t)?t:Ej(t)?[]:[t]}function NEe(t,e){var r,i,n,s;if(e)for(s=Object.keys(e),r=0,i=s.length;r{"use strict";function jh(t,e){Error.call(this),this.name="YAMLException",this.reason=t,this.mark=e,this.message=(this.reason||"(unknown reason)")+(this.mark?" "+this.mark.toString():""),Error.captureStackTrace?Error.captureStackTrace(this,this.constructor):this.stack=new Error().stack||""}jh.prototype=Object.create(Error.prototype);jh.prototype.constructor=jh;jh.prototype.toString=function(e){var r=this.name+": ";return r+=this.reason||"(unknown reason)",!e&&this.mark&&(r+=" "+this.mark.toString()),r};yj.exports=jh});var Qj=C((aXe,Bj)=>{"use strict";var wj=xA();function sS(t,e,r,i,n){this.name=t,this.buffer=e,this.position=r,this.line=i,this.column=n}sS.prototype.getSnippet=function(e,r){var i,n,s,o,a;if(!this.buffer)return null;for(e=e||4,r=r||75,i="",n=this.position;n>0&&`\0\r \x85\u2028\u2029`.indexOf(this.buffer.charAt(n-1))===-1;)if(n-=1,this.position-n>r/2-1){i=" ... ",n+=5;break}for(s="",o=this.position;or/2-1){s=" ... ",o-=5;break}return a=this.buffer.slice(n,o),zY.repeat(" ",e)+i+a+s+` -`+zY.repeat(" ",e+this.position-n+i.length)+"^"};Wb.prototype.toString=function(e){var r,i="";return this.name&&(i+='in "'+this.name+'" '),i+="at line "+(this.line+1)+", column "+(this.column+1),e||(r=this.getSnippet(),r&&(i+=`: -`+r)),i};WY.exports=Wb});var dr=C((X6e,VY)=>{"use strict";var ZY=Xl(),Xme=["kind","resolve","construct","instanceOf","predicate","represent","defaultStyle","styleAliases"],Vme=["scalar","sequence","mapping"];function Zme(t){var e={};return t!==null&&Object.keys(t).forEach(function(r){t[r].forEach(function(i){e[String(i)]=r})}),e}function _me(t,e){if(e=e||{},Object.keys(e).forEach(function(r){if(Xme.indexOf(r)===-1)throw new ZY('Unknown option "'+r+'" is met in definition of "'+t+'" YAML type.')}),this.tag=t,this.kind=e.kind||null,this.resolve=e.resolve||function(){return!0},this.construct=e.construct||function(r){return r},this.instanceOf=e.instanceOf||null,this.predicate=e.predicate||null,this.represent=e.represent||null,this.defaultStyle=e.defaultStyle||null,this.styleAliases=Zme(e.styleAliases||null),Vme.indexOf(this.kind)===-1)throw new ZY('Unknown kind "'+this.kind+'" is specified for "'+t+'" YAML type.')}VY.exports=_me});var sA=C((V6e,_Y)=>{"use strict";var $Y=nA(),vm=Xl(),$me=dr();function zb(t,e,r){var i=[];return t.include.forEach(function(n){r=zb(n,e,r)}),t[e].forEach(function(n){r.forEach(function(s,o){s.tag===n.tag&&s.kind===n.kind&&i.push(o)}),r.push(n)}),r.filter(function(n,s){return i.indexOf(s)===-1})}function eIe(){var t={scalar:{},sequence:{},mapping:{},fallback:{}},e,r;function i(n){t[n.kind][n.tag]=t.fallback[n.tag]=n}for(e=0,r=arguments.length;e{"use strict";var tIe=dr();ej.exports=new tIe("tag:yaml.org,2002:str",{kind:"scalar",construct:function(t){return t!==null?t:""}})});var ij=C((_6e,rj)=>{"use strict";var rIe=dr();rj.exports=new rIe("tag:yaml.org,2002:seq",{kind:"sequence",construct:function(t){return t!==null?t:[]}})});var sj=C(($6e,nj)=>{"use strict";var iIe=dr();nj.exports=new iIe("tag:yaml.org,2002:map",{kind:"mapping",construct:function(t){return t!==null?t:{}}})});var Fm=C((e7e,oj)=>{"use strict";var nIe=sA();oj.exports=new nIe({explicit:[tj(),ij(),sj()]})});var Aj=C((t7e,aj)=>{"use strict";var sIe=dr();function oIe(t){if(t===null)return!0;var e=t.length;return e===1&&t==="~"||e===4&&(t==="null"||t==="Null"||t==="NULL")}function aIe(){return null}function AIe(t){return t===null}aj.exports=new sIe("tag:yaml.org,2002:null",{kind:"scalar",resolve:oIe,construct:aIe,predicate:AIe,represent:{canonical:function(){return"~"},lowercase:function(){return"null"},uppercase:function(){return"NULL"},camelcase:function(){return"Null"}},defaultStyle:"lowercase"})});var cj=C((r7e,lj)=>{"use strict";var lIe=dr();function cIe(t){if(t===null)return!1;var e=t.length;return e===4&&(t==="true"||t==="True"||t==="TRUE")||e===5&&(t==="false"||t==="False"||t==="FALSE")}function uIe(t){return t==="true"||t==="True"||t==="TRUE"}function gIe(t){return Object.prototype.toString.call(t)==="[object Boolean]"}lj.exports=new lIe("tag:yaml.org,2002:bool",{kind:"scalar",resolve:cIe,construct:uIe,predicate:gIe,represent:{lowercase:function(t){return t?"true":"false"},uppercase:function(t){return t?"TRUE":"FALSE"},camelcase:function(t){return t?"True":"False"}},defaultStyle:"lowercase"})});var gj=C((i7e,uj)=>{"use strict";var hIe=nA(),fIe=dr();function pIe(t){return 48<=t&&t<=57||65<=t&&t<=70||97<=t&&t<=102}function dIe(t){return 48<=t&&t<=55}function CIe(t){return 48<=t&&t<=57}function mIe(t){if(t===null)return!1;var e=t.length,r=0,i=!1,n;if(!e)return!1;if(n=t[r],(n==="-"||n==="+")&&(n=t[++r]),n==="0"){if(r+1===e)return!0;if(n=t[++r],n==="b"){for(r++;r=0?"0b"+t.toString(2):"-0b"+t.toString(2).slice(1)},octal:function(t){return t>=0?"0"+t.toString(8):"-0"+t.toString(8).slice(1)},decimal:function(t){return t.toString(10)},hexadecimal:function(t){return t>=0?"0x"+t.toString(16).toUpperCase():"-0x"+t.toString(16).toUpperCase().slice(1)}},defaultStyle:"decimal",styleAliases:{binary:[2,"bin"],octal:[8,"oct"],decimal:[10,"dec"],hexadecimal:[16,"hex"]}})});var pj=C((n7e,hj)=>{"use strict";var fj=nA(),yIe=dr(),BIe=new RegExp("^(?:[-+]?(?:0|[1-9][0-9_]*)(?:\\.[0-9_]*)?(?:[eE][-+]?[0-9]+)?|\\.[0-9_]+(?:[eE][-+]?[0-9]+)?|[-+]?[0-9][0-9_]*(?::[0-5]?[0-9])+\\.[0-9_]*|[-+]?\\.(?:inf|Inf|INF)|\\.(?:nan|NaN|NAN))$");function wIe(t){return!(t===null||!BIe.test(t)||t[t.length-1]==="_")}function QIe(t){var e,r,i,n;return e=t.replace(/_/g,"").toLowerCase(),r=e[0]==="-"?-1:1,n=[],"+-".indexOf(e[0])>=0&&(e=e.slice(1)),e===".inf"?r===1?Number.POSITIVE_INFINITY:Number.NEGATIVE_INFINITY:e===".nan"?NaN:e.indexOf(":")>=0?(e.split(":").forEach(function(s){n.unshift(parseFloat(s,10))}),e=0,i=1,n.forEach(function(s){e+=s*i,i*=60}),r*e):r*parseFloat(e,10)}var bIe=/^[-+]?[0-9]+e/;function DIe(t,e){var r;if(isNaN(t))switch(e){case"lowercase":return".nan";case"uppercase":return".NAN";case"camelcase":return".NaN"}else if(Number.POSITIVE_INFINITY===t)switch(e){case"lowercase":return".inf";case"uppercase":return".INF";case"camelcase":return".Inf"}else if(Number.NEGATIVE_INFINITY===t)switch(e){case"lowercase":return"-.inf";case"uppercase":return"-.INF";case"camelcase":return"-.Inf"}else if(fj.isNegativeZero(t))return"-0.0";return r=t.toString(10),bIe.test(r)?r.replace("e",".e"):r}function SIe(t){return Object.prototype.toString.call(t)==="[object Number]"&&(t%1!=0||fj.isNegativeZero(t))}hj.exports=new yIe("tag:yaml.org,2002:float",{kind:"scalar",resolve:wIe,construct:QIe,predicate:SIe,represent:DIe,defaultStyle:"lowercase"})});var Xb=C((s7e,dj)=>{"use strict";var PIe=sA();dj.exports=new PIe({include:[Fm()],implicit:[Aj(),cj(),gj(),pj()]})});var Vb=C((o7e,Cj)=>{"use strict";var xIe=sA();Cj.exports=new xIe({include:[Xb()]})});var yj=C((a7e,mj)=>{"use strict";var kIe=dr(),Ij=new RegExp("^([0-9][0-9][0-9][0-9])-([0-9][0-9])-([0-9][0-9])$"),Ej=new RegExp("^([0-9][0-9][0-9][0-9])-([0-9][0-9]?)-([0-9][0-9]?)(?:[Tt]|[ \\t]+)([0-9][0-9]?):([0-9][0-9]):([0-9][0-9])(?:\\.([0-9]*))?(?:[ \\t]*(Z|([-+])([0-9][0-9]?)(?::([0-9][0-9]))?))?$");function vIe(t){return t===null?!1:Ij.exec(t)!==null||Ej.exec(t)!==null}function FIe(t){var e,r,i,n,s,o,a,l=0,c=null,u,g,h;if(e=Ij.exec(t),e===null&&(e=Ej.exec(t)),e===null)throw new Error("Date resolve error");if(r=+e[1],i=+e[2]-1,n=+e[3],!e[4])return new Date(Date.UTC(r,i,n));if(s=+e[4],o=+e[5],a=+e[6],e[7]){for(l=e[7].slice(0,3);l.length<3;)l+="0";l=+l}return e[9]&&(u=+e[10],g=+(e[11]||0),c=(u*60+g)*6e4,e[9]==="-"&&(c=-c)),h=new Date(Date.UTC(r,i,n,s,o,a,l)),c&&h.setTime(h.getTime()-c),h}function RIe(t){return t.toISOString()}mj.exports=new kIe("tag:yaml.org,2002:timestamp",{kind:"scalar",resolve:vIe,construct:FIe,instanceOf:Date,represent:RIe})});var wj=C((A7e,Bj)=>{"use strict";var LIe=dr();function MIe(t){return t==="<<"||t===null}Bj.exports=new LIe("tag:yaml.org,2002:merge",{kind:"scalar",resolve:MIe})});var Dj=C((l7e,Qj)=>{"use strict";var oA;try{bj=require,oA=bj("buffer").Buffer}catch(t){}var bj,NIe=dr(),Zb=`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/= -\r`;function OIe(t){if(t===null)return!1;var e,r,i=0,n=t.length,s=Zb;for(r=0;r64)){if(e<0)return!1;i+=6}return i%8==0}function TIe(t){var e,r,i=t.replace(/[\r\n=]/g,""),n=i.length,s=Zb,o=0,a=[];for(e=0;e>16&255),a.push(o>>8&255),a.push(o&255)),o=o<<6|s.indexOf(i.charAt(e));return r=n%4*6,r===0?(a.push(o>>16&255),a.push(o>>8&255),a.push(o&255)):r===18?(a.push(o>>10&255),a.push(o>>2&255)):r===12&&a.push(o>>4&255),oA?oA.from?oA.from(a):new oA(a):a}function KIe(t){var e="",r=0,i,n,s=t.length,o=Zb;for(i=0;i>18&63],e+=o[r>>12&63],e+=o[r>>6&63],e+=o[r&63]),r=(r<<8)+t[i];return n=s%3,n===0?(e+=o[r>>18&63],e+=o[r>>12&63],e+=o[r>>6&63],e+=o[r&63]):n===2?(e+=o[r>>10&63],e+=o[r>>4&63],e+=o[r<<2&63],e+=o[64]):n===1&&(e+=o[r>>2&63],e+=o[r<<4&63],e+=o[64],e+=o[64]),e}function UIe(t){return oA&&oA.isBuffer(t)}Qj.exports=new NIe("tag:yaml.org,2002:binary",{kind:"scalar",resolve:OIe,construct:TIe,predicate:UIe,represent:KIe})});var Pj=C((c7e,Sj)=>{"use strict";var HIe=dr(),YIe=Object.prototype.hasOwnProperty,jIe=Object.prototype.toString;function GIe(t){if(t===null)return!0;var e=[],r,i,n,s,o,a=t;for(r=0,i=a.length;r{"use strict";var JIe=dr(),WIe=Object.prototype.toString;function zIe(t){if(t===null)return!0;var e,r,i,n,s,o=t;for(s=new Array(o.length),e=0,r=o.length;e{"use strict";var VIe=dr(),ZIe=Object.prototype.hasOwnProperty;function _Ie(t){if(t===null)return!0;var e,r=t;for(e in r)if(ZIe.call(r,e)&&r[e]!==null)return!1;return!0}function $Ie(t){return t!==null?t:{}}vj.exports=new VIe("tag:yaml.org,2002:set",{kind:"mapping",resolve:_Ie,construct:$Ie})});var Zl=C((h7e,Rj)=>{"use strict";var eEe=sA();Rj.exports=new eEe({include:[Vb()],implicit:[yj(),wj()],explicit:[Dj(),Pj(),kj(),Fj()]})});var Mj=C((f7e,Lj)=>{"use strict";var tEe=dr();function rEe(){return!0}function iEe(){}function nEe(){return""}function sEe(t){return typeof t=="undefined"}Lj.exports=new tEe("tag:yaml.org,2002:js/undefined",{kind:"scalar",resolve:rEe,construct:iEe,predicate:sEe,represent:nEe})});var Oj=C((p7e,Nj)=>{"use strict";var oEe=dr();function aEe(t){if(t===null||t.length===0)return!1;var e=t,r=/\/([gim]*)$/.exec(t),i="";return!(e[0]==="/"&&(r&&(i=r[1]),i.length>3||e[e.length-i.length-1]!=="/"))}function AEe(t){var e=t,r=/\/([gim]*)$/.exec(t),i="";return e[0]==="/"&&(r&&(i=r[1]),e=e.slice(1,e.length-i.length-1)),new RegExp(e,i)}function lEe(t){var e="/"+t.source+"/";return t.global&&(e+="g"),t.multiline&&(e+="m"),t.ignoreCase&&(e+="i"),e}function cEe(t){return Object.prototype.toString.call(t)==="[object RegExp]"}Nj.exports=new oEe("tag:yaml.org,2002:js/regexp",{kind:"scalar",resolve:aEe,construct:AEe,predicate:cEe,represent:lEe})});var Uj=C((d7e,Tj)=>{"use strict";var Rm;try{Kj=require,Rm=Kj("esprima")}catch(t){typeof window!="undefined"&&(Rm=window.esprima)}var Kj,uEe=dr();function gEe(t){if(t===null)return!1;try{var e="("+t+")",r=Rm.parse(e,{range:!0});return!(r.type!=="Program"||r.body.length!==1||r.body[0].type!=="ExpressionStatement"||r.body[0].expression.type!=="ArrowFunctionExpression"&&r.body[0].expression.type!=="FunctionExpression")}catch(i){return!1}}function hEe(t){var e="("+t+")",r=Rm.parse(e,{range:!0}),i=[],n;if(r.type!=="Program"||r.body.length!==1||r.body[0].type!=="ExpressionStatement"||r.body[0].expression.type!=="ArrowFunctionExpression"&&r.body[0].expression.type!=="FunctionExpression")throw new Error("Failed to resolve function");return r.body[0].expression.params.forEach(function(s){i.push(s.name)}),n=r.body[0].expression.body.range,r.body[0].expression.body.type==="BlockStatement"?new Function(i,e.slice(n[0]+1,n[1]-1)):new Function(i,"return "+e.slice(n[0],n[1]))}function fEe(t){return t.toString()}function pEe(t){return Object.prototype.toString.call(t)==="[object Function]"}Tj.exports=new uEe("tag:yaml.org,2002:js/function",{kind:"scalar",resolve:gEe,construct:hEe,predicate:pEe,represent:fEe})});var ch=C((C7e,Hj)=>{"use strict";var Yj=sA();Hj.exports=Yj.DEFAULT=new Yj({include:[Zl()],explicit:[Mj(),Oj(),Uj()]})});var sG=C((m7e,uh)=>{"use strict";var Vn=nA(),jj=Xl(),dEe=XY(),_b=Zl(),CEe=ch(),aA=Object.prototype.hasOwnProperty,Lm=1,Gj=2,qj=3,Mm=4,$b=1,mEe=2,Jj=3,IEe=/[\x00-\x08\x0B\x0C\x0E-\x1F\x7F-\x84\x86-\x9F\uFFFE\uFFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF]/,EEe=/[\x85\u2028\u2029]/,yEe=/[,\[\]\{\}]/,Wj=/^(?:!|!!|![a-z\-]+!)$/i,zj=/^(?:!|[^,\[\]\{\}])(?:%[0-9a-f]{2}|[0-9a-z\-#;\/\?:@&=\+\$,_\.!~\*'\(\)\[\]])*$/i;function Xj(t){return Object.prototype.toString.call(t)}function Zn(t){return t===10||t===13}function AA(t){return t===9||t===32}function Ii(t){return t===9||t===32||t===10||t===13}function _l(t){return t===44||t===91||t===93||t===123||t===125}function BEe(t){var e;return 48<=t&&t<=57?t-48:(e=t|32,97<=e&&e<=102?e-97+10:-1)}function wEe(t){return t===120?2:t===117?4:t===85?8:0}function QEe(t){return 48<=t&&t<=57?t-48:-1}function Vj(t){return t===48?"\0":t===97?"\x07":t===98?"\b":t===116||t===9?" ":t===110?` -`:t===118?"\v":t===102?"\f":t===114?"\r":t===101?"":t===32?" ":t===34?'"':t===47?"/":t===92?"\\":t===78?"\x85":t===95?"\xA0":t===76?"\u2028":t===80?"\u2029":""}function bEe(t){return t<=65535?String.fromCharCode(t):String.fromCharCode((t-65536>>10)+55296,(t-65536&1023)+56320)}var Zj=new Array(256),_j=new Array(256);for(var $l=0;$l<256;$l++)Zj[$l]=Vj($l)?1:0,_j[$l]=Vj($l);function DEe(t,e){this.input=t,this.filename=e.filename||null,this.schema=e.schema||CEe,this.onWarning=e.onWarning||null,this.legacy=e.legacy||!1,this.json=e.json||!1,this.listener=e.listener||null,this.implicitTypes=this.schema.compiledImplicit,this.typeMap=this.schema.compiledTypeMap,this.length=t.length,this.position=0,this.line=0,this.lineStart=0,this.lineIndent=0,this.documents=[]}function $j(t,e){return new jj(e,new dEe(t.filename,t.input,t.position,t.line,t.position-t.lineStart))}function ze(t,e){throw $j(t,e)}function Nm(t,e){t.onWarning&&t.onWarning.call(null,$j(t,e))}var eG={YAML:function(e,r,i){var n,s,o;e.version!==null&&ze(e,"duplication of %YAML directive"),i.length!==1&&ze(e,"YAML directive accepts exactly one argument"),n=/^([0-9]+)\.([0-9]+)$/.exec(i[0]),n===null&&ze(e,"ill-formed argument of the YAML directive"),s=parseInt(n[1],10),o=parseInt(n[2],10),s!==1&&ze(e,"unacceptable YAML version of the document"),e.version=i[0],e.checkLineBreaks=o<2,o!==1&&o!==2&&Nm(e,"unsupported YAML version of the document")},TAG:function(e,r,i){var n,s;i.length!==2&&ze(e,"TAG directive accepts exactly two arguments"),n=i[0],s=i[1],Wj.test(n)||ze(e,"ill-formed tag handle (first argument) of the TAG directive"),aA.call(e.tagMap,n)&&ze(e,'there is a previously declared suffix for "'+n+'" tag handle'),zj.test(s)||ze(e,"ill-formed tag prefix (second argument) of the TAG directive"),e.tagMap[n]=s}};function Oo(t,e,r,i){var n,s,o,a;if(e1&&(t.result+=Vn.repeat(` -`,e-1))}function SEe(t,e,r){var i,n,s,o,a,l,c,u,g=t.kind,h=t.result,f;if(f=t.input.charCodeAt(t.position),Ii(f)||_l(f)||f===35||f===38||f===42||f===33||f===124||f===62||f===39||f===34||f===37||f===64||f===96||(f===63||f===45)&&(n=t.input.charCodeAt(t.position+1),Ii(n)||r&&_l(n)))return!1;for(t.kind="scalar",t.result="",s=o=t.position,a=!1;f!==0;){if(f===58){if(n=t.input.charCodeAt(t.position+1),Ii(n)||r&&_l(n))break}else if(f===35){if(i=t.input.charCodeAt(t.position-1),Ii(i))break}else{if(t.position===t.lineStart&&Om(t)||r&&_l(f))break;if(Zn(f))if(l=t.line,c=t.lineStart,u=t.lineIndent,ar(t,!1,-1),t.lineIndent>=e){a=!0,f=t.input.charCodeAt(t.position);continue}else{t.position=o,t.line=l,t.lineStart=c,t.lineIndent=u;break}}a&&(Oo(t,s,o,!1),tD(t,t.line-l),s=o=t.position,a=!1),AA(f)||(o=t.position+1),f=t.input.charCodeAt(++t.position)}return Oo(t,s,o,!1),t.result?!0:(t.kind=g,t.result=h,!1)}function PEe(t,e){var r,i,n;if(r=t.input.charCodeAt(t.position),r!==39)return!1;for(t.kind="scalar",t.result="",t.position++,i=n=t.position;(r=t.input.charCodeAt(t.position))!==0;)if(r===39)if(Oo(t,i,t.position,!0),r=t.input.charCodeAt(++t.position),r===39)i=t.position,t.position++,n=t.position;else return!0;else Zn(r)?(Oo(t,i,n,!0),tD(t,ar(t,!1,e)),i=n=t.position):t.position===t.lineStart&&Om(t)?ze(t,"unexpected end of the document within a single quoted scalar"):(t.position++,n=t.position);ze(t,"unexpected end of the stream within a single quoted scalar")}function xEe(t,e){var r,i,n,s,o,a;if(a=t.input.charCodeAt(t.position),a!==34)return!1;for(t.kind="scalar",t.result="",t.position++,r=i=t.position;(a=t.input.charCodeAt(t.position))!==0;){if(a===34)return Oo(t,r,t.position,!0),t.position++,!0;if(a===92){if(Oo(t,r,t.position,!0),a=t.input.charCodeAt(++t.position),Zn(a))ar(t,!1,e);else if(a<256&&Zj[a])t.result+=_j[a],t.position++;else if((o=wEe(a))>0){for(n=o,s=0;n>0;n--)a=t.input.charCodeAt(++t.position),(o=BEe(a))>=0?s=(s<<4)+o:ze(t,"expected hexadecimal character");t.result+=bEe(s),t.position++}else ze(t,"unknown escape sequence");r=i=t.position}else Zn(a)?(Oo(t,r,i,!0),tD(t,ar(t,!1,e)),r=i=t.position):t.position===t.lineStart&&Om(t)?ze(t,"unexpected end of the document within a double quoted scalar"):(t.position++,i=t.position)}ze(t,"unexpected end of the stream within a double quoted scalar")}function kEe(t,e){var r=!0,i,n=t.tag,s,o=t.anchor,a,l,c,u,g,h={},f,p,m,I;if(I=t.input.charCodeAt(t.position),I===91)l=93,g=!1,s=[];else if(I===123)l=125,g=!0,s={};else return!1;for(t.anchor!==null&&(t.anchorMap[t.anchor]=s),I=t.input.charCodeAt(++t.position);I!==0;){if(ar(t,!0,e),I=t.input.charCodeAt(t.position),I===l)return t.position++,t.tag=n,t.anchor=o,t.kind=g?"mapping":"sequence",t.result=s,!0;r||ze(t,"missed comma between flow collection entries"),p=f=m=null,c=u=!1,I===63&&(a=t.input.charCodeAt(t.position+1),Ii(a)&&(c=u=!0,t.position++,ar(t,!0,e))),i=t.line,tc(t,e,Lm,!1,!0),p=t.tag,f=t.result,ar(t,!0,e),I=t.input.charCodeAt(t.position),(u||t.line===i)&&I===58&&(c=!0,I=t.input.charCodeAt(++t.position),ar(t,!0,e),tc(t,e,Lm,!1,!0),m=t.result),g?ec(t,s,h,p,f,m):c?s.push(ec(t,null,h,p,f,m)):s.push(f),ar(t,!0,e),I=t.input.charCodeAt(t.position),I===44?(r=!0,I=t.input.charCodeAt(++t.position)):r=!1}ze(t,"unexpected end of the stream within a flow collection")}function vEe(t,e){var r,i,n=$b,s=!1,o=!1,a=e,l=0,c=!1,u,g;if(g=t.input.charCodeAt(t.position),g===124)i=!1;else if(g===62)i=!0;else return!1;for(t.kind="scalar",t.result="";g!==0;)if(g=t.input.charCodeAt(++t.position),g===43||g===45)$b===n?n=g===43?Jj:mEe:ze(t,"repeat of a chomping mode identifier");else if((u=QEe(g))>=0)u===0?ze(t,"bad explicit indentation width of a block scalar; it cannot be less than one"):o?ze(t,"repeat of an indentation width identifier"):(a=e+u-1,o=!0);else break;if(AA(g)){do g=t.input.charCodeAt(++t.position);while(AA(g));if(g===35)do g=t.input.charCodeAt(++t.position);while(!Zn(g)&&g!==0)}for(;g!==0;){for(eD(t),t.lineIndent=0,g=t.input.charCodeAt(t.position);(!o||t.lineIndenta&&(a=t.lineIndent),Zn(g)){l++;continue}if(t.lineIndente)&&l!==0)ze(t,"bad indentation of a sequence entry");else if(t.lineIndente)&&(tc(t,e,Mm,!0,n)&&(p?h=t.result:f=t.result),p||(ec(t,c,u,g,h,f,s,o),g=h=f=null),ar(t,!0,-1),I=t.input.charCodeAt(t.position)),t.lineIndent>e&&I!==0)ze(t,"bad indentation of a mapping entry");else if(t.lineIndente?l=1:t.lineIndent===e?l=0:t.lineIndente?l=1:t.lineIndent===e?l=0:t.lineIndent tag; it should be "'+f.kind+'", not "'+t.kind+'"'),f.resolve(t.result)?(t.result=f.construct(t.result),t.anchor!==null&&(t.anchorMap[t.anchor]=t.result)):ze(t,"cannot resolve a node with !<"+t.tag+"> explicit tag")):ze(t,"unknown tag !<"+t.tag+">");return t.listener!==null&&t.listener("close",t),t.tag!==null||t.anchor!==null||u}function NEe(t){var e=t.position,r,i,n,s=!1,o;for(t.version=null,t.checkLineBreaks=t.legacy,t.tagMap={},t.anchorMap={};(o=t.input.charCodeAt(t.position))!==0&&(ar(t,!0,-1),o=t.input.charCodeAt(t.position),!(t.lineIndent>0||o!==37));){for(s=!0,o=t.input.charCodeAt(++t.position),r=t.position;o!==0&&!Ii(o);)o=t.input.charCodeAt(++t.position);for(i=t.input.slice(r,t.position),n=[],i.length<1&&ze(t,"directive name must not be less than one character in length");o!==0;){for(;AA(o);)o=t.input.charCodeAt(++t.position);if(o===35){do o=t.input.charCodeAt(++t.position);while(o!==0&&!Zn(o));break}if(Zn(o))break;for(r=t.position;o!==0&&!Ii(o);)o=t.input.charCodeAt(++t.position);n.push(t.input.slice(r,t.position))}o!==0&&eD(t),aA.call(eG,i)?eG[i](t,i,n):Nm(t,'unknown document directive "'+i+'"')}if(ar(t,!0,-1),t.lineIndent===0&&t.input.charCodeAt(t.position)===45&&t.input.charCodeAt(t.position+1)===45&&t.input.charCodeAt(t.position+2)===45?(t.position+=3,ar(t,!0,-1)):s&&ze(t,"directives end mark is expected"),tc(t,t.lineIndent-1,Mm,!1,!0),ar(t,!0,-1),t.checkLineBreaks&&EEe.test(t.input.slice(e,t.position))&&Nm(t,"non-ASCII line breaks are interpreted as content"),t.documents.push(t.result),t.position===t.lineStart&&Om(t)){t.input.charCodeAt(t.position)===46&&(t.position+=3,ar(t,!0,-1));return}if(t.position{"use strict";var gh=nA(),hh=Xl(),KEe=ch(),UEe=Zl(),oG=Object.prototype.toString,aG=Object.prototype.hasOwnProperty,HEe=9,Tm=10,YEe=32,jEe=33,GEe=34,AG=35,qEe=37,JEe=38,WEe=39,zEe=42,lG=44,XEe=45,cG=58,VEe=62,ZEe=63,_Ee=64,uG=91,gG=93,$Ee=96,hG=123,eye=124,fG=125,Kr={};Kr[0]="\\0";Kr[7]="\\a";Kr[8]="\\b";Kr[9]="\\t";Kr[10]="\\n";Kr[11]="\\v";Kr[12]="\\f";Kr[13]="\\r";Kr[27]="\\e";Kr[34]='\\"';Kr[92]="\\\\";Kr[133]="\\N";Kr[160]="\\_";Kr[8232]="\\L";Kr[8233]="\\P";var tye=["y","Y","yes","Yes","YES","on","On","ON","n","N","no","No","NO","off","Off","OFF"];function rye(t,e){var r,i,n,s,o,a,l;if(e===null)return{};for(r={},i=Object.keys(e),n=0,s=i.length;nr/2-1){s=" ... ",o-=5;break}return a=this.buffer.slice(n,o),wj.repeat(" ",e)+i+a+s+` +`+wj.repeat(" ",e+this.position-n+i.length)+"^"};sS.prototype.toString=function(e){var r,i="";return this.name&&(i+='in "'+this.name+'" '),i+="at line "+(this.line+1)+", column "+(this.column+1),e||(r=this.getSnippet(),r&&(i+=`: +`+r)),i};Bj.exports=sS});var Er=C((AXe,bj)=>{"use strict";var Dj=Qc(),KEe=["kind","resolve","construct","instanceOf","predicate","represent","defaultStyle","styleAliases"],TEe=["scalar","sequence","mapping"];function UEe(t){var e={};return t!==null&&Object.keys(t).forEach(function(r){t[r].forEach(function(i){e[String(i)]=r})}),e}function HEe(t,e){if(e=e||{},Object.keys(e).forEach(function(r){if(KEe.indexOf(r)===-1)throw new Dj('Unknown option "'+r+'" is met in definition of "'+t+'" YAML type.')}),this.tag=t,this.kind=e.kind||null,this.resolve=e.resolve||function(){return!0},this.construct=e.construct||function(r){return r},this.instanceOf=e.instanceOf||null,this.predicate=e.predicate||null,this.represent=e.represent||null,this.defaultStyle=e.defaultStyle||null,this.styleAliases=UEe(e.styleAliases||null),TEe.indexOf(this.kind)===-1)throw new Dj('Unknown kind "'+this.kind+'" is specified for "'+t+'" YAML type.')}bj.exports=HEe});var PA=C((lXe,Sj)=>{"use strict";var xj=xA(),xI=Qc(),YEe=Er();function oS(t,e,r){var i=[];return t.include.forEach(function(n){r=oS(n,e,r)}),t[e].forEach(function(n){r.forEach(function(s,o){s.tag===n.tag&&s.kind===n.kind&&i.push(o)}),r.push(n)}),r.filter(function(n,s){return i.indexOf(s)===-1})}function GEe(){var t={scalar:{},sequence:{},mapping:{},fallback:{}},e,r;function i(n){t[n.kind][n.tag]=t.fallback[n.tag]=n}for(e=0,r=arguments.length;e{"use strict";var jEe=Er();Pj.exports=new jEe("tag:yaml.org,2002:str",{kind:"scalar",construct:function(t){return t!==null?t:""}})});var Fj=C((uXe,vj)=>{"use strict";var qEe=Er();vj.exports=new qEe("tag:yaml.org,2002:seq",{kind:"sequence",construct:function(t){return t!==null?t:[]}})});var Lj=C((gXe,Rj)=>{"use strict";var JEe=Er();Rj.exports=new JEe("tag:yaml.org,2002:map",{kind:"mapping",construct:function(t){return t!==null?t:{}}})});var PI=C((hXe,Nj)=>{"use strict";var WEe=PA();Nj.exports=new WEe({explicit:[kj(),Fj(),Lj()]})});var Oj=C((fXe,Mj)=>{"use strict";var zEe=Er();function VEe(t){if(t===null)return!0;var e=t.length;return e===1&&t==="~"||e===4&&(t==="null"||t==="Null"||t==="NULL")}function XEe(){return null}function ZEe(t){return t===null}Mj.exports=new zEe("tag:yaml.org,2002:null",{kind:"scalar",resolve:VEe,construct:XEe,predicate:ZEe,represent:{canonical:function(){return"~"},lowercase:function(){return"null"},uppercase:function(){return"NULL"},camelcase:function(){return"Null"}},defaultStyle:"lowercase"})});var Tj=C((pXe,Kj)=>{"use strict";var _Ee=Er();function $Ee(t){if(t===null)return!1;var e=t.length;return e===4&&(t==="true"||t==="True"||t==="TRUE")||e===5&&(t==="false"||t==="False"||t==="FALSE")}function eye(t){return t==="true"||t==="True"||t==="TRUE"}function tye(t){return Object.prototype.toString.call(t)==="[object Boolean]"}Kj.exports=new _Ee("tag:yaml.org,2002:bool",{kind:"scalar",resolve:$Ee,construct:eye,predicate:tye,represent:{lowercase:function(t){return t?"true":"false"},uppercase:function(t){return t?"TRUE":"FALSE"},camelcase:function(t){return t?"True":"False"}},defaultStyle:"lowercase"})});var Hj=C((dXe,Uj)=>{"use strict";var rye=xA(),iye=Er();function nye(t){return 48<=t&&t<=57||65<=t&&t<=70||97<=t&&t<=102}function sye(t){return 48<=t&&t<=55}function oye(t){return 48<=t&&t<=57}function aye(t){if(t===null)return!1;var e=t.length,r=0,i=!1,n;if(!e)return!1;if(n=t[r],(n==="-"||n==="+")&&(n=t[++r]),n==="0"){if(r+1===e)return!0;if(n=t[++r],n==="b"){for(r++;r=0?"0b"+t.toString(2):"-0b"+t.toString(2).slice(1)},octal:function(t){return t>=0?"0"+t.toString(8):"-0"+t.toString(8).slice(1)},decimal:function(t){return t.toString(10)},hexadecimal:function(t){return t>=0?"0x"+t.toString(16).toUpperCase():"-0x"+t.toString(16).toUpperCase().slice(1)}},defaultStyle:"decimal",styleAliases:{binary:[2,"bin"],octal:[8,"oct"],decimal:[10,"dec"],hexadecimal:[16,"hex"]}})});var jj=C((CXe,Yj)=>{"use strict";var Gj=xA(),cye=Er(),uye=new RegExp("^(?:[-+]?(?:0|[1-9][0-9_]*)(?:\\.[0-9_]*)?(?:[eE][-+]?[0-9]+)?|\\.[0-9_]+(?:[eE][-+]?[0-9]+)?|[-+]?[0-9][0-9_]*(?::[0-5]?[0-9])+\\.[0-9_]*|[-+]?\\.(?:inf|Inf|INF)|\\.(?:nan|NaN|NAN))$");function gye(t){return!(t===null||!uye.test(t)||t[t.length-1]==="_")}function hye(t){var e,r,i,n;return e=t.replace(/_/g,"").toLowerCase(),r=e[0]==="-"?-1:1,n=[],"+-".indexOf(e[0])>=0&&(e=e.slice(1)),e===".inf"?r===1?Number.POSITIVE_INFINITY:Number.NEGATIVE_INFINITY:e===".nan"?NaN:e.indexOf(":")>=0?(e.split(":").forEach(function(s){n.unshift(parseFloat(s,10))}),e=0,i=1,n.forEach(function(s){e+=s*i,i*=60}),r*e):r*parseFloat(e,10)}var fye=/^[-+]?[0-9]+e/;function pye(t,e){var r;if(isNaN(t))switch(e){case"lowercase":return".nan";case"uppercase":return".NAN";case"camelcase":return".NaN"}else if(Number.POSITIVE_INFINITY===t)switch(e){case"lowercase":return".inf";case"uppercase":return".INF";case"camelcase":return".Inf"}else if(Number.NEGATIVE_INFINITY===t)switch(e){case"lowercase":return"-.inf";case"uppercase":return"-.INF";case"camelcase":return"-.Inf"}else if(Gj.isNegativeZero(t))return"-0.0";return r=t.toString(10),fye.test(r)?r.replace("e",".e"):r}function dye(t){return Object.prototype.toString.call(t)==="[object Number]"&&(t%1!=0||Gj.isNegativeZero(t))}Yj.exports=new cye("tag:yaml.org,2002:float",{kind:"scalar",resolve:gye,construct:hye,predicate:dye,represent:pye,defaultStyle:"lowercase"})});var aS=C((mXe,qj)=>{"use strict";var Cye=PA();qj.exports=new Cye({include:[PI()],implicit:[Oj(),Tj(),Hj(),jj()]})});var AS=C((IXe,Jj)=>{"use strict";var mye=PA();Jj.exports=new mye({include:[aS()]})});var Xj=C((EXe,Wj)=>{"use strict";var Iye=Er(),zj=new RegExp("^([0-9][0-9][0-9][0-9])-([0-9][0-9])-([0-9][0-9])$"),Vj=new RegExp("^([0-9][0-9][0-9][0-9])-([0-9][0-9]?)-([0-9][0-9]?)(?:[Tt]|[ \\t]+)([0-9][0-9]?):([0-9][0-9]):([0-9][0-9])(?:\\.([0-9]*))?(?:[ \\t]*(Z|([-+])([0-9][0-9]?)(?::([0-9][0-9]))?))?$");function Eye(t){return t===null?!1:zj.exec(t)!==null||Vj.exec(t)!==null}function yye(t){var e,r,i,n,s,o,a,l=0,c=null,u,g,h;if(e=zj.exec(t),e===null&&(e=Vj.exec(t)),e===null)throw new Error("Date resolve error");if(r=+e[1],i=+e[2]-1,n=+e[3],!e[4])return new Date(Date.UTC(r,i,n));if(s=+e[4],o=+e[5],a=+e[6],e[7]){for(l=e[7].slice(0,3);l.length<3;)l+="0";l=+l}return e[9]&&(u=+e[10],g=+(e[11]||0),c=(u*60+g)*6e4,e[9]==="-"&&(c=-c)),h=new Date(Date.UTC(r,i,n,s,o,a,l)),c&&h.setTime(h.getTime()-c),h}function Bye(t){return t.toISOString()}Wj.exports=new Iye("tag:yaml.org,2002:timestamp",{kind:"scalar",resolve:Eye,construct:yye,instanceOf:Date,represent:Bye})});var _j=C((yXe,Zj)=>{"use strict";var wye=Er();function Qye(t){return t==="<<"||t===null}Zj.exports=new wye("tag:yaml.org,2002:merge",{kind:"scalar",resolve:Qye})});var tq=C((BXe,$j)=>{"use strict";var kA;try{eq=require,kA=eq("buffer").Buffer}catch(t){}var eq,bye=Er(),lS=`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/= +\r`;function Dye(t){if(t===null)return!1;var e,r,i=0,n=t.length,s=lS;for(r=0;r64)){if(e<0)return!1;i+=6}return i%8==0}function Sye(t){var e,r,i=t.replace(/[\r\n=]/g,""),n=i.length,s=lS,o=0,a=[];for(e=0;e>16&255),a.push(o>>8&255),a.push(o&255)),o=o<<6|s.indexOf(i.charAt(e));return r=n%4*6,r===0?(a.push(o>>16&255),a.push(o>>8&255),a.push(o&255)):r===18?(a.push(o>>10&255),a.push(o>>2&255)):r===12&&a.push(o>>4&255),kA?kA.from?kA.from(a):new kA(a):a}function xye(t){var e="",r=0,i,n,s=t.length,o=lS;for(i=0;i>18&63],e+=o[r>>12&63],e+=o[r>>6&63],e+=o[r&63]),r=(r<<8)+t[i];return n=s%3,n===0?(e+=o[r>>18&63],e+=o[r>>12&63],e+=o[r>>6&63],e+=o[r&63]):n===2?(e+=o[r>>10&63],e+=o[r>>4&63],e+=o[r<<2&63],e+=o[64]):n===1&&(e+=o[r>>2&63],e+=o[r<<4&63],e+=o[64],e+=o[64]),e}function Pye(t){return kA&&kA.isBuffer(t)}$j.exports=new bye("tag:yaml.org,2002:binary",{kind:"scalar",resolve:Dye,construct:Sye,predicate:Pye,represent:xye})});var iq=C((wXe,rq)=>{"use strict";var kye=Er(),vye=Object.prototype.hasOwnProperty,Fye=Object.prototype.toString;function Rye(t){if(t===null)return!0;var e=[],r,i,n,s,o,a=t;for(r=0,i=a.length;r{"use strict";var Nye=Er(),Mye=Object.prototype.toString;function Oye(t){if(t===null)return!0;var e,r,i,n,s,o=t;for(s=new Array(o.length),e=0,r=o.length;e{"use strict";var Tye=Er(),Uye=Object.prototype.hasOwnProperty;function Hye(t){if(t===null)return!0;var e,r=t;for(e in r)if(Uye.call(r,e)&&r[e]!==null)return!1;return!0}function Yye(t){return t!==null?t:{}}oq.exports=new Tye("tag:yaml.org,2002:set",{kind:"mapping",resolve:Hye,construct:Yye})});var Dc=C((DXe,Aq)=>{"use strict";var Gye=PA();Aq.exports=new Gye({include:[AS()],implicit:[Xj(),_j()],explicit:[tq(),iq(),sq(),aq()]})});var cq=C((SXe,lq)=>{"use strict";var jye=Er();function qye(){return!0}function Jye(){}function Wye(){return""}function zye(t){return typeof t=="undefined"}lq.exports=new jye("tag:yaml.org,2002:js/undefined",{kind:"scalar",resolve:qye,construct:Jye,predicate:zye,represent:Wye})});var gq=C((xXe,uq)=>{"use strict";var Vye=Er();function Xye(t){if(t===null||t.length===0)return!1;var e=t,r=/\/([gim]*)$/.exec(t),i="";return!(e[0]==="/"&&(r&&(i=r[1]),i.length>3||e[e.length-i.length-1]!=="/"))}function Zye(t){var e=t,r=/\/([gim]*)$/.exec(t),i="";return e[0]==="/"&&(r&&(i=r[1]),e=e.slice(1,e.length-i.length-1)),new RegExp(e,i)}function _ye(t){var e="/"+t.source+"/";return t.global&&(e+="g"),t.multiline&&(e+="m"),t.ignoreCase&&(e+="i"),e}function $ye(t){return Object.prototype.toString.call(t)==="[object RegExp]"}uq.exports=new Vye("tag:yaml.org,2002:js/regexp",{kind:"scalar",resolve:Xye,construct:Zye,predicate:$ye,represent:_ye})});var pq=C((PXe,hq)=>{"use strict";var kI;try{fq=require,kI=fq("esprima")}catch(t){typeof window!="undefined"&&(kI=window.esprima)}var fq,eBe=Er();function tBe(t){if(t===null)return!1;try{var e="("+t+")",r=kI.parse(e,{range:!0});return!(r.type!=="Program"||r.body.length!==1||r.body[0].type!=="ExpressionStatement"||r.body[0].expression.type!=="ArrowFunctionExpression"&&r.body[0].expression.type!=="FunctionExpression")}catch(i){return!1}}function rBe(t){var e="("+t+")",r=kI.parse(e,{range:!0}),i=[],n;if(r.type!=="Program"||r.body.length!==1||r.body[0].type!=="ExpressionStatement"||r.body[0].expression.type!=="ArrowFunctionExpression"&&r.body[0].expression.type!=="FunctionExpression")throw new Error("Failed to resolve function");return r.body[0].expression.params.forEach(function(s){i.push(s.name)}),n=r.body[0].expression.body.range,r.body[0].expression.body.type==="BlockStatement"?new Function(i,e.slice(n[0]+1,n[1]-1)):new Function(i,"return "+e.slice(n[0],n[1]))}function iBe(t){return t.toString()}function nBe(t){return Object.prototype.toString.call(t)==="[object Function]"}hq.exports=new eBe("tag:yaml.org,2002:js/function",{kind:"scalar",resolve:tBe,construct:rBe,predicate:nBe,represent:iBe})});var qh=C((kXe,dq)=>{"use strict";var Cq=PA();dq.exports=Cq.DEFAULT=new Cq({include:[Dc()],explicit:[cq(),gq(),pq()]})});var Mq=C((vXe,Jh)=>{"use strict";var to=xA(),mq=Qc(),sBe=Qj(),Iq=Dc(),oBe=qh(),ta=Object.prototype.hasOwnProperty,vI=1,Eq=2,yq=3,FI=4,cS=1,aBe=2,Bq=3,ABe=/[\x00-\x08\x0B\x0C\x0E-\x1F\x7F-\x84\x86-\x9F\uFFFE\uFFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF]/,lBe=/[\x85\u2028\u2029]/,cBe=/[,\[\]\{\}]/,wq=/^(?:!|!!|![a-z\-]+!)$/i,Qq=/^(?:!|[^,\[\]\{\}])(?:%[0-9a-f]{2}|[0-9a-z\-#;\/\?:@&=\+\$,_\.!~\*'\(\)\[\]])*$/i;function bq(t){return Object.prototype.toString.call(t)}function As(t){return t===10||t===13}function vA(t){return t===9||t===32}function Pi(t){return t===9||t===32||t===10||t===13}function Sc(t){return t===44||t===91||t===93||t===123||t===125}function uBe(t){var e;return 48<=t&&t<=57?t-48:(e=t|32,97<=e&&e<=102?e-97+10:-1)}function gBe(t){return t===120?2:t===117?4:t===85?8:0}function hBe(t){return 48<=t&&t<=57?t-48:-1}function Dq(t){return t===48?"\0":t===97?"\x07":t===98?"\b":t===116||t===9?" ":t===110?` +`:t===118?"\v":t===102?"\f":t===114?"\r":t===101?"":t===32?" ":t===34?'"':t===47?"/":t===92?"\\":t===78?"\x85":t===95?"\xA0":t===76?"\u2028":t===80?"\u2029":""}function fBe(t){return t<=65535?String.fromCharCode(t):String.fromCharCode((t-65536>>10)+55296,(t-65536&1023)+56320)}var Sq=new Array(256),xq=new Array(256);for(var xc=0;xc<256;xc++)Sq[xc]=Dq(xc)?1:0,xq[xc]=Dq(xc);function pBe(t,e){this.input=t,this.filename=e.filename||null,this.schema=e.schema||oBe,this.onWarning=e.onWarning||null,this.legacy=e.legacy||!1,this.json=e.json||!1,this.listener=e.listener||null,this.implicitTypes=this.schema.compiledImplicit,this.typeMap=this.schema.compiledTypeMap,this.length=t.length,this.position=0,this.line=0,this.lineStart=0,this.lineIndent=0,this.documents=[]}function Pq(t,e){return new mq(e,new sBe(t.filename,t.input,t.position,t.line,t.position-t.lineStart))}function _e(t,e){throw Pq(t,e)}function RI(t,e){t.onWarning&&t.onWarning.call(null,Pq(t,e))}var kq={YAML:function(e,r,i){var n,s,o;e.version!==null&&_e(e,"duplication of %YAML directive"),i.length!==1&&_e(e,"YAML directive accepts exactly one argument"),n=/^([0-9]+)\.([0-9]+)$/.exec(i[0]),n===null&&_e(e,"ill-formed argument of the YAML directive"),s=parseInt(n[1],10),o=parseInt(n[2],10),s!==1&&_e(e,"unacceptable YAML version of the document"),e.version=i[0],e.checkLineBreaks=o<2,o!==1&&o!==2&&RI(e,"unsupported YAML version of the document")},TAG:function(e,r,i){var n,s;i.length!==2&&_e(e,"TAG directive accepts exactly two arguments"),n=i[0],s=i[1],wq.test(n)||_e(e,"ill-formed tag handle (first argument) of the TAG directive"),ta.call(e.tagMap,n)&&_e(e,'there is a previously declared suffix for "'+n+'" tag handle'),Qq.test(s)||_e(e,"ill-formed tag prefix (second argument) of the TAG directive"),e.tagMap[n]=s}};function ra(t,e,r,i){var n,s,o,a;if(e1&&(t.result+=to.repeat(` +`,e-1))}function dBe(t,e,r){var i,n,s,o,a,l,c,u,g=t.kind,h=t.result,f;if(f=t.input.charCodeAt(t.position),Pi(f)||Sc(f)||f===35||f===38||f===42||f===33||f===124||f===62||f===39||f===34||f===37||f===64||f===96||(f===63||f===45)&&(n=t.input.charCodeAt(t.position+1),Pi(n)||r&&Sc(n)))return!1;for(t.kind="scalar",t.result="",s=o=t.position,a=!1;f!==0;){if(f===58){if(n=t.input.charCodeAt(t.position+1),Pi(n)||r&&Sc(n))break}else if(f===35){if(i=t.input.charCodeAt(t.position-1),Pi(i))break}else{if(t.position===t.lineStart&&LI(t)||r&&Sc(f))break;if(As(f))if(l=t.line,c=t.lineStart,u=t.lineIndent,gr(t,!1,-1),t.lineIndent>=e){a=!0,f=t.input.charCodeAt(t.position);continue}else{t.position=o,t.line=l,t.lineStart=c,t.lineIndent=u;break}}a&&(ra(t,s,o,!1),gS(t,t.line-l),s=o=t.position,a=!1),vA(f)||(o=t.position+1),f=t.input.charCodeAt(++t.position)}return ra(t,s,o,!1),t.result?!0:(t.kind=g,t.result=h,!1)}function CBe(t,e){var r,i,n;if(r=t.input.charCodeAt(t.position),r!==39)return!1;for(t.kind="scalar",t.result="",t.position++,i=n=t.position;(r=t.input.charCodeAt(t.position))!==0;)if(r===39)if(ra(t,i,t.position,!0),r=t.input.charCodeAt(++t.position),r===39)i=t.position,t.position++,n=t.position;else return!0;else As(r)?(ra(t,i,n,!0),gS(t,gr(t,!1,e)),i=n=t.position):t.position===t.lineStart&&LI(t)?_e(t,"unexpected end of the document within a single quoted scalar"):(t.position++,n=t.position);_e(t,"unexpected end of the stream within a single quoted scalar")}function mBe(t,e){var r,i,n,s,o,a;if(a=t.input.charCodeAt(t.position),a!==34)return!1;for(t.kind="scalar",t.result="",t.position++,r=i=t.position;(a=t.input.charCodeAt(t.position))!==0;){if(a===34)return ra(t,r,t.position,!0),t.position++,!0;if(a===92){if(ra(t,r,t.position,!0),a=t.input.charCodeAt(++t.position),As(a))gr(t,!1,e);else if(a<256&&Sq[a])t.result+=xq[a],t.position++;else if((o=gBe(a))>0){for(n=o,s=0;n>0;n--)a=t.input.charCodeAt(++t.position),(o=uBe(a))>=0?s=(s<<4)+o:_e(t,"expected hexadecimal character");t.result+=fBe(s),t.position++}else _e(t,"unknown escape sequence");r=i=t.position}else As(a)?(ra(t,r,i,!0),gS(t,gr(t,!1,e)),r=i=t.position):t.position===t.lineStart&&LI(t)?_e(t,"unexpected end of the document within a double quoted scalar"):(t.position++,i=t.position)}_e(t,"unexpected end of the stream within a double quoted scalar")}function IBe(t,e){var r=!0,i,n=t.tag,s,o=t.anchor,a,l,c,u,g,h={},f,p,m,I;if(I=t.input.charCodeAt(t.position),I===91)l=93,g=!1,s=[];else if(I===123)l=125,g=!0,s={};else return!1;for(t.anchor!==null&&(t.anchorMap[t.anchor]=s),I=t.input.charCodeAt(++t.position);I!==0;){if(gr(t,!0,e),I=t.input.charCodeAt(t.position),I===l)return t.position++,t.tag=n,t.anchor=o,t.kind=g?"mapping":"sequence",t.result=s,!0;r||_e(t,"missed comma between flow collection entries"),p=f=m=null,c=u=!1,I===63&&(a=t.input.charCodeAt(t.position+1),Pi(a)&&(c=u=!0,t.position++,gr(t,!0,e))),i=t.line,kc(t,e,vI,!1,!0),p=t.tag,f=t.result,gr(t,!0,e),I=t.input.charCodeAt(t.position),(u||t.line===i)&&I===58&&(c=!0,I=t.input.charCodeAt(++t.position),gr(t,!0,e),kc(t,e,vI,!1,!0),m=t.result),g?Pc(t,s,h,p,f,m):c?s.push(Pc(t,null,h,p,f,m)):s.push(f),gr(t,!0,e),I=t.input.charCodeAt(t.position),I===44?(r=!0,I=t.input.charCodeAt(++t.position)):r=!1}_e(t,"unexpected end of the stream within a flow collection")}function EBe(t,e){var r,i,n=cS,s=!1,o=!1,a=e,l=0,c=!1,u,g;if(g=t.input.charCodeAt(t.position),g===124)i=!1;else if(g===62)i=!0;else return!1;for(t.kind="scalar",t.result="";g!==0;)if(g=t.input.charCodeAt(++t.position),g===43||g===45)cS===n?n=g===43?Bq:aBe:_e(t,"repeat of a chomping mode identifier");else if((u=hBe(g))>=0)u===0?_e(t,"bad explicit indentation width of a block scalar; it cannot be less than one"):o?_e(t,"repeat of an indentation width identifier"):(a=e+u-1,o=!0);else break;if(vA(g)){do g=t.input.charCodeAt(++t.position);while(vA(g));if(g===35)do g=t.input.charCodeAt(++t.position);while(!As(g)&&g!==0)}for(;g!==0;){for(uS(t),t.lineIndent=0,g=t.input.charCodeAt(t.position);(!o||t.lineIndenta&&(a=t.lineIndent),As(g)){l++;continue}if(t.lineIndente)&&l!==0)_e(t,"bad indentation of a sequence entry");else if(t.lineIndente)&&(kc(t,e,FI,!0,n)&&(p?h=t.result:f=t.result),p||(Pc(t,c,u,g,h,f,s,o),g=h=f=null),gr(t,!0,-1),I=t.input.charCodeAt(t.position)),t.lineIndent>e&&I!==0)_e(t,"bad indentation of a mapping entry");else if(t.lineIndente?l=1:t.lineIndent===e?l=0:t.lineIndente?l=1:t.lineIndent===e?l=0:t.lineIndent tag; it should be "scalar", not "'+t.kind+'"'),g=0,h=t.implicitTypes.length;g tag; it should be "'+f.kind+'", not "'+t.kind+'"'),f.resolve(t.result)?(t.result=f.construct(t.result),t.anchor!==null&&(t.anchorMap[t.anchor]=t.result)):_e(t,"cannot resolve a node with !<"+t.tag+"> explicit tag")):_e(t,"unknown tag !<"+t.tag+">");return t.listener!==null&&t.listener("close",t),t.tag!==null||t.anchor!==null||u}function bBe(t){var e=t.position,r,i,n,s=!1,o;for(t.version=null,t.checkLineBreaks=t.legacy,t.tagMap={},t.anchorMap={};(o=t.input.charCodeAt(t.position))!==0&&(gr(t,!0,-1),o=t.input.charCodeAt(t.position),!(t.lineIndent>0||o!==37));){for(s=!0,o=t.input.charCodeAt(++t.position),r=t.position;o!==0&&!Pi(o);)o=t.input.charCodeAt(++t.position);for(i=t.input.slice(r,t.position),n=[],i.length<1&&_e(t,"directive name must not be less than one character in length");o!==0;){for(;vA(o);)o=t.input.charCodeAt(++t.position);if(o===35){do o=t.input.charCodeAt(++t.position);while(o!==0&&!As(o));break}if(As(o))break;for(r=t.position;o!==0&&!Pi(o);)o=t.input.charCodeAt(++t.position);n.push(t.input.slice(r,t.position))}o!==0&&uS(t),ta.call(kq,i)?kq[i](t,i,n):RI(t,'unknown document directive "'+i+'"')}if(gr(t,!0,-1),t.lineIndent===0&&t.input.charCodeAt(t.position)===45&&t.input.charCodeAt(t.position+1)===45&&t.input.charCodeAt(t.position+2)===45?(t.position+=3,gr(t,!0,-1)):s&&_e(t,"directives end mark is expected"),kc(t,t.lineIndent-1,FI,!1,!0),gr(t,!0,-1),t.checkLineBreaks&&lBe.test(t.input.slice(e,t.position))&&RI(t,"non-ASCII line breaks are interpreted as content"),t.documents.push(t.result),t.position===t.lineStart&&LI(t)){t.input.charCodeAt(t.position)===46&&(t.position+=3,gr(t,!0,-1));return}if(t.position{"use strict";var Wh=xA(),zh=Qc(),xBe=qh(),PBe=Dc(),Oq=Object.prototype.toString,Kq=Object.prototype.hasOwnProperty,kBe=9,Vh=10,vBe=13,FBe=32,RBe=33,LBe=34,Tq=35,NBe=37,MBe=38,OBe=39,KBe=42,Uq=44,TBe=45,Hq=58,UBe=61,HBe=62,YBe=63,GBe=64,Yq=91,Gq=93,jBe=96,jq=123,qBe=124,qq=125,zr={};zr[0]="\\0";zr[7]="\\a";zr[8]="\\b";zr[9]="\\t";zr[10]="\\n";zr[11]="\\v";zr[12]="\\f";zr[13]="\\r";zr[27]="\\e";zr[34]='\\"';zr[92]="\\\\";zr[133]="\\N";zr[160]="\\_";zr[8232]="\\L";zr[8233]="\\P";var JBe=["y","Y","yes","Yes","YES","on","On","ON","n","N","no","No","NO","off","Off","OFF"];function WBe(t,e){var r,i,n,s,o,a,l;if(e===null)return{};for(r={},i=Object.keys(e),n=0,s=i.length;ni&&t[u+1]!==" ",u=s);else if(!fh(o))return Km;g=g&&mG(o)}l=l||c&&s-u-1>i&&t[u+1]!==" "}return!a&&!l?g&&!n(t)?EG:yG:r>9&&IG(t)?Km:l?wG:BG}function lye(t,e,r,i){t.dump=function(){if(e.length===0)return"''";if(!t.noCompatMode&&tye.indexOf(e)!==-1)return"'"+e+"'";var n=t.indent*Math.max(1,r),s=t.lineWidth===-1?-1:Math.max(Math.min(t.lineWidth,40),t.lineWidth-n),o=i||t.flowLevel>-1&&r>=t.flowLevel;function a(l){return nye(t,l)}switch(oye(e,o,t.indent,s,a)){case EG:return e;case yG:return"'"+e.replace(/'/g,"''")+"'";case BG:return"|"+QG(e,t.indent)+bG(dG(e,n));case wG:return">"+QG(e,t.indent)+bG(dG(aye(e,s),n));case Km:return'"'+Aye(e,s)+'"';default:throw new hh("impossible error: invalid scalar style")}}()}function QG(t,e){var r=IG(t)?String(e):"",i=t[t.length-1]===` +`&&(s+=r),s+=o;return s}function fS(t,e){return` +`+Wh.repeat(" ",t.indent*e)}function VBe(t,e){var r,i,n;for(r=0,i=t.implicitTypes.length;r0?t.charCodeAt(s-1):null,h=h&&zq(o,a)}else{for(s=0;si&&t[g+1]!==" ",g=s);else if(!vc(o))return NI;a=s>0?t.charCodeAt(s-1):null,h=h&&zq(o,a)}c=c||u&&s-g-1>i&&t[g+1]!==" "}return!l&&!c?h&&!n(t)?Xq:Zq:r>9&&Vq(t)?NI:c?$q:_q}function twe(t,e,r,i){t.dump=function(){if(e.length===0)return"''";if(!t.noCompatMode&&JBe.indexOf(e)!==-1)return"'"+e+"'";var n=t.indent*Math.max(1,r),s=t.lineWidth===-1?-1:Math.max(Math.min(t.lineWidth,40),t.lineWidth-n),o=i||t.flowLevel>-1&&r>=t.flowLevel;function a(l){return VBe(t,l)}switch(_Be(e,o,t.indent,s,a)){case Xq:return e;case Zq:return"'"+e.replace(/'/g,"''")+"'";case _q:return"|"+eJ(e,t.indent)+tJ(Wq(e,n));case $q:return">"+eJ(e,t.indent)+tJ(Wq($Be(e,s),n));case NI:return'"'+ewe(e,s)+'"';default:throw new zh("impossible error: invalid scalar style")}}()}function eJ(t,e){var r=Vq(t)?String(e):"",i=t[t.length-1]===` `,n=i&&(t[t.length-2]===` `||t===` `),s=n?"+":i?"":"-";return r+s+` -`}function bG(t){return t[t.length-1]===` -`?t.slice(0,-1):t}function aye(t,e){for(var r=/(\n+)([^\n]*)/g,i=function(){var c=t.indexOf(` -`);return c=c!==-1?c:t.length,r.lastIndex=c,DG(t.slice(0,c),e)}(),n=t[0]===` +`}function tJ(t){return t[t.length-1]===` +`?t.slice(0,-1):t}function $Be(t,e){for(var r=/(\n+)([^\n]*)/g,i=function(){var c=t.indexOf(` +`);return c=c!==-1?c:t.length,r.lastIndex=c,rJ(t.slice(0,c),e)}(),n=t[0]===` `||t[0]===" ",s,o;o=r.exec(t);){var a=o[1],l=o[2];s=l[0]===" ",i+=a+(!n&&!s&&l!==""?` -`:"")+DG(l,e),n=s}return i}function DG(t,e){if(t===""||t[0]===" ")return t;for(var r=/ [^ ]/g,i,n=0,s,o=0,a=0,l="";i=r.exec(t);)a=i.index,a-n>e&&(s=o>n?o:a,l+=` +`:"")+rJ(l,e),n=s}return i}function rJ(t,e){if(t===""||t[0]===" ")return t;for(var r=/ [^ ]/g,i,n=0,s,o=0,a=0,l="";i=r.exec(t);)a=i.index,a-n>e&&(s=o>n?o:a,l+=` `+t.slice(n,s),n=s+1),o=a;return l+=` `,t.length-n>e&&o>n?l+=t.slice(n,o)+` -`+t.slice(o+1):l+=t.slice(n),l.slice(1)}function Aye(t){for(var e="",r,i,n,s=0;s=55296&&r<=56319&&(i=t.charCodeAt(s+1),i>=56320&&i<=57343)){e+=pG((r-55296)*1024+i-56320+65536),s++;continue}n=Kr[r],e+=!n&&fh(r)?t[s]:n||pG(r)}return e}function cye(t,e,r){var i="",n=t.tag,s,o;for(s=0,o=r.length;s1024&&(u+="? "),u+=t.dump+(t.condenseFlow?'"':"")+":"+(t.condenseFlow?"":" "),!!lA(t,e,c,!1,!1)&&(u+=t.dump,i+=u));t.tag=n,t.dump="{"+i+"}"}function hye(t,e,r,i){var n="",s=t.tag,o=Object.keys(r),a,l,c,u,g,h;if(t.sortKeys===!0)o.sort();else if(typeof t.sortKeys=="function")o.sort(t.sortKeys);else if(t.sortKeys)throw new hh("sortKeys must be a boolean or a function");for(a=0,l=o.length;a1024,g&&(t.dump&&Tm===t.dump.charCodeAt(0)?h+="?":h+="? "),h+=t.dump,g&&(h+=nD(t,e)),!!lA(t,e+1,u,!0,g)&&(t.dump&&Tm===t.dump.charCodeAt(0)?h+=":":h+=": ",h+=t.dump,n+=h));t.tag=s,t.dump=n||"{}"}function SG(t,e,r){var i,n,s,o,a,l;for(n=r?t.explicitTypes:t.implicitTypes,s=0,o=n.length;s tag resolver accepts not "'+l+'" style');t.dump=i}return!0}return!1}function lA(t,e,r,i,n,s){t.tag=null,t.dump=r,SG(t,r,!1)||SG(t,r,!0);var o=oG.call(t.dump);i&&(i=t.flowLevel<0||t.flowLevel>e);var a=o==="[object Object]"||o==="[object Array]",l,c;if(a&&(l=t.duplicates.indexOf(r),c=l!==-1),(t.tag!==null&&t.tag!=="?"||c||t.indent!==2&&e>0)&&(n=!1),c&&t.usedDuplicates[l])t.dump="*ref_"+l;else{if(a&&c&&!t.usedDuplicates[l]&&(t.usedDuplicates[l]=!0),o==="[object Object]")i&&Object.keys(t.dump).length!==0?(hye(t,e,t.dump,n),c&&(t.dump="&ref_"+l+t.dump)):(gye(t,e,t.dump),c&&(t.dump="&ref_"+l+" "+t.dump));else if(o==="[object Array]"){var u=t.noArrayIndent&&e>0?e-1:e;i&&t.dump.length!==0?(uye(t,u,t.dump,n),c&&(t.dump="&ref_"+l+t.dump)):(cye(t,u,t.dump),c&&(t.dump="&ref_"+l+" "+t.dump))}else if(o==="[object String]")t.tag!=="?"&&lye(t,t.dump,e,s);else{if(t.skipInvalid)return!1;throw new hh("unacceptable kind of an object to dump "+o)}t.tag!==null&&t.tag!=="?"&&(t.dump="!<"+t.tag+"> "+t.dump)}return!0}function fye(t,e){var r=[],i=[],n,s;for(sD(t,r,i),n=0,s=i.length;n{"use strict";var Um=sG(),kG=xG();function Hm(t){return function(){throw new Error("Function "+t+" is deprecated and cannot be used.")}}Wt.exports.Type=dr();Wt.exports.Schema=sA();Wt.exports.FAILSAFE_SCHEMA=Fm();Wt.exports.JSON_SCHEMA=Xb();Wt.exports.CORE_SCHEMA=Vb();Wt.exports.DEFAULT_SAFE_SCHEMA=Zl();Wt.exports.DEFAULT_FULL_SCHEMA=ch();Wt.exports.load=Um.load;Wt.exports.loadAll=Um.loadAll;Wt.exports.safeLoad=Um.safeLoad;Wt.exports.safeLoadAll=Um.safeLoadAll;Wt.exports.dump=kG.dump;Wt.exports.safeDump=kG.safeDump;Wt.exports.YAMLException=Xl();Wt.exports.MINIMAL_SCHEMA=Fm();Wt.exports.SAFE_SCHEMA=Zl();Wt.exports.DEFAULT_SCHEMA=ch();Wt.exports.scan=Hm("scan");Wt.exports.parse=Hm("parse");Wt.exports.compose=Hm("compose");Wt.exports.addConstructor=Hm("addConstructor")});var RG=C((y7e,FG)=>{"use strict";var dye=vG();FG.exports=dye});var MG=C((B7e,LG)=>{"use strict";function Cye(t,e){function r(){this.constructor=t}r.prototype=e.prototype,t.prototype=new r}function cA(t,e,r,i){this.message=t,this.expected=e,this.found=r,this.location=i,this.name="SyntaxError",typeof Error.captureStackTrace=="function"&&Error.captureStackTrace(this,cA)}Cye(cA,Error);cA.buildMessage=function(t,e){var r={literal:function(c){return`"${n(c.text)}"`},class:function(c){var u="",g;for(g=0;g0){for(g=1,h=1;g({[de]:H})))},N=function(S){return S},O=function(S){return S},v=ho("correct indentation"),U=" ",re=vt(" ",!1),F=function(S){return S.length===al*xd},A=function(S){return S.length===(al+1)*xd},q=function(){return al++,!0},Z=function(){return al--,!0},$=function(){return Id()},T=ho("pseudostring"),G=/^[^\r\n\t ?:,\][{}#&*!|>'"%@`\-]/,Qe=Kn(["\r",` -`," "," ","?",":",",","]","[","{","}","#","&","*","!","|",">","'",'"',"%","@","`","-"],!0,!1),Pe=/^[^\r\n\t ,\][{}:#"']/,He=Kn(["\r",` -`," "," ",",","]","[","{","}",":","#",'"',"'"],!0,!1),Re=function(){return Id().replace(/^ *| *$/g,"")},ee="--",ne=vt("--",!1),Ee=/^[a-zA-Z\/0-9]/,le=Kn([["a","z"],["A","Z"],"/",["0","9"]],!1,!1),fe=/^[^\r\n\t :,]/,ue=Kn(["\r",` -`," "," ",":",","],!0,!1),De="null",z=vt("null",!1),W=function(){return null},ie="true",ae=vt("true",!1),me=function(){return!0},ot="false",ct=vt("false",!1),wt=function(){return!1},In=ho("string"),li='"',Jt=vt('"',!1),Yi=function(){return""},Tn=function(S){return S},Ca=function(S){return S.join("")},xu=/^[^"\\\0-\x1F\x7F]/,lo=Kn(['"',"\\",["\0",""],"\x7F"],!0,!1),nd='\\"',sd=vt('\\"',!1),od=function(){return'"'},ku="\\\\",_y=vt("\\\\",!1),$y=function(){return"\\"},ad="\\/",Ad=vt("\\/",!1),eB=function(){return"/"},ld="\\b",tB=vt("\\b",!1),rB=function(){return"\b"},ds="\\f",co=vt("\\f",!1),ji=function(){return"\f"},Pi="\\n",cd=vt("\\n",!1),ud=function(){return` -`},ma="\\r",gd=vt("\\r",!1),hd=function(){return"\r"},il="\\t",vu=vt("\\t",!1),Fu=function(){return" "},nl="\\u",uo=vt("\\u",!1),go=function(S,M,H,de){return String.fromCharCode(parseInt(`0x${S}${M}${H}${de}`))},iB=/^[0-9a-fA-F]/,nB=Kn([["0","9"],["a","f"],["A","F"]],!1,!1),sB=ho("blank space"),fd=/^[ \t]/,pd=Kn([" "," "],!1,!1),oB=ho("white space"),dd=/^[ \t\n\r]/,Cd=Kn([" "," ",` -`,"\r"],!1,!1),md=`\r -`,aB=vt(`\r -`,!1),AB=` -`,lB=vt(` -`,!1),cB="\r",uB=vt("\r",!1),L=0,_e=0,sl=[{line:1,column:1}],xi=0,Ru=[],Fe=0,Ia;if("startRule"in e){if(!(e.startRule in i))throw new Error(`Can't start parsing from rule "${e.startRule}".`);n=i[e.startRule]}function Id(){return t.substring(_e,L)}function sR(){return fo(_e,L)}function Ea(S,M){throw M=M!==void 0?M:fo(_e,L),wd([ho(S)],t.substring(_e,L),M)}function Ed(S,M){throw M=M!==void 0?M:fo(_e,L),hB(S,M)}function vt(S,M){return{type:"literal",text:S,ignoreCase:M}}function Kn(S,M,H){return{type:"class",parts:S,inverted:M,ignoreCase:H}}function gB(){return{type:"any"}}function yd(){return{type:"end"}}function ho(S){return{type:"other",description:S}}function Bd(S){var M=sl[S],H;if(M)return M;for(H=S-1;!sl[H];)H--;for(M=sl[H],M={line:M.line,column:M.column};Hxi&&(xi=L,Ru=[]),Ru.push(S))}function hB(S,M){return new cA(S,null,null,M)}function wd(S,M,H){return new cA(cA.buildMessage(S,M),S,M,H)}function Qd(){var S;return S=Mu(),S}function bd(){var S,M,H;for(S=L,M=[],H=Lu();H!==r;)M.push(H),H=Lu();return M!==r&&(_e=S,M=s(M)),S=M,S}function Lu(){var S,M,H,de,ge;return S=L,M=Ba(),M!==r?(t.charCodeAt(L)===45?(H=o,L++):(H=r,Fe===0&&Ye(a)),H!==r?(de=lr(),de!==r?(ge=ya(),ge!==r?(_e=S,M=l(ge),S=M):(L=S,S=r)):(L=S,S=r)):(L=S,S=r)):(L=S,S=r),S}function Mu(){var S,M,H;for(S=L,M=[],H=Nu();H!==r;)M.push(H),H=Nu();return M!==r&&(_e=S,M=c(M)),S=M,S}function Nu(){var S,M,H,de,ge,ve,Ze,Ft,Is;if(S=L,M=lr(),M===r&&(M=null),M!==r){if(H=L,t.charCodeAt(L)===35?(de=u,L++):(de=r,Fe===0&&Ye(g)),de!==r){if(ge=[],ve=L,Ze=L,Fe++,Ft=ms(),Fe--,Ft===r?Ze=void 0:(L=Ze,Ze=r),Ze!==r?(t.length>L?(Ft=t.charAt(L),L++):(Ft=r,Fe===0&&Ye(h)),Ft!==r?(Ze=[Ze,Ft],ve=Ze):(L=ve,ve=r)):(L=ve,ve=r),ve!==r)for(;ve!==r;)ge.push(ve),ve=L,Ze=L,Fe++,Ft=ms(),Fe--,Ft===r?Ze=void 0:(L=Ze,Ze=r),Ze!==r?(t.length>L?(Ft=t.charAt(L),L++):(Ft=r,Fe===0&&Ye(h)),Ft!==r?(Ze=[Ze,Ft],ve=Ze):(L=ve,ve=r)):(L=ve,ve=r);else ge=r;ge!==r?(de=[de,ge],H=de):(L=H,H=r)}else L=H,H=r;if(H===r&&(H=null),H!==r){if(de=[],ge=Rr(),ge!==r)for(;ge!==r;)de.push(ge),ge=Rr();else de=r;de!==r?(_e=S,M=f(),S=M):(L=S,S=r)}else L=S,S=r}else L=S,S=r;if(S===r&&(S=L,M=Ba(),M!==r?(H=Pd(),H!==r?(de=lr(),de===r&&(de=null),de!==r?(t.charCodeAt(L)===58?(ge=p,L++):(ge=r,Fe===0&&Ye(m)),ge!==r?(ve=lr(),ve===r&&(ve=null),ve!==r?(Ze=ya(),Ze!==r?(_e=S,M=I(H,Ze),S=M):(L=S,S=r)):(L=S,S=r)):(L=S,S=r)):(L=S,S=r)):(L=S,S=r)):(L=S,S=r),S===r&&(S=L,M=Ba(),M!==r?(H=po(),H!==r?(de=lr(),de===r&&(de=null),de!==r?(t.charCodeAt(L)===58?(ge=p,L++):(ge=r,Fe===0&&Ye(m)),ge!==r?(ve=lr(),ve===r&&(ve=null),ve!==r?(Ze=ya(),Ze!==r?(_e=S,M=I(H,Ze),S=M):(L=S,S=r)):(L=S,S=r)):(L=S,S=r)):(L=S,S=r)):(L=S,S=r)):(L=S,S=r),S===r))){if(S=L,M=Ba(),M!==r)if(H=po(),H!==r)if(de=lr(),de!==r)if(ge=xe(),ge!==r){if(ve=[],Ze=Rr(),Ze!==r)for(;Ze!==r;)ve.push(Ze),Ze=Rr();else ve=r;ve!==r?(_e=S,M=I(H,ge),S=M):(L=S,S=r)}else L=S,S=r;else L=S,S=r;else L=S,S=r;else L=S,S=r;if(S===r)if(S=L,M=Ba(),M!==r)if(H=po(),H!==r){if(de=[],ge=L,ve=lr(),ve===r&&(ve=null),ve!==r?(t.charCodeAt(L)===44?(Ze=y,L++):(Ze=r,Fe===0&&Ye(B)),Ze!==r?(Ft=lr(),Ft===r&&(Ft=null),Ft!==r?(Is=po(),Is!==r?(_e=ge,ve=P(H,Is),ge=ve):(L=ge,ge=r)):(L=ge,ge=r)):(L=ge,ge=r)):(L=ge,ge=r),ge!==r)for(;ge!==r;)de.push(ge),ge=L,ve=lr(),ve===r&&(ve=null),ve!==r?(t.charCodeAt(L)===44?(Ze=y,L++):(Ze=r,Fe===0&&Ye(B)),Ze!==r?(Ft=lr(),Ft===r&&(Ft=null),Ft!==r?(Is=po(),Is!==r?(_e=ge,ve=P(H,Is),ge=ve):(L=ge,ge=r)):(L=ge,ge=r)):(L=ge,ge=r)):(L=ge,ge=r);else de=r;de!==r?(ge=lr(),ge===r&&(ge=null),ge!==r?(t.charCodeAt(L)===58?(ve=p,L++):(ve=r,Fe===0&&Ye(m)),ve!==r?(Ze=lr(),Ze===r&&(Ze=null),Ze!==r?(Ft=ya(),Ft!==r?(_e=S,M=k(H,de,Ft),S=M):(L=S,S=r)):(L=S,S=r)):(L=S,S=r)):(L=S,S=r)):(L=S,S=r)}else L=S,S=r;else L=S,S=r}return S}function ya(){var S,M,H,de,ge,ve,Ze;if(S=L,M=L,Fe++,H=L,de=ms(),de!==r?(ge=fB(),ge!==r?(t.charCodeAt(L)===45?(ve=o,L++):(ve=r,Fe===0&&Ye(a)),ve!==r?(Ze=lr(),Ze!==r?(de=[de,ge,ve,Ze],H=de):(L=H,H=r)):(L=H,H=r)):(L=H,H=r)):(L=H,H=r),Fe--,H!==r?(L=M,M=void 0):M=r,M!==r?(H=Rr(),H!==r?(de=Dd(),de!==r?(ge=bd(),ge!==r?(ve=Sd(),ve!==r?(_e=S,M=N(ge),S=M):(L=S,S=r)):(L=S,S=r)):(L=S,S=r)):(L=S,S=r)):(L=S,S=r),S===r&&(S=L,M=ms(),M!==r?(H=Dd(),H!==r?(de=Mu(),de!==r?(ge=Sd(),ge!==r?(_e=S,M=N(de),S=M):(L=S,S=r)):(L=S,S=r)):(L=S,S=r)):(L=S,S=r),S===r))if(S=L,M=D(),M!==r){if(H=[],de=Rr(),de!==r)for(;de!==r;)H.push(de),de=Rr();else H=r;H!==r?(_e=S,M=O(M),S=M):(L=S,S=r)}else L=S,S=r;return S}function Ba(){var S,M,H;for(Fe++,S=L,M=[],t.charCodeAt(L)===32?(H=U,L++):(H=r,Fe===0&&Ye(re));H!==r;)M.push(H),t.charCodeAt(L)===32?(H=U,L++):(H=r,Fe===0&&Ye(re));return M!==r?(_e=L,H=F(M),H?H=void 0:H=r,H!==r?(M=[M,H],S=M):(L=S,S=r)):(L=S,S=r),Fe--,S===r&&(M=r,Fe===0&&Ye(v)),S}function fB(){var S,M,H;for(S=L,M=[],t.charCodeAt(L)===32?(H=U,L++):(H=r,Fe===0&&Ye(re));H!==r;)M.push(H),t.charCodeAt(L)===32?(H=U,L++):(H=r,Fe===0&&Ye(re));return M!==r?(_e=L,H=A(M),H?H=void 0:H=r,H!==r?(M=[M,H],S=M):(L=S,S=r)):(L=S,S=r),S}function Dd(){var S;return _e=L,S=q(),S?S=void 0:S=r,S}function Sd(){var S;return _e=L,S=Z(),S?S=void 0:S=r,S}function Pd(){var S;return S=Cs(),S===r&&(S=wa()),S}function po(){var S,M,H;if(S=Cs(),S===r){if(S=L,M=[],H=ci(),H!==r)for(;H!==r;)M.push(H),H=ci();else M=r;M!==r&&(_e=S,M=$()),S=M}return S}function D(){var S;return S=ol(),S===r&&(S=ye(),S===r&&(S=Cs(),S===r&&(S=wa()))),S}function xe(){var S;return S=ol(),S===r&&(S=Cs(),S===r&&(S=ci())),S}function wa(){var S,M,H,de,ge,ve;if(Fe++,S=L,G.test(t.charAt(L))?(M=t.charAt(L),L++):(M=r,Fe===0&&Ye(Qe)),M!==r){for(H=[],de=L,ge=lr(),ge===r&&(ge=null),ge!==r?(Pe.test(t.charAt(L))?(ve=t.charAt(L),L++):(ve=r,Fe===0&&Ye(He)),ve!==r?(ge=[ge,ve],de=ge):(L=de,de=r)):(L=de,de=r);de!==r;)H.push(de),de=L,ge=lr(),ge===r&&(ge=null),ge!==r?(Pe.test(t.charAt(L))?(ve=t.charAt(L),L++):(ve=r,Fe===0&&Ye(He)),ve!==r?(ge=[ge,ve],de=ge):(L=de,de=r)):(L=de,de=r);H!==r?(_e=S,M=Re(),S=M):(L=S,S=r)}else L=S,S=r;return Fe--,S===r&&(M=r,Fe===0&&Ye(T)),S}function ci(){var S,M,H,de,ge;if(S=L,t.substr(L,2)===ee?(M=ee,L+=2):(M=r,Fe===0&&Ye(ne)),M===r&&(M=null),M!==r)if(Ee.test(t.charAt(L))?(H=t.charAt(L),L++):(H=r,Fe===0&&Ye(le)),H!==r){for(de=[],fe.test(t.charAt(L))?(ge=t.charAt(L),L++):(ge=r,Fe===0&&Ye(ue));ge!==r;)de.push(ge),fe.test(t.charAt(L))?(ge=t.charAt(L),L++):(ge=r,Fe===0&&Ye(ue));de!==r?(_e=S,M=Re(),S=M):(L=S,S=r)}else L=S,S=r;else L=S,S=r;return S}function ol(){var S,M;return S=L,t.substr(L,4)===De?(M=De,L+=4):(M=r,Fe===0&&Ye(z)),M!==r&&(_e=S,M=W()),S=M,S}function ye(){var S,M;return S=L,t.substr(L,4)===ie?(M=ie,L+=4):(M=r,Fe===0&&Ye(ae)),M!==r&&(_e=S,M=me()),S=M,S===r&&(S=L,t.substr(L,5)===ot?(M=ot,L+=5):(M=r,Fe===0&&Ye(ct)),M!==r&&(_e=S,M=wt()),S=M),S}function Cs(){var S,M,H,de;return Fe++,S=L,t.charCodeAt(L)===34?(M=li,L++):(M=r,Fe===0&&Ye(Jt)),M!==r?(t.charCodeAt(L)===34?(H=li,L++):(H=r,Fe===0&&Ye(Jt)),H!==r?(_e=S,M=Yi(),S=M):(L=S,S=r)):(L=S,S=r),S===r&&(S=L,t.charCodeAt(L)===34?(M=li,L++):(M=r,Fe===0&&Ye(Jt)),M!==r?(H=pB(),H!==r?(t.charCodeAt(L)===34?(de=li,L++):(de=r,Fe===0&&Ye(Jt)),de!==r?(_e=S,M=Tn(H),S=M):(L=S,S=r)):(L=S,S=r)):(L=S,S=r)),Fe--,S===r&&(M=r,Fe===0&&Ye(In)),S}function pB(){var S,M,H;if(S=L,M=[],H=dB(),H!==r)for(;H!==r;)M.push(H),H=dB();else M=r;return M!==r&&(_e=S,M=Ca(M)),S=M,S}function dB(){var S,M,H,de,ge,ve;return xu.test(t.charAt(L))?(S=t.charAt(L),L++):(S=r,Fe===0&&Ye(lo)),S===r&&(S=L,t.substr(L,2)===nd?(M=nd,L+=2):(M=r,Fe===0&&Ye(sd)),M!==r&&(_e=S,M=od()),S=M,S===r&&(S=L,t.substr(L,2)===ku?(M=ku,L+=2):(M=r,Fe===0&&Ye(_y)),M!==r&&(_e=S,M=$y()),S=M,S===r&&(S=L,t.substr(L,2)===ad?(M=ad,L+=2):(M=r,Fe===0&&Ye(Ad)),M!==r&&(_e=S,M=eB()),S=M,S===r&&(S=L,t.substr(L,2)===ld?(M=ld,L+=2):(M=r,Fe===0&&Ye(tB)),M!==r&&(_e=S,M=rB()),S=M,S===r&&(S=L,t.substr(L,2)===ds?(M=ds,L+=2):(M=r,Fe===0&&Ye(co)),M!==r&&(_e=S,M=ji()),S=M,S===r&&(S=L,t.substr(L,2)===Pi?(M=Pi,L+=2):(M=r,Fe===0&&Ye(cd)),M!==r&&(_e=S,M=ud()),S=M,S===r&&(S=L,t.substr(L,2)===ma?(M=ma,L+=2):(M=r,Fe===0&&Ye(gd)),M!==r&&(_e=S,M=hd()),S=M,S===r&&(S=L,t.substr(L,2)===il?(M=il,L+=2):(M=r,Fe===0&&Ye(vu)),M!==r&&(_e=S,M=Fu()),S=M,S===r&&(S=L,t.substr(L,2)===nl?(M=nl,L+=2):(M=r,Fe===0&&Ye(uo)),M!==r?(H=Ou(),H!==r?(de=Ou(),de!==r?(ge=Ou(),ge!==r?(ve=Ou(),ve!==r?(_e=S,M=go(H,de,ge,ve),S=M):(L=S,S=r)):(L=S,S=r)):(L=S,S=r)):(L=S,S=r)):(L=S,S=r)))))))))),S}function Ou(){var S;return iB.test(t.charAt(L))?(S=t.charAt(L),L++):(S=r,Fe===0&&Ye(nB)),S}function lr(){var S,M;if(Fe++,S=[],fd.test(t.charAt(L))?(M=t.charAt(L),L++):(M=r,Fe===0&&Ye(pd)),M!==r)for(;M!==r;)S.push(M),fd.test(t.charAt(L))?(M=t.charAt(L),L++):(M=r,Fe===0&&Ye(pd));else S=r;return Fe--,S===r&&(M=r,Fe===0&&Ye(sB)),S}function ut(){var S,M;if(Fe++,S=[],dd.test(t.charAt(L))?(M=t.charAt(L),L++):(M=r,Fe===0&&Ye(Cd)),M!==r)for(;M!==r;)S.push(M),dd.test(t.charAt(L))?(M=t.charAt(L),L++):(M=r,Fe===0&&Ye(Cd));else S=r;return Fe--,S===r&&(M=r,Fe===0&&Ye(oB)),S}function Rr(){var S,M,H,de,ge,ve;if(S=L,M=ms(),M!==r){for(H=[],de=L,ge=lr(),ge===r&&(ge=null),ge!==r?(ve=ms(),ve!==r?(ge=[ge,ve],de=ge):(L=de,de=r)):(L=de,de=r);de!==r;)H.push(de),de=L,ge=lr(),ge===r&&(ge=null),ge!==r?(ve=ms(),ve!==r?(ge=[ge,ve],de=ge):(L=de,de=r)):(L=de,de=r);H!==r?(M=[M,H],S=M):(L=S,S=r)}else L=S,S=r;return S}function ms(){var S;return t.substr(L,2)===md?(S=md,L+=2):(S=r,Fe===0&&Ye(aB)),S===r&&(t.charCodeAt(L)===10?(S=AB,L++):(S=r,Fe===0&&Ye(lB)),S===r&&(t.charCodeAt(L)===13?(S=cB,L++):(S=r,Fe===0&&Ye(uB)))),S}let xd=2,al=0;if(Ia=n(),Ia!==r&&L===t.length)return Ia;throw Ia!==r&&L{var Fye=typeof global=="object"&&global&&global.Object===Object&&global;eq.exports=Fye});var xn=C((Z7e,tq)=>{var Rye=fD(),Lye=typeof self=="object"&&self&&self.Object===Object&&self,Mye=Rye||Lye||Function("return this")();tq.exports=Mye});var hA=C((_7e,rq)=>{var Nye=xn(),Oye=Nye.Symbol;rq.exports=Oye});var nq=C(($7e,iq)=>{function Tye(t,e){for(var r=-1,i=t==null?0:t.length,n=Array(i);++r{var Kye=Array.isArray;sq.exports=Kye});var lq=C((tXe,oq)=>{var aq=hA(),Aq=Object.prototype,Uye=Aq.hasOwnProperty,Hye=Aq.toString,Eh=aq?aq.toStringTag:void 0;function Yye(t){var e=Uye.call(t,Eh),r=t[Eh];try{t[Eh]=void 0;var i=!0}catch(s){}var n=Hye.call(t);return i&&(e?t[Eh]=r:delete t[Eh]),n}oq.exports=Yye});var uq=C((rXe,cq)=>{var jye=Object.prototype,Gye=jye.toString;function qye(t){return Gye.call(t)}cq.exports=qye});var fA=C((iXe,gq)=>{var hq=hA(),Jye=lq(),Wye=uq(),zye="[object Null]",Xye="[object Undefined]",fq=hq?hq.toStringTag:void 0;function Vye(t){return t==null?t===void 0?Xye:zye:fq&&fq in Object(t)?Jye(t):Wye(t)}gq.exports=Vye});var _n=C((nXe,pq)=>{function Zye(t){return t!=null&&typeof t=="object"}pq.exports=Zye});var Vm=C((sXe,dq)=>{var _ye=fA(),$ye=_n(),eBe="[object Symbol]";function tBe(t){return typeof t=="symbol"||$ye(t)&&_ye(t)==eBe}dq.exports=tBe});var Bq=C((oXe,Cq)=>{var mq=hA(),rBe=nq(),iBe=an(),nBe=Vm(),sBe=1/0,Iq=mq?mq.prototype:void 0,Eq=Iq?Iq.toString:void 0;function yq(t){if(typeof t=="string")return t;if(iBe(t))return rBe(t,yq)+"";if(nBe(t))return Eq?Eq.call(t):"";var e=t+"";return e=="0"&&1/t==-sBe?"-0":e}Cq.exports=yq});var rc=C((aXe,wq)=>{var oBe=Bq();function aBe(t){return t==null?"":oBe(t)}wq.exports=aBe});var pD=C((AXe,Qq)=>{function ABe(t,e,r){var i=-1,n=t.length;e<0&&(e=-e>n?0:n+e),r=r>n?n:r,r<0&&(r+=n),n=e>r?0:r-e>>>0,e>>>=0;for(var s=Array(n);++i{var lBe=pD();function cBe(t,e,r){var i=t.length;return r=r===void 0?i:r,!e&&r>=i?t:lBe(t,e,r)}bq.exports=cBe});var dD=C((cXe,Sq)=>{var uBe="\\ud800-\\udfff",gBe="\\u0300-\\u036f",hBe="\\ufe20-\\ufe2f",fBe="\\u20d0-\\u20ff",pBe=gBe+hBe+fBe,dBe="\\ufe0e\\ufe0f",CBe="\\u200d",mBe=RegExp("["+CBe+uBe+pBe+dBe+"]");function IBe(t){return mBe.test(t)}Sq.exports=IBe});var xq=C((uXe,Pq)=>{function EBe(t){return t.split("")}Pq.exports=EBe});var Oq=C((gXe,kq)=>{var vq="\\ud800-\\udfff",yBe="\\u0300-\\u036f",BBe="\\ufe20-\\ufe2f",wBe="\\u20d0-\\u20ff",QBe=yBe+BBe+wBe,bBe="\\ufe0e\\ufe0f",DBe="["+vq+"]",CD="["+QBe+"]",mD="\\ud83c[\\udffb-\\udfff]",SBe="(?:"+CD+"|"+mD+")",Fq="[^"+vq+"]",Rq="(?:\\ud83c[\\udde6-\\uddff]){2}",Lq="[\\ud800-\\udbff][\\udc00-\\udfff]",PBe="\\u200d",Mq=SBe+"?",Nq="["+bBe+"]?",xBe="(?:"+PBe+"(?:"+[Fq,Rq,Lq].join("|")+")"+Nq+Mq+")*",kBe=Nq+Mq+xBe,vBe="(?:"+[Fq+CD+"?",CD,Rq,Lq,DBe].join("|")+")",FBe=RegExp(mD+"(?="+mD+")|"+vBe+kBe,"g");function RBe(t){return t.match(FBe)||[]}kq.exports=RBe});var Kq=C((hXe,Tq)=>{var LBe=xq(),MBe=dD(),NBe=Oq();function OBe(t){return MBe(t)?NBe(t):LBe(t)}Tq.exports=OBe});var Hq=C((fXe,Uq)=>{var TBe=Dq(),KBe=dD(),UBe=Kq(),HBe=rc();function YBe(t){return function(e){e=HBe(e);var r=KBe(e)?UBe(e):void 0,i=r?r[0]:e.charAt(0),n=r?TBe(r,1).join(""):e.slice(1);return i[t]()+n}}Uq.exports=YBe});var jq=C((pXe,Yq)=>{var jBe=Hq(),GBe=jBe("toUpperCase");Yq.exports=GBe});var ID=C((dXe,Gq)=>{var qBe=rc(),JBe=jq();function WBe(t){return JBe(qBe(t).toLowerCase())}Gq.exports=WBe});var Jq=C((CXe,qq)=>{"use strict";qq.exports=(t,...e)=>new Promise(r=>{r(t(...e))})});var Zm=C((mXe,ED)=>{"use strict";var zBe=Jq(),Wq=t=>{if(t<1)throw new TypeError("Expected `concurrency` to be a number from 1 and up");let e=[],r=0,i=()=>{r--,e.length>0&&e.shift()()},n=(a,l,...c)=>{r++;let u=zBe(a,...c);l(u),u.then(i,i)},s=(a,l,...c)=>{rnew Promise(c=>s(a,c,...l));return Object.defineProperties(o,{activeCount:{get:()=>r},pendingCount:{get:()=>e.length}}),o};ED.exports=Wq;ED.exports.default=Wq});var eJ=C((PXe,eI)=>{function XBe(){var t=0,e=1,r=2,i=3,n=4,s=5,o=6,a=7,l=8,c=9,u=10,g=11,h=12,f=13,p=14,m=15,I=16,y=17,B=0,P=1,k=2,N=3,O=4;function v(A,q){return 55296<=A.charCodeAt(q)&&A.charCodeAt(q)<=56319&&56320<=A.charCodeAt(q+1)&&A.charCodeAt(q+1)<=57343}function U(A,q){q===void 0&&(q=0);var Z=A.charCodeAt(q);if(55296<=Z&&Z<=56319&&q=1){var $=A.charCodeAt(q-1),T=Z;return 55296<=$&&$<=56319?($-55296)*1024+(T-56320)+65536:T}return Z}function re(A,q,Z){var $=[A].concat(q).concat([Z]),T=$[$.length-2],G=Z,Qe=$.lastIndexOf(p);if(Qe>1&&$.slice(1,Qe).every(function(Re){return Re==i})&&[i,f,y].indexOf(A)==-1)return k;var Pe=$.lastIndexOf(n);if(Pe>0&&$.slice(1,Pe).every(function(Re){return Re==n})&&[h,n].indexOf(T)==-1)return $.filter(function(Re){return Re==n}).length%2==1?N:O;if(T==t&&G==e)return B;if(T==r||T==t||T==e)return G==p&&q.every(function(Re){return Re==i})?k:P;if(G==r||G==t||G==e)return P;if(T==o&&(G==o||G==a||G==c||G==u))return B;if((T==c||T==a)&&(G==a||G==l))return B;if((T==u||T==l)&&G==l)return B;if(G==i||G==m)return B;if(G==s)return B;if(T==h)return B;var He=$.indexOf(i)!=-1?$.lastIndexOf(i)-1:$.length-2;return[f,y].indexOf($[He])!=-1&&$.slice(He+1,-1).every(function(Re){return Re==i})&&G==p||T==m&&[I,y].indexOf(G)!=-1?B:q.indexOf(n)!=-1?k:T==n&&G==n?B:P}this.nextBreak=function(A,q){if(q===void 0&&(q=0),q<0)return 0;if(q>=A.length-1)return A.length;for(var Z=F(U(A,q)),$=[],T=q+1;T{var VBe=eJ(),ZBe=/^(.*?)(\x1b\[[^m]+m|\x1b\]8;;.*?(\x1b\\|\u0007))/,_Be=new VBe;tJ.exports=(t,e=0,r=t.length)=>{if(e<0||r<0)throw new RangeError("Negative indices aren't supported by this implementation");let i=r-e,n="",s=0,o=0;for(;t.length>0;){let a=t.match(ZBe)||[t,t,void 0],l=_Be.splitGraphemes(a[1]),c=Math.min(e-s,l.length);l=l.slice(c);let u=Math.min(i-o,l.length);n+=l.slice(0,u).join(""),s+=c,o+=u,typeof a[2]!="undefined"&&(n+=a[2]),t=t.slice(a[0].length)}return n}});var sc=C((eVe,pJ)=>{"use strict";var dJ=new Map([["C","cwd"],["f","file"],["z","gzip"],["P","preservePaths"],["U","unlink"],["strip-components","strip"],["stripComponents","strip"],["keep-newer","newer"],["keepNewer","newer"],["keep-newer-files","newer"],["keepNewerFiles","newer"],["k","keep"],["keep-existing","keep"],["keepExisting","keep"],["m","noMtime"],["no-mtime","noMtime"],["p","preserveOwner"],["L","follow"],["h","follow"]]),$Xe=pJ.exports=t=>t?Object.keys(t).map(e=>[dJ.has(e)?dJ.get(e):e,t[e]]).reduce((e,r)=>(e[r[0]]=r[1],e),Object.create(null)):{}});var mJ=C((tVe,CJ)=>{"use strict";CJ.exports=function(t){t.prototype[Symbol.iterator]=function*(){for(let e=this.head;e;e=e.next)yield e.value}}});var nI=C((rVe,IJ)=>{"use strict";IJ.exports=dt;dt.Node=pA;dt.create=dt;function dt(t){var e=this;if(e instanceof dt||(e=new dt),e.tail=null,e.head=null,e.length=0,t&&typeof t.forEach=="function")t.forEach(function(n){e.push(n)});else if(arguments.length>0)for(var r=0,i=arguments.length;r1)r=e;else if(this.head)i=this.head.next,r=this.head.value;else throw new TypeError("Reduce of empty list with no initial value");for(var n=0;i!==null;n++)r=t(r,i.value,n),i=i.next;return r};dt.prototype.reduceReverse=function(t,e){var r,i=this.tail;if(arguments.length>1)r=e;else if(this.tail)i=this.tail.prev,r=this.tail.value;else throw new TypeError("Reduce of empty list with no initial value");for(var n=this.length-1;i!==null;n--)r=t(r,i.value,n),i=i.prev;return r};dt.prototype.toArray=function(){for(var t=new Array(this.length),e=0,r=this.head;r!==null;e++)t[e]=r.value,r=r.next;return t};dt.prototype.toArrayReverse=function(){for(var t=new Array(this.length),e=0,r=this.tail;r!==null;e++)t[e]=r.value,r=r.prev;return t};dt.prototype.slice=function(t,e){e=e||this.length,e<0&&(e+=this.length),t=t||0,t<0&&(t+=this.length);var r=new dt;if(ethis.length&&(e=this.length);for(var i=0,n=this.head;n!==null&&ithis.length&&(e=this.length);for(var i=this.length,n=this.tail;n!==null&&i>e;i--)n=n.prev;for(;n!==null&&i>t;i--,n=n.prev)r.push(n.value);return r};dt.prototype.splice=function(t,e,...r){t>this.length&&(t=this.length-1),t<0&&(t=this.length+t);for(var i=0,n=this.head;n!==null&&i{"use strict";var pwe=require("events"),yJ=require("stream"),wh=nI(),BJ=require("string_decoder").StringDecoder,Hs=Symbol("EOF"),Qh=Symbol("maybeEmitEnd"),Ho=Symbol("emittedEnd"),sI=Symbol("emittingEnd"),oI=Symbol("closed"),wJ=Symbol("read"),QD=Symbol("flush"),QJ=Symbol("flushChunk"),yi=Symbol("encoding"),Ys=Symbol("decoder"),aI=Symbol("flowing"),bh=Symbol("paused"),Dh=Symbol("resume"),ni=Symbol("bufferLength"),bJ=Symbol("bufferPush"),bD=Symbol("bufferShift"),Hr=Symbol("objectMode"),Yr=Symbol("destroyed"),DJ=global._MP_NO_ITERATOR_SYMBOLS_!=="1",dwe=DJ&&Symbol.asyncIterator||Symbol("asyncIterator not implemented"),Cwe=DJ&&Symbol.iterator||Symbol("iterator not implemented"),SJ=t=>t==="end"||t==="finish"||t==="prefinish",mwe=t=>t instanceof ArrayBuffer||typeof t=="object"&&t.constructor&&t.constructor.name==="ArrayBuffer"&&t.byteLength>=0,Iwe=t=>!Buffer.isBuffer(t)&&ArrayBuffer.isView(t);EJ.exports=class PJ extends yJ{constructor(e){super();this[aI]=!1,this[bh]=!1,this.pipes=new wh,this.buffer=new wh,this[Hr]=e&&e.objectMode||!1,this[Hr]?this[yi]=null:this[yi]=e&&e.encoding||null,this[yi]==="buffer"&&(this[yi]=null),this[Ys]=this[yi]?new BJ(this[yi]):null,this[Hs]=!1,this[Ho]=!1,this[sI]=!1,this[oI]=!1,this.writable=!0,this.readable=!0,this[ni]=0,this[Yr]=!1}get bufferLength(){return this[ni]}get encoding(){return this[yi]}set encoding(e){if(this[Hr])throw new Error("cannot set encoding in objectMode");if(this[yi]&&e!==this[yi]&&(this[Ys]&&this[Ys].lastNeed||this[ni]))throw new Error("cannot change encoding");this[yi]!==e&&(this[Ys]=e?new BJ(e):null,this.buffer.length&&(this.buffer=this.buffer.map(r=>this[Ys].write(r)))),this[yi]=e}setEncoding(e){this.encoding=e}get objectMode(){return this[Hr]}set objectMode(e){this[Hr]=this[Hr]||!!e}write(e,r,i){if(this[Hs])throw new Error("write after end");return this[Yr]?(this.emit("error",Object.assign(new Error("Cannot call write after a stream was destroyed"),{code:"ERR_STREAM_DESTROYED"})),!0):(typeof r=="function"&&(i=r,r="utf8"),r||(r="utf8"),!this[Hr]&&!Buffer.isBuffer(e)&&(Iwe(e)?e=Buffer.from(e.buffer,e.byteOffset,e.byteLength):mwe(e)?e=Buffer.from(e):typeof e!="string"&&(this.objectMode=!0)),!this.objectMode&&!e.length?(this[ni]!==0&&this.emit("readable"),i&&i(),this.flowing):(typeof e=="string"&&!this[Hr]&&!(r===this[yi]&&!this[Ys].lastNeed)&&(e=Buffer.from(e,r)),Buffer.isBuffer(e)&&this[yi]&&(e=this[Ys].write(e)),this.flowing?(this[ni]!==0&&this[QD](!0),this.emit("data",e)):this[bJ](e),this[ni]!==0&&this.emit("readable"),i&&i(),this.flowing))}read(e){if(this[Yr])return null;try{return this[ni]===0||e===0||e>this[ni]?null:(this[Hr]&&(e=null),this.buffer.length>1&&!this[Hr]&&(this.encoding?this.buffer=new wh([Array.from(this.buffer).join("")]):this.buffer=new wh([Buffer.concat(Array.from(this.buffer),this[ni])])),this[wJ](e||null,this.buffer.head.value))}finally{this[Qh]()}}[wJ](e,r){return e===r.length||e===null?this[bD]():(this.buffer.head.value=r.slice(e),r=r.slice(0,e),this[ni]-=e),this.emit("data",r),!this.buffer.length&&!this[Hs]&&this.emit("drain"),r}end(e,r,i){return typeof e=="function"&&(i=e,e=null),typeof r=="function"&&(i=r,r="utf8"),e&&this.write(e,r),i&&this.once("end",i),this[Hs]=!0,this.writable=!1,(this.flowing||!this[bh])&&this[Qh](),this}[Dh](){this[Yr]||(this[bh]=!1,this[aI]=!0,this.emit("resume"),this.buffer.length?this[QD]():this[Hs]?this[Qh]():this.emit("drain"))}resume(){return this[Dh]()}pause(){this[aI]=!1,this[bh]=!0}get destroyed(){return this[Yr]}get flowing(){return this[aI]}get paused(){return this[bh]}[bJ](e){return this[Hr]?this[ni]+=1:this[ni]+=e.length,this.buffer.push(e)}[bD](){return this.buffer.length&&(this[Hr]?this[ni]-=1:this[ni]-=this.buffer.head.value.length),this.buffer.shift()}[QD](e){do;while(this[QJ](this[bD]()));!e&&!this.buffer.length&&!this[Hs]&&this.emit("drain")}[QJ](e){return e?(this.emit("data",e),this.flowing):!1}pipe(e,r){if(this[Yr])return;let i=this[Ho];r=r||{},e===process.stdout||e===process.stderr?r.end=!1:r.end=r.end!==!1;let n={dest:e,opts:r,ondrain:s=>this[Dh]()};return this.pipes.push(n),e.on("drain",n.ondrain),this[Dh](),i&&n.opts.end&&n.dest.end(),e}addListener(e,r){return this.on(e,r)}on(e,r){try{return super.on(e,r)}finally{e==="data"&&!this.pipes.length&&!this.flowing?this[Dh]():SJ(e)&&this[Ho]&&(super.emit(e),this.removeAllListeners(e))}}get emittedEnd(){return this[Ho]}[Qh](){!this[sI]&&!this[Ho]&&!this[Yr]&&this.buffer.length===0&&this[Hs]&&(this[sI]=!0,this.emit("end"),this.emit("prefinish"),this.emit("finish"),this[oI]&&this.emit("close"),this[sI]=!1)}emit(e,r){if(e!=="error"&&e!=="close"&&e!==Yr&&this[Yr])return;if(e==="data"){if(!r)return;this.pipes.length&&this.pipes.forEach(n=>n.dest.write(r)===!1&&this.pause())}else if(e==="end"){if(this[Ho]===!0)return;this[Ho]=!0,this.readable=!1,this[Ys]&&(r=this[Ys].end(),r&&(this.pipes.forEach(n=>n.dest.write(r)),super.emit("data",r))),this.pipes.forEach(n=>{n.dest.removeListener("drain",n.ondrain),n.opts.end&&n.dest.end()})}else if(e==="close"&&(this[oI]=!0,!this[Ho]&&!this[Yr]))return;let i=new Array(arguments.length);if(i[0]=e,i[1]=r,arguments.length>2)for(let n=2;n{e.push(i),this[Hr]||(e.dataLength+=i.length)}),r.then(()=>e)}concat(){return this[Hr]?Promise.reject(new Error("cannot concat in objectMode")):this.collect().then(e=>this[Hr]?Promise.reject(new Error("cannot concat in objectMode")):this[yi]?e.join(""):Buffer.concat(e,e.dataLength))}promise(){return new Promise((e,r)=>{this.on(Yr,()=>r(new Error("stream destroyed"))),this.on("end",()=>e()),this.on("error",i=>r(i))})}[dwe](){return{next:()=>{let r=this.read();if(r!==null)return Promise.resolve({done:!1,value:r});if(this[Hs])return Promise.resolve({done:!0});let i=null,n=null,s=c=>{this.removeListener("data",o),this.removeListener("end",a),n(c)},o=c=>{this.removeListener("error",s),this.removeListener("end",a),this.pause(),i({value:c,done:!!this[Hs]})},a=()=>{this.removeListener("error",s),this.removeListener("data",o),i({done:!0})},l=()=>s(new Error("stream destroyed"));return new Promise((c,u)=>{n=u,i=c,this.once(Yr,l),this.once("error",s),this.once("end",a),this.once("data",o)})}}}[Cwe](){return{next:()=>{let r=this.read();return{value:r,done:r===null}}}}destroy(e){return this[Yr]?(e?this.emit("error",e):this.emit(Yr),this):(this[Yr]=!0,this.buffer=new wh,this[ni]=0,typeof this.close=="function"&&!this[oI]&&this.close(),e?this.emit("error",e):this.emit(Yr),this)}static isStream(e){return!!e&&(e instanceof PJ||e instanceof yJ||e instanceof pwe&&(typeof e.pipe=="function"||typeof e.write=="function"&&typeof e.end=="function"))}}});var kJ=C((nVe,xJ)=>{var Ewe=require("zlib").constants||{ZLIB_VERNUM:4736};xJ.exports=Object.freeze(Object.assign(Object.create(null),{Z_NO_FLUSH:0,Z_PARTIAL_FLUSH:1,Z_SYNC_FLUSH:2,Z_FULL_FLUSH:3,Z_FINISH:4,Z_BLOCK:5,Z_OK:0,Z_STREAM_END:1,Z_NEED_DICT:2,Z_ERRNO:-1,Z_STREAM_ERROR:-2,Z_DATA_ERROR:-3,Z_MEM_ERROR:-4,Z_BUF_ERROR:-5,Z_VERSION_ERROR:-6,Z_NO_COMPRESSION:0,Z_BEST_SPEED:1,Z_BEST_COMPRESSION:9,Z_DEFAULT_COMPRESSION:-1,Z_FILTERED:1,Z_HUFFMAN_ONLY:2,Z_RLE:3,Z_FIXED:4,Z_DEFAULT_STRATEGY:0,DEFLATE:1,INFLATE:2,GZIP:3,GUNZIP:4,DEFLATERAW:5,INFLATERAW:6,UNZIP:7,BROTLI_DECODE:8,BROTLI_ENCODE:9,Z_MIN_WINDOWBITS:8,Z_MAX_WINDOWBITS:15,Z_DEFAULT_WINDOWBITS:15,Z_MIN_CHUNK:64,Z_MAX_CHUNK:Infinity,Z_DEFAULT_CHUNK:16384,Z_MIN_MEMLEVEL:1,Z_MAX_MEMLEVEL:9,Z_DEFAULT_MEMLEVEL:8,Z_MIN_LEVEL:-1,Z_MAX_LEVEL:9,Z_DEFAULT_LEVEL:-1,BROTLI_OPERATION_PROCESS:0,BROTLI_OPERATION_FLUSH:1,BROTLI_OPERATION_FINISH:2,BROTLI_OPERATION_EMIT_METADATA:3,BROTLI_MODE_GENERIC:0,BROTLI_MODE_TEXT:1,BROTLI_MODE_FONT:2,BROTLI_DEFAULT_MODE:0,BROTLI_MIN_QUALITY:0,BROTLI_MAX_QUALITY:11,BROTLI_DEFAULT_QUALITY:11,BROTLI_MIN_WINDOW_BITS:10,BROTLI_MAX_WINDOW_BITS:24,BROTLI_LARGE_MAX_WINDOW_BITS:30,BROTLI_DEFAULT_WINDOW:22,BROTLI_MIN_INPUT_BLOCK_BITS:16,BROTLI_MAX_INPUT_BLOCK_BITS:24,BROTLI_PARAM_MODE:0,BROTLI_PARAM_QUALITY:1,BROTLI_PARAM_LGWIN:2,BROTLI_PARAM_LGBLOCK:3,BROTLI_PARAM_DISABLE_LITERAL_CONTEXT_MODELING:4,BROTLI_PARAM_SIZE_HINT:5,BROTLI_PARAM_LARGE_WINDOW:6,BROTLI_PARAM_NPOSTFIX:7,BROTLI_PARAM_NDIRECT:8,BROTLI_DECODER_RESULT_ERROR:0,BROTLI_DECODER_RESULT_SUCCESS:1,BROTLI_DECODER_RESULT_NEEDS_MORE_INPUT:2,BROTLI_DECODER_RESULT_NEEDS_MORE_OUTPUT:3,BROTLI_DECODER_PARAM_DISABLE_RING_BUFFER_REALLOCATION:0,BROTLI_DECODER_PARAM_LARGE_WINDOW:1,BROTLI_DECODER_NO_ERROR:0,BROTLI_DECODER_SUCCESS:1,BROTLI_DECODER_NEEDS_MORE_INPUT:2,BROTLI_DECODER_NEEDS_MORE_OUTPUT:3,BROTLI_DECODER_ERROR_FORMAT_EXUBERANT_NIBBLE:-1,BROTLI_DECODER_ERROR_FORMAT_RESERVED:-2,BROTLI_DECODER_ERROR_FORMAT_EXUBERANT_META_NIBBLE:-3,BROTLI_DECODER_ERROR_FORMAT_SIMPLE_HUFFMAN_ALPHABET:-4,BROTLI_DECODER_ERROR_FORMAT_SIMPLE_HUFFMAN_SAME:-5,BROTLI_DECODER_ERROR_FORMAT_CL_SPACE:-6,BROTLI_DECODER_ERROR_FORMAT_HUFFMAN_SPACE:-7,BROTLI_DECODER_ERROR_FORMAT_CONTEXT_MAP_REPEAT:-8,BROTLI_DECODER_ERROR_FORMAT_BLOCK_LENGTH_1:-9,BROTLI_DECODER_ERROR_FORMAT_BLOCK_LENGTH_2:-10,BROTLI_DECODER_ERROR_FORMAT_TRANSFORM:-11,BROTLI_DECODER_ERROR_FORMAT_DICTIONARY:-12,BROTLI_DECODER_ERROR_FORMAT_WINDOW_BITS:-13,BROTLI_DECODER_ERROR_FORMAT_PADDING_1:-14,BROTLI_DECODER_ERROR_FORMAT_PADDING_2:-15,BROTLI_DECODER_ERROR_FORMAT_DISTANCE:-16,BROTLI_DECODER_ERROR_DICTIONARY_NOT_SET:-19,BROTLI_DECODER_ERROR_INVALID_ARGUMENTS:-20,BROTLI_DECODER_ERROR_ALLOC_CONTEXT_MODES:-21,BROTLI_DECODER_ERROR_ALLOC_TREE_GROUPS:-22,BROTLI_DECODER_ERROR_ALLOC_CONTEXT_MAP:-25,BROTLI_DECODER_ERROR_ALLOC_RING_BUFFER_1:-26,BROTLI_DECODER_ERROR_ALLOC_RING_BUFFER_2:-27,BROTLI_DECODER_ERROR_ALLOC_BLOCK_TYPE_TREES:-30,BROTLI_DECODER_ERROR_UNREACHABLE:-31},Ewe))});var LD=C(Ni=>{"use strict";var DD=require("assert"),Yo=require("buffer").Buffer,vJ=require("zlib"),dA=Ni.constants=kJ(),ywe=oc(),FJ=Yo.concat,CA=Symbol("_superWrite"),Sh=class extends Error{constructor(e){super("zlib: "+e.message);this.code=e.code,this.errno=e.errno,this.code||(this.code="ZLIB_ERROR"),this.message="zlib: "+e.message,Error.captureStackTrace(this,this.constructor)}get name(){return"ZlibError"}},Bwe=Symbol("opts"),Ph=Symbol("flushFlag"),RJ=Symbol("finishFlushFlag"),SD=Symbol("fullFlushFlag"),Pt=Symbol("handle"),AI=Symbol("onError"),ac=Symbol("sawError"),PD=Symbol("level"),xD=Symbol("strategy"),kD=Symbol("ended"),sVe=Symbol("_defaultFullFlush"),vD=class extends ywe{constructor(e,r){if(!e||typeof e!="object")throw new TypeError("invalid options for ZlibBase constructor");super(e);this[ac]=!1,this[kD]=!1,this[Bwe]=e,this[Ph]=e.flush,this[RJ]=e.finishFlush;try{this[Pt]=new vJ[r](e)}catch(i){throw new Sh(i)}this[AI]=i=>{this[ac]||(this[ac]=!0,this.close(),this.emit("error",i))},this[Pt].on("error",i=>this[AI](new Sh(i))),this.once("end",()=>this.close)}close(){this[Pt]&&(this[Pt].close(),this[Pt]=null,this.emit("close"))}reset(){if(!this[ac])return DD(this[Pt],"zlib binding closed"),this[Pt].reset()}flush(e){this.ended||(typeof e!="number"&&(e=this[SD]),this.write(Object.assign(Yo.alloc(0),{[Ph]:e})))}end(e,r,i){return e&&this.write(e,r),this.flush(this[RJ]),this[kD]=!0,super.end(null,null,i)}get ended(){return this[kD]}write(e,r,i){if(typeof r=="function"&&(i=r,r="utf8"),typeof e=="string"&&(e=Yo.from(e,r)),this[ac])return;DD(this[Pt],"zlib binding closed");let n=this[Pt]._handle,s=n.close;n.close=()=>{};let o=this[Pt].close;this[Pt].close=()=>{},Yo.concat=c=>c;let a;try{let c=typeof e[Ph]=="number"?e[Ph]:this[Ph];a=this[Pt]._processChunk(e,c),Yo.concat=FJ}catch(c){Yo.concat=FJ,this[AI](new Sh(c))}finally{this[Pt]&&(this[Pt]._handle=n,n.close=s,this[Pt].close=o,this[Pt].removeAllListeners("error"))}this[Pt]&&this[Pt].on("error",c=>this[AI](new Sh(c)));let l;if(a)if(Array.isArray(a)&&a.length>0){l=this[CA](Yo.from(a[0]));for(let c=1;c{this.flush(n),s()};try{this[Pt].params(e,r)}finally{this[Pt].flush=i}this[Pt]&&(this[PD]=e,this[xD]=r)}}}},LJ=class extends jo{constructor(e){super(e,"Deflate")}},MJ=class extends jo{constructor(e){super(e,"Inflate")}},FD=Symbol("_portable"),NJ=class extends jo{constructor(e){super(e,"Gzip");this[FD]=e&&!!e.portable}[CA](e){return this[FD]?(this[FD]=!1,e[9]=255,super[CA](e)):super[CA](e)}},OJ=class extends jo{constructor(e){super(e,"Gunzip")}},TJ=class extends jo{constructor(e){super(e,"DeflateRaw")}},KJ=class extends jo{constructor(e){super(e,"InflateRaw")}},UJ=class extends jo{constructor(e){super(e,"Unzip")}},RD=class extends vD{constructor(e,r){e=e||{},e.flush=e.flush||dA.BROTLI_OPERATION_PROCESS,e.finishFlush=e.finishFlush||dA.BROTLI_OPERATION_FINISH,super(e,r),this[SD]=dA.BROTLI_OPERATION_FLUSH}},HJ=class extends RD{constructor(e){super(e,"BrotliCompress")}},YJ=class extends RD{constructor(e){super(e,"BrotliDecompress")}};Ni.Deflate=LJ;Ni.Inflate=MJ;Ni.Gzip=NJ;Ni.Gunzip=OJ;Ni.DeflateRaw=TJ;Ni.InflateRaw=KJ;Ni.Unzip=UJ;typeof vJ.BrotliCompress=="function"?(Ni.BrotliCompress=HJ,Ni.BrotliDecompress=YJ):Ni.BrotliCompress=Ni.BrotliDecompress=class{constructor(){throw new Error("Brotli is not supported in this version of Node.js")}}});var xh=C(lI=>{"use strict";lI.name=new Map([["0","File"],["","OldFile"],["1","Link"],["2","SymbolicLink"],["3","CharacterDevice"],["4","BlockDevice"],["5","Directory"],["6","FIFO"],["7","ContiguousFile"],["g","GlobalExtendedHeader"],["x","ExtendedHeader"],["A","SolarisACL"],["D","GNUDumpDir"],["I","Inode"],["K","NextFileHasLongLinkpath"],["L","NextFileHasLongPath"],["M","ContinuationFile"],["N","OldGnuLongPath"],["S","SparseFile"],["V","TapeVolumeHeader"],["X","OldExtendedHeader"]]);lI.code=new Map(Array.from(lI.name).map(t=>[t[1],t[0]]))});var kh=C((cVe,jJ)=>{"use strict";var AVe=xh(),wwe=oc(),MD=Symbol("slurp");jJ.exports=class extends wwe{constructor(e,r,i){super();switch(this.pause(),this.extended=r,this.globalExtended=i,this.header=e,this.startBlockSize=512*Math.ceil(e.size/512),this.blockRemain=this.startBlockSize,this.remain=e.size,this.type=e.type,this.meta=!1,this.ignore=!1,this.type){case"File":case"OldFile":case"Link":case"SymbolicLink":case"CharacterDevice":case"BlockDevice":case"Directory":case"FIFO":case"ContiguousFile":case"GNUDumpDir":break;case"NextFileHasLongLinkpath":case"NextFileHasLongPath":case"OldGnuLongPath":case"GlobalExtendedHeader":case"ExtendedHeader":case"OldExtendedHeader":this.meta=!0;break;default:this.ignore=!0}this.path=e.path,this.mode=e.mode,this.mode&&(this.mode=this.mode&4095),this.uid=e.uid,this.gid=e.gid,this.uname=e.uname,this.gname=e.gname,this.size=e.size,this.mtime=e.mtime,this.atime=e.atime,this.ctime=e.ctime,this.linkpath=e.linkpath,this.uname=e.uname,this.gname=e.gname,r&&this[MD](r),i&&this[MD](i,!0)}write(e){let r=e.length;if(r>this.blockRemain)throw new Error("writing more to entry than is appropriate");let i=this.remain,n=this.blockRemain;return this.remain=Math.max(0,i-r),this.blockRemain=Math.max(0,n-r),this.ignore?!0:i>=r?super.write(e):super.write(e.slice(0,i))}[MD](e,r){for(let i in e)e[i]!==null&&e[i]!==void 0&&!(r&&i==="path")&&(this[i]=e[i])}}});var JJ=C(ND=>{"use strict";var uVe=ND.encode=(t,e)=>{if(Number.isSafeInteger(t))t<0?bwe(t,e):Qwe(t,e);else throw Error("cannot encode number outside of javascript safe integer range");return e},Qwe=(t,e)=>{e[0]=128;for(var r=e.length;r>1;r--)e[r-1]=t&255,t=Math.floor(t/256)},bwe=(t,e)=>{e[0]=255;var r=!1;t=t*-1;for(var i=e.length;i>1;i--){var n=t&255;t=Math.floor(t/256),r?e[i-1]=GJ(n):n===0?e[i-1]=0:(r=!0,e[i-1]=qJ(n))}},gVe=ND.parse=t=>{var e=t[t.length-1],r=t[0],i;if(r===128)i=Swe(t.slice(1,t.length));else if(r===255)i=Dwe(t);else throw Error("invalid base256 encoding");if(!Number.isSafeInteger(i))throw Error("parsed number outside of javascript safe integer range");return i},Dwe=t=>{for(var e=t.length,r=0,i=!1,n=e-1;n>-1;n--){var s=t[n],o;i?o=GJ(s):s===0?o=s:(i=!0,o=qJ(s)),o!==0&&(r-=o*Math.pow(256,e-n-1))}return r},Swe=t=>{for(var e=t.length,r=0,i=e-1;i>-1;i--){var n=t[i];n!==0&&(r+=n*Math.pow(256,e-i-1))}return r},GJ=t=>(255^t)&255,qJ=t=>(255^t)+1&255});var lc=C((fVe,WJ)=>{"use strict";var OD=xh(),Ac=require("path").posix,zJ=JJ(),TD=Symbol("slurp"),Oi=Symbol("type"),XJ=class{constructor(e,r,i,n){this.cksumValid=!1,this.needPax=!1,this.nullBlock=!1,this.block=null,this.path=null,this.mode=null,this.uid=null,this.gid=null,this.size=null,this.mtime=null,this.cksum=null,this[Oi]="0",this.linkpath=null,this.uname=null,this.gname=null,this.devmaj=0,this.devmin=0,this.atime=null,this.ctime=null,Buffer.isBuffer(e)?this.decode(e,r||0,i,n):e&&this.set(e)}decode(e,r,i,n){if(r||(r=0),!e||!(e.length>=r+512))throw new Error("need 512 bytes for header");if(this.path=mA(e,r,100),this.mode=Go(e,r+100,8),this.uid=Go(e,r+108,8),this.gid=Go(e,r+116,8),this.size=Go(e,r+124,12),this.mtime=KD(e,r+136,12),this.cksum=Go(e,r+148,12),this[TD](i),this[TD](n,!0),this[Oi]=mA(e,r+156,1),this[Oi]===""&&(this[Oi]="0"),this[Oi]==="0"&&this.path.substr(-1)==="/"&&(this[Oi]="5"),this[Oi]==="5"&&(this.size=0),this.linkpath=mA(e,r+157,100),e.slice(r+257,r+265).toString()==="ustar\x0000")if(this.uname=mA(e,r+265,32),this.gname=mA(e,r+297,32),this.devmaj=Go(e,r+329,8),this.devmin=Go(e,r+337,8),e[r+475]!==0){let o=mA(e,r+345,155);this.path=o+"/"+this.path}else{let o=mA(e,r+345,130);o&&(this.path=o+"/"+this.path),this.atime=KD(e,r+476,12),this.ctime=KD(e,r+488,12)}let s=8*32;for(let o=r;o=r+512))throw new Error("need 512 bytes for header");let i=this.ctime||this.atime?130:155,n=Pwe(this.path||"",i),s=n[0],o=n[1];this.needPax=n[2],this.needPax=IA(e,r,100,s)||this.needPax,this.needPax=qo(e,r+100,8,this.mode)||this.needPax,this.needPax=qo(e,r+108,8,this.uid)||this.needPax,this.needPax=qo(e,r+116,8,this.gid)||this.needPax,this.needPax=qo(e,r+124,12,this.size)||this.needPax,this.needPax=UD(e,r+136,12,this.mtime)||this.needPax,e[r+156]=this[Oi].charCodeAt(0),this.needPax=IA(e,r+157,100,this.linkpath)||this.needPax,e.write("ustar\x0000",r+257,8),this.needPax=IA(e,r+265,32,this.uname)||this.needPax,this.needPax=IA(e,r+297,32,this.gname)||this.needPax,this.needPax=qo(e,r+329,8,this.devmaj)||this.needPax,this.needPax=qo(e,r+337,8,this.devmin)||this.needPax,this.needPax=IA(e,r+345,i,o)||this.needPax,e[r+475]!==0?this.needPax=IA(e,r+345,155,o)||this.needPax:(this.needPax=IA(e,r+345,130,o)||this.needPax,this.needPax=UD(e,r+476,12,this.atime)||this.needPax,this.needPax=UD(e,r+488,12,this.ctime)||this.needPax);let a=8*32;for(let l=r;l{let r=100,i=t,n="",s,o=Ac.parse(t).root||".";if(Buffer.byteLength(i)r&&Buffer.byteLength(n)<=e?s=[i.substr(0,r-1),n,!0]:(i=Ac.join(Ac.basename(n),i),n=Ac.dirname(n));while(n!==o&&!s);s||(s=[t.substr(0,r-1),"",!0])}return s},mA=(t,e,r)=>t.slice(e,e+r).toString("utf8").replace(/\0.*/,""),KD=(t,e,r)=>xwe(Go(t,e,r)),xwe=t=>t===null?null:new Date(t*1e3),Go=(t,e,r)=>t[e]&128?zJ.parse(t.slice(e,e+r)):kwe(t,e,r),vwe=t=>isNaN(t)?null:t,kwe=(t,e,r)=>vwe(parseInt(t.slice(e,e+r).toString("utf8").replace(/\0.*$/,"").trim(),8)),Fwe={12:8589934591,8:2097151},qo=(t,e,r,i)=>i===null?!1:i>Fwe[r]||i<0?(zJ.encode(i,t.slice(e,e+r)),!0):(Rwe(t,e,r,i),!1),Rwe=(t,e,r,i)=>t.write(Lwe(i,r),e,r,"ascii"),Lwe=(t,e)=>Mwe(Math.floor(t).toString(8),e),Mwe=(t,e)=>(t.length===e-1?t:new Array(e-t.length-1).join("0")+t+" ")+"\0",UD=(t,e,r,i)=>i===null?!1:qo(t,e,r,i.getTime()/1e3),Nwe=new Array(156).join("\0"),IA=(t,e,r,i)=>i===null?!1:(t.write(i+Nwe,e,r,"utf8"),i.length!==Buffer.byteLength(i)||i.length>r);WJ.exports=XJ});var uI=C((pVe,VJ)=>{"use strict";var Owe=lc(),Twe=require("path"),cI=class{constructor(e,r){this.atime=e.atime||null,this.charset=e.charset||null,this.comment=e.comment||null,this.ctime=e.ctime||null,this.gid=e.gid||null,this.gname=e.gname||null,this.linkpath=e.linkpath||null,this.mtime=e.mtime||null,this.path=e.path||null,this.size=e.size||null,this.uid=e.uid||null,this.uname=e.uname||null,this.dev=e.dev||null,this.ino=e.ino||null,this.nlink=e.nlink||null,this.global=r||!1}encode(){let e=this.encodeBody();if(e==="")return null;let r=Buffer.byteLength(e),i=512*Math.ceil(1+r/512),n=Buffer.allocUnsafe(i);for(let s=0;s<512;s++)n[s]=0;new Owe({path:("PaxHeader/"+Twe.basename(this.path)).slice(0,99),mode:this.mode||420,uid:this.uid||null,gid:this.gid||null,size:r,mtime:this.mtime||null,type:this.global?"GlobalExtendedHeader":"ExtendedHeader",linkpath:"",uname:this.uname||"",gname:this.gname||"",devmaj:0,devmin:0,atime:this.atime||null,ctime:this.ctime||null}).encode(n),n.write(e,512,r,"utf8");for(let s=r+512;s=Math.pow(10,s)&&(s+=1),s+n+i}};cI.parse=(t,e,r)=>new cI(Kwe(Uwe(t),e),r);var Kwe=(t,e)=>e?Object.keys(t).reduce((r,i)=>(r[i]=t[i],r),e):t,Uwe=t=>t.replace(/\n$/,"").split(` -`).reduce(Hwe,Object.create(null)),Hwe=(t,e)=>{let r=parseInt(e,10);if(r!==Buffer.byteLength(e)+1)return t;e=e.substr((r+" ").length);let i=e.split("="),n=i.shift().replace(/^SCHILY\.(dev|ino|nlink)/,"$1");if(!n)return t;let s=i.join("=");return t[n]=/^([A-Z]+\.)?([mac]|birth|creation)time$/.test(n)?new Date(s*1e3):/^[0-9]+$/.test(s)?+s:s,t};VJ.exports=cI});var gI=C((dVe,ZJ)=>{"use strict";ZJ.exports=t=>class extends t{warn(e,r,i={}){this.file&&(i.file=this.file),this.cwd&&(i.cwd=this.cwd),i.code=r instanceof Error&&r.code||e,i.tarCode=e,!this.strict&&i.recoverable!==!1?(r instanceof Error&&(i=Object.assign(r,i),r=r.message),this.emit("warn",i.tarCode,r,i)):r instanceof Error?this.emit("error",Object.assign(r,i)):this.emit("error",Object.assign(new Error(`${e}: ${r}`),i))}}});var YD=C((CVe,_J)=>{"use strict";var hI=["|","<",">","?",":"],HD=hI.map(t=>String.fromCharCode(61440+t.charCodeAt(0))),Ywe=new Map(hI.map((t,e)=>[t,HD[e]])),jwe=new Map(HD.map((t,e)=>[t,hI[e]]));_J.exports={encode:t=>hI.reduce((e,r)=>e.split(r).join(Ywe.get(r)),t),decode:t=>HD.reduce((e,r)=>e.split(r).join(jwe.get(r)),t)}});var e3=C((mVe,$J)=>{"use strict";$J.exports=(t,e,r)=>(t&=4095,r&&(t=(t|384)&~18),e&&(t&256&&(t|=64),t&32&&(t|=8),t&4&&(t|=1)),t)});var XD=C((wVe,t3)=>{"use strict";var r3=oc(),i3=uI(),n3=lc(),IVe=kh(),es=require("fs"),cc=require("path"),EVe=xh(),Gwe=16*1024*1024,s3=Symbol("process"),o3=Symbol("file"),a3=Symbol("directory"),jD=Symbol("symlink"),A3=Symbol("hardlink"),vh=Symbol("header"),fI=Symbol("read"),GD=Symbol("lstat"),pI=Symbol("onlstat"),qD=Symbol("onread"),JD=Symbol("onreadlink"),WD=Symbol("openfile"),zD=Symbol("onopenfile"),EA=Symbol("close"),dI=Symbol("mode"),l3=gI(),qwe=YD(),c3=e3(),CI=l3(class extends r3{constructor(e,r){if(r=r||{},super(r),typeof e!="string")throw new TypeError("path is required");this.path=e,this.portable=!!r.portable,this.myuid=process.getuid&&process.getuid(),this.myuser=process.env.USER||"",this.maxReadSize=r.maxReadSize||Gwe,this.linkCache=r.linkCache||new Map,this.statCache=r.statCache||new Map,this.preservePaths=!!r.preservePaths,this.cwd=r.cwd||process.cwd(),this.strict=!!r.strict,this.noPax=!!r.noPax,this.noMtime=!!r.noMtime,this.mtime=r.mtime||null,typeof r.onwarn=="function"&&this.on("warn",r.onwarn);let i=!1;if(!this.preservePaths&&cc.win32.isAbsolute(e)){let n=cc.win32.parse(e);this.path=e.substr(n.root.length),i=n.root}this.win32=!!r.win32||process.platform==="win32",this.win32&&(this.path=qwe.decode(this.path.replace(/\\/g,"/")),e=e.replace(/\\/g,"/")),this.absolute=r.absolute||cc.resolve(this.cwd,e),this.path===""&&(this.path="./"),i&&this.warn("TAR_ENTRY_INFO",`stripping ${i} from absolute path`,{entry:this,path:i+this.path}),this.statCache.has(this.absolute)?this[pI](this.statCache.get(this.absolute)):this[GD]()}[GD](){es.lstat(this.absolute,(e,r)=>{if(e)return this.emit("error",e);this[pI](r)})}[pI](e){this.statCache.set(this.absolute,e),this.stat=e,e.isFile()||(e.size=0),this.type=Jwe(e),this.emit("stat",e),this[s3]()}[s3](){switch(this.type){case"File":return this[o3]();case"Directory":return this[a3]();case"SymbolicLink":return this[jD]();default:return this.end()}}[dI](e){return c3(e,this.type==="Directory",this.portable)}[vh](){this.type==="Directory"&&this.portable&&(this.noMtime=!0),this.header=new n3({path:this.path,linkpath:this.linkpath,mode:this[dI](this.stat.mode),uid:this.portable?null:this.stat.uid,gid:this.portable?null:this.stat.gid,size:this.stat.size,mtime:this.noMtime?null:this.mtime||this.stat.mtime,type:this.type,uname:this.portable?null:this.stat.uid===this.myuid?this.myuser:"",atime:this.portable?null:this.stat.atime,ctime:this.portable?null:this.stat.ctime}),this.header.encode()&&!this.noPax&&this.write(new i3({atime:this.portable?null:this.header.atime,ctime:this.portable?null:this.header.ctime,gid:this.portable?null:this.header.gid,mtime:this.noMtime?null:this.mtime||this.header.mtime,path:this.path,linkpath:this.linkpath,size:this.header.size,uid:this.portable?null:this.header.uid,uname:this.portable?null:this.header.uname,dev:this.portable?null:this.stat.dev,ino:this.portable?null:this.stat.ino,nlink:this.portable?null:this.stat.nlink}).encode()),this.write(this.header.block)}[a3](){this.path.substr(-1)!=="/"&&(this.path+="/"),this.stat.size=0,this[vh](),this.end()}[jD](){es.readlink(this.absolute,(e,r)=>{if(e)return this.emit("error",e);this[JD](r)})}[JD](e){this.linkpath=e.replace(/\\/g,"/"),this[vh](),this.end()}[A3](e){this.type="Link",this.linkpath=cc.relative(this.cwd,e).replace(/\\/g,"/"),this.stat.size=0,this[vh](),this.end()}[o3](){if(this.stat.nlink>1){let e=this.stat.dev+":"+this.stat.ino;if(this.linkCache.has(e)){let r=this.linkCache.get(e);if(r.indexOf(this.cwd)===0)return this[A3](r)}this.linkCache.set(e,this.absolute)}if(this[vh](),this.stat.size===0)return this.end();this[WD]()}[WD](){es.open(this.absolute,"r",(e,r)=>{if(e)return this.emit("error",e);this[zD](r)})}[zD](e){let r=512*Math.ceil(this.stat.size/512),i=Math.min(r,this.maxReadSize),n=Buffer.allocUnsafe(i);this[fI](e,n,0,n.length,0,this.stat.size,r)}[fI](e,r,i,n,s,o,a){es.read(e,r,i,n,s,(l,c)=>{if(l)return this[EA](e,()=>this.emit("error",l));this[qD](e,r,i,n,s,o,a,c)})}[EA](e,r){es.close(e,r)}[qD](e,r,i,n,s,o,a,l){if(l<=0&&o>0){let u=new Error("encountered unexpected EOF");return u.path=this.absolute,u.syscall="read",u.code="EOF",this[EA](e,()=>this.emit("error",u))}if(l>o){let u=new Error("did not encounter expected EOF");return u.path=this.absolute,u.syscall="read",u.code="EOF",this[EA](e,()=>this.emit("error",u))}if(l===o)for(let u=l;uu?this.emit("error",u):this.end());i>=n&&(r=Buffer.allocUnsafe(n),i=0),n=r.length-i,this[fI](e,r,i,n,s,o,a)}}),u3=class extends CI{constructor(e,r){super(e,r)}[GD](){this[pI](es.lstatSync(this.absolute))}[jD](){this[JD](es.readlinkSync(this.absolute))}[WD](){this[zD](es.openSync(this.absolute,"r"))}[fI](e,r,i,n,s,o,a){let l=!0;try{let c=es.readSync(e,r,i,n,s);this[qD](e,r,i,n,s,o,a,c),l=!1}finally{if(l)try{this[EA](e,()=>{})}catch(c){}}}[EA](e,r){es.closeSync(e),r()}},Wwe=l3(class extends r3{constructor(e,r){r=r||{},super(r),this.preservePaths=!!r.preservePaths,this.portable=!!r.portable,this.strict=!!r.strict,this.noPax=!!r.noPax,this.noMtime=!!r.noMtime,this.readEntry=e,this.type=e.type,this.type==="Directory"&&this.portable&&(this.noMtime=!0),this.path=e.path,this.mode=this[dI](e.mode),this.uid=this.portable?null:e.uid,this.gid=this.portable?null:e.gid,this.uname=this.portable?null:e.uname,this.gname=this.portable?null:e.gname,this.size=e.size,this.mtime=this.noMtime?null:r.mtime||e.mtime,this.atime=this.portable?null:e.atime,this.ctime=this.portable?null:e.ctime,this.linkpath=e.linkpath,typeof r.onwarn=="function"&&this.on("warn",r.onwarn);let i=!1;if(cc.isAbsolute(this.path)&&!this.preservePaths){let n=cc.parse(this.path);i=n.root,this.path=this.path.substr(n.root.length)}this.remain=e.size,this.blockRemain=e.startBlockSize,this.header=new n3({path:this.path,linkpath:this.linkpath,mode:this.mode,uid:this.portable?null:this.uid,gid:this.portable?null:this.gid,size:this.size,mtime:this.noMtime?null:this.mtime,type:this.type,uname:this.portable?null:this.uname,atime:this.portable?null:this.atime,ctime:this.portable?null:this.ctime}),i&&this.warn("TAR_ENTRY_INFO",`stripping ${i} from absolute path`,{entry:this,path:i+this.path}),this.header.encode()&&!this.noPax&&super.write(new i3({atime:this.portable?null:this.atime,ctime:this.portable?null:this.ctime,gid:this.portable?null:this.gid,mtime:this.noMtime?null:this.mtime,path:this.path,linkpath:this.linkpath,size:this.size,uid:this.portable?null:this.uid,uname:this.portable?null:this.uname,dev:this.portable?null:this.readEntry.dev,ino:this.portable?null:this.readEntry.ino,nlink:this.portable?null:this.readEntry.nlink}).encode()),super.write(this.header.block),e.pipe(this)}[dI](e){return c3(e,this.type==="Directory",this.portable)}write(e){let r=e.length;if(r>this.blockRemain)throw new Error("writing more to entry than is appropriate");return this.blockRemain-=r,super.write(e)}end(){return this.blockRemain&&this.write(Buffer.alloc(this.blockRemain)),super.end()}});CI.Sync=u3;CI.Tar=Wwe;var Jwe=t=>t.isFile()?"File":t.isDirectory()?"Directory":t.isSymbolicLink()?"SymbolicLink":"Unsupported";t3.exports=CI});var bI=C((bVe,g3)=>{"use strict";var VD=class{constructor(e,r){this.path=e||"./",this.absolute=r,this.entry=null,this.stat=null,this.readdir=null,this.pending=!1,this.ignore=!1,this.piped=!1}},zwe=oc(),Xwe=LD(),Vwe=kh(),ZD=XD(),Zwe=ZD.Sync,_we=ZD.Tar,$we=nI(),h3=Buffer.alloc(1024),mI=Symbol("onStat"),II=Symbol("ended"),ts=Symbol("queue"),uc=Symbol("current"),yA=Symbol("process"),EI=Symbol("processing"),f3=Symbol("processJob"),rs=Symbol("jobs"),_D=Symbol("jobDone"),yI=Symbol("addFSEntry"),p3=Symbol("addTarEntry"),$D=Symbol("stat"),eS=Symbol("readdir"),BI=Symbol("onreaddir"),wI=Symbol("pipe"),d3=Symbol("entry"),tS=Symbol("entryOpt"),rS=Symbol("writeEntryClass"),C3=Symbol("write"),iS=Symbol("ondrain"),QI=require("fs"),m3=require("path"),eQe=gI(),nS=eQe(class extends zwe{constructor(e){super(e);e=e||Object.create(null),this.opt=e,this.file=e.file||"",this.cwd=e.cwd||process.cwd(),this.maxReadSize=e.maxReadSize,this.preservePaths=!!e.preservePaths,this.strict=!!e.strict,this.noPax=!!e.noPax,this.prefix=(e.prefix||"").replace(/(\\|\/)+$/,""),this.linkCache=e.linkCache||new Map,this.statCache=e.statCache||new Map,this.readdirCache=e.readdirCache||new Map,this[rS]=ZD,typeof e.onwarn=="function"&&this.on("warn",e.onwarn),this.portable=!!e.portable,this.zip=null,e.gzip?(typeof e.gzip!="object"&&(e.gzip={}),this.portable&&(e.gzip.portable=!0),this.zip=new Xwe.Gzip(e.gzip),this.zip.on("data",r=>super.write(r)),this.zip.on("end",r=>super.end()),this.zip.on("drain",r=>this[iS]()),this.on("resume",r=>this.zip.resume())):this.on("drain",this[iS]),this.noDirRecurse=!!e.noDirRecurse,this.follow=!!e.follow,this.noMtime=!!e.noMtime,this.mtime=e.mtime||null,this.filter=typeof e.filter=="function"?e.filter:r=>!0,this[ts]=new $we,this[rs]=0,this.jobs=+e.jobs||4,this[EI]=!1,this[II]=!1}[C3](e){return super.write(e)}add(e){return this.write(e),this}end(e){return e&&this.write(e),this[II]=!0,this[yA](),this}write(e){if(this[II])throw new Error("write after end");return e instanceof Vwe?this[p3](e):this[yI](e),this.flowing}[p3](e){let r=m3.resolve(this.cwd,e.path);if(this.prefix&&(e.path=this.prefix+"/"+e.path.replace(/^\.(\/+|$)/,"")),!this.filter(e.path,e))e.resume();else{let i=new VD(e.path,r,!1);i.entry=new _we(e,this[tS](i)),i.entry.on("end",n=>this[_D](i)),this[rs]+=1,this[ts].push(i)}this[yA]()}[yI](e){let r=m3.resolve(this.cwd,e);this.prefix&&(e=this.prefix+"/"+e.replace(/^\.(\/+|$)/,"")),this[ts].push(new VD(e,r)),this[yA]()}[$D](e){e.pending=!0,this[rs]+=1;let r=this.follow?"stat":"lstat";QI[r](e.absolute,(i,n)=>{e.pending=!1,this[rs]-=1,i?this.emit("error",i):this[mI](e,n)})}[mI](e,r){this.statCache.set(e.absolute,r),e.stat=r,this.filter(e.path,r)||(e.ignore=!0),this[yA]()}[eS](e){e.pending=!0,this[rs]+=1,QI.readdir(e.absolute,(r,i)=>{if(e.pending=!1,this[rs]-=1,r)return this.emit("error",r);this[BI](e,i)})}[BI](e,r){this.readdirCache.set(e.absolute,r),e.readdir=r,this[yA]()}[yA](){if(!this[EI]){this[EI]=!0;for(let e=this[ts].head;e!==null&&this[rs]this.warn(r,i,n),noPax:this.noPax,cwd:this.cwd,absolute:e.absolute,preservePaths:this.preservePaths,maxReadSize:this.maxReadSize,strict:this.strict,portable:this.portable,linkCache:this.linkCache,statCache:this.statCache,noMtime:this.noMtime,mtime:this.mtime}}[d3](e){this[rs]+=1;try{return new this[rS](e.path,this[tS](e)).on("end",()=>this[_D](e)).on("error",r=>this.emit("error",r))}catch(r){this.emit("error",r)}}[iS](){this[uc]&&this[uc].entry&&this[uc].entry.resume()}[wI](e){e.piped=!0,e.readdir&&e.readdir.forEach(n=>{let s=this.prefix?e.path.slice(this.prefix.length+1)||"./":e.path,o=s==="./"?"":s.replace(/\/*$/,"/");this[yI](o+n)});let r=e.entry,i=this.zip;i?r.on("data",n=>{i.write(n)||r.pause()}):r.on("data",n=>{super.write(n)||r.pause()})}pause(){return this.zip&&this.zip.pause(),super.pause()}}),I3=class extends nS{constructor(e){super(e);this[rS]=Zwe}pause(){}resume(){}[$D](e){let r=this.follow?"statSync":"lstatSync";this[mI](e,QI[r](e.absolute))}[eS](e,r){this[BI](e,QI.readdirSync(e.absolute))}[wI](e){let r=e.entry,i=this.zip;e.readdir&&e.readdir.forEach(n=>{let s=this.prefix?e.path.slice(this.prefix.length+1)||"./":e.path,o=s==="./"?"":s.replace(/\/*$/,"/");this[yI](o+n)}),i?r.on("data",n=>{i.write(n)}):r.on("data",n=>{super[C3](n)})}};nS.Sync=I3;g3.exports=nS});var Cc=C(Fh=>{"use strict";var tQe=oc(),rQe=require("events").EventEmitter,An=require("fs"),DI=process.binding("fs"),DVe=DI.writeBuffers,iQe=DI.FSReqWrap||DI.FSReqCallback,gc=Symbol("_autoClose"),is=Symbol("_close"),Rh=Symbol("_ended"),bt=Symbol("_fd"),E3=Symbol("_finished"),BA=Symbol("_flags"),sS=Symbol("_flush"),oS=Symbol("_handleChunk"),aS=Symbol("_makeBuf"),AS=Symbol("_mode"),SI=Symbol("_needDrain"),hc=Symbol("_onerror"),fc=Symbol("_onopen"),lS=Symbol("_onread"),wA=Symbol("_onwrite"),Jo=Symbol("_open"),Wo=Symbol("_path"),QA=Symbol("_pos"),ns=Symbol("_queue"),pc=Symbol("_read"),y3=Symbol("_readSize"),zo=Symbol("_reading"),PI=Symbol("_remain"),B3=Symbol("_size"),xI=Symbol("_write"),dc=Symbol("_writing"),kI=Symbol("_defaultFlag"),cS=class extends tQe{constructor(e,r){if(r=r||{},super(r),this.writable=!1,typeof e!="string")throw new TypeError("path must be a string");this[bt]=typeof r.fd=="number"?r.fd:null,this[Wo]=e,this[y3]=r.readSize||16*1024*1024,this[zo]=!1,this[B3]=typeof r.size=="number"?r.size:Infinity,this[PI]=this[B3],this[gc]=typeof r.autoClose=="boolean"?r.autoClose:!0,typeof this[bt]=="number"?this[pc]():this[Jo]()}get fd(){return this[bt]}get path(){return this[Wo]}write(){throw new TypeError("this is a readable stream")}end(){throw new TypeError("this is a readable stream")}[Jo](){An.open(this[Wo],"r",(e,r)=>this[fc](e,r))}[fc](e,r){e?this[hc](e):(this[bt]=r,this.emit("open",r),this[pc]())}[aS](){return Buffer.allocUnsafe(Math.min(this[y3],this[PI]))}[pc](){if(!this[zo]){this[zo]=!0;let e=this[aS]();if(e.length===0)return process.nextTick(()=>this[lS](null,0,e));An.read(this[bt],e,0,e.length,null,(r,i,n)=>this[lS](r,i,n))}}[lS](e,r,i){this[zo]=!1,e?this[hc](e):this[oS](r,i)&&this[pc]()}[is](){this[gc]&&typeof this[bt]=="number"&&(An.close(this[bt],e=>this.emit("close")),this[bt]=null)}[hc](e){this[zo]=!0,this[is](),this.emit("error",e)}[oS](e,r){let i=!1;return this[PI]-=e,e>0&&(i=super.write(ethis[fc](e,r))}[fc](e,r){this[kI]&&this[BA]==="r+"&&e&&e.code==="ENOENT"?(this[BA]="w",this[Jo]()):e?this[hc](e):(this[bt]=r,this.emit("open",r),this[sS]())}end(e,r){e&&this.write(e,r),this[Rh]=!0,!this[dc]&&!this[ns].length&&typeof this[bt]=="number"&&this[wA](null,0)}write(e,r){return typeof e=="string"&&(e=new Buffer(e,r)),this[Rh]?(this.emit("error",new Error("write() after end()")),!1):this[bt]===null||this[dc]||this[ns].length?(this[ns].push(e),this[SI]=!0,!1):(this[dc]=!0,this[xI](e),!0)}[xI](e){An.write(this[bt],e,0,e.length,this[QA],(r,i)=>this[wA](r,i))}[wA](e,r){e?this[hc](e):(this[QA]!==null&&(this[QA]+=r),this[ns].length?this[sS]():(this[dc]=!1,this[Rh]&&!this[E3]?(this[E3]=!0,this[is](),this.emit("finish")):this[SI]&&(this[SI]=!1,this.emit("drain"))))}[sS](){if(this[ns].length===0)this[Rh]&&this[wA](null,0);else if(this[ns].length===1)this[xI](this[ns].pop());else{let e=this[ns];this[ns]=[],nQe(this[bt],e,this[QA],(r,i)=>this[wA](r,i))}}[is](){this[gc]&&typeof this[bt]=="number"&&(An.close(this[bt],e=>this.emit("close")),this[bt]=null)}},Q3=class extends uS{[Jo](){let e;try{e=An.openSync(this[Wo],this[BA],this[AS])}catch(r){if(this[kI]&&this[BA]==="r+"&&r&&r.code==="ENOENT")return this[BA]="w",this[Jo]();throw r}this[fc](null,e)}[is](){if(this[gc]&&typeof this[bt]=="number"){try{An.closeSync(this[bt])}catch(e){}this[bt]=null,this.emit("close")}}[xI](e){try{this[wA](null,An.writeSync(this[bt],e,0,e.length,this[QA]))}catch(r){this[wA](r,0)}}},nQe=(t,e,r,i)=>{let n=(o,a)=>i(o,a,e),s=new iQe;s.oncomplete=n,DI.writeBuffers(t,e,r,s)};Fh.ReadStream=cS;Fh.ReadStreamSync=w3;Fh.WriteStream=uS;Fh.WriteStreamSync=Q3});var Nh=C((kVe,b3)=>{"use strict";var sQe=gI(),PVe=require("path"),oQe=lc(),aQe=require("events"),AQe=nI(),lQe=1024*1024,cQe=kh(),D3=uI(),uQe=LD(),gS=Buffer.from([31,139]),ln=Symbol("state"),bA=Symbol("writeEntry"),js=Symbol("readEntry"),hS=Symbol("nextEntry"),S3=Symbol("processEntry"),cn=Symbol("extendedHeader"),Lh=Symbol("globalExtendedHeader"),Xo=Symbol("meta"),P3=Symbol("emitMeta"),Nt=Symbol("buffer"),Gs=Symbol("queue"),DA=Symbol("ended"),x3=Symbol("emittedEnd"),SA=Symbol("emit"),Bi=Symbol("unzip"),vI=Symbol("consumeChunk"),FI=Symbol("consumeChunkSub"),fS=Symbol("consumeBody"),k3=Symbol("consumeMeta"),v3=Symbol("consumeHeader"),RI=Symbol("consuming"),pS=Symbol("bufferConcat"),dS=Symbol("maybeEnd"),Mh=Symbol("writing"),Vo=Symbol("aborted"),LI=Symbol("onDone"),PA=Symbol("sawValidEntry"),MI=Symbol("sawNullBlock"),NI=Symbol("sawEOF"),gQe=t=>!0;b3.exports=sQe(class extends aQe{constructor(e){e=e||{},super(e),this.file=e.file||"",this[PA]=null,this.on(LI,r=>{(this[ln]==="begin"||this[PA]===!1)&&this.warn("TAR_BAD_ARCHIVE","Unrecognized archive format")}),e.ondone?this.on(LI,e.ondone):this.on(LI,r=>{this.emit("prefinish"),this.emit("finish"),this.emit("end"),this.emit("close")}),this.strict=!!e.strict,this.maxMetaEntrySize=e.maxMetaEntrySize||lQe,this.filter=typeof e.filter=="function"?e.filter:gQe,this.writable=!0,this.readable=!1,this[Gs]=new AQe,this[Nt]=null,this[js]=null,this[bA]=null,this[ln]="begin",this[Xo]="",this[cn]=null,this[Lh]=null,this[DA]=!1,this[Bi]=null,this[Vo]=!1,this[MI]=!1,this[NI]=!1,typeof e.onwarn=="function"&&this.on("warn",e.onwarn),typeof e.onentry=="function"&&this.on("entry",e.onentry)}[v3](e,r){this[PA]===null&&(this[PA]=!1);let i;try{i=new oQe(e,r,this[cn],this[Lh])}catch(n){return this.warn("TAR_ENTRY_INVALID",n)}if(i.nullBlock)this[MI]?(this[NI]=!0,this[ln]==="begin"&&(this[ln]="header"),this[SA]("eof")):(this[MI]=!0,this[SA]("nullBlock"));else if(this[MI]=!1,!i.cksumValid)this.warn("TAR_ENTRY_INVALID","checksum failure",{header:i});else if(!i.path)this.warn("TAR_ENTRY_INVALID","path is required",{header:i});else{let n=i.type;if(/^(Symbolic)?Link$/.test(n)&&!i.linkpath)this.warn("TAR_ENTRY_INVALID","linkpath required",{header:i});else if(!/^(Symbolic)?Link$/.test(n)&&i.linkpath)this.warn("TAR_ENTRY_INVALID","linkpath forbidden",{header:i});else{let s=this[bA]=new cQe(i,this[cn],this[Lh]);if(!this[PA])if(s.remain){let o=()=>{s.invalid||(this[PA]=!0)};s.on("end",o)}else this[PA]=!0;s.meta?s.size>this.maxMetaEntrySize?(s.ignore=!0,this[SA]("ignoredEntry",s),this[ln]="ignore",s.resume()):s.size>0&&(this[Xo]="",s.on("data",o=>this[Xo]+=o),this[ln]="meta"):(this[cn]=null,s.ignore=s.ignore||!this.filter(s.path,s),s.ignore?(this[SA]("ignoredEntry",s),this[ln]=s.remain?"ignore":"header",s.resume()):(s.remain?this[ln]="body":(this[ln]="header",s.end()),this[js]?this[Gs].push(s):(this[Gs].push(s),this[hS]())))}}}[S3](e){let r=!0;return e?Array.isArray(e)?this.emit.apply(this,e):(this[js]=e,this.emit("entry",e),e.emittedEnd||(e.on("end",i=>this[hS]()),r=!1)):(this[js]=null,r=!1),r}[hS](){do;while(this[S3](this[Gs].shift()));if(!this[Gs].length){let e=this[js];!e||e.flowing||e.size===e.remain?this[Mh]||this.emit("drain"):e.once("drain",i=>this.emit("drain"))}}[fS](e,r){let i=this[bA],n=i.blockRemain,s=n>=e.length&&r===0?e:e.slice(r,r+n);return i.write(s),i.blockRemain||(this[ln]="header",this[bA]=null,i.end()),s.length}[k3](e,r){let i=this[bA],n=this[fS](e,r);return this[bA]||this[P3](i),n}[SA](e,r,i){!this[Gs].length&&!this[js]?this.emit(e,r,i):this[Gs].push([e,r,i])}[P3](e){switch(this[SA]("meta",this[Xo]),e.type){case"ExtendedHeader":case"OldExtendedHeader":this[cn]=D3.parse(this[Xo],this[cn],!1);break;case"GlobalExtendedHeader":this[Lh]=D3.parse(this[Xo],this[Lh],!0);break;case"NextFileHasLongPath":case"OldGnuLongPath":this[cn]=this[cn]||Object.create(null),this[cn].path=this[Xo].replace(/\0.*/,"");break;case"NextFileHasLongLinkpath":this[cn]=this[cn]||Object.create(null),this[cn].linkpath=this[Xo].replace(/\0.*/,"");break;default:throw new Error("unknown meta: "+e.type)}}abort(e){this[Vo]=!0,this.emit("abort",e),this.warn("TAR_ABORT",e,{recoverable:!1})}write(e){if(this[Vo])return;if(this[Bi]===null&&e){if(this[Nt]&&(e=Buffer.concat([this[Nt],e]),this[Nt]=null),e.lengththis[vI](s)),this[Bi].on("error",s=>this.abort(s)),this[Bi].on("end",s=>{this[DA]=!0,this[vI]()}),this[Mh]=!0;let n=this[Bi][i?"end":"write"](e);return this[Mh]=!1,n}}this[Mh]=!0,this[Bi]?this[Bi].write(e):this[vI](e),this[Mh]=!1;let r=this[Gs].length?!1:this[js]?this[js].flowing:!0;return!r&&!this[Gs].length&&this[js].once("drain",i=>this.emit("drain")),r}[pS](e){e&&!this[Vo]&&(this[Nt]=this[Nt]?Buffer.concat([this[Nt],e]):e)}[dS](){if(this[DA]&&!this[x3]&&!this[Vo]&&!this[RI]){this[x3]=!0;let e=this[bA];if(e&&e.blockRemain){let r=this[Nt]?this[Nt].length:0;this.warn("TAR_BAD_ARCHIVE",`Truncated input (needed ${e.blockRemain} more bytes, only ${r} available)`,{entry:e}),this[Nt]&&e.write(this[Nt]),e.end()}this[SA](LI)}}[vI](e){if(this[RI])this[pS](e);else if(!e&&!this[Nt])this[dS]();else{if(this[RI]=!0,this[Nt]){this[pS](e);let r=this[Nt];this[Nt]=null,this[FI](r)}else this[FI](e);for(;this[Nt]&&this[Nt].length>=512&&!this[Vo]&&!this[NI];){let r=this[Nt];this[Nt]=null,this[FI](r)}this[RI]=!1}(!this[Nt]||this[DA])&&this[dS]()}[FI](e){let r=0,i=e.length;for(;r+512<=i&&!this[Vo]&&!this[NI];)switch(this[ln]){case"begin":case"header":this[v3](e,r),r+=512;break;case"ignore":case"body":r+=this[fS](e,r);break;case"meta":r+=this[k3](e,r);break;default:throw new Error("invalid state: "+this[ln])}r{"use strict";var hQe=sc(),R3=Nh(),mc=require("fs"),fQe=Cc(),L3=require("path"),vVe=F3.exports=(t,e,r)=>{typeof t=="function"?(r=t,e=null,t={}):Array.isArray(t)&&(e=t,t={}),typeof e=="function"&&(r=e,e=null),e?e=Array.from(e):e=[];let i=hQe(t);if(i.sync&&typeof r=="function")throw new TypeError("callback not supported for sync tar functions");if(!i.file&&typeof r=="function")throw new TypeError("callback only supported with file option");return e.length&&dQe(i,e),i.noResume||pQe(i),i.file&&i.sync?CQe(i):i.file?mQe(i,r):M3(i)},pQe=t=>{let e=t.onentry;t.onentry=e?r=>{e(r),r.resume()}:r=>r.resume()},dQe=(t,e)=>{let r=new Map(e.map(s=>[s.replace(/\/+$/,""),!0])),i=t.filter,n=(s,o)=>{let a=o||L3.parse(s).root||".",l=s===a?!1:r.has(s)?r.get(s):n(L3.dirname(s),a);return r.set(s,l),l};t.filter=i?(s,o)=>i(s,o)&&n(s.replace(/\/+$/,"")):s=>n(s.replace(/\/+$/,""))},CQe=t=>{let e=M3(t),r=t.file,i=!0,n;try{let s=mc.statSync(r),o=t.maxReadSize||16*1024*1024;if(s.size{let r=new R3(t),i=t.maxReadSize||16*1024*1024,n=t.file,s=new Promise((o,a)=>{r.on("error",a),r.on("end",o),mc.stat(n,(l,c)=>{if(l)a(l);else{let u=new fQe.ReadStream(n,{readSize:i,size:c.size});u.on("error",a),u.pipe(r)}})});return e?s.then(e,e):s},M3=t=>new R3(t)});var H3=C((MVe,N3)=>{"use strict";var IQe=sc(),TI=bI(),RVe=require("fs"),O3=Cc(),T3=OI(),K3=require("path"),LVe=N3.exports=(t,e,r)=>{if(typeof e=="function"&&(r=e),Array.isArray(t)&&(e=t,t={}),!e||!Array.isArray(e)||!e.length)throw new TypeError("no files or directories specified");e=Array.from(e);let i=IQe(t);if(i.sync&&typeof r=="function")throw new TypeError("callback not supported for sync tar functions");if(!i.file&&typeof r=="function")throw new TypeError("callback only supported with file option");return i.file&&i.sync?EQe(i,e):i.file?yQe(i,e,r):i.sync?BQe(i,e):wQe(i,e)},EQe=(t,e)=>{let r=new TI.Sync(t),i=new O3.WriteStreamSync(t.file,{mode:t.mode||438});r.pipe(i),U3(r,e)},yQe=(t,e,r)=>{let i=new TI(t),n=new O3.WriteStream(t.file,{mode:t.mode||438});i.pipe(n);let s=new Promise((o,a)=>{n.on("error",a),n.on("close",o),i.on("error",a)});return CS(i,e),r?s.then(r,r):s},U3=(t,e)=>{e.forEach(r=>{r.charAt(0)==="@"?T3({file:K3.resolve(t.cwd,r.substr(1)),sync:!0,noResume:!0,onentry:i=>t.add(i)}):t.add(r)}),t.end()},CS=(t,e)=>{for(;e.length;){let r=e.shift();if(r.charAt(0)==="@")return T3({file:K3.resolve(t.cwd,r.substr(1)),noResume:!0,onentry:i=>t.add(i)}).then(i=>CS(t,e));t.add(r)}t.end()},BQe=(t,e)=>{let r=new TI.Sync(t);return U3(r,e),r},wQe=(t,e)=>{let r=new TI(t);return CS(r,e),r}});var mS=C((TVe,Y3)=>{"use strict";var QQe=sc(),j3=bI(),NVe=Nh(),un=require("fs"),G3=Cc(),q3=OI(),J3=require("path"),W3=lc(),OVe=Y3.exports=(t,e,r)=>{let i=QQe(t);if(!i.file)throw new TypeError("file is required");if(i.gzip)throw new TypeError("cannot append to compressed archives");if(!e||!Array.isArray(e)||!e.length)throw new TypeError("no files or directories specified");return e=Array.from(e),i.sync?bQe(i,e):DQe(i,e,r)},bQe=(t,e)=>{let r=new j3.Sync(t),i=!0,n,s;try{try{n=un.openSync(t.file,"r+")}catch(l){if(l.code==="ENOENT")n=un.openSync(t.file,"w+");else throw l}let o=un.fstatSync(n),a=Buffer.alloc(512);e:for(s=0;so.size)break;s+=c,t.mtimeCache&&t.mtimeCache.set(l.path,l.mtime)}i=!1,SQe(t,r,s,n,e)}finally{if(i)try{un.closeSync(n)}catch(o){}}},SQe=(t,e,r,i,n)=>{let s=new G3.WriteStreamSync(t.file,{fd:i,start:r});e.pipe(s),PQe(e,n)},DQe=(t,e,r)=>{e=Array.from(e);let i=new j3(t),n=(o,a,l)=>{let c=(p,m)=>{p?un.close(o,I=>l(p)):l(null,m)},u=0;if(a===0)return c(null,0);let g=0,h=Buffer.alloc(512),f=(p,m)=>{if(p)return c(p);if(g+=m,g<512&&m)return un.read(o,h,g,h.length-g,u+g,f);if(u===0&&h[0]===31&&h[1]===139)return c(new Error("cannot append to compressed archives"));if(g<512)return c(null,u);let I=new W3(h);if(!I.cksumValid)return c(null,u);let y=512*Math.ceil(I.size/512);if(u+y+512>a||(u+=y+512,u>=a))return c(null,u);t.mtimeCache&&t.mtimeCache.set(I.path,I.mtime),g=0,un.read(o,h,0,512,u,f)};un.read(o,h,0,512,u,f)},s=new Promise((o,a)=>{i.on("error",a);let l="r+",c=(u,g)=>{if(u&&u.code==="ENOENT"&&l==="r+")return l="w+",un.open(t.file,l,c);if(u)return a(u);un.fstat(g,(h,f)=>{if(h)return a(h);n(g,f.size,(p,m)=>{if(p)return a(p);let I=new G3.WriteStream(t.file,{fd:g,start:m});i.pipe(I),I.on("error",a),I.on("close",o),z3(i,e)})})};un.open(t.file,l,c)});return r?s.then(r,r):s},PQe=(t,e)=>{e.forEach(r=>{r.charAt(0)==="@"?q3({file:J3.resolve(t.cwd,r.substr(1)),sync:!0,noResume:!0,onentry:i=>t.add(i)}):t.add(r)}),t.end()},z3=(t,e)=>{for(;e.length;){let r=e.shift();if(r.charAt(0)==="@")return q3({file:J3.resolve(t.cwd,r.substr(1)),noResume:!0,onentry:i=>t.add(i)}).then(i=>z3(t,e));t.add(r)}t.end()}});var V3=C((UVe,X3)=>{"use strict";var xQe=sc(),kQe=mS(),KVe=X3.exports=(t,e,r)=>{let i=xQe(t);if(!i.file)throw new TypeError("file is required");if(i.gzip)throw new TypeError("cannot append to compressed archives");if(!e||!Array.isArray(e)||!e.length)throw new TypeError("no files or directories specified");return e=Array.from(e),vQe(i),kQe(i,e,r)},vQe=t=>{let e=t.filter;t.mtimeCache||(t.mtimeCache=new Map),t.filter=e?(r,i)=>e(r,i)&&!(t.mtimeCache.get(r)>i.mtime):(r,i)=>!(t.mtimeCache.get(r)>i.mtime)}});var $3=C((HVe,Z3)=>{var{promisify:_3}=require("util"),Zo=require("fs"),FQe=t=>{if(!t)t={mode:511,fs:Zo};else if(typeof t=="object")t={mode:511,fs:Zo,...t};else if(typeof t=="number")t={mode:t,fs:Zo};else if(typeof t=="string")t={mode:parseInt(t,8),fs:Zo};else throw new TypeError("invalid options argument");return t.mkdir=t.mkdir||t.fs.mkdir||Zo.mkdir,t.mkdirAsync=_3(t.mkdir),t.stat=t.stat||t.fs.stat||Zo.stat,t.statAsync=_3(t.stat),t.statSync=t.statSync||t.fs.statSync||Zo.statSync,t.mkdirSync=t.mkdirSync||t.fs.mkdirSync||Zo.mkdirSync,t};Z3.exports=FQe});var tW=C((YVe,eW)=>{var RQe=process.env.__TESTING_MKDIRP_PLATFORM__||process.platform,{resolve:LQe,parse:MQe}=require("path"),NQe=t=>{if(/\0/.test(t))throw Object.assign(new TypeError("path must be a string without null bytes"),{path:t,code:"ERR_INVALID_ARG_VALUE"});if(t=LQe(t),RQe==="win32"){let e=/[*|"<>?:]/,{root:r}=MQe(t);if(e.test(t.substr(r.length)))throw Object.assign(new Error("Illegal characters in path."),{path:t,code:"EINVAL"})}return t};eW.exports=NQe});var oW=C((jVe,rW)=>{var{dirname:iW}=require("path"),nW=(t,e,r=void 0)=>r===e?Promise.resolve():t.statAsync(e).then(i=>i.isDirectory()?r:void 0,i=>i.code==="ENOENT"?nW(t,iW(e),e):void 0),sW=(t,e,r=void 0)=>{if(r!==e)try{return t.statSync(e).isDirectory()?r:void 0}catch(i){return i.code==="ENOENT"?sW(t,iW(e),e):void 0}};rW.exports={findMade:nW,findMadeSync:sW}});var yS=C((GVe,aW)=>{var{dirname:AW}=require("path"),IS=(t,e,r)=>{e.recursive=!1;let i=AW(t);return i===t?e.mkdirAsync(t,e).catch(n=>{if(n.code!=="EISDIR")throw n}):e.mkdirAsync(t,e).then(()=>r||t,n=>{if(n.code==="ENOENT")return IS(i,e).then(s=>IS(t,e,s));if(n.code!=="EEXIST"&&n.code!=="EROFS")throw n;return e.statAsync(t).then(s=>{if(s.isDirectory())return r;throw n},()=>{throw n})})},ES=(t,e,r)=>{let i=AW(t);if(e.recursive=!1,i===t)try{return e.mkdirSync(t,e)}catch(n){if(n.code!=="EISDIR")throw n;return}try{return e.mkdirSync(t,e),r||t}catch(n){if(n.code==="ENOENT")return ES(t,e,ES(i,e,r));if(n.code!=="EEXIST"&&n.code!=="EROFS")throw n;try{if(!e.statSync(t).isDirectory())throw n}catch(s){throw n}}};aW.exports={mkdirpManual:IS,mkdirpManualSync:ES}});var uW=C((qVe,lW)=>{var{dirname:cW}=require("path"),{findMade:OQe,findMadeSync:TQe}=oW(),{mkdirpManual:KQe,mkdirpManualSync:UQe}=yS(),HQe=(t,e)=>(e.recursive=!0,cW(t)===t?e.mkdirAsync(t,e):OQe(e,t).then(i=>e.mkdirAsync(t,e).then(()=>i).catch(n=>{if(n.code==="ENOENT")return KQe(t,e);throw n}))),YQe=(t,e)=>{if(e.recursive=!0,cW(t)===t)return e.mkdirSync(t,e);let i=TQe(e,t);try{return e.mkdirSync(t,e),i}catch(n){if(n.code==="ENOENT")return UQe(t,e);throw n}};lW.exports={mkdirpNative:HQe,mkdirpNativeSync:YQe}});var pW=C((JVe,gW)=>{var hW=require("fs"),jQe=process.env.__TESTING_MKDIRP_NODE_VERSION__||process.version,BS=jQe.replace(/^v/,"").split("."),fW=+BS[0]>10||+BS[0]==10&&+BS[1]>=12,GQe=fW?t=>t.mkdir===hW.mkdir:()=>!1,qQe=fW?t=>t.mkdirSync===hW.mkdirSync:()=>!1;gW.exports={useNative:GQe,useNativeSync:qQe}});var yW=C((WVe,dW)=>{var Ic=$3(),Ec=tW(),{mkdirpNative:CW,mkdirpNativeSync:mW}=uW(),{mkdirpManual:IW,mkdirpManualSync:EW}=yS(),{useNative:JQe,useNativeSync:WQe}=pW(),yc=(t,e)=>(t=Ec(t),e=Ic(e),JQe(e)?CW(t,e):IW(t,e)),zQe=(t,e)=>(t=Ec(t),e=Ic(e),WQe(e)?mW(t,e):EW(t,e));yc.sync=zQe;yc.native=(t,e)=>CW(Ec(t),Ic(e));yc.manual=(t,e)=>IW(Ec(t),Ic(e));yc.nativeSync=(t,e)=>mW(Ec(t),Ic(e));yc.manualSync=(t,e)=>EW(Ec(t),Ic(e));dW.exports=yc});var PW=C((zVe,BW)=>{"use strict";var gn=require("fs"),xA=require("path"),XQe=gn.lchown?"lchown":"chown",VQe=gn.lchownSync?"lchownSync":"chownSync",wW=gn.lchown&&!process.version.match(/v1[1-9]+\./)&&!process.version.match(/v10\.[6-9]/),QW=(t,e,r)=>{try{return gn[VQe](t,e,r)}catch(i){if(i.code!=="ENOENT")throw i}},ZQe=(t,e,r)=>{try{return gn.chownSync(t,e,r)}catch(i){if(i.code!=="ENOENT")throw i}},_Qe=wW?(t,e,r,i)=>n=>{!n||n.code!=="EISDIR"?i(n):gn.chown(t,e,r,i)}:(t,e,r,i)=>i,wS=wW?(t,e,r)=>{try{return QW(t,e,r)}catch(i){if(i.code!=="EISDIR")throw i;ZQe(t,e,r)}}:(t,e,r)=>QW(t,e,r),$Qe=process.version,bW=(t,e,r)=>gn.readdir(t,e,r),e0e=(t,e)=>gn.readdirSync(t,e);/^v4\./.test($Qe)&&(bW=(t,e,r)=>gn.readdir(t,r));var KI=(t,e,r,i)=>{gn[XQe](t,e,r,_Qe(t,e,r,n=>{i(n&&n.code!=="ENOENT"?n:null)}))},DW=(t,e,r,i,n)=>{if(typeof e=="string")return gn.lstat(xA.resolve(t,e),(s,o)=>{if(s)return n(s.code!=="ENOENT"?s:null);o.name=e,DW(t,o,r,i,n)});if(e.isDirectory())QS(xA.resolve(t,e.name),r,i,s=>{if(s)return n(s);let o=xA.resolve(t,e.name);KI(o,r,i,n)});else{let s=xA.resolve(t,e.name);KI(s,r,i,n)}},QS=(t,e,r,i)=>{bW(t,{withFileTypes:!0},(n,s)=>{if(n){if(n.code==="ENOENT")return i();if(n.code!=="ENOTDIR"&&n.code!=="ENOTSUP")return i(n)}if(n||!s.length)return KI(t,e,r,i);let o=s.length,a=null,l=c=>{if(!a){if(c)return i(a=c);if(--o==0)return KI(t,e,r,i)}};s.forEach(c=>DW(t,c,e,r,l))})},t0e=(t,e,r,i)=>{if(typeof e=="string")try{let n=gn.lstatSync(xA.resolve(t,e));n.name=e,e=n}catch(n){if(n.code==="ENOENT")return;throw n}e.isDirectory()&&SW(xA.resolve(t,e.name),r,i),wS(xA.resolve(t,e.name),r,i)},SW=(t,e,r)=>{let i;try{i=e0e(t,{withFileTypes:!0})}catch(n){if(n.code==="ENOENT")return;if(n.code==="ENOTDIR"||n.code==="ENOTSUP")return wS(t,e,r);throw n}return i&&i.length&&i.forEach(n=>t0e(t,n,e,r)),wS(t,e,r)};BW.exports=QS;QS.sync=SW});var FW=C((ZVe,bS)=>{"use strict";var xW=yW(),hn=require("fs"),UI=require("path"),kW=PW(),DS=class extends Error{constructor(e,r){super("Cannot extract through symbolic link");this.path=r,this.symlink=e}get name(){return"SylinkError"}},Oh=class extends Error{constructor(e,r){super(r+": Cannot cd into '"+e+"'");this.path=e,this.code=r}get name(){return"CwdError"}},XVe=bS.exports=(t,e,r)=>{let i=e.umask,n=e.mode|448,s=(n&i)!=0,o=e.uid,a=e.gid,l=typeof o=="number"&&typeof a=="number"&&(o!==e.processUid||a!==e.processGid),c=e.preserve,u=e.unlink,g=e.cache,h=e.cwd,f=(I,y)=>{I?r(I):(g.set(t,!0),y&&l?kW(y,o,a,B=>f(B)):s?hn.chmod(t,n,r):r())};if(g&&g.get(t)===!0)return f();if(t===h)return hn.stat(t,(I,y)=>{(I||!y.isDirectory())&&(I=new Oh(t,I&&I.code||"ENOTDIR")),f(I)});if(c)return xW(t,{mode:n}).then(I=>f(null,I),f);let m=UI.relative(h,t).split(/\/|\\/);HI(h,m,n,g,u,h,null,f)},HI=(t,e,r,i,n,s,o,a)=>{if(!e.length)return a(null,o);let l=e.shift(),c=t+"/"+l;if(i.get(c))return HI(c,e,r,i,n,s,o,a);hn.mkdir(c,r,vW(c,e,r,i,n,s,o,a))},vW=(t,e,r,i,n,s,o,a)=>l=>{if(l){if(l.path&&UI.dirname(l.path)===s&&(l.code==="ENOTDIR"||l.code==="ENOENT"))return a(new Oh(s,l.code));hn.lstat(t,(c,u)=>{if(c)a(c);else if(u.isDirectory())HI(t,e,r,i,n,s,o,a);else if(n)hn.unlink(t,g=>{if(g)return a(g);hn.mkdir(t,r,vW(t,e,r,i,n,s,o,a))});else{if(u.isSymbolicLink())return a(new DS(t,t+"/"+e.join("/")));a(l)}})}else o=o||t,HI(t,e,r,i,n,s,o,a)},VVe=bS.exports.sync=(t,e)=>{let r=e.umask,i=e.mode|448,n=(i&r)!=0,s=e.uid,o=e.gid,a=typeof s=="number"&&typeof o=="number"&&(s!==e.processUid||o!==e.processGid),l=e.preserve,c=e.unlink,u=e.cache,g=e.cwd,h=I=>{u.set(t,!0),I&&a&&kW.sync(I,s,o),n&&hn.chmodSync(t,i)};if(u&&u.get(t)===!0)return h();if(t===g){let I=!1,y="ENOTDIR";try{I=hn.statSync(t).isDirectory()}catch(B){y=B.code}finally{if(!I)throw new Oh(t,y)}h();return}if(l)return h(xW.sync(t,i));let p=UI.relative(g,t).split(/\/|\\/),m=null;for(let I=p.shift(),y=g;I&&(y+="/"+I);I=p.shift())if(!u.get(y))try{hn.mkdirSync(y,i),m=m||y,u.set(y,!0)}catch(B){if(B.path&&UI.dirname(B.path)===g&&(B.code==="ENOTDIR"||B.code==="ENOENT"))return new Oh(g,B.code);let P=hn.lstatSync(y);if(P.isDirectory()){u.set(y,!0);continue}else if(c){hn.unlinkSync(y),hn.mkdirSync(y,i),m=m||y,u.set(y,!0);continue}else if(P.isSymbolicLink())return new DS(y,y+"/"+p.join("/"))}return h(m)}});var MW=C((_Ve,RW)=>{var LW=require("assert");RW.exports=()=>{let t=new Map,e=new Map,{join:r}=require("path"),i=u=>r(u).split(/[\\\/]/).slice(0,-1).reduce((g,h)=>g.length?g.concat(r(g[g.length-1],h)):[h],[]),n=new Set,s=u=>{let g=e.get(u);if(!g)throw new Error("function does not have any path reservations");return{paths:g.paths.map(h=>t.get(h)),dirs:[...g.dirs].map(h=>t.get(h))}},o=u=>{let{paths:g,dirs:h}=s(u);return g.every(f=>f[0]===u)&&h.every(f=>f[0]instanceof Set&&f[0].has(u))},a=u=>n.has(u)||!o(u)?!1:(n.add(u),u(()=>l(u)),!0),l=u=>{if(!n.has(u))return!1;let{paths:g,dirs:h}=e.get(u),f=new Set;return g.forEach(p=>{let m=t.get(p);LW.equal(m[0],u),m.length===1?t.delete(p):(m.shift(),typeof m[0]=="function"?f.add(m[0]):m[0].forEach(I=>f.add(I)))}),h.forEach(p=>{let m=t.get(p);LW(m[0]instanceof Set),m[0].size===1&&m.length===1?t.delete(p):m[0].size===1?(m.shift(),f.add(m[0])):m[0].delete(u)}),n.delete(u),f.forEach(p=>a(p)),!0};return{check:o,reserve:(u,g)=>{let h=new Set(u.map(f=>i(f)).reduce((f,p)=>f.concat(p)));return e.set(g,{dirs:h,paths:u}),u.forEach(f=>{let p=t.get(f);p?p.push(g):t.set(f,[g])}),h.forEach(f=>{let p=t.get(f);p?p[p.length-1]instanceof Set?p[p.length-1].add(g):p.push(new Set([g])):t.set(f,[new Set([g])])}),a(g)}}}});var TW=C(($Ve,NW)=>{var r0e=process.env.__FAKE_PLATFORM__||process.platform,i0e=r0e==="win32",n0e=global.__FAKE_TESTING_FS__||require("fs"),{O_CREAT:s0e,O_TRUNC:o0e,O_WRONLY:a0e,UV_FS_O_FILEMAP:OW=0}=n0e.constants,A0e=i0e&&!!OW,l0e=512*1024,c0e=OW|o0e|s0e|a0e;NW.exports=A0e?t=>t"w"});var MS=C((iZe,KW)=>{"use strict";var u0e=require("assert"),eZe=require("events").EventEmitter,g0e=Nh(),yt=require("fs"),h0e=Cc(),qs=require("path"),SS=FW(),tZe=SS.sync,UW=YD(),f0e=MW(),HW=Symbol("onEntry"),PS=Symbol("checkFs"),YW=Symbol("checkFs2"),xS=Symbol("isReusable"),Js=Symbol("makeFs"),kS=Symbol("file"),vS=Symbol("directory"),YI=Symbol("link"),jW=Symbol("symlink"),GW=Symbol("hardlink"),qW=Symbol("unsupported"),rZe=Symbol("unknown"),JW=Symbol("checkPath"),Bc=Symbol("mkdir"),si=Symbol("onError"),jI=Symbol("pending"),WW=Symbol("pend"),wc=Symbol("unpend"),FS=Symbol("ended"),RS=Symbol("maybeClose"),LS=Symbol("skip"),Th=Symbol("doChown"),Kh=Symbol("uid"),Uh=Symbol("gid"),zW=require("crypto"),XW=TW(),GI=()=>{throw new Error("sync function called cb somehow?!?")},p0e=(t,e)=>{if(process.platform!=="win32")return yt.unlink(t,e);let r=t+".DELETE."+zW.randomBytes(16).toString("hex");yt.rename(t,r,i=>{if(i)return e(i);yt.unlink(r,e)})},d0e=t=>{if(process.platform!=="win32")return yt.unlinkSync(t);let e=t+".DELETE."+zW.randomBytes(16).toString("hex");yt.renameSync(t,e),yt.unlinkSync(e)},VW=(t,e,r)=>t===t>>>0?t:e===e>>>0?e:r,qI=class extends g0e{constructor(e){if(e||(e={}),e.ondone=r=>{this[FS]=!0,this[RS]()},super(e),this.reservations=f0e(),this.transform=typeof e.transform=="function"?e.transform:null,this.writable=!0,this.readable=!1,this[jI]=0,this[FS]=!1,this.dirCache=e.dirCache||new Map,typeof e.uid=="number"||typeof e.gid=="number"){if(typeof e.uid!="number"||typeof e.gid!="number")throw new TypeError("cannot set owner without number uid and gid");if(e.preserveOwner)throw new TypeError("cannot preserve owner in archive and also set owner explicitly");this.uid=e.uid,this.gid=e.gid,this.setOwner=!0}else this.uid=null,this.gid=null,this.setOwner=!1;e.preserveOwner===void 0&&typeof e.uid!="number"?this.preserveOwner=process.getuid&&process.getuid()===0:this.preserveOwner=!!e.preserveOwner,this.processUid=(this.preserveOwner||this.setOwner)&&process.getuid?process.getuid():null,this.processGid=(this.preserveOwner||this.setOwner)&&process.getgid?process.getgid():null,this.forceChown=e.forceChown===!0,this.win32=!!e.win32||process.platform==="win32",this.newer=!!e.newer,this.keep=!!e.keep,this.noMtime=!!e.noMtime,this.preservePaths=!!e.preservePaths,this.unlink=!!e.unlink,this.cwd=qs.resolve(e.cwd||process.cwd()),this.strip=+e.strip||0,this.processUmask=process.umask(),this.umask=typeof e.umask=="number"?e.umask:this.processUmask,this.dmode=e.dmode||511&~this.umask,this.fmode=e.fmode||438&~this.umask,this.on("entry",r=>this[HW](r))}warn(e,r,i={}){return(e==="TAR_BAD_ARCHIVE"||e==="TAR_ABORT")&&(i.recoverable=!1),super.warn(e,r,i)}[RS](){this[FS]&&this[jI]===0&&(this.emit("prefinish"),this.emit("finish"),this.emit("end"),this.emit("close"))}[JW](e){if(this.strip){let r=e.path.split(/\/|\\/);if(r.length=this.strip&&(e.linkpath=i.slice(this.strip).join("/"))}}if(!this.preservePaths){let r=e.path;if(r.match(/(^|\/|\\)\.\.(\\|\/|$)/))return this.warn("TAR_ENTRY_ERROR","path contains '..'",{entry:e,path:r}),!1;if(qs.win32.isAbsolute(r)){let i=qs.win32.parse(r);e.path=r.substr(i.root.length);let n=i.root;this.warn("TAR_ENTRY_INFO",`stripping ${n} from absolute path`,{entry:e,path:r})}}if(this.win32){let r=qs.win32.parse(e.path);e.path=r.root===""?UW.encode(e.path):r.root+UW.encode(e.path.substr(r.root.length))}return qs.isAbsolute(e.path)?e.absolute=e.path:e.absolute=qs.resolve(this.cwd,e.path),!0}[HW](e){if(!this[JW](e))return e.resume();switch(u0e.equal(typeof e.absolute,"string"),e.type){case"Directory":case"GNUDumpDir":e.mode&&(e.mode=e.mode|448);case"File":case"OldFile":case"ContiguousFile":case"Link":case"SymbolicLink":return this[PS](e);case"CharacterDevice":case"BlockDevice":case"FIFO":return this[qW](e)}}[si](e,r){e.name==="CwdError"?this.emit("error",e):(this.warn("TAR_ENTRY_ERROR",e,{entry:r}),this[wc](),r.resume())}[Bc](e,r,i){SS(e,{uid:this.uid,gid:this.gid,processUid:this.processUid,processGid:this.processGid,umask:this.processUmask,preserve:this.preservePaths,unlink:this.unlink,cache:this.dirCache,cwd:this.cwd,mode:r},i)}[Th](e){return this.forceChown||this.preserveOwner&&(typeof e.uid=="number"&&e.uid!==this.processUid||typeof e.gid=="number"&&e.gid!==this.processGid)||typeof this.uid=="number"&&this.uid!==this.processUid||typeof this.gid=="number"&&this.gid!==this.processGid}[Kh](e){return VW(this.uid,e.uid,this.processUid)}[Uh](e){return VW(this.gid,e.gid,this.processGid)}[kS](e,r){let i=e.mode&4095||this.fmode,n=new h0e.WriteStream(e.absolute,{flags:XW(e.size),mode:i,autoClose:!1});n.on("error",l=>this[si](l,e));let s=1,o=l=>{if(l)return this[si](l,e);--s==0&&yt.close(n.fd,c=>{r(),c?this[si](c,e):this[wc]()})};n.on("finish",l=>{let c=e.absolute,u=n.fd;if(e.mtime&&!this.noMtime){s++;let g=e.atime||new Date,h=e.mtime;yt.futimes(u,g,h,f=>f?yt.utimes(c,g,h,p=>o(p&&f)):o())}if(this[Th](e)){s++;let g=this[Kh](e),h=this[Uh](e);yt.fchown(u,g,h,f=>f?yt.chown(c,g,h,p=>o(p&&f)):o())}o()});let a=this.transform&&this.transform(e)||e;a!==e&&(a.on("error",l=>this[si](l,e)),e.pipe(a)),a.pipe(n)}[vS](e,r){let i=e.mode&4095||this.dmode;this[Bc](e.absolute,i,n=>{if(n)return r(),this[si](n,e);let s=1,o=a=>{--s==0&&(r(),this[wc](),e.resume())};e.mtime&&!this.noMtime&&(s++,yt.utimes(e.absolute,e.atime||new Date,e.mtime,o)),this[Th](e)&&(s++,yt.chown(e.absolute,this[Kh](e),this[Uh](e),o)),o()})}[qW](e){e.unsupported=!0,this.warn("TAR_ENTRY_UNSUPPORTED",`unsupported entry type: ${e.type}`,{entry:e}),e.resume()}[jW](e,r){this[YI](e,e.linkpath,"symlink",r)}[GW](e,r){this[YI](e,qs.resolve(this.cwd,e.linkpath),"link",r)}[WW](){this[jI]++}[wc](){this[jI]--,this[RS]()}[LS](e){this[wc](),e.resume()}[xS](e,r){return e.type==="File"&&!this.unlink&&r.isFile()&&r.nlink<=1&&process.platform!=="win32"}[PS](e){this[WW]();let r=[e.path];e.linkpath&&r.push(e.linkpath),this.reservations.reserve(r,i=>this[YW](e,i))}[YW](e,r){this[Bc](qs.dirname(e.absolute),this.dmode,i=>{if(i)return r(),this[si](i,e);yt.lstat(e.absolute,(n,s)=>{s&&(this.keep||this.newer&&s.mtime>e.mtime)?(this[LS](e),r()):n||this[xS](e,s)?this[Js](null,e,r):s.isDirectory()?e.type==="Directory"?!e.mode||(s.mode&4095)===e.mode?this[Js](null,e,r):yt.chmod(e.absolute,e.mode,o=>this[Js](o,e,r)):yt.rmdir(e.absolute,o=>this[Js](o,e,r)):p0e(e.absolute,o=>this[Js](o,e,r))})})}[Js](e,r,i){if(e)return this[si](e,r);switch(r.type){case"File":case"OldFile":case"ContiguousFile":return this[kS](r,i);case"Link":return this[GW](r,i);case"SymbolicLink":return this[jW](r,i);case"Directory":case"GNUDumpDir":return this[vS](r,i)}}[YI](e,r,i,n){yt[i](r,e.absolute,s=>{if(s)return this[si](s,e);n(),this[wc](),e.resume()})}},ZW=class extends qI{constructor(e){super(e)}[PS](e){let r=this[Bc](qs.dirname(e.absolute),this.dmode,GI);if(r)return this[si](r,e);try{let i=yt.lstatSync(e.absolute);if(this.keep||this.newer&&i.mtime>e.mtime)return this[LS](e);if(this[xS](e,i))return this[Js](null,e,GI);try{return i.isDirectory()?e.type==="Directory"?e.mode&&(i.mode&4095)!==e.mode&&yt.chmodSync(e.absolute,e.mode):yt.rmdirSync(e.absolute):d0e(e.absolute),this[Js](null,e,GI)}catch(n){return this[si](n,e)}}catch(i){return this[Js](null,e,GI)}}[kS](e,r){let i=e.mode&4095||this.fmode,n=l=>{let c;try{yt.closeSync(o)}catch(u){c=u}(l||c)&&this[si](l||c,e)},s,o;try{o=yt.openSync(e.absolute,XW(e.size),i)}catch(l){return n(l)}let a=this.transform&&this.transform(e)||e;a!==e&&(a.on("error",l=>this[si](l,e)),e.pipe(a)),a.on("data",l=>{try{yt.writeSync(o,l,0,l.length)}catch(c){n(c)}}),a.on("end",l=>{let c=null;if(e.mtime&&!this.noMtime){let u=e.atime||new Date,g=e.mtime;try{yt.futimesSync(o,u,g)}catch(h){try{yt.utimesSync(e.absolute,u,g)}catch(f){c=h}}}if(this[Th](e)){let u=this[Kh](e),g=this[Uh](e);try{yt.fchownSync(o,u,g)}catch(h){try{yt.chownSync(e.absolute,u,g)}catch(f){c=c||h}}}n(c)})}[vS](e,r){let i=e.mode&4095||this.dmode,n=this[Bc](e.absolute,i);if(n)return this[si](n,e);if(e.mtime&&!this.noMtime)try{yt.utimesSync(e.absolute,e.atime||new Date,e.mtime)}catch(s){}if(this[Th](e))try{yt.chownSync(e.absolute,this[Kh](e),this[Uh](e))}catch(s){}e.resume()}[Bc](e,r){try{return SS.sync(e,{uid:this.uid,gid:this.gid,processUid:this.processUid,processGid:this.processGid,umask:this.processUmask,preserve:this.preservePaths,unlink:this.unlink,cache:this.dirCache,cwd:this.cwd,mode:r})}catch(i){return i}}[YI](e,r,i,n){try{yt[i+"Sync"](r,e.absolute),e.resume()}catch(s){return this[si](s,e)}}};qI.Sync=ZW;KW.exports=qI});var r8=C((sZe,_W)=>{"use strict";var C0e=sc(),JI=MS(),$W=require("fs"),e8=Cc(),t8=require("path"),nZe=_W.exports=(t,e,r)=>{typeof t=="function"?(r=t,e=null,t={}):Array.isArray(t)&&(e=t,t={}),typeof e=="function"&&(r=e,e=null),e?e=Array.from(e):e=[];let i=C0e(t);if(i.sync&&typeof r=="function")throw new TypeError("callback not supported for sync tar functions");if(!i.file&&typeof r=="function")throw new TypeError("callback only supported with file option");return e.length&&m0e(i,e),i.file&&i.sync?I0e(i):i.file?E0e(i,r):i.sync?y0e(i):B0e(i)},m0e=(t,e)=>{let r=new Map(e.map(s=>[s.replace(/\/+$/,""),!0])),i=t.filter,n=(s,o)=>{let a=o||t8.parse(s).root||".",l=s===a?!1:r.has(s)?r.get(s):n(t8.dirname(s),a);return r.set(s,l),l};t.filter=i?(s,o)=>i(s,o)&&n(s.replace(/\/+$/,"")):s=>n(s.replace(/\/+$/,""))},I0e=t=>{let e=new JI.Sync(t),r=t.file,i=!0,n,s=$W.statSync(r),o=t.maxReadSize||16*1024*1024;new e8.ReadStreamSync(r,{readSize:o,size:s.size}).pipe(e)},E0e=(t,e)=>{let r=new JI(t),i=t.maxReadSize||16*1024*1024,n=t.file,s=new Promise((o,a)=>{r.on("error",a),r.on("close",o),$W.stat(n,(l,c)=>{if(l)a(l);else{let u=new e8.ReadStream(n,{readSize:i,size:c.size});u.on("error",a),u.pipe(r)}})});return e?s.then(e,e):s},y0e=t=>new JI.Sync(t),B0e=t=>new JI(t)});var i8=C(Cr=>{"use strict";Cr.c=Cr.create=H3();Cr.r=Cr.replace=mS();Cr.t=Cr.list=OI();Cr.u=Cr.update=V3();Cr.x=Cr.extract=r8();Cr.Pack=bI();Cr.Unpack=MS();Cr.Parse=Nh();Cr.ReadEntry=kh();Cr.WriteEntry=XD();Cr.Header=lc();Cr.Pax=uI();Cr.types=xh()});var s8=C((aZe,NS)=>{"use strict";var w0e=Object.prototype.hasOwnProperty,oi="~";function Hh(){}Object.create&&(Hh.prototype=Object.create(null),new Hh().__proto__||(oi=!1));function Q0e(t,e,r){this.fn=t,this.context=e,this.once=r||!1}function n8(t,e,r,i,n){if(typeof r!="function")throw new TypeError("The listener must be a function");var s=new Q0e(r,i||t,n),o=oi?oi+e:e;return t._events[o]?t._events[o].fn?t._events[o]=[t._events[o],s]:t._events[o].push(s):(t._events[o]=s,t._eventsCount++),t}function WI(t,e){--t._eventsCount==0?t._events=new Hh:delete t._events[e]}function jr(){this._events=new Hh,this._eventsCount=0}jr.prototype.eventNames=function(){var e=[],r,i;if(this._eventsCount===0)return e;for(i in r=this._events)w0e.call(r,i)&&e.push(oi?i.slice(1):i);return Object.getOwnPropertySymbols?e.concat(Object.getOwnPropertySymbols(r)):e};jr.prototype.listeners=function(e){var r=oi?oi+e:e,i=this._events[r];if(!i)return[];if(i.fn)return[i.fn];for(var n=0,s=i.length,o=new Array(s);n{"use strict";o8.exports=(t,e)=>(e=e||(()=>{}),t.then(r=>new Promise(i=>{i(e())}).then(()=>r),r=>new Promise(i=>{i(e())}).then(()=>{throw r})))});var l8=C((lZe,zI)=>{"use strict";var b0e=a8(),OS=class extends Error{constructor(e){super(e);this.name="TimeoutError"}},A8=(t,e,r)=>new Promise((i,n)=>{if(typeof e!="number"||e<0)throw new TypeError("Expected `milliseconds` to be a positive number");if(e===Infinity){i(t);return}let s=setTimeout(()=>{if(typeof r=="function"){try{i(r())}catch(l){n(l)}return}let o=typeof r=="string"?r:`Promise timed out after ${e} milliseconds`,a=r instanceof Error?r:new OS(o);typeof t.cancel=="function"&&t.cancel(),n(a)},e);b0e(t.then(i,n),()=>{clearTimeout(s)})});zI.exports=A8;zI.exports.default=A8;zI.exports.TimeoutError=OS});var c8=C(TS=>{"use strict";Object.defineProperty(TS,"__esModule",{value:!0});function D0e(t,e,r){let i=0,n=t.length;for(;n>0;){let s=n/2|0,o=i+s;r(t[o],e)<=0?(i=++o,n-=s+1):n=s}return i}TS.default=D0e});var g8=C(KS=>{"use strict";Object.defineProperty(KS,"__esModule",{value:!0});var S0e=c8(),u8=class{constructor(){this._queue=[]}enqueue(e,r){r=Object.assign({priority:0},r);let i={priority:r.priority,run:e};if(this.size&&this._queue[this.size-1].priority>=r.priority){this._queue.push(i);return}let n=S0e.default(this._queue,i,(s,o)=>o.priority-s.priority);this._queue.splice(n,0,i)}dequeue(){let e=this._queue.shift();return e==null?void 0:e.run}filter(e){return this._queue.filter(r=>r.priority===e.priority).map(r=>r.run)}get size(){return this._queue.length}};KS.default=u8});var p8=C(US=>{"use strict";Object.defineProperty(US,"__esModule",{value:!0});var P0e=s8(),h8=l8(),x0e=g8(),XI=()=>{},k0e=new h8.TimeoutError,f8=class extends P0e{constructor(e){var r,i,n,s;super();if(this._intervalCount=0,this._intervalEnd=0,this._pendingCount=0,this._resolveEmpty=XI,this._resolveIdle=XI,e=Object.assign({carryoverConcurrencyCount:!1,intervalCap:Infinity,interval:0,concurrency:Infinity,autoStart:!0,queueClass:x0e.default},e),!(typeof e.intervalCap=="number"&&e.intervalCap>=1))throw new TypeError(`Expected \`intervalCap\` to be a number from 1 and up, got \`${(i=(r=e.intervalCap)===null||r===void 0?void 0:r.toString())!==null&&i!==void 0?i:""}\` (${typeof e.intervalCap})`);if(e.interval===void 0||!(Number.isFinite(e.interval)&&e.interval>=0))throw new TypeError(`Expected \`interval\` to be a finite number >= 0, got \`${(s=(n=e.interval)===null||n===void 0?void 0:n.toString())!==null&&s!==void 0?s:""}\` (${typeof e.interval})`);this._carryoverConcurrencyCount=e.carryoverConcurrencyCount,this._isIntervalIgnored=e.intervalCap===Infinity||e.interval===0,this._intervalCap=e.intervalCap,this._interval=e.interval,this._queue=new e.queueClass,this._queueClass=e.queueClass,this.concurrency=e.concurrency,this._timeout=e.timeout,this._throwOnTimeout=e.throwOnTimeout===!0,this._isPaused=e.autoStart===!1}get _doesIntervalAllowAnother(){return this._isIntervalIgnored||this._intervalCount{this._onResumeInterval()},r)),!0}return!1}_tryToStartAnother(){if(this._queue.size===0)return this._intervalId&&clearInterval(this._intervalId),this._intervalId=void 0,this._resolvePromises(),!1;if(!this._isPaused){let e=!this._isIntervalPaused();if(this._doesIntervalAllowAnother&&this._doesConcurrentAllowAnother){let r=this._queue.dequeue();return r?(this.emit("active"),r(),e&&this._initializeIntervalIfNeeded(),!0):!1}}return!1}_initializeIntervalIfNeeded(){this._isIntervalIgnored||this._intervalId!==void 0||(this._intervalId=setInterval(()=>{this._onInterval()},this._interval),this._intervalEnd=Date.now()+this._interval)}_onInterval(){this._intervalCount===0&&this._pendingCount===0&&this._intervalId&&(clearInterval(this._intervalId),this._intervalId=void 0),this._intervalCount=this._carryoverConcurrencyCount?this._pendingCount:0,this._processQueue()}_processQueue(){for(;this._tryToStartAnother(););}get concurrency(){return this._concurrency}set concurrency(e){if(!(typeof e=="number"&&e>=1))throw new TypeError(`Expected \`concurrency\` to be a number from 1 and up, got \`${e}\` (${typeof e})`);this._concurrency=e,this._processQueue()}async add(e,r={}){return new Promise((i,n)=>{let s=async()=>{this._pendingCount++,this._intervalCount++;try{let o=this._timeout===void 0&&r.timeout===void 0?e():h8.default(Promise.resolve(e()),r.timeout===void 0?this._timeout:r.timeout,()=>{(r.throwOnTimeout===void 0?this._throwOnTimeout:r.throwOnTimeout)&&n(k0e)});i(await o)}catch(o){n(o)}this._next()};this._queue.enqueue(s,r),this._tryToStartAnother(),this.emit("add")})}async addAll(e,r){return Promise.all(e.map(async i=>this.add(i,r)))}start(){return this._isPaused?(this._isPaused=!1,this._processQueue(),this):this}pause(){this._isPaused=!0}clear(){this._queue=new this._queueClass}async onEmpty(){if(this._queue.size!==0)return new Promise(e=>{let r=this._resolveEmpty;this._resolveEmpty=()=>{r(),e()}})}async onIdle(){if(!(this._pendingCount===0&&this._queue.size===0))return new Promise(e=>{let r=this._resolveIdle;this._resolveIdle=()=>{r(),e()}})}get size(){return this._queue.size}sizeBy(e){return this._queue.filter(e).length}get pending(){return this._pendingCount}get isPaused(){return this._isPaused}get timeout(){return this._timeout}set timeout(e){this._timeout=e}};US.default=f8});var E8=C((fZe,I8)=>{var YS;I8.exports.getContent=()=>(typeof YS=="undefined"&&(YS=require("zlib").brotliDecompressSync(Buffer.from("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","base64")).toString()),YS)});var S8=C((jS,D8)=>{(function(t,e){typeof jS=="object"?D8.exports=e():typeof define=="function"&&define.amd?define(e):t.treeify=e()})(jS,function(){function t(n,s){var o=s?"\u2514":"\u251C";return n?o+="\u2500 ":o+="\u2500\u2500\u2510",o}function e(n,s){var o=[];for(var a in n)!n.hasOwnProperty(a)||s&&typeof n[a]=="function"||o.push(a);return o}function r(n,s,o,a,l,c,u){var g="",h=0,f,p,m=a.slice(0);if(m.push([s,o])&&a.length>0&&(a.forEach(function(y,B){B>0&&(g+=(y[1]?" ":"\u2502")+" "),!p&&y[0]===s&&(p=!0)}),g+=t(n,o)+n,l&&(typeof s!="object"||s instanceof Date)&&(g+=": "+s),p&&(g+=" (circular ref.)"),u(g)),!p&&typeof s=="object"){var I=e(s,c);I.forEach(function(y){f=++h===I.length,r(y,s[y],f,m,l,c,u)})}}var i={};return i.asLines=function(n,s,o,a){var l=typeof o!="function"?o:!1;r(".",n,!1,[],s,l,a||o)},i.asTree=function(n,s,o){var a="";return r(".",n,!1,[],s,o,function(l){a+=l+` -`}),a},i})});var L8=C((MZe,JS)=>{"use strict";var T0e=t=>{let e=!1,r=!1,i=!1;for(let n=0;n{if(!(typeof t=="string"||Array.isArray(t)))throw new TypeError("Expected the input to be `string | string[]`");e=Object.assign({pascalCase:!1},e);let r=n=>e.pascalCase?n.charAt(0).toUpperCase()+n.slice(1):n;return Array.isArray(t)?t=t.map(n=>n.trim()).filter(n=>n.length).join("-"):t=t.trim(),t.length===0?"":t.length===1?e.pascalCase?t.toUpperCase():t.toLowerCase():(t!==t.toLowerCase()&&(t=T0e(t)),t=t.replace(/^[_.\- ]+/,"").toLowerCase().replace(/[_.\- ]+(\w|$)/g,(n,s)=>s.toUpperCase()).replace(/\d+(\w|$)/g,n=>n.toUpperCase()),r(t))};JS.exports=R8;JS.exports.default=R8});var Xs=C(iP=>{"use strict";Object.defineProperty(iP,"__esModule",{value:!0});iP.default=H8;function H8(){}H8.prototype={diff:function(e,r){var i=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},n=i.callback;typeof i=="function"&&(n=i,i={}),this.options=i;var s=this;function o(m){return n?(setTimeout(function(){n(void 0,m)},0),!0):m}e=this.castInput(e),r=this.castInput(r),e=this.removeEmpty(this.tokenize(e)),r=this.removeEmpty(this.tokenize(r));var a=r.length,l=e.length,c=1,u=a+l,g=[{newPos:-1,components:[]}],h=this.extractCommon(g[0],r,e,0);if(g[0].newPos+1>=a&&h+1>=l)return o([{value:this.join(r),count:r.length}]);function f(){for(var m=-1*c;m<=c;m+=2){var I=void 0,y=g[m-1],B=g[m+1],P=(B?B.newPos:0)-m;y&&(g[m-1]=void 0);var k=y&&y.newPos+1=a&&P+1>=l)return o(G0e(s,I.components,r,e,s.useLongestToken));g[m]=I}c++}if(n)(function m(){setTimeout(function(){if(c>u)return n();f()||m()},0)})();else for(;c<=u;){var p=f();if(p)return p}},pushComponent:function(e,r,i){var n=e[e.length-1];n&&n.added===r&&n.removed===i?e[e.length-1]={count:n.count+1,added:r,removed:i}:e.push({count:1,added:r,removed:i})},extractCommon:function(e,r,i,n){for(var s=r.length,o=i.length,a=e.newPos,l=a-n,c=0;a+1f.length?m:f}),c.value=t.join(u)}else c.value=t.join(r.slice(a,a+c.count));a+=c.count,c.added||(l+=c.count)}}var h=e[o-1];return o>1&&typeof h.value=="string"&&(h.added||h.removed)&&t.equals("",h.value)&&(e[o-2].value+=h.value,e.pop()),e}function q0e(t){return{newPos:t.newPos,components:t.components.slice(0)}}});var j8=C(Gh=>{"use strict";Object.defineProperty(Gh,"__esModule",{value:!0});Gh.diffChars=J0e;Gh.characterDiff=void 0;var z0e=W0e(Xs());function W0e(t){return t&&t.__esModule?t:{default:t}}var Y8=new z0e.default;Gh.characterDiff=Y8;function J0e(t,e,r){return Y8.diff(t,e,r)}});var sP=C(nP=>{"use strict";Object.defineProperty(nP,"__esModule",{value:!0});nP.generateOptions=X0e;function X0e(t,e){if(typeof t=="function")e.callback=t;else if(t)for(var r in t)t.hasOwnProperty(r)&&(e[r]=t[r]);return e}});var J8=C(Sc=>{"use strict";Object.defineProperty(Sc,"__esModule",{value:!0});Sc.diffWords=V0e;Sc.diffWordsWithSpace=Z0e;Sc.wordDiff=void 0;var $0e=_0e(Xs()),ebe=sP();function _0e(t){return t&&t.__esModule?t:{default:t}}var G8=/^[A-Za-z\xC0-\u02C6\u02C8-\u02D7\u02DE-\u02FF\u1E00-\u1EFF]+$/,q8=/\S/,qh=new $0e.default;Sc.wordDiff=qh;qh.equals=function(t,e){return this.options.ignoreCase&&(t=t.toLowerCase(),e=e.toLowerCase()),t===e||this.options.ignoreWhitespace&&!q8.test(t)&&!q8.test(e)};qh.tokenize=function(t){for(var e=t.split(/(\s+|[()[\]{}'"]|\b)/),r=0;r{"use strict";Object.defineProperty(Pc,"__esModule",{value:!0});Pc.diffLines=tbe;Pc.diffTrimmedLines=rbe;Pc.lineDiff=void 0;var nbe=ibe(Xs()),sbe=sP();function ibe(t){return t&&t.__esModule?t:{default:t}}var tE=new nbe.default;Pc.lineDiff=tE;tE.tokenize=function(t){var e=[],r=t.split(/(\n|\r\n)/);r[r.length-1]||r.pop();for(var i=0;i{"use strict";Object.defineProperty(Jh,"__esModule",{value:!0});Jh.diffSentences=obe;Jh.sentenceDiff=void 0;var Abe=abe(Xs());function abe(t){return t&&t.__esModule?t:{default:t}}var oP=new Abe.default;Jh.sentenceDiff=oP;oP.tokenize=function(t){return t.split(/(\S.+?[.!?])(?=\s+|$)/)};function obe(t,e,r){return oP.diff(t,e,r)}});var z8=C(Wh=>{"use strict";Object.defineProperty(Wh,"__esModule",{value:!0});Wh.diffCss=lbe;Wh.cssDiff=void 0;var ube=cbe(Xs());function cbe(t){return t&&t.__esModule?t:{default:t}}var aP=new ube.default;Wh.cssDiff=aP;aP.tokenize=function(t){return t.split(/([{}:;,]|\s+)/)};function lbe(t,e,r){return aP.diff(t,e,r)}});var V8=C(xc=>{"use strict";Object.defineProperty(xc,"__esModule",{value:!0});xc.diffJson=gbe;xc.canonicalize=iE;xc.jsonDiff=void 0;var X8=hbe(Xs()),fbe=rE();function hbe(t){return t&&t.__esModule?t:{default:t}}function nE(t){return typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?nE=function(r){return typeof r}:nE=function(r){return r&&typeof Symbol=="function"&&r.constructor===Symbol&&r!==Symbol.prototype?"symbol":typeof r},nE(t)}var pbe=Object.prototype.toString,vA=new X8.default;xc.jsonDiff=vA;vA.useLongestToken=!0;vA.tokenize=fbe.lineDiff.tokenize;vA.castInput=function(t){var e=this.options,r=e.undefinedReplacement,i=e.stringifyReplacer,n=i===void 0?function(s,o){return typeof o=="undefined"?r:o}:i;return typeof t=="string"?t:JSON.stringify(iE(t,null,null,n),n," ")};vA.equals=function(t,e){return X8.default.prototype.equals.call(vA,t.replace(/,([\r\n])/g,"$1"),e.replace(/,([\r\n])/g,"$1"))};function gbe(t,e,r){return vA.diff(t,e,r)}function iE(t,e,r,i,n){e=e||[],r=r||[],i&&(t=i(n,t));var s;for(s=0;s{"use strict";Object.defineProperty(zh,"__esModule",{value:!0});zh.diffArrays=dbe;zh.arrayDiff=void 0;var mbe=Cbe(Xs());function Cbe(t){return t&&t.__esModule?t:{default:t}}var Xh=new mbe.default;zh.arrayDiff=Xh;Xh.tokenize=function(t){return t.slice()};Xh.join=Xh.removeEmpty=function(t){return t};function dbe(t,e,r){return Xh.diff(t,e,r)}});var sE=C(AP=>{"use strict";Object.defineProperty(AP,"__esModule",{value:!0});AP.parsePatch=Ibe;function Ibe(t){var e=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},r=t.split(/\r\n|[\n\v\f\r\x85]/),i=t.match(/\r\n|[\n\v\f\r\x85]/g)||[],n=[],s=0;function o(){var c={};for(n.push(c);s{"use strict";Object.defineProperty(lP,"__esModule",{value:!0});lP.default=Ebe;function Ebe(t,e,r){var i=!0,n=!1,s=!1,o=1;return function a(){if(i&&!s){if(n?o++:i=!1,t+o<=r)return o;s=!0}if(!n)return s||(i=!0),e<=t-o?-o++:(n=!0,a())}}});var tz=C(oE=>{"use strict";Object.defineProperty(oE,"__esModule",{value:!0});oE.applyPatch=$8;oE.applyPatches=ybe;var ez=sE(),wbe=Bbe(_8());function Bbe(t){return t&&t.__esModule?t:{default:t}}function $8(t,e){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};if(typeof e=="string"&&(e=(0,ez.parsePatch)(e)),Array.isArray(e)){if(e.length>1)throw new Error("applyPatch only works with a single input.");e=e[0]}var i=t.split(/\r\n|[\n\v\f\r\x85]/),n=t.match(/\r\n|[\n\v\f\r\x85]/g)||[],s=e.hunks,o=r.compareLine||function(T,G,Qe,Pe){return G===Pe},a=0,l=r.fuzzFactor||0,c=0,u=0,g,h;function f(T,G){for(var Qe=0;Qe0?Pe[0]:" ",Re=Pe.length>0?Pe.substr(1):Pe;if(He===" "||He==="-"){if(!o(G+1,i[G],He,Re)&&(a++,a>l))return!1;G++}}return!0}for(var p=0;p0?re[0]:" ",A=re.length>0?re.substr(1):re,q=O.linedelimiters[U];if(F===" ")v++;else if(F==="-")i.splice(v,1),n.splice(v,1);else if(F==="+")i.splice(v,0,A),n.splice(v,0,q),v++;else if(F==="\\"){var Z=O.lines[U-1]?O.lines[U-1][0]:null;Z==="+"?g=!0:Z==="-"&&(h=!0)}}}if(g)for(;!i[i.length-1];)i.pop(),n.pop();else h&&(i.push(""),n.push(` -`));for(var $=0;${"use strict";Object.defineProperty(Vh,"__esModule",{value:!0});Vh.structuredPatch=rz;Vh.createTwoFilesPatch=iz;Vh.createPatch=Qbe;var bbe=rE();function cP(t){return Pbe(t)||Sbe(t)||Dbe()}function Dbe(){throw new TypeError("Invalid attempt to spread non-iterable instance")}function Sbe(t){if(Symbol.iterator in Object(t)||Object.prototype.toString.call(t)==="[object Arguments]")return Array.from(t)}function Pbe(t){if(Array.isArray(t)){for(var e=0,r=new Array(t.length);e0?l(O.lines.slice(-o.context)):[],u-=h.length,g-=h.length)}(N=h).push.apply(N,cP(k.map(function($){return(P.added?"+":"-")+$}))),P.added?p+=k.length:f+=k.length}else{if(u)if(k.length<=o.context*2&&B=a.length-2&&k.length<=o.context){var A=/\n$/.test(r),q=/\n$/.test(i),Z=k.length==0&&h.length>F.oldLines;!A&&Z&&h.splice(F.oldLines,0,"\\ No newline at end of file"),(!A&&!Z||!q)&&h.push("\\ No newline at end of file")}c.push(F),u=0,g=0,h=[]}f+=k.length,p+=k.length}},I=0;I=55296&&r<=56319&&(i=t.charCodeAt(s+1),i>=56320&&i<=57343)){e+=Jq((r-55296)*1024+i-56320+65536),s++;continue}n=zr[r],e+=!n&&vc(r)?t[s]:n||Jq(r)}return e}function rwe(t,e,r){var i="",n=t.tag,s,o;for(s=0,o=r.length;s1024&&(u+="? "),u+=t.dump+(t.condenseFlow?'"':"")+":"+(t.condenseFlow?"":" "),!!FA(t,e,c,!1,!1)&&(u+=t.dump,i+=u));t.tag=n,t.dump="{"+i+"}"}function swe(t,e,r,i){var n="",s=t.tag,o=Object.keys(r),a,l,c,u,g,h;if(t.sortKeys===!0)o.sort();else if(typeof t.sortKeys=="function")o.sort(t.sortKeys);else if(t.sortKeys)throw new zh("sortKeys must be a boolean or a function");for(a=0,l=o.length;a1024,g&&(t.dump&&Vh===t.dump.charCodeAt(0)?h+="?":h+="? "),h+=t.dump,g&&(h+=fS(t,e)),!!FA(t,e+1,u,!0,g)&&(t.dump&&Vh===t.dump.charCodeAt(0)?h+=":":h+=": ",h+=t.dump,n+=h));t.tag=s,t.dump=n||"{}"}function iJ(t,e,r){var i,n,s,o,a,l;for(n=r?t.explicitTypes:t.implicitTypes,s=0,o=n.length;s tag resolver accepts not "'+l+'" style');t.dump=i}return!0}return!1}function FA(t,e,r,i,n,s){t.tag=null,t.dump=r,iJ(t,r,!1)||iJ(t,r,!0);var o=Oq.call(t.dump);i&&(i=t.flowLevel<0||t.flowLevel>e);var a=o==="[object Object]"||o==="[object Array]",l,c;if(a&&(l=t.duplicates.indexOf(r),c=l!==-1),(t.tag!==null&&t.tag!=="?"||c||t.indent!==2&&e>0)&&(n=!1),c&&t.usedDuplicates[l])t.dump="*ref_"+l;else{if(a&&c&&!t.usedDuplicates[l]&&(t.usedDuplicates[l]=!0),o==="[object Object]")i&&Object.keys(t.dump).length!==0?(swe(t,e,t.dump,n),c&&(t.dump="&ref_"+l+t.dump)):(nwe(t,e,t.dump),c&&(t.dump="&ref_"+l+" "+t.dump));else if(o==="[object Array]"){var u=t.noArrayIndent&&e>0?e-1:e;i&&t.dump.length!==0?(iwe(t,u,t.dump,n),c&&(t.dump="&ref_"+l+t.dump)):(rwe(t,u,t.dump),c&&(t.dump="&ref_"+l+" "+t.dump))}else if(o==="[object String]")t.tag!=="?"&&twe(t,t.dump,e,s);else{if(t.skipInvalid)return!1;throw new zh("unacceptable kind of an object to dump "+o)}t.tag!==null&&t.tag!=="?"&&(t.dump="!<"+t.tag+"> "+t.dump)}return!0}function owe(t,e){var r=[],i=[],n,s;for(dS(t,r,i),n=0,s=i.length;n{"use strict";var MI=Mq(),oJ=sJ();function OI(t){return function(){throw new Error("Function "+t+" is deprecated and cannot be used.")}}_t.exports.Type=Er();_t.exports.Schema=PA();_t.exports.FAILSAFE_SCHEMA=PI();_t.exports.JSON_SCHEMA=aS();_t.exports.CORE_SCHEMA=AS();_t.exports.DEFAULT_SAFE_SCHEMA=Dc();_t.exports.DEFAULT_FULL_SCHEMA=qh();_t.exports.load=MI.load;_t.exports.loadAll=MI.loadAll;_t.exports.safeLoad=MI.safeLoad;_t.exports.safeLoadAll=MI.safeLoadAll;_t.exports.dump=oJ.dump;_t.exports.safeDump=oJ.safeDump;_t.exports.YAMLException=Qc();_t.exports.MINIMAL_SCHEMA=PI();_t.exports.SAFE_SCHEMA=Dc();_t.exports.DEFAULT_SCHEMA=qh();_t.exports.scan=OI("scan");_t.exports.parse=OI("parse");_t.exports.compose=OI("compose");_t.exports.addConstructor=OI("addConstructor")});var lJ=C((LXe,AJ)=>{"use strict";var Awe=aJ();AJ.exports=Awe});var uJ=C((NXe,cJ)=>{"use strict";function lwe(t,e){function r(){this.constructor=t}r.prototype=e.prototype,t.prototype=new r}function RA(t,e,r,i){this.message=t,this.expected=e,this.found=r,this.location=i,this.name="SyntaxError",typeof Error.captureStackTrace=="function"&&Error.captureStackTrace(this,RA)}lwe(RA,Error);RA.buildMessage=function(t,e){var r={literal:function(c){return'"'+n(c.text)+'"'},class:function(c){var u="",g;for(g=0;g0){for(g=1,h=1;g({[ye]:j})))},N=function(S){return S},K=function(S){return S},v=So("correct indentation"),J=" ",oe=Ot(" ",!1),T=function(S){return S.length===xl*gC},A=function(S){return S.length===(xl+1)*gC},W=function(){return xl++,!0},ee=function(){return xl--,!0},re=function(){return rC()},H=So("pseudostring"),R=/^[^\r\n\t ?:,\][{}#&*!|>'"%@`\-]/,ke=Xn(["\r",` +`," "," ","?",":",",","]","[","{","}","#","&","*","!","|",">","'",'"',"%","@","`","-"],!0,!1),Le=/^[^\r\n\t ,\][{}:#"']/,qe=Xn(["\r",` +`," "," ",",","]","[","{","}",":","#",'"',"'"],!0,!1),Ke=function(){return rC().replace(/^ *| *$/g,"")},ie="--",ce=Ot("--",!1),Se=/^[a-zA-Z\/0-9]/,he=Xn([["a","z"],["A","Z"],"/",["0","9"]],!1,!1),Ie=/^[^\r\n\t :,]/,pe=Xn(["\r",` +`," "," ",":",","],!0,!1),Qe="null",Z=Ot("null",!1),X=function(){return null},ae="true",ue=Ot("true",!1),we=function(){return!0},lt="false",Ct=Ot("false",!1),xt=function(){return!1},xn=So("string"),Ii='"',Xt=Ot('"',!1),_i=function(){return""},Vn=function(S){return S},rg=function(S){return S.join("")},Gd=/^[^"\\\0-\x1F\x7F]/,Ps=Xn(['"',"\\",["\0",""],"\x7F"],!0,!1),ig='\\"',jd=Ot('\\"',!1),qB=function(){return'"'},ng="\\\\",qd=Ot("\\\\",!1),Jd=function(){return"\\"},Wd="\\/",JB=Ot("\\/",!1),WB=function(){return"/"},sg="\\b",zB=Ot("\\b",!1),VB=function(){return"\b"},zd="\\f",XB=Ot("\\f",!1),_=function(){return"\f"},ks="\\n",$i=Ot("\\n",!1),en=function(){return` +`},og="\\r",Vd=Ot("\\r",!1),Ql=function(){return"\r"},ag="\\t",Xd=Ot("\\t",!1),Ag=function(){return" "},bl="\\u",lg=Ot("\\u",!1),cg=function(S,U,j,ye){return String.fromCharCode(parseInt(`0x${S}${U}${j}${ye}`))},ZB=/^[0-9a-fA-F]/,_B=Xn([["0","9"],["a","f"],["A","F"]],!1,!1),$B=So("blank space"),Zd=/^[ \t]/,_d=Xn([" "," "],!1,!1),ew=So("white space"),$d=/^[ \t\n\r]/,eC=Xn([" "," ",` +`,"\r"],!1,!1),tC=`\r +`,tw=Ot(`\r +`,!1),rw=` +`,iw=Ot(` +`,!1),nw="\r",sw=Ot("\r",!1),O=0,rt=0,Dl=[{line:1,column:1}],Ki=0,ug=[],Oe=0,Ka;if("startRule"in e){if(!(e.startRule in i))throw new Error(`Can't start parsing from rule "`+e.startRule+'".');n=i[e.startRule]}function rC(){return t.substring(rt,O)}function pL(){return xo(rt,O)}function Ta(S,U){throw U=U!==void 0?U:xo(rt,O),oC([So(S)],t.substring(rt,O),U)}function iC(S,U){throw U=U!==void 0?U:xo(rt,O),aw(S,U)}function Ot(S,U){return{type:"literal",text:S,ignoreCase:U}}function Xn(S,U,j){return{type:"class",parts:S,inverted:U,ignoreCase:j}}function ow(){return{type:"any"}}function nC(){return{type:"end"}}function So(S){return{type:"other",description:S}}function sC(S){var U=Dl[S],j;if(U)return U;for(j=S-1;!Dl[j];)j--;for(U=Dl[j],U={line:U.line,column:U.column};jKi&&(Ki=O,ug=[]),ug.push(S))}function aw(S,U){return new RA(S,null,null,U)}function oC(S,U,j){return new RA(RA.buildMessage(S,U),S,U,j)}function aC(){var S;return S=hg(),S}function AC(){var S,U,j;for(S=O,U=[],j=gg();j!==r;)U.push(j),j=gg();return U!==r&&(rt=S,U=s(U)),S=U,S}function gg(){var S,U,j,ye,Ce;return S=O,U=Ha(),U!==r?(t.charCodeAt(O)===45?(j=o,O++):(j=r,Oe===0&&ze(a)),j!==r?(ye=fr(),ye!==r?(Ce=Ua(),Ce!==r?(rt=S,U=l(Ce),S=U):(O=S,S=r)):(O=S,S=r)):(O=S,S=r)):(O=S,S=r),S}function hg(){var S,U,j;for(S=O,U=[],j=fg();j!==r;)U.push(j),j=fg();return U!==r&&(rt=S,U=c(U)),S=U,S}function fg(){var S,U,j,ye,Ce,Me,tt,Kt,Rs;if(S=O,U=fr(),U===r&&(U=null),U!==r){if(j=O,t.charCodeAt(O)===35?(ye=u,O++):(ye=r,Oe===0&&ze(g)),ye!==r){if(Ce=[],Me=O,tt=O,Oe++,Kt=Fs(),Oe--,Kt===r?tt=void 0:(O=tt,tt=r),tt!==r?(t.length>O?(Kt=t.charAt(O),O++):(Kt=r,Oe===0&&ze(h)),Kt!==r?(tt=[tt,Kt],Me=tt):(O=Me,Me=r)):(O=Me,Me=r),Me!==r)for(;Me!==r;)Ce.push(Me),Me=O,tt=O,Oe++,Kt=Fs(),Oe--,Kt===r?tt=void 0:(O=tt,tt=r),tt!==r?(t.length>O?(Kt=t.charAt(O),O++):(Kt=r,Oe===0&&ze(h)),Kt!==r?(tt=[tt,Kt],Me=tt):(O=Me,Me=r)):(O=Me,Me=r);else Ce=r;Ce!==r?(ye=[ye,Ce],j=ye):(O=j,j=r)}else O=j,j=r;if(j===r&&(j=null),j!==r){if(ye=[],Ce=Hr(),Ce!==r)for(;Ce!==r;)ye.push(Ce),Ce=Hr();else ye=r;ye!==r?(rt=S,U=f(),S=U):(O=S,S=r)}else O=S,S=r}else O=S,S=r;if(S===r&&(S=O,U=Ha(),U!==r?(j=uC(),j!==r?(ye=fr(),ye===r&&(ye=null),ye!==r?(t.charCodeAt(O)===58?(Ce=p,O++):(Ce=r,Oe===0&&ze(m)),Ce!==r?(Me=fr(),Me===r&&(Me=null),Me!==r?(tt=Ua(),tt!==r?(rt=S,U=I(j,tt),S=U):(O=S,S=r)):(O=S,S=r)):(O=S,S=r)):(O=S,S=r)):(O=S,S=r)):(O=S,S=r),S===r&&(S=O,U=Ha(),U!==r?(j=Po(),j!==r?(ye=fr(),ye===r&&(ye=null),ye!==r?(t.charCodeAt(O)===58?(Ce=p,O++):(Ce=r,Oe===0&&ze(m)),Ce!==r?(Me=fr(),Me===r&&(Me=null),Me!==r?(tt=Ua(),tt!==r?(rt=S,U=I(j,tt),S=U):(O=S,S=r)):(O=S,S=r)):(O=S,S=r)):(O=S,S=r)):(O=S,S=r)):(O=S,S=r),S===r))){if(S=O,U=Ha(),U!==r)if(j=Po(),j!==r)if(ye=fr(),ye!==r)if(Ce=Ne(),Ce!==r){if(Me=[],tt=Hr(),tt!==r)for(;tt!==r;)Me.push(tt),tt=Hr();else Me=r;Me!==r?(rt=S,U=I(j,Ce),S=U):(O=S,S=r)}else O=S,S=r;else O=S,S=r;else O=S,S=r;else O=S,S=r;if(S===r)if(S=O,U=Ha(),U!==r)if(j=Po(),j!==r){if(ye=[],Ce=O,Me=fr(),Me===r&&(Me=null),Me!==r?(t.charCodeAt(O)===44?(tt=y,O++):(tt=r,Oe===0&&ze(w)),tt!==r?(Kt=fr(),Kt===r&&(Kt=null),Kt!==r?(Rs=Po(),Rs!==r?(rt=Ce,Me=x(j,Rs),Ce=Me):(O=Ce,Ce=r)):(O=Ce,Ce=r)):(O=Ce,Ce=r)):(O=Ce,Ce=r),Ce!==r)for(;Ce!==r;)ye.push(Ce),Ce=O,Me=fr(),Me===r&&(Me=null),Me!==r?(t.charCodeAt(O)===44?(tt=y,O++):(tt=r,Oe===0&&ze(w)),tt!==r?(Kt=fr(),Kt===r&&(Kt=null),Kt!==r?(Rs=Po(),Rs!==r?(rt=Ce,Me=x(j,Rs),Ce=Me):(O=Ce,Ce=r)):(O=Ce,Ce=r)):(O=Ce,Ce=r)):(O=Ce,Ce=r);else ye=r;ye!==r?(Ce=fr(),Ce===r&&(Ce=null),Ce!==r?(t.charCodeAt(O)===58?(Me=p,O++):(Me=r,Oe===0&&ze(m)),Me!==r?(tt=fr(),tt===r&&(tt=null),tt!==r?(Kt=Ua(),Kt!==r?(rt=S,U=F(j,ye,Kt),S=U):(O=S,S=r)):(O=S,S=r)):(O=S,S=r)):(O=S,S=r)):(O=S,S=r)}else O=S,S=r;else O=S,S=r}return S}function Ua(){var S,U,j,ye,Ce,Me,tt;if(S=O,U=O,Oe++,j=O,ye=Fs(),ye!==r?(Ce=Aw(),Ce!==r?(t.charCodeAt(O)===45?(Me=o,O++):(Me=r,Oe===0&&ze(a)),Me!==r?(tt=fr(),tt!==r?(ye=[ye,Ce,Me,tt],j=ye):(O=j,j=r)):(O=j,j=r)):(O=j,j=r)):(O=j,j=r),Oe--,j!==r?(O=U,U=void 0):U=r,U!==r?(j=Hr(),j!==r?(ye=lC(),ye!==r?(Ce=AC(),Ce!==r?(Me=cC(),Me!==r?(rt=S,U=N(Ce),S=U):(O=S,S=r)):(O=S,S=r)):(O=S,S=r)):(O=S,S=r)):(O=S,S=r),S===r&&(S=O,U=Fs(),U!==r?(j=lC(),j!==r?(ye=hg(),ye!==r?(Ce=cC(),Ce!==r?(rt=S,U=N(ye),S=U):(O=S,S=r)):(O=S,S=r)):(O=S,S=r)):(O=S,S=r),S===r))if(S=O,U=b(),U!==r){if(j=[],ye=Hr(),ye!==r)for(;ye!==r;)j.push(ye),ye=Hr();else j=r;j!==r?(rt=S,U=K(U),S=U):(O=S,S=r)}else O=S,S=r;return S}function Ha(){var S,U,j;for(Oe++,S=O,U=[],t.charCodeAt(O)===32?(j=J,O++):(j=r,Oe===0&&ze(oe));j!==r;)U.push(j),t.charCodeAt(O)===32?(j=J,O++):(j=r,Oe===0&&ze(oe));return U!==r?(rt=O,j=T(U),j?j=void 0:j=r,j!==r?(U=[U,j],S=U):(O=S,S=r)):(O=S,S=r),Oe--,S===r&&(U=r,Oe===0&&ze(v)),S}function Aw(){var S,U,j;for(S=O,U=[],t.charCodeAt(O)===32?(j=J,O++):(j=r,Oe===0&&ze(oe));j!==r;)U.push(j),t.charCodeAt(O)===32?(j=J,O++):(j=r,Oe===0&&ze(oe));return U!==r?(rt=O,j=A(U),j?j=void 0:j=r,j!==r?(U=[U,j],S=U):(O=S,S=r)):(O=S,S=r),S}function lC(){var S;return rt=O,S=W(),S?S=void 0:S=r,S}function cC(){var S;return rt=O,S=ee(),S?S=void 0:S=r,S}function uC(){var S;return S=vs(),S===r&&(S=Ya()),S}function Po(){var S,U,j;if(S=vs(),S===r){if(S=O,U=[],j=Ei(),j!==r)for(;j!==r;)U.push(j),j=Ei();else U=r;U!==r&&(rt=S,U=re()),S=U}return S}function b(){var S;return S=Sl(),S===r&&(S=be(),S===r&&(S=vs(),S===r&&(S=Ya()))),S}function Ne(){var S;return S=Sl(),S===r&&(S=vs(),S===r&&(S=Ei())),S}function Ya(){var S,U,j,ye,Ce,Me;if(Oe++,S=O,R.test(t.charAt(O))?(U=t.charAt(O),O++):(U=r,Oe===0&&ze(ke)),U!==r){for(j=[],ye=O,Ce=fr(),Ce===r&&(Ce=null),Ce!==r?(Le.test(t.charAt(O))?(Me=t.charAt(O),O++):(Me=r,Oe===0&&ze(qe)),Me!==r?(Ce=[Ce,Me],ye=Ce):(O=ye,ye=r)):(O=ye,ye=r);ye!==r;)j.push(ye),ye=O,Ce=fr(),Ce===r&&(Ce=null),Ce!==r?(Le.test(t.charAt(O))?(Me=t.charAt(O),O++):(Me=r,Oe===0&&ze(qe)),Me!==r?(Ce=[Ce,Me],ye=Ce):(O=ye,ye=r)):(O=ye,ye=r);j!==r?(rt=S,U=Ke(),S=U):(O=S,S=r)}else O=S,S=r;return Oe--,S===r&&(U=r,Oe===0&&ze(H)),S}function Ei(){var S,U,j,ye,Ce;if(S=O,t.substr(O,2)===ie?(U=ie,O+=2):(U=r,Oe===0&&ze(ce)),U===r&&(U=null),U!==r)if(Se.test(t.charAt(O))?(j=t.charAt(O),O++):(j=r,Oe===0&&ze(he)),j!==r){for(ye=[],Ie.test(t.charAt(O))?(Ce=t.charAt(O),O++):(Ce=r,Oe===0&&ze(pe));Ce!==r;)ye.push(Ce),Ie.test(t.charAt(O))?(Ce=t.charAt(O),O++):(Ce=r,Oe===0&&ze(pe));ye!==r?(rt=S,U=Ke(),S=U):(O=S,S=r)}else O=S,S=r;else O=S,S=r;return S}function Sl(){var S,U;return S=O,t.substr(O,4)===Qe?(U=Qe,O+=4):(U=r,Oe===0&&ze(Z)),U!==r&&(rt=S,U=X()),S=U,S}function be(){var S,U;return S=O,t.substr(O,4)===ae?(U=ae,O+=4):(U=r,Oe===0&&ze(ue)),U!==r&&(rt=S,U=we()),S=U,S===r&&(S=O,t.substr(O,5)===lt?(U=lt,O+=5):(U=r,Oe===0&&ze(Ct)),U!==r&&(rt=S,U=xt()),S=U),S}function vs(){var S,U,j,ye;return Oe++,S=O,t.charCodeAt(O)===34?(U=Ii,O++):(U=r,Oe===0&&ze(Xt)),U!==r?(t.charCodeAt(O)===34?(j=Ii,O++):(j=r,Oe===0&&ze(Xt)),j!==r?(rt=S,U=_i(),S=U):(O=S,S=r)):(O=S,S=r),S===r&&(S=O,t.charCodeAt(O)===34?(U=Ii,O++):(U=r,Oe===0&&ze(Xt)),U!==r?(j=lw(),j!==r?(t.charCodeAt(O)===34?(ye=Ii,O++):(ye=r,Oe===0&&ze(Xt)),ye!==r?(rt=S,U=Vn(j),S=U):(O=S,S=r)):(O=S,S=r)):(O=S,S=r)),Oe--,S===r&&(U=r,Oe===0&&ze(xn)),S}function lw(){var S,U,j;if(S=O,U=[],j=cw(),j!==r)for(;j!==r;)U.push(j),j=cw();else U=r;return U!==r&&(rt=S,U=rg(U)),S=U,S}function cw(){var S,U,j,ye,Ce,Me;return Gd.test(t.charAt(O))?(S=t.charAt(O),O++):(S=r,Oe===0&&ze(Ps)),S===r&&(S=O,t.substr(O,2)===ig?(U=ig,O+=2):(U=r,Oe===0&&ze(jd)),U!==r&&(rt=S,U=qB()),S=U,S===r&&(S=O,t.substr(O,2)===ng?(U=ng,O+=2):(U=r,Oe===0&&ze(qd)),U!==r&&(rt=S,U=Jd()),S=U,S===r&&(S=O,t.substr(O,2)===Wd?(U=Wd,O+=2):(U=r,Oe===0&&ze(JB)),U!==r&&(rt=S,U=WB()),S=U,S===r&&(S=O,t.substr(O,2)===sg?(U=sg,O+=2):(U=r,Oe===0&&ze(zB)),U!==r&&(rt=S,U=VB()),S=U,S===r&&(S=O,t.substr(O,2)===zd?(U=zd,O+=2):(U=r,Oe===0&&ze(XB)),U!==r&&(rt=S,U=_()),S=U,S===r&&(S=O,t.substr(O,2)===ks?(U=ks,O+=2):(U=r,Oe===0&&ze($i)),U!==r&&(rt=S,U=en()),S=U,S===r&&(S=O,t.substr(O,2)===og?(U=og,O+=2):(U=r,Oe===0&&ze(Vd)),U!==r&&(rt=S,U=Ql()),S=U,S===r&&(S=O,t.substr(O,2)===ag?(U=ag,O+=2):(U=r,Oe===0&&ze(Xd)),U!==r&&(rt=S,U=Ag()),S=U,S===r&&(S=O,t.substr(O,2)===bl?(U=bl,O+=2):(U=r,Oe===0&&ze(lg)),U!==r?(j=pg(),j!==r?(ye=pg(),ye!==r?(Ce=pg(),Ce!==r?(Me=pg(),Me!==r?(rt=S,U=cg(j,ye,Ce,Me),S=U):(O=S,S=r)):(O=S,S=r)):(O=S,S=r)):(O=S,S=r)):(O=S,S=r)))))))))),S}function pg(){var S;return ZB.test(t.charAt(O))?(S=t.charAt(O),O++):(S=r,Oe===0&&ze(_B)),S}function fr(){var S,U;if(Oe++,S=[],Zd.test(t.charAt(O))?(U=t.charAt(O),O++):(U=r,Oe===0&&ze(_d)),U!==r)for(;U!==r;)S.push(U),Zd.test(t.charAt(O))?(U=t.charAt(O),O++):(U=r,Oe===0&&ze(_d));else S=r;return Oe--,S===r&&(U=r,Oe===0&&ze($B)),S}function ft(){var S,U;if(Oe++,S=[],$d.test(t.charAt(O))?(U=t.charAt(O),O++):(U=r,Oe===0&&ze(eC)),U!==r)for(;U!==r;)S.push(U),$d.test(t.charAt(O))?(U=t.charAt(O),O++):(U=r,Oe===0&&ze(eC));else S=r;return Oe--,S===r&&(U=r,Oe===0&&ze(ew)),S}function Hr(){var S,U,j,ye,Ce,Me;if(S=O,U=Fs(),U!==r){for(j=[],ye=O,Ce=fr(),Ce===r&&(Ce=null),Ce!==r?(Me=Fs(),Me!==r?(Ce=[Ce,Me],ye=Ce):(O=ye,ye=r)):(O=ye,ye=r);ye!==r;)j.push(ye),ye=O,Ce=fr(),Ce===r&&(Ce=null),Ce!==r?(Me=Fs(),Me!==r?(Ce=[Ce,Me],ye=Ce):(O=ye,ye=r)):(O=ye,ye=r);j!==r?(U=[U,j],S=U):(O=S,S=r)}else O=S,S=r;return S}function Fs(){var S;return t.substr(O,2)===tC?(S=tC,O+=2):(S=r,Oe===0&&ze(tw)),S===r&&(t.charCodeAt(O)===10?(S=rw,O++):(S=r,Oe===0&&ze(iw)),S===r&&(t.charCodeAt(O)===13?(S=nw,O++):(S=r,Oe===0&&ze(sw)))),S}let gC=2,xl=0;if(Ka=n(),Ka!==r&&O===t.length)return Ka;throw Ka!==r&&O{var bwe=typeof global=="object"&&global&&global.Object===Object&&global;MJ.exports=bwe});var Tn=C((cZe,OJ)=>{var Dwe=QS(),Swe=typeof self=="object"&&self&&self.Object===Object&&self,xwe=Dwe||Swe||Function("return this")();OJ.exports=xwe});var MA=C((uZe,KJ)=>{var Pwe=Tn(),kwe=Pwe.Symbol;KJ.exports=kwe});var UJ=C((gZe,TJ)=>{function vwe(t,e){for(var r=-1,i=t==null?0:t.length,n=Array(i);++r{var Fwe=Array.isArray;HJ.exports=Fwe});var qJ=C((fZe,YJ)=>{var GJ=MA(),jJ=Object.prototype,Rwe=jJ.hasOwnProperty,Lwe=jJ.toString,tf=GJ?GJ.toStringTag:void 0;function Nwe(t){var e=Rwe.call(t,tf),r=t[tf];try{t[tf]=void 0;var i=!0}catch(s){}var n=Lwe.call(t);return i&&(e?t[tf]=r:delete t[tf]),n}YJ.exports=Nwe});var WJ=C((pZe,JJ)=>{var Mwe=Object.prototype,Owe=Mwe.toString;function Kwe(t){return Owe.call(t)}JJ.exports=Kwe});var OA=C((dZe,zJ)=>{var VJ=MA(),Twe=qJ(),Uwe=WJ(),Hwe="[object Null]",Ywe="[object Undefined]",XJ=VJ?VJ.toStringTag:void 0;function Gwe(t){return t==null?t===void 0?Ywe:Hwe:XJ&&XJ in Object(t)?Twe(t):Uwe(t)}zJ.exports=Gwe});var cs=C((CZe,ZJ)=>{function jwe(t){return t!=null&&typeof t=="object"}ZJ.exports=jwe});var JI=C((mZe,_J)=>{var qwe=OA(),Jwe=cs(),Wwe="[object Symbol]";function zwe(t){return typeof t=="symbol"||Jwe(t)&&qwe(t)==Wwe}_J.exports=zwe});var nW=C((IZe,$J)=>{var eW=MA(),Vwe=UJ(),Xwe=dn(),Zwe=JI(),_we=1/0,tW=eW?eW.prototype:void 0,rW=tW?tW.toString:void 0;function iW(t){if(typeof t=="string")return t;if(Xwe(t))return Vwe(t,iW)+"";if(Zwe(t))return rW?rW.call(t):"";var e=t+"";return e=="0"&&1/t==-_we?"-0":e}$J.exports=iW});var Rc=C((EZe,sW)=>{var $we=nW();function eQe(t){return t==null?"":$we(t)}sW.exports=eQe});var bS=C((yZe,oW)=>{function tQe(t,e,r){var i=-1,n=t.length;e<0&&(e=-e>n?0:n+e),r=r>n?n:r,r<0&&(r+=n),n=e>r?0:r-e>>>0,e>>>=0;for(var s=Array(n);++i{var rQe=bS();function iQe(t,e,r){var i=t.length;return r=r===void 0?i:r,!e&&r>=i?t:rQe(t,e,r)}aW.exports=iQe});var DS=C((wZe,lW)=>{var nQe="\\ud800-\\udfff",sQe="\\u0300-\\u036f",oQe="\\ufe20-\\ufe2f",aQe="\\u20d0-\\u20ff",AQe=sQe+oQe+aQe,lQe="\\ufe0e\\ufe0f",cQe="\\u200d",uQe=RegExp("["+cQe+nQe+AQe+lQe+"]");function gQe(t){return uQe.test(t)}lW.exports=gQe});var uW=C((QZe,cW)=>{function hQe(t){return t.split("")}cW.exports=hQe});var IW=C((bZe,gW)=>{var hW="\\ud800-\\udfff",fQe="\\u0300-\\u036f",pQe="\\ufe20-\\ufe2f",dQe="\\u20d0-\\u20ff",CQe=fQe+pQe+dQe,mQe="\\ufe0e\\ufe0f",IQe="["+hW+"]",SS="["+CQe+"]",xS="\\ud83c[\\udffb-\\udfff]",EQe="(?:"+SS+"|"+xS+")",fW="[^"+hW+"]",pW="(?:\\ud83c[\\udde6-\\uddff]){2}",dW="[\\ud800-\\udbff][\\udc00-\\udfff]",yQe="\\u200d",CW=EQe+"?",mW="["+mQe+"]?",BQe="(?:"+yQe+"(?:"+[fW,pW,dW].join("|")+")"+mW+CW+")*",wQe=mW+CW+BQe,QQe="(?:"+[fW+SS+"?",SS,pW,dW,IQe].join("|")+")",bQe=RegExp(xS+"(?="+xS+")|"+QQe+wQe,"g");function DQe(t){return t.match(bQe)||[]}gW.exports=DQe});var yW=C((DZe,EW)=>{var SQe=uW(),xQe=DS(),PQe=IW();function kQe(t){return xQe(t)?PQe(t):SQe(t)}EW.exports=kQe});var wW=C((SZe,BW)=>{var vQe=AW(),FQe=DS(),RQe=yW(),LQe=Rc();function NQe(t){return function(e){e=LQe(e);var r=FQe(e)?RQe(e):void 0,i=r?r[0]:e.charAt(0),n=r?vQe(r,1).join(""):e.slice(1);return i[t]()+n}}BW.exports=NQe});var bW=C((xZe,QW)=>{var MQe=wW(),OQe=MQe("toUpperCase");QW.exports=OQe});var PS=C((PZe,DW)=>{var KQe=Rc(),TQe=bW();function UQe(t){return TQe(KQe(t).toLowerCase())}DW.exports=UQe});var xW=C((kZe,SW)=>{"use strict";SW.exports=(t,...e)=>new Promise(r=>{r(t(...e))})});var WI=C((vZe,kS)=>{"use strict";var HQe=xW(),PW=t=>{if(t<1)throw new TypeError("Expected `concurrency` to be a number from 1 and up");let e=[],r=0,i=()=>{r--,e.length>0&&e.shift()()},n=(a,l,...c)=>{r++;let u=HQe(a,...c);l(u),u.then(i,i)},s=(a,l,...c)=>{rnew Promise(c=>s(a,c,...l));return Object.defineProperties(o,{activeCount:{get:()=>r},pendingCount:{get:()=>e.length}}),o};kS.exports=PW;kS.exports.default=PW});var MW=C((YZe,XI)=>{function YQe(){var t=0,e=1,r=2,i=3,n=4,s=5,o=6,a=7,l=8,c=9,u=10,g=11,h=12,f=13,p=14,m=15,I=16,y=17,w=0,x=1,F=2,N=3,K=4;function v(A,W){return 55296<=A.charCodeAt(W)&&A.charCodeAt(W)<=56319&&56320<=A.charCodeAt(W+1)&&A.charCodeAt(W+1)<=57343}function J(A,W){W===void 0&&(W=0);var ee=A.charCodeAt(W);if(55296<=ee&&ee<=56319&&W=1){var re=A.charCodeAt(W-1),H=ee;return 55296<=re&&re<=56319?(re-55296)*1024+(H-56320)+65536:H}return ee}function oe(A,W,ee){var re=[A].concat(W).concat([ee]),H=re[re.length-2],R=ee,ke=re.lastIndexOf(p);if(ke>1&&re.slice(1,ke).every(function(Ke){return Ke==i})&&[i,f,y].indexOf(A)==-1)return F;var Le=re.lastIndexOf(n);if(Le>0&&re.slice(1,Le).every(function(Ke){return Ke==n})&&[h,n].indexOf(H)==-1)return re.filter(function(Ke){return Ke==n}).length%2==1?N:K;if(H==t&&R==e)return w;if(H==r||H==t||H==e)return R==p&&W.every(function(Ke){return Ke==i})?F:x;if(R==r||R==t||R==e)return x;if(H==o&&(R==o||R==a||R==c||R==u))return w;if((H==c||H==a)&&(R==a||R==l))return w;if((H==u||H==l)&&R==l)return w;if(R==i||R==m)return w;if(R==s)return w;if(H==h)return w;var qe=re.indexOf(i)!=-1?re.lastIndexOf(i)-1:re.length-2;return[f,y].indexOf(re[qe])!=-1&&re.slice(qe+1,-1).every(function(Ke){return Ke==i})&&R==p||H==m&&[I,y].indexOf(R)!=-1?w:W.indexOf(n)!=-1?F:H==n&&R==n?w:x}this.nextBreak=function(A,W){if(W===void 0&&(W=0),W<0)return 0;if(W>=A.length-1)return A.length;for(var ee=T(J(A,W)),re=[],H=W+1;H{var GQe=MW(),jQe=/^(.*?)(\x1b\[[^m]+m|\x1b\]8;;.*?(\x1b\\|\u0007))/,qQe=new GQe;OW.exports=(t,e=0,r=t.length)=>{if(e<0||r<0)throw new RangeError("Negative indices aren't supported by this implementation");let i=r-e,n="",s=0,o=0;for(;t.length>0;){let a=t.match(jQe)||[t,t,void 0],l=qQe.splitGraphemes(a[1]),c=Math.min(e-s,l.length);l=l.slice(c);let u=Math.min(i-o,l.length);n+=l.slice(0,u).join(""),s+=c,o+=u,typeof a[2]!="undefined"&&(n+=a[2]),t=t.slice(a[0].length)}return n}});var Nc=C((p_e,ZW)=>{"use strict";var _W=new Map([["C","cwd"],["f","file"],["z","gzip"],["P","preservePaths"],["U","unlink"],["strip-components","strip"],["stripComponents","strip"],["keep-newer","newer"],["keepNewer","newer"],["keep-newer-files","newer"],["keepNewerFiles","newer"],["k","keep"],["keep-existing","keep"],["keepExisting","keep"],["m","noMtime"],["no-mtime","noMtime"],["p","preserveOwner"],["L","follow"],["h","follow"]]),f_e=ZW.exports=t=>t?Object.keys(t).map(e=>[_W.has(e)?_W.get(e):e,t[e]]).reduce((e,r)=>(e[r[0]]=r[1],e),Object.create(null)):{}});var Mc=C((d_e,$W)=>{"use strict";var s0e=require("events"),e3=require("stream"),sf=oh(),t3=require("string_decoder").StringDecoder,no=Symbol("EOF"),of=Symbol("maybeEmitEnd"),oa=Symbol("emittedEnd"),eE=Symbol("emittingEnd"),tE=Symbol("closed"),r3=Symbol("read"),LS=Symbol("flush"),i3=Symbol("flushChunk"),vi=Symbol("encoding"),so=Symbol("decoder"),rE=Symbol("flowing"),af=Symbol("paused"),Af=Symbol("resume"),fi=Symbol("bufferLength"),n3=Symbol("bufferPush"),NS=Symbol("bufferShift"),Xr=Symbol("objectMode"),Zr=Symbol("destroyed"),s3=global._MP_NO_ITERATOR_SYMBOLS_!=="1",o0e=s3&&Symbol.asyncIterator||Symbol("asyncIterator not implemented"),a0e=s3&&Symbol.iterator||Symbol("iterator not implemented"),o3=t=>t==="end"||t==="finish"||t==="prefinish",A0e=t=>t instanceof ArrayBuffer||typeof t=="object"&&t.constructor&&t.constructor.name==="ArrayBuffer"&&t.byteLength>=0,l0e=t=>!Buffer.isBuffer(t)&&ArrayBuffer.isView(t);$W.exports=class a3 extends e3{constructor(e){super();this[rE]=!1,this[af]=!1,this.pipes=new sf,this.buffer=new sf,this[Xr]=e&&e.objectMode||!1,this[Xr]?this[vi]=null:this[vi]=e&&e.encoding||null,this[vi]==="buffer"&&(this[vi]=null),this[so]=this[vi]?new t3(this[vi]):null,this[no]=!1,this[oa]=!1,this[eE]=!1,this[tE]=!1,this.writable=!0,this.readable=!0,this[fi]=0,this[Zr]=!1}get bufferLength(){return this[fi]}get encoding(){return this[vi]}set encoding(e){if(this[Xr])throw new Error("cannot set encoding in objectMode");if(this[vi]&&e!==this[vi]&&(this[so]&&this[so].lastNeed||this[fi]))throw new Error("cannot change encoding");this[vi]!==e&&(this[so]=e?new t3(e):null,this.buffer.length&&(this.buffer=this.buffer.map(r=>this[so].write(r)))),this[vi]=e}setEncoding(e){this.encoding=e}get objectMode(){return this[Xr]}set objectMode(e){this[Xr]=this[Xr]||!!e}write(e,r,i){if(this[no])throw new Error("write after end");return this[Zr]?(this.emit("error",Object.assign(new Error("Cannot call write after a stream was destroyed"),{code:"ERR_STREAM_DESTROYED"})),!0):(typeof r=="function"&&(i=r,r="utf8"),r||(r="utf8"),!this[Xr]&&!Buffer.isBuffer(e)&&(l0e(e)?e=Buffer.from(e.buffer,e.byteOffset,e.byteLength):A0e(e)?e=Buffer.from(e):typeof e!="string"&&(this.objectMode=!0)),!this.objectMode&&!e.length?(this[fi]!==0&&this.emit("readable"),i&&i(),this.flowing):(typeof e=="string"&&!this[Xr]&&!(r===this[vi]&&!this[so].lastNeed)&&(e=Buffer.from(e,r)),Buffer.isBuffer(e)&&this[vi]&&(e=this[so].write(e)),this.flowing?(this[fi]!==0&&this[LS](!0),this.emit("data",e)):this[n3](e),this[fi]!==0&&this.emit("readable"),i&&i(),this.flowing))}read(e){if(this[Zr])return null;try{return this[fi]===0||e===0||e>this[fi]?null:(this[Xr]&&(e=null),this.buffer.length>1&&!this[Xr]&&(this.encoding?this.buffer=new sf([Array.from(this.buffer).join("")]):this.buffer=new sf([Buffer.concat(Array.from(this.buffer),this[fi])])),this[r3](e||null,this.buffer.head.value))}finally{this[of]()}}[r3](e,r){return e===r.length||e===null?this[NS]():(this.buffer.head.value=r.slice(e),r=r.slice(0,e),this[fi]-=e),this.emit("data",r),!this.buffer.length&&!this[no]&&this.emit("drain"),r}end(e,r,i){return typeof e=="function"&&(i=e,e=null),typeof r=="function"&&(i=r,r="utf8"),e&&this.write(e,r),i&&this.once("end",i),this[no]=!0,this.writable=!1,(this.flowing||!this[af])&&this[of](),this}[Af](){this[Zr]||(this[af]=!1,this[rE]=!0,this.emit("resume"),this.buffer.length?this[LS]():this[no]?this[of]():this.emit("drain"))}resume(){return this[Af]()}pause(){this[rE]=!1,this[af]=!0}get destroyed(){return this[Zr]}get flowing(){return this[rE]}get paused(){return this[af]}[n3](e){return this[Xr]?this[fi]+=1:this[fi]+=e.length,this.buffer.push(e)}[NS](){return this.buffer.length&&(this[Xr]?this[fi]-=1:this[fi]-=this.buffer.head.value.length),this.buffer.shift()}[LS](e){do;while(this[i3](this[NS]()));!e&&!this.buffer.length&&!this[no]&&this.emit("drain")}[i3](e){return e?(this.emit("data",e),this.flowing):!1}pipe(e,r){if(this[Zr])return;let i=this[oa];r=r||{},e===process.stdout||e===process.stderr?r.end=!1:r.end=r.end!==!1;let n={dest:e,opts:r,ondrain:s=>this[Af]()};return this.pipes.push(n),e.on("drain",n.ondrain),this[Af](),i&&n.opts.end&&n.dest.end(),e}addListener(e,r){return this.on(e,r)}on(e,r){try{return super.on(e,r)}finally{e==="data"&&!this.pipes.length&&!this.flowing?this[Af]():o3(e)&&this[oa]&&(super.emit(e),this.removeAllListeners(e))}}get emittedEnd(){return this[oa]}[of](){!this[eE]&&!this[oa]&&!this[Zr]&&this.buffer.length===0&&this[no]&&(this[eE]=!0,this.emit("end"),this.emit("prefinish"),this.emit("finish"),this[tE]&&this.emit("close"),this[eE]=!1)}emit(e,r){if(e!=="error"&&e!=="close"&&e!==Zr&&this[Zr])return;if(e==="data"){if(!r)return;this.pipes.length&&this.pipes.forEach(n=>n.dest.write(r)===!1&&this.pause())}else if(e==="end"){if(this[oa]===!0)return;this[oa]=!0,this.readable=!1,this[so]&&(r=this[so].end(),r&&(this.pipes.forEach(n=>n.dest.write(r)),super.emit("data",r))),this.pipes.forEach(n=>{n.dest.removeListener("drain",n.ondrain),n.opts.end&&n.dest.end()})}else if(e==="close"&&(this[tE]=!0,!this[oa]&&!this[Zr]))return;let i=new Array(arguments.length);if(i[0]=e,i[1]=r,arguments.length>2)for(let n=2;n{e.push(i),this[Xr]||(e.dataLength+=i.length)}),r.then(()=>e)}concat(){return this[Xr]?Promise.reject(new Error("cannot concat in objectMode")):this.collect().then(e=>this[Xr]?Promise.reject(new Error("cannot concat in objectMode")):this[vi]?e.join(""):Buffer.concat(e,e.dataLength))}promise(){return new Promise((e,r)=>{this.on(Zr,()=>r(new Error("stream destroyed"))),this.on("end",()=>e()),this.on("error",i=>r(i))})}[o0e](){return{next:()=>{let r=this.read();if(r!==null)return Promise.resolve({done:!1,value:r});if(this[no])return Promise.resolve({done:!0});let i=null,n=null,s=c=>{this.removeListener("data",o),this.removeListener("end",a),n(c)},o=c=>{this.removeListener("error",s),this.removeListener("end",a),this.pause(),i({value:c,done:!!this[no]})},a=()=>{this.removeListener("error",s),this.removeListener("data",o),i({done:!0})},l=()=>s(new Error("stream destroyed"));return new Promise((c,u)=>{n=u,i=c,this.once(Zr,l),this.once("error",s),this.once("end",a),this.once("data",o)})}}}[a0e](){return{next:()=>{let r=this.read();return{value:r,done:r===null}}}}destroy(e){return this[Zr]?(e?this.emit("error",e):this.emit(Zr),this):(this[Zr]=!0,this.buffer=new sf,this[fi]=0,typeof this.close=="function"&&!this[tE]&&this.close(),e?this.emit("error",e):this.emit(Zr),this)}static isStream(e){return!!e&&(e instanceof a3||e instanceof e3||e instanceof s0e&&(typeof e.pipe=="function"||typeof e.write=="function"&&typeof e.end=="function"))}}});var l3=C((C_e,A3)=>{var c0e=require("zlib").constants||{ZLIB_VERNUM:4736};A3.exports=Object.freeze(Object.assign(Object.create(null),{Z_NO_FLUSH:0,Z_PARTIAL_FLUSH:1,Z_SYNC_FLUSH:2,Z_FULL_FLUSH:3,Z_FINISH:4,Z_BLOCK:5,Z_OK:0,Z_STREAM_END:1,Z_NEED_DICT:2,Z_ERRNO:-1,Z_STREAM_ERROR:-2,Z_DATA_ERROR:-3,Z_MEM_ERROR:-4,Z_BUF_ERROR:-5,Z_VERSION_ERROR:-6,Z_NO_COMPRESSION:0,Z_BEST_SPEED:1,Z_BEST_COMPRESSION:9,Z_DEFAULT_COMPRESSION:-1,Z_FILTERED:1,Z_HUFFMAN_ONLY:2,Z_RLE:3,Z_FIXED:4,Z_DEFAULT_STRATEGY:0,DEFLATE:1,INFLATE:2,GZIP:3,GUNZIP:4,DEFLATERAW:5,INFLATERAW:6,UNZIP:7,BROTLI_DECODE:8,BROTLI_ENCODE:9,Z_MIN_WINDOWBITS:8,Z_MAX_WINDOWBITS:15,Z_DEFAULT_WINDOWBITS:15,Z_MIN_CHUNK:64,Z_MAX_CHUNK:Infinity,Z_DEFAULT_CHUNK:16384,Z_MIN_MEMLEVEL:1,Z_MAX_MEMLEVEL:9,Z_DEFAULT_MEMLEVEL:8,Z_MIN_LEVEL:-1,Z_MAX_LEVEL:9,Z_DEFAULT_LEVEL:-1,BROTLI_OPERATION_PROCESS:0,BROTLI_OPERATION_FLUSH:1,BROTLI_OPERATION_FINISH:2,BROTLI_OPERATION_EMIT_METADATA:3,BROTLI_MODE_GENERIC:0,BROTLI_MODE_TEXT:1,BROTLI_MODE_FONT:2,BROTLI_DEFAULT_MODE:0,BROTLI_MIN_QUALITY:0,BROTLI_MAX_QUALITY:11,BROTLI_DEFAULT_QUALITY:11,BROTLI_MIN_WINDOW_BITS:10,BROTLI_MAX_WINDOW_BITS:24,BROTLI_LARGE_MAX_WINDOW_BITS:30,BROTLI_DEFAULT_WINDOW:22,BROTLI_MIN_INPUT_BLOCK_BITS:16,BROTLI_MAX_INPUT_BLOCK_BITS:24,BROTLI_PARAM_MODE:0,BROTLI_PARAM_QUALITY:1,BROTLI_PARAM_LGWIN:2,BROTLI_PARAM_LGBLOCK:3,BROTLI_PARAM_DISABLE_LITERAL_CONTEXT_MODELING:4,BROTLI_PARAM_SIZE_HINT:5,BROTLI_PARAM_LARGE_WINDOW:6,BROTLI_PARAM_NPOSTFIX:7,BROTLI_PARAM_NDIRECT:8,BROTLI_DECODER_RESULT_ERROR:0,BROTLI_DECODER_RESULT_SUCCESS:1,BROTLI_DECODER_RESULT_NEEDS_MORE_INPUT:2,BROTLI_DECODER_RESULT_NEEDS_MORE_OUTPUT:3,BROTLI_DECODER_PARAM_DISABLE_RING_BUFFER_REALLOCATION:0,BROTLI_DECODER_PARAM_LARGE_WINDOW:1,BROTLI_DECODER_NO_ERROR:0,BROTLI_DECODER_SUCCESS:1,BROTLI_DECODER_NEEDS_MORE_INPUT:2,BROTLI_DECODER_NEEDS_MORE_OUTPUT:3,BROTLI_DECODER_ERROR_FORMAT_EXUBERANT_NIBBLE:-1,BROTLI_DECODER_ERROR_FORMAT_RESERVED:-2,BROTLI_DECODER_ERROR_FORMAT_EXUBERANT_META_NIBBLE:-3,BROTLI_DECODER_ERROR_FORMAT_SIMPLE_HUFFMAN_ALPHABET:-4,BROTLI_DECODER_ERROR_FORMAT_SIMPLE_HUFFMAN_SAME:-5,BROTLI_DECODER_ERROR_FORMAT_CL_SPACE:-6,BROTLI_DECODER_ERROR_FORMAT_HUFFMAN_SPACE:-7,BROTLI_DECODER_ERROR_FORMAT_CONTEXT_MAP_REPEAT:-8,BROTLI_DECODER_ERROR_FORMAT_BLOCK_LENGTH_1:-9,BROTLI_DECODER_ERROR_FORMAT_BLOCK_LENGTH_2:-10,BROTLI_DECODER_ERROR_FORMAT_TRANSFORM:-11,BROTLI_DECODER_ERROR_FORMAT_DICTIONARY:-12,BROTLI_DECODER_ERROR_FORMAT_WINDOW_BITS:-13,BROTLI_DECODER_ERROR_FORMAT_PADDING_1:-14,BROTLI_DECODER_ERROR_FORMAT_PADDING_2:-15,BROTLI_DECODER_ERROR_FORMAT_DISTANCE:-16,BROTLI_DECODER_ERROR_DICTIONARY_NOT_SET:-19,BROTLI_DECODER_ERROR_INVALID_ARGUMENTS:-20,BROTLI_DECODER_ERROR_ALLOC_CONTEXT_MODES:-21,BROTLI_DECODER_ERROR_ALLOC_TREE_GROUPS:-22,BROTLI_DECODER_ERROR_ALLOC_CONTEXT_MAP:-25,BROTLI_DECODER_ERROR_ALLOC_RING_BUFFER_1:-26,BROTLI_DECODER_ERROR_ALLOC_RING_BUFFER_2:-27,BROTLI_DECODER_ERROR_ALLOC_BLOCK_TYPE_TREES:-30,BROTLI_DECODER_ERROR_UNREACHABLE:-31},c0e))});var jS=C(Ji=>{"use strict";var MS=require("assert"),aa=require("buffer").Buffer,c3=require("zlib"),KA=Ji.constants=l3(),u0e=Mc(),u3=aa.concat,TA=Symbol("_superWrite"),lf=class extends Error{constructor(e){super("zlib: "+e.message);this.code=e.code,this.errno=e.errno,this.code||(this.code="ZLIB_ERROR"),this.message="zlib: "+e.message,Error.captureStackTrace(this,this.constructor)}get name(){return"ZlibError"}},g0e=Symbol("opts"),cf=Symbol("flushFlag"),g3=Symbol("finishFlushFlag"),OS=Symbol("fullFlushFlag"),Rt=Symbol("handle"),iE=Symbol("onError"),Oc=Symbol("sawError"),KS=Symbol("level"),TS=Symbol("strategy"),US=Symbol("ended"),m_e=Symbol("_defaultFullFlush"),HS=class extends u0e{constructor(e,r){if(!e||typeof e!="object")throw new TypeError("invalid options for ZlibBase constructor");super(e);this[Oc]=!1,this[US]=!1,this[g0e]=e,this[cf]=e.flush,this[g3]=e.finishFlush;try{this[Rt]=new c3[r](e)}catch(i){throw new lf(i)}this[iE]=i=>{this[Oc]||(this[Oc]=!0,this.close(),this.emit("error",i))},this[Rt].on("error",i=>this[iE](new lf(i))),this.once("end",()=>this.close)}close(){this[Rt]&&(this[Rt].close(),this[Rt]=null,this.emit("close"))}reset(){if(!this[Oc])return MS(this[Rt],"zlib binding closed"),this[Rt].reset()}flush(e){this.ended||(typeof e!="number"&&(e=this[OS]),this.write(Object.assign(aa.alloc(0),{[cf]:e})))}end(e,r,i){return e&&this.write(e,r),this.flush(this[g3]),this[US]=!0,super.end(null,null,i)}get ended(){return this[US]}write(e,r,i){if(typeof r=="function"&&(i=r,r="utf8"),typeof e=="string"&&(e=aa.from(e,r)),this[Oc])return;MS(this[Rt],"zlib binding closed");let n=this[Rt]._handle,s=n.close;n.close=()=>{};let o=this[Rt].close;this[Rt].close=()=>{},aa.concat=c=>c;let a;try{let c=typeof e[cf]=="number"?e[cf]:this[cf];a=this[Rt]._processChunk(e,c),aa.concat=u3}catch(c){aa.concat=u3,this[iE](new lf(c))}finally{this[Rt]&&(this[Rt]._handle=n,n.close=s,this[Rt].close=o,this[Rt].removeAllListeners("error"))}this[Rt]&&this[Rt].on("error",c=>this[iE](new lf(c)));let l;if(a)if(Array.isArray(a)&&a.length>0){l=this[TA](aa.from(a[0]));for(let c=1;c{this.flush(n),s()};try{this[Rt].params(e,r)}finally{this[Rt].flush=i}this[Rt]&&(this[KS]=e,this[TS]=r)}}}},h3=class extends Aa{constructor(e){super(e,"Deflate")}},f3=class extends Aa{constructor(e){super(e,"Inflate")}},YS=Symbol("_portable"),p3=class extends Aa{constructor(e){super(e,"Gzip");this[YS]=e&&!!e.portable}[TA](e){return this[YS]?(this[YS]=!1,e[9]=255,super[TA](e)):super[TA](e)}},d3=class extends Aa{constructor(e){super(e,"Gunzip")}},C3=class extends Aa{constructor(e){super(e,"DeflateRaw")}},m3=class extends Aa{constructor(e){super(e,"InflateRaw")}},I3=class extends Aa{constructor(e){super(e,"Unzip")}},GS=class extends HS{constructor(e,r){e=e||{},e.flush=e.flush||KA.BROTLI_OPERATION_PROCESS,e.finishFlush=e.finishFlush||KA.BROTLI_OPERATION_FINISH,super(e,r),this[OS]=KA.BROTLI_OPERATION_FLUSH}},E3=class extends GS{constructor(e){super(e,"BrotliCompress")}},y3=class extends GS{constructor(e){super(e,"BrotliDecompress")}};Ji.Deflate=h3;Ji.Inflate=f3;Ji.Gzip=p3;Ji.Gunzip=d3;Ji.DeflateRaw=C3;Ji.InflateRaw=m3;Ji.Unzip=I3;typeof c3.BrotliCompress=="function"?(Ji.BrotliCompress=E3,Ji.BrotliDecompress=y3):Ji.BrotliCompress=Ji.BrotliDecompress=class{constructor(){throw new Error("Brotli is not supported in this version of Node.js")}}});var uf=C(nE=>{"use strict";nE.name=new Map([["0","File"],["","OldFile"],["1","Link"],["2","SymbolicLink"],["3","CharacterDevice"],["4","BlockDevice"],["5","Directory"],["6","FIFO"],["7","ContiguousFile"],["g","GlobalExtendedHeader"],["x","ExtendedHeader"],["A","SolarisACL"],["D","GNUDumpDir"],["I","Inode"],["K","NextFileHasLongLinkpath"],["L","NextFileHasLongPath"],["M","ContinuationFile"],["N","OldGnuLongPath"],["S","SparseFile"],["V","TapeVolumeHeader"],["X","OldExtendedHeader"]]);nE.code=new Map(Array.from(nE.name).map(t=>[t[1],t[0]]))});var gf=C((w_e,B3)=>{"use strict";var y_e=uf(),h0e=Mc(),qS=Symbol("slurp");B3.exports=class extends h0e{constructor(e,r,i){super();switch(this.pause(),this.extended=r,this.globalExtended=i,this.header=e,this.startBlockSize=512*Math.ceil(e.size/512),this.blockRemain=this.startBlockSize,this.remain=e.size,this.type=e.type,this.meta=!1,this.ignore=!1,this.type){case"File":case"OldFile":case"Link":case"SymbolicLink":case"CharacterDevice":case"BlockDevice":case"Directory":case"FIFO":case"ContiguousFile":case"GNUDumpDir":break;case"NextFileHasLongLinkpath":case"NextFileHasLongPath":case"OldGnuLongPath":case"GlobalExtendedHeader":case"ExtendedHeader":case"OldExtendedHeader":this.meta=!0;break;default:this.ignore=!0}this.path=e.path,this.mode=e.mode,this.mode&&(this.mode=this.mode&4095),this.uid=e.uid,this.gid=e.gid,this.uname=e.uname,this.gname=e.gname,this.size=e.size,this.mtime=e.mtime,this.atime=e.atime,this.ctime=e.ctime,this.linkpath=e.linkpath,this.uname=e.uname,this.gname=e.gname,r&&this[qS](r),i&&this[qS](i,!0)}write(e){let r=e.length;if(r>this.blockRemain)throw new Error("writing more to entry than is appropriate");let i=this.remain,n=this.blockRemain;return this.remain=Math.max(0,i-r),this.blockRemain=Math.max(0,n-r),this.ignore?!0:i>=r?super.write(e):super.write(e.slice(0,i))}[qS](e,r){for(let i in e)e[i]!==null&&e[i]!==void 0&&!(r&&i==="path")&&(this[i]=e[i])}}});var b3=C(JS=>{"use strict";var Q_e=JS.encode=(t,e)=>{if(Number.isSafeInteger(t))t<0?p0e(t,e):f0e(t,e);else throw Error("cannot encode number outside of javascript safe integer range");return e},f0e=(t,e)=>{e[0]=128;for(var r=e.length;r>1;r--)e[r-1]=t&255,t=Math.floor(t/256)},p0e=(t,e)=>{e[0]=255;var r=!1;t=t*-1;for(var i=e.length;i>1;i--){var n=t&255;t=Math.floor(t/256),r?e[i-1]=w3(n):n===0?e[i-1]=0:(r=!0,e[i-1]=Q3(n))}},b_e=JS.parse=t=>{var e=t[t.length-1],r=t[0],i;if(r===128)i=C0e(t.slice(1,t.length));else if(r===255)i=d0e(t);else throw Error("invalid base256 encoding");if(!Number.isSafeInteger(i))throw Error("parsed number outside of javascript safe integer range");return i},d0e=t=>{for(var e=t.length,r=0,i=!1,n=e-1;n>-1;n--){var s=t[n],o;i?o=w3(s):s===0?o=s:(i=!0,o=Q3(s)),o!==0&&(r-=o*Math.pow(256,e-n-1))}return r},C0e=t=>{for(var e=t.length,r=0,i=e-1;i>-1;i--){var n=t[i];n!==0&&(r+=n*Math.pow(256,e-i-1))}return r},w3=t=>(255^t)&255,Q3=t=>(255^t)+1&255});var Tc=C((S_e,D3)=>{"use strict";var WS=uf(),Kc=require("path").posix,S3=b3(),zS=Symbol("slurp"),Wi=Symbol("type"),x3=class{constructor(e,r,i,n){this.cksumValid=!1,this.needPax=!1,this.nullBlock=!1,this.block=null,this.path=null,this.mode=null,this.uid=null,this.gid=null,this.size=null,this.mtime=null,this.cksum=null,this[Wi]="0",this.linkpath=null,this.uname=null,this.gname=null,this.devmaj=0,this.devmin=0,this.atime=null,this.ctime=null,Buffer.isBuffer(e)?this.decode(e,r||0,i,n):e&&this.set(e)}decode(e,r,i,n){if(r||(r=0),!e||!(e.length>=r+512))throw new Error("need 512 bytes for header");if(this.path=UA(e,r,100),this.mode=la(e,r+100,8),this.uid=la(e,r+108,8),this.gid=la(e,r+116,8),this.size=la(e,r+124,12),this.mtime=VS(e,r+136,12),this.cksum=la(e,r+148,12),this[zS](i),this[zS](n,!0),this[Wi]=UA(e,r+156,1),this[Wi]===""&&(this[Wi]="0"),this[Wi]==="0"&&this.path.substr(-1)==="/"&&(this[Wi]="5"),this[Wi]==="5"&&(this.size=0),this.linkpath=UA(e,r+157,100),e.slice(r+257,r+265).toString()==="ustar\x0000")if(this.uname=UA(e,r+265,32),this.gname=UA(e,r+297,32),this.devmaj=la(e,r+329,8),this.devmin=la(e,r+337,8),e[r+475]!==0){let o=UA(e,r+345,155);this.path=o+"/"+this.path}else{let o=UA(e,r+345,130);o&&(this.path=o+"/"+this.path),this.atime=VS(e,r+476,12),this.ctime=VS(e,r+488,12)}let s=8*32;for(let o=r;o=r+512))throw new Error("need 512 bytes for header");let i=this.ctime||this.atime?130:155,n=m0e(this.path||"",i),s=n[0],o=n[1];this.needPax=n[2],this.needPax=HA(e,r,100,s)||this.needPax,this.needPax=ca(e,r+100,8,this.mode)||this.needPax,this.needPax=ca(e,r+108,8,this.uid)||this.needPax,this.needPax=ca(e,r+116,8,this.gid)||this.needPax,this.needPax=ca(e,r+124,12,this.size)||this.needPax,this.needPax=XS(e,r+136,12,this.mtime)||this.needPax,e[r+156]=this[Wi].charCodeAt(0),this.needPax=HA(e,r+157,100,this.linkpath)||this.needPax,e.write("ustar\x0000",r+257,8),this.needPax=HA(e,r+265,32,this.uname)||this.needPax,this.needPax=HA(e,r+297,32,this.gname)||this.needPax,this.needPax=ca(e,r+329,8,this.devmaj)||this.needPax,this.needPax=ca(e,r+337,8,this.devmin)||this.needPax,this.needPax=HA(e,r+345,i,o)||this.needPax,e[r+475]!==0?this.needPax=HA(e,r+345,155,o)||this.needPax:(this.needPax=HA(e,r+345,130,o)||this.needPax,this.needPax=XS(e,r+476,12,this.atime)||this.needPax,this.needPax=XS(e,r+488,12,this.ctime)||this.needPax);let a=8*32;for(let l=r;l{let r=100,i=t,n="",s,o=Kc.parse(t).root||".";if(Buffer.byteLength(i)r&&Buffer.byteLength(n)<=e?s=[i.substr(0,r-1),n,!0]:(i=Kc.join(Kc.basename(n),i),n=Kc.dirname(n));while(n!==o&&!s);s||(s=[t.substr(0,r-1),"",!0])}return s},UA=(t,e,r)=>t.slice(e,e+r).toString("utf8").replace(/\0.*/,""),VS=(t,e,r)=>I0e(la(t,e,r)),I0e=t=>t===null?null:new Date(t*1e3),la=(t,e,r)=>t[e]&128?S3.parse(t.slice(e,e+r)):E0e(t,e,r),y0e=t=>isNaN(t)?null:t,E0e=(t,e,r)=>y0e(parseInt(t.slice(e,e+r).toString("utf8").replace(/\0.*$/,"").trim(),8)),B0e={12:8589934591,8:2097151},ca=(t,e,r,i)=>i===null?!1:i>B0e[r]||i<0?(S3.encode(i,t.slice(e,e+r)),!0):(w0e(t,e,r,i),!1),w0e=(t,e,r,i)=>t.write(Q0e(i,r),e,r,"ascii"),Q0e=(t,e)=>b0e(Math.floor(t).toString(8),e),b0e=(t,e)=>(t.length===e-1?t:new Array(e-t.length-1).join("0")+t+" ")+"\0",XS=(t,e,r,i)=>i===null?!1:ca(t,e,r,i.getTime()/1e3),D0e=new Array(156).join("\0"),HA=(t,e,r,i)=>i===null?!1:(t.write(i+D0e,e,r,"utf8"),i.length!==Buffer.byteLength(i)||i.length>r);D3.exports=x3});var oE=C((x_e,P3)=>{"use strict";var S0e=Tc(),x0e=require("path"),sE=class{constructor(e,r){this.atime=e.atime||null,this.charset=e.charset||null,this.comment=e.comment||null,this.ctime=e.ctime||null,this.gid=e.gid||null,this.gname=e.gname||null,this.linkpath=e.linkpath||null,this.mtime=e.mtime||null,this.path=e.path||null,this.size=e.size||null,this.uid=e.uid||null,this.uname=e.uname||null,this.dev=e.dev||null,this.ino=e.ino||null,this.nlink=e.nlink||null,this.global=r||!1}encode(){let e=this.encodeBody();if(e==="")return null;let r=Buffer.byteLength(e),i=512*Math.ceil(1+r/512),n=Buffer.allocUnsafe(i);for(let s=0;s<512;s++)n[s]=0;new S0e({path:("PaxHeader/"+x0e.basename(this.path)).slice(0,99),mode:this.mode||420,uid:this.uid||null,gid:this.gid||null,size:r,mtime:this.mtime||null,type:this.global?"GlobalExtendedHeader":"ExtendedHeader",linkpath:"",uname:this.uname||"",gname:this.gname||"",devmaj:0,devmin:0,atime:this.atime||null,ctime:this.ctime||null}).encode(n),n.write(e,512,r,"utf8");for(let s=r+512;s=Math.pow(10,s)&&(s+=1),s+n+i}};sE.parse=(t,e,r)=>new sE(P0e(k0e(t),e),r);var P0e=(t,e)=>e?Object.keys(t).reduce((r,i)=>(r[i]=t[i],r),e):t,k0e=t=>t.replace(/\n$/,"").split(` +`).reduce(v0e,Object.create(null)),v0e=(t,e)=>{let r=parseInt(e,10);if(r!==Buffer.byteLength(e)+1)return t;e=e.substr((r+" ").length);let i=e.split("="),n=i.shift().replace(/^SCHILY\.(dev|ino|nlink)/,"$1");if(!n)return t;let s=i.join("=");return t[n]=/^([A-Z]+\.)?([mac]|birth|creation)time$/.test(n)?new Date(s*1e3):/^[0-9]+$/.test(s)?+s:s,t};P3.exports=sE});var aE=C((P_e,k3)=>{"use strict";k3.exports=t=>class extends t{warn(e,r,i={}){this.file&&(i.file=this.file),this.cwd&&(i.cwd=this.cwd),i.code=r instanceof Error&&r.code||e,i.tarCode=e,!this.strict&&i.recoverable!==!1?(r instanceof Error&&(i=Object.assign(r,i),r=r.message),this.emit("warn",i.tarCode,r,i)):r instanceof Error?this.emit("error",Object.assign(r,i)):this.emit("error",Object.assign(new Error(`${e}: ${r}`),i))}}});var _S=C((k_e,v3)=>{"use strict";var AE=["|","<",">","?",":"],ZS=AE.map(t=>String.fromCharCode(61440+t.charCodeAt(0))),F0e=new Map(AE.map((t,e)=>[t,ZS[e]])),R0e=new Map(ZS.map((t,e)=>[t,AE[e]]));v3.exports={encode:t=>AE.reduce((e,r)=>e.split(r).join(F0e.get(r)),t),decode:t=>ZS.reduce((e,r)=>e.split(r).join(R0e.get(r)),t)}});var R3=C((v_e,F3)=>{"use strict";F3.exports=(t,e,r)=>(t&=4095,r&&(t=(t|384)&~18),e&&(t&256&&(t|=64),t&32&&(t|=8),t&4&&(t|=1)),t)});var sx=C((M_e,L3)=>{"use strict";var N3=Mc(),M3=oE(),O3=Tc(),F_e=gf(),gs=require("fs"),Uc=require("path"),R_e=uf(),L0e=16*1024*1024,K3=Symbol("process"),T3=Symbol("file"),U3=Symbol("directory"),$S=Symbol("symlink"),H3=Symbol("hardlink"),hf=Symbol("header"),lE=Symbol("read"),ex=Symbol("lstat"),cE=Symbol("onlstat"),tx=Symbol("onread"),rx=Symbol("onreadlink"),ix=Symbol("openfile"),nx=Symbol("onopenfile"),YA=Symbol("close"),uE=Symbol("mode"),Y3=aE(),N0e=_S(),G3=R3(),gE=Y3(class extends N3{constructor(e,r){if(r=r||{},super(r),typeof e!="string")throw new TypeError("path is required");this.path=e,this.portable=!!r.portable,this.myuid=process.getuid&&process.getuid(),this.myuser=process.env.USER||"",this.maxReadSize=r.maxReadSize||L0e,this.linkCache=r.linkCache||new Map,this.statCache=r.statCache||new Map,this.preservePaths=!!r.preservePaths,this.cwd=r.cwd||process.cwd(),this.strict=!!r.strict,this.noPax=!!r.noPax,this.noMtime=!!r.noMtime,this.mtime=r.mtime||null,typeof r.onwarn=="function"&&this.on("warn",r.onwarn);let i=!1;if(!this.preservePaths&&Uc.win32.isAbsolute(e)){let n=Uc.win32.parse(e);this.path=e.substr(n.root.length),i=n.root}this.win32=!!r.win32||process.platform==="win32",this.win32&&(this.path=N0e.decode(this.path.replace(/\\/g,"/")),e=e.replace(/\\/g,"/")),this.absolute=r.absolute||Uc.resolve(this.cwd,e),this.path===""&&(this.path="./"),i&&this.warn("TAR_ENTRY_INFO",`stripping ${i} from absolute path`,{entry:this,path:i+this.path}),this.statCache.has(this.absolute)?this[cE](this.statCache.get(this.absolute)):this[ex]()}[ex](){gs.lstat(this.absolute,(e,r)=>{if(e)return this.emit("error",e);this[cE](r)})}[cE](e){this.statCache.set(this.absolute,e),this.stat=e,e.isFile()||(e.size=0),this.type=M0e(e),this.emit("stat",e),this[K3]()}[K3](){switch(this.type){case"File":return this[T3]();case"Directory":return this[U3]();case"SymbolicLink":return this[$S]();default:return this.end()}}[uE](e){return G3(e,this.type==="Directory",this.portable)}[hf](){this.type==="Directory"&&this.portable&&(this.noMtime=!0),this.header=new O3({path:this.path,linkpath:this.linkpath,mode:this[uE](this.stat.mode),uid:this.portable?null:this.stat.uid,gid:this.portable?null:this.stat.gid,size:this.stat.size,mtime:this.noMtime?null:this.mtime||this.stat.mtime,type:this.type,uname:this.portable?null:this.stat.uid===this.myuid?this.myuser:"",atime:this.portable?null:this.stat.atime,ctime:this.portable?null:this.stat.ctime}),this.header.encode()&&!this.noPax&&this.write(new M3({atime:this.portable?null:this.header.atime,ctime:this.portable?null:this.header.ctime,gid:this.portable?null:this.header.gid,mtime:this.noMtime?null:this.mtime||this.header.mtime,path:this.path,linkpath:this.linkpath,size:this.header.size,uid:this.portable?null:this.header.uid,uname:this.portable?null:this.header.uname,dev:this.portable?null:this.stat.dev,ino:this.portable?null:this.stat.ino,nlink:this.portable?null:this.stat.nlink}).encode()),this.write(this.header.block)}[U3](){this.path.substr(-1)!=="/"&&(this.path+="/"),this.stat.size=0,this[hf](),this.end()}[$S](){gs.readlink(this.absolute,(e,r)=>{if(e)return this.emit("error",e);this[rx](r)})}[rx](e){this.linkpath=e.replace(/\\/g,"/"),this[hf](),this.end()}[H3](e){this.type="Link",this.linkpath=Uc.relative(this.cwd,e).replace(/\\/g,"/"),this.stat.size=0,this[hf](),this.end()}[T3](){if(this.stat.nlink>1){let e=this.stat.dev+":"+this.stat.ino;if(this.linkCache.has(e)){let r=this.linkCache.get(e);if(r.indexOf(this.cwd)===0)return this[H3](r)}this.linkCache.set(e,this.absolute)}if(this[hf](),this.stat.size===0)return this.end();this[ix]()}[ix](){gs.open(this.absolute,"r",(e,r)=>{if(e)return this.emit("error",e);this[nx](r)})}[nx](e){let r=512*Math.ceil(this.stat.size/512),i=Math.min(r,this.maxReadSize),n=Buffer.allocUnsafe(i);this[lE](e,n,0,n.length,0,this.stat.size,r)}[lE](e,r,i,n,s,o,a){gs.read(e,r,i,n,s,(l,c)=>{if(l)return this[YA](e,()=>this.emit("error",l));this[tx](e,r,i,n,s,o,a,c)})}[YA](e,r){gs.close(e,r)}[tx](e,r,i,n,s,o,a,l){if(l<=0&&o>0){let u=new Error("encountered unexpected EOF");return u.path=this.absolute,u.syscall="read",u.code="EOF",this[YA](e,()=>this.emit("error",u))}if(l>o){let u=new Error("did not encounter expected EOF");return u.path=this.absolute,u.syscall="read",u.code="EOF",this[YA](e,()=>this.emit("error",u))}if(l===o)for(let u=l;uu?this.emit("error",u):this.end());i>=n&&(r=Buffer.allocUnsafe(n),i=0),n=r.length-i,this[lE](e,r,i,n,s,o,a)}}),j3=class extends gE{constructor(e,r){super(e,r)}[ex](){this[cE](gs.lstatSync(this.absolute))}[$S](){this[rx](gs.readlinkSync(this.absolute))}[ix](){this[nx](gs.openSync(this.absolute,"r"))}[lE](e,r,i,n,s,o,a){let l=!0;try{let c=gs.readSync(e,r,i,n,s);this[tx](e,r,i,n,s,o,a,c),l=!1}finally{if(l)try{this[YA](e,()=>{})}catch(c){}}}[YA](e,r){gs.closeSync(e),r()}},O0e=Y3(class extends N3{constructor(e,r){r=r||{},super(r),this.preservePaths=!!r.preservePaths,this.portable=!!r.portable,this.strict=!!r.strict,this.noPax=!!r.noPax,this.noMtime=!!r.noMtime,this.readEntry=e,this.type=e.type,this.type==="Directory"&&this.portable&&(this.noMtime=!0),this.path=e.path,this.mode=this[uE](e.mode),this.uid=this.portable?null:e.uid,this.gid=this.portable?null:e.gid,this.uname=this.portable?null:e.uname,this.gname=this.portable?null:e.gname,this.size=e.size,this.mtime=this.noMtime?null:r.mtime||e.mtime,this.atime=this.portable?null:e.atime,this.ctime=this.portable?null:e.ctime,this.linkpath=e.linkpath,typeof r.onwarn=="function"&&this.on("warn",r.onwarn);let i=!1;if(Uc.isAbsolute(this.path)&&!this.preservePaths){let n=Uc.parse(this.path);i=n.root,this.path=this.path.substr(n.root.length)}this.remain=e.size,this.blockRemain=e.startBlockSize,this.header=new O3({path:this.path,linkpath:this.linkpath,mode:this.mode,uid:this.portable?null:this.uid,gid:this.portable?null:this.gid,size:this.size,mtime:this.noMtime?null:this.mtime,type:this.type,uname:this.portable?null:this.uname,atime:this.portable?null:this.atime,ctime:this.portable?null:this.ctime}),i&&this.warn("TAR_ENTRY_INFO",`stripping ${i} from absolute path`,{entry:this,path:i+this.path}),this.header.encode()&&!this.noPax&&super.write(new M3({atime:this.portable?null:this.atime,ctime:this.portable?null:this.ctime,gid:this.portable?null:this.gid,mtime:this.noMtime?null:this.mtime,path:this.path,linkpath:this.linkpath,size:this.size,uid:this.portable?null:this.uid,uname:this.portable?null:this.uname,dev:this.portable?null:this.readEntry.dev,ino:this.portable?null:this.readEntry.ino,nlink:this.portable?null:this.readEntry.nlink}).encode()),super.write(this.header.block),e.pipe(this)}[uE](e){return G3(e,this.type==="Directory",this.portable)}write(e){let r=e.length;if(r>this.blockRemain)throw new Error("writing more to entry than is appropriate");return this.blockRemain-=r,super.write(e)}end(){return this.blockRemain&&this.write(Buffer.alloc(this.blockRemain)),super.end()}});gE.Sync=j3;gE.Tar=O0e;var M0e=t=>t.isFile()?"File":t.isDirectory()?"Directory":t.isSymbolicLink()?"SymbolicLink":"Unsupported";L3.exports=gE});var EE=C((K_e,q3)=>{"use strict";var ox=class{constructor(e,r){this.path=e||"./",this.absolute=r,this.entry=null,this.stat=null,this.readdir=null,this.pending=!1,this.ignore=!1,this.piped=!1}},K0e=Mc(),T0e=jS(),U0e=gf(),ax=sx(),H0e=ax.Sync,Y0e=ax.Tar,G0e=oh(),J3=Buffer.alloc(1024),hE=Symbol("onStat"),fE=Symbol("ended"),hs=Symbol("queue"),Hc=Symbol("current"),GA=Symbol("process"),pE=Symbol("processing"),W3=Symbol("processJob"),fs=Symbol("jobs"),Ax=Symbol("jobDone"),dE=Symbol("addFSEntry"),z3=Symbol("addTarEntry"),lx=Symbol("stat"),cx=Symbol("readdir"),CE=Symbol("onreaddir"),mE=Symbol("pipe"),V3=Symbol("entry"),ux=Symbol("entryOpt"),gx=Symbol("writeEntryClass"),X3=Symbol("write"),hx=Symbol("ondrain"),IE=require("fs"),Z3=require("path"),j0e=aE(),fx=j0e(class extends K0e{constructor(e){super(e);e=e||Object.create(null),this.opt=e,this.file=e.file||"",this.cwd=e.cwd||process.cwd(),this.maxReadSize=e.maxReadSize,this.preservePaths=!!e.preservePaths,this.strict=!!e.strict,this.noPax=!!e.noPax,this.prefix=(e.prefix||"").replace(/(\\|\/)+$/,""),this.linkCache=e.linkCache||new Map,this.statCache=e.statCache||new Map,this.readdirCache=e.readdirCache||new Map,this[gx]=ax,typeof e.onwarn=="function"&&this.on("warn",e.onwarn),this.portable=!!e.portable,this.zip=null,e.gzip?(typeof e.gzip!="object"&&(e.gzip={}),this.portable&&(e.gzip.portable=!0),this.zip=new T0e.Gzip(e.gzip),this.zip.on("data",r=>super.write(r)),this.zip.on("end",r=>super.end()),this.zip.on("drain",r=>this[hx]()),this.on("resume",r=>this.zip.resume())):this.on("drain",this[hx]),this.noDirRecurse=!!e.noDirRecurse,this.follow=!!e.follow,this.noMtime=!!e.noMtime,this.mtime=e.mtime||null,this.filter=typeof e.filter=="function"?e.filter:r=>!0,this[hs]=new G0e,this[fs]=0,this.jobs=+e.jobs||4,this[pE]=!1,this[fE]=!1}[X3](e){return super.write(e)}add(e){return this.write(e),this}end(e){return e&&this.write(e),this[fE]=!0,this[GA](),this}write(e){if(this[fE])throw new Error("write after end");return e instanceof U0e?this[z3](e):this[dE](e),this.flowing}[z3](e){let r=Z3.resolve(this.cwd,e.path);if(this.prefix&&(e.path=this.prefix+"/"+e.path.replace(/^\.(\/+|$)/,"")),!this.filter(e.path,e))e.resume();else{let i=new ox(e.path,r,!1);i.entry=new Y0e(e,this[ux](i)),i.entry.on("end",n=>this[Ax](i)),this[fs]+=1,this[hs].push(i)}this[GA]()}[dE](e){let r=Z3.resolve(this.cwd,e);this.prefix&&(e=this.prefix+"/"+e.replace(/^\.(\/+|$)/,"")),this[hs].push(new ox(e,r)),this[GA]()}[lx](e){e.pending=!0,this[fs]+=1;let r=this.follow?"stat":"lstat";IE[r](e.absolute,(i,n)=>{e.pending=!1,this[fs]-=1,i?this.emit("error",i):this[hE](e,n)})}[hE](e,r){this.statCache.set(e.absolute,r),e.stat=r,this.filter(e.path,r)||(e.ignore=!0),this[GA]()}[cx](e){e.pending=!0,this[fs]+=1,IE.readdir(e.absolute,(r,i)=>{if(e.pending=!1,this[fs]-=1,r)return this.emit("error",r);this[CE](e,i)})}[CE](e,r){this.readdirCache.set(e.absolute,r),e.readdir=r,this[GA]()}[GA](){if(!this[pE]){this[pE]=!0;for(let e=this[hs].head;e!==null&&this[fs]this.warn(r,i,n),noPax:this.noPax,cwd:this.cwd,absolute:e.absolute,preservePaths:this.preservePaths,maxReadSize:this.maxReadSize,strict:this.strict,portable:this.portable,linkCache:this.linkCache,statCache:this.statCache,noMtime:this.noMtime,mtime:this.mtime}}[V3](e){this[fs]+=1;try{return new this[gx](e.path,this[ux](e)).on("end",()=>this[Ax](e)).on("error",r=>this.emit("error",r))}catch(r){this.emit("error",r)}}[hx](){this[Hc]&&this[Hc].entry&&this[Hc].entry.resume()}[mE](e){e.piped=!0,e.readdir&&e.readdir.forEach(n=>{let s=this.prefix?e.path.slice(this.prefix.length+1)||"./":e.path,o=s==="./"?"":s.replace(/\/*$/,"/");this[dE](o+n)});let r=e.entry,i=this.zip;i?r.on("data",n=>{i.write(n)||r.pause()}):r.on("data",n=>{super.write(n)||r.pause()})}pause(){return this.zip&&this.zip.pause(),super.pause()}}),_3=class extends fx{constructor(e){super(e);this[gx]=H0e}pause(){}resume(){}[lx](e){let r=this.follow?"statSync":"lstatSync";this[hE](e,IE[r](e.absolute))}[cx](e,r){this[CE](e,IE.readdirSync(e.absolute))}[mE](e){let r=e.entry,i=this.zip;e.readdir&&e.readdir.forEach(n=>{let s=this.prefix?e.path.slice(this.prefix.length+1)||"./":e.path,o=s==="./"?"":s.replace(/\/*$/,"/");this[dE](o+n)}),i?r.on("data",n=>{i.write(n)}):r.on("data",n=>{super[X3](n)})}};fx.Sync=_3;q3.exports=fx});var Wc=C(ff=>{"use strict";var q0e=Mc(),J0e=require("events").EventEmitter,Cn=require("fs"),yE=process.binding("fs"),T_e=yE.writeBuffers,W0e=yE.FSReqWrap||yE.FSReqCallback,Yc=Symbol("_autoClose"),ps=Symbol("_close"),pf=Symbol("_ended"),vt=Symbol("_fd"),$3=Symbol("_finished"),jA=Symbol("_flags"),px=Symbol("_flush"),dx=Symbol("_handleChunk"),Cx=Symbol("_makeBuf"),mx=Symbol("_mode"),BE=Symbol("_needDrain"),Gc=Symbol("_onerror"),jc=Symbol("_onopen"),Ix=Symbol("_onread"),qA=Symbol("_onwrite"),ua=Symbol("_open"),ga=Symbol("_path"),JA=Symbol("_pos"),ds=Symbol("_queue"),qc=Symbol("_read"),e8=Symbol("_readSize"),ha=Symbol("_reading"),wE=Symbol("_remain"),t8=Symbol("_size"),QE=Symbol("_write"),Jc=Symbol("_writing"),bE=Symbol("_defaultFlag"),Ex=class extends q0e{constructor(e,r){if(r=r||{},super(r),this.writable=!1,typeof e!="string")throw new TypeError("path must be a string");this[vt]=typeof r.fd=="number"?r.fd:null,this[ga]=e,this[e8]=r.readSize||16*1024*1024,this[ha]=!1,this[t8]=typeof r.size=="number"?r.size:Infinity,this[wE]=this[t8],this[Yc]=typeof r.autoClose=="boolean"?r.autoClose:!0,typeof this[vt]=="number"?this[qc]():this[ua]()}get fd(){return this[vt]}get path(){return this[ga]}write(){throw new TypeError("this is a readable stream")}end(){throw new TypeError("this is a readable stream")}[ua](){Cn.open(this[ga],"r",(e,r)=>this[jc](e,r))}[jc](e,r){e?this[Gc](e):(this[vt]=r,this.emit("open",r),this[qc]())}[Cx](){return Buffer.allocUnsafe(Math.min(this[e8],this[wE]))}[qc](){if(!this[ha]){this[ha]=!0;let e=this[Cx]();if(e.length===0)return process.nextTick(()=>this[Ix](null,0,e));Cn.read(this[vt],e,0,e.length,null,(r,i,n)=>this[Ix](r,i,n))}}[Ix](e,r,i){this[ha]=!1,e?this[Gc](e):this[dx](r,i)&&this[qc]()}[ps](){this[Yc]&&typeof this[vt]=="number"&&(Cn.close(this[vt],e=>this.emit("close")),this[vt]=null)}[Gc](e){this[ha]=!0,this[ps](),this.emit("error",e)}[dx](e,r){let i=!1;return this[wE]-=e,e>0&&(i=super.write(ethis[jc](e,r))}[jc](e,r){this[bE]&&this[jA]==="r+"&&e&&e.code==="ENOENT"?(this[jA]="w",this[ua]()):e?this[Gc](e):(this[vt]=r,this.emit("open",r),this[px]())}end(e,r){e&&this.write(e,r),this[pf]=!0,!this[Jc]&&!this[ds].length&&typeof this[vt]=="number"&&this[qA](null,0)}write(e,r){return typeof e=="string"&&(e=new Buffer(e,r)),this[pf]?(this.emit("error",new Error("write() after end()")),!1):this[vt]===null||this[Jc]||this[ds].length?(this[ds].push(e),this[BE]=!0,!1):(this[Jc]=!0,this[QE](e),!0)}[QE](e){Cn.write(this[vt],e,0,e.length,this[JA],(r,i)=>this[qA](r,i))}[qA](e,r){e?this[Gc](e):(this[JA]!==null&&(this[JA]+=r),this[ds].length?this[px]():(this[Jc]=!1,this[pf]&&!this[$3]?(this[$3]=!0,this[ps](),this.emit("finish")):this[BE]&&(this[BE]=!1,this.emit("drain"))))}[px](){if(this[ds].length===0)this[pf]&&this[qA](null,0);else if(this[ds].length===1)this[QE](this[ds].pop());else{let e=this[ds];this[ds]=[],z0e(this[vt],e,this[JA],(r,i)=>this[qA](r,i))}}[ps](){this[Yc]&&typeof this[vt]=="number"&&(Cn.close(this[vt],e=>this.emit("close")),this[vt]=null)}},i8=class extends yx{[ua](){let e;try{e=Cn.openSync(this[ga],this[jA],this[mx])}catch(r){if(this[bE]&&this[jA]==="r+"&&r&&r.code==="ENOENT")return this[jA]="w",this[ua]();throw r}this[jc](null,e)}[ps](){if(this[Yc]&&typeof this[vt]=="number"){try{Cn.closeSync(this[vt])}catch(e){}this[vt]=null,this.emit("close")}}[QE](e){try{this[qA](null,Cn.writeSync(this[vt],e,0,e.length,this[JA]))}catch(r){this[qA](r,0)}}},z0e=(t,e,r,i)=>{let n=(o,a)=>i(o,a,e),s=new W0e;s.oncomplete=n,yE.writeBuffers(t,e,r,s)};ff.ReadStream=Ex;ff.ReadStreamSync=r8;ff.WriteStream=yx;ff.WriteStreamSync=i8});var mf=C((G_e,n8)=>{"use strict";var V0e=aE(),H_e=require("path"),X0e=Tc(),Z0e=require("events"),_0e=oh(),$0e=1024*1024,ebe=gf(),s8=oE(),tbe=jS(),Bx=Buffer.from([31,139]),mn=Symbol("state"),WA=Symbol("writeEntry"),oo=Symbol("readEntry"),wx=Symbol("nextEntry"),o8=Symbol("processEntry"),In=Symbol("extendedHeader"),df=Symbol("globalExtendedHeader"),fa=Symbol("meta"),a8=Symbol("emitMeta"),Ht=Symbol("buffer"),ao=Symbol("queue"),zA=Symbol("ended"),A8=Symbol("emittedEnd"),VA=Symbol("emit"),Fi=Symbol("unzip"),DE=Symbol("consumeChunk"),SE=Symbol("consumeChunkSub"),Qx=Symbol("consumeBody"),l8=Symbol("consumeMeta"),c8=Symbol("consumeHeader"),xE=Symbol("consuming"),bx=Symbol("bufferConcat"),Dx=Symbol("maybeEnd"),Cf=Symbol("writing"),pa=Symbol("aborted"),PE=Symbol("onDone"),XA=Symbol("sawValidEntry"),kE=Symbol("sawNullBlock"),vE=Symbol("sawEOF"),rbe=t=>!0;n8.exports=V0e(class extends Z0e{constructor(e){e=e||{},super(e),this.file=e.file||"",this[XA]=null,this.on(PE,r=>{(this[mn]==="begin"||this[XA]===!1)&&this.warn("TAR_BAD_ARCHIVE","Unrecognized archive format")}),e.ondone?this.on(PE,e.ondone):this.on(PE,r=>{this.emit("prefinish"),this.emit("finish"),this.emit("end"),this.emit("close")}),this.strict=!!e.strict,this.maxMetaEntrySize=e.maxMetaEntrySize||$0e,this.filter=typeof e.filter=="function"?e.filter:rbe,this.writable=!0,this.readable=!1,this[ao]=new _0e,this[Ht]=null,this[oo]=null,this[WA]=null,this[mn]="begin",this[fa]="",this[In]=null,this[df]=null,this[zA]=!1,this[Fi]=null,this[pa]=!1,this[kE]=!1,this[vE]=!1,typeof e.onwarn=="function"&&this.on("warn",e.onwarn),typeof e.onentry=="function"&&this.on("entry",e.onentry)}[c8](e,r){this[XA]===null&&(this[XA]=!1);let i;try{i=new X0e(e,r,this[In],this[df])}catch(n){return this.warn("TAR_ENTRY_INVALID",n)}if(i.nullBlock)this[kE]?(this[vE]=!0,this[mn]==="begin"&&(this[mn]="header"),this[VA]("eof")):(this[kE]=!0,this[VA]("nullBlock"));else if(this[kE]=!1,!i.cksumValid)this.warn("TAR_ENTRY_INVALID","checksum failure",{header:i});else if(!i.path)this.warn("TAR_ENTRY_INVALID","path is required",{header:i});else{let n=i.type;if(/^(Symbolic)?Link$/.test(n)&&!i.linkpath)this.warn("TAR_ENTRY_INVALID","linkpath required",{header:i});else if(!/^(Symbolic)?Link$/.test(n)&&i.linkpath)this.warn("TAR_ENTRY_INVALID","linkpath forbidden",{header:i});else{let s=this[WA]=new ebe(i,this[In],this[df]);if(!this[XA])if(s.remain){let o=()=>{s.invalid||(this[XA]=!0)};s.on("end",o)}else this[XA]=!0;s.meta?s.size>this.maxMetaEntrySize?(s.ignore=!0,this[VA]("ignoredEntry",s),this[mn]="ignore",s.resume()):s.size>0&&(this[fa]="",s.on("data",o=>this[fa]+=o),this[mn]="meta"):(this[In]=null,s.ignore=s.ignore||!this.filter(s.path,s),s.ignore?(this[VA]("ignoredEntry",s),this[mn]=s.remain?"ignore":"header",s.resume()):(s.remain?this[mn]="body":(this[mn]="header",s.end()),this[oo]?this[ao].push(s):(this[ao].push(s),this[wx]())))}}}[o8](e){let r=!0;return e?Array.isArray(e)?this.emit.apply(this,e):(this[oo]=e,this.emit("entry",e),e.emittedEnd||(e.on("end",i=>this[wx]()),r=!1)):(this[oo]=null,r=!1),r}[wx](){do;while(this[o8](this[ao].shift()));if(!this[ao].length){let e=this[oo];!e||e.flowing||e.size===e.remain?this[Cf]||this.emit("drain"):e.once("drain",i=>this.emit("drain"))}}[Qx](e,r){let i=this[WA],n=i.blockRemain,s=n>=e.length&&r===0?e:e.slice(r,r+n);return i.write(s),i.blockRemain||(this[mn]="header",this[WA]=null,i.end()),s.length}[l8](e,r){let i=this[WA],n=this[Qx](e,r);return this[WA]||this[a8](i),n}[VA](e,r,i){!this[ao].length&&!this[oo]?this.emit(e,r,i):this[ao].push([e,r,i])}[a8](e){switch(this[VA]("meta",this[fa]),e.type){case"ExtendedHeader":case"OldExtendedHeader":this[In]=s8.parse(this[fa],this[In],!1);break;case"GlobalExtendedHeader":this[df]=s8.parse(this[fa],this[df],!0);break;case"NextFileHasLongPath":case"OldGnuLongPath":this[In]=this[In]||Object.create(null),this[In].path=this[fa].replace(/\0.*/,"");break;case"NextFileHasLongLinkpath":this[In]=this[In]||Object.create(null),this[In].linkpath=this[fa].replace(/\0.*/,"");break;default:throw new Error("unknown meta: "+e.type)}}abort(e){this[pa]=!0,this.emit("abort",e),this.warn("TAR_ABORT",e,{recoverable:!1})}write(e){if(this[pa])return;if(this[Fi]===null&&e){if(this[Ht]&&(e=Buffer.concat([this[Ht],e]),this[Ht]=null),e.lengththis[DE](s)),this[Fi].on("error",s=>this.abort(s)),this[Fi].on("end",s=>{this[zA]=!0,this[DE]()}),this[Cf]=!0;let n=this[Fi][i?"end":"write"](e);return this[Cf]=!1,n}}this[Cf]=!0,this[Fi]?this[Fi].write(e):this[DE](e),this[Cf]=!1;let r=this[ao].length?!1:this[oo]?this[oo].flowing:!0;return!r&&!this[ao].length&&this[oo].once("drain",i=>this.emit("drain")),r}[bx](e){e&&!this[pa]&&(this[Ht]=this[Ht]?Buffer.concat([this[Ht],e]):e)}[Dx](){if(this[zA]&&!this[A8]&&!this[pa]&&!this[xE]){this[A8]=!0;let e=this[WA];if(e&&e.blockRemain){let r=this[Ht]?this[Ht].length:0;this.warn("TAR_BAD_ARCHIVE",`Truncated input (needed ${e.blockRemain} more bytes, only ${r} available)`,{entry:e}),this[Ht]&&e.write(this[Ht]),e.end()}this[VA](PE)}}[DE](e){if(this[xE])this[bx](e);else if(!e&&!this[Ht])this[Dx]();else{if(this[xE]=!0,this[Ht]){this[bx](e);let r=this[Ht];this[Ht]=null,this[SE](r)}else this[SE](e);for(;this[Ht]&&this[Ht].length>=512&&!this[pa]&&!this[vE];){let r=this[Ht];this[Ht]=null,this[SE](r)}this[xE]=!1}(!this[Ht]||this[zA])&&this[Dx]()}[SE](e){let r=0,i=e.length;for(;r+512<=i&&!this[pa]&&!this[vE];)switch(this[mn]){case"begin":case"header":this[c8](e,r),r+=512;break;case"ignore":case"body":r+=this[Qx](e,r);break;case"meta":r+=this[l8](e,r);break;default:throw new Error("invalid state: "+this[mn])}r{"use strict";var ibe=Nc(),g8=mf(),zc=require("fs"),nbe=Wc(),h8=require("path"),j_e=u8.exports=(t,e,r)=>{typeof t=="function"?(r=t,e=null,t={}):Array.isArray(t)&&(e=t,t={}),typeof e=="function"&&(r=e,e=null),e?e=Array.from(e):e=[];let i=ibe(t);if(i.sync&&typeof r=="function")throw new TypeError("callback not supported for sync tar functions");if(!i.file&&typeof r=="function")throw new TypeError("callback only supported with file option");return e.length&&obe(i,e),i.noResume||sbe(i),i.file&&i.sync?abe(i):i.file?Abe(i,r):f8(i)},sbe=t=>{let e=t.onentry;t.onentry=e?r=>{e(r),r.resume()}:r=>r.resume()},obe=(t,e)=>{let r=new Map(e.map(s=>[s.replace(/\/+$/,""),!0])),i=t.filter,n=(s,o)=>{let a=o||h8.parse(s).root||".",l=s===a?!1:r.has(s)?r.get(s):n(h8.dirname(s),a);return r.set(s,l),l};t.filter=i?(s,o)=>i(s,o)&&n(s.replace(/\/+$/,"")):s=>n(s.replace(/\/+$/,""))},abe=t=>{let e=f8(t),r=t.file,i=!0,n;try{let s=zc.statSync(r),o=t.maxReadSize||16*1024*1024;if(s.size{let r=new g8(t),i=t.maxReadSize||16*1024*1024,n=t.file,s=new Promise((o,a)=>{r.on("error",a),r.on("end",o),zc.stat(n,(l,c)=>{if(l)a(l);else{let u=new nbe.ReadStream(n,{readSize:i,size:c.size});u.on("error",a),u.pipe(r)}})});return e?s.then(e,e):s},f8=t=>new g8(t)});var E8=C((z_e,p8)=>{"use strict";var lbe=Nc(),RE=EE(),J_e=require("fs"),d8=Wc(),C8=FE(),m8=require("path"),W_e=p8.exports=(t,e,r)=>{if(typeof e=="function"&&(r=e),Array.isArray(t)&&(e=t,t={}),!e||!Array.isArray(e)||!e.length)throw new TypeError("no files or directories specified");e=Array.from(e);let i=lbe(t);if(i.sync&&typeof r=="function")throw new TypeError("callback not supported for sync tar functions");if(!i.file&&typeof r=="function")throw new TypeError("callback only supported with file option");return i.file&&i.sync?cbe(i,e):i.file?ube(i,e,r):i.sync?gbe(i,e):hbe(i,e)},cbe=(t,e)=>{let r=new RE.Sync(t),i=new d8.WriteStreamSync(t.file,{mode:t.mode||438});r.pipe(i),I8(r,e)},ube=(t,e,r)=>{let i=new RE(t),n=new d8.WriteStream(t.file,{mode:t.mode||438});i.pipe(n);let s=new Promise((o,a)=>{n.on("error",a),n.on("close",o),i.on("error",a)});return Sx(i,e),r?s.then(r,r):s},I8=(t,e)=>{e.forEach(r=>{r.charAt(0)==="@"?C8({file:m8.resolve(t.cwd,r.substr(1)),sync:!0,noResume:!0,onentry:i=>t.add(i)}):t.add(r)}),t.end()},Sx=(t,e)=>{for(;e.length;){let r=e.shift();if(r.charAt(0)==="@")return C8({file:m8.resolve(t.cwd,r.substr(1)),noResume:!0,onentry:i=>t.add(i)}).then(i=>Sx(t,e));t.add(r)}t.end()},gbe=(t,e)=>{let r=new RE.Sync(t);return I8(r,e),r},hbe=(t,e)=>{let r=new RE(t);return Sx(r,e),r}});var xx=C((Z_e,y8)=>{"use strict";var fbe=Nc(),B8=EE(),V_e=mf(),En=require("fs"),w8=Wc(),Q8=FE(),b8=require("path"),D8=Tc(),X_e=y8.exports=(t,e,r)=>{let i=fbe(t);if(!i.file)throw new TypeError("file is required");if(i.gzip)throw new TypeError("cannot append to compressed archives");if(!e||!Array.isArray(e)||!e.length)throw new TypeError("no files or directories specified");return e=Array.from(e),i.sync?pbe(i,e):dbe(i,e,r)},pbe=(t,e)=>{let r=new B8.Sync(t),i=!0,n,s;try{try{n=En.openSync(t.file,"r+")}catch(l){if(l.code==="ENOENT")n=En.openSync(t.file,"w+");else throw l}let o=En.fstatSync(n),a=Buffer.alloc(512);e:for(s=0;so.size)break;s+=c,t.mtimeCache&&t.mtimeCache.set(l.path,l.mtime)}i=!1,Cbe(t,r,s,n,e)}finally{if(i)try{En.closeSync(n)}catch(o){}}},Cbe=(t,e,r,i,n)=>{let s=new w8.WriteStreamSync(t.file,{fd:i,start:r});e.pipe(s),mbe(e,n)},dbe=(t,e,r)=>{e=Array.from(e);let i=new B8(t),n=(o,a,l)=>{let c=(p,m)=>{p?En.close(o,I=>l(p)):l(null,m)},u=0;if(a===0)return c(null,0);let g=0,h=Buffer.alloc(512),f=(p,m)=>{if(p)return c(p);if(g+=m,g<512&&m)return En.read(o,h,g,h.length-g,u+g,f);if(u===0&&h[0]===31&&h[1]===139)return c(new Error("cannot append to compressed archives"));if(g<512)return c(null,u);let I=new D8(h);if(!I.cksumValid)return c(null,u);let y=512*Math.ceil(I.size/512);if(u+y+512>a||(u+=y+512,u>=a))return c(null,u);t.mtimeCache&&t.mtimeCache.set(I.path,I.mtime),g=0,En.read(o,h,0,512,u,f)};En.read(o,h,0,512,u,f)},s=new Promise((o,a)=>{i.on("error",a);let l="r+",c=(u,g)=>{if(u&&u.code==="ENOENT"&&l==="r+")return l="w+",En.open(t.file,l,c);if(u)return a(u);En.fstat(g,(h,f)=>{if(h)return a(h);n(g,f.size,(p,m)=>{if(p)return a(p);let I=new w8.WriteStream(t.file,{fd:g,start:m});i.pipe(I),I.on("error",a),I.on("close",o),S8(i,e)})})};En.open(t.file,l,c)});return r?s.then(r,r):s},mbe=(t,e)=>{e.forEach(r=>{r.charAt(0)==="@"?Q8({file:b8.resolve(t.cwd,r.substr(1)),sync:!0,noResume:!0,onentry:i=>t.add(i)}):t.add(r)}),t.end()},S8=(t,e)=>{for(;e.length;){let r=e.shift();if(r.charAt(0)==="@")return Q8({file:b8.resolve(t.cwd,r.substr(1)),noResume:!0,onentry:i=>t.add(i)}).then(i=>S8(t,e));t.add(r)}t.end()}});var P8=C(($_e,x8)=>{"use strict";var Ibe=Nc(),Ebe=xx(),__e=x8.exports=(t,e,r)=>{let i=Ibe(t);if(!i.file)throw new TypeError("file is required");if(i.gzip)throw new TypeError("cannot append to compressed archives");if(!e||!Array.isArray(e)||!e.length)throw new TypeError("no files or directories specified");return e=Array.from(e),ybe(i),Ebe(i,e,r)},ybe=t=>{let e=t.filter;t.mtimeCache||(t.mtimeCache=new Map),t.filter=e?(r,i)=>e(r,i)&&!(t.mtimeCache.get(r)>i.mtime):(r,i)=>!(t.mtimeCache.get(r)>i.mtime)}});var F8=C((e$e,k8)=>{var{promisify:v8}=require("util"),da=require("fs"),Bbe=t=>{if(!t)t={mode:511,fs:da};else if(typeof t=="object")t=k({mode:511,fs:da},t);else if(typeof t=="number")t={mode:t,fs:da};else if(typeof t=="string")t={mode:parseInt(t,8),fs:da};else throw new TypeError("invalid options argument");return t.mkdir=t.mkdir||t.fs.mkdir||da.mkdir,t.mkdirAsync=v8(t.mkdir),t.stat=t.stat||t.fs.stat||da.stat,t.statAsync=v8(t.stat),t.statSync=t.statSync||t.fs.statSync||da.statSync,t.mkdirSync=t.mkdirSync||t.fs.mkdirSync||da.mkdirSync,t};k8.exports=Bbe});var L8=C((t$e,R8)=>{var wbe=process.env.__TESTING_MKDIRP_PLATFORM__||process.platform,{resolve:Qbe,parse:bbe}=require("path"),Dbe=t=>{if(/\0/.test(t))throw Object.assign(new TypeError("path must be a string without null bytes"),{path:t,code:"ERR_INVALID_ARG_VALUE"});if(t=Qbe(t),wbe==="win32"){let e=/[*|"<>?:]/,{root:r}=bbe(t);if(e.test(t.substr(r.length)))throw Object.assign(new Error("Illegal characters in path."),{path:t,code:"EINVAL"})}return t};R8.exports=Dbe});var T8=C((r$e,N8)=>{var{dirname:M8}=require("path"),O8=(t,e,r=void 0)=>r===e?Promise.resolve():t.statAsync(e).then(i=>i.isDirectory()?r:void 0,i=>i.code==="ENOENT"?O8(t,M8(e),e):void 0),K8=(t,e,r=void 0)=>{if(r!==e)try{return t.statSync(e).isDirectory()?r:void 0}catch(i){return i.code==="ENOENT"?K8(t,M8(e),e):void 0}};N8.exports={findMade:O8,findMadeSync:K8}});var vx=C((i$e,U8)=>{var{dirname:H8}=require("path"),Px=(t,e,r)=>{e.recursive=!1;let i=H8(t);return i===t?e.mkdirAsync(t,e).catch(n=>{if(n.code!=="EISDIR")throw n}):e.mkdirAsync(t,e).then(()=>r||t,n=>{if(n.code==="ENOENT")return Px(i,e).then(s=>Px(t,e,s));if(n.code!=="EEXIST"&&n.code!=="EROFS")throw n;return e.statAsync(t).then(s=>{if(s.isDirectory())return r;throw n},()=>{throw n})})},kx=(t,e,r)=>{let i=H8(t);if(e.recursive=!1,i===t)try{return e.mkdirSync(t,e)}catch(n){if(n.code!=="EISDIR")throw n;return}try{return e.mkdirSync(t,e),r||t}catch(n){if(n.code==="ENOENT")return kx(t,e,kx(i,e,r));if(n.code!=="EEXIST"&&n.code!=="EROFS")throw n;try{if(!e.statSync(t).isDirectory())throw n}catch(s){throw n}}};U8.exports={mkdirpManual:Px,mkdirpManualSync:kx}});var j8=C((n$e,Y8)=>{var{dirname:G8}=require("path"),{findMade:Sbe,findMadeSync:xbe}=T8(),{mkdirpManual:Pbe,mkdirpManualSync:kbe}=vx(),vbe=(t,e)=>(e.recursive=!0,G8(t)===t?e.mkdirAsync(t,e):Sbe(e,t).then(i=>e.mkdirAsync(t,e).then(()=>i).catch(n=>{if(n.code==="ENOENT")return Pbe(t,e);throw n}))),Fbe=(t,e)=>{if(e.recursive=!0,G8(t)===t)return e.mkdirSync(t,e);let i=xbe(e,t);try{return e.mkdirSync(t,e),i}catch(n){if(n.code==="ENOENT")return kbe(t,e);throw n}};Y8.exports={mkdirpNative:vbe,mkdirpNativeSync:Fbe}});var z8=C((s$e,q8)=>{var J8=require("fs"),Rbe=process.env.__TESTING_MKDIRP_NODE_VERSION__||process.version,Fx=Rbe.replace(/^v/,"").split("."),W8=+Fx[0]>10||+Fx[0]==10&&+Fx[1]>=12,Lbe=W8?t=>t.mkdir===J8.mkdir:()=>!1,Nbe=W8?t=>t.mkdirSync===J8.mkdirSync:()=>!1;q8.exports={useNative:Lbe,useNativeSync:Nbe}});var e4=C((o$e,V8)=>{var Vc=F8(),Xc=L8(),{mkdirpNative:X8,mkdirpNativeSync:Z8}=j8(),{mkdirpManual:_8,mkdirpManualSync:$8}=vx(),{useNative:Mbe,useNativeSync:Obe}=z8(),Zc=(t,e)=>(t=Xc(t),e=Vc(e),Mbe(e)?X8(t,e):_8(t,e)),Kbe=(t,e)=>(t=Xc(t),e=Vc(e),Obe(e)?Z8(t,e):$8(t,e));Zc.sync=Kbe;Zc.native=(t,e)=>X8(Xc(t),Vc(e));Zc.manual=(t,e)=>_8(Xc(t),Vc(e));Zc.nativeSync=(t,e)=>Z8(Xc(t),Vc(e));Zc.manualSync=(t,e)=>$8(Xc(t),Vc(e));V8.exports=Zc});var a4=C((a$e,t4)=>{"use strict";var yn=require("fs"),ZA=require("path"),Tbe=yn.lchown?"lchown":"chown",Ube=yn.lchownSync?"lchownSync":"chownSync",r4=yn.lchown&&!process.version.match(/v1[1-9]+\./)&&!process.version.match(/v10\.[6-9]/),i4=(t,e,r)=>{try{return yn[Ube](t,e,r)}catch(i){if(i.code!=="ENOENT")throw i}},Hbe=(t,e,r)=>{try{return yn.chownSync(t,e,r)}catch(i){if(i.code!=="ENOENT")throw i}},Ybe=r4?(t,e,r,i)=>n=>{!n||n.code!=="EISDIR"?i(n):yn.chown(t,e,r,i)}:(t,e,r,i)=>i,Rx=r4?(t,e,r)=>{try{return i4(t,e,r)}catch(i){if(i.code!=="EISDIR")throw i;Hbe(t,e,r)}}:(t,e,r)=>i4(t,e,r),Gbe=process.version,n4=(t,e,r)=>yn.readdir(t,e,r),jbe=(t,e)=>yn.readdirSync(t,e);/^v4\./.test(Gbe)&&(n4=(t,e,r)=>yn.readdir(t,r));var LE=(t,e,r,i)=>{yn[Tbe](t,e,r,Ybe(t,e,r,n=>{i(n&&n.code!=="ENOENT"?n:null)}))},s4=(t,e,r,i,n)=>{if(typeof e=="string")return yn.lstat(ZA.resolve(t,e),(s,o)=>{if(s)return n(s.code!=="ENOENT"?s:null);o.name=e,s4(t,o,r,i,n)});if(e.isDirectory())Lx(ZA.resolve(t,e.name),r,i,s=>{if(s)return n(s);let o=ZA.resolve(t,e.name);LE(o,r,i,n)});else{let s=ZA.resolve(t,e.name);LE(s,r,i,n)}},Lx=(t,e,r,i)=>{n4(t,{withFileTypes:!0},(n,s)=>{if(n){if(n.code==="ENOENT")return i();if(n.code!=="ENOTDIR"&&n.code!=="ENOTSUP")return i(n)}if(n||!s.length)return LE(t,e,r,i);let o=s.length,a=null,l=c=>{if(!a){if(c)return i(a=c);if(--o==0)return LE(t,e,r,i)}};s.forEach(c=>s4(t,c,e,r,l))})},qbe=(t,e,r,i)=>{if(typeof e=="string")try{let n=yn.lstatSync(ZA.resolve(t,e));n.name=e,e=n}catch(n){if(n.code==="ENOENT")return;throw n}e.isDirectory()&&o4(ZA.resolve(t,e.name),r,i),Rx(ZA.resolve(t,e.name),r,i)},o4=(t,e,r)=>{let i;try{i=jbe(t,{withFileTypes:!0})}catch(n){if(n.code==="ENOENT")return;if(n.code==="ENOTDIR"||n.code==="ENOTSUP")return Rx(t,e,r);throw n}return i&&i.length&&i.forEach(n=>qbe(t,n,e,r)),Rx(t,e,r)};t4.exports=Lx;Lx.sync=o4});var u4=C((c$e,Nx)=>{"use strict";var A4=e4(),Bn=require("fs"),NE=require("path"),l4=a4(),Mx=class extends Error{constructor(e,r){super("Cannot extract through symbolic link");this.path=r,this.symlink=e}get name(){return"SylinkError"}},If=class extends Error{constructor(e,r){super(r+": Cannot cd into '"+e+"'");this.path=e,this.code=r}get name(){return"CwdError"}},A$e=Nx.exports=(t,e,r)=>{let i=e.umask,n=e.mode|448,s=(n&i)!=0,o=e.uid,a=e.gid,l=typeof o=="number"&&typeof a=="number"&&(o!==e.processUid||a!==e.processGid),c=e.preserve,u=e.unlink,g=e.cache,h=e.cwd,f=(I,y)=>{I?r(I):(g.set(t,!0),y&&l?l4(y,o,a,w=>f(w)):s?Bn.chmod(t,n,r):r())};if(g&&g.get(t)===!0)return f();if(t===h)return Bn.stat(t,(I,y)=>{(I||!y.isDirectory())&&(I=new If(t,I&&I.code||"ENOTDIR")),f(I)});if(c)return A4(t,{mode:n}).then(I=>f(null,I),f);let m=NE.relative(h,t).split(/\/|\\/);ME(h,m,n,g,u,h,null,f)},ME=(t,e,r,i,n,s,o,a)=>{if(!e.length)return a(null,o);let l=e.shift(),c=t+"/"+l;if(i.get(c))return ME(c,e,r,i,n,s,o,a);Bn.mkdir(c,r,c4(c,e,r,i,n,s,o,a))},c4=(t,e,r,i,n,s,o,a)=>l=>{if(l){if(l.path&&NE.dirname(l.path)===s&&(l.code==="ENOTDIR"||l.code==="ENOENT"))return a(new If(s,l.code));Bn.lstat(t,(c,u)=>{if(c)a(c);else if(u.isDirectory())ME(t,e,r,i,n,s,o,a);else if(n)Bn.unlink(t,g=>{if(g)return a(g);Bn.mkdir(t,r,c4(t,e,r,i,n,s,o,a))});else{if(u.isSymbolicLink())return a(new Mx(t,t+"/"+e.join("/")));a(l)}})}else o=o||t,ME(t,e,r,i,n,s,o,a)},l$e=Nx.exports.sync=(t,e)=>{let r=e.umask,i=e.mode|448,n=(i&r)!=0,s=e.uid,o=e.gid,a=typeof s=="number"&&typeof o=="number"&&(s!==e.processUid||o!==e.processGid),l=e.preserve,c=e.unlink,u=e.cache,g=e.cwd,h=I=>{u.set(t,!0),I&&a&&l4.sync(I,s,o),n&&Bn.chmodSync(t,i)};if(u&&u.get(t)===!0)return h();if(t===g){let I=!1,y="ENOTDIR";try{I=Bn.statSync(t).isDirectory()}catch(w){y=w.code}finally{if(!I)throw new If(t,y)}h();return}if(l)return h(A4.sync(t,i));let p=NE.relative(g,t).split(/\/|\\/),m=null;for(let I=p.shift(),y=g;I&&(y+="/"+I);I=p.shift())if(!u.get(y))try{Bn.mkdirSync(y,i),m=m||y,u.set(y,!0)}catch(w){if(w.path&&NE.dirname(w.path)===g&&(w.code==="ENOTDIR"||w.code==="ENOENT"))return new If(g,w.code);let x=Bn.lstatSync(y);if(x.isDirectory()){u.set(y,!0);continue}else if(c){Bn.unlinkSync(y),Bn.mkdirSync(y,i),m=m||y,u.set(y,!0);continue}else if(x.isSymbolicLink())return new Mx(y,y+"/"+p.join("/"))}return h(m)}});var f4=C((u$e,g4)=>{var h4=require("assert");g4.exports=()=>{let t=new Map,e=new Map,{join:r}=require("path"),i=u=>r(u).split(/[\\\/]/).slice(0,-1).reduce((g,h)=>g.length?g.concat(r(g[g.length-1],h)):[h],[]),n=new Set,s=u=>{let g=e.get(u);if(!g)throw new Error("function does not have any path reservations");return{paths:g.paths.map(h=>t.get(h)),dirs:[...g.dirs].map(h=>t.get(h))}},o=u=>{let{paths:g,dirs:h}=s(u);return g.every(f=>f[0]===u)&&h.every(f=>f[0]instanceof Set&&f[0].has(u))},a=u=>n.has(u)||!o(u)?!1:(n.add(u),u(()=>l(u)),!0),l=u=>{if(!n.has(u))return!1;let{paths:g,dirs:h}=e.get(u),f=new Set;return g.forEach(p=>{let m=t.get(p);h4.equal(m[0],u),m.length===1?t.delete(p):(m.shift(),typeof m[0]=="function"?f.add(m[0]):m[0].forEach(I=>f.add(I)))}),h.forEach(p=>{let m=t.get(p);h4(m[0]instanceof Set),m[0].size===1&&m.length===1?t.delete(p):m[0].size===1?(m.shift(),f.add(m[0])):m[0].delete(u)}),n.delete(u),f.forEach(p=>a(p)),!0};return{check:o,reserve:(u,g)=>{let h=new Set(u.map(f=>i(f)).reduce((f,p)=>f.concat(p)));return e.set(g,{dirs:h,paths:u}),u.forEach(f=>{let p=t.get(f);p?p.push(g):t.set(f,[g])}),h.forEach(f=>{let p=t.get(f);p?p[p.length-1]instanceof Set?p[p.length-1].add(g):p.push(new Set([g])):t.set(f,[new Set([g])])}),a(g)}}}});var C4=C((g$e,p4)=>{var Jbe=process.env.__FAKE_PLATFORM__||process.platform,Wbe=Jbe==="win32",zbe=global.__FAKE_TESTING_FS__||require("fs"),{O_CREAT:Vbe,O_TRUNC:Xbe,O_WRONLY:Zbe,UV_FS_O_FILEMAP:d4=0}=zbe.constants,_be=Wbe&&!!d4,$be=512*1024,eDe=d4|Xbe|Vbe|Zbe;p4.exports=_be?t=>t<$be?eDe:"w":()=>"w"});var qx=C((d$e,m4)=>{"use strict";var tDe=require("assert"),h$e=require("events").EventEmitter,rDe=mf(),Dt=require("fs"),iDe=Wc(),Ao=require("path"),Ox=u4(),f$e=Ox.sync,I4=_S(),nDe=f4(),E4=Symbol("onEntry"),Kx=Symbol("checkFs"),y4=Symbol("checkFs2"),Tx=Symbol("isReusable"),lo=Symbol("makeFs"),Ux=Symbol("file"),Hx=Symbol("directory"),OE=Symbol("link"),B4=Symbol("symlink"),w4=Symbol("hardlink"),Q4=Symbol("unsupported"),p$e=Symbol("unknown"),b4=Symbol("checkPath"),_c=Symbol("mkdir"),pi=Symbol("onError"),KE=Symbol("pending"),D4=Symbol("pend"),$c=Symbol("unpend"),Yx=Symbol("ended"),Gx=Symbol("maybeClose"),jx=Symbol("skip"),Ef=Symbol("doChown"),yf=Symbol("uid"),Bf=Symbol("gid"),S4=require("crypto"),x4=C4(),TE=()=>{throw new Error("sync function called cb somehow?!?")},sDe=(t,e)=>{if(process.platform!=="win32")return Dt.unlink(t,e);let r=t+".DELETE."+S4.randomBytes(16).toString("hex");Dt.rename(t,r,i=>{if(i)return e(i);Dt.unlink(r,e)})},oDe=t=>{if(process.platform!=="win32")return Dt.unlinkSync(t);let e=t+".DELETE."+S4.randomBytes(16).toString("hex");Dt.renameSync(t,e),Dt.unlinkSync(e)},P4=(t,e,r)=>t===t>>>0?t:e===e>>>0?e:r,UE=class extends rDe{constructor(e){if(e||(e={}),e.ondone=r=>{this[Yx]=!0,this[Gx]()},super(e),this.reservations=nDe(),this.transform=typeof e.transform=="function"?e.transform:null,this.writable=!0,this.readable=!1,this[KE]=0,this[Yx]=!1,this.dirCache=e.dirCache||new Map,typeof e.uid=="number"||typeof e.gid=="number"){if(typeof e.uid!="number"||typeof e.gid!="number")throw new TypeError("cannot set owner without number uid and gid");if(e.preserveOwner)throw new TypeError("cannot preserve owner in archive and also set owner explicitly");this.uid=e.uid,this.gid=e.gid,this.setOwner=!0}else this.uid=null,this.gid=null,this.setOwner=!1;e.preserveOwner===void 0&&typeof e.uid!="number"?this.preserveOwner=process.getuid&&process.getuid()===0:this.preserveOwner=!!e.preserveOwner,this.processUid=(this.preserveOwner||this.setOwner)&&process.getuid?process.getuid():null,this.processGid=(this.preserveOwner||this.setOwner)&&process.getgid?process.getgid():null,this.forceChown=e.forceChown===!0,this.win32=!!e.win32||process.platform==="win32",this.newer=!!e.newer,this.keep=!!e.keep,this.noMtime=!!e.noMtime,this.preservePaths=!!e.preservePaths,this.unlink=!!e.unlink,this.cwd=Ao.resolve(e.cwd||process.cwd()),this.strip=+e.strip||0,this.processUmask=process.umask(),this.umask=typeof e.umask=="number"?e.umask:this.processUmask,this.dmode=e.dmode||511&~this.umask,this.fmode=e.fmode||438&~this.umask,this.on("entry",r=>this[E4](r))}warn(e,r,i={}){return(e==="TAR_BAD_ARCHIVE"||e==="TAR_ABORT")&&(i.recoverable=!1),super.warn(e,r,i)}[Gx](){this[Yx]&&this[KE]===0&&(this.emit("prefinish"),this.emit("finish"),this.emit("end"),this.emit("close"))}[b4](e){if(this.strip){let r=e.path.split(/\/|\\/);if(r.length=this.strip&&(e.linkpath=i.slice(this.strip).join("/"))}}if(!this.preservePaths){let r=e.path;if(r.match(/(^|\/|\\)\.\.(\\|\/|$)/))return this.warn("TAR_ENTRY_ERROR","path contains '..'",{entry:e,path:r}),!1;if(Ao.win32.isAbsolute(r)){let i=Ao.win32.parse(r);e.path=r.substr(i.root.length);let n=i.root;this.warn("TAR_ENTRY_INFO",`stripping ${n} from absolute path`,{entry:e,path:r})}}if(this.win32){let r=Ao.win32.parse(e.path);e.path=r.root===""?I4.encode(e.path):r.root+I4.encode(e.path.substr(r.root.length))}return Ao.isAbsolute(e.path)?e.absolute=e.path:e.absolute=Ao.resolve(this.cwd,e.path),!0}[E4](e){if(!this[b4](e))return e.resume();switch(tDe.equal(typeof e.absolute,"string"),e.type){case"Directory":case"GNUDumpDir":e.mode&&(e.mode=e.mode|448);case"File":case"OldFile":case"ContiguousFile":case"Link":case"SymbolicLink":return this[Kx](e);case"CharacterDevice":case"BlockDevice":case"FIFO":return this[Q4](e)}}[pi](e,r){e.name==="CwdError"?this.emit("error",e):(this.warn("TAR_ENTRY_ERROR",e,{entry:r}),this[$c](),r.resume())}[_c](e,r,i){Ox(e,{uid:this.uid,gid:this.gid,processUid:this.processUid,processGid:this.processGid,umask:this.processUmask,preserve:this.preservePaths,unlink:this.unlink,cache:this.dirCache,cwd:this.cwd,mode:r},i)}[Ef](e){return this.forceChown||this.preserveOwner&&(typeof e.uid=="number"&&e.uid!==this.processUid||typeof e.gid=="number"&&e.gid!==this.processGid)||typeof this.uid=="number"&&this.uid!==this.processUid||typeof this.gid=="number"&&this.gid!==this.processGid}[yf](e){return P4(this.uid,e.uid,this.processUid)}[Bf](e){return P4(this.gid,e.gid,this.processGid)}[Ux](e,r){let i=e.mode&4095||this.fmode,n=new iDe.WriteStream(e.absolute,{flags:x4(e.size),mode:i,autoClose:!1});n.on("error",l=>this[pi](l,e));let s=1,o=l=>{if(l)return this[pi](l,e);--s==0&&Dt.close(n.fd,c=>{r(),c?this[pi](c,e):this[$c]()})};n.on("finish",l=>{let c=e.absolute,u=n.fd;if(e.mtime&&!this.noMtime){s++;let g=e.atime||new Date,h=e.mtime;Dt.futimes(u,g,h,f=>f?Dt.utimes(c,g,h,p=>o(p&&f)):o())}if(this[Ef](e)){s++;let g=this[yf](e),h=this[Bf](e);Dt.fchown(u,g,h,f=>f?Dt.chown(c,g,h,p=>o(p&&f)):o())}o()});let a=this.transform&&this.transform(e)||e;a!==e&&(a.on("error",l=>this[pi](l,e)),e.pipe(a)),a.pipe(n)}[Hx](e,r){let i=e.mode&4095||this.dmode;this[_c](e.absolute,i,n=>{if(n)return r(),this[pi](n,e);let s=1,o=a=>{--s==0&&(r(),this[$c](),e.resume())};e.mtime&&!this.noMtime&&(s++,Dt.utimes(e.absolute,e.atime||new Date,e.mtime,o)),this[Ef](e)&&(s++,Dt.chown(e.absolute,this[yf](e),this[Bf](e),o)),o()})}[Q4](e){e.unsupported=!0,this.warn("TAR_ENTRY_UNSUPPORTED",`unsupported entry type: ${e.type}`,{entry:e}),e.resume()}[B4](e,r){this[OE](e,e.linkpath,"symlink",r)}[w4](e,r){this[OE](e,Ao.resolve(this.cwd,e.linkpath),"link",r)}[D4](){this[KE]++}[$c](){this[KE]--,this[Gx]()}[jx](e){this[$c](),e.resume()}[Tx](e,r){return e.type==="File"&&!this.unlink&&r.isFile()&&r.nlink<=1&&process.platform!=="win32"}[Kx](e){this[D4]();let r=[e.path];e.linkpath&&r.push(e.linkpath),this.reservations.reserve(r,i=>this[y4](e,i))}[y4](e,r){this[_c](Ao.dirname(e.absolute),this.dmode,i=>{if(i)return r(),this[pi](i,e);Dt.lstat(e.absolute,(n,s)=>{s&&(this.keep||this.newer&&s.mtime>e.mtime)?(this[jx](e),r()):n||this[Tx](e,s)?this[lo](null,e,r):s.isDirectory()?e.type==="Directory"?!e.mode||(s.mode&4095)===e.mode?this[lo](null,e,r):Dt.chmod(e.absolute,e.mode,o=>this[lo](o,e,r)):Dt.rmdir(e.absolute,o=>this[lo](o,e,r)):sDe(e.absolute,o=>this[lo](o,e,r))})})}[lo](e,r,i){if(e)return this[pi](e,r);switch(r.type){case"File":case"OldFile":case"ContiguousFile":return this[Ux](r,i);case"Link":return this[w4](r,i);case"SymbolicLink":return this[B4](r,i);case"Directory":case"GNUDumpDir":return this[Hx](r,i)}}[OE](e,r,i,n){Dt[i](r,e.absolute,s=>{if(s)return this[pi](s,e);n(),this[$c](),e.resume()})}},k4=class extends UE{constructor(e){super(e)}[Kx](e){let r=this[_c](Ao.dirname(e.absolute),this.dmode,TE);if(r)return this[pi](r,e);try{let i=Dt.lstatSync(e.absolute);if(this.keep||this.newer&&i.mtime>e.mtime)return this[jx](e);if(this[Tx](e,i))return this[lo](null,e,TE);try{return i.isDirectory()?e.type==="Directory"?e.mode&&(i.mode&4095)!==e.mode&&Dt.chmodSync(e.absolute,e.mode):Dt.rmdirSync(e.absolute):oDe(e.absolute),this[lo](null,e,TE)}catch(n){return this[pi](n,e)}}catch(i){return this[lo](null,e,TE)}}[Ux](e,r){let i=e.mode&4095||this.fmode,n=l=>{let c;try{Dt.closeSync(o)}catch(u){c=u}(l||c)&&this[pi](l||c,e)},s,o;try{o=Dt.openSync(e.absolute,x4(e.size),i)}catch(l){return n(l)}let a=this.transform&&this.transform(e)||e;a!==e&&(a.on("error",l=>this[pi](l,e)),e.pipe(a)),a.on("data",l=>{try{Dt.writeSync(o,l,0,l.length)}catch(c){n(c)}}),a.on("end",l=>{let c=null;if(e.mtime&&!this.noMtime){let u=e.atime||new Date,g=e.mtime;try{Dt.futimesSync(o,u,g)}catch(h){try{Dt.utimesSync(e.absolute,u,g)}catch(f){c=h}}}if(this[Ef](e)){let u=this[yf](e),g=this[Bf](e);try{Dt.fchownSync(o,u,g)}catch(h){try{Dt.chownSync(e.absolute,u,g)}catch(f){c=c||h}}}n(c)})}[Hx](e,r){let i=e.mode&4095||this.dmode,n=this[_c](e.absolute,i);if(n)return this[pi](n,e);if(e.mtime&&!this.noMtime)try{Dt.utimesSync(e.absolute,e.atime||new Date,e.mtime)}catch(s){}if(this[Ef](e))try{Dt.chownSync(e.absolute,this[yf](e),this[Bf](e))}catch(s){}e.resume()}[_c](e,r){try{return Ox.sync(e,{uid:this.uid,gid:this.gid,processUid:this.processUid,processGid:this.processGid,umask:this.processUmask,preserve:this.preservePaths,unlink:this.unlink,cache:this.dirCache,cwd:this.cwd,mode:r})}catch(i){return i}}[OE](e,r,i,n){try{Dt[i+"Sync"](r,e.absolute),e.resume()}catch(s){return this[pi](s,e)}}};UE.Sync=k4;m4.exports=UE});var N4=C((m$e,v4)=>{"use strict";var aDe=Nc(),HE=qx(),F4=require("fs"),R4=Wc(),L4=require("path"),C$e=v4.exports=(t,e,r)=>{typeof t=="function"?(r=t,e=null,t={}):Array.isArray(t)&&(e=t,t={}),typeof e=="function"&&(r=e,e=null),e?e=Array.from(e):e=[];let i=aDe(t);if(i.sync&&typeof r=="function")throw new TypeError("callback not supported for sync tar functions");if(!i.file&&typeof r=="function")throw new TypeError("callback only supported with file option");return e.length&&ADe(i,e),i.file&&i.sync?lDe(i):i.file?cDe(i,r):i.sync?uDe(i):gDe(i)},ADe=(t,e)=>{let r=new Map(e.map(s=>[s.replace(/\/+$/,""),!0])),i=t.filter,n=(s,o)=>{let a=o||L4.parse(s).root||".",l=s===a?!1:r.has(s)?r.get(s):n(L4.dirname(s),a);return r.set(s,l),l};t.filter=i?(s,o)=>i(s,o)&&n(s.replace(/\/+$/,"")):s=>n(s.replace(/\/+$/,""))},lDe=t=>{let e=new HE.Sync(t),r=t.file,i=!0,n,s=F4.statSync(r),o=t.maxReadSize||16*1024*1024;new R4.ReadStreamSync(r,{readSize:o,size:s.size}).pipe(e)},cDe=(t,e)=>{let r=new HE(t),i=t.maxReadSize||16*1024*1024,n=t.file,s=new Promise((o,a)=>{r.on("error",a),r.on("close",o),F4.stat(n,(l,c)=>{if(l)a(l);else{let u=new R4.ReadStream(n,{readSize:i,size:c.size});u.on("error",a),u.pipe(r)}})});return e?s.then(e,e):s},uDe=t=>new HE.Sync(t),gDe=t=>new HE(t)});var M4=C(Br=>{"use strict";Br.c=Br.create=E8();Br.r=Br.replace=xx();Br.t=Br.list=FE();Br.u=Br.update=P8();Br.x=Br.extract=N4();Br.Pack=EE();Br.Unpack=qx();Br.Parse=mf();Br.ReadEntry=gf();Br.WriteEntry=sx();Br.Header=Tc();Br.Pax=oE();Br.types=uf()});var K4=C((E$e,Jx)=>{"use strict";var hDe=Object.prototype.hasOwnProperty,di="~";function wf(){}Object.create&&(wf.prototype=Object.create(null),new wf().__proto__||(di=!1));function fDe(t,e,r){this.fn=t,this.context=e,this.once=r||!1}function O4(t,e,r,i,n){if(typeof r!="function")throw new TypeError("The listener must be a function");var s=new fDe(r,i||t,n),o=di?di+e:e;return t._events[o]?t._events[o].fn?t._events[o]=[t._events[o],s]:t._events[o].push(s):(t._events[o]=s,t._eventsCount++),t}function YE(t,e){--t._eventsCount==0?t._events=new wf:delete t._events[e]}function _r(){this._events=new wf,this._eventsCount=0}_r.prototype.eventNames=function(){var e=[],r,i;if(this._eventsCount===0)return e;for(i in r=this._events)hDe.call(r,i)&&e.push(di?i.slice(1):i);return Object.getOwnPropertySymbols?e.concat(Object.getOwnPropertySymbols(r)):e};_r.prototype.listeners=function(e){var r=di?di+e:e,i=this._events[r];if(!i)return[];if(i.fn)return[i.fn];for(var n=0,s=i.length,o=new Array(s);n{"use strict";T4.exports=(t,e)=>(e=e||(()=>{}),t.then(r=>new Promise(i=>{i(e())}).then(()=>r),r=>new Promise(i=>{i(e())}).then(()=>{throw r})))});var Y4=C((B$e,GE)=>{"use strict";var pDe=U4(),Wx=class extends Error{constructor(e){super(e);this.name="TimeoutError"}},H4=(t,e,r)=>new Promise((i,n)=>{if(typeof e!="number"||e<0)throw new TypeError("Expected `milliseconds` to be a positive number");if(e===Infinity){i(t);return}let s=setTimeout(()=>{if(typeof r=="function"){try{i(r())}catch(l){n(l)}return}let o=typeof r=="string"?r:`Promise timed out after ${e} milliseconds`,a=r instanceof Error?r:new Wx(o);typeof t.cancel=="function"&&t.cancel(),n(a)},e);pDe(t.then(i,n),()=>{clearTimeout(s)})});GE.exports=H4;GE.exports.default=H4;GE.exports.TimeoutError=Wx});var G4=C(zx=>{"use strict";Object.defineProperty(zx,"__esModule",{value:!0});function dDe(t,e,r){let i=0,n=t.length;for(;n>0;){let s=n/2|0,o=i+s;r(t[o],e)<=0?(i=++o,n-=s+1):n=s}return i}zx.default=dDe});var q4=C(Vx=>{"use strict";Object.defineProperty(Vx,"__esModule",{value:!0});var CDe=G4(),j4=class{constructor(){this._queue=[]}enqueue(e,r){r=Object.assign({priority:0},r);let i={priority:r.priority,run:e};if(this.size&&this._queue[this.size-1].priority>=r.priority){this._queue.push(i);return}let n=CDe.default(this._queue,i,(s,o)=>o.priority-s.priority);this._queue.splice(n,0,i)}dequeue(){let e=this._queue.shift();return e==null?void 0:e.run}filter(e){return this._queue.filter(r=>r.priority===e.priority).map(r=>r.run)}get size(){return this._queue.length}};Vx.default=j4});var z4=C(Xx=>{"use strict";Object.defineProperty(Xx,"__esModule",{value:!0});var mDe=K4(),J4=Y4(),IDe=q4(),jE=()=>{},EDe=new J4.TimeoutError,W4=class extends mDe{constructor(e){var r,i,n,s;super();if(this._intervalCount=0,this._intervalEnd=0,this._pendingCount=0,this._resolveEmpty=jE,this._resolveIdle=jE,e=Object.assign({carryoverConcurrencyCount:!1,intervalCap:Infinity,interval:0,concurrency:Infinity,autoStart:!0,queueClass:IDe.default},e),!(typeof e.intervalCap=="number"&&e.intervalCap>=1))throw new TypeError(`Expected \`intervalCap\` to be a number from 1 and up, got \`${(i=(r=e.intervalCap)===null||r===void 0?void 0:r.toString())!==null&&i!==void 0?i:""}\` (${typeof e.intervalCap})`);if(e.interval===void 0||!(Number.isFinite(e.interval)&&e.interval>=0))throw new TypeError(`Expected \`interval\` to be a finite number >= 0, got \`${(s=(n=e.interval)===null||n===void 0?void 0:n.toString())!==null&&s!==void 0?s:""}\` (${typeof e.interval})`);this._carryoverConcurrencyCount=e.carryoverConcurrencyCount,this._isIntervalIgnored=e.intervalCap===Infinity||e.interval===0,this._intervalCap=e.intervalCap,this._interval=e.interval,this._queue=new e.queueClass,this._queueClass=e.queueClass,this.concurrency=e.concurrency,this._timeout=e.timeout,this._throwOnTimeout=e.throwOnTimeout===!0,this._isPaused=e.autoStart===!1}get _doesIntervalAllowAnother(){return this._isIntervalIgnored||this._intervalCount{this._onResumeInterval()},r)),!0}return!1}_tryToStartAnother(){if(this._queue.size===0)return this._intervalId&&clearInterval(this._intervalId),this._intervalId=void 0,this._resolvePromises(),!1;if(!this._isPaused){let e=!this._isIntervalPaused();if(this._doesIntervalAllowAnother&&this._doesConcurrentAllowAnother){let r=this._queue.dequeue();return r?(this.emit("active"),r(),e&&this._initializeIntervalIfNeeded(),!0):!1}}return!1}_initializeIntervalIfNeeded(){this._isIntervalIgnored||this._intervalId!==void 0||(this._intervalId=setInterval(()=>{this._onInterval()},this._interval),this._intervalEnd=Date.now()+this._interval)}_onInterval(){this._intervalCount===0&&this._pendingCount===0&&this._intervalId&&(clearInterval(this._intervalId),this._intervalId=void 0),this._intervalCount=this._carryoverConcurrencyCount?this._pendingCount:0,this._processQueue()}_processQueue(){for(;this._tryToStartAnother(););}get concurrency(){return this._concurrency}set concurrency(e){if(!(typeof e=="number"&&e>=1))throw new TypeError(`Expected \`concurrency\` to be a number from 1 and up, got \`${e}\` (${typeof e})`);this._concurrency=e,this._processQueue()}async add(e,r={}){return new Promise((i,n)=>{let s=async()=>{this._pendingCount++,this._intervalCount++;try{let o=this._timeout===void 0&&r.timeout===void 0?e():J4.default(Promise.resolve(e()),r.timeout===void 0?this._timeout:r.timeout,()=>{(r.throwOnTimeout===void 0?this._throwOnTimeout:r.throwOnTimeout)&&n(EDe)});i(await o)}catch(o){n(o)}this._next()};this._queue.enqueue(s,r),this._tryToStartAnother(),this.emit("add")})}async addAll(e,r){return Promise.all(e.map(async i=>this.add(i,r)))}start(){return this._isPaused?(this._isPaused=!1,this._processQueue(),this):this}pause(){this._isPaused=!0}clear(){this._queue=new this._queueClass}async onEmpty(){if(this._queue.size!==0)return new Promise(e=>{let r=this._resolveEmpty;this._resolveEmpty=()=>{r(),e()}})}async onIdle(){if(!(this._pendingCount===0&&this._queue.size===0))return new Promise(e=>{let r=this._resolveIdle;this._resolveIdle=()=>{r(),e()}})}get size(){return this._queue.size}sizeBy(e){return this._queue.filter(e).length}get pending(){return this._pendingCount}get isPaused(){return this._isPaused}get timeout(){return this._timeout}set timeout(e){this._timeout=e}};Xx.default=W4});var $4=C((S$e,_4)=>{var _x;_4.exports.getContent=()=>(typeof _x=="undefined"&&(_x=require("zlib").brotliDecompressSync(Buffer.from("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","base64")).toString()),_x)});var sz=C(($x,nz)=>{(function(t,e){typeof $x=="object"?nz.exports=e():typeof define=="function"&&define.amd?define(e):t.treeify=e()})($x,function(){function t(n,s){var o=s?"\u2514":"\u251C";return n?o+="\u2500 ":o+="\u2500\u2500\u2510",o}function e(n,s){var o=[];for(var a in n)!n.hasOwnProperty(a)||s&&typeof n[a]=="function"||o.push(a);return o}function r(n,s,o,a,l,c,u){var g="",h=0,f,p,m=a.slice(0);if(m.push([s,o])&&a.length>0&&(a.forEach(function(y,w){w>0&&(g+=(y[1]?" ":"\u2502")+" "),!p&&y[0]===s&&(p=!0)}),g+=t(n,o)+n,l&&(typeof s!="object"||s instanceof Date)&&(g+=": "+s),p&&(g+=" (circular ref.)"),u(g)),!p&&typeof s=="object"){var I=e(s,c);I.forEach(function(y){f=++h===I.length,r(y,s[y],f,m,l,c,u)})}}var i={};return i.asLines=function(n,s,o,a){var l=typeof o!="function"?o:!1;r(".",n,!1,[],s,l,a||o)},i.asTree=function(n,s,o){var a="";return r(".",n,!1,[],s,o,function(l){a+=l+` +`}),a},i})});var uz=C((X$e,rP)=>{"use strict";var xDe=t=>{let e=!1,r=!1,i=!1;for(let n=0;n{if(!(typeof t=="string"||Array.isArray(t)))throw new TypeError("Expected the input to be `string | string[]`");e=Object.assign({pascalCase:!1},e);let r=n=>e.pascalCase?n.charAt(0).toUpperCase()+n.slice(1):n;return Array.isArray(t)?t=t.map(n=>n.trim()).filter(n=>n.length).join("-"):t=t.trim(),t.length===0?"":t.length===1?e.pascalCase?t.toUpperCase():t.toLowerCase():(t!==t.toLowerCase()&&(t=xDe(t)),t=t.replace(/^[_.\- ]+/,"").toLowerCase().replace(/[_.\- ]+(\w|$)/g,(n,s)=>s.toUpperCase()).replace(/\d+(\w|$)/g,n=>n.toUpperCase()),r(t))};rP.exports=cz;rP.exports.default=cz});var go=C(hP=>{"use strict";Object.defineProperty(hP,"__esModule",{value:!0});hP.default=mz;function mz(){}mz.prototype={diff:function(e,r){var i=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},n=i.callback;typeof i=="function"&&(n=i,i={}),this.options=i;var s=this;function o(m){return n?(setTimeout(function(){n(void 0,m)},0),!0):m}e=this.castInput(e),r=this.castInput(r),e=this.removeEmpty(this.tokenize(e)),r=this.removeEmpty(this.tokenize(r));var a=r.length,l=e.length,c=1,u=a+l,g=[{newPos:-1,components:[]}],h=this.extractCommon(g[0],r,e,0);if(g[0].newPos+1>=a&&h+1>=l)return o([{value:this.join(r),count:r.length}]);function f(){for(var m=-1*c;m<=c;m+=2){var I=void 0,y=g[m-1],w=g[m+1],x=(w?w.newPos:0)-m;y&&(g[m-1]=void 0);var F=y&&y.newPos+1=a&&x+1>=l)return o(LDe(s,I.components,r,e,s.useLongestToken));g[m]=I}c++}if(n)(function m(){setTimeout(function(){if(c>u)return n();f()||m()},0)})();else for(;c<=u;){var p=f();if(p)return p}},pushComponent:function(e,r,i){var n=e[e.length-1];n&&n.added===r&&n.removed===i?e[e.length-1]={count:n.count+1,added:r,removed:i}:e.push({count:1,added:r,removed:i})},extractCommon:function(e,r,i,n){for(var s=r.length,o=i.length,a=e.newPos,l=a-n,c=0;a+1f.length?m:f}),c.value=t.join(u)}else c.value=t.join(r.slice(a,a+c.count));a+=c.count,c.added||(l+=c.count)}}var h=e[o-1];return o>1&&typeof h.value=="string"&&(h.added||h.removed)&&t.equals("",h.value)&&(e[o-2].value+=h.value,e.pop()),e}function NDe(t){return{newPos:t.newPos,components:t.components.slice(0)}}});var Ez=C(Df=>{"use strict";Object.defineProperty(Df,"__esModule",{value:!0});Df.diffChars=MDe;Df.characterDiff=void 0;var KDe=ODe(go());function ODe(t){return t&&t.__esModule?t:{default:t}}var Iz=new KDe.default;Df.characterDiff=Iz;function MDe(t,e,r){return Iz.diff(t,e,r)}});var pP=C(fP=>{"use strict";Object.defineProperty(fP,"__esModule",{value:!0});fP.generateOptions=TDe;function TDe(t,e){if(typeof t=="function")e.callback=t;else if(t)for(var r in t)t.hasOwnProperty(r)&&(e[r]=t[r]);return e}});var wz=C(iu=>{"use strict";Object.defineProperty(iu,"__esModule",{value:!0});iu.diffWords=UDe;iu.diffWordsWithSpace=HDe;iu.wordDiff=void 0;var GDe=YDe(go()),jDe=pP();function YDe(t){return t&&t.__esModule?t:{default:t}}var yz=/^[A-Za-z\xC0-\u02C6\u02C8-\u02D7\u02DE-\u02FF\u1E00-\u1EFF]+$/,Bz=/\S/,Sf=new GDe.default;iu.wordDiff=Sf;Sf.equals=function(t,e){return this.options.ignoreCase&&(t=t.toLowerCase(),e=e.toLowerCase()),t===e||this.options.ignoreWhitespace&&!Bz.test(t)&&!Bz.test(e)};Sf.tokenize=function(t){for(var e=t.split(/(\s+|[()[\]{}'"]|\b)/),r=0;r{"use strict";Object.defineProperty(nu,"__esModule",{value:!0});nu.diffLines=qDe;nu.diffTrimmedLines=JDe;nu.lineDiff=void 0;var zDe=WDe(go()),VDe=pP();function WDe(t){return t&&t.__esModule?t:{default:t}}var XE=new zDe.default;nu.lineDiff=XE;XE.tokenize=function(t){var e=[],r=t.split(/(\n|\r\n)/);r[r.length-1]||r.pop();for(var i=0;i{"use strict";Object.defineProperty(xf,"__esModule",{value:!0});xf.diffSentences=XDe;xf.sentenceDiff=void 0;var _De=ZDe(go());function ZDe(t){return t&&t.__esModule?t:{default:t}}var dP=new _De.default;xf.sentenceDiff=dP;dP.tokenize=function(t){return t.split(/(\S.+?[.!?])(?=\s+|$)/)};function XDe(t,e,r){return dP.diff(t,e,r)}});var bz=C(Pf=>{"use strict";Object.defineProperty(Pf,"__esModule",{value:!0});Pf.diffCss=$De;Pf.cssDiff=void 0;var tSe=eSe(go());function eSe(t){return t&&t.__esModule?t:{default:t}}var CP=new tSe.default;Pf.cssDiff=CP;CP.tokenize=function(t){return t.split(/([{}:;,]|\s+)/)};function $De(t,e,r){return CP.diff(t,e,r)}});var Sz=C(su=>{"use strict";Object.defineProperty(su,"__esModule",{value:!0});su.diffJson=rSe;su.canonicalize=_E;su.jsonDiff=void 0;var Dz=iSe(go()),nSe=ZE();function iSe(t){return t&&t.__esModule?t:{default:t}}function $E(t){return typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?$E=function(r){return typeof r}:$E=function(r){return r&&typeof Symbol=="function"&&r.constructor===Symbol&&r!==Symbol.prototype?"symbol":typeof r},$E(t)}var sSe=Object.prototype.toString,_A=new Dz.default;su.jsonDiff=_A;_A.useLongestToken=!0;_A.tokenize=nSe.lineDiff.tokenize;_A.castInput=function(t){var e=this.options,r=e.undefinedReplacement,i=e.stringifyReplacer,n=i===void 0?function(s,o){return typeof o=="undefined"?r:o}:i;return typeof t=="string"?t:JSON.stringify(_E(t,null,null,n),n," ")};_A.equals=function(t,e){return Dz.default.prototype.equals.call(_A,t.replace(/,([\r\n])/g,"$1"),e.replace(/,([\r\n])/g,"$1"))};function rSe(t,e,r){return _A.diff(t,e,r)}function _E(t,e,r,i,n){e=e||[],r=r||[],i&&(t=i(n,t));var s;for(s=0;s{"use strict";Object.defineProperty(kf,"__esModule",{value:!0});kf.diffArrays=oSe;kf.arrayDiff=void 0;var ASe=aSe(go());function aSe(t){return t&&t.__esModule?t:{default:t}}var vf=new ASe.default;kf.arrayDiff=vf;vf.tokenize=function(t){return t.slice()};vf.join=vf.removeEmpty=function(t){return t};function oSe(t,e,r){return vf.diff(t,e,r)}});var ey=C(mP=>{"use strict";Object.defineProperty(mP,"__esModule",{value:!0});mP.parsePatch=lSe;function lSe(t){var e=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},r=t.split(/\r\n|[\n\v\f\r\x85]/),i=t.match(/\r\n|[\n\v\f\r\x85]/g)||[],n=[],s=0;function o(){var c={};for(n.push(c);s{"use strict";Object.defineProperty(IP,"__esModule",{value:!0});IP.default=cSe;function cSe(t,e,r){var i=!0,n=!1,s=!1,o=1;return function a(){if(i&&!s){if(n?o++:i=!1,t+o<=r)return o;s=!0}if(!n)return s||(i=!0),e<=t-o?-o++:(n=!0,a())}}});var Fz=C(ty=>{"use strict";Object.defineProperty(ty,"__esModule",{value:!0});ty.applyPatch=kz;ty.applyPatches=uSe;var vz=ey(),hSe=gSe(Pz());function gSe(t){return t&&t.__esModule?t:{default:t}}function kz(t,e){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};if(typeof e=="string"&&(e=(0,vz.parsePatch)(e)),Array.isArray(e)){if(e.length>1)throw new Error("applyPatch only works with a single input.");e=e[0]}var i=t.split(/\r\n|[\n\v\f\r\x85]/),n=t.match(/\r\n|[\n\v\f\r\x85]/g)||[],s=e.hunks,o=r.compareLine||function(H,R,ke,Le){return R===Le},a=0,l=r.fuzzFactor||0,c=0,u=0,g,h;function f(H,R){for(var ke=0;ke0?Le[0]:" ",Ke=Le.length>0?Le.substr(1):Le;if(qe===" "||qe==="-"){if(!o(R+1,i[R],qe,Ke)&&(a++,a>l))return!1;R++}}return!0}for(var p=0;p0?oe[0]:" ",A=oe.length>0?oe.substr(1):oe,W=K.linedelimiters[J];if(T===" ")v++;else if(T==="-")i.splice(v,1),n.splice(v,1);else if(T==="+")i.splice(v,0,A),n.splice(v,0,W),v++;else if(T==="\\"){var ee=K.lines[J-1]?K.lines[J-1][0]:null;ee==="+"?g=!0:ee==="-"&&(h=!0)}}}if(g)for(;!i[i.length-1];)i.pop(),n.pop();else h&&(i.push(""),n.push(` +`));for(var re=0;re{"use strict";Object.defineProperty(Ff,"__esModule",{value:!0});Ff.structuredPatch=Rz;Ff.createTwoFilesPatch=Lz;Ff.createPatch=fSe;var pSe=ZE();function EP(t){return mSe(t)||CSe(t)||dSe()}function dSe(){throw new TypeError("Invalid attempt to spread non-iterable instance")}function CSe(t){if(Symbol.iterator in Object(t)||Object.prototype.toString.call(t)==="[object Arguments]")return Array.from(t)}function mSe(t){if(Array.isArray(t)){for(var e=0,r=new Array(t.length);e0?l(K.lines.slice(-o.context)):[],u-=h.length,g-=h.length)}(N=h).push.apply(N,EP(F.map(function(re){return(x.added?"+":"-")+re}))),x.added?p+=F.length:f+=F.length}else{if(u)if(F.length<=o.context*2&&w=a.length-2&&F.length<=o.context){var A=/\n$/.test(r),W=/\n$/.test(i),ee=F.length==0&&h.length>T.oldLines;!A&&ee&&h.splice(T.oldLines,0,"\\ No newline at end of file"),(!A&&!ee||!W)&&h.push("\\ No newline at end of file")}c.push(T),u=0,g=0,h=[]}f+=F.length,p+=F.length}},I=0;I{"use strict";Object.defineProperty(aE,"__esModule",{value:!0});aE.arrayEqual=xbe;aE.arrayStartsWith=nz;function xbe(t,e){return t.length!==e.length?!1:nz(t,e)}function nz(t,e){if(e.length>t.length)return!1;for(var r=0;r{"use strict";Object.defineProperty(AE,"__esModule",{value:!0});AE.calcLineCount=oz;AE.merge=kbe;var vbe=uP(),Fbe=sE(),gP=sz();function kc(t){return Mbe(t)||Lbe(t)||Rbe()}function Rbe(){throw new TypeError("Invalid attempt to spread non-iterable instance")}function Lbe(t){if(Symbol.iterator in Object(t)||Object.prototype.toString.call(t)==="[object Arguments]")return Array.from(t)}function Mbe(t){if(Array.isArray(t)){for(var e=0,r=new Array(t.length);e{"use strict";Object.defineProperty(pP,"__esModule",{value:!0});pP.convertChangesToDMP=Kbe;function Kbe(t){for(var e=[],r,i,n=0;n{"use strict";Object.defineProperty(dP,"__esModule",{value:!0});dP.convertChangesToXML=Ube;function Ube(t){for(var e=[],r=0;r"):i.removed&&e.push(""),e.push(Hbe(i.value)),i.added?e.push(""):i.removed&&e.push("")}return e.join("")}function Hbe(t){var e=t;return e=e.replace(/&/g,"&"),e=e.replace(//g,">"),e=e.replace(/"/g,"""),e}});var wz=C(Xt=>{"use strict";Object.defineProperty(Xt,"__esModule",{value:!0});Object.defineProperty(Xt,"Diff",{enumerable:!0,get:function(){return Ybe.default}});Object.defineProperty(Xt,"diffChars",{enumerable:!0,get:function(){return jbe.diffChars}});Object.defineProperty(Xt,"diffWords",{enumerable:!0,get:function(){return Iz.diffWords}});Object.defineProperty(Xt,"diffWordsWithSpace",{enumerable:!0,get:function(){return Iz.diffWordsWithSpace}});Object.defineProperty(Xt,"diffLines",{enumerable:!0,get:function(){return Ez.diffLines}});Object.defineProperty(Xt,"diffTrimmedLines",{enumerable:!0,get:function(){return Ez.diffTrimmedLines}});Object.defineProperty(Xt,"diffSentences",{enumerable:!0,get:function(){return Gbe.diffSentences}});Object.defineProperty(Xt,"diffCss",{enumerable:!0,get:function(){return qbe.diffCss}});Object.defineProperty(Xt,"diffJson",{enumerable:!0,get:function(){return yz.diffJson}});Object.defineProperty(Xt,"canonicalize",{enumerable:!0,get:function(){return yz.canonicalize}});Object.defineProperty(Xt,"diffArrays",{enumerable:!0,get:function(){return Jbe.diffArrays}});Object.defineProperty(Xt,"applyPatch",{enumerable:!0,get:function(){return Bz.applyPatch}});Object.defineProperty(Xt,"applyPatches",{enumerable:!0,get:function(){return Bz.applyPatches}});Object.defineProperty(Xt,"parsePatch",{enumerable:!0,get:function(){return Wbe.parsePatch}});Object.defineProperty(Xt,"merge",{enumerable:!0,get:function(){return zbe.merge}});Object.defineProperty(Xt,"structuredPatch",{enumerable:!0,get:function(){return CP.structuredPatch}});Object.defineProperty(Xt,"createTwoFilesPatch",{enumerable:!0,get:function(){return CP.createTwoFilesPatch}});Object.defineProperty(Xt,"createPatch",{enumerable:!0,get:function(){return CP.createPatch}});Object.defineProperty(Xt,"convertChangesToDMP",{enumerable:!0,get:function(){return Xbe.convertChangesToDMP}});Object.defineProperty(Xt,"convertChangesToXML",{enumerable:!0,get:function(){return Vbe.convertChangesToXML}});var Ybe=Zbe(Xs()),jbe=j8(),Iz=J8(),Ez=rE(),Gbe=W8(),qbe=z8(),yz=V8(),Jbe=Z8(),Bz=tz(),Wbe=sE(),zbe=dz(),CP=uP(),Xbe=Cz(),Vbe=mz();function Zbe(t){return t&&t.__esModule?t:{default:t}}});var cE=C((i$e,Qz)=>{var _be=an(),$be=Vm(),eDe=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,tDe=/^\w*$/;function rDe(t,e){if(_be(t))return!1;var r=typeof t;return r=="number"||r=="symbol"||r=="boolean"||t==null||$be(t)?!0:tDe.test(t)||!eDe.test(t)||e!=null&&t in Object(e)}Qz.exports=rDe});var Fn=C((n$e,bz)=>{function iDe(t){var e=typeof t;return t!=null&&(e=="object"||e=="function")}bz.exports=iDe});var uE=C((s$e,Dz)=>{var nDe=fA(),sDe=Fn(),oDe="[object AsyncFunction]",aDe="[object Function]",ADe="[object GeneratorFunction]",lDe="[object Proxy]";function cDe(t){if(!sDe(t))return!1;var e=nDe(t);return e==aDe||e==ADe||e==oDe||e==lDe}Dz.exports=cDe});var Pz=C((o$e,Sz)=>{var uDe=xn(),gDe=uDe["__core-js_shared__"];Sz.exports=gDe});var vz=C((a$e,xz)=>{var mP=Pz(),kz=function(){var t=/[^.]+$/.exec(mP&&mP.keys&&mP.keys.IE_PROTO||"");return t?"Symbol(src)_1."+t:""}();function hDe(t){return!!kz&&kz in t}xz.exports=hDe});var IP=C((A$e,Fz)=>{var fDe=Function.prototype,pDe=fDe.toString;function dDe(t){if(t!=null){try{return pDe.call(t)}catch(e){}try{return t+""}catch(e){}}return""}Fz.exports=dDe});var Lz=C((l$e,Rz)=>{var CDe=uE(),mDe=vz(),IDe=Fn(),EDe=IP(),yDe=/[\\^$.*+?()[\]{}|]/g,BDe=/^\[object .+?Constructor\]$/,wDe=Function.prototype,QDe=Object.prototype,bDe=wDe.toString,DDe=QDe.hasOwnProperty,SDe=RegExp("^"+bDe.call(DDe).replace(yDe,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");function PDe(t){if(!IDe(t)||mDe(t))return!1;var e=CDe(t)?SDe:BDe;return e.test(EDe(t))}Rz.exports=PDe});var Nz=C((c$e,Mz)=>{function xDe(t,e){return t==null?void 0:t[e]}Mz.exports=xDe});var $o=C((u$e,Oz)=>{var kDe=Lz(),vDe=Nz();function FDe(t,e){var r=vDe(t,e);return kDe(r)?r:void 0}Oz.exports=FDe});var Zh=C((g$e,Tz)=>{var RDe=$o(),LDe=RDe(Object,"create");Tz.exports=LDe});var Hz=C((h$e,Kz)=>{var Uz=Zh();function MDe(){this.__data__=Uz?Uz(null):{},this.size=0}Kz.exports=MDe});var jz=C((f$e,Yz)=>{function NDe(t){var e=this.has(t)&&delete this.__data__[t];return this.size-=e?1:0,e}Yz.exports=NDe});var qz=C((p$e,Gz)=>{var ODe=Zh(),TDe="__lodash_hash_undefined__",KDe=Object.prototype,UDe=KDe.hasOwnProperty;function HDe(t){var e=this.__data__;if(ODe){var r=e[t];return r===TDe?void 0:r}return UDe.call(e,t)?e[t]:void 0}Gz.exports=HDe});var Wz=C((d$e,Jz)=>{var YDe=Zh(),jDe=Object.prototype,GDe=jDe.hasOwnProperty;function qDe(t){var e=this.__data__;return YDe?e[t]!==void 0:GDe.call(e,t)}Jz.exports=qDe});var Xz=C((C$e,zz)=>{var JDe=Zh(),WDe="__lodash_hash_undefined__";function zDe(t,e){var r=this.__data__;return this.size+=this.has(t)?0:1,r[t]=JDe&&e===void 0?WDe:e,this}zz.exports=zDe});var Zz=C((m$e,Vz)=>{var XDe=Hz(),VDe=jz(),ZDe=qz(),_De=Wz(),$De=Xz();function vc(t){var e=-1,r=t==null?0:t.length;for(this.clear();++e{function eSe(){this.__data__=[],this.size=0}_z.exports=eSe});var Fc=C((E$e,e4)=>{function tSe(t,e){return t===e||t!==t&&e!==e}e4.exports=tSe});var _h=C((y$e,t4)=>{var rSe=Fc();function iSe(t,e){for(var r=t.length;r--;)if(rSe(t[r][0],e))return r;return-1}t4.exports=iSe});var i4=C((B$e,r4)=>{var nSe=_h(),sSe=Array.prototype,oSe=sSe.splice;function aSe(t){var e=this.__data__,r=nSe(e,t);if(r<0)return!1;var i=e.length-1;return r==i?e.pop():oSe.call(e,r,1),--this.size,!0}r4.exports=aSe});var s4=C((w$e,n4)=>{var ASe=_h();function lSe(t){var e=this.__data__,r=ASe(e,t);return r<0?void 0:e[r][1]}n4.exports=lSe});var a4=C((Q$e,o4)=>{var cSe=_h();function uSe(t){return cSe(this.__data__,t)>-1}o4.exports=uSe});var l4=C((b$e,A4)=>{var gSe=_h();function hSe(t,e){var r=this.__data__,i=gSe(r,t);return i<0?(++this.size,r.push([t,e])):r[i][1]=e,this}A4.exports=hSe});var $h=C((D$e,c4)=>{var fSe=$z(),pSe=i4(),dSe=s4(),CSe=a4(),mSe=l4();function Rc(t){var e=-1,r=t==null?0:t.length;for(this.clear();++e{var ISe=$o(),ESe=xn(),ySe=ISe(ESe,"Map");u4.exports=ySe});var f4=C((P$e,g4)=>{var h4=Zz(),BSe=$h(),wSe=gE();function QSe(){this.size=0,this.__data__={hash:new h4,map:new(wSe||BSe),string:new h4}}g4.exports=QSe});var d4=C((x$e,p4)=>{function bSe(t){var e=typeof t;return e=="string"||e=="number"||e=="symbol"||e=="boolean"?t!=="__proto__":t===null}p4.exports=bSe});var ef=C((k$e,C4)=>{var DSe=d4();function SSe(t,e){var r=t.__data__;return DSe(e)?r[typeof e=="string"?"string":"hash"]:r.map}C4.exports=SSe});var I4=C((v$e,m4)=>{var PSe=ef();function xSe(t){var e=PSe(this,t).delete(t);return this.size-=e?1:0,e}m4.exports=xSe});var y4=C((F$e,E4)=>{var kSe=ef();function vSe(t){return kSe(this,t).get(t)}E4.exports=vSe});var w4=C((R$e,B4)=>{var FSe=ef();function RSe(t){return FSe(this,t).has(t)}B4.exports=RSe});var b4=C((L$e,Q4)=>{var LSe=ef();function MSe(t,e){var r=LSe(this,t),i=r.size;return r.set(t,e),this.size+=r.size==i?0:1,this}Q4.exports=MSe});var hE=C((M$e,D4)=>{var NSe=f4(),OSe=I4(),TSe=y4(),KSe=w4(),USe=b4();function Lc(t){var e=-1,r=t==null?0:t.length;for(this.clear();++e{var P4=hE(),HSe="Expected a function";function EP(t,e){if(typeof t!="function"||e!=null&&typeof e!="function")throw new TypeError(HSe);var r=function(){var i=arguments,n=e?e.apply(this,i):i[0],s=r.cache;if(s.has(n))return s.get(n);var o=t.apply(this,i);return r.cache=s.set(n,o)||s,o};return r.cache=new(EP.Cache||P4),r}EP.Cache=P4;S4.exports=EP});var v4=C((O$e,k4)=>{var YSe=x4(),jSe=500;function GSe(t){var e=YSe(t,function(i){return r.size===jSe&&r.clear(),i}),r=e.cache;return e}k4.exports=GSe});var R4=C((T$e,F4)=>{var qSe=v4(),JSe=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,WSe=/\\(\\)?/g,zSe=qSe(function(t){var e=[];return t.charCodeAt(0)===46&&e.push(""),t.replace(JSe,function(r,i,n,s){e.push(n?s.replace(WSe,"$1"):i||r)}),e});F4.exports=zSe});var Mc=C((K$e,L4)=>{var XSe=an(),VSe=cE(),ZSe=R4(),_Se=rc();function $Se(t,e){return XSe(t)?t:VSe(t,e)?[t]:ZSe(_Se(t))}L4.exports=$Se});var RA=C((U$e,M4)=>{var ePe=Vm(),tPe=1/0;function rPe(t){if(typeof t=="string"||ePe(t))return t;var e=t+"";return e=="0"&&1/t==-tPe?"-0":e}M4.exports=rPe});var tf=C((H$e,N4)=>{var iPe=Mc(),nPe=RA();function sPe(t,e){e=iPe(e,t);for(var r=0,i=e.length;t!=null&&r{var oPe=$o(),aPe=function(){try{var t=oPe(Object,"defineProperty");return t({},"",{}),t}catch(e){}}();O4.exports=aPe});var Nc=C((j$e,T4)=>{var K4=yP();function APe(t,e,r){e=="__proto__"&&K4?K4(t,e,{configurable:!0,enumerable:!0,value:r,writable:!0}):t[e]=r}T4.exports=APe});var fE=C((G$e,U4)=>{var lPe=Nc(),cPe=Fc(),uPe=Object.prototype,gPe=uPe.hasOwnProperty;function hPe(t,e,r){var i=t[e];(!(gPe.call(t,e)&&cPe(i,r))||r===void 0&&!(e in t))&&lPe(t,e,r)}U4.exports=hPe});var rf=C((q$e,H4)=>{var fPe=9007199254740991,pPe=/^(?:0|[1-9]\d*)$/;function dPe(t,e){var r=typeof t;return e=e==null?fPe:e,!!e&&(r=="number"||r!="symbol"&&pPe.test(t))&&t>-1&&t%1==0&&t{var CPe=fE(),mPe=Mc(),IPe=rf(),j4=Fn(),EPe=RA();function yPe(t,e,r,i){if(!j4(t))return t;e=mPe(e,t);for(var n=-1,s=e.length,o=s-1,a=t;a!=null&&++n{var BPe=tf(),wPe=BP(),QPe=Mc();function bPe(t,e,r){for(var i=-1,n=e.length,s={};++i{function DPe(t,e){return t!=null&&e in Object(t)}J4.exports=DPe});var X4=C((X$e,z4)=>{var SPe=fA(),PPe=_n(),xPe="[object Arguments]";function kPe(t){return PPe(t)&&SPe(t)==xPe}z4.exports=kPe});var nf=C((V$e,V4)=>{var Z4=X4(),vPe=_n(),_4=Object.prototype,FPe=_4.hasOwnProperty,RPe=_4.propertyIsEnumerable,LPe=Z4(function(){return arguments}())?Z4:function(t){return vPe(t)&&FPe.call(t,"callee")&&!RPe.call(t,"callee")};V4.exports=LPe});var pE=C((Z$e,$4)=>{var MPe=9007199254740991;function NPe(t){return typeof t=="number"&&t>-1&&t%1==0&&t<=MPe}$4.exports=NPe});var wP=C((_$e,e5)=>{var OPe=Mc(),TPe=nf(),KPe=an(),UPe=rf(),HPe=pE(),YPe=RA();function jPe(t,e,r){e=OPe(e,t);for(var i=-1,n=e.length,s=!1;++i{var GPe=W4(),qPe=wP();function JPe(t,e){return t!=null&&qPe(t,e,GPe)}t5.exports=JPe});var i5=C((eet,r5)=>{var WPe=q4(),zPe=QP();function XPe(t,e){return WPe(t,e,function(r,i){return zPe(t,i)})}r5.exports=XPe});var dE=C((tet,n5)=>{function VPe(t,e){for(var r=-1,i=e.length,n=t.length;++r{var o5=hA(),ZPe=nf(),_Pe=an(),a5=o5?o5.isConcatSpreadable:void 0;function $Pe(t){return _Pe(t)||ZPe(t)||!!(a5&&t&&t[a5])}s5.exports=$Pe});var u5=C((iet,l5)=>{var exe=dE(),txe=A5();function c5(t,e,r,i,n){var s=-1,o=t.length;for(r||(r=txe),n||(n=[]);++s0&&r(a)?e>1?c5(a,e-1,r,i,n):exe(n,a):i||(n[n.length]=a)}return n}l5.exports=c5});var h5=C((net,g5)=>{var rxe=u5();function ixe(t){var e=t==null?0:t.length;return e?rxe(t,1):[]}g5.exports=ixe});var p5=C((set,f5)=>{function nxe(t,e,r){switch(r.length){case 0:return t.call(e);case 1:return t.call(e,r[0]);case 2:return t.call(e,r[0],r[1]);case 3:return t.call(e,r[0],r[1],r[2])}return t.apply(e,r)}f5.exports=nxe});var bP=C((oet,d5)=>{var sxe=p5(),C5=Math.max;function oxe(t,e,r){return e=C5(e===void 0?t.length-1:e,0),function(){for(var i=arguments,n=-1,s=C5(i.length-e,0),o=Array(s);++n{function axe(t){return function(){return t}}m5.exports=axe});var CE=C((Aet,E5)=>{function Axe(t){return t}E5.exports=Axe});var w5=C((cet,y5)=>{var lxe=I5(),B5=yP(),cxe=CE(),uxe=B5?function(t,e){return B5(t,"toString",{configurable:!0,enumerable:!1,value:lxe(e),writable:!0})}:cxe;y5.exports=uxe});var b5=C((uet,Q5)=>{var gxe=800,hxe=16,fxe=Date.now;function pxe(t){var e=0,r=0;return function(){var i=fxe(),n=hxe-(i-r);if(r=i,n>0){if(++e>=gxe)return arguments[0]}else e=0;return t.apply(void 0,arguments)}}Q5.exports=pxe});var DP=C((get,D5)=>{var dxe=w5(),Cxe=b5(),mxe=Cxe(dxe);D5.exports=mxe});var P5=C((het,S5)=>{var Ixe=h5(),Exe=bP(),yxe=DP();function Bxe(t){return yxe(Exe(t,void 0,Ixe),t+"")}S5.exports=Bxe});var k5=C((fet,x5)=>{var wxe=i5(),Qxe=P5(),bxe=Qxe(function(t,e){return t==null?{}:wxe(t,e)});x5.exports=bxe});var H5=C((irt,T5)=>{"use strict";var NP;try{NP=Map}catch(t){}var OP;try{OP=Set}catch(t){}function K5(t,e,r){if(!t||typeof t!="object"||typeof t=="function")return t;if(t.nodeType&&"cloneNode"in t)return t.cloneNode(!0);if(t instanceof Date)return new Date(t.getTime());if(t instanceof RegExp)return new RegExp(t);if(Array.isArray(t))return t.map(U5);if(NP&&t instanceof NP)return new Map(Array.from(t.entries()));if(OP&&t instanceof OP)return new Set(Array.from(t.values()));if(t instanceof Object){e.push(t);var i=Object.create(t);r.push(i);for(var n in t){var s=e.findIndex(function(o){return o===t[n]});i[n]=s>-1?r[s]:K5(t[n],e,r)}return i}return t}function U5(t){return K5(t,[],[])}T5.exports=U5});var Af=C(TP=>{"use strict";Object.defineProperty(TP,"__esModule",{value:!0});TP.default=Lxe;var Mxe=Object.prototype.toString,Nxe=Error.prototype.toString,Oxe=RegExp.prototype.toString,Txe=typeof Symbol!="undefined"?Symbol.prototype.toString:()=>"",Kxe=/^Symbol\((.*)\)(.*)$/;function Uxe(t){return t!=+t?"NaN":t===0&&1/t<0?"-0":""+t}function Y5(t,e=!1){if(t==null||t===!0||t===!1)return""+t;let r=typeof t;if(r==="number")return Uxe(t);if(r==="string")return e?`"${t}"`:t;if(r==="function")return"[Function "+(t.name||"anonymous")+"]";if(r==="symbol")return Txe.call(t).replace(Kxe,"Symbol($1)");let i=Mxe.call(t).slice(8,-1);return i==="Date"?isNaN(t.getTime())?""+t:t.toISOString(t):i==="Error"||t instanceof Error?"["+Nxe.call(t)+"]":i==="RegExp"?Oxe.call(t):null}function Lxe(t,e){let r=Y5(t,e);return r!==null?r:JSON.stringify(t,function(i,n){let s=Y5(this[i],e);return s!==null?s:n},2)}});var Vs=C(Qr=>{"use strict";Object.defineProperty(Qr,"__esModule",{value:!0});Qr.default=Qr.array=Qr.object=Qr.boolean=Qr.date=Qr.number=Qr.string=Qr.mixed=void 0;var j5=Hxe(Af());function Hxe(t){return t&&t.__esModule?t:{default:t}}var G5={default:"${path} is invalid",required:"${path} is a required field",oneOf:"${path} must be one of the following values: ${values}",notOneOf:"${path} must not be one of the following values: ${values}",notType:({path:t,type:e,value:r,originalValue:i})=>{let n=i!=null&&i!==r,s=`${t} must be a \`${e}\` type, but the final value was: \`${(0,j5.default)(r,!0)}\``+(n?` (cast from the value \`${(0,j5.default)(i,!0)}\`).`:".");return r===null&&(s+='\n If "null" is intended as an empty value be sure to mark the schema as `.nullable()`'),s},defined:"${path} must be defined"};Qr.mixed=G5;var q5={length:"${path} must be exactly ${length} characters",min:"${path} must be at least ${min} characters",max:"${path} must be at most ${max} characters",matches:'${path} must match the following: "${regex}"',email:"${path} must be a valid email",url:"${path} must be a valid URL",uuid:"${path} must be a valid UUID",trim:"${path} must be a trimmed string",lowercase:"${path} must be a lowercase string",uppercase:"${path} must be a upper case string"};Qr.string=q5;var J5={min:"${path} must be greater than or equal to ${min}",max:"${path} must be less than or equal to ${max}",lessThan:"${path} must be less than ${less}",moreThan:"${path} must be greater than ${more}",positive:"${path} must be a positive number",negative:"${path} must be a negative number",integer:"${path} must be an integer"};Qr.number=J5;var W5={min:"${path} field must be later than ${min}",max:"${path} field must be at earlier than ${max}"};Qr.date=W5;var z5={isValue:"${path} field must be ${value}"};Qr.boolean=z5;var X5={noUnknown:"${path} field has unspecified keys: ${unknown}"};Qr.object=X5;var V5={min:"${path} field must have at least ${min} items",max:"${path} field must have less than or equal to ${max} items",length:"${path} must be have ${length} items"};Qr.array=V5;var Yxe=Object.assign(Object.create(null),{mixed:G5,string:q5,number:J5,date:W5,object:X5,array:V5,boolean:z5});Qr.default=Yxe});var _5=C((ort,Z5)=>{var jxe=Object.prototype,Gxe=jxe.hasOwnProperty;function qxe(t,e){return t!=null&&Gxe.call(t,e)}Z5.exports=qxe});var BE=C((art,$5)=>{var Jxe=_5(),Wxe=wP();function zxe(t,e){return t!=null&&Wxe(t,e,Jxe)}$5.exports=zxe});var Tc=C(wE=>{"use strict";Object.defineProperty(wE,"__esModule",{value:!0});wE.default=void 0;var Xxe=t=>t&&t.__isYupSchema__;wE.default=Xxe});var r9=C(QE=>{"use strict";Object.defineProperty(QE,"__esModule",{value:!0});QE.default=void 0;var Vxe=e9(BE()),Zxe=e9(Tc());function e9(t){return t&&t.__esModule?t:{default:t}}var t9=class{constructor(e,r){if(this.refs=e,this.refs=e,typeof r=="function"){this.fn=r;return}if(!(0,Vxe.default)(r,"is"))throw new TypeError("`is:` is required for `when()` conditions");if(!r.then&&!r.otherwise)throw new TypeError("either `then:` or `otherwise:` is required for `when()` conditions");let{is:i,then:n,otherwise:s}=r,o=typeof i=="function"?i:(...a)=>a.every(l=>l===i);this.fn=function(...a){let l=a.pop(),c=a.pop(),u=o(...a)?n:s;if(!!u)return typeof u=="function"?u(c):c.concat(u.resolve(l))}}resolve(e,r){let i=this.refs.map(s=>s.getValue(r==null?void 0:r.value,r==null?void 0:r.parent,r==null?void 0:r.context)),n=this.fn.apply(e,i.concat(e,r));if(n===void 0||n===e)return e;if(!(0,Zxe.default)(n))throw new TypeError("conditions must return a schema object");return n.resolve(r)}},_xe=t9;QE.default=_xe});var UP=C(KP=>{"use strict";Object.defineProperty(KP,"__esModule",{value:!0});KP.default=$xe;function $xe(t){return t==null?[]:[].concat(t)}});var MA=C(bE=>{"use strict";Object.defineProperty(bE,"__esModule",{value:!0});bE.default=void 0;var eke=i9(Af()),tke=i9(UP());function i9(t){return t&&t.__esModule?t:{default:t}}function HP(){return HP=Object.assign||function(t){for(var e=1;e(0,eke.default)(r[s])):typeof e=="function"?e(r):e}static isError(e){return e&&e.name==="ValidationError"}constructor(e,r,i,n){super();this.name="ValidationError",this.value=r,this.path=i,this.type=n,this.errors=[],this.inner=[],(0,tke.default)(e).forEach(s=>{lf.isError(s)?(this.errors.push(...s.errors),this.inner=this.inner.concat(s.inner.length?s.inner:s)):this.errors.push(s)}),this.message=this.errors.length>1?`${this.errors.length} errors occurred`:this.errors[0],Error.captureStackTrace&&Error.captureStackTrace(this,lf)}};bE.default=lf});var DE=C(YP=>{"use strict";Object.defineProperty(YP,"__esModule",{value:!0});YP.default=ike;var jP=nke(MA());function nke(t){return t&&t.__esModule?t:{default:t}}var ske=t=>{let e=!1;return(...r)=>{e||(e=!0,t(...r))}};function ike(t,e){let{endEarly:r,tests:i,args:n,value:s,errors:o,sort:a,path:l}=t,c=ske(e),u=i.length,g=[];if(o=o||[],!u)return o.length?c(new jP.default(o,s,l)):c(null,s);for(let h=0;h{function oke(t){return function(e,r,i){for(var n=-1,s=Object(e),o=i(e),a=o.length;a--;){var l=o[t?a:++n];if(r(s[l],l,s)===!1)break}return e}}n9.exports=oke});var GP=C((frt,o9)=>{var ake=s9(),Ake=ake();o9.exports=Ake});var A9=C((prt,a9)=>{function lke(t,e){for(var r=-1,i=Array(t);++r{function cke(){return!1}l9.exports=cke});var uf=C((cf,Kc)=>{var uke=xn(),gke=c9(),u9=typeof cf=="object"&&cf&&!cf.nodeType&&cf,g9=u9&&typeof Kc=="object"&&Kc&&!Kc.nodeType&&Kc,hke=g9&&g9.exports===u9,h9=hke?uke.Buffer:void 0,fke=h9?h9.isBuffer:void 0,pke=fke||gke;Kc.exports=pke});var p9=C((Crt,f9)=>{var dke=fA(),Cke=pE(),mke=_n(),Ike="[object Arguments]",Eke="[object Array]",yke="[object Boolean]",Bke="[object Date]",wke="[object Error]",Qke="[object Function]",bke="[object Map]",Dke="[object Number]",Ske="[object Object]",Pke="[object RegExp]",xke="[object Set]",kke="[object String]",vke="[object WeakMap]",Fke="[object ArrayBuffer]",Rke="[object DataView]",Lke="[object Float32Array]",Mke="[object Float64Array]",Nke="[object Int8Array]",Oke="[object Int16Array]",Tke="[object Int32Array]",Kke="[object Uint8Array]",Uke="[object Uint8ClampedArray]",Hke="[object Uint16Array]",Yke="[object Uint32Array]",Ot={};Ot[Lke]=Ot[Mke]=Ot[Nke]=Ot[Oke]=Ot[Tke]=Ot[Kke]=Ot[Uke]=Ot[Hke]=Ot[Yke]=!0;Ot[Ike]=Ot[Eke]=Ot[Fke]=Ot[yke]=Ot[Rke]=Ot[Bke]=Ot[wke]=Ot[Qke]=Ot[bke]=Ot[Dke]=Ot[Ske]=Ot[Pke]=Ot[xke]=Ot[kke]=Ot[vke]=!1;function jke(t){return mke(t)&&Cke(t.length)&&!!Ot[dke(t)]}f9.exports=jke});var SE=C((mrt,d9)=>{function Gke(t){return function(e){return t(e)}}d9.exports=Gke});var PE=C((gf,Uc)=>{var qke=fD(),C9=typeof gf=="object"&&gf&&!gf.nodeType&&gf,hf=C9&&typeof Uc=="object"&&Uc&&!Uc.nodeType&&Uc,Jke=hf&&hf.exports===C9,qP=Jke&&qke.process,Wke=function(){try{var t=hf&&hf.require&&hf.require("util").types;return t||qP&&qP.binding&&qP.binding("util")}catch(e){}}();Uc.exports=Wke});var xE=C((Irt,m9)=>{var zke=p9(),Xke=SE(),I9=PE(),E9=I9&&I9.isTypedArray,Vke=E9?Xke(E9):zke;m9.exports=Vke});var JP=C((Ert,y9)=>{var Zke=A9(),_ke=nf(),$ke=an(),eve=uf(),tve=rf(),rve=xE(),ive=Object.prototype,nve=ive.hasOwnProperty;function sve(t,e){var r=$ke(t),i=!r&&_ke(t),n=!r&&!i&&eve(t),s=!r&&!i&&!n&&rve(t),o=r||i||n||s,a=o?Zke(t.length,String):[],l=a.length;for(var c in t)(e||nve.call(t,c))&&!(o&&(c=="length"||n&&(c=="offset"||c=="parent")||s&&(c=="buffer"||c=="byteLength"||c=="byteOffset")||tve(c,l)))&&a.push(c);return a}y9.exports=sve});var kE=C((yrt,B9)=>{var ove=Object.prototype;function ave(t){var e=t&&t.constructor,r=typeof e=="function"&&e.prototype||ove;return t===r}B9.exports=ave});var WP=C((Brt,w9)=>{function Ave(t,e){return function(r){return t(e(r))}}w9.exports=Ave});var b9=C((wrt,Q9)=>{var lve=WP(),cve=lve(Object.keys,Object);Q9.exports=cve});var S9=C((Qrt,D9)=>{var uve=kE(),gve=b9(),hve=Object.prototype,fve=hve.hasOwnProperty;function pve(t){if(!uve(t))return gve(t);var e=[];for(var r in Object(t))fve.call(t,r)&&r!="constructor"&&e.push(r);return e}D9.exports=pve});var ff=C((brt,P9)=>{var dve=uE(),Cve=pE();function mve(t){return t!=null&&Cve(t.length)&&!dve(t)}P9.exports=mve});var Hc=C((Drt,x9)=>{var Ive=JP(),Eve=S9(),yve=ff();function Bve(t){return yve(t)?Ive(t):Eve(t)}x9.exports=Bve});var zP=C((Srt,k9)=>{var wve=GP(),Qve=Hc();function bve(t,e){return t&&wve(t,e,Qve)}k9.exports=bve});var F9=C((Prt,v9)=>{var Dve=$h();function Sve(){this.__data__=new Dve,this.size=0}v9.exports=Sve});var L9=C((xrt,R9)=>{function Pve(t){var e=this.__data__,r=e.delete(t);return this.size=e.size,r}R9.exports=Pve});var N9=C((krt,M9)=>{function xve(t){return this.__data__.get(t)}M9.exports=xve});var T9=C((vrt,O9)=>{function kve(t){return this.__data__.has(t)}O9.exports=kve});var U9=C((Frt,K9)=>{var vve=$h(),Fve=gE(),Rve=hE(),Lve=200;function Mve(t,e){var r=this.__data__;if(r instanceof vve){var i=r.__data__;if(!Fve||i.length{var Nve=$h(),Ove=F9(),Tve=L9(),Kve=N9(),Uve=T9(),Hve=U9();function Yc(t){var e=this.__data__=new Nve(t);this.size=e.size}Yc.prototype.clear=Ove;Yc.prototype.delete=Tve;Yc.prototype.get=Kve;Yc.prototype.has=Uve;Yc.prototype.set=Hve;H9.exports=Yc});var j9=C((Lrt,Y9)=>{var Yve="__lodash_hash_undefined__";function jve(t){return this.__data__.set(t,Yve),this}Y9.exports=jve});var q9=C((Mrt,G9)=>{function Gve(t){return this.__data__.has(t)}G9.exports=Gve});var W9=C((Nrt,J9)=>{var qve=hE(),Jve=j9(),Wve=q9();function vE(t){var e=-1,r=t==null?0:t.length;for(this.__data__=new qve;++e{function zve(t,e){for(var r=-1,i=t==null?0:t.length;++r{function Xve(t,e){return t.has(e)}V9.exports=Xve});var XP=C((Krt,_9)=>{var Vve=W9(),Zve=X9(),_ve=Z9(),$ve=1,eFe=2;function tFe(t,e,r,i,n,s){var o=r&$ve,a=t.length,l=e.length;if(a!=l&&!(o&&l>a))return!1;var c=s.get(t),u=s.get(e);if(c&&u)return c==e&&u==t;var g=-1,h=!0,f=r&eFe?new Vve:void 0;for(s.set(t,e),s.set(e,t);++g{var rFe=xn(),iFe=rFe.Uint8Array;$9.exports=iFe});var t6=C((Hrt,e6)=>{function nFe(t){var e=-1,r=Array(t.size);return t.forEach(function(i,n){r[++e]=[n,i]}),r}e6.exports=nFe});var i6=C((Yrt,r6)=>{function sFe(t){var e=-1,r=Array(t.size);return t.forEach(function(i){r[++e]=i}),r}r6.exports=sFe});var A6=C((jrt,n6)=>{var s6=hA(),o6=VP(),oFe=Fc(),aFe=XP(),AFe=t6(),lFe=i6(),cFe=1,uFe=2,gFe="[object Boolean]",hFe="[object Date]",fFe="[object Error]",pFe="[object Map]",dFe="[object Number]",CFe="[object RegExp]",mFe="[object Set]",IFe="[object String]",EFe="[object Symbol]",yFe="[object ArrayBuffer]",BFe="[object DataView]",a6=s6?s6.prototype:void 0,ZP=a6?a6.valueOf:void 0;function wFe(t,e,r,i,n,s,o){switch(r){case BFe:if(t.byteLength!=e.byteLength||t.byteOffset!=e.byteOffset)return!1;t=t.buffer,e=e.buffer;case yFe:return!(t.byteLength!=e.byteLength||!s(new o6(t),new o6(e)));case gFe:case hFe:case dFe:return oFe(+t,+e);case fFe:return t.name==e.name&&t.message==e.message;case CFe:case IFe:return t==e+"";case pFe:var a=AFe;case mFe:var l=i&cFe;if(a||(a=lFe),t.size!=e.size&&!l)return!1;var c=o.get(t);if(c)return c==e;i|=uFe,o.set(t,e);var u=aFe(a(t),a(e),i,n,s,o);return o.delete(t),u;case EFe:if(ZP)return ZP.call(t)==ZP.call(e)}return!1}n6.exports=wFe});var _P=C((Grt,l6)=>{var QFe=dE(),bFe=an();function DFe(t,e,r){var i=e(t);return bFe(t)?i:QFe(i,r(t))}l6.exports=DFe});var u6=C((qrt,c6)=>{function SFe(t,e){for(var r=-1,i=t==null?0:t.length,n=0,s=[];++r{function PFe(){return[]}g6.exports=PFe});var FE=C((Wrt,h6)=>{var xFe=u6(),kFe=$P(),vFe=Object.prototype,FFe=vFe.propertyIsEnumerable,f6=Object.getOwnPropertySymbols,RFe=f6?function(t){return t==null?[]:(t=Object(t),xFe(f6(t),function(e){return FFe.call(t,e)}))}:kFe;h6.exports=RFe});var ex=C((zrt,p6)=>{var LFe=_P(),MFe=FE(),NFe=Hc();function OFe(t){return LFe(t,NFe,MFe)}p6.exports=OFe});var m6=C((Xrt,d6)=>{var C6=ex(),TFe=1,KFe=Object.prototype,UFe=KFe.hasOwnProperty;function HFe(t,e,r,i,n,s){var o=r&TFe,a=C6(t),l=a.length,c=C6(e),u=c.length;if(l!=u&&!o)return!1;for(var g=l;g--;){var h=a[g];if(!(o?h in e:UFe.call(e,h)))return!1}var f=s.get(t),p=s.get(e);if(f&&p)return f==e&&p==t;var m=!0;s.set(t,e),s.set(e,t);for(var I=o;++g{var YFe=$o(),jFe=xn(),GFe=YFe(jFe,"DataView");I6.exports=GFe});var B6=C((Zrt,y6)=>{var qFe=$o(),JFe=xn(),WFe=qFe(JFe,"Promise");y6.exports=WFe});var Q6=C((_rt,w6)=>{var zFe=$o(),XFe=xn(),VFe=zFe(XFe,"Set");w6.exports=VFe});var D6=C(($rt,b6)=>{var ZFe=$o(),_Fe=xn(),$Fe=ZFe(_Fe,"WeakMap");b6.exports=$Fe});var df=C((eit,S6)=>{var tx=E6(),rx=gE(),ix=B6(),nx=Q6(),sx=D6(),P6=fA(),jc=IP(),x6="[object Map]",eRe="[object Object]",k6="[object Promise]",v6="[object Set]",F6="[object WeakMap]",R6="[object DataView]",tRe=jc(tx),rRe=jc(rx),iRe=jc(ix),nRe=jc(nx),sRe=jc(sx),NA=P6;(tx&&NA(new tx(new ArrayBuffer(1)))!=R6||rx&&NA(new rx)!=x6||ix&&NA(ix.resolve())!=k6||nx&&NA(new nx)!=v6||sx&&NA(new sx)!=F6)&&(NA=function(t){var e=P6(t),r=e==eRe?t.constructor:void 0,i=r?jc(r):"";if(i)switch(i){case tRe:return R6;case rRe:return x6;case iRe:return k6;case nRe:return v6;case sRe:return F6}return e});S6.exports=NA});var H6=C((tit,L6)=>{var ox=pf(),oRe=XP(),aRe=A6(),ARe=m6(),M6=df(),N6=an(),O6=uf(),lRe=xE(),cRe=1,T6="[object Arguments]",K6="[object Array]",RE="[object Object]",uRe=Object.prototype,U6=uRe.hasOwnProperty;function gRe(t,e,r,i,n,s){var o=N6(t),a=N6(e),l=o?K6:M6(t),c=a?K6:M6(e);l=l==T6?RE:l,c=c==T6?RE:c;var u=l==RE,g=c==RE,h=l==c;if(h&&O6(t)){if(!O6(e))return!1;o=!0,u=!1}if(h&&!u)return s||(s=new ox),o||lRe(t)?oRe(t,e,r,i,n,s):aRe(t,e,l,r,i,n,s);if(!(r&cRe)){var f=u&&U6.call(t,"__wrapped__"),p=g&&U6.call(e,"__wrapped__");if(f||p){var m=f?t.value():t,I=p?e.value():e;return s||(s=new ox),n(m,I,r,i,s)}}return h?(s||(s=new ox),ARe(t,e,r,i,n,s)):!1}L6.exports=gRe});var ax=C((rit,Y6)=>{var hRe=H6(),j6=_n();function G6(t,e,r,i,n){return t===e?!0:t==null||e==null||!j6(t)&&!j6(e)?t!==t&&e!==e:hRe(t,e,r,i,G6,n)}Y6.exports=G6});var J6=C((iit,q6)=>{var fRe=pf(),pRe=ax(),dRe=1,CRe=2;function mRe(t,e,r,i){var n=r.length,s=n,o=!i;if(t==null)return!s;for(t=Object(t);n--;){var a=r[n];if(o&&a[2]?a[1]!==t[a[0]]:!(a[0]in t))return!1}for(;++n{var IRe=Fn();function ERe(t){return t===t&&!IRe(t)}W6.exports=ERe});var X6=C((sit,z6)=>{var yRe=Ax(),BRe=Hc();function wRe(t){for(var e=BRe(t),r=e.length;r--;){var i=e[r],n=t[i];e[r]=[i,n,yRe(n)]}return e}z6.exports=wRe});var lx=C((oit,V6)=>{function QRe(t,e){return function(r){return r==null?!1:r[t]===e&&(e!==void 0||t in Object(r))}}V6.exports=QRe});var _6=C((ait,Z6)=>{var bRe=J6(),DRe=X6(),SRe=lx();function PRe(t){var e=DRe(t);return e.length==1&&e[0][2]?SRe(e[0][0],e[0][1]):function(r){return r===t||bRe(r,t,e)}}Z6.exports=PRe});var LE=C((Ait,$6)=>{var xRe=tf();function kRe(t,e,r){var i=t==null?void 0:xRe(t,e);return i===void 0?r:i}$6.exports=kRe});var t7=C((lit,e7)=>{var vRe=ax(),FRe=LE(),RRe=QP(),LRe=cE(),MRe=Ax(),NRe=lx(),ORe=RA(),TRe=1,KRe=2;function URe(t,e){return LRe(t)&&MRe(e)?NRe(ORe(t),e):function(r){var i=FRe(r,t);return i===void 0&&i===e?RRe(r,t):vRe(e,i,TRe|KRe)}}e7.exports=URe});var i7=C((cit,r7)=>{function HRe(t){return function(e){return e==null?void 0:e[t]}}r7.exports=HRe});var s7=C((uit,n7)=>{var YRe=tf();function jRe(t){return function(e){return YRe(e,t)}}n7.exports=jRe});var a7=C((git,o7)=>{var GRe=i7(),qRe=s7(),JRe=cE(),WRe=RA();function zRe(t){return JRe(t)?GRe(WRe(t)):qRe(t)}o7.exports=zRe});var cx=C((hit,A7)=>{var XRe=_6(),VRe=t7(),ZRe=CE(),_Re=an(),$Re=a7();function eLe(t){return typeof t=="function"?t:t==null?ZRe:typeof t=="object"?_Re(t)?VRe(t[0],t[1]):XRe(t):$Re(t)}A7.exports=eLe});var ux=C((fit,l7)=>{var tLe=Nc(),rLe=zP(),iLe=cx();function nLe(t,e){var r={};return e=iLe(e,3),rLe(t,function(i,n,s){tLe(r,n,e(i,n,s))}),r}l7.exports=nLe});var Cf=C((pit,c7)=>{"use strict";function OA(t){this._maxSize=t,this.clear()}OA.prototype.clear=function(){this._size=0,this._values=Object.create(null)};OA.prototype.get=function(t){return this._values[t]};OA.prototype.set=function(t,e){return this._size>=this._maxSize&&this.clear(),t in this._values||this._size++,this._values[t]=e};var sLe=/[^.^\]^[]+|(?=\[\]|\.\.)/g,u7=/^\d+$/,oLe=/^\d/,aLe=/[~`!#$%\^&*+=\-\[\]\\';,/{}|\\":<>\?]/g,ALe=/^\s*(['"]?)(.*?)(\1)\s*$/,gx=512,g7=new OA(gx),h7=new OA(gx),f7=new OA(gx);c7.exports={Cache:OA,split:fx,normalizePath:hx,setter:function(t){var e=hx(t);return h7.get(t)||h7.set(t,function(i,n){for(var s=0,o=e.length,a=i;s{"use strict";Object.defineProperty(mf,"__esModule",{value:!0});mf.create=hLe;mf.default=void 0;var fLe=Cf(),ME={context:"$",value:"."};function hLe(t,e){return new NE(t,e)}var NE=class{constructor(e,r={}){if(typeof e!="string")throw new TypeError("ref must be a string, got: "+e);if(this.key=e.trim(),e==="")throw new TypeError("ref must be a non-empty string");this.isContext=this.key[0]===ME.context,this.isValue=this.key[0]===ME.value,this.isSibling=!this.isContext&&!this.isValue;let i=this.isContext?ME.context:this.isValue?ME.value:"";this.path=this.key.slice(i.length),this.getter=this.path&&(0,fLe.getter)(this.path,!0),this.map=r.map}getValue(e,r,i){let n=this.isContext?i:this.isValue?e:r;return this.getter&&(n=this.getter(n||{})),this.map&&(n=this.map(n)),n}cast(e,r){return this.getValue(e,r==null?void 0:r.parent,r==null?void 0:r.context)}resolve(){return this}describe(){return{type:"ref",key:this.key}}toString(){return`Ref(${this.key})`}static isRef(e){return e&&e.__isYupRef}};mf.default=NE;NE.prototype.__isYupRef=!0});var p7=C(dx=>{"use strict";Object.defineProperty(dx,"__esModule",{value:!0});dx.default=pLe;var dLe=Cx(ux()),OE=Cx(MA()),CLe=Cx(TA());function Cx(t){return t&&t.__esModule?t:{default:t}}function TE(){return TE=Object.assign||function(t){for(var e=1;e=0)&&(r[n]=t[n]);return r}function pLe(t){function e(r,i){let{value:n,path:s="",label:o,options:a,originalValue:l,sync:c}=r,u=mLe(r,["value","path","label","options","originalValue","sync"]),{name:g,test:h,params:f,message:p}=t,{parent:m,context:I}=a;function y(O){return CLe.default.isRef(O)?O.getValue(n,m,I):O}function B(O={}){let v=(0,dLe.default)(TE({value:n,originalValue:l,label:o,path:O.path||s},f,O.params),y),U=new OE.default(OE.default.formatError(O.message||p,v),n,v.path,O.type||g);return U.params=v,U}let P=TE({path:s,parent:m,type:g,createError:B,resolve:y,options:a,originalValue:l},u);if(!c){try{Promise.resolve(h.call(P,n,P)).then(O=>{OE.default.isError(O)?i(O):O?i(null,O):i(B())})}catch(O){i(O)}return}let k;try{var N;if(k=h.call(P,n,P),typeof((N=k)==null?void 0:N.then)=="function")throw new Error(`Validation test of type: "${P.type}" returned a Promise during a synchronous validate. This test will finish after the validate call has returned`)}catch(O){i(O);return}OE.default.isError(k)?i(k):k?i(null,k):i(B())}return e.OPTIONS=t,e}});var mx=C(If=>{"use strict";Object.defineProperty(If,"__esModule",{value:!0});If.getIn=d7;If.default=void 0;var ILe=Cf(),ELe=t=>t.substr(0,t.length-1).substr(1);function d7(t,e,r,i=r){let n,s,o;return e?((0,ILe.forEach)(e,(a,l,c)=>{let u=l?ELe(a):a;if(t=t.resolve({context:i,parent:n,value:r}),t.innerType){let g=c?parseInt(u,10):0;if(r&&g>=r.length)throw new Error(`Yup.reach cannot resolve an array item at index: ${a}, in the path: ${e}. because there is no value at that index. `);n=r,r=r&&r[g],t=t.innerType}if(!c){if(!t.fields||!t.fields[u])throw new Error(`The schema does not contain the path: ${e}. (failed at: ${o} which is a type: "${t._type}")`);n=r,r=r&&r[u],t=t.fields[u]}s=u,o=l?"["+a+"]":"."+a}),{schema:t,parent:n,parentPath:s}):{parent:n,parentPath:e,schema:t}}var yLe=(t,e,r,i)=>d7(t,e,r,i).schema,BLe=yLe;If.default=BLe});var m7=C(KE=>{"use strict";Object.defineProperty(KE,"__esModule",{value:!0});KE.default=void 0;var C7=wLe(TA());function wLe(t){return t&&t.__esModule?t:{default:t}}var UE=class{constructor(){this.list=new Set,this.refs=new Map}get size(){return this.list.size+this.refs.size}describe(){let e=[];for(let r of this.list)e.push(r);for(let[,r]of this.refs)e.push(r.describe());return e}toArray(){return Array.from(this.list).concat(Array.from(this.refs.values()))}add(e){C7.default.isRef(e)?this.refs.set(e.key,e):this.list.add(e)}delete(e){C7.default.isRef(e)?this.refs.delete(e.key):this.list.delete(e)}has(e,r){if(this.list.has(e))return!0;let i,n=this.refs.values();for(;i=n.next(),!i.done;)if(r(i.value)===e)return!0;return!1}clone(){let e=new UE;return e.list=new Set(this.list),e.refs=new Map(this.refs),e}merge(e,r){let i=this.clone();return e.list.forEach(n=>i.add(n)),e.refs.forEach(n=>i.add(n)),r.list.forEach(n=>i.delete(n)),r.refs.forEach(n=>i.delete(n)),i}};KE.default=UE});var _s=C(HE=>{"use strict";Object.defineProperty(HE,"__esModule",{value:!0});HE.default=void 0;var I7=Zs(H5()),Gc=Vs(),QLe=Zs(r9()),E7=Zs(DE()),YE=Zs(p7()),y7=Zs(Af()),bLe=Zs(TA()),DLe=mx(),SLe=Zs(UP()),B7=Zs(MA()),w7=Zs(m7());function Zs(t){return t&&t.__esModule?t:{default:t}}function fn(){return fn=Object.assign||function(t){for(var e=1;e{this.typeError(Gc.mixed.notType)}),this.type=(e==null?void 0:e.type)||"mixed",this.spec=fn({strip:!1,strict:!1,abortEarly:!0,recursive:!0,nullable:!1,presence:"optional"},e==null?void 0:e.spec)}get _type(){return this.type}_typeCheck(e){return!0}clone(e){if(this._mutate)return e&&Object.assign(this.spec,e),this;let r=Object.create(Object.getPrototypeOf(this));return r.type=this.type,r._typeError=this._typeError,r._whitelistError=this._whitelistError,r._blacklistError=this._blacklistError,r._whitelist=this._whitelist.clone(),r._blacklist=this._blacklist.clone(),r.exclusiveTests=fn({},this.exclusiveTests),r.deps=[...this.deps],r.conditions=[...this.conditions],r.tests=[...this.tests],r.transforms=[...this.transforms],r.spec=(0,I7.default)(fn({},this.spec,e)),r}label(e){var r=this.clone();return r.spec.label=e,r}meta(...e){if(e.length===0)return this.spec.meta;let r=this.clone();return r.spec.meta=Object.assign(r.spec.meta||{},e[0]),r}withMutation(e){let r=this._mutate;this._mutate=!0;let i=e(this);return this._mutate=r,i}concat(e){if(!e||e===this)return this;if(e.type!==this.type&&this.type!=="mixed")throw new TypeError(`You cannot \`concat()\` schema's of different types: ${this.type} and ${e.type}`);let r=this,i=e.clone(),n=fn({},r.spec,i.spec);return i.spec=n,i._typeError||(i._typeError=r._typeError),i._whitelistError||(i._whitelistError=r._whitelistError),i._blacklistError||(i._blacklistError=r._blacklistError),i._whitelist=r._whitelist.merge(e._whitelist,e._blacklist),i._blacklist=r._blacklist.merge(e._blacklist,e._whitelist),i.tests=r.tests,i.exclusiveTests=r.exclusiveTests,i.withMutation(s=>{e.tests.forEach(o=>{s.test(o.OPTIONS)})}),i}isType(e){return this.spec.nullable&&e===null?!0:this._typeCheck(e)}resolve(e){let r=this;if(r.conditions.length){let i=r.conditions;r=r.clone(),r.conditions=[],r=i.reduce((n,s)=>s.resolve(n,e),r),r=r.resolve(e)}return r}cast(e,r={}){let i=this.resolve(fn({value:e},r)),n=i._cast(e,r);if(e!==void 0&&r.assert!==!1&&i.isType(n)!==!0){let s=(0,y7.default)(e),o=(0,y7.default)(n);throw new TypeError(`The value of ${r.path||"field"} could not be cast to a value that satisfies the schema type: "${i._type}". +`}function fSe(t,e,r,i,n,s){return Lz(t,t,e,r,i,n,s)}});var Mz=C(ry=>{"use strict";Object.defineProperty(ry,"__esModule",{value:!0});ry.arrayEqual=ISe;ry.arrayStartsWith=Nz;function ISe(t,e){return t.length!==e.length?!1:Nz(t,e)}function Nz(t,e){if(e.length>t.length)return!1;for(var r=0;r{"use strict";Object.defineProperty(iy,"__esModule",{value:!0});iy.calcLineCount=Oz;iy.merge=ESe;var ySe=yP(),BSe=ey(),BP=Mz();function ou(t){return bSe(t)||QSe(t)||wSe()}function wSe(){throw new TypeError("Invalid attempt to spread non-iterable instance")}function QSe(t){if(Symbol.iterator in Object(t)||Object.prototype.toString.call(t)==="[object Arguments]")return Array.from(t)}function bSe(t){if(Array.isArray(t)){for(var e=0,r=new Array(t.length);e{"use strict";Object.defineProperty(bP,"__esModule",{value:!0});bP.convertChangesToDMP=PSe;function PSe(t){for(var e=[],r,i,n=0;n{"use strict";Object.defineProperty(DP,"__esModule",{value:!0});DP.convertChangesToXML=kSe;function kSe(t){for(var e=[],r=0;r"):i.removed&&e.push(""),e.push(vSe(i.value)),i.added?e.push(""):i.removed&&e.push("")}return e.join("")}function vSe(t){var e=t;return e=e.replace(/&/g,"&"),e=e.replace(//g,">"),e=e.replace(/"/g,"""),e}});var e5=C($t=>{"use strict";Object.defineProperty($t,"__esModule",{value:!0});Object.defineProperty($t,"Diff",{enumerable:!0,get:function(){return FSe.default}});Object.defineProperty($t,"diffChars",{enumerable:!0,get:function(){return RSe.diffChars}});Object.defineProperty($t,"diffWords",{enumerable:!0,get:function(){return Xz.diffWords}});Object.defineProperty($t,"diffWordsWithSpace",{enumerable:!0,get:function(){return Xz.diffWordsWithSpace}});Object.defineProperty($t,"diffLines",{enumerable:!0,get:function(){return Zz.diffLines}});Object.defineProperty($t,"diffTrimmedLines",{enumerable:!0,get:function(){return Zz.diffTrimmedLines}});Object.defineProperty($t,"diffSentences",{enumerable:!0,get:function(){return LSe.diffSentences}});Object.defineProperty($t,"diffCss",{enumerable:!0,get:function(){return NSe.diffCss}});Object.defineProperty($t,"diffJson",{enumerable:!0,get:function(){return _z.diffJson}});Object.defineProperty($t,"canonicalize",{enumerable:!0,get:function(){return _z.canonicalize}});Object.defineProperty($t,"diffArrays",{enumerable:!0,get:function(){return MSe.diffArrays}});Object.defineProperty($t,"applyPatch",{enumerable:!0,get:function(){return $z.applyPatch}});Object.defineProperty($t,"applyPatches",{enumerable:!0,get:function(){return $z.applyPatches}});Object.defineProperty($t,"parsePatch",{enumerable:!0,get:function(){return OSe.parsePatch}});Object.defineProperty($t,"merge",{enumerable:!0,get:function(){return KSe.merge}});Object.defineProperty($t,"structuredPatch",{enumerable:!0,get:function(){return SP.structuredPatch}});Object.defineProperty($t,"createTwoFilesPatch",{enumerable:!0,get:function(){return SP.createTwoFilesPatch}});Object.defineProperty($t,"createPatch",{enumerable:!0,get:function(){return SP.createPatch}});Object.defineProperty($t,"convertChangesToDMP",{enumerable:!0,get:function(){return TSe.convertChangesToDMP}});Object.defineProperty($t,"convertChangesToXML",{enumerable:!0,get:function(){return USe.convertChangesToXML}});var FSe=HSe(go()),RSe=Ez(),Xz=wz(),Zz=ZE(),LSe=Qz(),NSe=bz(),_z=Sz(),MSe=xz(),$z=Fz(),OSe=ey(),KSe=Wz(),SP=yP(),TSe=zz(),USe=Vz();function HSe(t){return t&&t.__esModule?t:{default:t}}});var sy=C((ytt,t5)=>{var YSe=dn(),GSe=JI(),jSe=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,qSe=/^\w*$/;function JSe(t,e){if(YSe(t))return!1;var r=typeof t;return r=="number"||r=="symbol"||r=="boolean"||t==null||GSe(t)?!0:qSe.test(t)||!jSe.test(t)||e!=null&&t in Object(e)}t5.exports=JSe});var Yn=C((Btt,r5)=>{function WSe(t){var e=typeof t;return t!=null&&(e=="object"||e=="function")}r5.exports=WSe});var oy=C((wtt,i5)=>{var zSe=OA(),VSe=Yn(),XSe="[object AsyncFunction]",ZSe="[object Function]",_Se="[object GeneratorFunction]",$Se="[object Proxy]";function exe(t){if(!VSe(t))return!1;var e=zSe(t);return e==ZSe||e==_Se||e==XSe||e==$Se}i5.exports=exe});var s5=C((Qtt,n5)=>{var txe=Tn(),rxe=txe["__core-js_shared__"];n5.exports=rxe});var A5=C((btt,o5)=>{var xP=s5(),a5=function(){var t=/[^.]+$/.exec(xP&&xP.keys&&xP.keys.IE_PROTO||"");return t?"Symbol(src)_1."+t:""}();function ixe(t){return!!a5&&a5 in t}o5.exports=ixe});var PP=C((Dtt,l5)=>{var nxe=Function.prototype,sxe=nxe.toString;function oxe(t){if(t!=null){try{return sxe.call(t)}catch(e){}try{return t+""}catch(e){}}return""}l5.exports=oxe});var u5=C((Stt,c5)=>{var axe=oy(),Axe=A5(),lxe=Yn(),cxe=PP(),uxe=/[\\^$.*+?()[\]{}|]/g,gxe=/^\[object .+?Constructor\]$/,hxe=Function.prototype,fxe=Object.prototype,pxe=hxe.toString,dxe=fxe.hasOwnProperty,Cxe=RegExp("^"+pxe.call(dxe).replace(uxe,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");function mxe(t){if(!lxe(t)||Axe(t))return!1;var e=axe(t)?Cxe:gxe;return e.test(cxe(t))}c5.exports=mxe});var h5=C((xtt,g5)=>{function Ixe(t,e){return t==null?void 0:t[e]}g5.exports=Ixe});var ma=C((Ptt,f5)=>{var Exe=u5(),yxe=h5();function Bxe(t,e){var r=yxe(t,e);return Exe(r)?r:void 0}f5.exports=Bxe});var Rf=C((ktt,p5)=>{var wxe=ma(),Qxe=wxe(Object,"create");p5.exports=Qxe});var m5=C((vtt,d5)=>{var C5=Rf();function bxe(){this.__data__=C5?C5(null):{},this.size=0}d5.exports=bxe});var E5=C((Ftt,I5)=>{function Dxe(t){var e=this.has(t)&&delete this.__data__[t];return this.size-=e?1:0,e}I5.exports=Dxe});var B5=C((Rtt,y5)=>{var Sxe=Rf(),xxe="__lodash_hash_undefined__",Pxe=Object.prototype,kxe=Pxe.hasOwnProperty;function vxe(t){var e=this.__data__;if(Sxe){var r=e[t];return r===xxe?void 0:r}return kxe.call(e,t)?e[t]:void 0}y5.exports=vxe});var Q5=C((Ltt,w5)=>{var Fxe=Rf(),Rxe=Object.prototype,Lxe=Rxe.hasOwnProperty;function Nxe(t){var e=this.__data__;return Fxe?e[t]!==void 0:Lxe.call(e,t)}w5.exports=Nxe});var D5=C((Ntt,b5)=>{var Mxe=Rf(),Oxe="__lodash_hash_undefined__";function Kxe(t,e){var r=this.__data__;return this.size+=this.has(t)?0:1,r[t]=Mxe&&e===void 0?Oxe:e,this}b5.exports=Kxe});var x5=C((Mtt,S5)=>{var Txe=m5(),Uxe=E5(),Hxe=B5(),Yxe=Q5(),Gxe=D5();function au(t){var e=-1,r=t==null?0:t.length;for(this.clear();++e{function jxe(){this.__data__=[],this.size=0}P5.exports=jxe});var Au=C((Ktt,v5)=>{function qxe(t,e){return t===e||t!==t&&e!==e}v5.exports=qxe});var Lf=C((Ttt,F5)=>{var Jxe=Au();function Wxe(t,e){for(var r=t.length;r--;)if(Jxe(t[r][0],e))return r;return-1}F5.exports=Wxe});var L5=C((Utt,R5)=>{var zxe=Lf(),Vxe=Array.prototype,Xxe=Vxe.splice;function Zxe(t){var e=this.__data__,r=zxe(e,t);if(r<0)return!1;var i=e.length-1;return r==i?e.pop():Xxe.call(e,r,1),--this.size,!0}R5.exports=Zxe});var M5=C((Htt,N5)=>{var _xe=Lf();function $xe(t){var e=this.__data__,r=_xe(e,t);return r<0?void 0:e[r][1]}N5.exports=$xe});var K5=C((Ytt,O5)=>{var ePe=Lf();function tPe(t){return ePe(this.__data__,t)>-1}O5.exports=tPe});var U5=C((Gtt,T5)=>{var rPe=Lf();function iPe(t,e){var r=this.__data__,i=rPe(r,t);return i<0?(++this.size,r.push([t,e])):r[i][1]=e,this}T5.exports=iPe});var Nf=C((jtt,H5)=>{var nPe=k5(),sPe=L5(),oPe=M5(),aPe=K5(),APe=U5();function lu(t){var e=-1,r=t==null?0:t.length;for(this.clear();++e{var lPe=ma(),cPe=Tn(),uPe=lPe(cPe,"Map");Y5.exports=uPe});var q5=C((Jtt,G5)=>{var j5=x5(),gPe=Nf(),hPe=ay();function fPe(){this.size=0,this.__data__={hash:new j5,map:new(hPe||gPe),string:new j5}}G5.exports=fPe});var W5=C((Wtt,J5)=>{function pPe(t){var e=typeof t;return e=="string"||e=="number"||e=="symbol"||e=="boolean"?t!=="__proto__":t===null}J5.exports=pPe});var Mf=C((ztt,z5)=>{var dPe=W5();function CPe(t,e){var r=t.__data__;return dPe(e)?r[typeof e=="string"?"string":"hash"]:r.map}z5.exports=CPe});var X5=C((Vtt,V5)=>{var mPe=Mf();function IPe(t){var e=mPe(this,t).delete(t);return this.size-=e?1:0,e}V5.exports=IPe});var _5=C((Xtt,Z5)=>{var EPe=Mf();function yPe(t){return EPe(this,t).get(t)}Z5.exports=yPe});var e6=C((Ztt,$5)=>{var BPe=Mf();function wPe(t){return BPe(this,t).has(t)}$5.exports=wPe});var r6=C((_tt,t6)=>{var QPe=Mf();function bPe(t,e){var r=QPe(this,t),i=r.size;return r.set(t,e),this.size+=r.size==i?0:1,this}t6.exports=bPe});var Ay=C(($tt,i6)=>{var DPe=q5(),SPe=X5(),xPe=_5(),PPe=e6(),kPe=r6();function cu(t){var e=-1,r=t==null?0:t.length;for(this.clear();++e{var s6=Ay(),vPe="Expected a function";function kP(t,e){if(typeof t!="function"||e!=null&&typeof e!="function")throw new TypeError(vPe);var r=function(){var i=arguments,n=e?e.apply(this,i):i[0],s=r.cache;if(s.has(n))return s.get(n);var o=t.apply(this,i);return r.cache=s.set(n,o)||s,o};return r.cache=new(kP.Cache||s6),r}kP.Cache=s6;n6.exports=kP});var A6=C((trt,a6)=>{var FPe=o6(),RPe=500;function LPe(t){var e=FPe(t,function(i){return r.size===RPe&&r.clear(),i}),r=e.cache;return e}a6.exports=LPe});var c6=C((rrt,l6)=>{var NPe=A6(),MPe=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,OPe=/\\(\\)?/g,KPe=NPe(function(t){var e=[];return t.charCodeAt(0)===46&&e.push(""),t.replace(MPe,function(r,i,n,s){e.push(n?s.replace(OPe,"$1"):i||r)}),e});l6.exports=KPe});var uu=C((irt,u6)=>{var TPe=dn(),UPe=sy(),HPe=c6(),YPe=Rc();function GPe(t,e){return TPe(t)?t:UPe(t,e)?[t]:HPe(YPe(t))}u6.exports=GPe});var el=C((nrt,g6)=>{var jPe=JI(),qPe=1/0;function JPe(t){if(typeof t=="string"||jPe(t))return t;var e=t+"";return e=="0"&&1/t==-qPe?"-0":e}g6.exports=JPe});var Of=C((srt,h6)=>{var WPe=uu(),zPe=el();function VPe(t,e){e=WPe(e,t);for(var r=0,i=e.length;t!=null&&r{var XPe=ma(),ZPe=function(){try{var t=XPe(Object,"defineProperty");return t({},"",{}),t}catch(e){}}();f6.exports=ZPe});var gu=C((art,p6)=>{var d6=vP();function _Pe(t,e,r){e=="__proto__"&&d6?d6(t,e,{configurable:!0,enumerable:!0,value:r,writable:!0}):t[e]=r}p6.exports=_Pe});var ly=C((Art,C6)=>{var $Pe=gu(),eke=Au(),tke=Object.prototype,rke=tke.hasOwnProperty;function ike(t,e,r){var i=t[e];(!(rke.call(t,e)&&eke(i,r))||r===void 0&&!(e in t))&&$Pe(t,e,r)}C6.exports=ike});var Kf=C((lrt,m6)=>{var nke=9007199254740991,ske=/^(?:0|[1-9]\d*)$/;function oke(t,e){var r=typeof t;return e=e==null?nke:e,!!e&&(r=="number"||r!="symbol"&&ske.test(t))&&t>-1&&t%1==0&&t{var ake=ly(),Ake=uu(),lke=Kf(),E6=Yn(),cke=el();function uke(t,e,r,i){if(!E6(t))return t;e=Ake(e,t);for(var n=-1,s=e.length,o=s-1,a=t;a!=null&&++n{var gke=Of(),hke=FP(),fke=uu();function pke(t,e,r){for(var i=-1,n=e.length,s={};++i{function dke(t,e){return t!=null&&e in Object(t)}w6.exports=dke});var D6=C((hrt,b6)=>{var Cke=OA(),mke=cs(),Ike="[object Arguments]";function Eke(t){return mke(t)&&Cke(t)==Ike}b6.exports=Eke});var Tf=C((frt,S6)=>{var x6=D6(),yke=cs(),P6=Object.prototype,Bke=P6.hasOwnProperty,wke=P6.propertyIsEnumerable,Qke=x6(function(){return arguments}())?x6:function(t){return yke(t)&&Bke.call(t,"callee")&&!wke.call(t,"callee")};S6.exports=Qke});var cy=C((prt,k6)=>{var bke=9007199254740991;function Dke(t){return typeof t=="number"&&t>-1&&t%1==0&&t<=bke}k6.exports=Dke});var RP=C((drt,v6)=>{var Ske=uu(),xke=Tf(),Pke=dn(),kke=Kf(),vke=cy(),Fke=el();function Rke(t,e,r){e=Ske(e,t);for(var i=-1,n=e.length,s=!1;++i{var Lke=Q6(),Nke=RP();function Mke(t,e){return t!=null&&Nke(t,e,Lke)}F6.exports=Mke});var L6=C((mrt,R6)=>{var Oke=B6(),Kke=LP();function Tke(t,e){return Oke(t,e,function(r,i){return Kke(t,i)})}R6.exports=Tke});var uy=C((Irt,N6)=>{function Uke(t,e){for(var r=-1,i=e.length,n=t.length;++r{var O6=MA(),Hke=Tf(),Yke=dn(),K6=O6?O6.isConcatSpreadable:void 0;function Gke(t){return Yke(t)||Hke(t)||!!(K6&&t&&t[K6])}M6.exports=Gke});var Y6=C((yrt,U6)=>{var jke=uy(),qke=T6();function H6(t,e,r,i,n){var s=-1,o=t.length;for(r||(r=qke),n||(n=[]);++s0&&r(a)?e>1?H6(a,e-1,r,i,n):jke(n,a):i||(n[n.length]=a)}return n}U6.exports=H6});var j6=C((Brt,G6)=>{var Jke=Y6();function Wke(t){var e=t==null?0:t.length;return e?Jke(t,1):[]}G6.exports=Wke});var J6=C((wrt,q6)=>{function zke(t,e,r){switch(r.length){case 0:return t.call(e);case 1:return t.call(e,r[0]);case 2:return t.call(e,r[0],r[1]);case 3:return t.call(e,r[0],r[1],r[2])}return t.apply(e,r)}q6.exports=zke});var NP=C((Qrt,W6)=>{var Vke=J6(),z6=Math.max;function Xke(t,e,r){return e=z6(e===void 0?t.length-1:e,0),function(){for(var i=arguments,n=-1,s=z6(i.length-e,0),o=Array(s);++n{function Zke(t){return function(){return t}}V6.exports=Zke});var gy=C((Drt,Z6)=>{function _ke(t){return t}Z6.exports=_ke});var eV=C((Srt,_6)=>{var $ke=X6(),$6=vP(),eve=gy(),tve=$6?function(t,e){return $6(t,"toString",{configurable:!0,enumerable:!1,value:$ke(e),writable:!0})}:eve;_6.exports=tve});var rV=C((xrt,tV)=>{var rve=800,ive=16,nve=Date.now;function sve(t){var e=0,r=0;return function(){var i=nve(),n=ive-(i-r);if(r=i,n>0){if(++e>=rve)return arguments[0]}else e=0;return t.apply(void 0,arguments)}}tV.exports=sve});var MP=C((Prt,iV)=>{var ove=eV(),ave=rV(),Ave=ave(ove);iV.exports=Ave});var sV=C((krt,nV)=>{var lve=j6(),cve=NP(),uve=MP();function gve(t){return uve(cve(t,void 0,lve),t+"")}nV.exports=gve});var aV=C((vrt,oV)=>{var hve=L6(),fve=sV(),pve=fve(function(t,e){return t==null?{}:hve(t,e)});oV.exports=pve});var mV=C((ynt,pV)=>{"use strict";var JP;try{JP=Map}catch(t){}var WP;try{WP=Set}catch(t){}function dV(t,e,r){if(!t||typeof t!="object"||typeof t=="function")return t;if(t.nodeType&&"cloneNode"in t)return t.cloneNode(!0);if(t instanceof Date)return new Date(t.getTime());if(t instanceof RegExp)return new RegExp(t);if(Array.isArray(t))return t.map(CV);if(JP&&t instanceof JP)return new Map(Array.from(t.entries()));if(WP&&t instanceof WP)return new Set(Array.from(t.values()));if(t instanceof Object){e.push(t);var i=Object.create(t);r.push(i);for(var n in t){var s=e.findIndex(function(o){return o===t[n]});i[n]=s>-1?r[s]:dV(t[n],e,r)}return i}return t}function CV(t){return dV(t,[],[])}pV.exports=CV});var Gf=C(zP=>{"use strict";Object.defineProperty(zP,"__esModule",{value:!0});zP.default=Qve;var bve=Object.prototype.toString,Dve=Error.prototype.toString,Sve=RegExp.prototype.toString,xve=typeof Symbol!="undefined"?Symbol.prototype.toString:()=>"",Pve=/^Symbol\((.*)\)(.*)$/;function kve(t){return t!=+t?"NaN":t===0&&1/t<0?"-0":""+t}function IV(t,e=!1){if(t==null||t===!0||t===!1)return""+t;let r=typeof t;if(r==="number")return kve(t);if(r==="string")return e?`"${t}"`:t;if(r==="function")return"[Function "+(t.name||"anonymous")+"]";if(r==="symbol")return xve.call(t).replace(Pve,"Symbol($1)");let i=bve.call(t).slice(8,-1);return i==="Date"?isNaN(t.getTime())?""+t:t.toISOString(t):i==="Error"||t instanceof Error?"["+Dve.call(t)+"]":i==="RegExp"?Sve.call(t):null}function Qve(t,e){let r=IV(t,e);return r!==null?r:JSON.stringify(t,function(i,n){let s=IV(this[i],e);return s!==null?s:n},2)}});var ho=C(vr=>{"use strict";Object.defineProperty(vr,"__esModule",{value:!0});vr.default=vr.array=vr.object=vr.boolean=vr.date=vr.number=vr.string=vr.mixed=void 0;var EV=vve(Gf());function vve(t){return t&&t.__esModule?t:{default:t}}var yV={default:"${path} is invalid",required:"${path} is a required field",oneOf:"${path} must be one of the following values: ${values}",notOneOf:"${path} must not be one of the following values: ${values}",notType:({path:t,type:e,value:r,originalValue:i})=>{let n=i!=null&&i!==r,s=`${t} must be a \`${e}\` type, but the final value was: \`${(0,EV.default)(r,!0)}\``+(n?` (cast from the value \`${(0,EV.default)(i,!0)}\`).`:".");return r===null&&(s+='\n If "null" is intended as an empty value be sure to mark the schema as `.nullable()`'),s},defined:"${path} must be defined"};vr.mixed=yV;var BV={length:"${path} must be exactly ${length} characters",min:"${path} must be at least ${min} characters",max:"${path} must be at most ${max} characters",matches:'${path} must match the following: "${regex}"',email:"${path} must be a valid email",url:"${path} must be a valid URL",uuid:"${path} must be a valid UUID",trim:"${path} must be a trimmed string",lowercase:"${path} must be a lowercase string",uppercase:"${path} must be a upper case string"};vr.string=BV;var wV={min:"${path} must be greater than or equal to ${min}",max:"${path} must be less than or equal to ${max}",lessThan:"${path} must be less than ${less}",moreThan:"${path} must be greater than ${more}",positive:"${path} must be a positive number",negative:"${path} must be a negative number",integer:"${path} must be an integer"};vr.number=wV;var QV={min:"${path} field must be later than ${min}",max:"${path} field must be at earlier than ${max}"};vr.date=QV;var bV={isValue:"${path} field must be ${value}"};vr.boolean=bV;var DV={noUnknown:"${path} field has unspecified keys: ${unknown}"};vr.object=DV;var SV={min:"${path} field must have at least ${min} items",max:"${path} field must have less than or equal to ${max} items",length:"${path} must be have ${length} items"};vr.array=SV;var Fve=Object.assign(Object.create(null),{mixed:yV,string:BV,number:wV,date:QV,object:DV,array:SV,boolean:bV});vr.default=Fve});var PV=C((Qnt,xV)=>{var Rve=Object.prototype,Lve=Rve.hasOwnProperty;function Nve(t,e){return t!=null&&Lve.call(t,e)}xV.exports=Nve});var jf=C((bnt,kV)=>{var Mve=PV(),Ove=RP();function Kve(t,e){return t!=null&&Ove(t,e,Mve)}kV.exports=Kve});var fu=C(Cy=>{"use strict";Object.defineProperty(Cy,"__esModule",{value:!0});Cy.default=void 0;var Tve=t=>t&&t.__isYupSchema__;Cy.default=Tve});var RV=C(my=>{"use strict";Object.defineProperty(my,"__esModule",{value:!0});my.default=void 0;var Uve=vV(jf()),Hve=vV(fu());function vV(t){return t&&t.__esModule?t:{default:t}}var FV=class{constructor(e,r){if(this.refs=e,this.refs=e,typeof r=="function"){this.fn=r;return}if(!(0,Uve.default)(r,"is"))throw new TypeError("`is:` is required for `when()` conditions");if(!r.then&&!r.otherwise)throw new TypeError("either `then:` or `otherwise:` is required for `when()` conditions");let{is:i,then:n,otherwise:s}=r,o=typeof i=="function"?i:(...a)=>a.every(l=>l===i);this.fn=function(...a){let l=a.pop(),c=a.pop(),u=o(...a)?n:s;if(!!u)return typeof u=="function"?u(c):c.concat(u.resolve(l))}}resolve(e,r){let i=this.refs.map(s=>s.getValue(r==null?void 0:r.value,r==null?void 0:r.parent,r==null?void 0:r.context)),n=this.fn.apply(e,i.concat(e,r));if(n===void 0||n===e)return e;if(!(0,Hve.default)(n))throw new TypeError("conditions must return a schema object");return n.resolve(r)}},Yve=FV;my.default=Yve});var XP=C(VP=>{"use strict";Object.defineProperty(VP,"__esModule",{value:!0});VP.default=Gve;function Gve(t){return t==null?[]:[].concat(t)}});var tl=C(Iy=>{"use strict";Object.defineProperty(Iy,"__esModule",{value:!0});Iy.default=void 0;var jve=LV(Gf()),qve=LV(XP());function LV(t){return t&&t.__esModule?t:{default:t}}function ZP(){return ZP=Object.assign||function(t){for(var e=1;e(0,jve.default)(r[s])):typeof e=="function"?e(r):e}static isError(e){return e&&e.name==="ValidationError"}constructor(e,r,i,n){super();this.name="ValidationError",this.value=r,this.path=i,this.type=n,this.errors=[],this.inner=[],(0,qve.default)(e).forEach(s=>{qf.isError(s)?(this.errors.push(...s.errors),this.inner=this.inner.concat(s.inner.length?s.inner:s)):this.errors.push(s)}),this.message=this.errors.length>1?`${this.errors.length} errors occurred`:this.errors[0],Error.captureStackTrace&&Error.captureStackTrace(this,qf)}};Iy.default=qf});var Ey=C(_P=>{"use strict";Object.defineProperty(_P,"__esModule",{value:!0});_P.default=Wve;var $P=zve(tl());function zve(t){return t&&t.__esModule?t:{default:t}}var Vve=t=>{let e=!1;return(...r)=>{e||(e=!0,t(...r))}};function Wve(t,e){let{endEarly:r,tests:i,args:n,value:s,errors:o,sort:a,path:l}=t,c=Vve(e),u=i.length,g=[];if(o=o||[],!u)return o.length?c(new $P.default(o,s,l)):c(null,s);for(let h=0;h{function Xve(t){return function(e,r,i){for(var n=-1,s=Object(e),o=i(e),a=o.length;a--;){var l=o[t?a:++n];if(r(s[l],l,s)===!1)break}return e}}NV.exports=Xve});var ek=C((Fnt,OV)=>{var Zve=MV(),_ve=Zve();OV.exports=_ve});var TV=C((Rnt,KV)=>{function $ve(t,e){for(var r=-1,i=Array(t);++r{function eFe(){return!1}UV.exports=eFe});var Wf=C((Jf,pu)=>{var tFe=Tn(),rFe=HV(),YV=typeof Jf=="object"&&Jf&&!Jf.nodeType&&Jf,GV=YV&&typeof pu=="object"&&pu&&!pu.nodeType&&pu,iFe=GV&&GV.exports===YV,jV=iFe?tFe.Buffer:void 0,nFe=jV?jV.isBuffer:void 0,sFe=nFe||rFe;pu.exports=sFe});var JV=C((Nnt,qV)=>{var oFe=OA(),aFe=cy(),AFe=cs(),lFe="[object Arguments]",cFe="[object Array]",uFe="[object Boolean]",gFe="[object Date]",hFe="[object Error]",fFe="[object Function]",pFe="[object Map]",dFe="[object Number]",CFe="[object Object]",mFe="[object RegExp]",IFe="[object Set]",EFe="[object String]",yFe="[object WeakMap]",BFe="[object ArrayBuffer]",wFe="[object DataView]",QFe="[object Float32Array]",bFe="[object Float64Array]",DFe="[object Int8Array]",SFe="[object Int16Array]",xFe="[object Int32Array]",PFe="[object Uint8Array]",kFe="[object Uint8ClampedArray]",vFe="[object Uint16Array]",FFe="[object Uint32Array]",Yt={};Yt[QFe]=Yt[bFe]=Yt[DFe]=Yt[SFe]=Yt[xFe]=Yt[PFe]=Yt[kFe]=Yt[vFe]=Yt[FFe]=!0;Yt[lFe]=Yt[cFe]=Yt[BFe]=Yt[uFe]=Yt[wFe]=Yt[gFe]=Yt[hFe]=Yt[fFe]=Yt[pFe]=Yt[dFe]=Yt[CFe]=Yt[mFe]=Yt[IFe]=Yt[EFe]=Yt[yFe]=!1;function RFe(t){return AFe(t)&&aFe(t.length)&&!!Yt[oFe(t)]}qV.exports=RFe});var yy=C((Mnt,WV)=>{function LFe(t){return function(e){return t(e)}}WV.exports=LFe});var By=C((zf,du)=>{var NFe=QS(),zV=typeof zf=="object"&&zf&&!zf.nodeType&&zf,Vf=zV&&typeof du=="object"&&du&&!du.nodeType&&du,MFe=Vf&&Vf.exports===zV,tk=MFe&&NFe.process,OFe=function(){try{var t=Vf&&Vf.require&&Vf.require("util").types;return t||tk&&tk.binding&&tk.binding("util")}catch(e){}}();du.exports=OFe});var wy=C((Ont,VV)=>{var KFe=JV(),TFe=yy(),XV=By(),ZV=XV&&XV.isTypedArray,UFe=ZV?TFe(ZV):KFe;VV.exports=UFe});var rk=C((Knt,_V)=>{var HFe=TV(),YFe=Tf(),GFe=dn(),jFe=Wf(),qFe=Kf(),JFe=wy(),WFe=Object.prototype,zFe=WFe.hasOwnProperty;function VFe(t,e){var r=GFe(t),i=!r&&YFe(t),n=!r&&!i&&jFe(t),s=!r&&!i&&!n&&JFe(t),o=r||i||n||s,a=o?HFe(t.length,String):[],l=a.length;for(var c in t)(e||zFe.call(t,c))&&!(o&&(c=="length"||n&&(c=="offset"||c=="parent")||s&&(c=="buffer"||c=="byteLength"||c=="byteOffset")||qFe(c,l)))&&a.push(c);return a}_V.exports=VFe});var Qy=C((Tnt,$V)=>{var XFe=Object.prototype;function ZFe(t){var e=t&&t.constructor,r=typeof e=="function"&&e.prototype||XFe;return t===r}$V.exports=ZFe});var ik=C((Unt,e9)=>{function _Fe(t,e){return function(r){return t(e(r))}}e9.exports=_Fe});var r9=C((Hnt,t9)=>{var $Fe=ik(),eRe=$Fe(Object.keys,Object);t9.exports=eRe});var n9=C((Ynt,i9)=>{var tRe=Qy(),rRe=r9(),iRe=Object.prototype,nRe=iRe.hasOwnProperty;function sRe(t){if(!tRe(t))return rRe(t);var e=[];for(var r in Object(t))nRe.call(t,r)&&r!="constructor"&&e.push(r);return e}i9.exports=sRe});var Xf=C((Gnt,s9)=>{var oRe=oy(),aRe=cy();function ARe(t){return t!=null&&aRe(t.length)&&!oRe(t)}s9.exports=ARe});var Cu=C((jnt,o9)=>{var lRe=rk(),cRe=n9(),uRe=Xf();function gRe(t){return uRe(t)?lRe(t):cRe(t)}o9.exports=gRe});var nk=C((qnt,a9)=>{var hRe=ek(),fRe=Cu();function pRe(t,e){return t&&hRe(t,e,fRe)}a9.exports=pRe});var l9=C((Jnt,A9)=>{var dRe=Nf();function CRe(){this.__data__=new dRe,this.size=0}A9.exports=CRe});var u9=C((Wnt,c9)=>{function mRe(t){var e=this.__data__,r=e.delete(t);return this.size=e.size,r}c9.exports=mRe});var h9=C((znt,g9)=>{function IRe(t){return this.__data__.get(t)}g9.exports=IRe});var p9=C((Vnt,f9)=>{function ERe(t){return this.__data__.has(t)}f9.exports=ERe});var C9=C((Xnt,d9)=>{var yRe=Nf(),BRe=ay(),wRe=Ay(),QRe=200;function bRe(t,e){var r=this.__data__;if(r instanceof yRe){var i=r.__data__;if(!BRe||i.length{var DRe=Nf(),SRe=l9(),xRe=u9(),PRe=h9(),kRe=p9(),vRe=C9();function mu(t){var e=this.__data__=new DRe(t);this.size=e.size}mu.prototype.clear=SRe;mu.prototype.delete=xRe;mu.prototype.get=PRe;mu.prototype.has=kRe;mu.prototype.set=vRe;m9.exports=mu});var E9=C((_nt,I9)=>{var FRe="__lodash_hash_undefined__";function RRe(t){return this.__data__.set(t,FRe),this}I9.exports=RRe});var B9=C(($nt,y9)=>{function LRe(t){return this.__data__.has(t)}y9.exports=LRe});var Q9=C((est,w9)=>{var NRe=Ay(),MRe=E9(),ORe=B9();function by(t){var e=-1,r=t==null?0:t.length;for(this.__data__=new NRe;++e{function KRe(t,e){for(var r=-1,i=t==null?0:t.length;++r{function TRe(t,e){return t.has(e)}S9.exports=TRe});var sk=C((ist,P9)=>{var URe=Q9(),HRe=D9(),YRe=x9(),GRe=1,jRe=2;function qRe(t,e,r,i,n,s){var o=r&GRe,a=t.length,l=e.length;if(a!=l&&!(o&&l>a))return!1;var c=s.get(t),u=s.get(e);if(c&&u)return c==e&&u==t;var g=-1,h=!0,f=r&jRe?new URe:void 0;for(s.set(t,e),s.set(e,t);++g{var JRe=Tn(),WRe=JRe.Uint8Array;k9.exports=WRe});var F9=C((sst,v9)=>{function zRe(t){var e=-1,r=Array(t.size);return t.forEach(function(i,n){r[++e]=[n,i]}),r}v9.exports=zRe});var L9=C((ost,R9)=>{function VRe(t){var e=-1,r=Array(t.size);return t.forEach(function(i){r[++e]=i}),r}R9.exports=VRe});var T9=C((ast,N9)=>{var M9=MA(),O9=ok(),XRe=Au(),ZRe=sk(),_Re=F9(),$Re=L9(),eLe=1,tLe=2,rLe="[object Boolean]",iLe="[object Date]",nLe="[object Error]",sLe="[object Map]",oLe="[object Number]",aLe="[object RegExp]",ALe="[object Set]",lLe="[object String]",cLe="[object Symbol]",uLe="[object ArrayBuffer]",gLe="[object DataView]",K9=M9?M9.prototype:void 0,ak=K9?K9.valueOf:void 0;function hLe(t,e,r,i,n,s,o){switch(r){case gLe:if(t.byteLength!=e.byteLength||t.byteOffset!=e.byteOffset)return!1;t=t.buffer,e=e.buffer;case uLe:return!(t.byteLength!=e.byteLength||!s(new O9(t),new O9(e)));case rLe:case iLe:case oLe:return XRe(+t,+e);case nLe:return t.name==e.name&&t.message==e.message;case aLe:case lLe:return t==e+"";case sLe:var a=_Re;case ALe:var l=i&eLe;if(a||(a=$Re),t.size!=e.size&&!l)return!1;var c=o.get(t);if(c)return c==e;i|=tLe,o.set(t,e);var u=ZRe(a(t),a(e),i,n,s,o);return o.delete(t),u;case cLe:if(ak)return ak.call(t)==ak.call(e)}return!1}N9.exports=hLe});var Ak=C((Ast,U9)=>{var fLe=uy(),pLe=dn();function dLe(t,e,r){var i=e(t);return pLe(t)?i:fLe(i,r(t))}U9.exports=dLe});var Y9=C((lst,H9)=>{function CLe(t,e){for(var r=-1,i=t==null?0:t.length,n=0,s=[];++r{function mLe(){return[]}G9.exports=mLe});var Dy=C((ust,j9)=>{var ILe=Y9(),ELe=lk(),yLe=Object.prototype,BLe=yLe.propertyIsEnumerable,q9=Object.getOwnPropertySymbols,wLe=q9?function(t){return t==null?[]:(t=Object(t),ILe(q9(t),function(e){return BLe.call(t,e)}))}:ELe;j9.exports=wLe});var ck=C((gst,J9)=>{var QLe=Ak(),bLe=Dy(),DLe=Cu();function SLe(t){return QLe(t,DLe,bLe)}J9.exports=SLe});var V9=C((hst,W9)=>{var z9=ck(),xLe=1,PLe=Object.prototype,kLe=PLe.hasOwnProperty;function vLe(t,e,r,i,n,s){var o=r&xLe,a=z9(t),l=a.length,c=z9(e),u=c.length;if(l!=u&&!o)return!1;for(var g=l;g--;){var h=a[g];if(!(o?h in e:kLe.call(e,h)))return!1}var f=s.get(t),p=s.get(e);if(f&&p)return f==e&&p==t;var m=!0;s.set(t,e),s.set(e,t);for(var I=o;++g{var FLe=ma(),RLe=Tn(),LLe=FLe(RLe,"DataView");X9.exports=LLe});var $9=C((pst,_9)=>{var NLe=ma(),MLe=Tn(),OLe=NLe(MLe,"Promise");_9.exports=OLe});var t7=C((dst,e7)=>{var KLe=ma(),TLe=Tn(),ULe=KLe(TLe,"Set");e7.exports=ULe});var i7=C((Cst,r7)=>{var HLe=ma(),YLe=Tn(),GLe=HLe(YLe,"WeakMap");r7.exports=GLe});var _f=C((mst,n7)=>{var uk=Z9(),gk=ay(),hk=$9(),fk=t7(),pk=i7(),s7=OA(),Iu=PP(),o7="[object Map]",jLe="[object Object]",a7="[object Promise]",A7="[object Set]",l7="[object WeakMap]",c7="[object DataView]",qLe=Iu(uk),JLe=Iu(gk),WLe=Iu(hk),zLe=Iu(fk),VLe=Iu(pk),rl=s7;(uk&&rl(new uk(new ArrayBuffer(1)))!=c7||gk&&rl(new gk)!=o7||hk&&rl(hk.resolve())!=a7||fk&&rl(new fk)!=A7||pk&&rl(new pk)!=l7)&&(rl=function(t){var e=s7(t),r=e==jLe?t.constructor:void 0,i=r?Iu(r):"";if(i)switch(i){case qLe:return c7;case JLe:return o7;case WLe:return a7;case zLe:return A7;case VLe:return l7}return e});n7.exports=rl});var m7=C((Ist,u7)=>{var dk=Zf(),XLe=sk(),ZLe=T9(),_Le=V9(),g7=_f(),h7=dn(),f7=Wf(),$Le=wy(),eNe=1,p7="[object Arguments]",d7="[object Array]",Sy="[object Object]",tNe=Object.prototype,C7=tNe.hasOwnProperty;function rNe(t,e,r,i,n,s){var o=h7(t),a=h7(e),l=o?d7:g7(t),c=a?d7:g7(e);l=l==p7?Sy:l,c=c==p7?Sy:c;var u=l==Sy,g=c==Sy,h=l==c;if(h&&f7(t)){if(!f7(e))return!1;o=!0,u=!1}if(h&&!u)return s||(s=new dk),o||$Le(t)?XLe(t,e,r,i,n,s):ZLe(t,e,l,r,i,n,s);if(!(r&eNe)){var f=u&&C7.call(t,"__wrapped__"),p=g&&C7.call(e,"__wrapped__");if(f||p){var m=f?t.value():t,I=p?e.value():e;return s||(s=new dk),n(m,I,r,i,s)}}return h?(s||(s=new dk),_Le(t,e,r,i,n,s)):!1}u7.exports=rNe});var Ck=C((Est,I7)=>{var iNe=m7(),E7=cs();function y7(t,e,r,i,n){return t===e?!0:t==null||e==null||!E7(t)&&!E7(e)?t!==t&&e!==e:iNe(t,e,r,i,y7,n)}I7.exports=y7});var w7=C((yst,B7)=>{var nNe=Zf(),sNe=Ck(),oNe=1,aNe=2;function ANe(t,e,r,i){var n=r.length,s=n,o=!i;if(t==null)return!s;for(t=Object(t);n--;){var a=r[n];if(o&&a[2]?a[1]!==t[a[0]]:!(a[0]in t))return!1}for(;++n{var lNe=Yn();function cNe(t){return t===t&&!lNe(t)}Q7.exports=cNe});var D7=C((wst,b7)=>{var uNe=mk(),gNe=Cu();function hNe(t){for(var e=gNe(t),r=e.length;r--;){var i=e[r],n=t[i];e[r]=[i,n,uNe(n)]}return e}b7.exports=hNe});var Ik=C((Qst,S7)=>{function fNe(t,e){return function(r){return r==null?!1:r[t]===e&&(e!==void 0||t in Object(r))}}S7.exports=fNe});var P7=C((bst,x7)=>{var pNe=w7(),dNe=D7(),CNe=Ik();function mNe(t){var e=dNe(t);return e.length==1&&e[0][2]?CNe(e[0][0],e[0][1]):function(r){return r===t||pNe(r,t,e)}}x7.exports=mNe});var xy=C((Dst,k7)=>{var INe=Of();function ENe(t,e,r){var i=t==null?void 0:INe(t,e);return i===void 0?r:i}k7.exports=ENe});var F7=C((Sst,v7)=>{var yNe=Ck(),BNe=xy(),wNe=LP(),QNe=sy(),bNe=mk(),DNe=Ik(),SNe=el(),xNe=1,PNe=2;function kNe(t,e){return QNe(t)&&bNe(e)?DNe(SNe(t),e):function(r){var i=BNe(r,t);return i===void 0&&i===e?wNe(r,t):yNe(e,i,xNe|PNe)}}v7.exports=kNe});var L7=C((xst,R7)=>{function vNe(t){return function(e){return e==null?void 0:e[t]}}R7.exports=vNe});var M7=C((Pst,N7)=>{var FNe=Of();function RNe(t){return function(e){return FNe(e,t)}}N7.exports=RNe});var K7=C((kst,O7)=>{var LNe=L7(),NNe=M7(),MNe=sy(),ONe=el();function KNe(t){return MNe(t)?LNe(ONe(t)):NNe(t)}O7.exports=KNe});var Ek=C((vst,T7)=>{var TNe=P7(),UNe=F7(),HNe=gy(),YNe=dn(),GNe=K7();function jNe(t){return typeof t=="function"?t:t==null?HNe:typeof t=="object"?YNe(t)?UNe(t[0],t[1]):TNe(t):GNe(t)}T7.exports=jNe});var yk=C((Fst,U7)=>{var qNe=gu(),JNe=nk(),WNe=Ek();function zNe(t,e){var r={};return e=WNe(e,3),JNe(t,function(i,n,s){qNe(r,n,e(i,n,s))}),r}U7.exports=zNe});var $f=C((Rst,H7)=>{"use strict";function il(t){this._maxSize=t,this.clear()}il.prototype.clear=function(){this._size=0,this._values=Object.create(null)};il.prototype.get=function(t){return this._values[t]};il.prototype.set=function(t,e){return this._size>=this._maxSize&&this.clear(),t in this._values||this._size++,this._values[t]=e};var VNe=/[^.^\]^[]+|(?=\[\]|\.\.)/g,Y7=/^\d+$/,XNe=/^\d/,ZNe=/[~`!#$%\^&*+=\-\[\]\\';,/{}|\\":<>\?]/g,_Ne=/^\s*(['"]?)(.*?)(\1)\s*$/,Bk=512,G7=new il(Bk),j7=new il(Bk),q7=new il(Bk);H7.exports={Cache:il,split:Qk,normalizePath:wk,setter:function(t){var e=wk(t);return j7.get(t)||j7.set(t,function(i,n){for(var s=0,o=e.length,a=i;s{"use strict";Object.defineProperty(ep,"__esModule",{value:!0});ep.create=iMe;ep.default=void 0;var nMe=$f(),Py={context:"$",value:"."};function iMe(t,e){return new ky(t,e)}var ky=class{constructor(e,r={}){if(typeof e!="string")throw new TypeError("ref must be a string, got: "+e);if(this.key=e.trim(),e==="")throw new TypeError("ref must be a non-empty string");this.isContext=this.key[0]===Py.context,this.isValue=this.key[0]===Py.value,this.isSibling=!this.isContext&&!this.isValue;let i=this.isContext?Py.context:this.isValue?Py.value:"";this.path=this.key.slice(i.length),this.getter=this.path&&(0,nMe.getter)(this.path,!0),this.map=r.map}getValue(e,r,i){let n=this.isContext?i:this.isValue?e:r;return this.getter&&(n=this.getter(n||{})),this.map&&(n=this.map(n)),n}cast(e,r){return this.getValue(e,r==null?void 0:r.parent,r==null?void 0:r.context)}resolve(){return this}describe(){return{type:"ref",key:this.key}}toString(){return`Ref(${this.key})`}static isRef(e){return e&&e.__isYupRef}};ep.default=ky;ky.prototype.__isYupRef=!0});var J7=C(Dk=>{"use strict";Object.defineProperty(Dk,"__esModule",{value:!0});Dk.default=sMe;var oMe=Sk(yk()),vy=Sk(tl()),aMe=Sk(nl());function Sk(t){return t&&t.__esModule?t:{default:t}}function Fy(){return Fy=Object.assign||function(t){for(var e=1;e=0)&&(r[n]=t[n]);return r}function sMe(t){function e(r,i){let{value:n,path:s="",label:o,options:a,originalValue:l,sync:c}=r,u=AMe(r,["value","path","label","options","originalValue","sync"]),{name:g,test:h,params:f,message:p}=t,{parent:m,context:I}=a;function y(K){return aMe.default.isRef(K)?K.getValue(n,m,I):K}function w(K={}){let v=(0,oMe.default)(Fy({value:n,originalValue:l,label:o,path:K.path||s},f,K.params),y),J=new vy.default(vy.default.formatError(K.message||p,v),n,v.path,K.type||g);return J.params=v,J}let x=Fy({path:s,parent:m,type:g,createError:w,resolve:y,options:a,originalValue:l},u);if(!c){try{Promise.resolve(h.call(x,n,x)).then(K=>{vy.default.isError(K)?i(K):K?i(null,K):i(w())})}catch(K){i(K)}return}let F;try{var N;if(F=h.call(x,n,x),typeof((N=F)==null?void 0:N.then)=="function")throw new Error(`Validation test of type: "${x.type}" returned a Promise during a synchronous validate. This test will finish after the validate call has returned`)}catch(K){i(K);return}vy.default.isError(F)?i(F):F?i(null,F):i(w())}return e.OPTIONS=t,e}});var xk=C(tp=>{"use strict";Object.defineProperty(tp,"__esModule",{value:!0});tp.getIn=W7;tp.default=void 0;var lMe=$f(),cMe=t=>t.substr(0,t.length-1).substr(1);function W7(t,e,r,i=r){let n,s,o;return e?((0,lMe.forEach)(e,(a,l,c)=>{let u=l?cMe(a):a;if(t=t.resolve({context:i,parent:n,value:r}),t.innerType){let g=c?parseInt(u,10):0;if(r&&g>=r.length)throw new Error(`Yup.reach cannot resolve an array item at index: ${a}, in the path: ${e}. because there is no value at that index. `);n=r,r=r&&r[g],t=t.innerType}if(!c){if(!t.fields||!t.fields[u])throw new Error(`The schema does not contain the path: ${e}. (failed at: ${o} which is a type: "${t._type}")`);n=r,r=r&&r[u],t=t.fields[u]}s=u,o=l?"["+a+"]":"."+a}),{schema:t,parent:n,parentPath:s}):{parent:n,parentPath:e,schema:t}}var uMe=(t,e,r,i)=>W7(t,e,r,i).schema,gMe=uMe;tp.default=gMe});var V7=C(Ry=>{"use strict";Object.defineProperty(Ry,"__esModule",{value:!0});Ry.default=void 0;var z7=hMe(nl());function hMe(t){return t&&t.__esModule?t:{default:t}}var Ly=class{constructor(){this.list=new Set,this.refs=new Map}get size(){return this.list.size+this.refs.size}describe(){let e=[];for(let r of this.list)e.push(r);for(let[,r]of this.refs)e.push(r.describe());return e}toArray(){return Array.from(this.list).concat(Array.from(this.refs.values()))}add(e){z7.default.isRef(e)?this.refs.set(e.key,e):this.list.add(e)}delete(e){z7.default.isRef(e)?this.refs.delete(e.key):this.list.delete(e)}has(e,r){if(this.list.has(e))return!0;let i,n=this.refs.values();for(;i=n.next(),!i.done;)if(r(i.value)===e)return!0;return!1}clone(){let e=new Ly;return e.list=new Set(this.list),e.refs=new Map(this.refs),e}merge(e,r){let i=this.clone();return e.list.forEach(n=>i.add(n)),e.refs.forEach(n=>i.add(n)),r.list.forEach(n=>i.delete(n)),r.refs.forEach(n=>i.delete(n)),i}};Ry.default=Ly});var po=C(Ny=>{"use strict";Object.defineProperty(Ny,"__esModule",{value:!0});Ny.default=void 0;var X7=fo(mV()),Eu=ho(),fMe=fo(RV()),Z7=fo(Ey()),My=fo(J7()),_7=fo(Gf()),pMe=fo(nl()),dMe=xk(),CMe=fo(XP()),$7=fo(tl()),eX=fo(V7());function fo(t){return t&&t.__esModule?t:{default:t}}function wn(){return wn=Object.assign||function(t){for(var e=1;e{this.typeError(Eu.mixed.notType)}),this.type=(e==null?void 0:e.type)||"mixed",this.spec=wn({strip:!1,strict:!1,abortEarly:!0,recursive:!0,nullable:!1,presence:"optional"},e==null?void 0:e.spec)}get _type(){return this.type}_typeCheck(e){return!0}clone(e){if(this._mutate)return e&&Object.assign(this.spec,e),this;let r=Object.create(Object.getPrototypeOf(this));return r.type=this.type,r._typeError=this._typeError,r._whitelistError=this._whitelistError,r._blacklistError=this._blacklistError,r._whitelist=this._whitelist.clone(),r._blacklist=this._blacklist.clone(),r.exclusiveTests=wn({},this.exclusiveTests),r.deps=[...this.deps],r.conditions=[...this.conditions],r.tests=[...this.tests],r.transforms=[...this.transforms],r.spec=(0,X7.default)(wn({},this.spec,e)),r}label(e){var r=this.clone();return r.spec.label=e,r}meta(...e){if(e.length===0)return this.spec.meta;let r=this.clone();return r.spec.meta=Object.assign(r.spec.meta||{},e[0]),r}withMutation(e){let r=this._mutate;this._mutate=!0;let i=e(this);return this._mutate=r,i}concat(e){if(!e||e===this)return this;if(e.type!==this.type&&this.type!=="mixed")throw new TypeError(`You cannot \`concat()\` schema's of different types: ${this.type} and ${e.type}`);let r=this,i=e.clone(),n=wn({},r.spec,i.spec);return i.spec=n,i._typeError||(i._typeError=r._typeError),i._whitelistError||(i._whitelistError=r._whitelistError),i._blacklistError||(i._blacklistError=r._blacklistError),i._whitelist=r._whitelist.merge(e._whitelist,e._blacklist),i._blacklist=r._blacklist.merge(e._blacklist,e._whitelist),i.tests=r.tests,i.exclusiveTests=r.exclusiveTests,i.withMutation(s=>{e.tests.forEach(o=>{s.test(o.OPTIONS)})}),i}isType(e){return this.spec.nullable&&e===null?!0:this._typeCheck(e)}resolve(e){let r=this;if(r.conditions.length){let i=r.conditions;r=r.clone(),r.conditions=[],r=i.reduce((n,s)=>s.resolve(n,e),r),r=r.resolve(e)}return r}cast(e,r={}){let i=this.resolve(wn({value:e},r)),n=i._cast(e,r);if(e!==void 0&&r.assert!==!1&&i.isType(n)!==!0){let s=(0,_7.default)(e),o=(0,_7.default)(n);throw new TypeError(`The value of ${r.path||"field"} could not be cast to a value that satisfies the schema type: "${i._type}". attempted value: ${s} -`+(o!==s?`result of cast: ${o}`:""))}return n}_cast(e,r){let i=e===void 0?e:this.transforms.reduce((n,s)=>s.call(this,n,e,this),e);return i===void 0&&(i=this.getDefault()),i}_validate(e,r={},i){let{sync:n,path:s,from:o=[],originalValue:a=e,strict:l=this.spec.strict,abortEarly:c=this.spec.abortEarly}=r,u=e;l||(u=this._cast(u,fn({assert:!1},r)));let g={value:u,path:s,options:r,originalValue:a,schema:this,label:this.spec.label,sync:n,from:o},h=[];this._typeError&&h.push(this._typeError),this._whitelistError&&h.push(this._whitelistError),this._blacklistError&&h.push(this._blacklistError),(0,E7.default)({args:g,value:u,path:s,sync:n,tests:h,endEarly:c},f=>{if(f)return void i(f,u);(0,E7.default)({tests:this.tests,args:g,path:s,sync:n,value:u,endEarly:c},i)})}validate(e,r,i){let n=this.resolve(fn({},r,{value:e}));return typeof i=="function"?n._validate(e,r,i):new Promise((s,o)=>n._validate(e,r,(a,l)=>{a?o(a):s(l)}))}validateSync(e,r){let i=this.resolve(fn({},r,{value:e})),n;return i._validate(e,fn({},r,{sync:!0}),(s,o)=>{if(s)throw s;n=o}),n}isValid(e,r){return this.validate(e,r).then(()=>!0,i=>{if(B7.default.isError(i))return!1;throw i})}isValidSync(e,r){try{return this.validateSync(e,r),!0}catch(i){if(B7.default.isError(i))return!1;throw i}}_getDefault(){let e=this.spec.default;return e==null?e:typeof e=="function"?e.call(this):(0,I7.default)(e)}getDefault(e){return this.resolve(e||{})._getDefault()}default(e){return arguments.length===0?this._getDefault():this.clone({default:e})}strict(e=!0){var r=this.clone();return r.spec.strict=e,r}_isPresent(e){return e!=null}defined(e=Gc.mixed.defined){return this.test({message:e,name:"defined",exclusive:!0,test(r){return r!==void 0}})}required(e=Gc.mixed.required){return this.clone({presence:"required"}).withMutation(r=>r.test({message:e,name:"required",exclusive:!0,test(i){return this.schema._isPresent(i)}}))}notRequired(){var e=this.clone({presence:"optional"});return e.tests=e.tests.filter(r=>r.OPTIONS.name!=="required"),e}nullable(e=!0){var r=this.clone({nullable:e!==!1});return r}transform(e){var r=this.clone();return r.transforms.push(e),r}test(...e){let r;if(e.length===1?typeof e[0]=="function"?r={test:e[0]}:r=e[0]:e.length===2?r={name:e[0],test:e[1]}:r={name:e[0],message:e[1],test:e[2]},r.message===void 0&&(r.message=Gc.mixed.default),typeof r.test!="function")throw new TypeError("`test` is a required parameters");let i=this.clone(),n=(0,YE.default)(r),s=r.exclusive||r.name&&i.exclusiveTests[r.name]===!0;if(r.exclusive&&!r.name)throw new TypeError("Exclusive tests must provide a unique `name` identifying the test");return r.name&&(i.exclusiveTests[r.name]=!!r.exclusive),i.tests=i.tests.filter(o=>!(o.OPTIONS.name===r.name&&(s||o.OPTIONS.test===n.OPTIONS.test))),i.tests.push(n),i}when(e,r){!Array.isArray(e)&&typeof e!="string"&&(r=e,e=".");let i=this.clone(),n=(0,SLe.default)(e).map(s=>new bLe.default(s));return n.forEach(s=>{s.isSibling&&i.deps.push(s.key)}),i.conditions.push(new QLe.default(n,r)),i}typeError(e){var r=this.clone();return r._typeError=(0,YE.default)({message:e,name:"typeError",test(i){return i!==void 0&&!this.schema.isType(i)?this.createError({params:{type:this.schema._type}}):!0}}),r}oneOf(e,r=Gc.mixed.oneOf){var i=this.clone();return e.forEach(n=>{i._whitelist.add(n),i._blacklist.delete(n)}),i._whitelistError=(0,YE.default)({message:r,name:"oneOf",test(n){if(n===void 0)return!0;let s=this.schema._whitelist;return s.has(n,this.resolve)?!0:this.createError({params:{values:s.toArray().join(", ")}})}}),i}notOneOf(e,r=Gc.mixed.notOneOf){var i=this.clone();return e.forEach(n=>{i._blacklist.add(n),i._whitelist.delete(n)}),i._blacklistError=(0,YE.default)({message:r,name:"notOneOf",test(n){let s=this.schema._blacklist;return s.has(n,this.resolve)?this.createError({params:{values:s.toArray().join(", ")}}):!0}}),i}strip(e=!0){let r=this.clone();return r.spec.strip=e,r}describe(){let e=this.clone(),{label:r,meta:i}=e.spec;return{meta:i,label:r,type:e.type,oneOf:e._whitelist.describe(),notOneOf:e._blacklist.describe(),tests:e.tests.map(s=>({name:s.OPTIONS.name,params:s.OPTIONS.params})).filter((s,o,a)=>a.findIndex(l=>l.name===s.name)===o)}}};HE.default=os;os.prototype.__isYupSchema__=!0;for(let t of["validate","validateSync"])os.prototype[`${t}At`]=function(e,r,i={}){let{parent:n,parentPath:s,schema:o}=(0,DLe.getIn)(this,e,r,i.context);return o[t](n&&n[s],fn({},i,{parent:n,path:e}))};for(let t of["equals","is"])os.prototype[t]=os.prototype.oneOf;for(let t of["not","nope"])os.prototype[t]=os.prototype.notOneOf;os.prototype.optional=os.prototype.notRequired});var b7=C(Ef=>{"use strict";Object.defineProperty(Ef,"__esModule",{value:!0});Ef.create=Q7;Ef.default=void 0;var xLe=PLe(_s());function PLe(t){return t&&t.__esModule?t:{default:t}}var Ix=xLe.default,kLe=Ix;Ef.default=kLe;function Q7(){return new Ix}Q7.prototype=Ix.prototype});var qc=C(jE=>{"use strict";Object.defineProperty(jE,"__esModule",{value:!0});jE.default=void 0;var vLe=t=>t==null;jE.default=vLe});var k7=C(yf=>{"use strict";Object.defineProperty(yf,"__esModule",{value:!0});yf.create=D7;yf.default=void 0;var FLe=S7(_s()),P7=Vs(),x7=S7(qc());function S7(t){return t&&t.__esModule?t:{default:t}}function D7(){return new GE}var GE=class extends FLe.default{constructor(){super({type:"boolean"});this.withMutation(()=>{this.transform(function(e){if(!this.isType(e)){if(/^(true|1)$/i.test(String(e)))return!0;if(/^(false|0)$/i.test(String(e)))return!1}return e})})}_typeCheck(e){return e instanceof Boolean&&(e=e.valueOf()),typeof e=="boolean"}isTrue(e=P7.boolean.isValue){return this.test({message:e,name:"is-value",exclusive:!0,params:{value:"true"},test(r){return(0,x7.default)(r)||r===!0}})}isFalse(e=P7.boolean.isValue){return this.test({message:e,name:"is-value",exclusive:!0,params:{value:"false"},test(r){return(0,x7.default)(r)||r===!1}})}};yf.default=GE;D7.prototype=GE.prototype});var R7=C(Bf=>{"use strict";Object.defineProperty(Bf,"__esModule",{value:!0});Bf.create=v7;Bf.default=void 0;var as=Vs(),$s=F7(qc()),RLe=F7(_s());function F7(t){return t&&t.__esModule?t:{default:t}}var LLe=/^((([a-z]|\d|[!#\$%&'\*\+\-\/=\?\^_`{\|}~]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])+(\.([a-z]|\d|[!#\$%&'\*\+\-\/=\?\^_`{\|}~]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])+)*)|((\x22)((((\x20|\x09)*(\x0d\x0a))?(\x20|\x09)+)?(([\x01-\x08\x0b\x0c\x0e-\x1f\x7f]|\x21|[\x23-\x5b]|[\x5d-\x7e]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(\\([\x01-\x09\x0b\x0c\x0d-\x7f]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]))))*(((\x20|\x09)*(\x0d\x0a))?(\x20|\x09)+)?(\x22)))@((([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.)+(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))$/i,MLe=/^((https?|ftp):)?\/\/(((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:)*@)?(((\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])\.(\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])\.(\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])\.(\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5]))|((([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.)+(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.?)(:\d*)?)(\/((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)+(\/(([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)*)*)?)?(\?((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)|[\uE000-\uF8FF]|\/|\?)*)?(\#((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)|\/|\?)*)?$/i,NLe=/^(?:[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}|00000000-0000-0000-0000-000000000000)$/i,OLe=t=>(0,$s.default)(t)||t===t.trim(),TLe={}.toString();function v7(){return new qE}var qE=class extends RLe.default{constructor(){super({type:"string"});this.withMutation(()=>{this.transform(function(e){if(this.isType(e)||Array.isArray(e))return e;let r=e!=null&&e.toString?e.toString():e;return r===TLe?e:r})})}_typeCheck(e){return e instanceof String&&(e=e.valueOf()),typeof e=="string"}_isPresent(e){return super._isPresent(e)&&!!e.length}length(e,r=as.string.length){return this.test({message:r,name:"length",exclusive:!0,params:{length:e},test(i){return(0,$s.default)(i)||i.length===this.resolve(e)}})}min(e,r=as.string.min){return this.test({message:r,name:"min",exclusive:!0,params:{min:e},test(i){return(0,$s.default)(i)||i.length>=this.resolve(e)}})}max(e,r=as.string.max){return this.test({name:"max",exclusive:!0,message:r,params:{max:e},test(i){return(0,$s.default)(i)||i.length<=this.resolve(e)}})}matches(e,r){let i=!1,n,s;return r&&(typeof r=="object"?{excludeEmptyString:i=!1,message:n,name:s}=r:n=r),this.test({name:s||"matches",message:n||as.string.matches,params:{regex:e},test:o=>(0,$s.default)(o)||o===""&&i||o.search(e)!==-1})}email(e=as.string.email){return this.matches(LLe,{name:"email",message:e,excludeEmptyString:!0})}url(e=as.string.url){return this.matches(MLe,{name:"url",message:e,excludeEmptyString:!0})}uuid(e=as.string.uuid){return this.matches(NLe,{name:"uuid",message:e,excludeEmptyString:!1})}ensure(){return this.default("").transform(e=>e===null?"":e)}trim(e=as.string.trim){return this.transform(r=>r!=null?r.trim():r).test({message:e,name:"trim",test:OLe})}lowercase(e=as.string.lowercase){return this.transform(r=>(0,$s.default)(r)?r:r.toLowerCase()).test({message:e,name:"string_case",exclusive:!0,test:r=>(0,$s.default)(r)||r===r.toLowerCase()})}uppercase(e=as.string.uppercase){return this.transform(r=>(0,$s.default)(r)?r:r.toUpperCase()).test({message:e,name:"string_case",exclusive:!0,test:r=>(0,$s.default)(r)||r===r.toUpperCase()})}};Bf.default=qE;v7.prototype=qE.prototype});var N7=C(wf=>{"use strict";Object.defineProperty(wf,"__esModule",{value:!0});wf.create=L7;wf.default=void 0;var KA=Vs(),UA=M7(qc()),KLe=M7(_s());function M7(t){return t&&t.__esModule?t:{default:t}}var ULe=t=>t!=+t;function L7(){return new JE}var JE=class extends KLe.default{constructor(){super({type:"number"});this.withMutation(()=>{this.transform(function(e){let r=e;if(typeof r=="string"){if(r=r.replace(/\s/g,""),r==="")return NaN;r=+r}return this.isType(r)?r:parseFloat(r)})})}_typeCheck(e){return e instanceof Number&&(e=e.valueOf()),typeof e=="number"&&!ULe(e)}min(e,r=KA.number.min){return this.test({message:r,name:"min",exclusive:!0,params:{min:e},test(i){return(0,UA.default)(i)||i>=this.resolve(e)}})}max(e,r=KA.number.max){return this.test({message:r,name:"max",exclusive:!0,params:{max:e},test(i){return(0,UA.default)(i)||i<=this.resolve(e)}})}lessThan(e,r=KA.number.lessThan){return this.test({message:r,name:"max",exclusive:!0,params:{less:e},test(i){return(0,UA.default)(i)||ithis.resolve(e)}})}positive(e=KA.number.positive){return this.moreThan(0,e)}negative(e=KA.number.negative){return this.lessThan(0,e)}integer(e=KA.number.integer){return this.test({name:"integer",message:e,test:r=>(0,UA.default)(r)||Number.isInteger(r)})}truncate(){return this.transform(e=>(0,UA.default)(e)?e:e|0)}round(e){var r,i=["ceil","floor","round","trunc"];if(e=((r=e)==null?void 0:r.toLowerCase())||"round",e==="trunc")return this.truncate();if(i.indexOf(e.toLowerCase())===-1)throw new TypeError("Only valid options for round() are: "+i.join(", "));return this.transform(n=>(0,UA.default)(n)?n:Math[e](n))}};wf.default=JE;L7.prototype=JE.prototype});var O7=C(Ex=>{"use strict";Object.defineProperty(Ex,"__esModule",{value:!0});Ex.default=HLe;var YLe=/^(\d{4}|[+\-]\d{6})(?:-?(\d{2})(?:-?(\d{2}))?)?(?:[ T]?(\d{2}):?(\d{2})(?::?(\d{2})(?:[,\.](\d{1,}))?)?(?:(Z)|([+\-])(\d{2})(?::?(\d{2}))?)?)?$/;function HLe(t){var e=[1,4,5,6,7,10,11],r=0,i,n;if(n=YLe.exec(t)){for(var s=0,o;o=e[s];++s)n[o]=+n[o]||0;n[2]=(+n[2]||1)-1,n[3]=+n[3]||1,n[7]=n[7]?String(n[7]).substr(0,3):0,(n[8]===void 0||n[8]==="")&&(n[9]===void 0||n[9]==="")?i=+new Date(n[1],n[2],n[3],n[4],n[5],n[6],n[7]):(n[8]!=="Z"&&n[9]!==void 0&&(r=n[10]*60+n[11],n[9]==="+"&&(r=0-r)),i=Date.UTC(n[1],n[2],n[3],n[4],n[5]+r,n[6],n[7]))}else i=Date.parse?Date.parse(t):NaN;return i}});var U7=C(Qf=>{"use strict";Object.defineProperty(Qf,"__esModule",{value:!0});Qf.create=yx;Qf.default=void 0;var jLe=WE(O7()),T7=Vs(),K7=WE(qc()),GLe=WE(TA()),qLe=WE(_s());function WE(t){return t&&t.__esModule?t:{default:t}}var Bx=new Date(""),JLe=t=>Object.prototype.toString.call(t)==="[object Date]";function yx(){return new bf}var bf=class extends qLe.default{constructor(){super({type:"date"});this.withMutation(()=>{this.transform(function(e){return this.isType(e)?e:(e=(0,jLe.default)(e),isNaN(e)?Bx:new Date(e))})})}_typeCheck(e){return JLe(e)&&!isNaN(e.getTime())}prepareParam(e,r){let i;if(GLe.default.isRef(e))i=e;else{let n=this.cast(e);if(!this._typeCheck(n))throw new TypeError(`\`${r}\` must be a Date or a value that can be \`cast()\` to a Date`);i=n}return i}min(e,r=T7.date.min){let i=this.prepareParam(e,"min");return this.test({message:r,name:"min",exclusive:!0,params:{min:e},test(n){return(0,K7.default)(n)||n>=this.resolve(i)}})}max(e,r=T7.date.max){var i=this.prepareParam(e,"max");return this.test({message:r,name:"max",exclusive:!0,params:{max:e},test(n){return(0,K7.default)(n)||n<=this.resolve(i)}})}};Qf.default=bf;bf.INVALID_DATE=Bx;yx.prototype=bf.prototype;yx.INVALID_DATE=Bx});var Y7=C((Pit,H7)=>{function WLe(t,e,r,i){var n=-1,s=t==null?0:t.length;for(i&&s&&(r=t[++n]);++n{function zLe(t){return function(e){return t==null?void 0:t[e]}}j7.exports=zLe});var J7=C((kit,q7)=>{var XLe=G7(),VLe={\u00C0:"A",\u00C1:"A",\u00C2:"A",\u00C3:"A",\u00C4:"A",\u00C5:"A",\u00E0:"a",\u00E1:"a",\u00E2:"a",\u00E3:"a",\u00E4:"a",\u00E5:"a",\u00C7:"C",\u00E7:"c",\u00D0:"D",\u00F0:"d",\u00C8:"E",\u00C9:"E",\u00CA:"E",\u00CB:"E",\u00E8:"e",\u00E9:"e",\u00EA:"e",\u00EB:"e",\u00CC:"I",\u00CD:"I",\u00CE:"I",\u00CF:"I",\u00EC:"i",\u00ED:"i",\u00EE:"i",\u00EF:"i",\u00D1:"N",\u00F1:"n",\u00D2:"O",\u00D3:"O",\u00D4:"O",\u00D5:"O",\u00D6:"O",\u00D8:"O",\u00F2:"o",\u00F3:"o",\u00F4:"o",\u00F5:"o",\u00F6:"o",\u00F8:"o",\u00D9:"U",\u00DA:"U",\u00DB:"U",\u00DC:"U",\u00F9:"u",\u00FA:"u",\u00FB:"u",\u00FC:"u",\u00DD:"Y",\u00FD:"y",\u00FF:"y",\u00C6:"Ae",\u00E6:"ae",\u00DE:"Th",\u00FE:"th",\u00DF:"ss",\u0100:"A",\u0102:"A",\u0104:"A",\u0101:"a",\u0103:"a",\u0105:"a",\u0106:"C",\u0108:"C",\u010A:"C",\u010C:"C",\u0107:"c",\u0109:"c",\u010B:"c",\u010D:"c",\u010E:"D",\u0110:"D",\u010F:"d",\u0111:"d",\u0112:"E",\u0114:"E",\u0116:"E",\u0118:"E",\u011A:"E",\u0113:"e",\u0115:"e",\u0117:"e",\u0119:"e",\u011B:"e",\u011C:"G",\u011E:"G",\u0120:"G",\u0122:"G",\u011D:"g",\u011F:"g",\u0121:"g",\u0123:"g",\u0124:"H",\u0126:"H",\u0125:"h",\u0127:"h",\u0128:"I",\u012A:"I",\u012C:"I",\u012E:"I",\u0130:"I",\u0129:"i",\u012B:"i",\u012D:"i",\u012F:"i",\u0131:"i",\u0134:"J",\u0135:"j",\u0136:"K",\u0137:"k",\u0138:"k",\u0139:"L",\u013B:"L",\u013D:"L",\u013F:"L",\u0141:"L",\u013A:"l",\u013C:"l",\u013E:"l",\u0140:"l",\u0142:"l",\u0143:"N",\u0145:"N",\u0147:"N",\u014A:"N",\u0144:"n",\u0146:"n",\u0148:"n",\u014B:"n",\u014C:"O",\u014E:"O",\u0150:"O",\u014D:"o",\u014F:"o",\u0151:"o",\u0154:"R",\u0156:"R",\u0158:"R",\u0155:"r",\u0157:"r",\u0159:"r",\u015A:"S",\u015C:"S",\u015E:"S",\u0160:"S",\u015B:"s",\u015D:"s",\u015F:"s",\u0161:"s",\u0162:"T",\u0164:"T",\u0166:"T",\u0163:"t",\u0165:"t",\u0167:"t",\u0168:"U",\u016A:"U",\u016C:"U",\u016E:"U",\u0170:"U",\u0172:"U",\u0169:"u",\u016B:"u",\u016D:"u",\u016F:"u",\u0171:"u",\u0173:"u",\u0174:"W",\u0175:"w",\u0176:"Y",\u0177:"y",\u0178:"Y",\u0179:"Z",\u017B:"Z",\u017D:"Z",\u017A:"z",\u017C:"z",\u017E:"z",\u0132:"IJ",\u0133:"ij",\u0152:"Oe",\u0153:"oe",\u0149:"'n",\u017F:"s"},ZLe=XLe(VLe);q7.exports=ZLe});var z7=C((vit,W7)=>{var _Le=J7(),$Le=rc(),eMe=/[\xc0-\xd6\xd8-\xf6\xf8-\xff\u0100-\u017f]/g,tMe="\\u0300-\\u036f",rMe="\\ufe20-\\ufe2f",iMe="\\u20d0-\\u20ff",nMe=tMe+rMe+iMe,sMe="["+nMe+"]",oMe=RegExp(sMe,"g");function aMe(t){return t=$Le(t),t&&t.replace(eMe,_Le).replace(oMe,"")}W7.exports=aMe});var V7=C((Fit,X7)=>{var AMe=/[^\x00-\x2f\x3a-\x40\x5b-\x60\x7b-\x7f]+/g;function lMe(t){return t.match(AMe)||[]}X7.exports=lMe});var _7=C((Rit,Z7)=>{var cMe=/[a-z][A-Z]|[A-Z]{2}[a-z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/;function uMe(t){return cMe.test(t)}Z7.exports=uMe});var CX=C((Lit,$7)=>{var eX="\\ud800-\\udfff",gMe="\\u0300-\\u036f",hMe="\\ufe20-\\ufe2f",fMe="\\u20d0-\\u20ff",pMe=gMe+hMe+fMe,tX="\\u2700-\\u27bf",rX="a-z\\xdf-\\xf6\\xf8-\\xff",dMe="\\xac\\xb1\\xd7\\xf7",CMe="\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf",mMe="\\u2000-\\u206f",IMe=" \\t\\x0b\\f\\xa0\\ufeff\\n\\r\\u2028\\u2029\\u1680\\u180e\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200a\\u202f\\u205f\\u3000",iX="A-Z\\xc0-\\xd6\\xd8-\\xde",EMe="\\ufe0e\\ufe0f",nX=dMe+CMe+mMe+IMe,sX="['\u2019]",oX="["+nX+"]",yMe="["+pMe+"]",aX="\\d+",BMe="["+tX+"]",AX="["+rX+"]",lX="[^"+eX+nX+aX+tX+rX+iX+"]",wMe="\\ud83c[\\udffb-\\udfff]",QMe="(?:"+yMe+"|"+wMe+")",bMe="[^"+eX+"]",cX="(?:\\ud83c[\\udde6-\\uddff]){2}",uX="[\\ud800-\\udbff][\\udc00-\\udfff]",Jc="["+iX+"]",DMe="\\u200d",gX="(?:"+AX+"|"+lX+")",SMe="(?:"+Jc+"|"+lX+")",hX="(?:"+sX+"(?:d|ll|m|re|s|t|ve))?",fX="(?:"+sX+"(?:D|LL|M|RE|S|T|VE))?",pX=QMe+"?",dX="["+EMe+"]?",PMe="(?:"+DMe+"(?:"+[bMe,cX,uX].join("|")+")"+dX+pX+")*",xMe="\\d*(?:1st|2nd|3rd|(?![123])\\dth)(?=\\b|[A-Z_])",kMe="\\d*(?:1ST|2ND|3RD|(?![123])\\dTH)(?=\\b|[a-z_])",vMe=dX+pX+PMe,FMe="(?:"+[BMe,cX,uX].join("|")+")"+vMe,RMe=RegExp([Jc+"?"+AX+"+"+hX+"(?="+[oX,Jc,"$"].join("|")+")",SMe+"+"+fX+"(?="+[oX,Jc+gX,"$"].join("|")+")",Jc+"?"+gX+"+"+hX,Jc+"+"+fX,kMe,xMe,aX,FMe].join("|"),"g");function LMe(t){return t.match(RMe)||[]}$7.exports=LMe});var IX=C((Mit,mX)=>{var MMe=V7(),NMe=_7(),OMe=rc(),TMe=CX();function KMe(t,e,r){return t=OMe(t),e=r?void 0:e,e===void 0?NMe(t)?TMe(t):MMe(t):t.match(e)||[]}mX.exports=KMe});var wx=C((Nit,EX)=>{var UMe=Y7(),HMe=z7(),YMe=IX(),jMe="['\u2019]",GMe=RegExp(jMe,"g");function qMe(t){return function(e){return UMe(YMe(HMe(e).replace(GMe,"")),t,"")}}EX.exports=qMe});var BX=C((Oit,yX)=>{var JMe=wx(),WMe=JMe(function(t,e,r){return t+(r?"_":"")+e.toLowerCase()});yX.exports=WMe});var QX=C((Tit,wX)=>{var zMe=ID(),XMe=wx(),VMe=XMe(function(t,e,r){return e=e.toLowerCase(),t+(r?zMe(e):e)});wX.exports=VMe});var DX=C((Kit,bX)=>{var ZMe=Nc(),_Me=zP(),$Me=cx();function eNe(t,e){var r={};return e=$Me(e,3),_Me(t,function(i,n,s){ZMe(r,e(i,n,s),i)}),r}bX.exports=eNe});var PX=C((Uit,Qx)=>{Qx.exports=function(t){return SX(tNe(t),t)};Qx.exports.array=SX;function SX(t,e){var r=t.length,i=new Array(r),n={},s=r,o=rNe(e),a=iNe(t);for(e.forEach(function(c){if(!a.has(c[0])||!a.has(c[1]))throw new Error("Unknown node. There is an unknown node in the supplied edges.")});s--;)n[s]||l(t[s],s,new Set);return i;function l(c,u,g){if(g.has(c)){var h;try{h=", node was:"+JSON.stringify(c)}catch(m){h=""}throw new Error("Cyclic dependency"+h)}if(!a.has(c))throw new Error("Found unknown node. Make sure to provided all involved nodes. Unknown node: "+JSON.stringify(c));if(!n[u]){n[u]=!0;var f=o.get(c)||new Set;if(f=Array.from(f),u=f.length){g.add(c);do{var p=f[--u];l(p,a.get(p),g)}while(u);g.delete(c)}i[--r]=c}}}function tNe(t){for(var e=new Set,r=0,i=t.length;r{"use strict";Object.defineProperty(bx,"__esModule",{value:!0});bx.default=nNe;var sNe=zE(BE()),oNe=zE(PX()),aNe=Cf(),ANe=zE(TA()),lNe=zE(Tc());function zE(t){return t&&t.__esModule?t:{default:t}}function nNe(t,e=[]){let r=[],i=[];function n(s,o){var a=(0,aNe.split)(s)[0];~i.indexOf(a)||i.push(a),~e.indexOf(`${o}-${a}`)||r.push([o,a])}for(let s in t)if((0,sNe.default)(t,s)){let o=t[s];~i.indexOf(s)||i.push(s),ANe.default.isRef(o)&&o.isSibling?n(o.path,s):(0,lNe.default)(o)&&"deps"in o&&o.deps.forEach(a=>n(a,s))}return oNe.default.array(i,r).reverse()}});var vX=C(Dx=>{"use strict";Object.defineProperty(Dx,"__esModule",{value:!0});Dx.default=cNe;function kX(t,e){let r=Infinity;return t.some((i,n)=>{var s;if(((s=e.path)==null?void 0:s.indexOf(i))!==-1)return r=n,!0}),r}function cNe(t){return(e,r)=>kX(t,e)-kX(t,r)}});var TX=C(Df=>{"use strict";Object.defineProperty(Df,"__esModule",{value:!0});Df.create=FX;Df.default=void 0;var RX=As(BE()),LX=As(BX()),uNe=As(QX()),gNe=As(DX()),hNe=As(ux()),fNe=Cf(),MX=Vs(),pNe=As(xX()),NX=As(vX()),dNe=As(DE()),CNe=As(MA()),Sx=As(_s());function As(t){return t&&t.__esModule?t:{default:t}}function Wc(){return Wc=Object.assign||function(t){for(var e=1;eObject.prototype.toString.call(t)==="[object Object]";function mNe(t,e){let r=Object.keys(t.fields);return Object.keys(e).filter(i=>r.indexOf(i)===-1)}var INe=(0,NX.default)([]),XE=class extends Sx.default{constructor(e){super({type:"object"});this.fields=Object.create(null),this._sortErrors=INe,this._nodes=[],this._excludedEdges=[],this.withMutation(()=>{this.transform(function(i){if(typeof i=="string")try{i=JSON.parse(i)}catch(n){i=null}return this.isType(i)?i:null}),e&&this.shape(e)})}_typeCheck(e){return OX(e)||typeof e=="function"}_cast(e,r={}){var i;let n=super._cast(e,r);if(n===void 0)return this.getDefault();if(!this._typeCheck(n))return n;let s=this.fields,o=(i=r.stripUnknown)!=null?i:this.spec.noUnknown,a=this._nodes.concat(Object.keys(n).filter(g=>this._nodes.indexOf(g)===-1)),l={},c=Wc({},r,{parent:l,__validating:r.__validating||!1}),u=!1;for(let g of a){let h=s[g],f=(0,RX.default)(n,g);if(h){let p,m=n[g];c.path=(r.path?`${r.path}.`:"")+g,h=h.resolve({value:m,context:r.context,parent:l});let I="spec"in h?h.spec:void 0,y=I==null?void 0:I.strict;if(I==null?void 0:I.strip){u=u||g in n;continue}p=!r.__validating||!y?h.cast(n[g],c):n[g],p!==void 0&&(l[g]=p)}else f&&!o&&(l[g]=n[g]);l[g]!==n[g]&&(u=!0)}return u?l:n}_validate(e,r={},i){let n=[],{sync:s,from:o=[],originalValue:a=e,abortEarly:l=this.spec.abortEarly,recursive:c=this.spec.recursive}=r;o=[{schema:this,value:a},...o],r.__validating=!0,r.originalValue=a,r.from=o,super._validate(e,r,(u,g)=>{if(u){if(!CNe.default.isError(u)||l)return void i(u,g);n.push(u)}if(!c||!OX(g)){i(n[0]||null,g);return}a=a||g;let h=this._nodes.map(f=>(p,m)=>{let I=f.indexOf(".")===-1?(r.path?`${r.path}.`:"")+f:`${r.path||""}["${f}"]`,y=this.fields[f];if(y&&"validate"in y){y.validate(g[f],Wc({},r,{path:I,from:o,strict:!0,parent:g,originalValue:a[f]}),m);return}m(null)});(0,dNe.default)({sync:s,tests:h,value:g,errors:n,endEarly:l,sort:this._sortErrors,path:r.path},i)})}clone(e){let r=super.clone(e);return r.fields=Wc({},this.fields),r._nodes=this._nodes,r._excludedEdges=this._excludedEdges,r._sortErrors=this._sortErrors,r}concat(e){let r=super.concat(e),i=r.fields;for(let[n,s]of Object.entries(this.fields)){let o=i[n];o===void 0?i[n]=s:o instanceof Sx.default&&s instanceof Sx.default&&(i[n]=s.concat(o))}return r.withMutation(()=>r.shape(i))}getDefaultFromShape(){let e={};return this._nodes.forEach(r=>{let i=this.fields[r];e[r]="default"in i?i.getDefault():void 0}),e}_getDefault(){if("default"in this.spec)return super._getDefault();if(!!this._nodes.length)return this.getDefaultFromShape()}shape(e,r=[]){let i=this.clone(),n=Object.assign(i.fields,e);if(i.fields=n,i._sortErrors=(0,NX.default)(Object.keys(n)),r.length){Array.isArray(r[0])||(r=[r]);let s=r.map(([o,a])=>`${o}-${a}`);i._excludedEdges=i._excludedEdges.concat(s)}return i._nodes=(0,pNe.default)(n,i._excludedEdges),i}pick(e){let r={};for(let i of e)this.fields[i]&&(r[i]=this.fields[i]);return this.clone().withMutation(i=>(i.fields={},i.shape(r)))}omit(e){let r=this.clone(),i=r.fields;r.fields={};for(let n of e)delete i[n];return r.withMutation(()=>r.shape(i))}from(e,r,i){let n=(0,fNe.getter)(e,!0);return this.transform(s=>{if(s==null)return s;let o=s;return(0,RX.default)(s,e)&&(o=Wc({},s),i||delete o[e],o[r]=n(s)),o})}noUnknown(e=!0,r=MX.object.noUnknown){typeof e=="string"&&(r=e,e=!0);let i=this.test({name:"noUnknown",exclusive:!0,message:r,test(n){if(n==null)return!0;let s=mNe(this.schema,n);return!e||s.length===0||this.createError({params:{unknown:s.join(", ")}})}});return i.spec.noUnknown=e,i}unknown(e=!0,r=MX.object.noUnknown){return this.noUnknown(!e,r)}transformKeys(e){return this.transform(r=>r&&(0,gNe.default)(r,(i,n)=>e(n)))}camelCase(){return this.transformKeys(uNe.default)}snakeCase(){return this.transformKeys(LX.default)}constantCase(){return this.transformKeys(e=>(0,LX.default)(e).toUpperCase())}describe(){let e=super.describe();return e.fields=(0,hNe.default)(this.fields,r=>r.describe()),e}};Df.default=XE;function FX(t){return new XE(t)}FX.prototype=XE.prototype});var UX=C(Sf=>{"use strict";Object.defineProperty(Sf,"__esModule",{value:!0});Sf.create=KX;Sf.default=void 0;var Px=zc(qc()),ENe=zc(Tc()),yNe=zc(Af()),xx=Vs(),BNe=zc(DE()),wNe=zc(MA()),QNe=zc(_s());function zc(t){return t&&t.__esModule?t:{default:t}}function VE(){return VE=Object.assign||function(t){for(var e=1;e{this.transform(function(r){if(typeof r=="string")try{r=JSON.parse(r)}catch(i){r=null}return this.isType(r)?r:null})})}_typeCheck(e){return Array.isArray(e)}get _subType(){return this.innerType}_cast(e,r){let i=super._cast(e,r);if(!this._typeCheck(i)||!this.innerType)return i;let n=!1,s=i.map((o,a)=>{let l=this.innerType.cast(o,VE({},r,{path:`${r.path||""}[${a}]`}));return l!==o&&(n=!0),l});return n?s:i}_validate(e,r={},i){var n,s;let o=[],a=r.sync,l=r.path,c=this.innerType,u=(n=r.abortEarly)!=null?n:this.spec.abortEarly,g=(s=r.recursive)!=null?s:this.spec.recursive,h=r.originalValue!=null?r.originalValue:e;super._validate(e,r,(f,p)=>{if(f){if(!wNe.default.isError(f)||u)return void i(f,p);o.push(f)}if(!g||!c||!this._typeCheck(p)){i(o[0]||null,p);return}h=h||p;let m=new Array(p.length);for(let I=0;Ic.validate(y,P,N)}(0,BNe.default)({sync:a,path:l,value:p,errors:o,endEarly:u,tests:m},i)})}clone(e){let r=super.clone(e);return r.innerType=this.innerType,r}concat(e){let r=super.concat(e);return r.innerType=this.innerType,e.innerType&&(r.innerType=r.innerType?r.innerType.concat(e.innerType):e.innerType),r}of(e){let r=this.clone();if(!(0,ENe.default)(e))throw new TypeError("`array.of()` sub-schema must be a valid yup schema not: "+(0,yNe.default)(e));return r.innerType=e,r}length(e,r=xx.array.length){return this.test({message:r,name:"length",exclusive:!0,params:{length:e},test(i){return(0,Px.default)(i)||i.length===this.resolve(e)}})}min(e,r){return r=r||xx.array.min,this.test({message:r,name:"min",exclusive:!0,params:{min:e},test(i){return(0,Px.default)(i)||i.length>=this.resolve(e)}})}max(e,r){return r=r||xx.array.max,this.test({message:r,name:"max",exclusive:!0,params:{max:e},test(i){return(0,Px.default)(i)||i.length<=this.resolve(e)}})}ensure(){return this.default(()=>[]).transform((e,r)=>this._typeCheck(e)?e:r==null?[]:[].concat(r))}compact(e){let r=e?(i,n,s)=>!e(i,n,s):i=>!!i;return this.transform(i=>i!=null?i.filter(r):i)}describe(){let e=super.describe();return this.innerType&&(e.innerType=this.innerType.describe()),e}nullable(e=!0){return super.nullable(e)}defined(){return super.defined()}required(e){return super.required(e)}};Sf.default=ZE;KX.prototype=ZE.prototype});var HX=C(Pf=>{"use strict";Object.defineProperty(Pf,"__esModule",{value:!0});Pf.create=bNe;Pf.default=void 0;var SNe=DNe(Tc());function DNe(t){return t&&t.__esModule?t:{default:t}}function bNe(t){return new kx(t)}var kx=class{constructor(e){this.type="lazy",this.__isYupSchema__=!0,this._resolve=(r,i={})=>{let n=this.builder(r,i);if(!(0,SNe.default)(n))throw new TypeError("lazy() functions must return a valid schema");return n.resolve(i)},this.builder=e}resolve(e){return this._resolve(e.value,e)}cast(e,r){return this._resolve(e,r).cast(e,r)}validate(e,r,i){return this._resolve(e,r).validate(e,r,i)}validateSync(e,r){return this._resolve(e,r).validateSync(e,r)}validateAt(e,r,i){return this._resolve(r,i).validateAt(e,r,i)}validateSyncAt(e,r,i){return this._resolve(r,i).validateSyncAt(e,r,i)}describe(){return null}isValid(e,r){return this._resolve(e,r).isValid(e,r)}isValidSync(e,r){return this._resolve(e,r).isValidSync(e,r)}},PNe=kx;Pf.default=PNe});var YX=C(vx=>{"use strict";Object.defineProperty(vx,"__esModule",{value:!0});vx.default=xNe;var vNe=kNe(Vs());function kNe(t){return t&&t.__esModule?t:{default:t}}function xNe(t){Object.keys(t).forEach(e=>{Object.keys(t[e]).forEach(r=>{vNe.default[e][r]=t[e][r]})})}});var Rx=C(Tt=>{"use strict";Object.defineProperty(Tt,"__esModule",{value:!0});Tt.addMethod=FNe;Object.defineProperty(Tt,"MixedSchema",{enumerable:!0,get:function(){return jX.default}});Object.defineProperty(Tt,"mixed",{enumerable:!0,get:function(){return jX.create}});Object.defineProperty(Tt,"BooleanSchema",{enumerable:!0,get:function(){return Fx.default}});Object.defineProperty(Tt,"bool",{enumerable:!0,get:function(){return Fx.create}});Object.defineProperty(Tt,"boolean",{enumerable:!0,get:function(){return Fx.create}});Object.defineProperty(Tt,"StringSchema",{enumerable:!0,get:function(){return GX.default}});Object.defineProperty(Tt,"string",{enumerable:!0,get:function(){return GX.create}});Object.defineProperty(Tt,"NumberSchema",{enumerable:!0,get:function(){return qX.default}});Object.defineProperty(Tt,"number",{enumerable:!0,get:function(){return qX.create}});Object.defineProperty(Tt,"DateSchema",{enumerable:!0,get:function(){return JX.default}});Object.defineProperty(Tt,"date",{enumerable:!0,get:function(){return JX.create}});Object.defineProperty(Tt,"ObjectSchema",{enumerable:!0,get:function(){return WX.default}});Object.defineProperty(Tt,"object",{enumerable:!0,get:function(){return WX.create}});Object.defineProperty(Tt,"ArraySchema",{enumerable:!0,get:function(){return zX.default}});Object.defineProperty(Tt,"array",{enumerable:!0,get:function(){return zX.create}});Object.defineProperty(Tt,"ref",{enumerable:!0,get:function(){return RNe.create}});Object.defineProperty(Tt,"lazy",{enumerable:!0,get:function(){return LNe.create}});Object.defineProperty(Tt,"ValidationError",{enumerable:!0,get:function(){return MNe.default}});Object.defineProperty(Tt,"reach",{enumerable:!0,get:function(){return NNe.default}});Object.defineProperty(Tt,"isSchema",{enumerable:!0,get:function(){return XX.default}});Object.defineProperty(Tt,"setLocale",{enumerable:!0,get:function(){return ONe.default}});Object.defineProperty(Tt,"BaseSchema",{enumerable:!0,get:function(){return TNe.default}});var jX=HA(b7()),Fx=HA(k7()),GX=HA(R7()),qX=HA(N7()),JX=HA(U7()),WX=HA(TX()),zX=HA(UX()),RNe=TA(),LNe=HX(),MNe=xf(MA()),NNe=xf(mx()),XX=xf(Tc()),ONe=xf(YX()),TNe=xf(_s());function xf(t){return t&&t.__esModule?t:{default:t}}function VX(){if(typeof WeakMap!="function")return null;var t=new WeakMap;return VX=function(){return t},t}function HA(t){if(t&&t.__esModule)return t;if(t===null||typeof t!="object"&&typeof t!="function")return{default:t};var e=VX();if(e&&e.has(t))return e.get(t);var r={},i=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var n in t)if(Object.prototype.hasOwnProperty.call(t,n)){var s=i?Object.getOwnPropertyDescriptor(t,n):null;s&&(s.get||s.set)?Object.defineProperty(r,n,s):r[n]=t[n]}return r.default=t,e&&e.set(t,r),r}function FNe(t,e,r){if(!t||!(0,XX.default)(t.prototype))throw new TypeError("You must provide a yup schema constructor function");if(typeof e!="string")throw new TypeError("A Method name must be provided");if(typeof r!="function")throw new TypeError("Method function must be provided");t.prototype[e]=r}});var tV=C((ont,vf)=>{"use strict";var YNe=process.env.TERM_PROGRAM==="Hyper",jNe=process.platform==="win32",_X=process.platform==="linux",Lx={ballotDisabled:"\u2612",ballotOff:"\u2610",ballotOn:"\u2611",bullet:"\u2022",bulletWhite:"\u25E6",fullBlock:"\u2588",heart:"\u2764",identicalTo:"\u2261",line:"\u2500",mark:"\u203B",middot:"\xB7",minus:"\uFF0D",multiplication:"\xD7",obelus:"\xF7",pencilDownRight:"\u270E",pencilRight:"\u270F",pencilUpRight:"\u2710",percent:"%",pilcrow2:"\u2761",pilcrow:"\xB6",plusMinus:"\xB1",section:"\xA7",starsOff:"\u2606",starsOn:"\u2605",upDownArrow:"\u2195"},$X=Object.assign({},Lx,{check:"\u221A",cross:"\xD7",ellipsisLarge:"...",ellipsis:"...",info:"i",question:"?",questionSmall:"?",pointer:">",pointerSmall:"\xBB",radioOff:"( )",radioOn:"(*)",warning:"\u203C"}),eV=Object.assign({},Lx,{ballotCross:"\u2718",check:"\u2714",cross:"\u2716",ellipsisLarge:"\u22EF",ellipsis:"\u2026",info:"\u2139",question:"?",questionFull:"\uFF1F",questionSmall:"\uFE56",pointer:_X?"\u25B8":"\u276F",pointerSmall:_X?"\u2023":"\u203A",radioOff:"\u25EF",radioOn:"\u25C9",warning:"\u26A0"});vf.exports=jNe&&!YNe?$X:eV;Reflect.defineProperty(vf.exports,"common",{enumerable:!1,value:Lx});Reflect.defineProperty(vf.exports,"windows",{enumerable:!1,value:$X});Reflect.defineProperty(vf.exports,"other",{enumerable:!1,value:eV})});var Rn=C((ant,Mx)=>{"use strict";var GNe=t=>t!==null&&typeof t=="object"&&!Array.isArray(t),qNe=/[\u001b\u009b][[\]#;?()]*(?:(?:(?:[^\W_]*;?[^\W_]*)\u0007)|(?:(?:[0-9]{1,4}(;[0-9]{0,4})*)?[~0-9=<>cf-nqrtyA-PRZ]))/g,rV=()=>{let t={enabled:!0,visible:!0,styles:{},keys:{}};"FORCE_COLOR"in process.env&&(t.enabled=process.env.FORCE_COLOR!=="0");let e=s=>{let o=s.open=`[${s.codes[0]}m`,a=s.close=`[${s.codes[1]}m`,l=s.regex=new RegExp(`\\u001b\\[${s.codes[1]}m`,"g");return s.wrap=(c,u)=>{c.includes(a)&&(c=c.replace(l,a+o));let g=o+c+a;return u?g.replace(/\r*\n/g,`${a}$&${o}`):g},s},r=(s,o,a)=>typeof s=="function"?s(o):s.wrap(o,a),i=(s,o)=>{if(s===""||s==null)return"";if(t.enabled===!1)return s;if(t.visible===!1)return"";let a=""+s,l=a.includes(` -`),c=o.length;for(c>0&&o.includes("unstyle")&&(o=[...new Set(["unstyle",...o])].reverse());c-- >0;)a=r(t.styles[o[c]],a,l);return a},n=(s,o,a)=>{t.styles[s]=e({name:s,codes:o}),(t.keys[a]||(t.keys[a]=[])).push(s),Reflect.defineProperty(t,s,{configurable:!0,enumerable:!0,set(c){t.alias(s,c)},get(){let c=u=>i(u,c.stack);return Reflect.setPrototypeOf(c,t),c.stack=this.stack?this.stack.concat(s):[s],c}})};return n("reset",[0,0],"modifier"),n("bold",[1,22],"modifier"),n("dim",[2,22],"modifier"),n("italic",[3,23],"modifier"),n("underline",[4,24],"modifier"),n("inverse",[7,27],"modifier"),n("hidden",[8,28],"modifier"),n("strikethrough",[9,29],"modifier"),n("black",[30,39],"color"),n("red",[31,39],"color"),n("green",[32,39],"color"),n("yellow",[33,39],"color"),n("blue",[34,39],"color"),n("magenta",[35,39],"color"),n("cyan",[36,39],"color"),n("white",[37,39],"color"),n("gray",[90,39],"color"),n("grey",[90,39],"color"),n("bgBlack",[40,49],"bg"),n("bgRed",[41,49],"bg"),n("bgGreen",[42,49],"bg"),n("bgYellow",[43,49],"bg"),n("bgBlue",[44,49],"bg"),n("bgMagenta",[45,49],"bg"),n("bgCyan",[46,49],"bg"),n("bgWhite",[47,49],"bg"),n("blackBright",[90,39],"bright"),n("redBright",[91,39],"bright"),n("greenBright",[92,39],"bright"),n("yellowBright",[93,39],"bright"),n("blueBright",[94,39],"bright"),n("magentaBright",[95,39],"bright"),n("cyanBright",[96,39],"bright"),n("whiteBright",[97,39],"bright"),n("bgBlackBright",[100,49],"bgBright"),n("bgRedBright",[101,49],"bgBright"),n("bgGreenBright",[102,49],"bgBright"),n("bgYellowBright",[103,49],"bgBright"),n("bgBlueBright",[104,49],"bgBright"),n("bgMagentaBright",[105,49],"bgBright"),n("bgCyanBright",[106,49],"bgBright"),n("bgWhiteBright",[107,49],"bgBright"),t.ansiRegex=qNe,t.hasColor=t.hasAnsi=s=>(t.ansiRegex.lastIndex=0,typeof s=="string"&&s!==""&&t.ansiRegex.test(s)),t.alias=(s,o)=>{let a=typeof o=="string"?t[o]:o;if(typeof a!="function")throw new TypeError("Expected alias to be the name of an existing color (string) or a function");a.stack||(Reflect.defineProperty(a,"name",{value:s}),t.styles[s]=a,a.stack=[s]),Reflect.defineProperty(t,s,{configurable:!0,enumerable:!0,set(l){t.alias(s,l)},get(){let l=c=>i(c,l.stack);return Reflect.setPrototypeOf(l,t),l.stack=this.stack?this.stack.concat(a.stack):a.stack,l}})},t.theme=s=>{if(!GNe(s))throw new TypeError("Expected theme to be an object");for(let o of Object.keys(s))t.alias(o,s[o]);return t},t.alias("unstyle",s=>typeof s=="string"&&s!==""?(t.ansiRegex.lastIndex=0,s.replace(t.ansiRegex,"")):""),t.alias("noop",s=>s),t.none=t.clear=t.noop,t.stripColor=t.unstyle,t.symbols=tV(),t.define=n,t};Mx.exports=rV();Mx.exports.create=rV});var qr=C(At=>{"use strict";var JNe=Object.prototype.toString,pn=Rn(),iV=!1,Nx=[],nV={yellow:"blue",cyan:"red",green:"magenta",black:"white",blue:"yellow",red:"cyan",magenta:"green",white:"black"};At.longest=(t,e)=>t.reduce((r,i)=>Math.max(r,e?i[e].length:i.length),0);At.hasColor=t=>!!t&&pn.hasColor(t);var $E=At.isObject=t=>t!==null&&typeof t=="object"&&!Array.isArray(t);At.nativeType=t=>JNe.call(t).slice(8,-1).toLowerCase().replace(/\s/g,"");At.isAsyncFn=t=>At.nativeType(t)==="asyncfunction";At.isPrimitive=t=>t!=null&&typeof t!="object"&&typeof t!="function";At.resolve=(t,e,...r)=>typeof e=="function"?e.call(t,...r):e;At.scrollDown=(t=[])=>[...t.slice(1),t[0]];At.scrollUp=(t=[])=>[t.pop(),...t];At.reorder=(t=[])=>{let e=t.slice();return e.sort((r,i)=>r.index>i.index?1:r.index{let i=t.length,n=r===i?0:r<0?i-1:r,s=t[e];t[e]=t[n],t[n]=s};At.width=(t,e=80)=>{let r=t&&t.columns?t.columns:e;return t&&typeof t.getWindowSize=="function"&&(r=t.getWindowSize()[0]),process.platform==="win32"?r-1:r};At.height=(t,e=20)=>{let r=t&&t.rows?t.rows:e;return t&&typeof t.getWindowSize=="function"&&(r=t.getWindowSize()[1]),r};At.wordWrap=(t,e={})=>{if(!t)return t;typeof e=="number"&&(e={width:e});let{indent:r="",newline:i=` -`+r,width:n=80}=e;n-=((i+r).match(/[^\S\n]/g)||[]).length;let o=`.{1,${n}}([\\s\\u200B]+|$)|[^\\s\\u200B]+?([\\s\\u200B]+|$)`,a=t.trim(),l=new RegExp(o,"g"),c=a.match(l)||[];return c=c.map(u=>u.replace(/\n$/,"")),e.padEnd&&(c=c.map(u=>u.padEnd(n," "))),e.padStart&&(c=c.map(u=>u.padStart(n," "))),r+c.join(i)};At.unmute=t=>{let e=t.stack.find(i=>pn.keys.color.includes(i));return e?pn[e]:t.stack.find(i=>i.slice(2)==="bg")?pn[e.slice(2)]:i=>i};At.pascal=t=>t?t[0].toUpperCase()+t.slice(1):"";At.inverse=t=>{if(!t||!t.stack)return t;let e=t.stack.find(i=>pn.keys.color.includes(i));if(e){let i=pn["bg"+At.pascal(e)];return i?i.black:t}let r=t.stack.find(i=>i.slice(0,2)==="bg");return r?pn[r.slice(2).toLowerCase()]||t:pn.none};At.complement=t=>{if(!t||!t.stack)return t;let e=t.stack.find(i=>pn.keys.color.includes(i)),r=t.stack.find(i=>i.slice(0,2)==="bg");if(e&&!r)return pn[nV[e]||e];if(r){let i=r.slice(2).toLowerCase(),n=nV[i];return n&&pn["bg"+At.pascal(n)]||t}return pn.none};At.meridiem=t=>{let e=t.getHours(),r=t.getMinutes(),i=e>=12?"pm":"am";e=e%12;let n=e===0?12:e,s=r<10?"0"+r:r;return n+":"+s+" "+i};At.set=(t={},e="",r)=>e.split(".").reduce((i,n,s,o)=>{let a=o.length-1>s?i[n]||{}:r;return!At.isObject(a)&&s{let i=t[e]==null?e.split(".").reduce((n,s)=>n&&n[s],t):t[e];return i==null?r:i};At.mixin=(t,e)=>{if(!$E(t))return e;if(!$E(e))return t;for(let r of Object.keys(e)){let i=Object.getOwnPropertyDescriptor(e,r);if(i.hasOwnProperty("value"))if(t.hasOwnProperty(r)&&$E(i.value)){let n=Object.getOwnPropertyDescriptor(t,r);$E(n.value)?t[r]=At.merge({},t[r],e[r]):Reflect.defineProperty(t,r,i)}else Reflect.defineProperty(t,r,i);else Reflect.defineProperty(t,r,i)}return t};At.merge=(...t)=>{let e={};for(let r of t)At.mixin(e,r);return e};At.mixinEmitter=(t,e)=>{let r=e.constructor.prototype;for(let i of Object.keys(r)){let n=r[i];typeof n=="function"?At.define(t,i,n.bind(e)):At.define(t,i,n)}};At.onExit=t=>{let e=(r,i)=>{iV||(iV=!0,Nx.forEach(n=>n()),r===!0&&process.exit(128+i))};Nx.length===0&&(process.once("SIGTERM",e.bind(null,!0,15)),process.once("SIGINT",e.bind(null,!0,2)),process.once("exit",e)),Nx.push(t)};At.define=(t,e,r)=>{Reflect.defineProperty(t,e,{value:r})};At.defineExport=(t,e,r)=>{let i;Reflect.defineProperty(t,e,{enumerable:!0,configurable:!0,set(n){i=n},get(){return i?i():r()}})}});var sV=C(Vc=>{"use strict";Vc.ctrl={a:"first",b:"backward",c:"cancel",d:"deleteForward",e:"last",f:"forward",g:"reset",i:"tab",k:"cutForward",l:"reset",n:"newItem",m:"cancel",j:"submit",p:"search",r:"remove",s:"save",u:"undo",w:"cutLeft",x:"toggleCursor",v:"paste"};Vc.shift={up:"shiftUp",down:"shiftDown",left:"shiftLeft",right:"shiftRight",tab:"prev"};Vc.fn={up:"pageUp",down:"pageDown",left:"pageLeft",right:"pageRight",delete:"deleteForward"};Vc.option={b:"backward",f:"forward",d:"cutRight",left:"cutLeft",up:"altUp",down:"altDown"};Vc.keys={pageup:"pageUp",pagedown:"pageDown",home:"home",end:"end",cancel:"cancel",delete:"deleteForward",backspace:"delete",down:"down",enter:"submit",escape:"cancel",left:"left",space:"space",number:"number",return:"submit",right:"right",tab:"next",up:"up"}});var AV=C((cnt,oV)=>{"use strict";var aV=require("readline"),WNe=sV(),zNe=/^(?:\x1b)([a-zA-Z0-9])$/,XNe=/^(?:\x1b+)(O|N|\[|\[\[)(?:(\d+)(?:;(\d+))?([~^$])|(?:1;)?(\d+)?([a-zA-Z]))/,VNe={OP:"f1",OQ:"f2",OR:"f3",OS:"f4","[11~":"f1","[12~":"f2","[13~":"f3","[14~":"f4","[[A":"f1","[[B":"f2","[[C":"f3","[[D":"f4","[[E":"f5","[15~":"f5","[17~":"f6","[18~":"f7","[19~":"f8","[20~":"f9","[21~":"f10","[23~":"f11","[24~":"f12","[A":"up","[B":"down","[C":"right","[D":"left","[E":"clear","[F":"end","[H":"home",OA:"up",OB:"down",OC:"right",OD:"left",OE:"clear",OF:"end",OH:"home","[1~":"home","[2~":"insert","[3~":"delete","[4~":"end","[5~":"pageup","[6~":"pagedown","[[5~":"pageup","[[6~":"pagedown","[7~":"home","[8~":"end","[a":"up","[b":"down","[c":"right","[d":"left","[e":"clear","[2$":"insert","[3$":"delete","[5$":"pageup","[6$":"pagedown","[7$":"home","[8$":"end",Oa:"up",Ob:"down",Oc:"right",Od:"left",Oe:"clear","[2^":"insert","[3^":"delete","[5^":"pageup","[6^":"pagedown","[7^":"home","[8^":"end","[Z":"tab"};function ZNe(t){return["[a","[b","[c","[d","[e","[2$","[3$","[5$","[6$","[7$","[8$","[Z"].includes(t)}function _Ne(t){return["Oa","Ob","Oc","Od","Oe","[2^","[3^","[5^","[6^","[7^","[8^"].includes(t)}var ey=(t="",e={})=>{let r,i={name:e.name,ctrl:!1,meta:!1,shift:!1,option:!1,sequence:t,raw:t,...e};if(Buffer.isBuffer(t)?t[0]>127&&t[1]===void 0?(t[0]-=128,t=""+String(t)):t=String(t):t!==void 0&&typeof t!="string"?t=String(t):t||(t=i.sequence||""),i.sequence=i.sequence||t||i.name,t==="\r")i.raw=void 0,i.name="return";else if(t===` -`)i.name="enter";else if(t===" ")i.name="tab";else if(t==="\b"||t==="\x7F"||t==="\x7F"||t==="\b")i.name="backspace",i.meta=t.charAt(0)==="";else if(t===""||t==="")i.name="escape",i.meta=t.length===2;else if(t===" "||t===" ")i.name="space",i.meta=t.length===2;else if(t<="")i.name=String.fromCharCode(t.charCodeAt(0)+"a".charCodeAt(0)-1),i.ctrl=!0;else if(t.length===1&&t>="0"&&t<="9")i.name="number";else if(t.length===1&&t>="a"&&t<="z")i.name=t;else if(t.length===1&&t>="A"&&t<="Z")i.name=t.toLowerCase(),i.shift=!0;else if(r=zNe.exec(t))i.meta=!0,i.shift=/^[A-Z]$/.test(r[1]);else if(r=XNe.exec(t)){let n=[...t];n[0]===""&&n[1]===""&&(i.option=!0);let s=[r[1],r[2],r[4],r[6]].filter(Boolean).join(""),o=(r[3]||r[5]||1)-1;i.ctrl=!!(o&4),i.meta=!!(o&10),i.shift=!!(o&1),i.code=s,i.name=VNe[s],i.shift=ZNe(s)||i.shift,i.ctrl=_Ne(s)||i.ctrl}return i};ey.listen=(t={},e)=>{let{stdin:r}=t;if(!r||r!==process.stdin&&!r.isTTY)throw new Error("Invalid stream passed");let i=aV.createInterface({terminal:!0,input:r});aV.emitKeypressEvents(r,i);let n=(a,l)=>e(a,ey(a,l),i),s=r.isRaw;return r.isTTY&&r.setRawMode(!0),r.on("keypress",n),i.resume(),()=>{r.isTTY&&r.setRawMode(s),r.removeListener("keypress",n),i.pause(),i.close()}};ey.action=(t,e,r)=>{let i={...WNe,...r};return e.ctrl?(e.action=i.ctrl[e.name],e):e.option&&i.option?(e.action=i.option[e.name],e):e.shift?(e.action=i.shift[e.name],e):(e.action=i.keys[e.name],e)};oV.exports=ey});var cV=C((unt,lV)=>{"use strict";lV.exports=t=>{t.timers=t.timers||{};let e=t.options.timers;if(!!e)for(let r of Object.keys(e)){let i=e[r];typeof i=="number"&&(i={interval:i}),$Ne(t,r,i)}};function $Ne(t,e,r={}){let i=t.timers[e]={name:e,start:Date.now(),ms:0,tick:0},n=r.interval||120;i.frames=r.frames||[],i.loading=!0;let s=setInterval(()=>{i.ms=Date.now()-i.start,i.tick++,t.render()},n);return i.stop=()=>{i.loading=!1,clearInterval(s)},Reflect.defineProperty(i,"interval",{value:s}),t.once("close",()=>i.stop()),i.stop}});var hV=C((gnt,uV)=>{"use strict";var{define:eOe,width:tOe}=qr(),gV=class{constructor(e){let r=e.options;eOe(this,"_prompt",e),this.type=e.type,this.name=e.name,this.message="",this.header="",this.footer="",this.error="",this.hint="",this.input="",this.cursor=0,this.index=0,this.lines=0,this.tick=0,this.prompt="",this.buffer="",this.width=tOe(r.stdout||process.stdout),Object.assign(this,r),this.name=this.name||this.message,this.message=this.message||this.name,this.symbols=e.symbols,this.styles=e.styles,this.required=new Set,this.cancelled=!1,this.submitted=!1}clone(){let e={...this};return e.status=this.status,e.buffer=Buffer.from(e.buffer),delete e.clone,e}set color(e){this._color=e}get color(){let e=this.prompt.styles;if(this.cancelled)return e.cancelled;if(this.submitted)return e.submitted;let r=this._color||e[this.status];return typeof r=="function"?r:e.pending}set loading(e){this._loading=e}get loading(){return typeof this._loading=="boolean"?this._loading:this.loadingChoices?"choices":!1}get status(){return this.cancelled?"cancelled":this.submitted?"submitted":"pending"}};uV.exports=gV});var pV=C((hnt,fV)=>{"use strict";var Ox=qr(),vr=Rn(),Tx={default:vr.noop,noop:vr.noop,set inverse(t){this._inverse=t},get inverse(){return this._inverse||Ox.inverse(this.primary)},set complement(t){this._complement=t},get complement(){return this._complement||Ox.complement(this.primary)},primary:vr.cyan,success:vr.green,danger:vr.magenta,strong:vr.bold,warning:vr.yellow,muted:vr.dim,disabled:vr.gray,dark:vr.dim.gray,underline:vr.underline,set info(t){this._info=t},get info(){return this._info||this.primary},set em(t){this._em=t},get em(){return this._em||this.primary.underline},set heading(t){this._heading=t},get heading(){return this._heading||this.muted.underline},set pending(t){this._pending=t},get pending(){return this._pending||this.primary},set submitted(t){this._submitted=t},get submitted(){return this._submitted||this.success},set cancelled(t){this._cancelled=t},get cancelled(){return this._cancelled||this.danger},set typing(t){this._typing=t},get typing(){return this._typing||this.dim},set placeholder(t){this._placeholder=t},get placeholder(){return this._placeholder||this.primary.dim},set highlight(t){this._highlight=t},get highlight(){return this._highlight||this.inverse}};Tx.merge=(t={})=>{t.styles&&typeof t.styles.enabled=="boolean"&&(vr.enabled=t.styles.enabled),t.styles&&typeof t.styles.visible=="boolean"&&(vr.visible=t.styles.visible);let e=Ox.merge({},Tx,t.styles);delete e.merge;for(let r of Object.keys(vr))e.hasOwnProperty(r)||Reflect.defineProperty(e,r,{get:()=>vr[r]});for(let r of Object.keys(vr.styles))e.hasOwnProperty(r)||Reflect.defineProperty(e,r,{get:()=>vr[r]});return e};fV.exports=Tx});var CV=C((fnt,dV)=>{"use strict";var Kx=process.platform==="win32",eo=Rn(),rOe=qr(),Ux={...eo.symbols,upDownDoubleArrow:"\u21D5",upDownDoubleArrow2:"\u2B0D",upDownArrow:"\u2195",asterisk:"*",asterism:"\u2042",bulletWhite:"\u25E6",electricArrow:"\u2301",ellipsisLarge:"\u22EF",ellipsisSmall:"\u2026",fullBlock:"\u2588",identicalTo:"\u2261",indicator:eo.symbols.check,leftAngle:"\u2039",mark:"\u203B",minus:"\u2212",multiplication:"\xD7",obelus:"\xF7",percent:"%",pilcrow:"\xB6",pilcrow2:"\u2761",pencilUpRight:"\u2710",pencilDownRight:"\u270E",pencilRight:"\u270F",plus:"+",plusMinus:"\xB1",pointRight:"\u261E",rightAngle:"\u203A",section:"\xA7",hexagon:{off:"\u2B21",on:"\u2B22",disabled:"\u2B22"},ballot:{on:"\u2611",off:"\u2610",disabled:"\u2612"},stars:{on:"\u2605",off:"\u2606",disabled:"\u2606"},folder:{on:"\u25BC",off:"\u25B6",disabled:"\u25B6"},prefix:{pending:eo.symbols.question,submitted:eo.symbols.check,cancelled:eo.symbols.cross},separator:{pending:eo.symbols.pointerSmall,submitted:eo.symbols.middot,cancelled:eo.symbols.middot},radio:{off:Kx?"( )":"\u25EF",on:Kx?"(*)":"\u25C9",disabled:Kx?"(|)":"\u24BE"},numbers:["\u24EA","\u2460","\u2461","\u2462","\u2463","\u2464","\u2465","\u2466","\u2467","\u2468","\u2469","\u246A","\u246B","\u246C","\u246D","\u246E","\u246F","\u2470","\u2471","\u2472","\u2473","\u3251","\u3252","\u3253","\u3254","\u3255","\u3256","\u3257","\u3258","\u3259","\u325A","\u325B","\u325C","\u325D","\u325E","\u325F","\u32B1","\u32B2","\u32B3","\u32B4","\u32B5","\u32B6","\u32B7","\u32B8","\u32B9","\u32BA","\u32BB","\u32BC","\u32BD","\u32BE","\u32BF"]};Ux.merge=t=>{let e=rOe.merge({},eo.symbols,Ux,t.symbols);return delete e.merge,e};dV.exports=Ux});var IV=C((pnt,mV)=>{"use strict";var iOe=pV(),nOe=CV(),sOe=qr();mV.exports=t=>{t.options=sOe.merge({},t.options.theme,t.options),t.symbols=nOe.merge(t.options),t.styles=iOe.merge(t.options)}});var QV=C((EV,yV)=>{"use strict";var BV=process.env.TERM_PROGRAM==="Apple_Terminal",oOe=Rn(),Hx=qr(),Ln=yV.exports=EV,qt="[",wV="\x07",Yx=!1,ea=Ln.code={bell:wV,beep:wV,beginning:`${qt}G`,down:`${qt}J`,esc:qt,getPosition:`${qt}6n`,hide:`${qt}?25l`,line:`${qt}2K`,lineEnd:`${qt}K`,lineStart:`${qt}1K`,restorePosition:qt+(BV?"8":"u"),savePosition:qt+(BV?"7":"s"),screen:`${qt}2J`,show:`${qt}?25h`,up:`${qt}1J`},YA=Ln.cursor={get hidden(){return Yx},hide(){return Yx=!0,ea.hide},show(){return Yx=!1,ea.show},forward:(t=1)=>`${qt}${t}C`,backward:(t=1)=>`${qt}${t}D`,nextLine:(t=1)=>`${qt}E`.repeat(t),prevLine:(t=1)=>`${qt}F`.repeat(t),up:(t=1)=>t?`${qt}${t}A`:"",down:(t=1)=>t?`${qt}${t}B`:"",right:(t=1)=>t?`${qt}${t}C`:"",left:(t=1)=>t?`${qt}${t}D`:"",to(t,e){return e?`${qt}${e+1};${t+1}H`:`${qt}${t+1}G`},move(t=0,e=0){let r="";return r+=t<0?YA.left(-t):t>0?YA.right(t):"",r+=e<0?YA.up(-e):e>0?YA.down(e):"",r},restore(t={}){let{after:e,cursor:r,initial:i,input:n,prompt:s,size:o,value:a}=t;if(i=Hx.isPrimitive(i)?String(i):"",n=Hx.isPrimitive(n)?String(n):"",a=Hx.isPrimitive(a)?String(a):"",o){let l=Ln.cursor.up(o)+Ln.cursor.to(s.length),c=n.length-r;return c>0&&(l+=Ln.cursor.left(c)),l}if(a||e){let l=!n&&!!i?-i.length:-n.length+r;return e&&(l-=e.length),n===""&&i&&!s.includes(i)&&(l+=i.length),Ln.cursor.move(l)}}},jx=Ln.erase={screen:ea.screen,up:ea.up,down:ea.down,line:ea.line,lineEnd:ea.lineEnd,lineStart:ea.lineStart,lines(t){let e="";for(let r=0;r{if(!e)return jx.line+YA.to(0);let r=s=>[...oOe.unstyle(s)].length,i=t.split(/\r?\n/),n=0;for(let s of i)n+=1+Math.floor(Math.max(r(s)-1,0)/e);return(jx.line+YA.prevLine()).repeat(n-1)+jx.line+YA.to(0)}});var Zc=C((dnt,bV)=>{"use strict";var aOe=require("events"),DV=Rn(),Gx=AV(),AOe=cV(),lOe=hV(),cOe=IV(),wi=qr(),jA=QV(),ty=class extends aOe{constructor(e={}){super();this.name=e.name,this.type=e.type,this.options=e,cOe(this),AOe(this),this.state=new lOe(this),this.initial=[e.initial,e.default].find(r=>r!=null),this.stdout=e.stdout||process.stdout,this.stdin=e.stdin||process.stdin,this.scale=e.scale||1,this.term=this.options.term||process.env.TERM_PROGRAM,this.margin=gOe(this.options.margin),this.setMaxListeners(0),uOe(this)}async keypress(e,r={}){this.keypressed=!0;let i=Gx.action(e,Gx(e,r),this.options.actions);this.state.keypress=i,this.emit("keypress",e,i),this.emit("state",this.state.clone());let n=this.options[i.action]||this[i.action]||this.dispatch;if(typeof n=="function")return await n.call(this,e,i);this.alert()}alert(){delete this.state.alert,this.options.show===!1?this.emit("alert"):this.stdout.write(jA.code.beep)}cursorHide(){this.stdout.write(jA.cursor.hide()),wi.onExit(()=>this.cursorShow())}cursorShow(){this.stdout.write(jA.cursor.show())}write(e){!e||(this.stdout&&this.state.show!==!1&&this.stdout.write(e),this.state.buffer+=e)}clear(e=0){let r=this.state.buffer;this.state.buffer="",!(!r&&!e||this.options.show===!1)&&this.stdout.write(jA.cursor.down(e)+jA.clear(r,this.width))}restore(){if(this.state.closed||this.options.show===!1)return;let{prompt:e,after:r,rest:i}=this.sections(),{cursor:n,initial:s="",input:o="",value:a=""}=this,l=this.state.size=i.length,c={after:r,cursor:n,initial:s,input:o,prompt:e,size:l,value:a},u=jA.cursor.restore(c);u&&this.stdout.write(u)}sections(){let{buffer:e,input:r,prompt:i}=this.state;i=DV.unstyle(i);let n=DV.unstyle(e),s=n.indexOf(i),o=n.slice(0,s),l=n.slice(s).split(` +`+(o!==s?`result of cast: ${o}`:""))}return n}_cast(e,r){let i=e===void 0?e:this.transforms.reduce((n,s)=>s.call(this,n,e,this),e);return i===void 0&&(i=this.getDefault()),i}_validate(e,r={},i){let{sync:n,path:s,from:o=[],originalValue:a=e,strict:l=this.spec.strict,abortEarly:c=this.spec.abortEarly}=r,u=e;l||(u=this._cast(u,wn({assert:!1},r)));let g={value:u,path:s,options:r,originalValue:a,schema:this,label:this.spec.label,sync:n,from:o},h=[];this._typeError&&h.push(this._typeError),this._whitelistError&&h.push(this._whitelistError),this._blacklistError&&h.push(this._blacklistError),(0,Z7.default)({args:g,value:u,path:s,sync:n,tests:h,endEarly:c},f=>{if(f)return void i(f,u);(0,Z7.default)({tests:this.tests,args:g,path:s,sync:n,value:u,endEarly:c},i)})}validate(e,r,i){let n=this.resolve(wn({},r,{value:e}));return typeof i=="function"?n._validate(e,r,i):new Promise((s,o)=>n._validate(e,r,(a,l)=>{a?o(a):s(l)}))}validateSync(e,r){let i=this.resolve(wn({},r,{value:e})),n;return i._validate(e,wn({},r,{sync:!0}),(s,o)=>{if(s)throw s;n=o}),n}isValid(e,r){return this.validate(e,r).then(()=>!0,i=>{if($7.default.isError(i))return!1;throw i})}isValidSync(e,r){try{return this.validateSync(e,r),!0}catch(i){if($7.default.isError(i))return!1;throw i}}_getDefault(){let e=this.spec.default;return e==null?e:typeof e=="function"?e.call(this):(0,X7.default)(e)}getDefault(e){return this.resolve(e||{})._getDefault()}default(e){return arguments.length===0?this._getDefault():this.clone({default:e})}strict(e=!0){var r=this.clone();return r.spec.strict=e,r}_isPresent(e){return e!=null}defined(e=Eu.mixed.defined){return this.test({message:e,name:"defined",exclusive:!0,test(r){return r!==void 0}})}required(e=Eu.mixed.required){return this.clone({presence:"required"}).withMutation(r=>r.test({message:e,name:"required",exclusive:!0,test(i){return this.schema._isPresent(i)}}))}notRequired(){var e=this.clone({presence:"optional"});return e.tests=e.tests.filter(r=>r.OPTIONS.name!=="required"),e}nullable(e=!0){var r=this.clone({nullable:e!==!1});return r}transform(e){var r=this.clone();return r.transforms.push(e),r}test(...e){let r;if(e.length===1?typeof e[0]=="function"?r={test:e[0]}:r=e[0]:e.length===2?r={name:e[0],test:e[1]}:r={name:e[0],message:e[1],test:e[2]},r.message===void 0&&(r.message=Eu.mixed.default),typeof r.test!="function")throw new TypeError("`test` is a required parameters");let i=this.clone(),n=(0,My.default)(r),s=r.exclusive||r.name&&i.exclusiveTests[r.name]===!0;if(r.exclusive&&!r.name)throw new TypeError("Exclusive tests must provide a unique `name` identifying the test");return r.name&&(i.exclusiveTests[r.name]=!!r.exclusive),i.tests=i.tests.filter(o=>!(o.OPTIONS.name===r.name&&(s||o.OPTIONS.test===n.OPTIONS.test))),i.tests.push(n),i}when(e,r){!Array.isArray(e)&&typeof e!="string"&&(r=e,e=".");let i=this.clone(),n=(0,CMe.default)(e).map(s=>new pMe.default(s));return n.forEach(s=>{s.isSibling&&i.deps.push(s.key)}),i.conditions.push(new fMe.default(n,r)),i}typeError(e){var r=this.clone();return r._typeError=(0,My.default)({message:e,name:"typeError",test(i){return i!==void 0&&!this.schema.isType(i)?this.createError({params:{type:this.schema._type}}):!0}}),r}oneOf(e,r=Eu.mixed.oneOf){var i=this.clone();return e.forEach(n=>{i._whitelist.add(n),i._blacklist.delete(n)}),i._whitelistError=(0,My.default)({message:r,name:"oneOf",test(n){if(n===void 0)return!0;let s=this.schema._whitelist;return s.has(n,this.resolve)?!0:this.createError({params:{values:s.toArray().join(", ")}})}}),i}notOneOf(e,r=Eu.mixed.notOneOf){var i=this.clone();return e.forEach(n=>{i._blacklist.add(n),i._whitelist.delete(n)}),i._blacklistError=(0,My.default)({message:r,name:"notOneOf",test(n){let s=this.schema._blacklist;return s.has(n,this.resolve)?this.createError({params:{values:s.toArray().join(", ")}}):!0}}),i}strip(e=!0){let r=this.clone();return r.spec.strip=e,r}describe(){let e=this.clone(),{label:r,meta:i}=e.spec;return{meta:i,label:r,type:e.type,oneOf:e._whitelist.describe(),notOneOf:e._blacklist.describe(),tests:e.tests.map(s=>({name:s.OPTIONS.name,params:s.OPTIONS.params})).filter((s,o,a)=>a.findIndex(l=>l.name===s.name)===o)}}};Ny.default=Is;Is.prototype.__isYupSchema__=!0;for(let t of["validate","validateSync"])Is.prototype[`${t}At`]=function(e,r,i={}){let{parent:n,parentPath:s,schema:o}=(0,dMe.getIn)(this,e,r,i.context);return o[t](n&&n[s],wn({},i,{parent:n,path:e}))};for(let t of["equals","is"])Is.prototype[t]=Is.prototype.oneOf;for(let t of["not","nope"])Is.prototype[t]=Is.prototype.notOneOf;Is.prototype.optional=Is.prototype.notRequired});var rX=C(rp=>{"use strict";Object.defineProperty(rp,"__esModule",{value:!0});rp.create=tX;rp.default=void 0;var IMe=mMe(po());function mMe(t){return t&&t.__esModule?t:{default:t}}var Pk=IMe.default,EMe=Pk;rp.default=EMe;function tX(){return new Pk}tX.prototype=Pk.prototype});var yu=C(Oy=>{"use strict";Object.defineProperty(Oy,"__esModule",{value:!0});Oy.default=void 0;var yMe=t=>t==null;Oy.default=yMe});var aX=C(ip=>{"use strict";Object.defineProperty(ip,"__esModule",{value:!0});ip.create=iX;ip.default=void 0;var BMe=nX(po()),sX=ho(),oX=nX(yu());function nX(t){return t&&t.__esModule?t:{default:t}}function iX(){return new Ky}var Ky=class extends BMe.default{constructor(){super({type:"boolean"});this.withMutation(()=>{this.transform(function(e){if(!this.isType(e)){if(/^(true|1)$/i.test(String(e)))return!0;if(/^(false|0)$/i.test(String(e)))return!1}return e})})}_typeCheck(e){return e instanceof Boolean&&(e=e.valueOf()),typeof e=="boolean"}isTrue(e=sX.boolean.isValue){return this.test({message:e,name:"is-value",exclusive:!0,params:{value:"true"},test(r){return(0,oX.default)(r)||r===!0}})}isFalse(e=sX.boolean.isValue){return this.test({message:e,name:"is-value",exclusive:!0,params:{value:"false"},test(r){return(0,oX.default)(r)||r===!1}})}};ip.default=Ky;iX.prototype=Ky.prototype});var cX=C(np=>{"use strict";Object.defineProperty(np,"__esModule",{value:!0});np.create=AX;np.default=void 0;var Es=ho(),Co=lX(yu()),wMe=lX(po());function lX(t){return t&&t.__esModule?t:{default:t}}var QMe=/^((([a-z]|\d|[!#\$%&'\*\+\-\/=\?\^_`{\|}~]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])+(\.([a-z]|\d|[!#\$%&'\*\+\-\/=\?\^_`{\|}~]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])+)*)|((\x22)((((\x20|\x09)*(\x0d\x0a))?(\x20|\x09)+)?(([\x01-\x08\x0b\x0c\x0e-\x1f\x7f]|\x21|[\x23-\x5b]|[\x5d-\x7e]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(\\([\x01-\x09\x0b\x0c\x0d-\x7f]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]))))*(((\x20|\x09)*(\x0d\x0a))?(\x20|\x09)+)?(\x22)))@((([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.)+(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))$/i,bMe=/^((https?|ftp):)?\/\/(((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:)*@)?(((\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])\.(\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])\.(\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])\.(\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5]))|((([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.)+(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.?)(:\d*)?)(\/((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)+(\/(([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)*)*)?)?(\?((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)|[\uE000-\uF8FF]|\/|\?)*)?(\#((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)|\/|\?)*)?$/i,DMe=/^(?:[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}|00000000-0000-0000-0000-000000000000)$/i,SMe=t=>(0,Co.default)(t)||t===t.trim(),xMe={}.toString();function AX(){return new Ty}var Ty=class extends wMe.default{constructor(){super({type:"string"});this.withMutation(()=>{this.transform(function(e){if(this.isType(e)||Array.isArray(e))return e;let r=e!=null&&e.toString?e.toString():e;return r===xMe?e:r})})}_typeCheck(e){return e instanceof String&&(e=e.valueOf()),typeof e=="string"}_isPresent(e){return super._isPresent(e)&&!!e.length}length(e,r=Es.string.length){return this.test({message:r,name:"length",exclusive:!0,params:{length:e},test(i){return(0,Co.default)(i)||i.length===this.resolve(e)}})}min(e,r=Es.string.min){return this.test({message:r,name:"min",exclusive:!0,params:{min:e},test(i){return(0,Co.default)(i)||i.length>=this.resolve(e)}})}max(e,r=Es.string.max){return this.test({name:"max",exclusive:!0,message:r,params:{max:e},test(i){return(0,Co.default)(i)||i.length<=this.resolve(e)}})}matches(e,r){let i=!1,n,s;return r&&(typeof r=="object"?{excludeEmptyString:i=!1,message:n,name:s}=r:n=r),this.test({name:s||"matches",message:n||Es.string.matches,params:{regex:e},test:o=>(0,Co.default)(o)||o===""&&i||o.search(e)!==-1})}email(e=Es.string.email){return this.matches(QMe,{name:"email",message:e,excludeEmptyString:!0})}url(e=Es.string.url){return this.matches(bMe,{name:"url",message:e,excludeEmptyString:!0})}uuid(e=Es.string.uuid){return this.matches(DMe,{name:"uuid",message:e,excludeEmptyString:!1})}ensure(){return this.default("").transform(e=>e===null?"":e)}trim(e=Es.string.trim){return this.transform(r=>r!=null?r.trim():r).test({message:e,name:"trim",test:SMe})}lowercase(e=Es.string.lowercase){return this.transform(r=>(0,Co.default)(r)?r:r.toLowerCase()).test({message:e,name:"string_case",exclusive:!0,test:r=>(0,Co.default)(r)||r===r.toLowerCase()})}uppercase(e=Es.string.uppercase){return this.transform(r=>(0,Co.default)(r)?r:r.toUpperCase()).test({message:e,name:"string_case",exclusive:!0,test:r=>(0,Co.default)(r)||r===r.toUpperCase()})}};np.default=Ty;AX.prototype=Ty.prototype});var hX=C(sp=>{"use strict";Object.defineProperty(sp,"__esModule",{value:!0});sp.create=uX;sp.default=void 0;var sl=ho(),ol=gX(yu()),PMe=gX(po());function gX(t){return t&&t.__esModule?t:{default:t}}var kMe=t=>t!=+t;function uX(){return new Uy}var Uy=class extends PMe.default{constructor(){super({type:"number"});this.withMutation(()=>{this.transform(function(e){let r=e;if(typeof r=="string"){if(r=r.replace(/\s/g,""),r==="")return NaN;r=+r}return this.isType(r)?r:parseFloat(r)})})}_typeCheck(e){return e instanceof Number&&(e=e.valueOf()),typeof e=="number"&&!kMe(e)}min(e,r=sl.number.min){return this.test({message:r,name:"min",exclusive:!0,params:{min:e},test(i){return(0,ol.default)(i)||i>=this.resolve(e)}})}max(e,r=sl.number.max){return this.test({message:r,name:"max",exclusive:!0,params:{max:e},test(i){return(0,ol.default)(i)||i<=this.resolve(e)}})}lessThan(e,r=sl.number.lessThan){return this.test({message:r,name:"max",exclusive:!0,params:{less:e},test(i){return(0,ol.default)(i)||ithis.resolve(e)}})}positive(e=sl.number.positive){return this.moreThan(0,e)}negative(e=sl.number.negative){return this.lessThan(0,e)}integer(e=sl.number.integer){return this.test({name:"integer",message:e,test:r=>(0,ol.default)(r)||Number.isInteger(r)})}truncate(){return this.transform(e=>(0,ol.default)(e)?e:e|0)}round(e){var r,i=["ceil","floor","round","trunc"];if(e=((r=e)==null?void 0:r.toLowerCase())||"round",e==="trunc")return this.truncate();if(i.indexOf(e.toLowerCase())===-1)throw new TypeError("Only valid options for round() are: "+i.join(", "));return this.transform(n=>(0,ol.default)(n)?n:Math[e](n))}};sp.default=Uy;uX.prototype=Uy.prototype});var fX=C(kk=>{"use strict";Object.defineProperty(kk,"__esModule",{value:!0});kk.default=vMe;var FMe=/^(\d{4}|[+\-]\d{6})(?:-?(\d{2})(?:-?(\d{2}))?)?(?:[ T]?(\d{2}):?(\d{2})(?::?(\d{2})(?:[,\.](\d{1,}))?)?(?:(Z)|([+\-])(\d{2})(?::?(\d{2}))?)?)?$/;function vMe(t){var e=[1,4,5,6,7,10,11],r=0,i,n;if(n=FMe.exec(t)){for(var s=0,o;o=e[s];++s)n[o]=+n[o]||0;n[2]=(+n[2]||1)-1,n[3]=+n[3]||1,n[7]=n[7]?String(n[7]).substr(0,3):0,(n[8]===void 0||n[8]==="")&&(n[9]===void 0||n[9]==="")?i=+new Date(n[1],n[2],n[3],n[4],n[5],n[6],n[7]):(n[8]!=="Z"&&n[9]!==void 0&&(r=n[10]*60+n[11],n[9]==="+"&&(r=0-r)),i=Date.UTC(n[1],n[2],n[3],n[4],n[5]+r,n[6],n[7]))}else i=Date.parse?Date.parse(t):NaN;return i}});var CX=C(op=>{"use strict";Object.defineProperty(op,"__esModule",{value:!0});op.create=vk;op.default=void 0;var RMe=Hy(fX()),pX=ho(),dX=Hy(yu()),LMe=Hy(nl()),NMe=Hy(po());function Hy(t){return t&&t.__esModule?t:{default:t}}var Fk=new Date(""),MMe=t=>Object.prototype.toString.call(t)==="[object Date]";function vk(){return new ap}var ap=class extends NMe.default{constructor(){super({type:"date"});this.withMutation(()=>{this.transform(function(e){return this.isType(e)?e:(e=(0,RMe.default)(e),isNaN(e)?Fk:new Date(e))})})}_typeCheck(e){return MMe(e)&&!isNaN(e.getTime())}prepareParam(e,r){let i;if(LMe.default.isRef(e))i=e;else{let n=this.cast(e);if(!this._typeCheck(n))throw new TypeError(`\`${r}\` must be a Date or a value that can be \`cast()\` to a Date`);i=n}return i}min(e,r=pX.date.min){let i=this.prepareParam(e,"min");return this.test({message:r,name:"min",exclusive:!0,params:{min:e},test(n){return(0,dX.default)(n)||n>=this.resolve(i)}})}max(e,r=pX.date.max){var i=this.prepareParam(e,"max");return this.test({message:r,name:"max",exclusive:!0,params:{max:e},test(n){return(0,dX.default)(n)||n<=this.resolve(i)}})}};op.default=ap;ap.INVALID_DATE=Fk;vk.prototype=ap.prototype;vk.INVALID_DATE=Fk});var IX=C((Jst,mX)=>{function OMe(t,e,r,i){var n=-1,s=t==null?0:t.length;for(i&&s&&(r=t[++n]);++n{function KMe(t){return function(e){return t==null?void 0:t[e]}}EX.exports=KMe});var wX=C((zst,BX)=>{var TMe=yX(),UMe={\u00C0:"A",\u00C1:"A",\u00C2:"A",\u00C3:"A",\u00C4:"A",\u00C5:"A",\u00E0:"a",\u00E1:"a",\u00E2:"a",\u00E3:"a",\u00E4:"a",\u00E5:"a",\u00C7:"C",\u00E7:"c",\u00D0:"D",\u00F0:"d",\u00C8:"E",\u00C9:"E",\u00CA:"E",\u00CB:"E",\u00E8:"e",\u00E9:"e",\u00EA:"e",\u00EB:"e",\u00CC:"I",\u00CD:"I",\u00CE:"I",\u00CF:"I",\u00EC:"i",\u00ED:"i",\u00EE:"i",\u00EF:"i",\u00D1:"N",\u00F1:"n",\u00D2:"O",\u00D3:"O",\u00D4:"O",\u00D5:"O",\u00D6:"O",\u00D8:"O",\u00F2:"o",\u00F3:"o",\u00F4:"o",\u00F5:"o",\u00F6:"o",\u00F8:"o",\u00D9:"U",\u00DA:"U",\u00DB:"U",\u00DC:"U",\u00F9:"u",\u00FA:"u",\u00FB:"u",\u00FC:"u",\u00DD:"Y",\u00FD:"y",\u00FF:"y",\u00C6:"Ae",\u00E6:"ae",\u00DE:"Th",\u00FE:"th",\u00DF:"ss",\u0100:"A",\u0102:"A",\u0104:"A",\u0101:"a",\u0103:"a",\u0105:"a",\u0106:"C",\u0108:"C",\u010A:"C",\u010C:"C",\u0107:"c",\u0109:"c",\u010B:"c",\u010D:"c",\u010E:"D",\u0110:"D",\u010F:"d",\u0111:"d",\u0112:"E",\u0114:"E",\u0116:"E",\u0118:"E",\u011A:"E",\u0113:"e",\u0115:"e",\u0117:"e",\u0119:"e",\u011B:"e",\u011C:"G",\u011E:"G",\u0120:"G",\u0122:"G",\u011D:"g",\u011F:"g",\u0121:"g",\u0123:"g",\u0124:"H",\u0126:"H",\u0125:"h",\u0127:"h",\u0128:"I",\u012A:"I",\u012C:"I",\u012E:"I",\u0130:"I",\u0129:"i",\u012B:"i",\u012D:"i",\u012F:"i",\u0131:"i",\u0134:"J",\u0135:"j",\u0136:"K",\u0137:"k",\u0138:"k",\u0139:"L",\u013B:"L",\u013D:"L",\u013F:"L",\u0141:"L",\u013A:"l",\u013C:"l",\u013E:"l",\u0140:"l",\u0142:"l",\u0143:"N",\u0145:"N",\u0147:"N",\u014A:"N",\u0144:"n",\u0146:"n",\u0148:"n",\u014B:"n",\u014C:"O",\u014E:"O",\u0150:"O",\u014D:"o",\u014F:"o",\u0151:"o",\u0154:"R",\u0156:"R",\u0158:"R",\u0155:"r",\u0157:"r",\u0159:"r",\u015A:"S",\u015C:"S",\u015E:"S",\u0160:"S",\u015B:"s",\u015D:"s",\u015F:"s",\u0161:"s",\u0162:"T",\u0164:"T",\u0166:"T",\u0163:"t",\u0165:"t",\u0167:"t",\u0168:"U",\u016A:"U",\u016C:"U",\u016E:"U",\u0170:"U",\u0172:"U",\u0169:"u",\u016B:"u",\u016D:"u",\u016F:"u",\u0171:"u",\u0173:"u",\u0174:"W",\u0175:"w",\u0176:"Y",\u0177:"y",\u0178:"Y",\u0179:"Z",\u017B:"Z",\u017D:"Z",\u017A:"z",\u017C:"z",\u017E:"z",\u0132:"IJ",\u0133:"ij",\u0152:"Oe",\u0153:"oe",\u0149:"'n",\u017F:"s"},HMe=TMe(UMe);BX.exports=HMe});var bX=C((Vst,QX)=>{var YMe=wX(),GMe=Rc(),jMe=/[\xc0-\xd6\xd8-\xf6\xf8-\xff\u0100-\u017f]/g,qMe="\\u0300-\\u036f",JMe="\\ufe20-\\ufe2f",WMe="\\u20d0-\\u20ff",zMe=qMe+JMe+WMe,VMe="["+zMe+"]",XMe=RegExp(VMe,"g");function ZMe(t){return t=GMe(t),t&&t.replace(jMe,YMe).replace(XMe,"")}QX.exports=ZMe});var SX=C((Xst,DX)=>{var _Me=/[^\x00-\x2f\x3a-\x40\x5b-\x60\x7b-\x7f]+/g;function $Me(t){return t.match(_Me)||[]}DX.exports=$Me});var PX=C((Zst,xX)=>{var eOe=/[a-z][A-Z]|[A-Z]{2}[a-z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/;function tOe(t){return eOe.test(t)}xX.exports=tOe});var zX=C((_st,kX)=>{var vX="\\ud800-\\udfff",rOe="\\u0300-\\u036f",iOe="\\ufe20-\\ufe2f",nOe="\\u20d0-\\u20ff",sOe=rOe+iOe+nOe,FX="\\u2700-\\u27bf",RX="a-z\\xdf-\\xf6\\xf8-\\xff",oOe="\\xac\\xb1\\xd7\\xf7",aOe="\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf",AOe="\\u2000-\\u206f",lOe=" \\t\\x0b\\f\\xa0\\ufeff\\n\\r\\u2028\\u2029\\u1680\\u180e\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200a\\u202f\\u205f\\u3000",LX="A-Z\\xc0-\\xd6\\xd8-\\xde",cOe="\\ufe0e\\ufe0f",NX=oOe+aOe+AOe+lOe,MX="['\u2019]",OX="["+NX+"]",uOe="["+sOe+"]",KX="\\d+",gOe="["+FX+"]",TX="["+RX+"]",UX="[^"+vX+NX+KX+FX+RX+LX+"]",hOe="\\ud83c[\\udffb-\\udfff]",fOe="(?:"+uOe+"|"+hOe+")",pOe="[^"+vX+"]",HX="(?:\\ud83c[\\udde6-\\uddff]){2}",YX="[\\ud800-\\udbff][\\udc00-\\udfff]",Bu="["+LX+"]",dOe="\\u200d",GX="(?:"+TX+"|"+UX+")",COe="(?:"+Bu+"|"+UX+")",jX="(?:"+MX+"(?:d|ll|m|re|s|t|ve))?",qX="(?:"+MX+"(?:D|LL|M|RE|S|T|VE))?",JX=fOe+"?",WX="["+cOe+"]?",mOe="(?:"+dOe+"(?:"+[pOe,HX,YX].join("|")+")"+WX+JX+")*",IOe="\\d*(?:1st|2nd|3rd|(?![123])\\dth)(?=\\b|[A-Z_])",EOe="\\d*(?:1ST|2ND|3RD|(?![123])\\dTH)(?=\\b|[a-z_])",yOe=WX+JX+mOe,BOe="(?:"+[gOe,HX,YX].join("|")+")"+yOe,wOe=RegExp([Bu+"?"+TX+"+"+jX+"(?="+[OX,Bu,"$"].join("|")+")",COe+"+"+qX+"(?="+[OX,Bu+GX,"$"].join("|")+")",Bu+"?"+GX+"+"+jX,Bu+"+"+qX,EOe,IOe,KX,BOe].join("|"),"g");function QOe(t){return t.match(wOe)||[]}kX.exports=QOe});var XX=C(($st,VX)=>{var bOe=SX(),DOe=PX(),SOe=Rc(),xOe=zX();function POe(t,e,r){return t=SOe(t),e=r?void 0:e,e===void 0?DOe(t)?xOe(t):bOe(t):t.match(e)||[]}VX.exports=POe});var Rk=C((eot,ZX)=>{var kOe=IX(),vOe=bX(),FOe=XX(),ROe="['\u2019]",LOe=RegExp(ROe,"g");function NOe(t){return function(e){return kOe(FOe(vOe(e).replace(LOe,"")),t,"")}}ZX.exports=NOe});var $X=C((tot,_X)=>{var MOe=Rk(),OOe=MOe(function(t,e,r){return t+(r?"_":"")+e.toLowerCase()});_X.exports=OOe});var tZ=C((rot,eZ)=>{var KOe=PS(),TOe=Rk(),UOe=TOe(function(t,e,r){return e=e.toLowerCase(),t+(r?KOe(e):e)});eZ.exports=UOe});var iZ=C((iot,rZ)=>{var HOe=gu(),YOe=nk(),GOe=Ek();function jOe(t,e){var r={};return e=GOe(e,3),YOe(t,function(i,n,s){HOe(r,e(i,n,s),i)}),r}rZ.exports=jOe});var sZ=C((not,Lk)=>{Lk.exports=function(t){return nZ(qOe(t),t)};Lk.exports.array=nZ;function nZ(t,e){var r=t.length,i=new Array(r),n={},s=r,o=JOe(e),a=WOe(t);for(e.forEach(function(c){if(!a.has(c[0])||!a.has(c[1]))throw new Error("Unknown node. There is an unknown node in the supplied edges.")});s--;)n[s]||l(t[s],s,new Set);return i;function l(c,u,g){if(g.has(c)){var h;try{h=", node was:"+JSON.stringify(c)}catch(m){h=""}throw new Error("Cyclic dependency"+h)}if(!a.has(c))throw new Error("Found unknown node. Make sure to provided all involved nodes. Unknown node: "+JSON.stringify(c));if(!n[u]){n[u]=!0;var f=o.get(c)||new Set;if(f=Array.from(f),u=f.length){g.add(c);do{var p=f[--u];l(p,a.get(p),g)}while(u);g.delete(c)}i[--r]=c}}}function qOe(t){for(var e=new Set,r=0,i=t.length;r{"use strict";Object.defineProperty(Nk,"__esModule",{value:!0});Nk.default=zOe;var VOe=Yy(jf()),XOe=Yy(sZ()),ZOe=$f(),_Oe=Yy(nl()),$Oe=Yy(fu());function Yy(t){return t&&t.__esModule?t:{default:t}}function zOe(t,e=[]){let r=[],i=[];function n(s,o){var a=(0,ZOe.split)(s)[0];~i.indexOf(a)||i.push(a),~e.indexOf(`${o}-${a}`)||r.push([o,a])}for(let s in t)if((0,VOe.default)(t,s)){let o=t[s];~i.indexOf(s)||i.push(s),_Oe.default.isRef(o)&&o.isSibling?n(o.path,s):(0,$Oe.default)(o)&&"deps"in o&&o.deps.forEach(a=>n(a,s))}return XOe.default.array(i,r).reverse()}});var AZ=C(Mk=>{"use strict";Object.defineProperty(Mk,"__esModule",{value:!0});Mk.default=eKe;function aZ(t,e){let r=Infinity;return t.some((i,n)=>{var s;if(((s=e.path)==null?void 0:s.indexOf(i))!==-1)return r=n,!0}),r}function eKe(t){return(e,r)=>aZ(t,e)-aZ(t,r)}});var pZ=C(Ap=>{"use strict";Object.defineProperty(Ap,"__esModule",{value:!0});Ap.create=lZ;Ap.default=void 0;var cZ=ys(jf()),uZ=ys($X()),tKe=ys(tZ()),rKe=ys(iZ()),iKe=ys(yk()),nKe=$f(),gZ=ho(),sKe=ys(oZ()),hZ=ys(AZ()),oKe=ys(Ey()),aKe=ys(tl()),Ok=ys(po());function ys(t){return t&&t.__esModule?t:{default:t}}function wu(){return wu=Object.assign||function(t){for(var e=1;eObject.prototype.toString.call(t)==="[object Object]";function AKe(t,e){let r=Object.keys(t.fields);return Object.keys(e).filter(i=>r.indexOf(i)===-1)}var lKe=(0,hZ.default)([]),Gy=class extends Ok.default{constructor(e){super({type:"object"});this.fields=Object.create(null),this._sortErrors=lKe,this._nodes=[],this._excludedEdges=[],this.withMutation(()=>{this.transform(function(i){if(typeof i=="string")try{i=JSON.parse(i)}catch(n){i=null}return this.isType(i)?i:null}),e&&this.shape(e)})}_typeCheck(e){return fZ(e)||typeof e=="function"}_cast(e,r={}){var i;let n=super._cast(e,r);if(n===void 0)return this.getDefault();if(!this._typeCheck(n))return n;let s=this.fields,o=(i=r.stripUnknown)!=null?i:this.spec.noUnknown,a=this._nodes.concat(Object.keys(n).filter(g=>this._nodes.indexOf(g)===-1)),l={},c=wu({},r,{parent:l,__validating:r.__validating||!1}),u=!1;for(let g of a){let h=s[g],f=(0,cZ.default)(n,g);if(h){let p,m=n[g];c.path=(r.path?`${r.path}.`:"")+g,h=h.resolve({value:m,context:r.context,parent:l});let I="spec"in h?h.spec:void 0,y=I==null?void 0:I.strict;if(I==null?void 0:I.strip){u=u||g in n;continue}p=!r.__validating||!y?h.cast(n[g],c):n[g],p!==void 0&&(l[g]=p)}else f&&!o&&(l[g]=n[g]);l[g]!==n[g]&&(u=!0)}return u?l:n}_validate(e,r={},i){let n=[],{sync:s,from:o=[],originalValue:a=e,abortEarly:l=this.spec.abortEarly,recursive:c=this.spec.recursive}=r;o=[{schema:this,value:a},...o],r.__validating=!0,r.originalValue=a,r.from=o,super._validate(e,r,(u,g)=>{if(u){if(!aKe.default.isError(u)||l)return void i(u,g);n.push(u)}if(!c||!fZ(g)){i(n[0]||null,g);return}a=a||g;let h=this._nodes.map(f=>(p,m)=>{let I=f.indexOf(".")===-1?(r.path?`${r.path}.`:"")+f:`${r.path||""}["${f}"]`,y=this.fields[f];if(y&&"validate"in y){y.validate(g[f],wu({},r,{path:I,from:o,strict:!0,parent:g,originalValue:a[f]}),m);return}m(null)});(0,oKe.default)({sync:s,tests:h,value:g,errors:n,endEarly:l,sort:this._sortErrors,path:r.path},i)})}clone(e){let r=super.clone(e);return r.fields=wu({},this.fields),r._nodes=this._nodes,r._excludedEdges=this._excludedEdges,r._sortErrors=this._sortErrors,r}concat(e){let r=super.concat(e),i=r.fields;for(let[n,s]of Object.entries(this.fields)){let o=i[n];o===void 0?i[n]=s:o instanceof Ok.default&&s instanceof Ok.default&&(i[n]=s.concat(o))}return r.withMutation(()=>r.shape(i))}getDefaultFromShape(){let e={};return this._nodes.forEach(r=>{let i=this.fields[r];e[r]="default"in i?i.getDefault():void 0}),e}_getDefault(){if("default"in this.spec)return super._getDefault();if(!!this._nodes.length)return this.getDefaultFromShape()}shape(e,r=[]){let i=this.clone(),n=Object.assign(i.fields,e);if(i.fields=n,i._sortErrors=(0,hZ.default)(Object.keys(n)),r.length){Array.isArray(r[0])||(r=[r]);let s=r.map(([o,a])=>`${o}-${a}`);i._excludedEdges=i._excludedEdges.concat(s)}return i._nodes=(0,sKe.default)(n,i._excludedEdges),i}pick(e){let r={};for(let i of e)this.fields[i]&&(r[i]=this.fields[i]);return this.clone().withMutation(i=>(i.fields={},i.shape(r)))}omit(e){let r=this.clone(),i=r.fields;r.fields={};for(let n of e)delete i[n];return r.withMutation(()=>r.shape(i))}from(e,r,i){let n=(0,nKe.getter)(e,!0);return this.transform(s=>{if(s==null)return s;let o=s;return(0,cZ.default)(s,e)&&(o=wu({},s),i||delete o[e],o[r]=n(s)),o})}noUnknown(e=!0,r=gZ.object.noUnknown){typeof e=="string"&&(r=e,e=!0);let i=this.test({name:"noUnknown",exclusive:!0,message:r,test(n){if(n==null)return!0;let s=AKe(this.schema,n);return!e||s.length===0||this.createError({params:{unknown:s.join(", ")}})}});return i.spec.noUnknown=e,i}unknown(e=!0,r=gZ.object.noUnknown){return this.noUnknown(!e,r)}transformKeys(e){return this.transform(r=>r&&(0,rKe.default)(r,(i,n)=>e(n)))}camelCase(){return this.transformKeys(tKe.default)}snakeCase(){return this.transformKeys(uZ.default)}constantCase(){return this.transformKeys(e=>(0,uZ.default)(e).toUpperCase())}describe(){let e=super.describe();return e.fields=(0,iKe.default)(this.fields,r=>r.describe()),e}};Ap.default=Gy;function lZ(t){return new Gy(t)}lZ.prototype=Gy.prototype});var CZ=C(lp=>{"use strict";Object.defineProperty(lp,"__esModule",{value:!0});lp.create=dZ;lp.default=void 0;var Kk=Qu(yu()),cKe=Qu(fu()),uKe=Qu(Gf()),Tk=ho(),gKe=Qu(Ey()),hKe=Qu(tl()),fKe=Qu(po());function Qu(t){return t&&t.__esModule?t:{default:t}}function jy(){return jy=Object.assign||function(t){for(var e=1;e{this.transform(function(r){if(typeof r=="string")try{r=JSON.parse(r)}catch(i){r=null}return this.isType(r)?r:null})})}_typeCheck(e){return Array.isArray(e)}get _subType(){return this.innerType}_cast(e,r){let i=super._cast(e,r);if(!this._typeCheck(i)||!this.innerType)return i;let n=!1,s=i.map((o,a)=>{let l=this.innerType.cast(o,jy({},r,{path:`${r.path||""}[${a}]`}));return l!==o&&(n=!0),l});return n?s:i}_validate(e,r={},i){var n,s;let o=[],a=r.sync,l=r.path,c=this.innerType,u=(n=r.abortEarly)!=null?n:this.spec.abortEarly,g=(s=r.recursive)!=null?s:this.spec.recursive,h=r.originalValue!=null?r.originalValue:e;super._validate(e,r,(f,p)=>{if(f){if(!hKe.default.isError(f)||u)return void i(f,p);o.push(f)}if(!g||!c||!this._typeCheck(p)){i(o[0]||null,p);return}h=h||p;let m=new Array(p.length);for(let I=0;Ic.validate(y,x,N)}(0,gKe.default)({sync:a,path:l,value:p,errors:o,endEarly:u,tests:m},i)})}clone(e){let r=super.clone(e);return r.innerType=this.innerType,r}concat(e){let r=super.concat(e);return r.innerType=this.innerType,e.innerType&&(r.innerType=r.innerType?r.innerType.concat(e.innerType):e.innerType),r}of(e){let r=this.clone();if(!(0,cKe.default)(e))throw new TypeError("`array.of()` sub-schema must be a valid yup schema not: "+(0,uKe.default)(e));return r.innerType=e,r}length(e,r=Tk.array.length){return this.test({message:r,name:"length",exclusive:!0,params:{length:e},test(i){return(0,Kk.default)(i)||i.length===this.resolve(e)}})}min(e,r){return r=r||Tk.array.min,this.test({message:r,name:"min",exclusive:!0,params:{min:e},test(i){return(0,Kk.default)(i)||i.length>=this.resolve(e)}})}max(e,r){return r=r||Tk.array.max,this.test({message:r,name:"max",exclusive:!0,params:{max:e},test(i){return(0,Kk.default)(i)||i.length<=this.resolve(e)}})}ensure(){return this.default(()=>[]).transform((e,r)=>this._typeCheck(e)?e:r==null?[]:[].concat(r))}compact(e){let r=e?(i,n,s)=>!e(i,n,s):i=>!!i;return this.transform(i=>i!=null?i.filter(r):i)}describe(){let e=super.describe();return this.innerType&&(e.innerType=this.innerType.describe()),e}nullable(e=!0){return super.nullable(e)}defined(){return super.defined()}required(e){return super.required(e)}};lp.default=qy;dZ.prototype=qy.prototype});var mZ=C(cp=>{"use strict";Object.defineProperty(cp,"__esModule",{value:!0});cp.create=pKe;cp.default=void 0;var CKe=dKe(fu());function dKe(t){return t&&t.__esModule?t:{default:t}}function pKe(t){return new Uk(t)}var Uk=class{constructor(e){this.type="lazy",this.__isYupSchema__=!0,this._resolve=(r,i={})=>{let n=this.builder(r,i);if(!(0,CKe.default)(n))throw new TypeError("lazy() functions must return a valid schema");return n.resolve(i)},this.builder=e}resolve(e){return this._resolve(e.value,e)}cast(e,r){return this._resolve(e,r).cast(e,r)}validate(e,r,i){return this._resolve(e,r).validate(e,r,i)}validateSync(e,r){return this._resolve(e,r).validateSync(e,r)}validateAt(e,r,i){return this._resolve(r,i).validateAt(e,r,i)}validateSyncAt(e,r,i){return this._resolve(r,i).validateSyncAt(e,r,i)}describe(){return null}isValid(e,r){return this._resolve(e,r).isValid(e,r)}isValidSync(e,r){return this._resolve(e,r).isValidSync(e,r)}},mKe=Uk;cp.default=mKe});var IZ=C(Hk=>{"use strict";Object.defineProperty(Hk,"__esModule",{value:!0});Hk.default=IKe;var yKe=EKe(ho());function EKe(t){return t&&t.__esModule?t:{default:t}}function IKe(t){Object.keys(t).forEach(e=>{Object.keys(t[e]).forEach(r=>{yKe.default[e][r]=t[e][r]})})}});var Gk=C(Gt=>{"use strict";Object.defineProperty(Gt,"__esModule",{value:!0});Gt.addMethod=BKe;Object.defineProperty(Gt,"MixedSchema",{enumerable:!0,get:function(){return EZ.default}});Object.defineProperty(Gt,"mixed",{enumerable:!0,get:function(){return EZ.create}});Object.defineProperty(Gt,"BooleanSchema",{enumerable:!0,get:function(){return Yk.default}});Object.defineProperty(Gt,"bool",{enumerable:!0,get:function(){return Yk.create}});Object.defineProperty(Gt,"boolean",{enumerable:!0,get:function(){return Yk.create}});Object.defineProperty(Gt,"StringSchema",{enumerable:!0,get:function(){return yZ.default}});Object.defineProperty(Gt,"string",{enumerable:!0,get:function(){return yZ.create}});Object.defineProperty(Gt,"NumberSchema",{enumerable:!0,get:function(){return BZ.default}});Object.defineProperty(Gt,"number",{enumerable:!0,get:function(){return BZ.create}});Object.defineProperty(Gt,"DateSchema",{enumerable:!0,get:function(){return wZ.default}});Object.defineProperty(Gt,"date",{enumerable:!0,get:function(){return wZ.create}});Object.defineProperty(Gt,"ObjectSchema",{enumerable:!0,get:function(){return QZ.default}});Object.defineProperty(Gt,"object",{enumerable:!0,get:function(){return QZ.create}});Object.defineProperty(Gt,"ArraySchema",{enumerable:!0,get:function(){return bZ.default}});Object.defineProperty(Gt,"array",{enumerable:!0,get:function(){return bZ.create}});Object.defineProperty(Gt,"ref",{enumerable:!0,get:function(){return wKe.create}});Object.defineProperty(Gt,"lazy",{enumerable:!0,get:function(){return QKe.create}});Object.defineProperty(Gt,"ValidationError",{enumerable:!0,get:function(){return bKe.default}});Object.defineProperty(Gt,"reach",{enumerable:!0,get:function(){return DKe.default}});Object.defineProperty(Gt,"isSchema",{enumerable:!0,get:function(){return DZ.default}});Object.defineProperty(Gt,"setLocale",{enumerable:!0,get:function(){return SKe.default}});Object.defineProperty(Gt,"BaseSchema",{enumerable:!0,get:function(){return xKe.default}});var EZ=al(rX()),Yk=al(aX()),yZ=al(cX()),BZ=al(hX()),wZ=al(CX()),QZ=al(pZ()),bZ=al(CZ()),wKe=nl(),QKe=mZ(),bKe=up(tl()),DKe=up(xk()),DZ=up(fu()),SKe=up(IZ()),xKe=up(po());function up(t){return t&&t.__esModule?t:{default:t}}function SZ(){if(typeof WeakMap!="function")return null;var t=new WeakMap;return SZ=function(){return t},t}function al(t){if(t&&t.__esModule)return t;if(t===null||typeof t!="object"&&typeof t!="function")return{default:t};var e=SZ();if(e&&e.has(t))return e.get(t);var r={},i=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var n in t)if(Object.prototype.hasOwnProperty.call(t,n)){var s=i?Object.getOwnPropertyDescriptor(t,n):null;s&&(s.get||s.set)?Object.defineProperty(r,n,s):r[n]=t[n]}return r.default=t,e&&e.set(t,r),r}function BKe(t,e,r){if(!t||!(0,DZ.default)(t.prototype))throw new TypeError("You must provide a yup schema constructor function");if(typeof e!="string")throw new TypeError("A Method name must be provided");if(typeof r!="function")throw new TypeError("Method function must be provided");t.prototype[e]=r}});var FZ=C((Qot,hp)=>{"use strict";var vKe=process.env.TERM_PROGRAM==="Hyper",FKe=process.platform==="win32",PZ=process.platform==="linux",jk={ballotDisabled:"\u2612",ballotOff:"\u2610",ballotOn:"\u2611",bullet:"\u2022",bulletWhite:"\u25E6",fullBlock:"\u2588",heart:"\u2764",identicalTo:"\u2261",line:"\u2500",mark:"\u203B",middot:"\xB7",minus:"\uFF0D",multiplication:"\xD7",obelus:"\xF7",pencilDownRight:"\u270E",pencilRight:"\u270F",pencilUpRight:"\u2710",percent:"%",pilcrow2:"\u2761",pilcrow:"\xB6",plusMinus:"\xB1",section:"\xA7",starsOff:"\u2606",starsOn:"\u2605",upDownArrow:"\u2195"},kZ=Object.assign({},jk,{check:"\u221A",cross:"\xD7",ellipsisLarge:"...",ellipsis:"...",info:"i",question:"?",questionSmall:"?",pointer:">",pointerSmall:"\xBB",radioOff:"( )",radioOn:"(*)",warning:"\u203C"}),vZ=Object.assign({},jk,{ballotCross:"\u2718",check:"\u2714",cross:"\u2716",ellipsisLarge:"\u22EF",ellipsis:"\u2026",info:"\u2139",question:"?",questionFull:"\uFF1F",questionSmall:"\uFE56",pointer:PZ?"\u25B8":"\u276F",pointerSmall:PZ?"\u2023":"\u203A",radioOff:"\u25EF",radioOn:"\u25C9",warning:"\u26A0"});hp.exports=FKe&&!vKe?kZ:vZ;Reflect.defineProperty(hp.exports,"common",{enumerable:!1,value:jk});Reflect.defineProperty(hp.exports,"windows",{enumerable:!1,value:kZ});Reflect.defineProperty(hp.exports,"other",{enumerable:!1,value:vZ})});var Gn=C((bot,qk)=>{"use strict";var RKe=t=>t!==null&&typeof t=="object"&&!Array.isArray(t),LKe=/[\u001b\u009b][[\]#;?()]*(?:(?:(?:[^\W_]*;?[^\W_]*)\u0007)|(?:(?:[0-9]{1,4}(;[0-9]{0,4})*)?[~0-9=<>cf-nqrtyA-PRZ]))/g,RZ=()=>{let t={enabled:!0,visible:!0,styles:{},keys:{}};"FORCE_COLOR"in process.env&&(t.enabled=process.env.FORCE_COLOR!=="0");let e=s=>{let o=s.open=`[${s.codes[0]}m`,a=s.close=`[${s.codes[1]}m`,l=s.regex=new RegExp(`\\u001b\\[${s.codes[1]}m`,"g");return s.wrap=(c,u)=>{c.includes(a)&&(c=c.replace(l,a+o));let g=o+c+a;return u?g.replace(/\r*\n/g,`${a}$&${o}`):g},s},r=(s,o,a)=>typeof s=="function"?s(o):s.wrap(o,a),i=(s,o)=>{if(s===""||s==null)return"";if(t.enabled===!1)return s;if(t.visible===!1)return"";let a=""+s,l=a.includes(` +`),c=o.length;for(c>0&&o.includes("unstyle")&&(o=[...new Set(["unstyle",...o])].reverse());c-- >0;)a=r(t.styles[o[c]],a,l);return a},n=(s,o,a)=>{t.styles[s]=e({name:s,codes:o}),(t.keys[a]||(t.keys[a]=[])).push(s),Reflect.defineProperty(t,s,{configurable:!0,enumerable:!0,set(c){t.alias(s,c)},get(){let c=u=>i(u,c.stack);return Reflect.setPrototypeOf(c,t),c.stack=this.stack?this.stack.concat(s):[s],c}})};return n("reset",[0,0],"modifier"),n("bold",[1,22],"modifier"),n("dim",[2,22],"modifier"),n("italic",[3,23],"modifier"),n("underline",[4,24],"modifier"),n("inverse",[7,27],"modifier"),n("hidden",[8,28],"modifier"),n("strikethrough",[9,29],"modifier"),n("black",[30,39],"color"),n("red",[31,39],"color"),n("green",[32,39],"color"),n("yellow",[33,39],"color"),n("blue",[34,39],"color"),n("magenta",[35,39],"color"),n("cyan",[36,39],"color"),n("white",[37,39],"color"),n("gray",[90,39],"color"),n("grey",[90,39],"color"),n("bgBlack",[40,49],"bg"),n("bgRed",[41,49],"bg"),n("bgGreen",[42,49],"bg"),n("bgYellow",[43,49],"bg"),n("bgBlue",[44,49],"bg"),n("bgMagenta",[45,49],"bg"),n("bgCyan",[46,49],"bg"),n("bgWhite",[47,49],"bg"),n("blackBright",[90,39],"bright"),n("redBright",[91,39],"bright"),n("greenBright",[92,39],"bright"),n("yellowBright",[93,39],"bright"),n("blueBright",[94,39],"bright"),n("magentaBright",[95,39],"bright"),n("cyanBright",[96,39],"bright"),n("whiteBright",[97,39],"bright"),n("bgBlackBright",[100,49],"bgBright"),n("bgRedBright",[101,49],"bgBright"),n("bgGreenBright",[102,49],"bgBright"),n("bgYellowBright",[103,49],"bgBright"),n("bgBlueBright",[104,49],"bgBright"),n("bgMagentaBright",[105,49],"bgBright"),n("bgCyanBright",[106,49],"bgBright"),n("bgWhiteBright",[107,49],"bgBright"),t.ansiRegex=LKe,t.hasColor=t.hasAnsi=s=>(t.ansiRegex.lastIndex=0,typeof s=="string"&&s!==""&&t.ansiRegex.test(s)),t.alias=(s,o)=>{let a=typeof o=="string"?t[o]:o;if(typeof a!="function")throw new TypeError("Expected alias to be the name of an existing color (string) or a function");a.stack||(Reflect.defineProperty(a,"name",{value:s}),t.styles[s]=a,a.stack=[s]),Reflect.defineProperty(t,s,{configurable:!0,enumerable:!0,set(l){t.alias(s,l)},get(){let l=c=>i(c,l.stack);return Reflect.setPrototypeOf(l,t),l.stack=this.stack?this.stack.concat(a.stack):a.stack,l}})},t.theme=s=>{if(!RKe(s))throw new TypeError("Expected theme to be an object");for(let o of Object.keys(s))t.alias(o,s[o]);return t},t.alias("unstyle",s=>typeof s=="string"&&s!==""?(t.ansiRegex.lastIndex=0,s.replace(t.ansiRegex,"")):""),t.alias("noop",s=>s),t.none=t.clear=t.noop,t.stripColor=t.unstyle,t.symbols=FZ(),t.define=n,t};qk.exports=RZ();qk.exports.create=RZ});var $r=C(ht=>{"use strict";var NKe=Object.prototype.toString,Qn=Gn(),LZ=!1,Jk=[],NZ={yellow:"blue",cyan:"red",green:"magenta",black:"white",blue:"yellow",red:"cyan",magenta:"green",white:"black"};ht.longest=(t,e)=>t.reduce((r,i)=>Math.max(r,e?i[e].length:i.length),0);ht.hasColor=t=>!!t&&Qn.hasColor(t);var Wy=ht.isObject=t=>t!==null&&typeof t=="object"&&!Array.isArray(t);ht.nativeType=t=>NKe.call(t).slice(8,-1).toLowerCase().replace(/\s/g,"");ht.isAsyncFn=t=>ht.nativeType(t)==="asyncfunction";ht.isPrimitive=t=>t!=null&&typeof t!="object"&&typeof t!="function";ht.resolve=(t,e,...r)=>typeof e=="function"?e.call(t,...r):e;ht.scrollDown=(t=[])=>[...t.slice(1),t[0]];ht.scrollUp=(t=[])=>[t.pop(),...t];ht.reorder=(t=[])=>{let e=t.slice();return e.sort((r,i)=>r.index>i.index?1:r.index{let i=t.length,n=r===i?0:r<0?i-1:r,s=t[e];t[e]=t[n],t[n]=s};ht.width=(t,e=80)=>{let r=t&&t.columns?t.columns:e;return t&&typeof t.getWindowSize=="function"&&(r=t.getWindowSize()[0]),process.platform==="win32"?r-1:r};ht.height=(t,e=20)=>{let r=t&&t.rows?t.rows:e;return t&&typeof t.getWindowSize=="function"&&(r=t.getWindowSize()[1]),r};ht.wordWrap=(t,e={})=>{if(!t)return t;typeof e=="number"&&(e={width:e});let{indent:r="",newline:i=` +`+r,width:n=80}=e;n-=((i+r).match(/[^\S\n]/g)||[]).length;let o=`.{1,${n}}([\\s\\u200B]+|$)|[^\\s\\u200B]+?([\\s\\u200B]+|$)`,a=t.trim(),l=new RegExp(o,"g"),c=a.match(l)||[];return c=c.map(u=>u.replace(/\n$/,"")),e.padEnd&&(c=c.map(u=>u.padEnd(n," "))),e.padStart&&(c=c.map(u=>u.padStart(n," "))),r+c.join(i)};ht.unmute=t=>{let e=t.stack.find(i=>Qn.keys.color.includes(i));return e?Qn[e]:t.stack.find(i=>i.slice(2)==="bg")?Qn[e.slice(2)]:i=>i};ht.pascal=t=>t?t[0].toUpperCase()+t.slice(1):"";ht.inverse=t=>{if(!t||!t.stack)return t;let e=t.stack.find(i=>Qn.keys.color.includes(i));if(e){let i=Qn["bg"+ht.pascal(e)];return i?i.black:t}let r=t.stack.find(i=>i.slice(0,2)==="bg");return r?Qn[r.slice(2).toLowerCase()]||t:Qn.none};ht.complement=t=>{if(!t||!t.stack)return t;let e=t.stack.find(i=>Qn.keys.color.includes(i)),r=t.stack.find(i=>i.slice(0,2)==="bg");if(e&&!r)return Qn[NZ[e]||e];if(r){let i=r.slice(2).toLowerCase(),n=NZ[i];return n&&Qn["bg"+ht.pascal(n)]||t}return Qn.none};ht.meridiem=t=>{let e=t.getHours(),r=t.getMinutes(),i=e>=12?"pm":"am";e=e%12;let n=e===0?12:e,s=r<10?"0"+r:r;return n+":"+s+" "+i};ht.set=(t={},e="",r)=>e.split(".").reduce((i,n,s,o)=>{let a=o.length-1>s?i[n]||{}:r;return!ht.isObject(a)&&s{let i=t[e]==null?e.split(".").reduce((n,s)=>n&&n[s],t):t[e];return i==null?r:i};ht.mixin=(t,e)=>{if(!Wy(t))return e;if(!Wy(e))return t;for(let r of Object.keys(e)){let i=Object.getOwnPropertyDescriptor(e,r);if(i.hasOwnProperty("value"))if(t.hasOwnProperty(r)&&Wy(i.value)){let n=Object.getOwnPropertyDescriptor(t,r);Wy(n.value)?t[r]=ht.merge({},t[r],e[r]):Reflect.defineProperty(t,r,i)}else Reflect.defineProperty(t,r,i);else Reflect.defineProperty(t,r,i)}return t};ht.merge=(...t)=>{let e={};for(let r of t)ht.mixin(e,r);return e};ht.mixinEmitter=(t,e)=>{let r=e.constructor.prototype;for(let i of Object.keys(r)){let n=r[i];typeof n=="function"?ht.define(t,i,n.bind(e)):ht.define(t,i,n)}};ht.onExit=t=>{let e=(r,i)=>{LZ||(LZ=!0,Jk.forEach(n=>n()),r===!0&&process.exit(128+i))};Jk.length===0&&(process.once("SIGTERM",e.bind(null,!0,15)),process.once("SIGINT",e.bind(null,!0,2)),process.once("exit",e)),Jk.push(t)};ht.define=(t,e,r)=>{Reflect.defineProperty(t,e,{value:r})};ht.defineExport=(t,e,r)=>{let i;Reflect.defineProperty(t,e,{enumerable:!0,configurable:!0,set(n){i=n},get(){return i?i():r()}})}});var MZ=C(Du=>{"use strict";Du.ctrl={a:"first",b:"backward",c:"cancel",d:"deleteForward",e:"last",f:"forward",g:"reset",i:"tab",k:"cutForward",l:"reset",n:"newItem",m:"cancel",j:"submit",p:"search",r:"remove",s:"save",u:"undo",w:"cutLeft",x:"toggleCursor",v:"paste"};Du.shift={up:"shiftUp",down:"shiftDown",left:"shiftLeft",right:"shiftRight",tab:"prev"};Du.fn={up:"pageUp",down:"pageDown",left:"pageLeft",right:"pageRight",delete:"deleteForward"};Du.option={b:"backward",f:"forward",d:"cutRight",left:"cutLeft",up:"altUp",down:"altDown"};Du.keys={pageup:"pageUp",pagedown:"pageDown",home:"home",end:"end",cancel:"cancel",delete:"deleteForward",backspace:"delete",down:"down",enter:"submit",escape:"cancel",left:"left",space:"space",number:"number",return:"submit",right:"right",tab:"next",up:"up"}});var TZ=C((xot,OZ)=>{"use strict";var KZ=require("readline"),MKe=MZ(),OKe=/^(?:\x1b)([a-zA-Z0-9])$/,KKe=/^(?:\x1b+)(O|N|\[|\[\[)(?:(\d+)(?:;(\d+))?([~^$])|(?:1;)?(\d+)?([a-zA-Z]))/,TKe={OP:"f1",OQ:"f2",OR:"f3",OS:"f4","[11~":"f1","[12~":"f2","[13~":"f3","[14~":"f4","[[A":"f1","[[B":"f2","[[C":"f3","[[D":"f4","[[E":"f5","[15~":"f5","[17~":"f6","[18~":"f7","[19~":"f8","[20~":"f9","[21~":"f10","[23~":"f11","[24~":"f12","[A":"up","[B":"down","[C":"right","[D":"left","[E":"clear","[F":"end","[H":"home",OA:"up",OB:"down",OC:"right",OD:"left",OE:"clear",OF:"end",OH:"home","[1~":"home","[2~":"insert","[3~":"delete","[4~":"end","[5~":"pageup","[6~":"pagedown","[[5~":"pageup","[[6~":"pagedown","[7~":"home","[8~":"end","[a":"up","[b":"down","[c":"right","[d":"left","[e":"clear","[2$":"insert","[3$":"delete","[5$":"pageup","[6$":"pagedown","[7$":"home","[8$":"end",Oa:"up",Ob:"down",Oc:"right",Od:"left",Oe:"clear","[2^":"insert","[3^":"delete","[5^":"pageup","[6^":"pagedown","[7^":"home","[8^":"end","[Z":"tab"};function UKe(t){return["[a","[b","[c","[d","[e","[2$","[3$","[5$","[6$","[7$","[8$","[Z"].includes(t)}function HKe(t){return["Oa","Ob","Oc","Od","Oe","[2^","[3^","[5^","[6^","[7^","[8^"].includes(t)}var zy=(t="",e={})=>{let r,i=k({name:e.name,ctrl:!1,meta:!1,shift:!1,option:!1,sequence:t,raw:t},e);if(Buffer.isBuffer(t)?t[0]>127&&t[1]===void 0?(t[0]-=128,t=""+String(t)):t=String(t):t!==void 0&&typeof t!="string"?t=String(t):t||(t=i.sequence||""),i.sequence=i.sequence||t||i.name,t==="\r")i.raw=void 0,i.name="return";else if(t===` +`)i.name="enter";else if(t===" ")i.name="tab";else if(t==="\b"||t==="\x7F"||t==="\x7F"||t==="\b")i.name="backspace",i.meta=t.charAt(0)==="";else if(t===""||t==="")i.name="escape",i.meta=t.length===2;else if(t===" "||t===" ")i.name="space",i.meta=t.length===2;else if(t<="")i.name=String.fromCharCode(t.charCodeAt(0)+"a".charCodeAt(0)-1),i.ctrl=!0;else if(t.length===1&&t>="0"&&t<="9")i.name="number";else if(t.length===1&&t>="a"&&t<="z")i.name=t;else if(t.length===1&&t>="A"&&t<="Z")i.name=t.toLowerCase(),i.shift=!0;else if(r=OKe.exec(t))i.meta=!0,i.shift=/^[A-Z]$/.test(r[1]);else if(r=KKe.exec(t)){let n=[...t];n[0]===""&&n[1]===""&&(i.option=!0);let s=[r[1],r[2],r[4],r[6]].filter(Boolean).join(""),o=(r[3]||r[5]||1)-1;i.ctrl=!!(o&4),i.meta=!!(o&10),i.shift=!!(o&1),i.code=s,i.name=TKe[s],i.shift=UKe(s)||i.shift,i.ctrl=HKe(s)||i.ctrl}return i};zy.listen=(t={},e)=>{let{stdin:r}=t;if(!r||r!==process.stdin&&!r.isTTY)throw new Error("Invalid stream passed");let i=KZ.createInterface({terminal:!0,input:r});KZ.emitKeypressEvents(r,i);let n=(a,l)=>e(a,zy(a,l),i),s=r.isRaw;return r.isTTY&&r.setRawMode(!0),r.on("keypress",n),i.resume(),()=>{r.isTTY&&r.setRawMode(s),r.removeListener("keypress",n),i.pause(),i.close()}};zy.action=(t,e,r)=>{let i=k(k({},MKe),r);return e.ctrl?(e.action=i.ctrl[e.name],e):e.option&&i.option?(e.action=i.option[e.name],e):e.shift?(e.action=i.shift[e.name],e):(e.action=i.keys[e.name],e)};OZ.exports=zy});var HZ=C((Pot,UZ)=>{"use strict";UZ.exports=t=>{t.timers=t.timers||{};let e=t.options.timers;if(!!e)for(let r of Object.keys(e)){let i=e[r];typeof i=="number"&&(i={interval:i}),YKe(t,r,i)}};function YKe(t,e,r={}){let i=t.timers[e]={name:e,start:Date.now(),ms:0,tick:0},n=r.interval||120;i.frames=r.frames||[],i.loading=!0;let s=setInterval(()=>{i.ms=Date.now()-i.start,i.tick++,t.render()},n);return i.stop=()=>{i.loading=!1,clearInterval(s)},Reflect.defineProperty(i,"interval",{value:s}),t.once("close",()=>i.stop()),i.stop}});var jZ=C((kot,YZ)=>{"use strict";var{define:GKe,width:jKe}=$r(),GZ=class{constructor(e){let r=e.options;GKe(this,"_prompt",e),this.type=e.type,this.name=e.name,this.message="",this.header="",this.footer="",this.error="",this.hint="",this.input="",this.cursor=0,this.index=0,this.lines=0,this.tick=0,this.prompt="",this.buffer="",this.width=jKe(r.stdout||process.stdout),Object.assign(this,r),this.name=this.name||this.message,this.message=this.message||this.name,this.symbols=e.symbols,this.styles=e.styles,this.required=new Set,this.cancelled=!1,this.submitted=!1}clone(){let e=k({},this);return e.status=this.status,e.buffer=Buffer.from(e.buffer),delete e.clone,e}set color(e){this._color=e}get color(){let e=this.prompt.styles;if(this.cancelled)return e.cancelled;if(this.submitted)return e.submitted;let r=this._color||e[this.status];return typeof r=="function"?r:e.pending}set loading(e){this._loading=e}get loading(){return typeof this._loading=="boolean"?this._loading:this.loadingChoices?"choices":!1}get status(){return this.cancelled?"cancelled":this.submitted?"submitted":"pending"}};YZ.exports=GZ});var JZ=C((vot,qZ)=>{"use strict";var Wk=$r(),Ur=Gn(),zk={default:Ur.noop,noop:Ur.noop,set inverse(t){this._inverse=t},get inverse(){return this._inverse||Wk.inverse(this.primary)},set complement(t){this._complement=t},get complement(){return this._complement||Wk.complement(this.primary)},primary:Ur.cyan,success:Ur.green,danger:Ur.magenta,strong:Ur.bold,warning:Ur.yellow,muted:Ur.dim,disabled:Ur.gray,dark:Ur.dim.gray,underline:Ur.underline,set info(t){this._info=t},get info(){return this._info||this.primary},set em(t){this._em=t},get em(){return this._em||this.primary.underline},set heading(t){this._heading=t},get heading(){return this._heading||this.muted.underline},set pending(t){this._pending=t},get pending(){return this._pending||this.primary},set submitted(t){this._submitted=t},get submitted(){return this._submitted||this.success},set cancelled(t){this._cancelled=t},get cancelled(){return this._cancelled||this.danger},set typing(t){this._typing=t},get typing(){return this._typing||this.dim},set placeholder(t){this._placeholder=t},get placeholder(){return this._placeholder||this.primary.dim},set highlight(t){this._highlight=t},get highlight(){return this._highlight||this.inverse}};zk.merge=(t={})=>{t.styles&&typeof t.styles.enabled=="boolean"&&(Ur.enabled=t.styles.enabled),t.styles&&typeof t.styles.visible=="boolean"&&(Ur.visible=t.styles.visible);let e=Wk.merge({},zk,t.styles);delete e.merge;for(let r of Object.keys(Ur))e.hasOwnProperty(r)||Reflect.defineProperty(e,r,{get:()=>Ur[r]});for(let r of Object.keys(Ur.styles))e.hasOwnProperty(r)||Reflect.defineProperty(e,r,{get:()=>Ur[r]});return e};qZ.exports=zk});var zZ=C((Fot,WZ)=>{"use strict";var Vk=process.platform==="win32",mo=Gn(),qKe=$r(),Xk=V(k({},mo.symbols),{upDownDoubleArrow:"\u21D5",upDownDoubleArrow2:"\u2B0D",upDownArrow:"\u2195",asterisk:"*",asterism:"\u2042",bulletWhite:"\u25E6",electricArrow:"\u2301",ellipsisLarge:"\u22EF",ellipsisSmall:"\u2026",fullBlock:"\u2588",identicalTo:"\u2261",indicator:mo.symbols.check,leftAngle:"\u2039",mark:"\u203B",minus:"\u2212",multiplication:"\xD7",obelus:"\xF7",percent:"%",pilcrow:"\xB6",pilcrow2:"\u2761",pencilUpRight:"\u2710",pencilDownRight:"\u270E",pencilRight:"\u270F",plus:"+",plusMinus:"\xB1",pointRight:"\u261E",rightAngle:"\u203A",section:"\xA7",hexagon:{off:"\u2B21",on:"\u2B22",disabled:"\u2B22"},ballot:{on:"\u2611",off:"\u2610",disabled:"\u2612"},stars:{on:"\u2605",off:"\u2606",disabled:"\u2606"},folder:{on:"\u25BC",off:"\u25B6",disabled:"\u25B6"},prefix:{pending:mo.symbols.question,submitted:mo.symbols.check,cancelled:mo.symbols.cross},separator:{pending:mo.symbols.pointerSmall,submitted:mo.symbols.middot,cancelled:mo.symbols.middot},radio:{off:Vk?"( )":"\u25EF",on:Vk?"(*)":"\u25C9",disabled:Vk?"(|)":"\u24BE"},numbers:["\u24EA","\u2460","\u2461","\u2462","\u2463","\u2464","\u2465","\u2466","\u2467","\u2468","\u2469","\u246A","\u246B","\u246C","\u246D","\u246E","\u246F","\u2470","\u2471","\u2472","\u2473","\u3251","\u3252","\u3253","\u3254","\u3255","\u3256","\u3257","\u3258","\u3259","\u325A","\u325B","\u325C","\u325D","\u325E","\u325F","\u32B1","\u32B2","\u32B3","\u32B4","\u32B5","\u32B6","\u32B7","\u32B8","\u32B9","\u32BA","\u32BB","\u32BC","\u32BD","\u32BE","\u32BF"]});Xk.merge=t=>{let e=qKe.merge({},mo.symbols,Xk,t.symbols);return delete e.merge,e};WZ.exports=Xk});var XZ=C((Rot,VZ)=>{"use strict";var JKe=JZ(),WKe=zZ(),zKe=$r();VZ.exports=t=>{t.options=zKe.merge({},t.options.theme,t.options),t.symbols=WKe.merge(t.options),t.styles=JKe.merge(t.options)}});var t_=C((ZZ,_Z)=>{"use strict";var $Z=process.env.TERM_PROGRAM==="Apple_Terminal",VKe=Gn(),Zk=$r(),jn=_Z.exports=ZZ,Zt="[",e_="\x07",_k=!1,Ia=jn.code={bell:e_,beep:e_,beginning:`${Zt}G`,down:`${Zt}J`,esc:Zt,getPosition:`${Zt}6n`,hide:`${Zt}?25l`,line:`${Zt}2K`,lineEnd:`${Zt}K`,lineStart:`${Zt}1K`,restorePosition:Zt+($Z?"8":"u"),savePosition:Zt+($Z?"7":"s"),screen:`${Zt}2J`,show:`${Zt}?25h`,up:`${Zt}1J`},Al=jn.cursor={get hidden(){return _k},hide(){return _k=!0,Ia.hide},show(){return _k=!1,Ia.show},forward:(t=1)=>`${Zt}${t}C`,backward:(t=1)=>`${Zt}${t}D`,nextLine:(t=1)=>`${Zt}E`.repeat(t),prevLine:(t=1)=>`${Zt}F`.repeat(t),up:(t=1)=>t?`${Zt}${t}A`:"",down:(t=1)=>t?`${Zt}${t}B`:"",right:(t=1)=>t?`${Zt}${t}C`:"",left:(t=1)=>t?`${Zt}${t}D`:"",to(t,e){return e?`${Zt}${e+1};${t+1}H`:`${Zt}${t+1}G`},move(t=0,e=0){let r="";return r+=t<0?Al.left(-t):t>0?Al.right(t):"",r+=e<0?Al.up(-e):e>0?Al.down(e):"",r},restore(t={}){let{after:e,cursor:r,initial:i,input:n,prompt:s,size:o,value:a}=t;if(i=Zk.isPrimitive(i)?String(i):"",n=Zk.isPrimitive(n)?String(n):"",a=Zk.isPrimitive(a)?String(a):"",o){let l=jn.cursor.up(o)+jn.cursor.to(s.length),c=n.length-r;return c>0&&(l+=jn.cursor.left(c)),l}if(a||e){let l=!n&&!!i?-i.length:-n.length+r;return e&&(l-=e.length),n===""&&i&&!s.includes(i)&&(l+=i.length),jn.cursor.move(l)}}},$k=jn.erase={screen:Ia.screen,up:Ia.up,down:Ia.down,line:Ia.line,lineEnd:Ia.lineEnd,lineStart:Ia.lineStart,lines(t){let e="";for(let r=0;r{if(!e)return $k.line+Al.to(0);let r=s=>[...VKe.unstyle(s)].length,i=t.split(/\r?\n/),n=0;for(let s of i)n+=1+Math.floor(Math.max(r(s)-1,0)/e);return($k.line+Al.prevLine()).repeat(n-1)+$k.line+Al.to(0)}});var Su=C((Lot,r_)=>{"use strict";var XKe=require("events"),i_=Gn(),ev=TZ(),ZKe=HZ(),_Ke=jZ(),$Ke=XZ(),Ri=$r(),ll=t_(),Vy=class extends XKe{constructor(e={}){super();this.name=e.name,this.type=e.type,this.options=e,$Ke(this),ZKe(this),this.state=new _Ke(this),this.initial=[e.initial,e.default].find(r=>r!=null),this.stdout=e.stdout||process.stdout,this.stdin=e.stdin||process.stdin,this.scale=e.scale||1,this.term=this.options.term||process.env.TERM_PROGRAM,this.margin=tTe(this.options.margin),this.setMaxListeners(0),eTe(this)}async keypress(e,r={}){this.keypressed=!0;let i=ev.action(e,ev(e,r),this.options.actions);this.state.keypress=i,this.emit("keypress",e,i),this.emit("state",this.state.clone());let n=this.options[i.action]||this[i.action]||this.dispatch;if(typeof n=="function")return await n.call(this,e,i);this.alert()}alert(){delete this.state.alert,this.options.show===!1?this.emit("alert"):this.stdout.write(ll.code.beep)}cursorHide(){this.stdout.write(ll.cursor.hide()),Ri.onExit(()=>this.cursorShow())}cursorShow(){this.stdout.write(ll.cursor.show())}write(e){!e||(this.stdout&&this.state.show!==!1&&this.stdout.write(e),this.state.buffer+=e)}clear(e=0){let r=this.state.buffer;this.state.buffer="",!(!r&&!e||this.options.show===!1)&&this.stdout.write(ll.cursor.down(e)+ll.clear(r,this.width))}restore(){if(this.state.closed||this.options.show===!1)return;let{prompt:e,after:r,rest:i}=this.sections(),{cursor:n,initial:s="",input:o="",value:a=""}=this,l=this.state.size=i.length,c={after:r,cursor:n,initial:s,input:o,prompt:e,size:l,value:a},u=ll.cursor.restore(c);u&&this.stdout.write(u)}sections(){let{buffer:e,input:r,prompt:i}=this.state;i=i_.unstyle(i);let n=i_.unstyle(e),s=n.indexOf(i),o=n.slice(0,s),l=n.slice(s).split(` `),c=l[0],u=l[l.length-1],h=(i+(r?" "+r:"")).length,f=he.call(this,this.value),this.result=()=>i.call(this,this.value),typeof r.initial=="function"&&(this.initial=await r.initial.call(this,this)),typeof r.onRun=="function"&&await r.onRun.call(this,this),typeof r.onSubmit=="function"){let n=r.onSubmit.bind(this),s=this.submit.bind(this);delete this.options.onSubmit,this.submit=async()=>(await n(this.name,this.value,this),s())}await this.start(),await this.render()}render(){throw new Error("expected prompt to have a custom render method")}run(){return new Promise(async(e,r)=>{if(this.once("submit",e),this.once("cancel",r),await this.skip())return this.render=()=>{},this.submit();await this.initialize(),this.emit("run")})}async element(e,r,i){let{options:n,state:s,symbols:o,timers:a}=this,l=a&&a[e];s.timer=l;let c=n[e]||s[e]||o[e],u=r&&r[e]!=null?r[e]:await c;if(u==="")return u;let g=await this.resolve(u,s,r,i);return!g&&r&&r[e]?this.resolve(c,s,r,i):g}async prefix(){let e=await this.element("prefix")||this.symbols,r=this.timers&&this.timers.prefix,i=this.state;return i.timer=r,wi.isObject(e)&&(e=e[i.status]||e.pending),wi.hasColor(e)?e:(this.styles[i.status]||this.styles.pending)(e)}async message(){let e=await this.element("message");return wi.hasColor(e)?e:this.styles.strong(e)}async separator(){let e=await this.element("separator")||this.symbols,r=this.timers&&this.timers.separator,i=this.state;i.timer=r;let n=e[i.status]||e.pending||i.separator,s=await this.resolve(n,i);return wi.isObject(s)&&(s=s[i.status]||s.pending),wi.hasColor(s)?s:this.styles.muted(s)}async pointer(e,r){let i=await this.element("pointer",e,r);if(typeof i=="string"&&wi.hasColor(i))return i;if(i){let n=this.styles,s=this.index===r,o=s?n.primary:c=>c,a=await this.resolve(i[s?"on":"off"]||i,this.state),l=wi.hasColor(a)?a:o(a);return s?l:" ".repeat(a.length)}}async indicator(e,r){let i=await this.element("indicator",e,r);if(typeof i=="string"&&wi.hasColor(i))return i;if(i){let n=this.styles,s=e.enabled===!0,o=s?n.success:n.dark,a=i[s?"on":"off"]||i;return wi.hasColor(a)?a:o(a)}return""}body(){return null}footer(){if(this.state.status==="pending")return this.element("footer")}header(){if(this.state.status==="pending")return this.element("header")}async hint(){if(this.state.status==="pending"&&!this.isValue(this.state.input)){let e=await this.element("hint");return wi.hasColor(e)?e:this.styles.muted(e)}}error(e){return this.state.submitted?"":e||this.state.error}format(e){return e}result(e){return e}validate(e){return this.options.required===!0?this.isValue(e):!0}isValue(e){return e!=null&&e!==""}resolve(e,...r){return wi.resolve(this,e,...r)}get base(){return ty.prototype}get style(){return this.styles[this.state.status]}get height(){return this.options.rows||wi.height(this.stdout,25)}get width(){return this.options.columns||wi.width(this.stdout,80)}get size(){return{width:this.width,height:this.height}}set cursor(e){this.state.cursor=e}get cursor(){return this.state.cursor}set input(e){this.state.input=e}get input(){return this.state.input}set value(e){this.state.value=e}get value(){let{input:e,value:r}=this.state,i=[r,e].find(this.isValue.bind(this));return this.isValue(i)?i:this.initial}static get prompt(){return e=>new this(e).run()}};function uOe(t){let e=n=>t[n]===void 0||typeof t[n]=="function",r=["actions","choices","initial","margin","roles","styles","symbols","theme","timers","value"],i=["body","footer","error","header","hint","indicator","message","prefix","separator","skip"];for(let n of Object.keys(t.options)){if(r.includes(n)||/^on[A-Z]/.test(n))continue;let s=t.options[n];typeof s=="function"&&e(n)?i.includes(n)||(t[n]=s.bind(t)):typeof t[n]!="function"&&(t[n]=s)}}function gOe(t){typeof t=="number"&&(t=[t,t,t,t]);let e=[].concat(t||[]),r=n=>n%2==0?` -`:" ",i=[];for(let n=0;n<4;n++){let s=r(n);e[n]?i.push(s.repeat(e[n])):i.push("")}return i}bV.exports=ty});var xV=C((Cnt,SV)=>{"use strict";var hOe=qr(),PV={default(t,e){return e},checkbox(t,e){throw new Error("checkbox role is not implemented yet")},editable(t,e){throw new Error("editable role is not implemented yet")},expandable(t,e){throw new Error("expandable role is not implemented yet")},heading(t,e){return e.disabled="",e.indicator=[e.indicator," "].find(r=>r!=null),e.message=e.message||"",e},input(t,e){throw new Error("input role is not implemented yet")},option(t,e){return PV.default(t,e)},radio(t,e){throw new Error("radio role is not implemented yet")},separator(t,e){return e.disabled="",e.indicator=[e.indicator," "].find(r=>r!=null),e.message=e.message||t.symbols.line.repeat(5),e},spacer(t,e){return e}};SV.exports=(t,e={})=>{let r=hOe.merge({},PV,e.roles);return r[t]||r.default}});var Ff=C((mnt,kV)=>{"use strict";var fOe=Rn(),pOe=Zc(),dOe=xV(),ry=qr(),{reorder:qx,scrollUp:COe,scrollDown:mOe,isObject:vV,swap:IOe}=ry,FV=class extends pOe{constructor(e){super(e);this.cursorHide(),this.maxSelected=e.maxSelected||Infinity,this.multiple=e.multiple||!1,this.initial=e.initial||0,this.delay=e.delay||0,this.longest=0,this.num=""}async initialize(){typeof this.options.initial=="function"&&(this.initial=await this.options.initial.call(this)),await this.reset(!0),await super.initialize()}async reset(){let{choices:e,initial:r,autofocus:i,suggest:n}=this.options;if(this.state._choices=[],this.state.choices=[],this.choices=await Promise.all(await this.toChoices(e)),this.choices.forEach(s=>s.enabled=!1),typeof n!="function"&&this.selectable.length===0)throw new Error("At least one choice must be selectable");vV(r)&&(r=Object.keys(r)),Array.isArray(r)?(i!=null&&(this.index=this.findIndex(i)),r.forEach(s=>this.enable(this.find(s))),await this.render()):(i!=null&&(r=i),typeof r=="string"&&(r=this.findIndex(r)),typeof r=="number"&&r>-1&&(this.index=Math.max(0,Math.min(r,this.choices.length)),this.enable(this.find(this.index)))),this.isDisabled(this.focused)&&await this.down()}async toChoices(e,r){this.state.loadingChoices=!0;let i=[],n=0,s=async(o,a)=>{typeof o=="function"&&(o=await o.call(this)),o instanceof Promise&&(o=await o);for(let l=0;l(this.state.loadingChoices=!1,o))}async toChoice(e,r,i){if(typeof e=="function"&&(e=await e.call(this,this)),e instanceof Promise&&(e=await e),typeof e=="string"&&(e={name:e}),e.normalized)return e;e.normalized=!0;let n=e.value;if(e=dOe(e.role,this.options)(this,e),typeof e.disabled=="string"&&!e.hint&&(e.hint=e.disabled,e.disabled=!0),e.disabled===!0&&e.hint==null&&(e.hint="(disabled)"),e.index!=null)return e;e.name=e.name||e.key||e.title||e.value||e.message,e.message=e.message||e.name||"",e.value=[e.value,e.name].find(this.isValue.bind(this)),e.input="",e.index=r,e.cursor=0,ry.define(e,"parent",i),e.level=i?i.level+1:1,e.indent==null&&(e.indent=i?i.indent+" ":e.indent||""),e.path=i?i.path+"."+e.name:e.name,e.enabled=!!(this.multiple&&!this.isDisabled(e)&&(e.enabled||this.isSelected(e))),this.isDisabled(e)||(this.longest=Math.max(this.longest,fOe.unstyle(e.message).length));let o={...e};return e.reset=(a=o.input,l=o.value)=>{for(let c of Object.keys(o))e[c]=o[c];e.input=a,e.value=l},n==null&&typeof e.initial=="function"&&(e.input=await e.initial.call(this,this.state,e,r)),e}async onChoice(e,r){this.emit("choice",e,r,this),typeof e.onChoice=="function"&&await e.onChoice.call(this,this.state,e,r)}async addChoice(e,r,i){let n=await this.toChoice(e,r,i);return this.choices.push(n),this.index=this.choices.length-1,this.limit=this.choices.length,n}async newItem(e,r,i){let n={name:"New choice name?",editable:!0,newChoice:!0,...e},s=await this.addChoice(n,r,i);return s.updateChoice=()=>{delete s.newChoice,s.name=s.message=s.input,s.input="",s.cursor=0},this.render()}indent(e){return e.indent==null?e.level>1?" ".repeat(e.level-1):"":e.indent}dispatch(e,r){if(this.multiple&&this[r.name])return this[r.name]();this.alert()}focus(e,r){return typeof r!="boolean"&&(r=e.enabled),r&&!e.enabled&&this.selected.length>=this.maxSelected?this.alert():(this.index=e.index,e.enabled=r&&!this.isDisabled(e),e)}space(){return this.multiple?(this.toggle(this.focused),this.render()):this.alert()}a(){if(this.maxSelectedr.enabled);return this.choices.forEach(r=>r.enabled=!e),this.render()}i(){return this.choices.length-this.selected.length>this.maxSelected?this.alert():(this.choices.forEach(e=>e.enabled=!e.enabled),this.render())}g(e=this.focused){return this.choices.some(r=>!!r.parent)?(this.toggle(e.parent&&!e.choices?e.parent:e),this.render()):this.a()}toggle(e,r){if(!e.enabled&&this.selected.length>=this.maxSelected)return this.alert();typeof r!="boolean"&&(r=!e.enabled),e.enabled=r,e.choices&&e.choices.forEach(n=>this.toggle(n,r));let i=e.parent;for(;i;){let n=i.choices.filter(s=>this.isDisabled(s));i.enabled=n.every(s=>s.enabled===!0),i=i.parent}return RV(this,this.choices),this.emit("toggle",e,this),e}enable(e){return this.selected.length>=this.maxSelected?this.alert():(e.enabled=!this.isDisabled(e),e.choices&&e.choices.forEach(this.enable.bind(this)),e)}disable(e){return e.enabled=!1,e.choices&&e.choices.forEach(this.disable.bind(this)),e}number(e){this.num+=e;let r=i=>{let n=Number(i);if(n>this.choices.length-1)return this.alert();let s=this.focused,o=this.choices.find(a=>n===a.index);if(!o.enabled&&this.selected.length>=this.maxSelected)return this.alert();if(this.visible.indexOf(o)===-1){let a=qx(this.choices),l=a.indexOf(o);if(s.index>l){let c=a.slice(l,l+this.limit),u=a.filter(g=>!c.includes(g));this.choices=c.concat(u)}else{let c=l-this.limit+1;this.choices=a.slice(c).concat(a.slice(0,c))}}return this.index=this.choices.indexOf(o),this.toggle(this.focused),this.render()};return clearTimeout(this.numberTimeout),new Promise(i=>{let n=this.choices.length,s=this.num,o=(a=!1,l)=>{clearTimeout(this.numberTimeout),a&&(l=r(s)),this.num="",i(l)};if(s==="0"||s.length===1&&Number(s+"0")>n)return o(!0);if(Number(s)>n)return o(!1,this.alert());this.numberTimeout=setTimeout(()=>o(!0),this.delay)})}home(){return this.choices=qx(this.choices),this.index=0,this.render()}end(){let e=this.choices.length-this.limit,r=qx(this.choices);return this.choices=r.slice(e).concat(r.slice(0,e)),this.index=this.limit-1,this.render()}first(){return this.index=0,this.render()}last(){return this.index=this.visible.length-1,this.render()}prev(){return this.visible.length<=1?this.alert():this.up()}next(){return this.visible.length<=1?this.alert():this.down()}right(){return this.cursor>=this.input.length?this.alert():(this.cursor++,this.render())}left(){return this.cursor<=0?this.alert():(this.cursor--,this.render())}up(){let e=this.choices.length,r=this.visible.length,i=this.index;return this.options.scroll===!1&&i===0?this.alert():e>r&&i===0?this.scrollUp():(this.index=(i-1%e+e)%e,this.isDisabled()?this.up():this.render())}down(){let e=this.choices.length,r=this.visible.length,i=this.index;return this.options.scroll===!1&&i===r-1?this.alert():e>r&&i===r-1?this.scrollDown():(this.index=(i+1)%e,this.isDisabled()?this.down():this.render())}scrollUp(e=0){return this.choices=COe(this.choices),this.index=e,this.isDisabled()?this.up():this.render()}scrollDown(e=this.visible.length-1){return this.choices=mOe(this.choices),this.index=e,this.isDisabled()?this.down():this.render()}async shiftUp(){if(this.options.sort===!0){this.sorting=!0,this.swap(this.index-1),await this.up(),this.sorting=!1;return}return this.scrollUp(this.index)}async shiftDown(){if(this.options.sort===!0){this.sorting=!0,this.swap(this.index+1),await this.down(),this.sorting=!1;return}return this.scrollDown(this.index)}pageUp(){return this.visible.length<=1?this.alert():(this.limit=Math.max(this.limit-1,0),this.index=Math.min(this.limit-1,this.index),this._limit=this.limit,this.isDisabled()?this.up():this.render())}pageDown(){return this.visible.length>=this.choices.length?this.alert():(this.index=Math.max(0,this.index),this.limit=Math.min(this.limit+1,this.choices.length),this._limit=this.limit,this.isDisabled()?this.down():this.render())}swap(e){IOe(this.choices,this.index,e)}isDisabled(e=this.focused){return e&&["disabled","collapsed","hidden","completing","readonly"].some(i=>e[i]===!0)?!0:e&&e.role==="heading"}isEnabled(e=this.focused){if(Array.isArray(e))return e.every(r=>this.isEnabled(r));if(e.choices){let r=e.choices.filter(i=>!this.isDisabled(i));return e.enabled&&r.every(i=>this.isEnabled(i))}return e.enabled&&!this.isDisabled(e)}isChoice(e,r){return e.name===r||e.index===Number(r)}isSelected(e){return Array.isArray(this.initial)?this.initial.some(r=>this.isChoice(e,r)):this.isChoice(e,this.initial)}map(e=[],r="value"){return[].concat(e||[]).reduce((i,n)=>(i[n]=this.find(n,r),i),{})}filter(e,r){let i=(a,l)=>[a.name,l].includes(e),n=typeof e=="function"?e:i,o=(this.options.multiple?this.state._choices:this.choices).filter(n);return r?o.map(a=>a[r]):o}find(e,r){if(vV(e))return r?e[r]:e;let i=(o,a)=>[o.name,a].includes(e),n=typeof e=="function"?e:i,s=this.choices.find(n);if(s)return r?s[r]:s}findIndex(e){return this.choices.indexOf(this.find(e))}async submit(){let e=this.focused;if(!e)return this.alert();if(e.newChoice)return e.input?(e.updateChoice(),this.render()):this.alert();if(this.choices.some(o=>o.newChoice))return this.alert();let{reorder:r,sort:i}=this.options,n=this.multiple===!0,s=this.selected;return s===void 0?this.alert():(Array.isArray(s)&&r!==!1&&i!==!0&&(s=ry.reorder(s)),this.value=n?s.map(o=>o.name):s.name,super.submit())}set choices(e=[]){this.state._choices=this.state._choices||[],this.state.choices=e;for(let r of e)this.state._choices.some(i=>i.name===r.name)||this.state._choices.push(r);if(!this._initial&&this.options.initial){this._initial=!0;let r=this.initial;if(typeof r=="string"||typeof r=="number"){let i=this.find(r);i&&(this.initial=i.index,this.focus(i,!0))}}}get choices(){return RV(this,this.state.choices||[])}set visible(e){this.state.visible=e}get visible(){return(this.state.visible||this.choices).slice(0,this.limit)}set limit(e){this.state.limit=e}get limit(){let{state:e,options:r,choices:i}=this,n=e.limit||this._limit||r.limit||i.length;return Math.min(n,this.height)}set value(e){super.value=e}get value(){return typeof super.value!="string"&&super.value===this.initial?this.input:super.value}set index(e){this.state.index=e}get index(){return Math.max(0,this.state?this.state.index:0)}get enabled(){return this.filter(this.isEnabled.bind(this))}get focused(){let e=this.choices[this.index];return e&&this.state.submitted&&this.multiple!==!0&&(e.enabled=!0),e}get selectable(){return this.choices.filter(e=>!this.isDisabled(e))}get selected(){return this.multiple?this.enabled:this.focused}};function RV(t,e){if(e instanceof Promise)return e;if(typeof e=="function"){if(ry.isAsyncFn(e))return e;e=e.call(t,t)}for(let r of e){if(Array.isArray(r.choices)){let i=r.choices.filter(n=>!t.isDisabled(n));r.enabled=i.every(n=>n.enabled===!0)}t.isDisabled(r)===!0&&delete r.enabled}return e}kV.exports=FV});var ta=C((Int,LV)=>{"use strict";var EOe=Ff(),Jx=qr(),MV=class extends EOe{constructor(e){super(e);this.emptyError=this.options.emptyError||"No items were selected"}async dispatch(e,r){if(this.multiple)return this[r.name]?await this[r.name](e,r):await super.dispatch(e,r);this.alert()}separator(){if(this.options.separator)return super.separator();let e=this.styles.muted(this.symbols.ellipsis);return this.state.submitted?super.separator():e}pointer(e,r){return!this.multiple||this.options.pointer?super.pointer(e,r):""}indicator(e,r){return this.multiple?super.indicator(e,r):""}choiceMessage(e,r){let i=this.resolve(e.message,this.state,e,r);return e.role==="heading"&&!Jx.hasColor(i)&&(i=this.styles.strong(i)),this.resolve(i,this.state,e,r)}choiceSeparator(){return":"}async renderChoice(e,r){await this.onChoice(e,r);let i=this.index===r,n=await this.pointer(e,r),s=await this.indicator(e,r)+(e.pad||""),o=await this.resolve(e.hint,this.state,e,r);o&&!Jx.hasColor(o)&&(o=this.styles.muted(o));let a=this.indent(e),l=await this.choiceMessage(e,r),c=()=>[this.margin[3],a+n+s,l,this.margin[1],o].filter(Boolean).join(" ");return e.role==="heading"?c():e.disabled?(Jx.hasColor(l)||(l=this.styles.disabled(l)),c()):(i&&(l=this.styles.em(l)),c())}async renderChoices(){if(this.state.loading==="choices")return this.styles.warning("Loading choices");if(this.state.submitted)return"";let e=this.visible.map(async(s,o)=>await this.renderChoice(s,o)),r=await Promise.all(e);r.length||r.push(this.styles.danger("No matching choices"));let i=this.margin[0]+r.join(` +`+this.styles.danger(r),this.state.submitted=!1,await this.render(),await this.alert(),this.state.validating=!1,this.state.error=void 0;return}this.state.validating=!1,await this.render(),await this.close(),this.value=await this.result(this.value),this.emit("submit",this.value)}async cancel(e){this.state.cancelled=this.state.submitted=!0,await this.render(),await this.close(),typeof this.options.onCancel=="function"&&await this.options.onCancel.call(this,this.name,this.value,this),this.emit("cancel",await this.error(e))}async close(){this.state.closed=!0;try{let e=this.sections(),r=Math.ceil(e.prompt.length/this.width);e.rest&&this.write(ll.cursor.down(e.rest.length)),this.write(` +`.repeat(r))}catch(e){}this.emit("close")}start(){!this.stop&&this.options.show!==!1&&(this.stop=ev.listen(this,this.keypress.bind(this)),this.once("close",this.stop))}async skip(){return this.skipped=this.options.skip===!0,typeof this.options.skip=="function"&&(this.skipped=await this.options.skip.call(this,this.name,this.value)),this.skipped}async initialize(){let{format:e,options:r,result:i}=this;if(this.format=()=>e.call(this,this.value),this.result=()=>i.call(this,this.value),typeof r.initial=="function"&&(this.initial=await r.initial.call(this,this)),typeof r.onRun=="function"&&await r.onRun.call(this,this),typeof r.onSubmit=="function"){let n=r.onSubmit.bind(this),s=this.submit.bind(this);delete this.options.onSubmit,this.submit=async()=>(await n(this.name,this.value,this),s())}await this.start(),await this.render()}render(){throw new Error("expected prompt to have a custom render method")}run(){return new Promise(async(e,r)=>{if(this.once("submit",e),this.once("cancel",r),await this.skip())return this.render=()=>{},this.submit();await this.initialize(),this.emit("run")})}async element(e,r,i){let{options:n,state:s,symbols:o,timers:a}=this,l=a&&a[e];s.timer=l;let c=n[e]||s[e]||o[e],u=r&&r[e]!=null?r[e]:await c;if(u==="")return u;let g=await this.resolve(u,s,r,i);return!g&&r&&r[e]?this.resolve(c,s,r,i):g}async prefix(){let e=await this.element("prefix")||this.symbols,r=this.timers&&this.timers.prefix,i=this.state;return i.timer=r,Ri.isObject(e)&&(e=e[i.status]||e.pending),Ri.hasColor(e)?e:(this.styles[i.status]||this.styles.pending)(e)}async message(){let e=await this.element("message");return Ri.hasColor(e)?e:this.styles.strong(e)}async separator(){let e=await this.element("separator")||this.symbols,r=this.timers&&this.timers.separator,i=this.state;i.timer=r;let n=e[i.status]||e.pending||i.separator,s=await this.resolve(n,i);return Ri.isObject(s)&&(s=s[i.status]||s.pending),Ri.hasColor(s)?s:this.styles.muted(s)}async pointer(e,r){let i=await this.element("pointer",e,r);if(typeof i=="string"&&Ri.hasColor(i))return i;if(i){let n=this.styles,s=this.index===r,o=s?n.primary:c=>c,a=await this.resolve(i[s?"on":"off"]||i,this.state),l=Ri.hasColor(a)?a:o(a);return s?l:" ".repeat(a.length)}}async indicator(e,r){let i=await this.element("indicator",e,r);if(typeof i=="string"&&Ri.hasColor(i))return i;if(i){let n=this.styles,s=e.enabled===!0,o=s?n.success:n.dark,a=i[s?"on":"off"]||i;return Ri.hasColor(a)?a:o(a)}return""}body(){return null}footer(){if(this.state.status==="pending")return this.element("footer")}header(){if(this.state.status==="pending")return this.element("header")}async hint(){if(this.state.status==="pending"&&!this.isValue(this.state.input)){let e=await this.element("hint");return Ri.hasColor(e)?e:this.styles.muted(e)}}error(e){return this.state.submitted?"":e||this.state.error}format(e){return e}result(e){return e}validate(e){return this.options.required===!0?this.isValue(e):!0}isValue(e){return e!=null&&e!==""}resolve(e,...r){return Ri.resolve(this,e,...r)}get base(){return Vy.prototype}get style(){return this.styles[this.state.status]}get height(){return this.options.rows||Ri.height(this.stdout,25)}get width(){return this.options.columns||Ri.width(this.stdout,80)}get size(){return{width:this.width,height:this.height}}set cursor(e){this.state.cursor=e}get cursor(){return this.state.cursor}set input(e){this.state.input=e}get input(){return this.state.input}set value(e){this.state.value=e}get value(){let{input:e,value:r}=this.state,i=[r,e].find(this.isValue.bind(this));return this.isValue(i)?i:this.initial}static get prompt(){return e=>new this(e).run()}};function eTe(t){let e=n=>t[n]===void 0||typeof t[n]=="function",r=["actions","choices","initial","margin","roles","styles","symbols","theme","timers","value"],i=["body","footer","error","header","hint","indicator","message","prefix","separator","skip"];for(let n of Object.keys(t.options)){if(r.includes(n)||/^on[A-Z]/.test(n))continue;let s=t.options[n];typeof s=="function"&&e(n)?i.includes(n)||(t[n]=s.bind(t)):typeof t[n]!="function"&&(t[n]=s)}}function tTe(t){typeof t=="number"&&(t=[t,t,t,t]);let e=[].concat(t||[]),r=n=>n%2==0?` +`:" ",i=[];for(let n=0;n<4;n++){let s=r(n);e[n]?i.push(s.repeat(e[n])):i.push("")}return i}r_.exports=Vy});var o_=C((Not,n_)=>{"use strict";var rTe=$r(),s_={default(t,e){return e},checkbox(t,e){throw new Error("checkbox role is not implemented yet")},editable(t,e){throw new Error("editable role is not implemented yet")},expandable(t,e){throw new Error("expandable role is not implemented yet")},heading(t,e){return e.disabled="",e.indicator=[e.indicator," "].find(r=>r!=null),e.message=e.message||"",e},input(t,e){throw new Error("input role is not implemented yet")},option(t,e){return s_.default(t,e)},radio(t,e){throw new Error("radio role is not implemented yet")},separator(t,e){return e.disabled="",e.indicator=[e.indicator," "].find(r=>r!=null),e.message=e.message||t.symbols.line.repeat(5),e},spacer(t,e){return e}};n_.exports=(t,e={})=>{let r=rTe.merge({},s_,e.roles);return r[t]||r.default}});var fp=C((Mot,a_)=>{"use strict";var iTe=Gn(),nTe=Su(),sTe=o_(),Xy=$r(),{reorder:tv,scrollUp:oTe,scrollDown:aTe,isObject:A_,swap:ATe}=Xy,l_=class extends nTe{constructor(e){super(e);this.cursorHide(),this.maxSelected=e.maxSelected||Infinity,this.multiple=e.multiple||!1,this.initial=e.initial||0,this.delay=e.delay||0,this.longest=0,this.num=""}async initialize(){typeof this.options.initial=="function"&&(this.initial=await this.options.initial.call(this)),await this.reset(!0),await super.initialize()}async reset(){let{choices:e,initial:r,autofocus:i,suggest:n}=this.options;if(this.state._choices=[],this.state.choices=[],this.choices=await Promise.all(await this.toChoices(e)),this.choices.forEach(s=>s.enabled=!1),typeof n!="function"&&this.selectable.length===0)throw new Error("At least one choice must be selectable");A_(r)&&(r=Object.keys(r)),Array.isArray(r)?(i!=null&&(this.index=this.findIndex(i)),r.forEach(s=>this.enable(this.find(s))),await this.render()):(i!=null&&(r=i),typeof r=="string"&&(r=this.findIndex(r)),typeof r=="number"&&r>-1&&(this.index=Math.max(0,Math.min(r,this.choices.length)),this.enable(this.find(this.index)))),this.isDisabled(this.focused)&&await this.down()}async toChoices(e,r){this.state.loadingChoices=!0;let i=[],n=0,s=async(o,a)=>{typeof o=="function"&&(o=await o.call(this)),o instanceof Promise&&(o=await o);for(let l=0;l(this.state.loadingChoices=!1,o))}async toChoice(e,r,i){if(typeof e=="function"&&(e=await e.call(this,this)),e instanceof Promise&&(e=await e),typeof e=="string"&&(e={name:e}),e.normalized)return e;e.normalized=!0;let n=e.value;if(e=sTe(e.role,this.options)(this,e),typeof e.disabled=="string"&&!e.hint&&(e.hint=e.disabled,e.disabled=!0),e.disabled===!0&&e.hint==null&&(e.hint="(disabled)"),e.index!=null)return e;e.name=e.name||e.key||e.title||e.value||e.message,e.message=e.message||e.name||"",e.value=[e.value,e.name].find(this.isValue.bind(this)),e.input="",e.index=r,e.cursor=0,Xy.define(e,"parent",i),e.level=i?i.level+1:1,e.indent==null&&(e.indent=i?i.indent+" ":e.indent||""),e.path=i?i.path+"."+e.name:e.name,e.enabled=!!(this.multiple&&!this.isDisabled(e)&&(e.enabled||this.isSelected(e))),this.isDisabled(e)||(this.longest=Math.max(this.longest,iTe.unstyle(e.message).length));let o=k({},e);return e.reset=(a=o.input,l=o.value)=>{for(let c of Object.keys(o))e[c]=o[c];e.input=a,e.value=l},n==null&&typeof e.initial=="function"&&(e.input=await e.initial.call(this,this.state,e,r)),e}async onChoice(e,r){this.emit("choice",e,r,this),typeof e.onChoice=="function"&&await e.onChoice.call(this,this.state,e,r)}async addChoice(e,r,i){let n=await this.toChoice(e,r,i);return this.choices.push(n),this.index=this.choices.length-1,this.limit=this.choices.length,n}async newItem(e,r,i){let n=k({name:"New choice name?",editable:!0,newChoice:!0},e),s=await this.addChoice(n,r,i);return s.updateChoice=()=>{delete s.newChoice,s.name=s.message=s.input,s.input="",s.cursor=0},this.render()}indent(e){return e.indent==null?e.level>1?" ".repeat(e.level-1):"":e.indent}dispatch(e,r){if(this.multiple&&this[r.name])return this[r.name]();this.alert()}focus(e,r){return typeof r!="boolean"&&(r=e.enabled),r&&!e.enabled&&this.selected.length>=this.maxSelected?this.alert():(this.index=e.index,e.enabled=r&&!this.isDisabled(e),e)}space(){return this.multiple?(this.toggle(this.focused),this.render()):this.alert()}a(){if(this.maxSelectedr.enabled);return this.choices.forEach(r=>r.enabled=!e),this.render()}i(){return this.choices.length-this.selected.length>this.maxSelected?this.alert():(this.choices.forEach(e=>e.enabled=!e.enabled),this.render())}g(e=this.focused){return this.choices.some(r=>!!r.parent)?(this.toggle(e.parent&&!e.choices?e.parent:e),this.render()):this.a()}toggle(e,r){if(!e.enabled&&this.selected.length>=this.maxSelected)return this.alert();typeof r!="boolean"&&(r=!e.enabled),e.enabled=r,e.choices&&e.choices.forEach(n=>this.toggle(n,r));let i=e.parent;for(;i;){let n=i.choices.filter(s=>this.isDisabled(s));i.enabled=n.every(s=>s.enabled===!0),i=i.parent}return c_(this,this.choices),this.emit("toggle",e,this),e}enable(e){return this.selected.length>=this.maxSelected?this.alert():(e.enabled=!this.isDisabled(e),e.choices&&e.choices.forEach(this.enable.bind(this)),e)}disable(e){return e.enabled=!1,e.choices&&e.choices.forEach(this.disable.bind(this)),e}number(e){this.num+=e;let r=i=>{let n=Number(i);if(n>this.choices.length-1)return this.alert();let s=this.focused,o=this.choices.find(a=>n===a.index);if(!o.enabled&&this.selected.length>=this.maxSelected)return this.alert();if(this.visible.indexOf(o)===-1){let a=tv(this.choices),l=a.indexOf(o);if(s.index>l){let c=a.slice(l,l+this.limit),u=a.filter(g=>!c.includes(g));this.choices=c.concat(u)}else{let c=l-this.limit+1;this.choices=a.slice(c).concat(a.slice(0,c))}}return this.index=this.choices.indexOf(o),this.toggle(this.focused),this.render()};return clearTimeout(this.numberTimeout),new Promise(i=>{let n=this.choices.length,s=this.num,o=(a=!1,l)=>{clearTimeout(this.numberTimeout),a&&(l=r(s)),this.num="",i(l)};if(s==="0"||s.length===1&&Number(s+"0")>n)return o(!0);if(Number(s)>n)return o(!1,this.alert());this.numberTimeout=setTimeout(()=>o(!0),this.delay)})}home(){return this.choices=tv(this.choices),this.index=0,this.render()}end(){let e=this.choices.length-this.limit,r=tv(this.choices);return this.choices=r.slice(e).concat(r.slice(0,e)),this.index=this.limit-1,this.render()}first(){return this.index=0,this.render()}last(){return this.index=this.visible.length-1,this.render()}prev(){return this.visible.length<=1?this.alert():this.up()}next(){return this.visible.length<=1?this.alert():this.down()}right(){return this.cursor>=this.input.length?this.alert():(this.cursor++,this.render())}left(){return this.cursor<=0?this.alert():(this.cursor--,this.render())}up(){let e=this.choices.length,r=this.visible.length,i=this.index;return this.options.scroll===!1&&i===0?this.alert():e>r&&i===0?this.scrollUp():(this.index=(i-1%e+e)%e,this.isDisabled()?this.up():this.render())}down(){let e=this.choices.length,r=this.visible.length,i=this.index;return this.options.scroll===!1&&i===r-1?this.alert():e>r&&i===r-1?this.scrollDown():(this.index=(i+1)%e,this.isDisabled()?this.down():this.render())}scrollUp(e=0){return this.choices=oTe(this.choices),this.index=e,this.isDisabled()?this.up():this.render()}scrollDown(e=this.visible.length-1){return this.choices=aTe(this.choices),this.index=e,this.isDisabled()?this.down():this.render()}async shiftUp(){if(this.options.sort===!0){this.sorting=!0,this.swap(this.index-1),await this.up(),this.sorting=!1;return}return this.scrollUp(this.index)}async shiftDown(){if(this.options.sort===!0){this.sorting=!0,this.swap(this.index+1),await this.down(),this.sorting=!1;return}return this.scrollDown(this.index)}pageUp(){return this.visible.length<=1?this.alert():(this.limit=Math.max(this.limit-1,0),this.index=Math.min(this.limit-1,this.index),this._limit=this.limit,this.isDisabled()?this.up():this.render())}pageDown(){return this.visible.length>=this.choices.length?this.alert():(this.index=Math.max(0,this.index),this.limit=Math.min(this.limit+1,this.choices.length),this._limit=this.limit,this.isDisabled()?this.down():this.render())}swap(e){ATe(this.choices,this.index,e)}isDisabled(e=this.focused){return e&&["disabled","collapsed","hidden","completing","readonly"].some(i=>e[i]===!0)?!0:e&&e.role==="heading"}isEnabled(e=this.focused){if(Array.isArray(e))return e.every(r=>this.isEnabled(r));if(e.choices){let r=e.choices.filter(i=>!this.isDisabled(i));return e.enabled&&r.every(i=>this.isEnabled(i))}return e.enabled&&!this.isDisabled(e)}isChoice(e,r){return e.name===r||e.index===Number(r)}isSelected(e){return Array.isArray(this.initial)?this.initial.some(r=>this.isChoice(e,r)):this.isChoice(e,this.initial)}map(e=[],r="value"){return[].concat(e||[]).reduce((i,n)=>(i[n]=this.find(n,r),i),{})}filter(e,r){let i=(a,l)=>[a.name,l].includes(e),n=typeof e=="function"?e:i,o=(this.options.multiple?this.state._choices:this.choices).filter(n);return r?o.map(a=>a[r]):o}find(e,r){if(A_(e))return r?e[r]:e;let i=(o,a)=>[o.name,a].includes(e),n=typeof e=="function"?e:i,s=this.choices.find(n);if(s)return r?s[r]:s}findIndex(e){return this.choices.indexOf(this.find(e))}async submit(){let e=this.focused;if(!e)return this.alert();if(e.newChoice)return e.input?(e.updateChoice(),this.render()):this.alert();if(this.choices.some(o=>o.newChoice))return this.alert();let{reorder:r,sort:i}=this.options,n=this.multiple===!0,s=this.selected;return s===void 0?this.alert():(Array.isArray(s)&&r!==!1&&i!==!0&&(s=Xy.reorder(s)),this.value=n?s.map(o=>o.name):s.name,super.submit())}set choices(e=[]){this.state._choices=this.state._choices||[],this.state.choices=e;for(let r of e)this.state._choices.some(i=>i.name===r.name)||this.state._choices.push(r);if(!this._initial&&this.options.initial){this._initial=!0;let r=this.initial;if(typeof r=="string"||typeof r=="number"){let i=this.find(r);i&&(this.initial=i.index,this.focus(i,!0))}}}get choices(){return c_(this,this.state.choices||[])}set visible(e){this.state.visible=e}get visible(){return(this.state.visible||this.choices).slice(0,this.limit)}set limit(e){this.state.limit=e}get limit(){let{state:e,options:r,choices:i}=this,n=e.limit||this._limit||r.limit||i.length;return Math.min(n,this.height)}set value(e){super.value=e}get value(){return typeof super.value!="string"&&super.value===this.initial?this.input:super.value}set index(e){this.state.index=e}get index(){return Math.max(0,this.state?this.state.index:0)}get enabled(){return this.filter(this.isEnabled.bind(this))}get focused(){let e=this.choices[this.index];return e&&this.state.submitted&&this.multiple!==!0&&(e.enabled=!0),e}get selectable(){return this.choices.filter(e=>!this.isDisabled(e))}get selected(){return this.multiple?this.enabled:this.focused}};function c_(t,e){if(e instanceof Promise)return e;if(typeof e=="function"){if(Xy.isAsyncFn(e))return e;e=e.call(t,t)}for(let r of e){if(Array.isArray(r.choices)){let i=r.choices.filter(n=>!t.isDisabled(n));r.enabled=i.every(n=>n.enabled===!0)}t.isDisabled(r)===!0&&delete r.enabled}return e}a_.exports=l_});var Ea=C((Oot,u_)=>{"use strict";var lTe=fp(),rv=$r(),g_=class extends lTe{constructor(e){super(e);this.emptyError=this.options.emptyError||"No items were selected"}async dispatch(e,r){if(this.multiple)return this[r.name]?await this[r.name](e,r):await super.dispatch(e,r);this.alert()}separator(){if(this.options.separator)return super.separator();let e=this.styles.muted(this.symbols.ellipsis);return this.state.submitted?super.separator():e}pointer(e,r){return!this.multiple||this.options.pointer?super.pointer(e,r):""}indicator(e,r){return this.multiple?super.indicator(e,r):""}choiceMessage(e,r){let i=this.resolve(e.message,this.state,e,r);return e.role==="heading"&&!rv.hasColor(i)&&(i=this.styles.strong(i)),this.resolve(i,this.state,e,r)}choiceSeparator(){return":"}async renderChoice(e,r){await this.onChoice(e,r);let i=this.index===r,n=await this.pointer(e,r),s=await this.indicator(e,r)+(e.pad||""),o=await this.resolve(e.hint,this.state,e,r);o&&!rv.hasColor(o)&&(o=this.styles.muted(o));let a=this.indent(e),l=await this.choiceMessage(e,r),c=()=>[this.margin[3],a+n+s,l,this.margin[1],o].filter(Boolean).join(" ");return e.role==="heading"?c():e.disabled?(rv.hasColor(l)||(l=this.styles.disabled(l)),c()):(i&&(l=this.styles.em(l)),c())}async renderChoices(){if(this.state.loading==="choices")return this.styles.warning("Loading choices");if(this.state.submitted)return"";let e=this.visible.map(async(s,o)=>await this.renderChoice(s,o)),r=await Promise.all(e);r.length||r.push(this.styles.danger("No matching choices"));let i=this.margin[0]+r.join(` `),n;return this.options.choicesHeader&&(n=await this.resolve(this.options.choicesHeader,this.state)),[n,i].filter(Boolean).join(` `)}format(){return!this.state.submitted||this.state.cancelled?"":Array.isArray(this.selected)?this.selected.map(e=>this.styles.primary(e.name)).join(", "):this.styles.primary(this.selected.name)}async render(){let{submitted:e,size:r}=this.state,i="",n=await this.header(),s=await this.prefix(),o=await this.separator(),a=await this.message();this.options.promptLine!==!1&&(i=[s,a,o,""].join(" "),this.state.prompt=i);let l=await this.format(),c=await this.error()||await this.hint(),u=await this.renderChoices(),g=await this.footer();l&&(i+=l),c&&!i.includes(c)&&(i+=" "+c),e&&!l&&!u.trim()&&this.multiple&&this.emptyError!=null&&(i+=this.styles.danger(this.emptyError)),this.clear(r),this.write([n,i,u,g].filter(Boolean).join(` -`)),this.write(this.margin[2]),this.restore()}};LV.exports=MV});var TV=C((Ent,NV)=>{"use strict";var yOe=ta(),BOe=(t,e)=>{let r=t.toLowerCase();return i=>{let s=i.toLowerCase().indexOf(r),o=e(i.slice(s,s+r.length));return s>=0?i.slice(0,s)+o+i.slice(s+r.length):i}},OV=class extends yOe{constructor(e){super(e);this.cursorShow()}moveCursor(e){this.state.cursor+=e}dispatch(e){return this.append(e)}space(e){return this.options.multiple?super.space(e):this.append(e)}append(e){let{cursor:r,input:i}=this.state;return this.input=i.slice(0,r)+e+i.slice(r),this.moveCursor(1),this.complete()}delete(){let{cursor:e,input:r}=this.state;return r?(this.input=r.slice(0,e-1)+r.slice(e),this.moveCursor(-1),this.complete()):this.alert()}deleteForward(){let{cursor:e,input:r}=this.state;return r[e]===void 0?this.alert():(this.input=`${r}`.slice(0,e)+`${r}`.slice(e+1),this.complete())}number(e){return this.append(e)}async complete(){this.completing=!0,this.choices=await this.suggest(this.input,this.state._choices),this.state.limit=void 0,this.index=Math.min(Math.max(this.visible.length-1,0),this.index),await this.render(),this.completing=!1}suggest(e=this.input,r=this.state._choices){if(typeof this.options.suggest=="function")return this.options.suggest.call(this,e,r);let i=e.toLowerCase();return r.filter(n=>n.message.toLowerCase().includes(i))}pointer(){return""}format(){if(!this.focused)return this.input;if(this.options.multiple&&this.state.submitted)return this.selected.map(e=>this.styles.primary(e.message)).join(", ");if(this.state.submitted){let e=this.value=this.input=this.focused.value;return this.styles.primary(e)}return this.input}async render(){if(this.state.status!=="pending")return super.render();let e=this.options.highlight?this.options.highlight.bind(this):this.styles.placeholder,r=BOe(this.input,e),i=this.choices;this.choices=i.map(n=>({...n,message:r(n.message)})),await super.render(),this.choices=i}submit(){return this.options.multiple&&(this.value=this.selected.map(e=>e.name)),super.submit()}};NV.exports=OV});var zx=C((ynt,KV)=>{"use strict";var Wx=qr();KV.exports=(t,e={})=>{t.cursorHide();let{input:r="",initial:i="",pos:n,showCursor:s=!0,color:o}=e,a=o||t.styles.placeholder,l=Wx.inverse(t.styles.primary),c=m=>l(t.styles.black(m)),u=r,g=" ",h=c(g);if(t.blink&&t.blink.off===!0&&(c=m=>m,h=""),s&&n===0&&i===""&&r==="")return c(g);if(s&&n===0&&(r===i||r===""))return c(i[0])+a(i.slice(1));i=Wx.isPrimitive(i)?`${i}`:"",r=Wx.isPrimitive(r)?`${r}`:"";let f=i&&i.startsWith(r)&&i!==r,p=f?c(i[r.length]):h;if(n!==r.length&&s===!0&&(u=r.slice(0,n)+c(r[n])+r.slice(n+1),p=""),s===!1&&(p=""),f){let m=t.styles.unstyle(u+p);return u+p+a(i.slice(m.length))}return u+p}});var iy=C((Bnt,UV)=>{"use strict";var wOe=Rn(),QOe=ta(),bOe=zx(),HV=class extends QOe{constructor(e){super({...e,multiple:!0});this.type="form",this.initial=this.options.initial,this.align=[this.options.align,"right"].find(r=>r!=null),this.emptyError="",this.values={}}async reset(e){return await super.reset(),e===!0&&(this._index=this.index),this.index=this._index,this.values={},this.choices.forEach(r=>r.reset&&r.reset()),this.render()}dispatch(e){return!!e&&this.append(e)}append(e){let r=this.focused;if(!r)return this.alert();let{cursor:i,input:n}=r;return r.value=r.input=n.slice(0,i)+e+n.slice(i),r.cursor++,this.render()}delete(){let e=this.focused;if(!e||e.cursor<=0)return this.alert();let{cursor:r,input:i}=e;return e.value=e.input=i.slice(0,r-1)+i.slice(r),e.cursor--,this.render()}deleteForward(){let e=this.focused;if(!e)return this.alert();let{cursor:r,input:i}=e;if(i[r]===void 0)return this.alert();let n=`${i}`.slice(0,r)+`${i}`.slice(r+1);return e.value=e.input=n,this.render()}right(){let e=this.focused;return e?e.cursor>=e.input.length?this.alert():(e.cursor++,this.render()):this.alert()}left(){let e=this.focused;return e?e.cursor<=0?this.alert():(e.cursor--,this.render()):this.alert()}space(e,r){return this.dispatch(e,r)}number(e,r){return this.dispatch(e,r)}next(){let e=this.focused;if(!e)return this.alert();let{initial:r,input:i}=e;return r&&r.startsWith(i)&&i!==r?(e.value=e.input=r,e.cursor=e.value.length,this.render()):super.next()}prev(){let e=this.focused;return e?e.cursor===0?super.prev():(e.value=e.input="",e.cursor=0,this.render()):this.alert()}separator(){return""}format(e){return this.state.submitted?"":super.format(e)}pointer(){return""}indicator(e){return e.input?"\u29BF":"\u2299"}async choiceSeparator(e,r){let i=await this.resolve(e.separator,this.state,e,r)||":";return i?" "+this.styles.disabled(i):""}async renderChoice(e,r){await this.onChoice(e,r);let{state:i,styles:n}=this,{cursor:s,initial:o="",name:a,hint:l,input:c=""}=e,{muted:u,submitted:g,primary:h,danger:f}=n,p=l,m=this.index===r,I=e.validate||(()=>!0),y=await this.choiceSeparator(e,r),B=e.message;this.align==="right"&&(B=B.padStart(this.longest+1," ")),this.align==="left"&&(B=B.padEnd(this.longest+1," "));let P=this.values[a]=c||o,k=c?"success":"dark";await I.call(e,P,this.state)!==!0&&(k="danger");let O=n[k](await this.indicator(e,r))+(e.pad||""),v=this.indent(e),U=()=>[v,O,B+y,c,p].filter(Boolean).join(" ");if(i.submitted)return B=wOe.unstyle(B),c=g(c),p="",U();if(e.format)c=await e.format.call(this,c,e,r);else{let re=this.styles.muted;c=bOe(this,{input:c,initial:o,pos:s,showCursor:m,color:re})}return this.isValue(c)||(c=this.styles.muted(this.symbols.ellipsis)),e.result&&(this.values[a]=await e.result.call(this,P,e,r)),m&&(B=h(B)),e.error?c+=(c?" ":"")+f(e.error.trim()):e.hint&&(c+=(c?" ":"")+u(e.hint.trim())),U()}async submit(){return this.value=this.values,super.base.submit.call(this)}};UV.exports=HV});var Xx=C((wnt,YV)=>{"use strict";var DOe=iy(),SOe=()=>{throw new Error("expected prompt to have a custom authenticate method")},jV=(t=SOe)=>{class e extends DOe{constructor(i){super(i)}async submit(){this.value=await t.call(this,this.values,this.state),super.base.submit.call(this)}static create(i){return jV(i)}}return e};YV.exports=jV()});var JV=C((Qnt,GV)=>{"use strict";var POe=Xx();function xOe(t,e){return t.username===this.options.username&&t.password===this.options.password}var qV=(t=xOe)=>{let e=[{name:"username",message:"username"},{name:"password",message:"password",format(i){return this.options.showPassword?i:(this.state.submitted?this.styles.primary:this.styles.muted)(this.symbols.asterisk.repeat(i.length))}}];class r extends POe.create(t){constructor(n){super({...n,choices:e})}static create(n){return qV(n)}}return r};GV.exports=qV()});var ny=C((bnt,WV)=>{"use strict";var kOe=Zc(),{isPrimitive:vOe,hasColor:FOe}=qr(),zV=class extends kOe{constructor(e){super(e);this.cursorHide()}async initialize(){let e=await this.resolve(this.initial,this.state);this.input=await this.cast(e),await super.initialize()}dispatch(e){return this.isValue(e)?(this.input=e,this.submit()):this.alert()}format(e){let{styles:r,state:i}=this;return i.submitted?r.success(e):r.primary(e)}cast(e){return this.isTrue(e)}isTrue(e){return/^[ty1]/i.test(e)}isFalse(e){return/^[fn0]/i.test(e)}isValue(e){return vOe(e)&&(this.isTrue(e)||this.isFalse(e))}async hint(){if(this.state.status==="pending"){let e=await this.element("hint");return FOe(e)?e:this.styles.muted(e)}}async render(){let{input:e,size:r}=this.state,i=await this.prefix(),n=await this.separator(),s=await this.message(),o=this.styles.muted(this.default),a=[i,s,o,n].filter(Boolean).join(" ");this.state.prompt=a;let l=await this.header(),c=this.value=this.cast(e),u=await this.format(c),g=await this.error()||await this.hint(),h=await this.footer();g&&!a.includes(g)&&(u+=" "+g),a+=" "+u,this.clear(r),this.write([l,a,h].filter(Boolean).join(` -`)),this.restore()}set value(e){super.value=e}get value(){return this.cast(super.value)}};WV.exports=zV});var ZV=C((Dnt,XV)=>{"use strict";var ROe=ny(),VV=class extends ROe{constructor(e){super(e);this.default=this.options.default||(this.initial?"(Y/n)":"(y/N)")}};XV.exports=VV});var eZ=C((Snt,_V)=>{"use strict";var LOe=ta(),MOe=iy(),_c=MOe.prototype,$V=class extends LOe{constructor(e){super({...e,multiple:!0});this.align=[this.options.align,"left"].find(r=>r!=null),this.emptyError="",this.values={}}dispatch(e,r){let i=this.focused,n=i.parent||{};return!i.editable&&!n.editable&&(e==="a"||e==="i")?super[e]():_c.dispatch.call(this,e,r)}append(e,r){return _c.append.call(this,e,r)}delete(e,r){return _c.delete.call(this,e,r)}space(e){return this.focused.editable?this.append(e):super.space()}number(e){return this.focused.editable?this.append(e):super.number(e)}next(){return this.focused.editable?_c.next.call(this):super.next()}prev(){return this.focused.editable?_c.prev.call(this):super.prev()}async indicator(e,r){let i=e.indicator||"",n=e.editable?i:super.indicator(e,r);return await this.resolve(n,this.state,e,r)||""}indent(e){return e.role==="heading"?"":e.editable?" ":" "}async renderChoice(e,r){return e.indent="",e.editable?_c.renderChoice.call(this,e,r):super.renderChoice(e,r)}error(){return""}footer(){return this.state.error}async validate(){let e=!0;for(let r of this.choices){if(typeof r.validate!="function"||r.role==="heading")continue;let i=r.parent?this.value[r.parent.name]:this.value;if(r.editable?i=r.value===r.name?r.initial||"":r.value:this.isDisabled(r)||(i=r.enabled===!0),e=await r.validate(i,this.state),e!==!0)break}return e!==!0&&(this.state.error=typeof e=="string"?e:"Invalid Input"),e}submit(){if(this.focused.newChoice===!0)return super.submit();if(this.choices.some(e=>e.newChoice))return this.alert();this.value={};for(let e of this.choices){let r=e.parent?this.value[e.parent.name]:this.value;if(e.role==="heading"){this.value[e.name]={};continue}e.editable?r[e.name]=e.value===e.name?e.initial||"":e.value:this.isDisabled(e)||(r[e.name]=e.enabled===!0)}return this.base.submit.call(this)}};_V.exports=$V});var GA=C((Pnt,tZ)=>{"use strict";var NOe=Zc(),OOe=zx(),{isPrimitive:TOe}=qr(),rZ=class extends NOe{constructor(e){super(e);this.initial=TOe(this.initial)?String(this.initial):"",this.initial&&this.cursorHide(),this.state.prevCursor=0,this.state.clipboard=[]}async keypress(e,r={}){let i=this.state.prevKeypress;return this.state.prevKeypress=r,this.options.multiline===!0&&r.name==="return"&&(!i||i.name!=="return")?this.append(` -`,r):super.keypress(e,r)}moveCursor(e){this.cursor+=e}reset(){return this.input=this.value="",this.cursor=0,this.render()}dispatch(e,r){if(!e||r.ctrl||r.code)return this.alert();this.append(e)}append(e){let{cursor:r,input:i}=this.state;this.input=`${i}`.slice(0,r)+e+`${i}`.slice(r),this.moveCursor(String(e).length),this.render()}insert(e){this.append(e)}delete(){let{cursor:e,input:r}=this.state;if(e<=0)return this.alert();this.input=`${r}`.slice(0,e-1)+`${r}`.slice(e),this.moveCursor(-1),this.render()}deleteForward(){let{cursor:e,input:r}=this.state;if(r[e]===void 0)return this.alert();this.input=`${r}`.slice(0,e)+`${r}`.slice(e+1),this.render()}cutForward(){let e=this.cursor;if(this.input.length<=e)return this.alert();this.state.clipboard.push(this.input.slice(e)),this.input=this.input.slice(0,e),this.render()}cutLeft(){let e=this.cursor;if(e===0)return this.alert();let r=this.input.slice(0,e),i=this.input.slice(e),n=r.split(" ");this.state.clipboard.push(n.pop()),this.input=n.join(" "),this.cursor=this.input.length,this.input+=i,this.render()}paste(){if(!this.state.clipboard.length)return this.alert();this.insert(this.state.clipboard.pop()),this.render()}toggleCursor(){this.state.prevCursor?(this.cursor=this.state.prevCursor,this.state.prevCursor=0):(this.state.prevCursor=this.cursor,this.cursor=0),this.render()}first(){this.cursor=0,this.render()}last(){this.cursor=this.input.length-1,this.render()}next(){let e=this.initial!=null?String(this.initial):"";if(!e||!e.startsWith(this.input))return this.alert();this.input=this.initial,this.cursor=this.initial.length,this.render()}prev(){if(!this.input)return this.alert();this.reset()}backward(){return this.left()}forward(){return this.right()}right(){return this.cursor>=this.input.length?this.alert():(this.moveCursor(1),this.render())}left(){return this.cursor<=0?this.alert():(this.moveCursor(-1),this.render())}isValue(e){return!!e}async format(e=this.value){let r=await this.resolve(this.initial,this.state);return this.state.submitted?this.styles.submitted(e||r):OOe(this,{input:e,initial:r,pos:this.cursor})}async render(){let e=this.state.size,r=await this.prefix(),i=await this.separator(),n=await this.message(),s=[r,n,i].filter(Boolean).join(" ");this.state.prompt=s;let o=await this.header(),a=await this.format(),l=await this.error()||await this.hint(),c=await this.footer();l&&!a.includes(l)&&(a+=" "+l),s+=" "+a,this.clear(e),this.write([o,s,c].filter(Boolean).join(` -`)),this.restore()}};tZ.exports=rZ});var nZ=C((xnt,iZ)=>{"use strict";var KOe=t=>t.filter((e,r)=>t.lastIndexOf(e)===r),sy=t=>KOe(t).filter(Boolean);iZ.exports=(t,e={},r="")=>{let{past:i=[],present:n=""}=e,s,o;switch(t){case"prev":case"undo":return s=i.slice(0,i.length-1),o=i[i.length-1]||"",{past:sy([r,...s]),present:o};case"next":case"redo":return s=i.slice(1),o=i[0]||"",{past:sy([...s,r]),present:o};case"save":return{past:sy([...i,r]),present:""};case"remove":return o=sy(i.filter(a=>a!==r)),n="",o.length&&(n=o.pop()),{past:o,present:n};default:throw new Error(`Invalid action: "${t}"`)}}});var Vx=C((knt,sZ)=>{"use strict";var UOe=GA(),oZ=nZ(),aZ=class extends UOe{constructor(e){super(e);let r=this.options.history;if(r&&r.store){let i=r.values||this.initial;this.autosave=!!r.autosave,this.store=r.store,this.data=this.store.get("values")||{past:[],present:i},this.initial=this.data.present||this.data.past[this.data.past.length-1]}}completion(e){return this.store?(this.data=oZ(e,this.data,this.input),this.data.present?(this.input=this.data.present,this.cursor=this.input.length,this.render()):this.alert()):this.alert()}altUp(){return this.completion("prev")}altDown(){return this.completion("next")}prev(){return this.save(),super.prev()}save(){!this.store||(this.data=oZ("save",this.data,this.input),this.store.set("values",this.data))}submit(){return this.store&&this.autosave===!0&&this.save(),super.submit()}};sZ.exports=aZ});var cZ=C((vnt,AZ)=>{"use strict";var HOe=GA(),lZ=class extends HOe{format(){return""}};AZ.exports=lZ});var hZ=C((Fnt,uZ)=>{"use strict";var YOe=GA(),gZ=class extends YOe{constructor(e={}){super(e);this.sep=this.options.separator||/, */,this.initial=e.initial||""}split(e=this.value){return e?String(e).split(this.sep):[]}format(){let e=this.state.submitted?this.styles.primary:r=>r;return this.list.map(e).join(", ")}async submit(e){let r=this.state.error||await this.validate(this.list,this.state);return r!==!0?(this.state.error=r,super.submit()):(this.value=this.list,super.submit())}get list(){return this.split()}};uZ.exports=gZ});var dZ=C((Rnt,fZ)=>{"use strict";var jOe=ta(),pZ=class extends jOe{constructor(e){super({...e,multiple:!0})}};fZ.exports=pZ});var Zx=C((Lnt,CZ)=>{"use strict";var GOe=GA(),mZ=class extends GOe{constructor(e={}){super({style:"number",...e});this.min=this.isValue(e.min)?this.toNumber(e.min):-Infinity,this.max=this.isValue(e.max)?this.toNumber(e.max):Infinity,this.delay=e.delay!=null?e.delay:1e3,this.float=e.float!==!1,this.round=e.round===!0||e.float===!1,this.major=e.major||10,this.minor=e.minor||1,this.initial=e.initial!=null?e.initial:"",this.input=String(this.initial),this.cursor=this.input.length,this.cursorShow()}append(e){return!/[-+.]/.test(e)||e==="."&&this.input.includes(".")?this.alert("invalid number"):super.append(e)}number(e){return super.append(e)}next(){return this.input&&this.input!==this.initial?this.alert():this.isValue(this.initial)?(this.input=this.initial,this.cursor=String(this.initial).length,this.render()):this.alert()}up(e){let r=e||this.minor,i=this.toNumber(this.input);return i>this.max+r?this.alert():(this.input=`${i+r}`,this.render())}down(e){let r=e||this.minor,i=this.toNumber(this.input);return ithis.isValue(r));return this.value=this.toNumber(e||0),super.submit()}};CZ.exports=mZ});var EZ=C((Mnt,IZ)=>{IZ.exports=Zx()});var wZ=C((Nnt,yZ)=>{"use strict";var qOe=GA(),BZ=class extends qOe{constructor(e){super(e);this.cursorShow()}format(e=this.input){return this.keypressed?(this.state.submitted?this.styles.primary:this.styles.muted)(this.symbols.asterisk.repeat(e.length)):""}};yZ.exports=BZ});var SZ=C((Ont,QZ)=>{"use strict";var JOe=Rn(),WOe=Ff(),bZ=qr(),DZ=class extends WOe{constructor(e={}){super(e);this.widths=[].concat(e.messageWidth||50),this.align=[].concat(e.align||"left"),this.linebreak=e.linebreak||!1,this.edgeLength=e.edgeLength||3,this.newline=e.newline||` +`)),this.write(this.margin[2]),this.restore()}};u_.exports=g_});var p_=C((Kot,h_)=>{"use strict";var cTe=Ea(),uTe=(t,e)=>{let r=t.toLowerCase();return i=>{let s=i.toLowerCase().indexOf(r),o=e(i.slice(s,s+r.length));return s>=0?i.slice(0,s)+o+i.slice(s+r.length):i}},f_=class extends cTe{constructor(e){super(e);this.cursorShow()}moveCursor(e){this.state.cursor+=e}dispatch(e){return this.append(e)}space(e){return this.options.multiple?super.space(e):this.append(e)}append(e){let{cursor:r,input:i}=this.state;return this.input=i.slice(0,r)+e+i.slice(r),this.moveCursor(1),this.complete()}delete(){let{cursor:e,input:r}=this.state;return r?(this.input=r.slice(0,e-1)+r.slice(e),this.moveCursor(-1),this.complete()):this.alert()}deleteForward(){let{cursor:e,input:r}=this.state;return r[e]===void 0?this.alert():(this.input=`${r}`.slice(0,e)+`${r}`.slice(e+1),this.complete())}number(e){return this.append(e)}async complete(){this.completing=!0,this.choices=await this.suggest(this.input,this.state._choices),this.state.limit=void 0,this.index=Math.min(Math.max(this.visible.length-1,0),this.index),await this.render(),this.completing=!1}suggest(e=this.input,r=this.state._choices){if(typeof this.options.suggest=="function")return this.options.suggest.call(this,e,r);let i=e.toLowerCase();return r.filter(n=>n.message.toLowerCase().includes(i))}pointer(){return""}format(){if(!this.focused)return this.input;if(this.options.multiple&&this.state.submitted)return this.selected.map(e=>this.styles.primary(e.message)).join(", ");if(this.state.submitted){let e=this.value=this.input=this.focused.value;return this.styles.primary(e)}return this.input}async render(){if(this.state.status!=="pending")return super.render();let e=this.options.highlight?this.options.highlight.bind(this):this.styles.placeholder,r=uTe(this.input,e),i=this.choices;this.choices=i.map(n=>V(k({},n),{message:r(n.message)})),await super.render(),this.choices=i}submit(){return this.options.multiple&&(this.value=this.selected.map(e=>e.name)),super.submit()}};h_.exports=f_});var nv=C((Tot,d_)=>{"use strict";var iv=$r();d_.exports=(t,e={})=>{t.cursorHide();let{input:r="",initial:i="",pos:n,showCursor:s=!0,color:o}=e,a=o||t.styles.placeholder,l=iv.inverse(t.styles.primary),c=m=>l(t.styles.black(m)),u=r,g=" ",h=c(g);if(t.blink&&t.blink.off===!0&&(c=m=>m,h=""),s&&n===0&&i===""&&r==="")return c(g);if(s&&n===0&&(r===i||r===""))return c(i[0])+a(i.slice(1));i=iv.isPrimitive(i)?`${i}`:"",r=iv.isPrimitive(r)?`${r}`:"";let f=i&&i.startsWith(r)&&i!==r,p=f?c(i[r.length]):h;if(n!==r.length&&s===!0&&(u=r.slice(0,n)+c(r[n])+r.slice(n+1),p=""),s===!1&&(p=""),f){let m=t.styles.unstyle(u+p);return u+p+a(i.slice(m.length))}return u+p}});var Zy=C((Uot,C_)=>{"use strict";var gTe=Gn(),hTe=Ea(),fTe=nv(),m_=class extends hTe{constructor(e){super(V(k({},e),{multiple:!0}));this.type="form",this.initial=this.options.initial,this.align=[this.options.align,"right"].find(r=>r!=null),this.emptyError="",this.values={}}async reset(e){return await super.reset(),e===!0&&(this._index=this.index),this.index=this._index,this.values={},this.choices.forEach(r=>r.reset&&r.reset()),this.render()}dispatch(e){return!!e&&this.append(e)}append(e){let r=this.focused;if(!r)return this.alert();let{cursor:i,input:n}=r;return r.value=r.input=n.slice(0,i)+e+n.slice(i),r.cursor++,this.render()}delete(){let e=this.focused;if(!e||e.cursor<=0)return this.alert();let{cursor:r,input:i}=e;return e.value=e.input=i.slice(0,r-1)+i.slice(r),e.cursor--,this.render()}deleteForward(){let e=this.focused;if(!e)return this.alert();let{cursor:r,input:i}=e;if(i[r]===void 0)return this.alert();let n=`${i}`.slice(0,r)+`${i}`.slice(r+1);return e.value=e.input=n,this.render()}right(){let e=this.focused;return e?e.cursor>=e.input.length?this.alert():(e.cursor++,this.render()):this.alert()}left(){let e=this.focused;return e?e.cursor<=0?this.alert():(e.cursor--,this.render()):this.alert()}space(e,r){return this.dispatch(e,r)}number(e,r){return this.dispatch(e,r)}next(){let e=this.focused;if(!e)return this.alert();let{initial:r,input:i}=e;return r&&r.startsWith(i)&&i!==r?(e.value=e.input=r,e.cursor=e.value.length,this.render()):super.next()}prev(){let e=this.focused;return e?e.cursor===0?super.prev():(e.value=e.input="",e.cursor=0,this.render()):this.alert()}separator(){return""}format(e){return this.state.submitted?"":super.format(e)}pointer(){return""}indicator(e){return e.input?"\u29BF":"\u2299"}async choiceSeparator(e,r){let i=await this.resolve(e.separator,this.state,e,r)||":";return i?" "+this.styles.disabled(i):""}async renderChoice(e,r){await this.onChoice(e,r);let{state:i,styles:n}=this,{cursor:s,initial:o="",name:a,hint:l,input:c=""}=e,{muted:u,submitted:g,primary:h,danger:f}=n,p=l,m=this.index===r,I=e.validate||(()=>!0),y=await this.choiceSeparator(e,r),w=e.message;this.align==="right"&&(w=w.padStart(this.longest+1," ")),this.align==="left"&&(w=w.padEnd(this.longest+1," "));let x=this.values[a]=c||o,F=c?"success":"dark";await I.call(e,x,this.state)!==!0&&(F="danger");let K=n[F](await this.indicator(e,r))+(e.pad||""),v=this.indent(e),J=()=>[v,K,w+y,c,p].filter(Boolean).join(" ");if(i.submitted)return w=gTe.unstyle(w),c=g(c),p="",J();if(e.format)c=await e.format.call(this,c,e,r);else{let oe=this.styles.muted;c=fTe(this,{input:c,initial:o,pos:s,showCursor:m,color:oe})}return this.isValue(c)||(c=this.styles.muted(this.symbols.ellipsis)),e.result&&(this.values[a]=await e.result.call(this,x,e,r)),m&&(w=h(w)),e.error?c+=(c?" ":"")+f(e.error.trim()):e.hint&&(c+=(c?" ":"")+u(e.hint.trim())),J()}async submit(){return this.value=this.values,super.base.submit.call(this)}};C_.exports=m_});var sv=C((Hot,I_)=>{"use strict";var pTe=Zy(),dTe=()=>{throw new Error("expected prompt to have a custom authenticate method")},E_=(t=dTe)=>{class e extends pTe{constructor(i){super(i)}async submit(){this.value=await t.call(this,this.values,this.state),super.base.submit.call(this)}static create(i){return E_(i)}}return e};I_.exports=E_()});var w_=C((Yot,y_)=>{"use strict";var CTe=sv();function mTe(t,e){return t.username===this.options.username&&t.password===this.options.password}var B_=(t=mTe)=>{let e=[{name:"username",message:"username"},{name:"password",message:"password",format(i){return this.options.showPassword?i:(this.state.submitted?this.styles.primary:this.styles.muted)(this.symbols.asterisk.repeat(i.length))}}];class r extends CTe.create(t){constructor(n){super(V(k({},n),{choices:e}))}static create(n){return B_(n)}}return r};y_.exports=B_()});var _y=C((Got,Q_)=>{"use strict";var ITe=Su(),{isPrimitive:ETe,hasColor:yTe}=$r(),b_=class extends ITe{constructor(e){super(e);this.cursorHide()}async initialize(){let e=await this.resolve(this.initial,this.state);this.input=await this.cast(e),await super.initialize()}dispatch(e){return this.isValue(e)?(this.input=e,this.submit()):this.alert()}format(e){let{styles:r,state:i}=this;return i.submitted?r.success(e):r.primary(e)}cast(e){return this.isTrue(e)}isTrue(e){return/^[ty1]/i.test(e)}isFalse(e){return/^[fn0]/i.test(e)}isValue(e){return ETe(e)&&(this.isTrue(e)||this.isFalse(e))}async hint(){if(this.state.status==="pending"){let e=await this.element("hint");return yTe(e)?e:this.styles.muted(e)}}async render(){let{input:e,size:r}=this.state,i=await this.prefix(),n=await this.separator(),s=await this.message(),o=this.styles.muted(this.default),a=[i,s,o,n].filter(Boolean).join(" ");this.state.prompt=a;let l=await this.header(),c=this.value=this.cast(e),u=await this.format(c),g=await this.error()||await this.hint(),h=await this.footer();g&&!a.includes(g)&&(u+=" "+g),a+=" "+u,this.clear(r),this.write([l,a,h].filter(Boolean).join(` +`)),this.restore()}set value(e){super.value=e}get value(){return this.cast(super.value)}};Q_.exports=b_});var x_=C((jot,D_)=>{"use strict";var BTe=_y(),S_=class extends BTe{constructor(e){super(e);this.default=this.options.default||(this.initial?"(Y/n)":"(y/N)")}};D_.exports=S_});var v_=C((qot,P_)=>{"use strict";var wTe=Ea(),QTe=Zy(),xu=QTe.prototype,k_=class extends wTe{constructor(e){super(V(k({},e),{multiple:!0}));this.align=[this.options.align,"left"].find(r=>r!=null),this.emptyError="",this.values={}}dispatch(e,r){let i=this.focused,n=i.parent||{};return!i.editable&&!n.editable&&(e==="a"||e==="i")?super[e]():xu.dispatch.call(this,e,r)}append(e,r){return xu.append.call(this,e,r)}delete(e,r){return xu.delete.call(this,e,r)}space(e){return this.focused.editable?this.append(e):super.space()}number(e){return this.focused.editable?this.append(e):super.number(e)}next(){return this.focused.editable?xu.next.call(this):super.next()}prev(){return this.focused.editable?xu.prev.call(this):super.prev()}async indicator(e,r){let i=e.indicator||"",n=e.editable?i:super.indicator(e,r);return await this.resolve(n,this.state,e,r)||""}indent(e){return e.role==="heading"?"":e.editable?" ":" "}async renderChoice(e,r){return e.indent="",e.editable?xu.renderChoice.call(this,e,r):super.renderChoice(e,r)}error(){return""}footer(){return this.state.error}async validate(){let e=!0;for(let r of this.choices){if(typeof r.validate!="function"||r.role==="heading")continue;let i=r.parent?this.value[r.parent.name]:this.value;if(r.editable?i=r.value===r.name?r.initial||"":r.value:this.isDisabled(r)||(i=r.enabled===!0),e=await r.validate(i,this.state),e!==!0)break}return e!==!0&&(this.state.error=typeof e=="string"?e:"Invalid Input"),e}submit(){if(this.focused.newChoice===!0)return super.submit();if(this.choices.some(e=>e.newChoice))return this.alert();this.value={};for(let e of this.choices){let r=e.parent?this.value[e.parent.name]:this.value;if(e.role==="heading"){this.value[e.name]={};continue}e.editable?r[e.name]=e.value===e.name?e.initial||"":e.value:this.isDisabled(e)||(r[e.name]=e.enabled===!0)}return this.base.submit.call(this)}};P_.exports=k_});var cl=C((Jot,F_)=>{"use strict";var bTe=Su(),DTe=nv(),{isPrimitive:STe}=$r(),R_=class extends bTe{constructor(e){super(e);this.initial=STe(this.initial)?String(this.initial):"",this.initial&&this.cursorHide(),this.state.prevCursor=0,this.state.clipboard=[]}async keypress(e,r={}){let i=this.state.prevKeypress;return this.state.prevKeypress=r,this.options.multiline===!0&&r.name==="return"&&(!i||i.name!=="return")?this.append(` +`,r):super.keypress(e,r)}moveCursor(e){this.cursor+=e}reset(){return this.input=this.value="",this.cursor=0,this.render()}dispatch(e,r){if(!e||r.ctrl||r.code)return this.alert();this.append(e)}append(e){let{cursor:r,input:i}=this.state;this.input=`${i}`.slice(0,r)+e+`${i}`.slice(r),this.moveCursor(String(e).length),this.render()}insert(e){this.append(e)}delete(){let{cursor:e,input:r}=this.state;if(e<=0)return this.alert();this.input=`${r}`.slice(0,e-1)+`${r}`.slice(e),this.moveCursor(-1),this.render()}deleteForward(){let{cursor:e,input:r}=this.state;if(r[e]===void 0)return this.alert();this.input=`${r}`.slice(0,e)+`${r}`.slice(e+1),this.render()}cutForward(){let e=this.cursor;if(this.input.length<=e)return this.alert();this.state.clipboard.push(this.input.slice(e)),this.input=this.input.slice(0,e),this.render()}cutLeft(){let e=this.cursor;if(e===0)return this.alert();let r=this.input.slice(0,e),i=this.input.slice(e),n=r.split(" ");this.state.clipboard.push(n.pop()),this.input=n.join(" "),this.cursor=this.input.length,this.input+=i,this.render()}paste(){if(!this.state.clipboard.length)return this.alert();this.insert(this.state.clipboard.pop()),this.render()}toggleCursor(){this.state.prevCursor?(this.cursor=this.state.prevCursor,this.state.prevCursor=0):(this.state.prevCursor=this.cursor,this.cursor=0),this.render()}first(){this.cursor=0,this.render()}last(){this.cursor=this.input.length-1,this.render()}next(){let e=this.initial!=null?String(this.initial):"";if(!e||!e.startsWith(this.input))return this.alert();this.input=this.initial,this.cursor=this.initial.length,this.render()}prev(){if(!this.input)return this.alert();this.reset()}backward(){return this.left()}forward(){return this.right()}right(){return this.cursor>=this.input.length?this.alert():(this.moveCursor(1),this.render())}left(){return this.cursor<=0?this.alert():(this.moveCursor(-1),this.render())}isValue(e){return!!e}async format(e=this.value){let r=await this.resolve(this.initial,this.state);return this.state.submitted?this.styles.submitted(e||r):DTe(this,{input:e,initial:r,pos:this.cursor})}async render(){let e=this.state.size,r=await this.prefix(),i=await this.separator(),n=await this.message(),s=[r,n,i].filter(Boolean).join(" ");this.state.prompt=s;let o=await this.header(),a=await this.format(),l=await this.error()||await this.hint(),c=await this.footer();l&&!a.includes(l)&&(a+=" "+l),s+=" "+a,this.clear(e),this.write([o,s,c].filter(Boolean).join(` +`)),this.restore()}};F_.exports=R_});var N_=C((Wot,L_)=>{"use strict";var xTe=t=>t.filter((e,r)=>t.lastIndexOf(e)===r),$y=t=>xTe(t).filter(Boolean);L_.exports=(t,e={},r="")=>{let{past:i=[],present:n=""}=e,s,o;switch(t){case"prev":case"undo":return s=i.slice(0,i.length-1),o=i[i.length-1]||"",{past:$y([r,...s]),present:o};case"next":case"redo":return s=i.slice(1),o=i[0]||"",{past:$y([...s,r]),present:o};case"save":return{past:$y([...i,r]),present:""};case"remove":return o=$y(i.filter(a=>a!==r)),n="",o.length&&(n=o.pop()),{past:o,present:n};default:throw new Error(`Invalid action: "${t}"`)}}});var ov=C((zot,M_)=>{"use strict";var PTe=cl(),O_=N_(),K_=class extends PTe{constructor(e){super(e);let r=this.options.history;if(r&&r.store){let i=r.values||this.initial;this.autosave=!!r.autosave,this.store=r.store,this.data=this.store.get("values")||{past:[],present:i},this.initial=this.data.present||this.data.past[this.data.past.length-1]}}completion(e){return this.store?(this.data=O_(e,this.data,this.input),this.data.present?(this.input=this.data.present,this.cursor=this.input.length,this.render()):this.alert()):this.alert()}altUp(){return this.completion("prev")}altDown(){return this.completion("next")}prev(){return this.save(),super.prev()}save(){!this.store||(this.data=O_("save",this.data,this.input),this.store.set("values",this.data))}submit(){return this.store&&this.autosave===!0&&this.save(),super.submit()}};M_.exports=K_});var H_=C((Vot,T_)=>{"use strict";var kTe=cl(),U_=class extends kTe{format(){return""}};T_.exports=U_});var j_=C((Xot,Y_)=>{"use strict";var vTe=cl(),G_=class extends vTe{constructor(e={}){super(e);this.sep=this.options.separator||/, */,this.initial=e.initial||""}split(e=this.value){return e?String(e).split(this.sep):[]}format(){let e=this.state.submitted?this.styles.primary:r=>r;return this.list.map(e).join(", ")}async submit(e){let r=this.state.error||await this.validate(this.list,this.state);return r!==!0?(this.state.error=r,super.submit()):(this.value=this.list,super.submit())}get list(){return this.split()}};Y_.exports=G_});var W_=C((Zot,q_)=>{"use strict";var FTe=Ea(),J_=class extends FTe{constructor(e){super(V(k({},e),{multiple:!0}))}};q_.exports=J_});var av=C((_ot,z_)=>{"use strict";var RTe=cl(),V_=class extends RTe{constructor(e={}){super(k({style:"number"},e));this.min=this.isValue(e.min)?this.toNumber(e.min):-Infinity,this.max=this.isValue(e.max)?this.toNumber(e.max):Infinity,this.delay=e.delay!=null?e.delay:1e3,this.float=e.float!==!1,this.round=e.round===!0||e.float===!1,this.major=e.major||10,this.minor=e.minor||1,this.initial=e.initial!=null?e.initial:"",this.input=String(this.initial),this.cursor=this.input.length,this.cursorShow()}append(e){return!/[-+.]/.test(e)||e==="."&&this.input.includes(".")?this.alert("invalid number"):super.append(e)}number(e){return super.append(e)}next(){return this.input&&this.input!==this.initial?this.alert():this.isValue(this.initial)?(this.input=this.initial,this.cursor=String(this.initial).length,this.render()):this.alert()}up(e){let r=e||this.minor,i=this.toNumber(this.input);return i>this.max+r?this.alert():(this.input=`${i+r}`,this.render())}down(e){let r=e||this.minor,i=this.toNumber(this.input);return ithis.isValue(r));return this.value=this.toNumber(e||0),super.submit()}};z_.exports=V_});var Z_=C(($ot,X_)=>{X_.exports=av()});var e$=C((eat,__)=>{"use strict";var LTe=cl(),$_=class extends LTe{constructor(e){super(e);this.cursorShow()}format(e=this.input){return this.keypressed?(this.state.submitted?this.styles.primary:this.styles.muted)(this.symbols.asterisk.repeat(e.length)):""}};__.exports=$_});var n$=C((tat,t$)=>{"use strict";var NTe=Gn(),MTe=fp(),r$=$r(),i$=class extends MTe{constructor(e={}){super(e);this.widths=[].concat(e.messageWidth||50),this.align=[].concat(e.align||"left"),this.linebreak=e.linebreak||!1,this.edgeLength=e.edgeLength||3,this.newline=e.newline||` `;let r=e.startNumber||1;typeof this.scale=="number"&&(this.scaleKey=!1,this.scale=Array(this.scale).fill(0).map((i,n)=>({name:n+r})))}async reset(){return this.tableized=!1,await super.reset(),this.render()}tableize(){if(this.tableized===!0)return;this.tableized=!0;let e=0;for(let r of this.choices){e=Math.max(e,r.message.length),r.scaleIndex=r.initial||2,r.scale=[];for(let i=0;i=this.scale.length-1?this.alert():(e.scaleIndex++,this.render())}left(){let e=this.focused;return e.scaleIndex<=0?this.alert():(e.scaleIndex--,this.render())}indent(){return""}format(){return this.state.submitted?this.choices.map(r=>this.styles.info(r.index)).join(", "):""}pointer(){return""}renderScaleKey(){if(this.scaleKey===!1||this.state.submitted)return"";let e=this.scale.map(i=>` ${i.name} - ${i.message}`);return["",...e].map(i=>this.styles.muted(i)).join(` -`)}renderScaleHeading(e){let r=this.scale.map(l=>l.name);typeof this.options.renderScaleHeading=="function"&&(r=this.options.renderScaleHeading.call(this,e));let i=this.scaleLength-r.join("").length,n=Math.round(i/(r.length-1)),o=r.map(l=>this.styles.strong(l)).join(" ".repeat(n)),a=" ".repeat(this.widths[0]);return this.margin[3]+a+this.margin[1]+o}scaleIndicator(e,r,i){if(typeof this.options.scaleIndicator=="function")return this.options.scaleIndicator.call(this,e,r,i);let n=e.scaleIndex===r.index;return r.disabled?this.styles.hint(this.symbols.radio.disabled):n?this.styles.success(this.symbols.radio.on):this.symbols.radio.off}renderScale(e,r){let i=e.scale.map(s=>this.scaleIndicator(e,s,r)),n=this.term==="Hyper"?"":" ";return i.join(n+this.symbols.line.repeat(this.edgeLength))}async renderChoice(e,r){await this.onChoice(e,r);let i=this.index===r,n=await this.pointer(e,r),s=await e.hint;s&&!bZ.hasColor(s)&&(s=this.styles.muted(s));let o=p=>this.margin[3]+p.replace(/\s+$/,"").padEnd(this.widths[0]," "),a=this.newline,l=this.indent(e),c=await this.resolve(e.message,this.state,e,r),u=await this.renderScale(e,r),g=this.margin[1]+this.margin[3];this.scaleLength=JOe.unstyle(u).length,this.widths[0]=Math.min(this.widths[0],this.width-this.scaleLength-g.length);let f=bZ.wordWrap(c,{width:this.widths[0],newline:a}).split(` +`)}renderScaleHeading(e){let r=this.scale.map(l=>l.name);typeof this.options.renderScaleHeading=="function"&&(r=this.options.renderScaleHeading.call(this,e));let i=this.scaleLength-r.join("").length,n=Math.round(i/(r.length-1)),o=r.map(l=>this.styles.strong(l)).join(" ".repeat(n)),a=" ".repeat(this.widths[0]);return this.margin[3]+a+this.margin[1]+o}scaleIndicator(e,r,i){if(typeof this.options.scaleIndicator=="function")return this.options.scaleIndicator.call(this,e,r,i);let n=e.scaleIndex===r.index;return r.disabled?this.styles.hint(this.symbols.radio.disabled):n?this.styles.success(this.symbols.radio.on):this.symbols.radio.off}renderScale(e,r){let i=e.scale.map(s=>this.scaleIndicator(e,s,r)),n=this.term==="Hyper"?"":" ";return i.join(n+this.symbols.line.repeat(this.edgeLength))}async renderChoice(e,r){await this.onChoice(e,r);let i=this.index===r,n=await this.pointer(e,r),s=await e.hint;s&&!r$.hasColor(s)&&(s=this.styles.muted(s));let o=p=>this.margin[3]+p.replace(/\s+$/,"").padEnd(this.widths[0]," "),a=this.newline,l=this.indent(e),c=await this.resolve(e.message,this.state,e,r),u=await this.renderScale(e,r),g=this.margin[1]+this.margin[3];this.scaleLength=NTe.unstyle(u).length,this.widths[0]=Math.min(this.widths[0],this.width-this.scaleLength-g.length);let f=r$.wordWrap(c,{width:this.widths[0],newline:a}).split(` `).map(p=>o(p)+this.margin[1]);return i&&(u=this.styles.info(u),f=f.map(p=>this.styles.info(p))),f[0]+=u,this.linebreak&&f.push(""),[l+n,f.join(` `)].filter(Boolean)}async renderChoices(){if(this.state.submitted)return"";this.tableize();let e=this.visible.map(async(n,s)=>await this.renderChoice(n,s)),r=await Promise.all(e),i=await this.renderScaleHeading();return this.margin[0]+[i,...r.map(n=>n.join(" "))].join(` `)}async render(){let{submitted:e,size:r}=this.state,i=await this.prefix(),n=await this.separator(),s=await this.message(),o="";this.options.promptLine!==!1&&(o=[i,s,n,""].join(" "),this.state.prompt=o);let a=await this.header(),l=await this.format(),c=await this.renderScaleKey(),u=await this.error()||await this.hint(),g=await this.renderChoices(),h=await this.footer(),f=this.emptyError;l&&(o+=l),u&&!o.includes(u)&&(o+=" "+u),e&&!l&&!g.trim()&&this.multiple&&f!=null&&(o+=this.styles.danger(f)),this.clear(r),this.write([a,o,c,g,h].filter(Boolean).join(` -`)),this.state.submitted||this.write(this.margin[2]),this.restore()}submit(){this.value={};for(let e of this.choices)this.value[e.name]=e.scaleIndex;return this.base.submit.call(this)}};QZ.exports=DZ});var vZ=C((Tnt,PZ)=>{"use strict";var xZ=Rn(),zOe=(t="")=>typeof t=="string"?t.replace(/^['"]|['"]$/g,""):"",kZ=class{constructor(e){this.name=e.key,this.field=e.field||{},this.value=zOe(e.initial||this.field.initial||""),this.message=e.message||this.name,this.cursor=0,this.input="",this.lines=[]}},XOe=async(t={},e={},r=i=>i)=>{let i=new Set,n=t.fields||[],s=t.template,o=[],a=[],l=[],c=1;typeof s=="function"&&(s=await s());let u=-1,g=()=>s[++u],h=()=>s[u+1],f=p=>{p.line=c,o.push(p)};for(f({type:"bos",value:""});uk.name===y.key);y.field=n.find(k=>k.name===y.key),P||(P=new kZ(y),a.push(P)),P.lines.push(y.line-1);continue}let m=o[o.length-1];m.type==="text"&&m.line===c?m.value+=p:f({type:"text",value:p})}return f({type:"eos",value:""}),{input:s,tabstops:o,unique:i,keys:l,items:a}};PZ.exports=async t=>{let e=t.options,r=new Set(e.required===!0?[]:e.required||[]),i={...e.values,...e.initial},{tabstops:n,items:s,keys:o}=await XOe(e,i),a=_x("result",t,e),l=_x("format",t,e),c=_x("validate",t,e,!0),u=t.isValue.bind(t);return async(g={},h=!1)=>{let f=0;g.required=r,g.items=s,g.keys=o,g.output="";let p=async(B,P,k,N)=>{let O=await c(B,P,k,N);return O===!1?"Invalid field "+k.name:O};for(let B of n){let P=B.value,k=B.key;if(B.type!=="template"){P&&(g.output+=P);continue}if(B.type==="template"){let N=s.find(F=>F.name===k);e.required===!0&&g.required.add(N.name);let O=[N.input,g.values[N.value],N.value,P].find(u),U=(N.field||{}).message||B.inner;if(h){let F=await p(g.values[k],g,N,f);if(F&&typeof F=="string"||F===!1){g.invalid.set(k,F);continue}g.invalid.delete(k);let A=await a(g.values[k],g,N,f);g.output+=xZ.unstyle(A);continue}N.placeholder=!1;let re=P;P=await l(P,g,N,f),O!==P?(g.values[k]=O,P=t.styles.typing(O),g.missing.delete(U)):(g.values[k]=void 0,O=`<${U}>`,P=t.styles.primary(O),N.placeholder=!0,g.required.has(k)&&g.missing.add(U)),g.missing.has(U)&&g.validating&&(P=t.styles.warning(O)),g.invalid.has(k)&&g.validating&&(P=t.styles.danger(O)),f===g.index&&(re!==P?P=t.styles.underline(P):P=t.styles.heading(xZ.unstyle(P))),f++}P&&(g.output+=P)}let m=g.output.split(` -`).map(B=>" "+B),I=s.length,y=0;for(let B of s)g.invalid.has(B.name)&&B.lines.forEach(P=>{m[P][0]===" "&&(m[P]=g.styles.danger(g.symbols.bullet)+m[P].slice(1))}),t.isValue(g.values[B.name])&&y++;return g.completed=(y/I*100).toFixed(0),g.output=m.join(` -`),g.output}};function _x(t,e,r,i){return(n,s,o,a)=>typeof o.field[t]=="function"?o.field[t].call(e,n,s,o,a):[i,n].find(l=>e.isValue(l))}});var LZ=C((Knt,FZ)=>{"use strict";var VOe=Rn(),ZOe=vZ(),_Oe=Zc(),RZ=class extends _Oe{constructor(e){super(e);this.cursorHide(),this.reset(!0)}async initialize(){this.interpolate=await ZOe(this),await super.initialize()}async reset(e){this.state.keys=[],this.state.invalid=new Map,this.state.missing=new Set,this.state.completed=0,this.state.values={},e!==!0&&(await this.initialize(),await this.render())}moveCursor(e){let r=this.getItem();this.cursor+=e,r.cursor+=e}dispatch(e,r){if(!r.code&&!r.ctrl&&e!=null&&this.getItem()){this.append(e,r);return}this.alert()}append(e,r){let i=this.getItem(),n=i.input.slice(0,this.cursor),s=i.input.slice(this.cursor);this.input=i.input=`${n}${e}${s}`,this.moveCursor(1),this.render()}delete(){let e=this.getItem();if(this.cursor<=0||!e.input)return this.alert();let r=e.input.slice(this.cursor),i=e.input.slice(0,this.cursor-1);this.input=e.input=`${i}${r}`,this.moveCursor(-1),this.render()}increment(e){return e>=this.state.keys.length-1?0:e+1}decrement(e){return e<=0?this.state.keys.length-1:e-1}first(){this.state.index=0,this.render()}last(){this.state.index=this.state.keys.length-1,this.render()}right(){if(this.cursor>=this.input.length)return this.alert();this.moveCursor(1),this.render()}left(){if(this.cursor<=0)return this.alert();this.moveCursor(-1),this.render()}prev(){this.state.index=this.decrement(this.state.index),this.getItem(),this.render()}next(){this.state.index=this.increment(this.state.index),this.getItem(),this.render()}up(){this.prev()}down(){this.next()}format(e){let r=this.state.completed<100?this.styles.warning:this.styles.success;return this.state.submitted===!0&&this.state.completed!==100&&(r=this.styles.danger),r(`${this.state.completed}% completed`)}async render(){let{index:e,keys:r=[],submitted:i,size:n}=this.state,s=[this.options.newline,` -`].find(B=>B!=null),o=await this.prefix(),a=await this.separator(),l=await this.message(),c=[o,l,a].filter(Boolean).join(" ");this.state.prompt=c;let u=await this.header(),g=await this.error()||"",h=await this.hint()||"",f=i?"":await this.interpolate(this.state),p=this.state.key=r[e]||"",m=await this.format(p),I=await this.footer();m&&(c+=" "+m),h&&!m&&this.state.completed===0&&(c+=" "+h),this.clear(n);let y=[u,c,f,I,g.trim()];this.write(y.filter(Boolean).join(s)),this.restore()}getItem(e){let{items:r,keys:i,index:n}=this.state,s=r.find(o=>o.name===i[n]);return s&&s.input!=null&&(this.input=s.input,this.cursor=s.cursor),s}async submit(){typeof this.interpolate!="function"&&await this.initialize(),await this.interpolate(this.state,!0);let{invalid:e,missing:r,output:i,values:n}=this.state;if(e.size){let a="";for(let[l,c]of e)a+=`Invalid ${l}: ${c} -`;return this.state.error=a,super.submit()}if(r.size)return this.state.error="Required: "+[...r.keys()].join(", "),super.submit();let o=VOe.unstyle(i).split(` +`)),this.state.submitted||this.write(this.margin[2]),this.restore()}submit(){this.value={};for(let e of this.choices)this.value[e.name]=e.scaleIndex;return this.base.submit.call(this)}};t$.exports=i$});var A$=C((rat,s$)=>{"use strict";var o$=Gn(),OTe=(t="")=>typeof t=="string"?t.replace(/^['"]|['"]$/g,""):"",a$=class{constructor(e){this.name=e.key,this.field=e.field||{},this.value=OTe(e.initial||this.field.initial||""),this.message=e.message||this.name,this.cursor=0,this.input="",this.lines=[]}},KTe=async(t={},e={},r=i=>i)=>{let i=new Set,n=t.fields||[],s=t.template,o=[],a=[],l=[],c=1;typeof s=="function"&&(s=await s());let u=-1,g=()=>s[++u],h=()=>s[u+1],f=p=>{p.line=c,o.push(p)};for(f({type:"bos",value:""});uF.name===y.key);y.field=n.find(F=>F.name===y.key),x||(x=new a$(y),a.push(x)),x.lines.push(y.line-1);continue}let m=o[o.length-1];m.type==="text"&&m.line===c?m.value+=p:f({type:"text",value:p})}return f({type:"eos",value:""}),{input:s,tabstops:o,unique:i,keys:l,items:a}};s$.exports=async t=>{let e=t.options,r=new Set(e.required===!0?[]:e.required||[]),i=k(k({},e.values),e.initial),{tabstops:n,items:s,keys:o}=await KTe(e,i),a=Av("result",t,e),l=Av("format",t,e),c=Av("validate",t,e,!0),u=t.isValue.bind(t);return async(g={},h=!1)=>{let f=0;g.required=r,g.items=s,g.keys=o,g.output="";let p=async(w,x,F,N)=>{let K=await c(w,x,F,N);return K===!1?"Invalid field "+F.name:K};for(let w of n){let x=w.value,F=w.key;if(w.type!=="template"){x&&(g.output+=x);continue}if(w.type==="template"){let N=s.find(T=>T.name===F);e.required===!0&&g.required.add(N.name);let K=[N.input,g.values[N.value],N.value,x].find(u),J=(N.field||{}).message||w.inner;if(h){let T=await p(g.values[F],g,N,f);if(T&&typeof T=="string"||T===!1){g.invalid.set(F,T);continue}g.invalid.delete(F);let A=await a(g.values[F],g,N,f);g.output+=o$.unstyle(A);continue}N.placeholder=!1;let oe=x;x=await l(x,g,N,f),K!==x?(g.values[F]=K,x=t.styles.typing(K),g.missing.delete(J)):(g.values[F]=void 0,K=`<${J}>`,x=t.styles.primary(K),N.placeholder=!0,g.required.has(F)&&g.missing.add(J)),g.missing.has(J)&&g.validating&&(x=t.styles.warning(K)),g.invalid.has(F)&&g.validating&&(x=t.styles.danger(K)),f===g.index&&(oe!==x?x=t.styles.underline(x):x=t.styles.heading(o$.unstyle(x))),f++}x&&(g.output+=x)}let m=g.output.split(` +`).map(w=>" "+w),I=s.length,y=0;for(let w of s)g.invalid.has(w.name)&&w.lines.forEach(x=>{m[x][0]===" "&&(m[x]=g.styles.danger(g.symbols.bullet)+m[x].slice(1))}),t.isValue(g.values[w.name])&&y++;return g.completed=(y/I*100).toFixed(0),g.output=m.join(` +`),g.output}};function Av(t,e,r,i){return(n,s,o,a)=>typeof o.field[t]=="function"?o.field[t].call(e,n,s,o,a):[i,n].find(l=>e.isValue(l))}});var u$=C((iat,l$)=>{"use strict";var TTe=Gn(),UTe=A$(),HTe=Su(),c$=class extends HTe{constructor(e){super(e);this.cursorHide(),this.reset(!0)}async initialize(){this.interpolate=await UTe(this),await super.initialize()}async reset(e){this.state.keys=[],this.state.invalid=new Map,this.state.missing=new Set,this.state.completed=0,this.state.values={},e!==!0&&(await this.initialize(),await this.render())}moveCursor(e){let r=this.getItem();this.cursor+=e,r.cursor+=e}dispatch(e,r){if(!r.code&&!r.ctrl&&e!=null&&this.getItem()){this.append(e,r);return}this.alert()}append(e,r){let i=this.getItem(),n=i.input.slice(0,this.cursor),s=i.input.slice(this.cursor);this.input=i.input=`${n}${e}${s}`,this.moveCursor(1),this.render()}delete(){let e=this.getItem();if(this.cursor<=0||!e.input)return this.alert();let r=e.input.slice(this.cursor),i=e.input.slice(0,this.cursor-1);this.input=e.input=`${i}${r}`,this.moveCursor(-1),this.render()}increment(e){return e>=this.state.keys.length-1?0:e+1}decrement(e){return e<=0?this.state.keys.length-1:e-1}first(){this.state.index=0,this.render()}last(){this.state.index=this.state.keys.length-1,this.render()}right(){if(this.cursor>=this.input.length)return this.alert();this.moveCursor(1),this.render()}left(){if(this.cursor<=0)return this.alert();this.moveCursor(-1),this.render()}prev(){this.state.index=this.decrement(this.state.index),this.getItem(),this.render()}next(){this.state.index=this.increment(this.state.index),this.getItem(),this.render()}up(){this.prev()}down(){this.next()}format(e){let r=this.state.completed<100?this.styles.warning:this.styles.success;return this.state.submitted===!0&&this.state.completed!==100&&(r=this.styles.danger),r(`${this.state.completed}% completed`)}async render(){let{index:e,keys:r=[],submitted:i,size:n}=this.state,s=[this.options.newline,` +`].find(w=>w!=null),o=await this.prefix(),a=await this.separator(),l=await this.message(),c=[o,l,a].filter(Boolean).join(" ");this.state.prompt=c;let u=await this.header(),g=await this.error()||"",h=await this.hint()||"",f=i?"":await this.interpolate(this.state),p=this.state.key=r[e]||"",m=await this.format(p),I=await this.footer();m&&(c+=" "+m),h&&!m&&this.state.completed===0&&(c+=" "+h),this.clear(n);let y=[u,c,f,I,g.trim()];this.write(y.filter(Boolean).join(s)),this.restore()}getItem(e){let{items:r,keys:i,index:n}=this.state,s=r.find(o=>o.name===i[n]);return s&&s.input!=null&&(this.input=s.input,this.cursor=s.cursor),s}async submit(){typeof this.interpolate!="function"&&await this.initialize(),await this.interpolate(this.state,!0);let{invalid:e,missing:r,output:i,values:n}=this.state;if(e.size){let a="";for(let[l,c]of e)a+=`Invalid ${l}: ${c} +`;return this.state.error=a,super.submit()}if(r.size)return this.state.error="Required: "+[...r.keys()].join(", "),super.submit();let o=TTe.unstyle(i).split(` `).map(a=>a.slice(1)).join(` -`);return this.value={values:n,result:o},super.submit()}};FZ.exports=RZ});var OZ=C((Unt,MZ)=>{"use strict";var $Oe="(Use + to sort)",eTe=ta(),NZ=class extends eTe{constructor(e){super({...e,reorder:!1,sort:!0,multiple:!0});this.state.hint=[this.options.hint,$Oe].find(this.isValue.bind(this))}indicator(){return""}async renderChoice(e,r){let i=await super.renderChoice(e,r),n=this.symbols.identicalTo+" ",s=this.index===r&&this.sorting?this.styles.muted(n):" ";return this.options.drag===!1&&(s=""),this.options.numbered===!0?s+`${r+1} - `+i:s+i}get selected(){return this.choices}submit(){return this.value=this.choices.map(e=>e.value),super.submit()}};MZ.exports=NZ});var UZ=C((Hnt,TZ)=>{"use strict";var tTe=Ff(),KZ=class extends tTe{constructor(e={}){super(e);if(this.emptyError=e.emptyError||"No items were selected",this.term=process.env.TERM_PROGRAM,!this.options.header){let r=["","4 - Strongly Agree","3 - Agree","2 - Neutral","1 - Disagree","0 - Strongly Disagree",""];r=r.map(i=>this.styles.muted(i)),this.state.header=r.join(` - `)}}async toChoices(...e){if(this.createdScales)return!1;this.createdScales=!0;let r=await super.toChoices(...e);for(let i of r)i.scale=rTe(5,this.options),i.scaleIdx=2;return r}dispatch(){this.alert()}space(){let e=this.focused,r=e.scale[e.scaleIdx],i=r.selected;return e.scale.forEach(n=>n.selected=!1),r.selected=!i,this.render()}indicator(){return""}pointer(){return""}separator(){return this.styles.muted(this.symbols.ellipsis)}right(){let e=this.focused;return e.scaleIdx>=e.scale.length-1?this.alert():(e.scaleIdx++,this.render())}left(){let e=this.focused;return e.scaleIdx<=0?this.alert():(e.scaleIdx--,this.render())}indent(){return" "}async renderChoice(e,r){await this.onChoice(e,r);let i=this.index===r,n=this.term==="Hyper",s=n?9:8,o=n?"":" ",a=this.symbols.line.repeat(s),l=" ".repeat(s+(n?0:1)),c=P=>(P?this.styles.success("\u25C9"):"\u25EF")+o,u=r+1+".",g=i?this.styles.heading:this.styles.noop,h=await this.resolve(e.message,this.state,e,r),f=this.indent(e),p=f+e.scale.map((P,k)=>c(k===e.scaleIdx)).join(a),m=P=>P===e.scaleIdx?g(P):P,I=f+e.scale.map((P,k)=>m(k)).join(l),y=()=>[u,h].filter(Boolean).join(" "),B=()=>[y(),p,I," "].filter(Boolean).join(` -`);return i&&(p=this.styles.cyan(p),I=this.styles.cyan(I)),B()}async renderChoices(){if(this.state.submitted)return"";let e=this.visible.map(async(i,n)=>await this.renderChoice(i,n)),r=await Promise.all(e);return r.length||r.push(this.styles.danger("No matching choices")),r.join(` +`);return this.value={values:n,result:o},super.submit()}};l$.exports=c$});var f$=C((nat,g$)=>{"use strict";var YTe="(Use + to sort)",GTe=Ea(),h$=class extends GTe{constructor(e){super(V(k({},e),{reorder:!1,sort:!0,multiple:!0}));this.state.hint=[this.options.hint,YTe].find(this.isValue.bind(this))}indicator(){return""}async renderChoice(e,r){let i=await super.renderChoice(e,r),n=this.symbols.identicalTo+" ",s=this.index===r&&this.sorting?this.styles.muted(n):" ";return this.options.drag===!1&&(s=""),this.options.numbered===!0?s+`${r+1} - `+i:s+i}get selected(){return this.choices}submit(){return this.value=this.choices.map(e=>e.value),super.submit()}};g$.exports=h$});var C$=C((sat,p$)=>{"use strict";var jTe=fp(),d$=class extends jTe{constructor(e={}){super(e);if(this.emptyError=e.emptyError||"No items were selected",this.term=process.env.TERM_PROGRAM,!this.options.header){let r=["","4 - Strongly Agree","3 - Agree","2 - Neutral","1 - Disagree","0 - Strongly Disagree",""];r=r.map(i=>this.styles.muted(i)),this.state.header=r.join(` + `)}}async toChoices(...e){if(this.createdScales)return!1;this.createdScales=!0;let r=await super.toChoices(...e);for(let i of r)i.scale=qTe(5,this.options),i.scaleIdx=2;return r}dispatch(){this.alert()}space(){let e=this.focused,r=e.scale[e.scaleIdx],i=r.selected;return e.scale.forEach(n=>n.selected=!1),r.selected=!i,this.render()}indicator(){return""}pointer(){return""}separator(){return this.styles.muted(this.symbols.ellipsis)}right(){let e=this.focused;return e.scaleIdx>=e.scale.length-1?this.alert():(e.scaleIdx++,this.render())}left(){let e=this.focused;return e.scaleIdx<=0?this.alert():(e.scaleIdx--,this.render())}indent(){return" "}async renderChoice(e,r){await this.onChoice(e,r);let i=this.index===r,n=this.term==="Hyper",s=n?9:8,o=n?"":" ",a=this.symbols.line.repeat(s),l=" ".repeat(s+(n?0:1)),c=x=>(x?this.styles.success("\u25C9"):"\u25EF")+o,u=r+1+".",g=i?this.styles.heading:this.styles.noop,h=await this.resolve(e.message,this.state,e,r),f=this.indent(e),p=f+e.scale.map((x,F)=>c(F===e.scaleIdx)).join(a),m=x=>x===e.scaleIdx?g(x):x,I=f+e.scale.map((x,F)=>m(F)).join(l),y=()=>[u,h].filter(Boolean).join(" "),w=()=>[y(),p,I," "].filter(Boolean).join(` +`);return i&&(p=this.styles.cyan(p),I=this.styles.cyan(I)),w()}async renderChoices(){if(this.state.submitted)return"";let e=this.visible.map(async(i,n)=>await this.renderChoice(i,n)),r=await Promise.all(e);return r.length||r.push(this.styles.danger("No matching choices")),r.join(` `)}format(){return this.state.submitted?this.choices.map(r=>this.styles.info(r.scaleIdx)).join(", "):""}async render(){let{submitted:e,size:r}=this.state,i=await this.prefix(),n=await this.separator(),s=await this.message(),o=[i,s,n].filter(Boolean).join(" ");this.state.prompt=o;let a=await this.header(),l=await this.format(),c=await this.error()||await this.hint(),u=await this.renderChoices(),g=await this.footer();(l||!c)&&(o+=" "+l),c&&!o.includes(c)&&(o+=" "+c),e&&!l&&!u&&this.multiple&&this.type!=="form"&&(o+=this.styles.danger(this.emptyError)),this.clear(r),this.write([o,a,u,g].filter(Boolean).join(` -`)),this.restore()}submit(){this.value={};for(let e of this.choices)this.value[e.name]=e.scaleIdx;return this.base.submit.call(this)}};function rTe(t,e={}){if(Array.isArray(e.scale))return e.scale.map(i=>({...i}));let r=[];for(let i=1;i{HZ.exports=Vx()});var qZ=C((jnt,jZ)=>{"use strict";var iTe=ny(),GZ=class extends iTe{async initialize(){await super.initialize(),this.value=this.initial=!!this.options.initial,this.disabled=this.options.disabled||"no",this.enabled=this.options.enabled||"yes",await this.render()}reset(){this.value=this.initial,this.render()}delete(){this.alert()}toggle(){this.value=!this.value,this.render()}enable(){if(this.value===!0)return this.alert();this.value=!0,this.render()}disable(){if(this.value===!1)return this.alert();this.value=!1,this.render()}up(){this.toggle()}down(){this.toggle()}right(){this.toggle()}left(){this.toggle()}next(){this.toggle()}prev(){this.toggle()}dispatch(e="",r){switch(e.toLowerCase()){case" ":return this.toggle();case"1":case"y":case"t":return this.enable();case"0":case"n":case"f":return this.disable();default:return this.alert()}}format(){let e=i=>this.styles.primary.underline(i);return[this.value?this.disabled:e(this.disabled),this.value?e(this.enabled):this.enabled].join(this.styles.muted(" / "))}async render(){let{size:e}=this.state,r=await this.header(),i=await this.prefix(),n=await this.separator(),s=await this.message(),o=await this.format(),a=await this.error()||await this.hint(),l=await this.footer(),c=[i,s,n,o].join(" ");this.state.prompt=c,a&&!c.includes(a)&&(c+=" "+a),this.clear(e),this.write([r,c,l].filter(Boolean).join(` -`)),this.write(this.margin[2]),this.restore()}};jZ.exports=GZ});var zZ=C((Gnt,JZ)=>{"use strict";var nTe=ta(),WZ=class extends nTe{constructor(e){super(e);if(typeof this.options.correctChoice!="number"||this.options.correctChoice<0)throw new Error("Please specify the index of the correct answer from the list of choices")}async toChoices(e,r){let i=await super.toChoices(e,r);if(i.length<2)throw new Error("Please give at least two choices to the user");if(this.options.correctChoice>i.length)throw new Error("Please specify the index of the correct answer from the list of choices");return i}check(e){return e.index===this.options.correctChoice}async result(e){return{selectedAnswer:e,correctAnswer:this.options.choices[this.options.correctChoice].value,correct:await this.check(this.state)}}};JZ.exports=WZ});var VZ=C($x=>{"use strict";var XZ=qr(),Ir=(t,e)=>{XZ.defineExport($x,t,e),XZ.defineExport($x,t.toLowerCase(),e)};Ir("AutoComplete",()=>TV());Ir("BasicAuth",()=>JV());Ir("Confirm",()=>ZV());Ir("Editable",()=>eZ());Ir("Form",()=>iy());Ir("Input",()=>Vx());Ir("Invisible",()=>cZ());Ir("List",()=>hZ());Ir("MultiSelect",()=>dZ());Ir("Numeral",()=>EZ());Ir("Password",()=>wZ());Ir("Scale",()=>SZ());Ir("Select",()=>ta());Ir("Snippet",()=>LZ());Ir("Sort",()=>OZ());Ir("Survey",()=>UZ());Ir("Text",()=>YZ());Ir("Toggle",()=>qZ());Ir("Quiz",()=>zZ())});var _Z=C((Jnt,ZZ)=>{ZZ.exports={ArrayPrompt:Ff(),AuthPrompt:Xx(),BooleanPrompt:ny(),NumberPrompt:Zx(),StringPrompt:GA()}});var Lf=C((Wnt,$Z)=>{"use strict";var e_=require("assert"),ek=require("events"),ra=qr(),ls=class extends ek{constructor(e,r){super();this.options=ra.merge({},e),this.answers={...r}}register(e,r){if(ra.isObject(e)){for(let n of Object.keys(e))this.register(n,e[n]);return this}e_.equal(typeof r,"function","expected a function");let i=e.toLowerCase();return r.prototype instanceof this.Prompt?this.prompts[i]=r:this.prompts[i]=r(this.Prompt,this),this}async prompt(e=[]){for(let r of[].concat(e))try{typeof r=="function"&&(r=await r.call(this)),await this.ask(ra.merge({},this.options,r))}catch(i){return Promise.reject(i)}return this.answers}async ask(e){typeof e=="function"&&(e=await e.call(this));let r=ra.merge({},this.options,e),{type:i,name:n}=e,{set:s,get:o}=ra;if(typeof i=="function"&&(i=await i.call(this,e,this.answers)),!i)return this.answers[n];e_(this.prompts[i],`Prompt "${i}" is not registered`);let a=new this.prompts[i](r),l=o(this.answers,n);a.state.answers=this.answers,a.enquirer=this,n&&a.on("submit",u=>{this.emit("answer",n,u,a),s(this.answers,n,u)});let c=a.emit.bind(a);return a.emit=(...u)=>(this.emit.call(this,...u),c(...u)),this.emit("prompt",a,this),r.autofill&&l!=null?(a.value=a.input=l,r.autofill==="show"&&await a.submit()):l=a.value=await a.run(),l}use(e){return e.call(this,this),this}set Prompt(e){this._Prompt=e}get Prompt(){return this._Prompt||this.constructor.Prompt}get prompts(){return this.constructor.prompts}static set Prompt(e){this._Prompt=e}static get Prompt(){return this._Prompt||Zc()}static get prompts(){return VZ()}static get types(){return _Z()}static get prompt(){let e=(r,...i)=>{let n=new this(...i),s=n.emit.bind(n);return n.emit=(...o)=>(e.emit(...o),s(...o)),n.prompt(r)};return ra.mixinEmitter(e,new ek),e}};ra.mixinEmitter(ls,new ek);var tk=ls.prompts;for(let t of Object.keys(tk)){let e=t.toLowerCase(),r=i=>new tk[t](i).run();ls.prompt[e]=r,ls[e]=r,ls[t]||Reflect.defineProperty(ls,t,{get:()=>tk[t]})}var Rf=t=>{ra.defineExport(ls,t,()=>ls.types[t])};Rf("ArrayPrompt");Rf("AuthPrompt");Rf("BooleanPrompt");Rf("NumberPrompt");Rf("StringPrompt");$Z.exports=ls});var u_=C((Mst,c_)=>{function ATe(t,e){for(var r=-1,i=t==null?0:t.length;++r{var lTe=fE(),cTe=Nc();function uTe(t,e,r,i){var n=!r;r||(r={});for(var s=-1,o=e.length;++s{var gTe=$c(),hTe=Hc();function fTe(t,e){return t&&gTe(e,hTe(e),t)}h_.exports=fTe});var d_=C((Tst,p_)=>{function pTe(t){var e=[];if(t!=null)for(var r in Object(t))e.push(r);return e}p_.exports=pTe});var m_=C((Kst,C_)=>{var dTe=Fn(),CTe=kE(),mTe=d_(),ITe=Object.prototype,ETe=ITe.hasOwnProperty;function yTe(t){if(!dTe(t))return mTe(t);var e=CTe(t),r=[];for(var i in t)i=="constructor"&&(e||!ETe.call(t,i))||r.push(i);return r}C_.exports=yTe});var eu=C((Ust,I_)=>{var BTe=JP(),wTe=m_(),QTe=ff();function bTe(t){return QTe(t)?BTe(t,!0):wTe(t)}I_.exports=bTe});var y_=C((Hst,E_)=>{var DTe=$c(),STe=eu();function PTe(t,e){return t&&DTe(e,STe(e),t)}E_.exports=PTe});var ok=C((Hf,tu)=>{var xTe=xn(),B_=typeof Hf=="object"&&Hf&&!Hf.nodeType&&Hf,w_=B_&&typeof tu=="object"&&tu&&!tu.nodeType&&tu,kTe=w_&&w_.exports===B_,Q_=kTe?xTe.Buffer:void 0,b_=Q_?Q_.allocUnsafe:void 0;function vTe(t,e){if(e)return t.slice();var r=t.length,i=b_?b_(r):new t.constructor(r);return t.copy(i),i}tu.exports=vTe});var ak=C((Yst,D_)=>{function FTe(t,e){var r=-1,i=t.length;for(e||(e=Array(i));++r{var RTe=$c(),LTe=FE();function MTe(t,e){return RTe(t,LTe(t),e)}S_.exports=MTe});var ay=C((Gst,x_)=>{var NTe=WP(),OTe=NTe(Object.getPrototypeOf,Object);x_.exports=OTe});var Ak=C((qst,k_)=>{var TTe=dE(),KTe=ay(),UTe=FE(),HTe=$P(),YTe=Object.getOwnPropertySymbols,jTe=YTe?function(t){for(var e=[];t;)TTe(e,UTe(t)),t=KTe(t);return e}:HTe;k_.exports=jTe});var F_=C((Jst,v_)=>{var GTe=$c(),qTe=Ak();function JTe(t,e){return GTe(t,qTe(t),e)}v_.exports=JTe});var L_=C((Wst,R_)=>{var WTe=_P(),zTe=Ak(),XTe=eu();function VTe(t){return WTe(t,XTe,zTe)}R_.exports=VTe});var N_=C((zst,M_)=>{var ZTe=Object.prototype,_Te=ZTe.hasOwnProperty;function $Te(t){var e=t.length,r=new t.constructor(e);return e&&typeof t[0]=="string"&&_Te.call(t,"index")&&(r.index=t.index,r.input=t.input),r}M_.exports=$Te});var Ay=C((Xst,O_)=>{var T_=VP();function eKe(t){var e=new t.constructor(t.byteLength);return new T_(e).set(new T_(t)),e}O_.exports=eKe});var U_=C((Vst,K_)=>{var tKe=Ay();function rKe(t,e){var r=e?tKe(t.buffer):t.buffer;return new t.constructor(r,t.byteOffset,t.byteLength)}K_.exports=rKe});var Y_=C((Zst,H_)=>{var iKe=/\w*$/;function nKe(t){var e=new t.constructor(t.source,iKe.exec(t));return e.lastIndex=t.lastIndex,e}H_.exports=nKe});var W_=C((_st,j_)=>{var G_=hA(),q_=G_?G_.prototype:void 0,J_=q_?q_.valueOf:void 0;function sKe(t){return J_?Object(J_.call(t)):{}}j_.exports=sKe});var lk=C(($st,z_)=>{var oKe=Ay();function aKe(t,e){var r=e?oKe(t.buffer):t.buffer;return new t.constructor(r,t.byteOffset,t.length)}z_.exports=aKe});var V_=C((eot,X_)=>{var AKe=Ay(),lKe=U_(),cKe=Y_(),uKe=W_(),gKe=lk(),hKe="[object Boolean]",fKe="[object Date]",pKe="[object Map]",dKe="[object Number]",CKe="[object RegExp]",mKe="[object Set]",IKe="[object String]",EKe="[object Symbol]",yKe="[object ArrayBuffer]",BKe="[object DataView]",wKe="[object Float32Array]",QKe="[object Float64Array]",bKe="[object Int8Array]",DKe="[object Int16Array]",SKe="[object Int32Array]",PKe="[object Uint8Array]",xKe="[object Uint8ClampedArray]",kKe="[object Uint16Array]",vKe="[object Uint32Array]";function FKe(t,e,r){var i=t.constructor;switch(e){case yKe:return AKe(t);case hKe:case fKe:return new i(+t);case BKe:return lKe(t,r);case wKe:case QKe:case bKe:case DKe:case SKe:case PKe:case xKe:case kKe:case vKe:return gKe(t,r);case pKe:return new i;case dKe:case IKe:return new i(t);case CKe:return cKe(t);case mKe:return new i;case EKe:return uKe(t)}}X_.exports=FKe});var $_=C((tot,Z_)=>{var RKe=Fn(),__=Object.create,LKe=function(){function t(){}return function(e){if(!RKe(e))return{};if(__)return __(e);t.prototype=e;var r=new t;return t.prototype=void 0,r}}();Z_.exports=LKe});var ck=C((rot,e$)=>{var MKe=$_(),NKe=ay(),OKe=kE();function TKe(t){return typeof t.constructor=="function"&&!OKe(t)?MKe(NKe(t)):{}}e$.exports=TKe});var r$=C((iot,t$)=>{var KKe=df(),UKe=_n(),HKe="[object Map]";function YKe(t){return UKe(t)&&KKe(t)==HKe}t$.exports=YKe});var o$=C((not,i$)=>{var jKe=r$(),GKe=SE(),n$=PE(),s$=n$&&n$.isMap,qKe=s$?GKe(s$):jKe;i$.exports=qKe});var A$=C((sot,a$)=>{var JKe=df(),WKe=_n(),zKe="[object Set]";function XKe(t){return WKe(t)&&JKe(t)==zKe}a$.exports=XKe});var g$=C((oot,l$)=>{var VKe=A$(),ZKe=SE(),c$=PE(),u$=c$&&c$.isSet,_Ke=u$?ZKe(u$):VKe;l$.exports=_Ke});var C$=C((aot,h$)=>{var $Ke=pf(),e1e=u_(),t1e=fE(),r1e=f_(),i1e=y_(),n1e=ok(),s1e=ak(),o1e=P_(),a1e=F_(),A1e=ex(),l1e=L_(),c1e=df(),u1e=N_(),g1e=V_(),h1e=ck(),f1e=an(),p1e=uf(),d1e=o$(),C1e=Fn(),m1e=g$(),I1e=Hc(),E1e=eu(),y1e=1,B1e=2,w1e=4,f$="[object Arguments]",Q1e="[object Array]",b1e="[object Boolean]",D1e="[object Date]",S1e="[object Error]",p$="[object Function]",P1e="[object GeneratorFunction]",x1e="[object Map]",k1e="[object Number]",d$="[object Object]",v1e="[object RegExp]",F1e="[object Set]",R1e="[object String]",L1e="[object Symbol]",M1e="[object WeakMap]",N1e="[object ArrayBuffer]",O1e="[object DataView]",T1e="[object Float32Array]",K1e="[object Float64Array]",U1e="[object Int8Array]",H1e="[object Int16Array]",Y1e="[object Int32Array]",j1e="[object Uint8Array]",G1e="[object Uint8ClampedArray]",q1e="[object Uint16Array]",J1e="[object Uint32Array]",xt={};xt[f$]=xt[Q1e]=xt[N1e]=xt[O1e]=xt[b1e]=xt[D1e]=xt[T1e]=xt[K1e]=xt[U1e]=xt[H1e]=xt[Y1e]=xt[x1e]=xt[k1e]=xt[d$]=xt[v1e]=xt[F1e]=xt[R1e]=xt[L1e]=xt[j1e]=xt[G1e]=xt[q1e]=xt[J1e]=!0;xt[S1e]=xt[p$]=xt[M1e]=!1;function ly(t,e,r,i,n,s){var o,a=e&y1e,l=e&B1e,c=e&w1e;if(r&&(o=n?r(t,i,n,s):r(t)),o!==void 0)return o;if(!C1e(t))return t;var u=f1e(t);if(u){if(o=u1e(t),!a)return s1e(t,o)}else{var g=c1e(t),h=g==p$||g==P1e;if(p1e(t))return n1e(t,a);if(g==d$||g==f$||h&&!n){if(o=l||h?{}:h1e(t),!a)return l?a1e(t,i1e(o,t)):o1e(t,r1e(o,t))}else{if(!xt[g])return n?t:{};o=g1e(t,g,a)}}s||(s=new $Ke);var f=s.get(t);if(f)return f;s.set(t,o),m1e(t)?t.forEach(function(I){o.add(ly(I,e,r,I,t,s))}):d1e(t)&&t.forEach(function(I,y){o.set(y,ly(I,e,r,y,t,s))});var p=c?l?l1e:A1e:l?E1e:I1e,m=u?void 0:p(t);return e1e(m||t,function(I,y){m&&(y=I,I=t[y]),t1e(o,y,ly(I,e,r,y,t,s))}),o}h$.exports=ly});var uk=C((Aot,m$)=>{var W1e=C$(),z1e=1,X1e=4;function V1e(t){return W1e(t,z1e|X1e)}m$.exports=V1e});var E$=C((lot,I$)=>{var Z1e=BP();function _1e(t,e,r){return t==null?t:Z1e(t,e,r)}I$.exports=_1e});var D$=C((pot,b$)=>{function $1e(t){var e=t==null?0:t.length;return e?t[e-1]:void 0}b$.exports=$1e});var P$=C((dot,S$)=>{var eUe=tf(),tUe=pD();function rUe(t,e){return e.length<2?t:eUe(t,tUe(e,0,-1))}S$.exports=rUe});var k$=C((Cot,x$)=>{var iUe=Mc(),nUe=D$(),sUe=P$(),oUe=RA();function aUe(t,e){return e=iUe(e,t),t=sUe(t,e),t==null||delete t[oUe(nUe(e))]}x$.exports=aUe});var F$=C((mot,v$)=>{var AUe=k$();function lUe(t,e){return t==null?!0:AUe(t,e)}v$.exports=lUe});var H$=C((Xot,U$)=>{U$.exports={name:"@yarnpkg/cli",version:"3.0.0-rc.2",license:"BSD-2-Clause",main:"./sources/index.ts",dependencies:{"@yarnpkg/core":"workspace:^3.0.0-rc.2","@yarnpkg/fslib":"workspace:^2.5.0-rc.2","@yarnpkg/libzip":"workspace:^2.2.1","@yarnpkg/parsers":"workspace:^2.3.1-rc.2","@yarnpkg/plugin-compat":"workspace:^3.0.0-rc.2","@yarnpkg/plugin-dlx":"workspace:^3.0.0-rc.2","@yarnpkg/plugin-essentials":"workspace:^3.0.0-rc.2","@yarnpkg/plugin-file":"workspace:^2.2.1-rc.2","@yarnpkg/plugin-git":"workspace:^2.4.0-rc.2","@yarnpkg/plugin-github":"workspace:^2.2.0-rc.2","@yarnpkg/plugin-http":"workspace:^2.1.3-rc.2","@yarnpkg/plugin-init":"workspace:^3.0.0-rc.2","@yarnpkg/plugin-link":"workspace:^2.1.2-rc.2","@yarnpkg/plugin-node-modules":"workspace:^3.0.0-rc.2","@yarnpkg/plugin-npm":"workspace:^2.5.0-rc.2","@yarnpkg/plugin-npm-cli":"workspace:^3.0.0-rc.2","@yarnpkg/plugin-pack":"workspace:^3.0.0-rc.2","@yarnpkg/plugin-patch":"workspace:^3.0.0-rc.2","@yarnpkg/plugin-pnp":"workspace:^3.0.0-rc.2","@yarnpkg/shell":"workspace:^3.0.0-rc.2",chalk:"^3.0.0","ci-info":"^2.0.0",clipanion:"^3.0.0-rc.10",semver:"^7.1.2",tslib:"^1.13.0",typanion:"^3.3.0",yup:"^0.32.9"},devDependencies:{"@types/ci-info":"^2","@types/semver":"^7.1.0","@types/yup":"^0","@yarnpkg/builder":"workspace:*","@yarnpkg/monorepo":"workspace:*","@yarnpkg/pnpify":"workspace:*",micromatch:"^4.0.2",typescript:"beta"},peerDependencies:{"@yarnpkg/core":"^3.0.0-rc.2"},scripts:{postpack:"rm -rf lib",prepack:'run build:compile "$(pwd)"',"build:cli+hook":"run build:pnp:hook && builder build bundle","build:cli":"builder build bundle","run:cli":"builder run","update-local":"run build:cli --no-git-hash && rsync -a --delete bundles/ bin/"},publishConfig:{main:"./lib/index.js",types:"./lib/index.d.ts",bin:null},files:["/lib/**/*","!/lib/pluginConfiguration.*","!/lib/cli.*"],"@yarnpkg/builder":{bundles:{standard:["@yarnpkg/plugin-essentials","@yarnpkg/plugin-compat","@yarnpkg/plugin-dlx","@yarnpkg/plugin-file","@yarnpkg/plugin-git","@yarnpkg/plugin-github","@yarnpkg/plugin-http","@yarnpkg/plugin-init","@yarnpkg/plugin-link","@yarnpkg/plugin-node-modules","@yarnpkg/plugin-npm","@yarnpkg/plugin-npm-cli","@yarnpkg/plugin-pack","@yarnpkg/plugin-patch","@yarnpkg/plugin-pnp"]}},repository:{type:"git",url:"ssh://git@github.com/yarnpkg/berry.git",directory:"packages/yarnpkg-cli"},engines:{node:">=12 <14 || 14.2 - 14.9 || >14.10.0"},stableVersion:"2.4.0"}});var Ok=C((Egt,Lee)=>{"use strict";Lee.exports=function(e,r){r===!0&&(r=0);var i=e.indexOf("://"),n=e.substring(0,i).split("+").filter(Boolean);return typeof r=="number"?n[r]:n}});var Tk=C((ygt,Mee)=>{"use strict";var MUe=Ok();function Nee(t){if(Array.isArray(t))return t.indexOf("ssh")!==-1||t.indexOf("rsync")!==-1;if(typeof t!="string")return!1;var e=MUe(t);return t=t.substring(t.indexOf("://")+3),Nee(e)?!0:t.indexOf("@"){"use strict";var NUe=Ok(),OUe=Tk(),TUe=require("querystring");function KUe(t){t=(t||"").trim();var e={protocols:NUe(t),protocol:null,port:null,resource:"",user:"",pathname:"",hash:"",search:"",href:t,query:Object.create(null)},r=t.indexOf("://"),i=-1,n=null,s=null;t.startsWith(".")&&(t.startsWith("./")&&(t=t.substring(2)),e.pathname=t,e.protocol="file");var o=t.charAt(1);return e.protocol||(e.protocol=e.protocols[0],e.protocol||(OUe(t)?e.protocol="ssh":((o==="/"||o==="~")&&(t=t.substring(2)),e.protocol="file"))),r!==-1&&(t=t.substring(r+3)),s=t.split("/"),e.protocol!=="file"?e.resource=s.shift():e.resource="",n=e.resource.split("@"),n.length===2&&(e.user=n[0],e.resource=n[1]),n=e.resource.split(":"),n.length===2&&(e.resource=n[0],n[1]?(e.port=Number(n[1]),isNaN(e.port)&&(e.port=null,s.unshift(n[1]))):e.port=null),s=s.filter(Boolean),e.protocol==="file"?e.pathname=e.href:e.pathname=e.pathname||(e.protocol!=="file"||e.href[0]==="/"?"/":"")+s.join("/"),n=e.pathname.split("#"),n.length===2&&(e.pathname=n[0],e.hash=n[1]),n=e.pathname.split("?"),n.length===2&&(e.pathname=n[0],e.search=n[1]),e.query=TUe.parse(e.search),e.href=e.href.replace(/\/$/,""),e.pathname=e.pathname.replace(/\/$/,""),e}Oee.exports=KUe});var Hee=C((wgt,Kee)=>{"use strict";var UUe=typeof URL=="undefined"?require("url").URL:URL,Uee=(t,e)=>e.some(r=>r instanceof RegExp?r.test(t):r===t);Kee.exports=(t,e)=>{e=Object.assign({defaultProtocol:"http:",normalizeProtocol:!0,forceHttp:!1,forceHttps:!1,stripHash:!0,stripWWW:!0,removeQueryParameters:[/^utm_\w+/i],removeTrailingSlash:!0,removeDirectoryIndex:!1,sortQueryParameters:!0},e),Reflect.has(e,"normalizeHttps")&&(e.forceHttp=e.normalizeHttps),Reflect.has(e,"normalizeHttp")&&(e.forceHttps=e.normalizeHttp),Reflect.has(e,"stripFragment")&&(e.stripHash=e.stripFragment),t=t.trim();let r=t.startsWith("//");!r&&/^\.*\//.test(t)||(t=t.replace(/^(?!(?:\w+:)?\/\/)|^\/\//,e.defaultProtocol));let n=new UUe(t);if(e.forceHttp&&e.forceHttps)throw new Error("The `forceHttp` and `forceHttps` options cannot be used together");if(e.forceHttp&&n.protocol==="https:"&&(n.protocol="http:"),e.forceHttps&&n.protocol==="http:"&&(n.protocol="https:"),e.stripHash&&(n.hash=""),n.pathname&&(n.pathname=n.pathname.replace(/((?![https?:]).)\/{2,}/g,(s,o)=>/^(?!\/)/g.test(o)?`${o}/`:"/")),n.pathname&&(n.pathname=decodeURI(n.pathname)),e.removeDirectoryIndex===!0&&(e.removeDirectoryIndex=[/^index\.[a-z]+$/]),Array.isArray(e.removeDirectoryIndex)&&e.removeDirectoryIndex.length>0){let s=n.pathname.split("/"),o=s[s.length-1];Uee(o,e.removeDirectoryIndex)&&(s=s.slice(0,s.length-1),n.pathname=s.slice(1).join("/")+"/")}if(n.hostname&&(n.hostname=n.hostname.replace(/\.$/,""),e.stripWWW&&/^www\.([a-z\-\d]{2,63})\.([a-z\.]{2,5})$/.test(n.hostname)&&(n.hostname=n.hostname.replace(/^www\./,""))),Array.isArray(e.removeQueryParameters))for(let s of[...n.searchParams.keys()])Uee(s,e.removeQueryParameters)&&n.searchParams.delete(s);return e.sortQueryParameters&&n.searchParams.sort(),t=n.toString(),(e.removeTrailingSlash||n.pathname==="/")&&(t=t.replace(/\/$/,"")),r&&!e.normalizeProtocol&&(t=t.replace(/^http:\/\//,"//")),t}});var jee=C((Qgt,Yee)=>{"use strict";var HUe=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},YUe=Tee(),jUe=Hee();function GUe(t){var e=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1;if(typeof t!="string"||!t.trim())throw new Error("Invalid url.");e&&((typeof e=="undefined"?"undefined":HUe(e))!=="object"&&(e={stripFragment:!1}),t=jUe(t,e));var r=YUe(t);return r}Yee.exports=GUe});var Jee=C((bgt,Gee)=>{"use strict";var qUe=jee(),qee=Tk();function JUe(t){var e=qUe(t);e.token="";var r=e.user.split(":");return r.length===2&&(r[1]==="x-oauth-basic"?e.token=r[0]:r[0]==="x-token-auth"&&(e.token=r[1])),qee(e.protocols)||qee(t)?e.protocol="ssh":e.protocols.length?e.protocol=e.protocols[0]:e.protocol="file",e.href=e.href.replace(/\/$/,""),e}Gee.exports=JUe});var zee=C((Dgt,Wee)=>{"use strict";var WUe=Jee();function Kk(t){if(typeof t!="string")throw new Error("The url must be a string.");var e=WUe(t),r=e.resource.split("."),i=null;switch(e.toString=function(l){return Kk.stringify(this,l)},e.source=r.length>2?r.slice(1-r.length).join("."):e.source=e.resource,e.git_suffix=/\.git$/.test(e.pathname),e.name=decodeURIComponent(e.pathname.replace(/^\//,"").replace(/\.git$/,"")),e.owner=decodeURIComponent(e.user),e.source){case"git.cloudforge.com":e.owner=e.user,e.organization=r[0],e.source="cloudforge.com";break;case"visualstudio.com":if(e.resource==="vs-ssh.visualstudio.com"){i=e.name.split("/"),i.length===4&&(e.organization=i[1],e.owner=i[2],e.name=i[3],e.full_name=i[2]+"/"+i[3]);break}else{i=e.name.split("/"),i.length===2?(e.owner=i[1],e.name=i[1],e.full_name="_git/"+e.name):i.length===3?(e.name=i[2],i[0]==="DefaultCollection"?(e.owner=i[2],e.organization=i[0],e.full_name=e.organization+"/_git/"+e.name):(e.owner=i[0],e.full_name=e.owner+"/_git/"+e.name)):i.length===4&&(e.organization=i[0],e.owner=i[1],e.name=i[3],e.full_name=e.organization+"/"+e.owner+"/_git/"+e.name);break}case"dev.azure.com":case"azure.com":if(e.resource==="ssh.dev.azure.com"){i=e.name.split("/"),i.length===4&&(e.organization=i[1],e.owner=i[2],e.name=i[3]);break}else{i=e.name.split("/"),i.length===5?(e.organization=i[0],e.owner=i[1],e.name=i[4],e.full_name="_git/"+e.name):i.length===3?(e.name=i[2],i[0]==="DefaultCollection"?(e.owner=i[2],e.organization=i[0],e.full_name=e.organization+"/_git/"+e.name):(e.owner=i[0],e.full_name=e.owner+"/_git/"+e.name)):i.length===4&&(e.organization=i[0],e.owner=i[1],e.name=i[3],e.full_name=e.organization+"/"+e.owner+"/_git/"+e.name);break}default:i=e.name.split("/");var n=i.length-1;if(i.length>=2){var s=i.indexOf("blob",2),o=i.indexOf("tree",2),a=i.indexOf("commit",2);n=s>0?s-1:o>0?o-1:a>0?a-1:n,e.owner=i.slice(0,n).join("/"),e.name=i[n],a&&(e.commit=i[n+2])}e.ref="",e.filepathtype="",e.filepath="",i.length>n+2&&["blob","tree"].indexOf(i[n+1])>=0&&(e.filepathtype=i[n+1],e.ref=i[n+2],i.length>n+3&&(e.filepath=i.slice(n+3).join("/"))),e.organization=e.owner;break}return e.full_name||(e.full_name=e.owner,e.name&&(e.full_name&&(e.full_name+="/"),e.full_name+=e.name)),e}Kk.stringify=function(t,e){e=e||(t.protocols&&t.protocols.length?t.protocols.join("+"):t.protocol);var r=t.port?":"+t.port:"",i=t.user||"git",n=t.git_suffix?".git":"";switch(e){case"ssh":return r?"ssh://"+i+"@"+t.resource+r+"/"+t.full_name+n:i+"@"+t.resource+":"+t.full_name+n;case"git+ssh":case"ssh+git":case"ftp":case"ftps":return e+"://"+i+"@"+t.resource+r+"/"+t.full_name+n;case"http":case"https":var s=t.token?zUe(t):t.user&&(t.protocols.includes("http")||t.protocols.includes("https"))?t.user+"@":"";return e+"://"+s+t.resource+r+"/"+t.full_name+n;default:return t.href}};function zUe(t){switch(t.source){case"bitbucket.org":return"x-token-auth:"+t.token+"@";default:return t.token+"@"}}Wee.exports=Kk});var $k=C((Cht,rte)=>{var i2e=Nc(),n2e=Fc();function s2e(t,e,r){(r!==void 0&&!n2e(t[e],r)||r===void 0&&!(e in t))&&i2e(t,e,r)}rte.exports=s2e});var nte=C((mht,ite)=>{var o2e=ff(),a2e=_n();function A2e(t){return a2e(t)&&o2e(t)}ite.exports=A2e});var ate=C((Iht,ste)=>{var l2e=fA(),c2e=ay(),u2e=_n(),g2e="[object Object]",h2e=Function.prototype,f2e=Object.prototype,ote=h2e.toString,p2e=f2e.hasOwnProperty,d2e=ote.call(Object);function C2e(t){if(!u2e(t)||l2e(t)!=g2e)return!1;var e=c2e(t);if(e===null)return!0;var r=p2e.call(e,"constructor")&&e.constructor;return typeof r=="function"&&r instanceof r&&ote.call(r)==d2e}ste.exports=C2e});var ev=C((Eht,Ate)=>{function m2e(t,e){if(!(e==="constructor"&&typeof t[e]=="function")&&e!="__proto__")return t[e]}Ate.exports=m2e});var cte=C((yht,lte)=>{var I2e=$c(),E2e=eu();function y2e(t){return I2e(t,E2e(t))}lte.exports=y2e});var dte=C((Bht,ute)=>{var gte=$k(),B2e=ok(),w2e=lk(),Q2e=ak(),b2e=ck(),hte=nf(),fte=an(),D2e=nte(),S2e=uf(),P2e=uE(),x2e=Fn(),k2e=ate(),v2e=xE(),pte=ev(),F2e=cte();function R2e(t,e,r,i,n,s,o){var a=pte(t,r),l=pte(e,r),c=o.get(l);if(c){gte(t,r,c);return}var u=s?s(a,l,r+"",t,e,o):void 0,g=u===void 0;if(g){var h=fte(l),f=!h&&S2e(l),p=!h&&!f&&v2e(l);u=l,h||f||p?fte(a)?u=a:D2e(a)?u=Q2e(a):f?(g=!1,u=B2e(l,!0)):p?(g=!1,u=w2e(l,!0)):u=[]:k2e(l)||hte(l)?(u=a,hte(a)?u=F2e(a):(!x2e(a)||P2e(a))&&(u=b2e(l))):g=!1}g&&(o.set(l,u),n(u,l,i,s,o),o.delete(l)),gte(t,r,u)}ute.exports=R2e});var Ite=C((wht,Cte)=>{var L2e=pf(),M2e=$k(),N2e=GP(),O2e=dte(),T2e=Fn(),K2e=eu(),U2e=ev();function mte(t,e,r,i,n){t!==e&&N2e(e,function(s,o){if(n||(n=new L2e),T2e(s))O2e(t,e,o,r,mte,i,n);else{var a=i?i(U2e(t,o),s,o+"",t,e,n):void 0;a===void 0&&(a=s),M2e(t,o,a)}},K2e)}Cte.exports=mte});var yte=C((Qht,Ete)=>{var H2e=CE(),Y2e=bP(),j2e=DP();function G2e(t,e){return j2e(Y2e(t,e,H2e),t+"")}Ete.exports=G2e});var wte=C((bht,Bte)=>{var q2e=Fc(),J2e=ff(),W2e=rf(),z2e=Fn();function X2e(t,e,r){if(!z2e(r))return!1;var i=typeof e;return(i=="number"?J2e(r)&&W2e(e,r.length):i=="string"&&e in r)?q2e(r[e],t):!1}Bte.exports=X2e});var bte=C((Dht,Qte)=>{var V2e=yte(),Z2e=wte();function _2e(t){return V2e(function(e,r){var i=-1,n=r.length,s=n>1?r[n-1]:void 0,o=n>2?r[2]:void 0;for(s=t.length>3&&typeof s=="function"?(n--,s):void 0,o&&Z2e(r[0],r[1],o)&&(s=n<3?void 0:s,n=1),e=Object(e);++i{var $2e=Ite(),eHe=bte(),tHe=eHe(function(t,e,r){$2e(t,e,r)});Dte.exports=tHe});var pv=C(exports=>{We(exports,{dynamicRequire:()=>dynamicRequire,dynamicRequireNoCache:()=>dynamicRequireNoCache});var dynamicRequire=eval("require");function dynamicRequireNoCache(path){let physicalPath=npath.fromPortablePath(path),currentCacheEntry=dynamicRequire.cache[physicalPath];delete dynamicRequire.cache[physicalPath];let result;try{result=dynamicRequire(physicalPath);let freshCacheEntry=dynamicRequire.cache[physicalPath],dynamicModule=eval("module"),freshCacheIndex=dynamicModule.children.indexOf(freshCacheEntry);freshCacheIndex!==-1&&dynamicModule.children.splice(freshCacheIndex,1)}finally{dynamicRequire.cache[physicalPath]=currentCacheEntry}return result}});var Xte=C((cpt,zte)=>{var Ev;zte.exports=()=>(typeof Ev=="undefined"&&(Ev=require("zlib").brotliDecompressSync(Buffer.from("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","base64")).toString()),Ev)});var tre=C(Bv=>{function Au(t,e){if(typeof t=="string")return t;if(t){let r,i;if(Array.isArray(t)){for(r=0;r0)return(g=Au(n[u],c))?g.replace("*",l.substring(u.length-1)):WA(i,l,1)}return WA(i,l)}}function xHe(t,e={}){let r=0,i,n=e.browser,s=e.fields||["module","main"];for(n&&!s.includes("browser")&&s.unshift("browser");r{(function(t){kv&&typeof kv=="object"&&typeof vv!="undefined"?vv.exports=t():typeof define=="function"&&define.amd?define([],t):typeof window!="undefined"?window.isWindows=t():typeof global!="undefined"?global.isWindows=t():typeof self!="undefined"?self.isWindows=t():this.isWindows=t()})(function(){"use strict";return function(){return process&&(process.platform==="win32"||/^(msys|cygwin)$/.test(process.env.OSTYPE))}})});var pre=C((Udt,gre)=>{"use strict";Fv.ifExists=KHe;var uu=require("util"),dn=require("path"),hre=ure(),UHe=/^#!\s*(?:\/usr\/bin\/env)?\s*([^ \t]+)(.*)$/,HHe={createPwshFile:!0,createCmdFile:hre(),fs:require("fs")},YHe=new Map([[".js","node"],[".cjs","node"],[".mjs","node"],[".cmd","cmd"],[".bat","cmd"],[".ps1","pwsh"],[".sh","sh"]]);function fre(t){let e={...HHe,...t},r=e.fs;return e.fs_={chmod:r.chmod?uu.promisify(r.chmod):async()=>{},mkdir:uu.promisify(r.mkdir),readFile:uu.promisify(r.readFile),stat:uu.promisify(r.stat),unlink:uu.promisify(r.unlink),writeFile:uu.promisify(r.writeFile)},e}async function Fv(t,e,r){let i=fre(r);await i.fs_.stat(t),await jHe(t,e,i)}function KHe(t,e,r){return Fv(t,e,r).catch(()=>{})}function GHe(t,e){return e.fs_.unlink(t).catch(()=>{})}async function jHe(t,e,r){let i=await WHe(t,r);return await qHe(e,r),JHe(t,e,i,r)}function qHe(t,e){return e.fs_.mkdir(dn.dirname(t),{recursive:!0})}function JHe(t,e,r,i){let n=fre(i),s=[{generator:VHe,extension:""}];return n.createCmdFile&&s.push({generator:XHe,extension:".cmd"}),n.createPwshFile&&s.push({generator:ZHe,extension:".ps1"}),Promise.all(s.map(o=>zHe(t,e+o.extension,r,o.generator,n)))}function _He(t,e){return GHe(t,e)}function eYe(t,e){return $He(t,e)}async function WHe(t,e){let n=(await e.fs_.readFile(t,"utf8")).trim().split(/\r*\n/)[0].match(UHe);if(!n){let s=dn.extname(t).toLowerCase();return{program:YHe.get(s)||null,additionalArgs:""}}return{program:n[1],additionalArgs:n[2]}}async function zHe(t,e,r,i,n){let s=n.preserveSymlinks?"--preserve-symlinks":"",o=[r.additionalArgs,s].filter(a=>a).join(" ");return n=Object.assign({},n,{prog:r.program,args:o}),await _He(e,n),await n.fs_.writeFile(e,i(t,e,n),"utf8"),eYe(e,n)}function XHe(t,e,r){let n=dn.relative(dn.dirname(e),t).split("/").join("\\"),s=dn.isAbsolute(n)?`"${n}"`:`"%~dp0\\${n}"`,o,a=r.prog,l=r.args||"",c=Rv(r.nodePath).win32;a?(o=`"%~dp0\\${a}.exe"`,n=s):(a=s,l="",n="");let u=r.progArgs?`${r.progArgs.join(" ")} `:"",g=c?`@SET NODE_PATH=${c}\r +`)),this.restore()}submit(){this.value={};for(let e of this.choices)this.value[e.name]=e.scaleIdx;return this.base.submit.call(this)}};function qTe(t,e={}){if(Array.isArray(e.scale))return e.scale.map(i=>k({},i));let r=[];for(let i=1;i{m$.exports=ov()});var B$=C((aat,E$)=>{"use strict";var JTe=_y(),y$=class extends JTe{async initialize(){await super.initialize(),this.value=this.initial=!!this.options.initial,this.disabled=this.options.disabled||"no",this.enabled=this.options.enabled||"yes",await this.render()}reset(){this.value=this.initial,this.render()}delete(){this.alert()}toggle(){this.value=!this.value,this.render()}enable(){if(this.value===!0)return this.alert();this.value=!0,this.render()}disable(){if(this.value===!1)return this.alert();this.value=!1,this.render()}up(){this.toggle()}down(){this.toggle()}right(){this.toggle()}left(){this.toggle()}next(){this.toggle()}prev(){this.toggle()}dispatch(e="",r){switch(e.toLowerCase()){case" ":return this.toggle();case"1":case"y":case"t":return this.enable();case"0":case"n":case"f":return this.disable();default:return this.alert()}}format(){let e=i=>this.styles.primary.underline(i);return[this.value?this.disabled:e(this.disabled),this.value?e(this.enabled):this.enabled].join(this.styles.muted(" / "))}async render(){let{size:e}=this.state,r=await this.header(),i=await this.prefix(),n=await this.separator(),s=await this.message(),o=await this.format(),a=await this.error()||await this.hint(),l=await this.footer(),c=[i,s,n,o].join(" ");this.state.prompt=c,a&&!c.includes(a)&&(c+=" "+a),this.clear(e),this.write([r,c,l].filter(Boolean).join(` +`)),this.write(this.margin[2]),this.restore()}};E$.exports=y$});var b$=C((Aat,w$)=>{"use strict";var WTe=Ea(),Q$=class extends WTe{constructor(e){super(e);if(typeof this.options.correctChoice!="number"||this.options.correctChoice<0)throw new Error("Please specify the index of the correct answer from the list of choices")}async toChoices(e,r){let i=await super.toChoices(e,r);if(i.length<2)throw new Error("Please give at least two choices to the user");if(this.options.correctChoice>i.length)throw new Error("Please specify the index of the correct answer from the list of choices");return i}check(e){return e.index===this.options.correctChoice}async result(e){return{selectedAnswer:e,correctAnswer:this.options.choices[this.options.correctChoice].value,correct:await this.check(this.state)}}};w$.exports=Q$});var S$=C(lv=>{"use strict";var D$=$r(),Qr=(t,e)=>{D$.defineExport(lv,t,e),D$.defineExport(lv,t.toLowerCase(),e)};Qr("AutoComplete",()=>p_());Qr("BasicAuth",()=>w_());Qr("Confirm",()=>x_());Qr("Editable",()=>v_());Qr("Form",()=>Zy());Qr("Input",()=>ov());Qr("Invisible",()=>H_());Qr("List",()=>j_());Qr("MultiSelect",()=>W_());Qr("Numeral",()=>Z_());Qr("Password",()=>e$());Qr("Scale",()=>n$());Qr("Select",()=>Ea());Qr("Snippet",()=>u$());Qr("Sort",()=>f$());Qr("Survey",()=>C$());Qr("Text",()=>I$());Qr("Toggle",()=>B$());Qr("Quiz",()=>b$())});var P$=C((cat,x$)=>{x$.exports={ArrayPrompt:fp(),AuthPrompt:sv(),BooleanPrompt:_y(),NumberPrompt:av(),StringPrompt:cl()}});var dp=C((uat,k$)=>{"use strict";var v$=require("assert"),cv=require("events"),ya=$r(),Bs=class extends cv{constructor(e,r){super();this.options=ya.merge({},e),this.answers=k({},r)}register(e,r){if(ya.isObject(e)){for(let n of Object.keys(e))this.register(n,e[n]);return this}v$.equal(typeof r,"function","expected a function");let i=e.toLowerCase();return r.prototype instanceof this.Prompt?this.prompts[i]=r:this.prompts[i]=r(this.Prompt,this),this}async prompt(e=[]){for(let r of[].concat(e))try{typeof r=="function"&&(r=await r.call(this)),await this.ask(ya.merge({},this.options,r))}catch(i){return Promise.reject(i)}return this.answers}async ask(e){typeof e=="function"&&(e=await e.call(this));let r=ya.merge({},this.options,e),{type:i,name:n}=e,{set:s,get:o}=ya;if(typeof i=="function"&&(i=await i.call(this,e,this.answers)),!i)return this.answers[n];v$(this.prompts[i],`Prompt "${i}" is not registered`);let a=new this.prompts[i](r),l=o(this.answers,n);a.state.answers=this.answers,a.enquirer=this,n&&a.on("submit",u=>{this.emit("answer",n,u,a),s(this.answers,n,u)});let c=a.emit.bind(a);return a.emit=(...u)=>(this.emit.call(this,...u),c(...u)),this.emit("prompt",a,this),r.autofill&&l!=null?(a.value=a.input=l,r.autofill==="show"&&await a.submit()):l=a.value=await a.run(),l}use(e){return e.call(this,this),this}set Prompt(e){this._Prompt=e}get Prompt(){return this._Prompt||this.constructor.Prompt}get prompts(){return this.constructor.prompts}static set Prompt(e){this._Prompt=e}static get Prompt(){return this._Prompt||Su()}static get prompts(){return S$()}static get types(){return P$()}static get prompt(){let e=(r,...i)=>{let n=new this(...i),s=n.emit.bind(n);return n.emit=(...o)=>(e.emit(...o),s(...o)),n.prompt(r)};return ya.mixinEmitter(e,new cv),e}};ya.mixinEmitter(Bs,new cv);var uv=Bs.prompts;for(let t of Object.keys(uv)){let e=t.toLowerCase(),r=i=>new uv[t](i).run();Bs.prompt[e]=r,Bs[e]=r,Bs[t]||Reflect.defineProperty(Bs,t,{get:()=>uv[t]})}var pp=t=>{ya.defineExport(Bs,t,()=>Bs.types[t])};pp("ArrayPrompt");pp("AuthPrompt");pp("BooleanPrompt");pp("NumberPrompt");pp("StringPrompt");k$.exports=Bs});var Y$=C((eAt,H$)=>{function ZTe(t,e){for(var r=-1,i=t==null?0:t.length;++r{var _Te=ly(),$Te=gu();function eUe(t,e,r,i){var n=!r;r||(r={});for(var s=-1,o=e.length;++s{var tUe=Pu(),rUe=Cu();function iUe(t,e){return t&&tUe(e,rUe(e),t)}j$.exports=iUe});var W$=C((iAt,J$)=>{function nUe(t){var e=[];if(t!=null)for(var r in Object(t))e.push(r);return e}J$.exports=nUe});var V$=C((nAt,z$)=>{var sUe=Yn(),oUe=Qy(),aUe=W$(),AUe=Object.prototype,lUe=AUe.hasOwnProperty;function cUe(t){if(!sUe(t))return aUe(t);var e=oUe(t),r=[];for(var i in t)i=="constructor"&&(e||!lUe.call(t,i))||r.push(i);return r}z$.exports=cUe});var ku=C((sAt,X$)=>{var uUe=rk(),gUe=V$(),hUe=Xf();function fUe(t){return hUe(t)?uUe(t,!0):gUe(t)}X$.exports=fUe});var _$=C((oAt,Z$)=>{var pUe=Pu(),dUe=ku();function CUe(t,e){return t&&pUe(e,dUe(e),t)}Z$.exports=CUe});var Cv=C((wp,vu)=>{var mUe=Tn(),$$=typeof wp=="object"&&wp&&!wp.nodeType&&wp,eee=$$&&typeof vu=="object"&&vu&&!vu.nodeType&&vu,IUe=eee&&eee.exports===$$,tee=IUe?mUe.Buffer:void 0,ree=tee?tee.allocUnsafe:void 0;function EUe(t,e){if(e)return t.slice();var r=t.length,i=ree?ree(r):new t.constructor(r);return t.copy(i),i}vu.exports=EUe});var mv=C((aAt,iee)=>{function yUe(t,e){var r=-1,i=t.length;for(e||(e=Array(i));++r{var BUe=Pu(),wUe=Dy();function QUe(t,e){return BUe(t,wUe(t),e)}nee.exports=QUe});var eB=C((lAt,oee)=>{var bUe=ik(),DUe=bUe(Object.getPrototypeOf,Object);oee.exports=DUe});var Iv=C((cAt,aee)=>{var SUe=uy(),xUe=eB(),PUe=Dy(),kUe=lk(),vUe=Object.getOwnPropertySymbols,FUe=vUe?function(t){for(var e=[];t;)SUe(e,PUe(t)),t=xUe(t);return e}:kUe;aee.exports=FUe});var lee=C((uAt,Aee)=>{var RUe=Pu(),LUe=Iv();function NUe(t,e){return RUe(t,LUe(t),e)}Aee.exports=NUe});var uee=C((gAt,cee)=>{var MUe=Ak(),OUe=Iv(),KUe=ku();function TUe(t){return MUe(t,KUe,OUe)}cee.exports=TUe});var hee=C((hAt,gee)=>{var UUe=Object.prototype,HUe=UUe.hasOwnProperty;function YUe(t){var e=t.length,r=new t.constructor(e);return e&&typeof t[0]=="string"&&HUe.call(t,"index")&&(r.index=t.index,r.input=t.input),r}gee.exports=YUe});var tB=C((fAt,fee)=>{var pee=ok();function GUe(t){var e=new t.constructor(t.byteLength);return new pee(e).set(new pee(t)),e}fee.exports=GUe});var Cee=C((pAt,dee)=>{var jUe=tB();function qUe(t,e){var r=e?jUe(t.buffer):t.buffer;return new t.constructor(r,t.byteOffset,t.byteLength)}dee.exports=qUe});var Iee=C((dAt,mee)=>{var JUe=/\w*$/;function WUe(t){var e=new t.constructor(t.source,JUe.exec(t));return e.lastIndex=t.lastIndex,e}mee.exports=WUe});var Qee=C((CAt,Eee)=>{var yee=MA(),Bee=yee?yee.prototype:void 0,wee=Bee?Bee.valueOf:void 0;function zUe(t){return wee?Object(wee.call(t)):{}}Eee.exports=zUe});var Ev=C((mAt,bee)=>{var VUe=tB();function XUe(t,e){var r=e?VUe(t.buffer):t.buffer;return new t.constructor(r,t.byteOffset,t.length)}bee.exports=XUe});var See=C((IAt,Dee)=>{var ZUe=tB(),_Ue=Cee(),$Ue=Iee(),e1e=Qee(),t1e=Ev(),r1e="[object Boolean]",i1e="[object Date]",n1e="[object Map]",s1e="[object Number]",o1e="[object RegExp]",a1e="[object Set]",A1e="[object String]",l1e="[object Symbol]",c1e="[object ArrayBuffer]",u1e="[object DataView]",g1e="[object Float32Array]",h1e="[object Float64Array]",f1e="[object Int8Array]",p1e="[object Int16Array]",d1e="[object Int32Array]",C1e="[object Uint8Array]",m1e="[object Uint8ClampedArray]",I1e="[object Uint16Array]",E1e="[object Uint32Array]";function y1e(t,e,r){var i=t.constructor;switch(e){case c1e:return ZUe(t);case r1e:case i1e:return new i(+t);case u1e:return _Ue(t,r);case g1e:case h1e:case f1e:case p1e:case d1e:case C1e:case m1e:case I1e:case E1e:return t1e(t,r);case n1e:return new i;case s1e:case A1e:return new i(t);case o1e:return $Ue(t);case a1e:return new i;case l1e:return e1e(t)}}Dee.exports=y1e});var kee=C((EAt,xee)=>{var B1e=Yn(),Pee=Object.create,w1e=function(){function t(){}return function(e){if(!B1e(e))return{};if(Pee)return Pee(e);t.prototype=e;var r=new t;return t.prototype=void 0,r}}();xee.exports=w1e});var yv=C((yAt,vee)=>{var Q1e=kee(),b1e=eB(),D1e=Qy();function S1e(t){return typeof t.constructor=="function"&&!D1e(t)?Q1e(b1e(t)):{}}vee.exports=S1e});var Ree=C((BAt,Fee)=>{var x1e=_f(),P1e=cs(),k1e="[object Map]";function v1e(t){return P1e(t)&&x1e(t)==k1e}Fee.exports=v1e});var Oee=C((wAt,Lee)=>{var F1e=Ree(),R1e=yy(),Nee=By(),Mee=Nee&&Nee.isMap,L1e=Mee?R1e(Mee):F1e;Lee.exports=L1e});var Tee=C((QAt,Kee)=>{var N1e=_f(),M1e=cs(),O1e="[object Set]";function K1e(t){return M1e(t)&&N1e(t)==O1e}Kee.exports=K1e});var Gee=C((bAt,Uee)=>{var T1e=Tee(),U1e=yy(),Hee=By(),Yee=Hee&&Hee.isSet,H1e=Yee?U1e(Yee):T1e;Uee.exports=H1e});var zee=C((DAt,jee)=>{var Y1e=Zf(),G1e=Y$(),j1e=ly(),q1e=q$(),J1e=_$(),W1e=Cv(),z1e=mv(),V1e=see(),X1e=lee(),Z1e=ck(),_1e=uee(),$1e=_f(),e2e=hee(),t2e=See(),r2e=yv(),i2e=dn(),n2e=Wf(),s2e=Oee(),o2e=Yn(),a2e=Gee(),A2e=Cu(),l2e=ku(),c2e=1,u2e=2,g2e=4,qee="[object Arguments]",h2e="[object Array]",f2e="[object Boolean]",p2e="[object Date]",d2e="[object Error]",Jee="[object Function]",C2e="[object GeneratorFunction]",m2e="[object Map]",I2e="[object Number]",Wee="[object Object]",E2e="[object RegExp]",y2e="[object Set]",B2e="[object String]",w2e="[object Symbol]",Q2e="[object WeakMap]",b2e="[object ArrayBuffer]",D2e="[object DataView]",S2e="[object Float32Array]",x2e="[object Float64Array]",P2e="[object Int8Array]",k2e="[object Int16Array]",v2e="[object Int32Array]",F2e="[object Uint8Array]",R2e="[object Uint8ClampedArray]",L2e="[object Uint16Array]",N2e="[object Uint32Array]",Lt={};Lt[qee]=Lt[h2e]=Lt[b2e]=Lt[D2e]=Lt[f2e]=Lt[p2e]=Lt[S2e]=Lt[x2e]=Lt[P2e]=Lt[k2e]=Lt[v2e]=Lt[m2e]=Lt[I2e]=Lt[Wee]=Lt[E2e]=Lt[y2e]=Lt[B2e]=Lt[w2e]=Lt[F2e]=Lt[R2e]=Lt[L2e]=Lt[N2e]=!0;Lt[d2e]=Lt[Jee]=Lt[Q2e]=!1;function rB(t,e,r,i,n,s){var o,a=e&c2e,l=e&u2e,c=e&g2e;if(r&&(o=n?r(t,i,n,s):r(t)),o!==void 0)return o;if(!o2e(t))return t;var u=i2e(t);if(u){if(o=e2e(t),!a)return z1e(t,o)}else{var g=$1e(t),h=g==Jee||g==C2e;if(n2e(t))return W1e(t,a);if(g==Wee||g==qee||h&&!n){if(o=l||h?{}:r2e(t),!a)return l?X1e(t,J1e(o,t)):V1e(t,q1e(o,t))}else{if(!Lt[g])return n?t:{};o=t2e(t,g,a)}}s||(s=new Y1e);var f=s.get(t);if(f)return f;s.set(t,o),a2e(t)?t.forEach(function(I){o.add(rB(I,e,r,I,t,s))}):s2e(t)&&t.forEach(function(I,y){o.set(y,rB(I,e,r,y,t,s))});var p=c?l?_1e:Z1e:l?l2e:A2e,m=u?void 0:p(t);return G1e(m||t,function(I,y){m&&(y=I,I=t[y]),j1e(o,y,rB(I,e,r,y,t,s))}),o}jee.exports=rB});var Bv=C((SAt,Vee)=>{var M2e=zee(),O2e=1,K2e=4;function T2e(t){return M2e(t,O2e|K2e)}Vee.exports=T2e});var Zee=C((xAt,Xee)=>{var U2e=FP();function H2e(t,e,r){return t==null?t:U2e(t,e,r)}Xee.exports=H2e});var ite=C((LAt,rte)=>{function Y2e(t){var e=t==null?0:t.length;return e?t[e-1]:void 0}rte.exports=Y2e});var ste=C((NAt,nte)=>{var G2e=Of(),j2e=bS();function q2e(t,e){return e.length<2?t:G2e(t,j2e(e,0,-1))}nte.exports=q2e});var ate=C((MAt,ote)=>{var J2e=uu(),W2e=ite(),z2e=ste(),V2e=el();function X2e(t,e){return e=J2e(e,t),t=z2e(t,e),t==null||delete t[V2e(W2e(e))]}ote.exports=X2e});var lte=C((OAt,Ate)=>{var Z2e=ate();function _2e(t,e){return t==null?!0:Z2e(t,e)}Ate.exports=_2e});var mte=C((hlt,Cte)=>{Cte.exports={name:"@yarnpkg/cli",version:"3.0.0-rc.9",license:"BSD-2-Clause",main:"./sources/index.ts",dependencies:{"@yarnpkg/core":"workspace:^3.0.0-rc.9","@yarnpkg/fslib":"workspace:^2.5.0-rc.9","@yarnpkg/libzip":"workspace:^2.2.2-rc.7","@yarnpkg/parsers":"workspace:^2.4.0-rc.7","@yarnpkg/plugin-compat":"workspace:^3.0.0-rc.9","@yarnpkg/plugin-dlx":"workspace:^3.0.0-rc.9","@yarnpkg/plugin-essentials":"workspace:^3.0.0-rc.9","@yarnpkg/plugin-file":"workspace:^2.2.1-rc.9","@yarnpkg/plugin-git":"workspace:^2.4.0-rc.9","@yarnpkg/plugin-github":"workspace:^2.2.0-rc.9","@yarnpkg/plugin-http":"workspace:^2.1.3-rc.9","@yarnpkg/plugin-init":"workspace:^3.0.0-rc.9","@yarnpkg/plugin-link":"workspace:^2.1.2-rc.9","@yarnpkg/plugin-node-modules":"workspace:^3.0.0-rc.9","@yarnpkg/plugin-npm":"workspace:^2.5.0-rc.9","@yarnpkg/plugin-npm-cli":"workspace:^3.0.0-rc.9","@yarnpkg/plugin-pack":"workspace:^3.0.0-rc.9","@yarnpkg/plugin-patch":"workspace:^3.0.0-rc.9","@yarnpkg/plugin-pnp":"workspace:^3.0.0-rc.9","@yarnpkg/shell":"workspace:^3.0.0-rc.9",chalk:"^3.0.0","ci-info":"^2.0.0",clipanion:"^3.0.0",semver:"^7.1.2",tslib:"^1.13.0",typanion:"^3.3.0",yup:"^0.32.9"},devDependencies:{"@types/ci-info":"^2","@types/semver":"^7.1.0","@types/yup":"^0","@yarnpkg/builder":"workspace:*","@yarnpkg/monorepo":"workspace:*","@yarnpkg/pnpify":"workspace:*",micromatch:"^4.0.2",typescript:"^4.3.2"},peerDependencies:{"@yarnpkg/core":"^3.0.0-rc.9"},scripts:{postpack:"rm -rf lib",prepack:'run build:compile "$(pwd)"',"build:cli+hook":"run build:pnp:hook && builder build bundle","build:cli":"builder build bundle","run:cli":"builder run","update-local":"run build:cli --no-git-hash && rsync -a --delete bundles/ bin/"},publishConfig:{main:"./lib/index.js",types:"./lib/index.d.ts",bin:null},files:["/lib/**/*","!/lib/pluginConfiguration.*","!/lib/cli.*"],"@yarnpkg/builder":{bundles:{standard:["@yarnpkg/plugin-essentials","@yarnpkg/plugin-compat","@yarnpkg/plugin-dlx","@yarnpkg/plugin-file","@yarnpkg/plugin-git","@yarnpkg/plugin-github","@yarnpkg/plugin-http","@yarnpkg/plugin-init","@yarnpkg/plugin-link","@yarnpkg/plugin-node-modules","@yarnpkg/plugin-npm","@yarnpkg/plugin-npm-cli","@yarnpkg/plugin-pack","@yarnpkg/plugin-patch","@yarnpkg/plugin-pnp"]}},repository:{type:"git",url:"ssh://git@github.com/yarnpkg/berry.git",directory:"packages/yarnpkg-cli"},engines:{node:">=12 <14 || 14.2 - 14.9 || >14.10.0"},stableVersion:"2.4.0"}});var Vv=C((Xft,fre)=>{"use strict";fre.exports=function(e,r){r===!0&&(r=0);var i=e.indexOf("://"),n=e.substring(0,i).split("+").filter(Boolean);return typeof r=="number"?n[r]:n}});var Xv=C((Zft,pre)=>{"use strict";var DHe=Vv();function dre(t){if(Array.isArray(t))return t.indexOf("ssh")!==-1||t.indexOf("rsync")!==-1;if(typeof t!="string")return!1;var e=DHe(t);return t=t.substring(t.indexOf("://")+3),dre(e)?!0:t.indexOf("@"){"use strict";var SHe=Vv(),xHe=Xv(),PHe=require("querystring");function kHe(t){t=(t||"").trim();var e={protocols:SHe(t),protocol:null,port:null,resource:"",user:"",pathname:"",hash:"",search:"",href:t,query:Object.create(null)},r=t.indexOf("://"),i=-1,n=null,s=null;t.startsWith(".")&&(t.startsWith("./")&&(t=t.substring(2)),e.pathname=t,e.protocol="file");var o=t.charAt(1);return e.protocol||(e.protocol=e.protocols[0],e.protocol||(xHe(t)?e.protocol="ssh":((o==="/"||o==="~")&&(t=t.substring(2)),e.protocol="file"))),r!==-1&&(t=t.substring(r+3)),s=t.split("/"),e.protocol!=="file"?e.resource=s.shift():e.resource="",n=e.resource.split("@"),n.length===2&&(e.user=n[0],e.resource=n[1]),n=e.resource.split(":"),n.length===2&&(e.resource=n[0],n[1]?(e.port=Number(n[1]),isNaN(e.port)&&(e.port=null,s.unshift(n[1]))):e.port=null),s=s.filter(Boolean),e.protocol==="file"?e.pathname=e.href:e.pathname=e.pathname||(e.protocol!=="file"||e.href[0]==="/"?"/":"")+s.join("/"),n=e.pathname.split("#"),n.length===2&&(e.pathname=n[0],e.hash=n[1]),n=e.pathname.split("?"),n.length===2&&(e.pathname=n[0],e.search=n[1]),e.query=PHe.parse(e.search),e.href=e.href.replace(/\/$/,""),e.pathname=e.pathname.replace(/\/$/,""),e}Cre.exports=kHe});var yre=C(($ft,Ire)=>{"use strict";var vHe=typeof URL=="undefined"?require("url").URL:URL,Ere=(t,e)=>e.some(r=>r instanceof RegExp?r.test(t):r===t);Ire.exports=(t,e)=>{e=Object.assign({defaultProtocol:"http:",normalizeProtocol:!0,forceHttp:!1,forceHttps:!1,stripHash:!0,stripWWW:!0,removeQueryParameters:[/^utm_\w+/i],removeTrailingSlash:!0,removeDirectoryIndex:!1,sortQueryParameters:!0},e),Reflect.has(e,"normalizeHttps")&&(e.forceHttp=e.normalizeHttps),Reflect.has(e,"normalizeHttp")&&(e.forceHttps=e.normalizeHttp),Reflect.has(e,"stripFragment")&&(e.stripHash=e.stripFragment),t=t.trim();let r=t.startsWith("//");!r&&/^\.*\//.test(t)||(t=t.replace(/^(?!(?:\w+:)?\/\/)|^\/\//,e.defaultProtocol));let n=new vHe(t);if(e.forceHttp&&e.forceHttps)throw new Error("The `forceHttp` and `forceHttps` options cannot be used together");if(e.forceHttp&&n.protocol==="https:"&&(n.protocol="http:"),e.forceHttps&&n.protocol==="http:"&&(n.protocol="https:"),e.stripHash&&(n.hash=""),n.pathname&&(n.pathname=n.pathname.replace(/((?![https?:]).)\/{2,}/g,(s,o)=>/^(?!\/)/g.test(o)?`${o}/`:"/")),n.pathname&&(n.pathname=decodeURI(n.pathname)),e.removeDirectoryIndex===!0&&(e.removeDirectoryIndex=[/^index\.[a-z]+$/]),Array.isArray(e.removeDirectoryIndex)&&e.removeDirectoryIndex.length>0){let s=n.pathname.split("/"),o=s[s.length-1];Ere(o,e.removeDirectoryIndex)&&(s=s.slice(0,s.length-1),n.pathname=s.slice(1).join("/")+"/")}if(n.hostname&&(n.hostname=n.hostname.replace(/\.$/,""),e.stripWWW&&/^www\.([a-z\-\d]{2,63})\.([a-z\.]{2,5})$/.test(n.hostname)&&(n.hostname=n.hostname.replace(/^www\./,""))),Array.isArray(e.removeQueryParameters))for(let s of[...n.searchParams.keys()])Ere(s,e.removeQueryParameters)&&n.searchParams.delete(s);return e.sortQueryParameters&&n.searchParams.sort(),t=n.toString(),(e.removeTrailingSlash||n.pathname==="/")&&(t=t.replace(/\/$/,"")),r&&!e.normalizeProtocol&&(t=t.replace(/^http:\/\//,"//")),t}});var wre=C((ept,Bre)=>{"use strict";var FHe=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},RHe=mre(),LHe=yre();function NHe(t){var e=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1;if(typeof t!="string"||!t.trim())throw new Error("Invalid url.");e&&((typeof e=="undefined"?"undefined":FHe(e))!=="object"&&(e={stripFragment:!1}),t=LHe(t,e));var r=RHe(t);return r}Bre.exports=NHe});var Dre=C((tpt,Qre)=>{"use strict";var MHe=wre(),bre=Xv();function OHe(t){var e=MHe(t);e.token="";var r=e.user.split(":");return r.length===2&&(r[1]==="x-oauth-basic"?e.token=r[0]:r[0]==="x-token-auth"&&(e.token=r[1])),bre(e.protocols)||bre(t)?e.protocol="ssh":e.protocols.length?e.protocol=e.protocols[0]:e.protocol="file",e.href=e.href.replace(/\/$/,""),e}Qre.exports=OHe});var xre=C((rpt,Sre)=>{"use strict";var KHe=Dre();function Zv(t){if(typeof t!="string")throw new Error("The url must be a string.");var e=KHe(t),r=e.resource.split("."),i=null;switch(e.toString=function(l){return Zv.stringify(this,l)},e.source=r.length>2?r.slice(1-r.length).join("."):e.source=e.resource,e.git_suffix=/\.git$/.test(e.pathname),e.name=decodeURIComponent(e.pathname.replace(/^\//,"").replace(/\.git$/,"")),e.owner=decodeURIComponent(e.user),e.source){case"git.cloudforge.com":e.owner=e.user,e.organization=r[0],e.source="cloudforge.com";break;case"visualstudio.com":if(e.resource==="vs-ssh.visualstudio.com"){i=e.name.split("/"),i.length===4&&(e.organization=i[1],e.owner=i[2],e.name=i[3],e.full_name=i[2]+"/"+i[3]);break}else{i=e.name.split("/"),i.length===2?(e.owner=i[1],e.name=i[1],e.full_name="_git/"+e.name):i.length===3?(e.name=i[2],i[0]==="DefaultCollection"?(e.owner=i[2],e.organization=i[0],e.full_name=e.organization+"/_git/"+e.name):(e.owner=i[0],e.full_name=e.owner+"/_git/"+e.name)):i.length===4&&(e.organization=i[0],e.owner=i[1],e.name=i[3],e.full_name=e.organization+"/"+e.owner+"/_git/"+e.name);break}case"dev.azure.com":case"azure.com":if(e.resource==="ssh.dev.azure.com"){i=e.name.split("/"),i.length===4&&(e.organization=i[1],e.owner=i[2],e.name=i[3]);break}else{i=e.name.split("/"),i.length===5?(e.organization=i[0],e.owner=i[1],e.name=i[4],e.full_name="_git/"+e.name):i.length===3?(e.name=i[2],i[0]==="DefaultCollection"?(e.owner=i[2],e.organization=i[0],e.full_name=e.organization+"/_git/"+e.name):(e.owner=i[0],e.full_name=e.owner+"/_git/"+e.name)):i.length===4&&(e.organization=i[0],e.owner=i[1],e.name=i[3],e.full_name=e.organization+"/"+e.owner+"/_git/"+e.name);break}default:i=e.name.split("/");var n=i.length-1;if(i.length>=2){var s=i.indexOf("blob",2),o=i.indexOf("tree",2),a=i.indexOf("commit",2);n=s>0?s-1:o>0?o-1:a>0?a-1:n,e.owner=i.slice(0,n).join("/"),e.name=i[n],a&&(e.commit=i[n+2])}e.ref="",e.filepathtype="",e.filepath="",i.length>n+2&&["blob","tree"].indexOf(i[n+1])>=0&&(e.filepathtype=i[n+1],e.ref=i[n+2],i.length>n+3&&(e.filepath=i.slice(n+3).join("/"))),e.organization=e.owner;break}return e.full_name||(e.full_name=e.owner,e.name&&(e.full_name&&(e.full_name+="/"),e.full_name+=e.name)),e}Zv.stringify=function(t,e){e=e||(t.protocols&&t.protocols.length?t.protocols.join("+"):t.protocol);var r=t.port?":"+t.port:"",i=t.user||"git",n=t.git_suffix?".git":"";switch(e){case"ssh":return r?"ssh://"+i+"@"+t.resource+r+"/"+t.full_name+n:i+"@"+t.resource+":"+t.full_name+n;case"git+ssh":case"ssh+git":case"ftp":case"ftps":return e+"://"+i+"@"+t.resource+r+"/"+t.full_name+n;case"http":case"https":var s=t.token?THe(t):t.user&&(t.protocols.includes("http")||t.protocols.includes("https"))?t.user+"@":"";return e+"://"+s+t.resource+r+"/"+t.full_name+n;default:return t.href}};function THe(t){switch(t.source){case"bitbucket.org":return"x-token-auth:"+t.token+"@";default:return t.token+"@"}}Sre.exports=Zv});var uF=C((Wpt,Mre)=>{var zHe=gu(),VHe=Au();function XHe(t,e,r){(r!==void 0&&!VHe(t[e],r)||r===void 0&&!(e in t))&&zHe(t,e,r)}Mre.exports=XHe});var Kre=C((zpt,Ore)=>{var ZHe=Xf(),_He=cs();function $He(t){return _He(t)&&ZHe(t)}Ore.exports=$He});var Hre=C((Vpt,Tre)=>{var eYe=OA(),tYe=eB(),rYe=cs(),iYe="[object Object]",nYe=Function.prototype,sYe=Object.prototype,Ure=nYe.toString,oYe=sYe.hasOwnProperty,aYe=Ure.call(Object);function AYe(t){if(!rYe(t)||eYe(t)!=iYe)return!1;var e=tYe(t);if(e===null)return!0;var r=oYe.call(e,"constructor")&&e.constructor;return typeof r=="function"&&r instanceof r&&Ure.call(r)==aYe}Tre.exports=AYe});var gF=C((Xpt,Yre)=>{function lYe(t,e){if(!(e==="constructor"&&typeof t[e]=="function")&&e!="__proto__")return t[e]}Yre.exports=lYe});var jre=C((Zpt,Gre)=>{var cYe=Pu(),uYe=ku();function gYe(t){return cYe(t,uYe(t))}Gre.exports=gYe});var Xre=C((_pt,qre)=>{var Jre=uF(),hYe=Cv(),fYe=Ev(),pYe=mv(),dYe=yv(),Wre=Tf(),zre=dn(),CYe=Kre(),mYe=Wf(),IYe=oy(),EYe=Yn(),yYe=Hre(),BYe=wy(),Vre=gF(),wYe=jre();function QYe(t,e,r,i,n,s,o){var a=Vre(t,r),l=Vre(e,r),c=o.get(l);if(c){Jre(t,r,c);return}var u=s?s(a,l,r+"",t,e,o):void 0,g=u===void 0;if(g){var h=zre(l),f=!h&&mYe(l),p=!h&&!f&&BYe(l);u=l,h||f||p?zre(a)?u=a:CYe(a)?u=pYe(a):f?(g=!1,u=hYe(l,!0)):p?(g=!1,u=fYe(l,!0)):u=[]:yYe(l)||Wre(l)?(u=a,Wre(a)?u=wYe(a):(!EYe(a)||IYe(a))&&(u=dYe(l))):g=!1}g&&(o.set(l,u),n(u,l,i,s,o),o.delete(l)),Jre(t,r,u)}qre.exports=QYe});var $re=C(($pt,Zre)=>{var bYe=Zf(),DYe=uF(),SYe=ek(),xYe=Xre(),PYe=Yn(),kYe=ku(),vYe=gF();function _re(t,e,r,i,n){t!==e&&SYe(e,function(s,o){if(n||(n=new bYe),PYe(s))xYe(t,e,o,r,_re,i,n);else{var a=i?i(vYe(t,o),s,o+"",t,e,n):void 0;a===void 0&&(a=s),DYe(t,o,a)}},kYe)}Zre.exports=_re});var tie=C((edt,eie)=>{var FYe=gy(),RYe=NP(),LYe=MP();function NYe(t,e){return LYe(RYe(t,e,FYe),t+"")}eie.exports=NYe});var iie=C((tdt,rie)=>{var MYe=Au(),OYe=Xf(),KYe=Kf(),TYe=Yn();function UYe(t,e,r){if(!TYe(r))return!1;var i=typeof e;return(i=="number"?OYe(r)&&KYe(e,r.length):i=="string"&&e in r)?MYe(r[e],t):!1}rie.exports=UYe});var sie=C((rdt,nie)=>{var HYe=tie(),YYe=iie();function GYe(t){return HYe(function(e,r){var i=-1,n=r.length,s=n>1?r[n-1]:void 0,o=n>2?r[2]:void 0;for(s=t.length>3&&typeof s=="function"?(n--,s):void 0,o&&YYe(r[0],r[1],o)&&(s=n<3?void 0:s,n=1),e=Object(e);++i{var jYe=$re(),qYe=sie(),JYe=qYe(function(t,e,r){jYe(t,e,r)});oie.exports=JYe});var xie=C((jCt,Sie)=>{var vF;Sie.exports=()=>(typeof vF=="undefined"&&(vF=require("zlib").brotliDecompressSync(Buffer.from("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","base64")).toString()),vF)});var Lie=C(RF=>{function Mu(t,e){if(typeof t=="string")return t;if(t){let r,i;if(Array.isArray(t)){for(r=0;r0)return(g=Mu(n[u],c))?g.replace("*",l.substring(u.length-1)):pl(i,l,1)}return pl(i,l)}}function EGe(t,e={}){let r=0,i,n=e.browser,s=e.fields||["module","main"];for(n&&!s.includes("browser")&&s.unshift("browser");r{(function(t){HF&&typeof HF=="object"&&typeof YF!="undefined"?YF.exports=t():typeof define=="function"&&define.amd?define([],t):typeof window!="undefined"?window.isWindows=t():typeof global!="undefined"?global.isWindows=t():typeof self!="undefined"?self.isWindows=t():this.isWindows=t()})(function(){"use strict";return function(){return process&&(process.platform==="win32"||/^(msys|cygwin)$/.test(process.env.OSTYPE))}})});var zie=C((EIt,qie)=>{"use strict";GF.ifExists=kGe;var Tu=require("util"),bn=require("path"),Jie=jie(),vGe=/^#!\s*(?:\/usr\/bin\/env)?\s*([^ \t]+)(.*)$/,FGe={createPwshFile:!0,createCmdFile:Jie(),fs:require("fs")},RGe=new Map([[".js","node"],[".cjs","node"],[".mjs","node"],[".cmd","cmd"],[".bat","cmd"],[".ps1","pwsh"],[".sh","sh"]]);function Wie(t){let e=k(k({},FGe),t),r=e.fs;return e.fs_={chmod:r.chmod?Tu.promisify(r.chmod):async()=>{},mkdir:Tu.promisify(r.mkdir),readFile:Tu.promisify(r.readFile),stat:Tu.promisify(r.stat),unlink:Tu.promisify(r.unlink),writeFile:Tu.promisify(r.writeFile)},e}async function GF(t,e,r){let i=Wie(r);await i.fs_.stat(t),await LGe(t,e,i)}function kGe(t,e,r){return GF(t,e,r).catch(()=>{})}function NGe(t,e){return e.fs_.unlink(t).catch(()=>{})}async function LGe(t,e,r){let i=await KGe(t,r);return await MGe(e,r),OGe(t,e,i,r)}function MGe(t,e){return e.fs_.mkdir(bn.dirname(t),{recursive:!0})}function OGe(t,e,r,i){let n=Wie(i),s=[{generator:HGe,extension:""}];return n.createCmdFile&&s.push({generator:UGe,extension:".cmd"}),n.createPwshFile&&s.push({generator:YGe,extension:".ps1"}),Promise.all(s.map(o=>TGe(t,e+o.extension,r,o.generator,n)))}function GGe(t,e){return NGe(t,e)}function qGe(t,e){return jGe(t,e)}async function KGe(t,e){let n=(await e.fs_.readFile(t,"utf8")).trim().split(/\r*\n/)[0].match(vGe);if(!n){let s=bn.extname(t).toLowerCase();return{program:RGe.get(s)||null,additionalArgs:""}}return{program:n[1],additionalArgs:n[2]}}async function TGe(t,e,r,i,n){let s=n.preserveSymlinks?"--preserve-symlinks":"",o=[r.additionalArgs,s].filter(a=>a).join(" ");return n=Object.assign({},n,{prog:r.program,args:o}),await GGe(e,n),await n.fs_.writeFile(e,i(t,e,n),"utf8"),qGe(e,n)}function UGe(t,e,r){let n=bn.relative(bn.dirname(e),t).split("/").join("\\"),s=bn.isAbsolute(n)?`"${n}"`:`"%~dp0\\${n}"`,o,a=r.prog,l=r.args||"",c=jF(r.nodePath).win32;a?(o=`"%~dp0\\${a}.exe"`,n=s):(a=s,l="",n="");let u=r.progArgs?`${r.progArgs.join(" ")} `:"",g=c?`@SET NODE_PATH=${c}\r `:"";return o?g+=`@IF EXIST ${o} (\r ${o} ${l} ${n} ${u}%*\r ) ELSE (\r @@ -106,7 +105,7 @@ attempted value: ${s} ${a} ${l} ${n} ${u}%*\r )\r `:g+=`@${a} ${l} ${n} ${u}%*\r -`,g}function VHe(t,e,r){let i=dn.relative(dn.dirname(e),t),n=r.prog&&r.prog.split("\\").join("/"),s;i=i.split("\\").join("/");let o=dn.isAbsolute(i)?`"${i}"`:`"$basedir/${i}"`,a=r.args||"",l=Rv(r.nodePath).posix;n?(s=`"$basedir/${r.prog}"`,i=o):(n=o,a="",i="");let c=r.progArgs?`${r.progArgs.join(" ")} `:"",u=`#!/bin/sh +`,g}function HGe(t,e,r){let i=bn.relative(bn.dirname(e),t),n=r.prog&&r.prog.split("\\").join("/"),s;i=i.split("\\").join("/");let o=bn.isAbsolute(i)?`"${i}"`:`"$basedir/${i}"`,a=r.args||"",l=jF(r.nodePath).posix;n?(s=`"$basedir/${r.prog}"`,i=o):(n=o,a="",i="");let c=r.progArgs?`${r.progArgs.join(" ")} `:"",u=`#!/bin/sh basedir=$(dirname "$(echo "$0" | sed -e 's,\\\\,/,g')") case \`uname\` in @@ -121,7 +120,7 @@ else fi `:u+=`${g}${n} ${a} ${i} ${c}"$@" exit $? -`,u}function ZHe(t,e,r){let i=dn.relative(dn.dirname(e),t),n=r.prog&&r.prog.split("\\").join("/"),s=n&&`"${n}$exe"`,o;i=i.split("\\").join("/");let a=dn.isAbsolute(i)?`"${i}"`:`"$basedir/${i}"`,l=r.args||"",c=Rv(r.nodePath),u=c.win32,g=c.posix;s?(o=`"$basedir/${r.prog}$exe"`,i=a):(s=a,l="",i="");let h=r.progArgs?`${r.progArgs.join(" ")} `:"",f=`#!/usr/bin/env pwsh +`,u}function YGe(t,e,r){let i=bn.relative(bn.dirname(e),t),n=r.prog&&r.prog.split("\\").join("/"),s=n&&`"${n}$exe"`,o;i=i.split("\\").join("/");let a=bn.isAbsolute(i)?`"${i}"`:`"$basedir/${i}"`,l=r.args||"",c=jF(r.nodePath),u=c.win32,g=c.posix;s?(o=`"$basedir/${r.prog}$exe"`,i=a):(s=a,l="",i="");let h=r.progArgs?`${r.progArgs.join(" ")} `:"",f=`#!/usr/bin/env pwsh $basedir=Split-Path $MyInvocation.MyCommand.Definition -Parent $exe="" @@ -163,173 +162,182 @@ if ($MyInvocation.ExpectingInput) { } ${r.nodePath?`$env:NODE_PATH=$env_node_path `:""}exit $LASTEXITCODE -`,f}function $He(t,e){return e.fs_.chmod(t,493)}function Rv(t){if(!t)return{win32:"",posix:""};let e=typeof t=="string"?t.split(dn.delimiter):Array.from(t),r={};for(let i=0;i`/mnt/${a.toLowerCase()}`):e[i];r.win32=r.win32?`${r.win32};${n}`:n,r.posix=r.posix?`${r.posix}:${s}`:s,r[i]={win32:n,posix:s}}return r}gre.exports=Fv});var $v=C((Bmt,vre)=>{vre.exports=require("stream")});var Mre=C((wmt,Fre)=>{"use strict";function Rre(t,e){var r=Object.keys(t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(t);e&&(i=i.filter(function(n){return Object.getOwnPropertyDescriptor(t,n).enumerable})),r.push.apply(r,i)}return r}function EYe(t){for(var e=1;e0?this.tail.next=i:this.head=i,this.tail=i,++this.length}},{key:"unshift",value:function(r){var i={data:r,next:this.head};this.length===0&&(this.tail=i),this.head=i,++this.length}},{key:"shift",value:function(){if(this.length!==0){var r=this.head.data;return this.length===1?this.head=this.tail=null:this.head=this.head.next,--this.length,r}}},{key:"clear",value:function(){this.head=this.tail=null,this.length=0}},{key:"join",value:function(r){if(this.length===0)return"";for(var i=this.head,n=""+i.data;i=i.next;)n+=r+i.data;return n}},{key:"concat",value:function(r){if(this.length===0)return by.alloc(0);for(var i=by.allocUnsafe(r>>>0),n=this.head,s=0;n;)DYe(n.data,i,s),s+=n.data.length,n=n.next;return i}},{key:"consume",value:function(r,i){var n;return ro.length?o.length:r;if(a===o.length?s+=o:s+=o.slice(0,r),r-=a,r===0){a===o.length?(++n,i.next?this.head=i.next:this.head=this.tail=null):(this.head=i,i.data=o.slice(a));break}++n}return this.length-=n,s}},{key:"_getBuffer",value:function(r){var i=by.allocUnsafe(r),n=this.head,s=1;for(n.data.copy(i),r-=n.data.length;n=n.next;){var o=n.data,a=r>o.length?o.length:r;if(o.copy(i,i.length-r,0,a),r-=a,r===0){a===o.length?(++s,n.next?this.head=n.next:this.head=this.tail=null):(this.head=n,n.data=o.slice(a));break}++s}return this.length-=s,i}},{key:bYe,value:function(r,i){return eF(this,EYe({},i,{depth:0,customInspect:!1}))}}]),t}()});var rF=C((Qmt,Nre)=>{"use strict";function SYe(t,e){var r=this,i=this._readableState&&this._readableState.destroyed,n=this._writableState&&this._writableState.destroyed;return i||n?(e?e(t):t&&(this._writableState?this._writableState.errorEmitted||(this._writableState.errorEmitted=!0,process.nextTick(tF,this,t)):process.nextTick(tF,this,t)),this):(this._readableState&&(this._readableState.destroyed=!0),this._writableState&&(this._writableState.destroyed=!0),this._destroy(t||null,function(s){!e&&s?r._writableState?r._writableState.errorEmitted?process.nextTick(Dy,r):(r._writableState.errorEmitted=!0,process.nextTick(Ore,r,s)):process.nextTick(Ore,r,s):e?(process.nextTick(Dy,r),e(s)):process.nextTick(Dy,r)}),this)}function Ore(t,e){tF(t,e),Dy(t)}function Dy(t){t._writableState&&!t._writableState.emitClose||t._readableState&&!t._readableState.emitClose||t.emit("close")}function PYe(){this._readableState&&(this._readableState.destroyed=!1,this._readableState.reading=!1,this._readableState.ended=!1,this._readableState.endEmitted=!1),this._writableState&&(this._writableState.destroyed=!1,this._writableState.ended=!1,this._writableState.ending=!1,this._writableState.finalCalled=!1,this._writableState.prefinished=!1,this._writableState.finished=!1,this._writableState.errorEmitted=!1)}function tF(t,e){t.emit("error",e)}function xYe(t,e){var r=t._readableState,i=t._writableState;r&&r.autoDestroy||i&&i.autoDestroy?t.destroy(e):t.emit("error",e)}Nre.exports={destroy:SYe,undestroy:PYe,errorOrDestroy:xYe}});var ca=C((bmt,Tre)=>{"use strict";var Kre={};function Cn(t,e,r){r||(r=Error);function i(s,o,a){return typeof e=="string"?e:e(s,o,a)}class n extends r{constructor(o,a,l){super(i(o,a,l))}}n.prototype.name=r.name,n.prototype.code=t,Kre[t]=n}function Ure(t,e){if(Array.isArray(t)){let r=t.length;return t=t.map(i=>String(i)),r>2?`one of ${e} ${t.slice(0,r-1).join(", ")}, or `+t[r-1]:r===2?`one of ${e} ${t[0]} or ${t[1]}`:`of ${e} ${t[0]}`}else return`of ${e} ${String(t)}`}function kYe(t,e,r){return t.substr(!r||r<0?0:+r,e.length)===e}function vYe(t,e,r){return(r===void 0||r>t.length)&&(r=t.length),t.substring(r-e.length,r)===e}function FYe(t,e,r){return typeof r!="number"&&(r=0),r+e.length>t.length?!1:t.indexOf(e,r)!==-1}Cn("ERR_INVALID_OPT_VALUE",function(t,e){return'The value "'+e+'" is invalid for option "'+t+'"'},TypeError);Cn("ERR_INVALID_ARG_TYPE",function(t,e,r){let i;typeof e=="string"&&kYe(e,"not ")?(i="must not be",e=e.replace(/^not /,"")):i="must be";let n;if(vYe(t," argument"))n=`The ${t} ${i} ${Ure(e,"type")}`;else{let s=FYe(t,".")?"property":"argument";n=`The "${t}" ${s} ${i} ${Ure(e,"type")}`}return n+=`. Received type ${typeof r}`,n},TypeError);Cn("ERR_STREAM_PUSH_AFTER_EOF","stream.push() after EOF");Cn("ERR_METHOD_NOT_IMPLEMENTED",function(t){return"The "+t+" method is not implemented"});Cn("ERR_STREAM_PREMATURE_CLOSE","Premature close");Cn("ERR_STREAM_DESTROYED",function(t){return"Cannot call "+t+" after a stream was destroyed"});Cn("ERR_MULTIPLE_CALLBACK","Callback called multiple times");Cn("ERR_STREAM_CANNOT_PIPE","Cannot pipe, not readable");Cn("ERR_STREAM_WRITE_AFTER_END","write after end");Cn("ERR_STREAM_NULL_VALUES","May not write null values to stream",TypeError);Cn("ERR_UNKNOWN_ENCODING",function(t){return"Unknown encoding: "+t},TypeError);Cn("ERR_STREAM_UNSHIFT_AFTER_END_EVENT","stream.unshift() after end event");Tre.exports.codes=Kre});var iF=C((Dmt,Hre)=>{"use strict";var RYe=ca().codes.ERR_INVALID_OPT_VALUE;function LYe(t,e,r){return t.highWaterMark!=null?t.highWaterMark:e?t[r]:null}function MYe(t,e,r,i){var n=LYe(e,i,r);if(n!=null){if(!(isFinite(n)&&Math.floor(n)===n)||n<0){var s=i?r:"highWaterMark";throw new RYe(s,n)}return Math.floor(n)}return t.objectMode?16:16*1024}Hre.exports={getHighWaterMark:MYe}});var Yre=C((Smt,nF)=>{typeof Object.create=="function"?nF.exports=function(e,r){r&&(e.super_=r,e.prototype=Object.create(r.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}))}:nF.exports=function(e,r){if(r){e.super_=r;var i=function(){};i.prototype=r.prototype,e.prototype=new i,e.prototype.constructor=e}}});var ZA=C((Pmt,sF)=>{try{if(oF=require("util"),typeof oF.inherits!="function")throw"";sF.exports=oF.inherits}catch(t){sF.exports=Yre()}var oF});var Gre=C((xmt,jre)=>{jre.exports=require("util").deprecate});var lF=C((kmt,qre)=>{"use strict";qre.exports=Zt;function Jre(t){var e=this;this.next=null,this.entry=null,this.finish=function(){NYe(e,t)}}var fu;Zt.WritableState=Sp;var OYe={deprecate:Gre()},Wre=$v(),Sy=require("buffer").Buffer,TYe=global.Uint8Array||function(){};function KYe(t){return Sy.from(t)}function UYe(t){return Sy.isBuffer(t)||t instanceof TYe}var aF=rF(),HYe=iF(),YYe=HYe.getHighWaterMark,ua=ca().codes,jYe=ua.ERR_INVALID_ARG_TYPE,GYe=ua.ERR_METHOD_NOT_IMPLEMENTED,qYe=ua.ERR_MULTIPLE_CALLBACK,JYe=ua.ERR_STREAM_CANNOT_PIPE,WYe=ua.ERR_STREAM_DESTROYED,zYe=ua.ERR_STREAM_NULL_VALUES,XYe=ua.ERR_STREAM_WRITE_AFTER_END,VYe=ua.ERR_UNKNOWN_ENCODING,pu=aF.errorOrDestroy;ZA()(Zt,Wre);function ZYe(){}function Sp(t,e,r){fu=fu||_A(),t=t||{},typeof r!="boolean"&&(r=e instanceof fu),this.objectMode=!!t.objectMode,r&&(this.objectMode=this.objectMode||!!t.writableObjectMode),this.highWaterMark=YYe(this,t,"writableHighWaterMark",r),this.finalCalled=!1,this.needDrain=!1,this.ending=!1,this.ended=!1,this.finished=!1,this.destroyed=!1;var i=t.decodeStrings===!1;this.decodeStrings=!i,this.defaultEncoding=t.defaultEncoding||"utf8",this.length=0,this.writing=!1,this.corked=0,this.sync=!0,this.bufferProcessing=!1,this.onwrite=function(n){_Ye(e,n)},this.writecb=null,this.writelen=0,this.bufferedRequest=null,this.lastBufferedRequest=null,this.pendingcb=0,this.prefinished=!1,this.errorEmitted=!1,this.emitClose=t.emitClose!==!1,this.autoDestroy=!!t.autoDestroy,this.bufferedRequestCount=0,this.corkedRequestsFree=new Jre(this)}Sp.prototype.getBuffer=function(){for(var e=this.bufferedRequest,r=[];e;)r.push(e),e=e.next;return r};(function(){try{Object.defineProperty(Sp.prototype,"buffer",{get:OYe.deprecate(function(){return this.getBuffer()},"_writableState.buffer is deprecated. Use _writableState.getBuffer instead.","DEP0003")})}catch(t){}})();var Py;typeof Symbol=="function"&&Symbol.hasInstance&&typeof Function.prototype[Symbol.hasInstance]=="function"?(Py=Function.prototype[Symbol.hasInstance],Object.defineProperty(Zt,Symbol.hasInstance,{value:function(e){return Py.call(this,e)?!0:this!==Zt?!1:e&&e._writableState instanceof Sp}})):Py=function(e){return e instanceof this};function Zt(t){fu=fu||_A();var e=this instanceof fu;if(!e&&!Py.call(Zt,this))return new Zt(t);this._writableState=new Sp(t,this,e),this.writable=!0,t&&(typeof t.write=="function"&&(this._write=t.write),typeof t.writev=="function"&&(this._writev=t.writev),typeof t.destroy=="function"&&(this._destroy=t.destroy),typeof t.final=="function"&&(this._final=t.final)),Wre.call(this)}Zt.prototype.pipe=function(){pu(this,new JYe)};function $Ye(t,e){var r=new XYe;pu(t,r),process.nextTick(e,r)}function eje(t,e,r,i){var n;return r===null?n=new zYe:typeof r!="string"&&!e.objectMode&&(n=new jYe("chunk",["string","Buffer"],r)),n?(pu(t,n),process.nextTick(i,n),!1):!0}Zt.prototype.write=function(t,e,r){var i=this._writableState,n=!1,s=!i.objectMode&&UYe(t);return s&&!Sy.isBuffer(t)&&(t=KYe(t)),typeof e=="function"&&(r=e,e=null),s?e="buffer":e||(e=i.defaultEncoding),typeof r!="function"&&(r=ZYe),i.ending?$Ye(this,r):(s||eje(this,i,t,r))&&(i.pendingcb++,n=tje(this,i,s,t,e,r)),n};Zt.prototype.cork=function(){this._writableState.corked++};Zt.prototype.uncork=function(){var t=this._writableState;t.corked&&(t.corked--,!t.writing&&!t.corked&&!t.bufferProcessing&&t.bufferedRequest&&zre(this,t))};Zt.prototype.setDefaultEncoding=function(e){if(typeof e=="string"&&(e=e.toLowerCase()),!(["hex","utf8","utf-8","ascii","binary","base64","ucs2","ucs-2","utf16le","utf-16le","raw"].indexOf((e+"").toLowerCase())>-1))throw new VYe(e);return this._writableState.defaultEncoding=e,this};Object.defineProperty(Zt.prototype,"writableBuffer",{enumerable:!1,get:function(){return this._writableState&&this._writableState.getBuffer()}});function rje(t,e,r){return!t.objectMode&&t.decodeStrings!==!1&&typeof e=="string"&&(e=Sy.from(e,r)),e}Object.defineProperty(Zt.prototype,"writableHighWaterMark",{enumerable:!1,get:function(){return this._writableState.highWaterMark}});function tje(t,e,r,i,n,s){if(!r){var o=rje(e,i,n);i!==o&&(r=!0,n="buffer",i=o)}var a=e.objectMode?1:i.length;e.length+=a;var l=e.length{"use strict";var lje=Object.keys||function(t){var e=[];for(var r in t)e.push(r);return e};Zre.exports=us;var _re=cF(),uF=lF();ZA()(us,_re);{gF=lje(uF.prototype);for(var hF=0;hF{var ky=require("buffer"),so=ky.Buffer;function eie(t,e){for(var r in t)e[r]=t[r]}so.from&&so.alloc&&so.allocUnsafe&&so.allocUnsafeSlow?$re.exports=ky:(eie(ky,fF),fF.Buffer=du);function du(t,e,r){return so(t,e,r)}eie(so,du);du.from=function(t,e,r){if(typeof t=="number")throw new TypeError("Argument must not be a number");return so(t,e,r)};du.alloc=function(t,e,r){if(typeof t!="number")throw new TypeError("Argument must be a number");var i=so(t);return e!==void 0?typeof r=="string"?i.fill(e,r):i.fill(e):i.fill(0),i};du.allocUnsafe=function(t){if(typeof t!="number")throw new TypeError("Argument must be a number");return so(t)};du.allocUnsafeSlow=function(t){if(typeof t!="number")throw new TypeError("Argument must be a number");return ky.SlowBuffer(t)}});var CF=C(rie=>{"use strict";var pF=tie().Buffer,iie=pF.isEncoding||function(t){switch(t=""+t,t&&t.toLowerCase()){case"hex":case"utf8":case"utf-8":case"ascii":case"binary":case"base64":case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":case"raw":return!0;default:return!1}};function gje(t){if(!t)return"utf8";for(var e;;)switch(t){case"utf8":case"utf-8":return"utf8";case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return"utf16le";case"latin1":case"binary":return"latin1";case"base64":case"ascii":case"hex":return t;default:if(e)return;t=(""+t).toLowerCase(),e=!0}}function hje(t){var e=gje(t);if(typeof e!="string"&&(pF.isEncoding===iie||!iie(t)))throw new Error("Unknown encoding: "+t);return e||t}rie.StringDecoder=xp;function xp(t){this.encoding=hje(t);var e;switch(this.encoding){case"utf16le":this.text=pje,this.end=dje,e=4;break;case"utf8":this.fillLast=fje,e=4;break;case"base64":this.text=Cje,this.end=mje,e=3;break;default:this.write=Ije,this.end=Eje;return}this.lastNeed=0,this.lastTotal=0,this.lastChar=pF.allocUnsafe(e)}xp.prototype.write=function(t){if(t.length===0)return"";var e,r;if(this.lastNeed){if(e=this.fillLast(t),e===void 0)return"";r=this.lastNeed,this.lastNeed=0}else r=0;return r>5==6?2:t>>4==14?3:t>>3==30?4:t>>6==2?-1:-2}function wje(t,e,r){var i=e.length-1;if(i=0?(n>0&&(t.lastNeed=n-1),n):--i=0?(n>0&&(t.lastNeed=n-2),n):--i=0?(n>0&&(n===2?n=0:t.lastNeed=n-3),n):0))}function Qje(t,e,r){if((e[0]&192)!=128)return t.lastNeed=0,"\uFFFD";if(t.lastNeed>1&&e.length>1){if((e[1]&192)!=128)return t.lastNeed=1,"\uFFFD";if(t.lastNeed>2&&e.length>2&&(e[2]&192)!=128)return t.lastNeed=2,"\uFFFD"}}function fje(t){var e=this.lastTotal-this.lastNeed,r=Qje(this,t,e);if(r!==void 0)return r;if(this.lastNeed<=t.length)return t.copy(this.lastChar,e,0,this.lastNeed),this.lastChar.toString(this.encoding,0,this.lastTotal);t.copy(this.lastChar,e,0,t.length),this.lastNeed-=t.length}function Bje(t,e){var r=wje(this,t,e);if(!this.lastNeed)return t.toString("utf8",e);this.lastTotal=r;var i=t.length-(r-this.lastNeed);return t.copy(this.lastChar,0,i),t.toString("utf8",e,i)}function yje(t){var e=t&&t.length?this.write(t):"";return this.lastNeed?e+"\uFFFD":e}function pje(t,e){if((t.length-e)%2==0){var r=t.toString("utf16le",e);if(r){var i=r.charCodeAt(r.length-1);if(i>=55296&&i<=56319)return this.lastNeed=2,this.lastTotal=4,this.lastChar[0]=t[t.length-2],this.lastChar[1]=t[t.length-1],r.slice(0,-1)}return r}return this.lastNeed=1,this.lastTotal=2,this.lastChar[0]=t[t.length-1],t.toString("utf16le",e,t.length-1)}function dje(t){var e=t&&t.length?this.write(t):"";if(this.lastNeed){var r=this.lastTotal-this.lastNeed;return e+this.lastChar.toString("utf16le",0,r)}return e}function Cje(t,e){var r=(t.length-e)%3;return r===0?t.toString("base64",e):(this.lastNeed=3-r,this.lastTotal=3,r===1?this.lastChar[0]=t[t.length-1]:(this.lastChar[0]=t[t.length-2],this.lastChar[1]=t[t.length-1]),t.toString("base64",e,t.length-r))}function mje(t){var e=t&&t.length?this.write(t):"";return this.lastNeed?e+this.lastChar.toString("base64",0,3-this.lastNeed):e}function Ije(t){return t.toString(this.encoding)}function Eje(t){return t&&t.length?this.write(t):""}});var vy=C((Rmt,nie)=>{"use strict";var sie=ca().codes.ERR_STREAM_PREMATURE_CLOSE;function bje(t){var e=!1;return function(){if(!e){e=!0;for(var r=arguments.length,i=new Array(r),n=0;n{"use strict";var Fy;function ga(t,e,r){return e in t?Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):t[e]=r,t}var Pje=vy(),ha=Symbol("lastResolve"),$A=Symbol("lastReject"),kp=Symbol("error"),Ry=Symbol("ended"),el=Symbol("lastPromise"),mF=Symbol("handlePromise"),tl=Symbol("stream");function fa(t,e){return{value:t,done:e}}function xje(t){var e=t[ha];if(e!==null){var r=t[tl].read();r!==null&&(t[el]=null,t[ha]=null,t[$A]=null,e(fa(r,!1)))}}function kje(t){process.nextTick(xje,t)}function vje(t,e){return function(r,i){t.then(function(){if(e[Ry]){r(fa(void 0,!0));return}e[mF](r,i)},i)}}var Fje=Object.getPrototypeOf(function(){}),Rje=Object.setPrototypeOf((Fy={get stream(){return this[tl]},next:function(){var e=this,r=this[kp];if(r!==null)return Promise.reject(r);if(this[Ry])return Promise.resolve(fa(void 0,!0));if(this[tl].destroyed)return new Promise(function(o,a){process.nextTick(function(){e[kp]?a(e[kp]):o(fa(void 0,!0))})});var i=this[el],n;if(i)n=new Promise(vje(i,this));else{var s=this[tl].read();if(s!==null)return Promise.resolve(fa(s,!1));n=new Promise(this[mF])}return this[el]=n,n}},ga(Fy,Symbol.asyncIterator,function(){return this}),ga(Fy,"return",function(){var e=this;return new Promise(function(r,i){e[tl].destroy(null,function(n){if(n){i(n);return}r(fa(void 0,!0))})})}),Fy),Fje),Lje=function(e){var r,i=Object.create(Rje,(r={},ga(r,tl,{value:e,writable:!0}),ga(r,ha,{value:null,writable:!0}),ga(r,$A,{value:null,writable:!0}),ga(r,kp,{value:null,writable:!0}),ga(r,Ry,{value:e._readableState.endEmitted,writable:!0}),ga(r,mF,{value:function(s,o){var a=i[tl].read();a?(i[el]=null,i[ha]=null,i[$A]=null,s(fa(a,!1))):(i[ha]=s,i[$A]=o)},writable:!0}),r));return i[el]=null,Pje(e,function(n){if(n&&n.code!=="ERR_STREAM_PREMATURE_CLOSE"){var s=i[$A];s!==null&&(i[el]=null,i[ha]=null,i[$A]=null,s(n)),i[kp]=n;return}var o=i[ha];o!==null&&(i[el]=null,i[ha]=null,i[$A]=null,o(fa(void 0,!0))),i[Ry]=!0}),e.on("readable",kje.bind(null,i)),i};aie.exports=Lje});var gie=C((Mmt,lie)=>{"use strict";function cie(t,e,r,i,n,s,o){try{var a=t[s](o),l=a.value}catch(c){r(c);return}a.done?e(l):Promise.resolve(l).then(i,n)}function Mje(t){return function(){var e=this,r=arguments;return new Promise(function(i,n){var s=t.apply(e,r);function o(l){cie(s,i,n,o,a,"next",l)}function a(l){cie(s,i,n,o,a,"throw",l)}o(void 0)})}}function uie(t,e){var r=Object.keys(t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(t);e&&(i=i.filter(function(n){return Object.getOwnPropertyDescriptor(t,n).enumerable})),r.push.apply(r,i)}return r}function Oje(t){for(var e=1;e{"use strict";hie.exports=ht;var Cu;ht.ReadableState=fie;var Nmt=require("events").EventEmitter,pie=function(e,r){return e.listeners(r).length},vp=$v(),Ly=require("buffer").Buffer,Uje=global.Uint8Array||function(){};function Hje(t){return Ly.from(t)}function Yje(t){return Ly.isBuffer(t)||t instanceof Uje}var IF=require("util"),at;IF&&IF.debuglog?at=IF.debuglog("stream"):at=function(){};var jje=Mre(),EF=rF(),Gje=iF(),qje=Gje.getHighWaterMark,My=ca().codes,Jje=My.ERR_INVALID_ARG_TYPE,Wje=My.ERR_STREAM_PUSH_AFTER_EOF,zje=My.ERR_METHOD_NOT_IMPLEMENTED,Xje=My.ERR_STREAM_UNSHIFT_AFTER_END_EVENT,mu,yF,BF;ZA()(ht,vp);var Fp=EF.errorOrDestroy,wF=["error","close","destroy","pause","resume"];function Vje(t,e,r){if(typeof t.prependListener=="function")return t.prependListener(e,r);!t._events||!t._events[e]?t.on(e,r):Array.isArray(t._events[e])?t._events[e].unshift(r):t._events[e]=[r,t._events[e]]}function fie(t,e,r){Cu=Cu||_A(),t=t||{},typeof r!="boolean"&&(r=e instanceof Cu),this.objectMode=!!t.objectMode,r&&(this.objectMode=this.objectMode||!!t.readableObjectMode),this.highWaterMark=qje(this,t,"readableHighWaterMark",r),this.buffer=new jje,this.length=0,this.pipes=null,this.pipesCount=0,this.flowing=null,this.ended=!1,this.endEmitted=!1,this.reading=!1,this.sync=!0,this.needReadable=!1,this.emittedReadable=!1,this.readableListening=!1,this.resumeScheduled=!1,this.paused=!0,this.emitClose=t.emitClose!==!1,this.autoDestroy=!!t.autoDestroy,this.destroyed=!1,this.defaultEncoding=t.defaultEncoding||"utf8",this.awaitDrain=0,this.readingMore=!1,this.decoder=null,this.encoding=null,t.encoding&&(mu||(mu=CF().StringDecoder),this.decoder=new mu(t.encoding),this.encoding=t.encoding)}function ht(t){if(Cu=Cu||_A(),!(this instanceof ht))return new ht(t);var e=this instanceof Cu;this._readableState=new fie(t,this,e),this.readable=!0,t&&(typeof t.read=="function"&&(this._read=t.read),typeof t.destroy=="function"&&(this._destroy=t.destroy)),vp.call(this)}Object.defineProperty(ht.prototype,"destroyed",{enumerable:!1,get:function(){return this._readableState===void 0?!1:this._readableState.destroyed},set:function(e){!this._readableState||(this._readableState.destroyed=e)}});ht.prototype.destroy=EF.destroy;ht.prototype._undestroy=EF.undestroy;ht.prototype._destroy=function(t,e){e(t)};ht.prototype.push=function(t,e){var r=this._readableState,i;return r.objectMode?i=!0:typeof t=="string"&&(e=e||r.defaultEncoding,e!==r.encoding&&(t=Ly.from(t,e),e=""),i=!0),die(this,t,e,!1,i)};ht.prototype.unshift=function(t){return die(this,t,null,!0,!1)};function die(t,e,r,i,n){at("readableAddChunk",e);var s=t._readableState;if(e===null)s.reading=!1,_je(t,s);else{var o;if(n||(o=Zje(s,e)),o)Fp(t,o);else if(s.objectMode||e&&e.length>0)if(typeof e!="string"&&!s.objectMode&&Object.getPrototypeOf(e)!==Ly.prototype&&(e=Hje(e)),i)s.endEmitted?Fp(t,new Xje):QF(t,s,e,!0);else if(s.ended)Fp(t,new Wje);else{if(s.destroyed)return!1;s.reading=!1,s.decoder&&!r?(e=s.decoder.write(e),s.objectMode||e.length!==0?QF(t,s,e,!1):bF(t,s)):QF(t,s,e,!1)}else i||(s.reading=!1,bF(t,s))}return!s.ended&&(s.length=Cie?t=Cie:(t--,t|=t>>>1,t|=t>>>2,t|=t>>>4,t|=t>>>8,t|=t>>>16,t++),t}function mie(t,e){return t<=0||e.length===0&&e.ended?0:e.objectMode?1:t!==t?e.flowing&&e.length?e.buffer.head.data.length:e.length:(t>e.highWaterMark&&(e.highWaterMark=$je(t)),t<=e.length?t:e.ended?e.length:(e.needReadable=!0,0))}ht.prototype.read=function(t){at("read",t),t=parseInt(t,10);var e=this._readableState,r=t;if(t!==0&&(e.emittedReadable=!1),t===0&&e.needReadable&&((e.highWaterMark!==0?e.length>=e.highWaterMark:e.length>0)||e.ended))return at("read: emitReadable",e.length,e.ended),e.length===0&&e.ended?DF(this):Ny(this),null;if(t=mie(t,e),t===0&&e.ended)return e.length===0&&DF(this),null;var i=e.needReadable;at("need readable",i),(e.length===0||e.length-t0?n=Iie(t,e):n=null,n===null?(e.needReadable=e.length<=e.highWaterMark,t=0):(e.length-=t,e.awaitDrain=0),e.length===0&&(e.ended||(e.needReadable=!0),r!==t&&e.ended&&DF(this)),n!==null&&this.emit("data",n),n};function _je(t,e){if(at("onEofChunk"),!e.ended){if(e.decoder){var r=e.decoder.end();r&&r.length&&(e.buffer.push(r),e.length+=e.objectMode?1:r.length)}e.ended=!0,e.sync?Ny(t):(e.needReadable=!1,e.emittedReadable||(e.emittedReadable=!0,Eie(t)))}}function Ny(t){var e=t._readableState;at("emitReadable",e.needReadable,e.emittedReadable),e.needReadable=!1,e.emittedReadable||(at("emitReadable",e.flowing),e.emittedReadable=!0,process.nextTick(Eie,t))}function Eie(t){var e=t._readableState;at("emitReadable_",e.destroyed,e.length,e.ended),!e.destroyed&&(e.length||e.ended)&&(t.emit("readable"),e.emittedReadable=!1),e.needReadable=!e.flowing&&!e.ended&&e.length<=e.highWaterMark,SF(t)}function bF(t,e){e.readingMore||(e.readingMore=!0,process.nextTick(eGe,t,e))}function eGe(t,e){for(;!e.reading&&!e.ended&&(e.length1&&yie(i.pipes,t)!==-1)&&!c&&(at("false write response, pause",i.awaitDrain),i.awaitDrain++),r.pause())}function h(I){at("onerror",I),m(),t.removeListener("error",h),pie(t,"error")===0&&Fp(t,I)}Vje(t,"error",h);function f(){t.removeListener("finish",p),m()}t.once("close",f);function p(){at("onfinish"),t.removeListener("close",f),m()}t.once("finish",p);function m(){at("unpipe"),r.unpipe(t)}return t.emit("pipe",r),i.flowing||(at("pipe resume"),r.resume()),t};function tGe(t){return function(){var r=t._readableState;at("pipeOnDrain",r.awaitDrain),r.awaitDrain&&r.awaitDrain--,r.awaitDrain===0&&pie(t,"data")&&(r.flowing=!0,SF(t))}}ht.prototype.unpipe=function(t){var e=this._readableState,r={hasUnpiped:!1};if(e.pipesCount===0)return this;if(e.pipesCount===1)return t&&t!==e.pipes?this:(t||(t=e.pipes),e.pipes=null,e.pipesCount=0,e.flowing=!1,t&&t.emit("unpipe",this,r),this);if(!t){var i=e.pipes,n=e.pipesCount;e.pipes=null,e.pipesCount=0,e.flowing=!1;for(var s=0;s0,i.flowing!==!1&&this.resume()):t==="readable"&&!i.endEmitted&&!i.readableListening&&(i.readableListening=i.needReadable=!0,i.flowing=!1,i.emittedReadable=!1,at("on readable",i.length,i.reading),i.length?Ny(this):i.reading||process.nextTick(rGe,this)),r};ht.prototype.addListener=ht.prototype.on;ht.prototype.removeListener=function(t,e){var r=vp.prototype.removeListener.call(this,t,e);return t==="readable"&&process.nextTick(Bie,this),r};ht.prototype.removeAllListeners=function(t){var e=vp.prototype.removeAllListeners.apply(this,arguments);return(t==="readable"||t===void 0)&&process.nextTick(Bie,this),e};function Bie(t){var e=t._readableState;e.readableListening=t.listenerCount("readable")>0,e.resumeScheduled&&!e.paused?e.flowing=!0:t.listenerCount("data")>0&&t.resume()}function rGe(t){at("readable nexttick read 0"),t.read(0)}ht.prototype.resume=function(){var t=this._readableState;return t.flowing||(at("resume"),t.flowing=!t.readableListening,iGe(this,t)),t.paused=!1,this};function iGe(t,e){e.resumeScheduled||(e.resumeScheduled=!0,process.nextTick(nGe,t,e))}function nGe(t,e){at("resume",e.reading),e.reading||t.read(0),e.resumeScheduled=!1,t.emit("resume"),SF(t),e.flowing&&!e.reading&&t.read(0)}ht.prototype.pause=function(){return at("call pause flowing=%j",this._readableState.flowing),this._readableState.flowing!==!1&&(at("pause"),this._readableState.flowing=!1,this.emit("pause")),this._readableState.paused=!0,this};function SF(t){var e=t._readableState;for(at("flow",e.flowing);e.flowing&&t.read()!==null;);}ht.prototype.wrap=function(t){var e=this,r=this._readableState,i=!1;t.on("end",function(){if(at("wrapped end"),r.decoder&&!r.ended){var o=r.decoder.end();o&&o.length&&e.push(o)}e.push(null)}),t.on("data",function(o){if(at("wrapped data"),r.decoder&&(o=r.decoder.write(o)),!(r.objectMode&&o==null)&&!(!r.objectMode&&(!o||!o.length))){var a=e.push(o);a||(i=!0,t.pause())}});for(var n in t)this[n]===void 0&&typeof t[n]=="function"&&(this[n]=function(a){return function(){return t[a].apply(t,arguments)}}(n));for(var s=0;s=e.length?(e.decoder?r=e.buffer.join(""):e.buffer.length===1?r=e.buffer.first():r=e.buffer.concat(e.length),e.buffer.clear()):r=e.buffer.consume(t,e.decoder),r}function DF(t){var e=t._readableState;at("endReadable",e.endEmitted),e.endEmitted||(e.ended=!0,process.nextTick(sGe,e,t))}function sGe(t,e){if(at("endReadableNT",t.endEmitted,t.length),!t.endEmitted&&t.length===0&&(t.endEmitted=!0,e.readable=!1,e.emit("end"),t.autoDestroy)){var r=e._writableState;(!r||r.autoDestroy&&r.finished)&&e.destroy()}}typeof Symbol=="function"&&(ht.from=function(t,e){return BF===void 0&&(BF=gie()),BF(ht,t,e)});function yie(t,e){for(var r=0,i=t.length;r{"use strict";wie.exports=oo;var Oy=ca().codes,oGe=Oy.ERR_METHOD_NOT_IMPLEMENTED,aGe=Oy.ERR_MULTIPLE_CALLBACK,AGe=Oy.ERR_TRANSFORM_ALREADY_TRANSFORMING,lGe=Oy.ERR_TRANSFORM_WITH_LENGTH_0,Ty=_A();ZA()(oo,Ty);function cGe(t,e){var r=this._transformState;r.transforming=!1;var i=r.writecb;if(i===null)return this.emit("error",new aGe);r.writechunk=null,r.writecb=null,e!=null&&this.push(e),i(t);var n=this._readableState;n.reading=!1,(n.needReadable||n.length{"use strict";bie.exports=Rp;var Die=PF();ZA()(Rp,Die);function Rp(t){if(!(this instanceof Rp))return new Rp(t);Die.call(this,t)}Rp.prototype._transform=function(t,e,r){r(null,t)}});var Fie=C((Umt,Pie)=>{"use strict";var xF;function gGe(t){var e=!1;return function(){e||(e=!0,t.apply(void 0,arguments))}}var xie=ca().codes,hGe=xie.ERR_MISSING_ARGS,fGe=xie.ERR_STREAM_DESTROYED;function kie(t){if(t)throw t}function pGe(t){return t.setHeader&&typeof t.abort=="function"}function dGe(t,e,r,i){i=gGe(i);var n=!1;t.on("close",function(){n=!0}),xF===void 0&&(xF=vy()),xF(t,{readable:e,writable:r},function(o){if(o)return i(o);n=!0,i()});var s=!1;return function(o){if(!n&&!s){if(s=!0,pGe(t))return t.abort();if(typeof t.destroy=="function")return t.destroy();i(o||new fGe("pipe"))}}}function vie(t){t()}function CGe(t,e){return t.pipe(e)}function mGe(t){return!t.length||typeof t[t.length-1]!="function"?kie:t.pop()}function IGe(){for(var t=arguments.length,e=new Array(t),r=0;r0;return dGe(o,l,c,function(u){n||(n=u),u&&s.forEach(vie),!l&&(s.forEach(vie),i(n))})});return e.reduce(CGe)}Pie.exports=IGe});var Iu=C((mn,Lp)=>{var Mp=require("stream");process.env.READABLE_STREAM==="disable"&&Mp?(Lp.exports=Mp.Readable,Object.assign(Lp.exports,Mp),Lp.exports.Stream=Mp):(mn=Lp.exports=cF(),mn.Stream=Mp||mn,mn.Readable=mn,mn.Writable=lF(),mn.Duplex=_A(),mn.Transform=PF(),mn.PassThrough=Sie(),mn.finished=vy(),mn.pipeline=Fie())});var Lie=C((Hmt,Rie)=>{"use strict";var kF=Iu().Duplex,EGe=require("util");function Dt(t){if(!(this instanceof Dt))return new Dt(t);if(this._bufs=[],this.length=0,typeof t=="function"){this._callback=t;var e=function(i){this._callback&&(this._callback(i),this._callback=null)}.bind(this);this.on("pipe",function(i){i.on("error",e)}),this.on("unpipe",function(i){i.removeListener("error",e)})}else this.append(t);kF.call(this)}EGe.inherits(Dt,kF);Dt.prototype._offset=function(e){var r=0,i=0,n;if(e===0)return[0,0];for(;ithis.length||e<0)){var r=this._offset(e);return this._bufs[r[0]][r[1]]}};Dt.prototype.slice=function(e,r){return typeof e=="number"&&e<0&&(e+=this.length),typeof r=="number"&&r<0&&(r+=this.length),this.copy(null,0,e,r)};Dt.prototype.copy=function(e,r,i,n){if((typeof i!="number"||i<0)&&(i=0),(typeof n!="number"||n>this.length)&&(n=this.length),i>=this.length||n<=0)return e||Buffer.alloc(0);var s=!!e,o=this._offset(i),a=n-i,l=a,c=s&&r||0,u=o[1],g,h;if(i===0&&n==this.length){if(!s)return this._bufs.length===1?this._bufs[0]:Buffer.concat(this._bufs,this.length);for(h=0;hg)this._bufs[h].copy(e,c,u);else{this._bufs[h].copy(e,c,u,u+l);break}c+=g,l-=g,u&&(u=0)}return e};Dt.prototype.shallowSlice=function(e,r){if(e=e||0,r=typeof r!="number"?this.length:r,e<0&&(e+=this.length),r<0&&(r+=this.length),e===r)return new Dt;var i=this._offset(e),n=this._offset(r),s=this._bufs.slice(i[0],n[0]+1);return n[1]==0?s.pop():s[s.length-1]=s[s.length-1].slice(0,n[1]),i[1]!=0&&(s[0]=s[0].slice(i[1])),new Dt(s)};Dt.prototype.toString=function(e,r,i){return this.slice(r,i).toString(e)};Dt.prototype.consume=function(e){for(;this._bufs.length;)if(e>=this._bufs[0].length)e-=this._bufs[0].length,this.length-=this._bufs[0].length,this._bufs.shift();else{this._bufs[0]=this._bufs[0].slice(e),this.length-=e;break}return this};Dt.prototype.duplicate=function(){for(var e=0,r=new Dt;ethis.length?this.length:e;var i=this._offset(e),n=i[0],s=i[1];for(n;n=t.length){var l=o.indexOf(t,s);if(l!==-1)return this._reverseOffset([n,l]);s=o.length-t.length+1}else{var c=this._reverseOffset([n,s]);if(this._match(c,t))return c;s++}}s=0}return-1};Dt.prototype._match=function(t,e){if(this.length-t{var yGe=Buffer.alloc,BGe="0000000000000000000",wGe="7777777777777777777",Mie="0".charCodeAt(0),QGe="ustar\x0000",bGe=parseInt("7777",8),DGe=function(t,e,r){return typeof t!="number"?r:(t=~~t,t>=e?e:t>=0||(t+=e,t>=0)?t:0)},SGe=function(t){switch(t){case 0:return"file";case 1:return"link";case 2:return"symlink";case 3:return"character-device";case 4:return"block-device";case 5:return"directory";case 6:return"fifo";case 7:return"contiguous-file";case 72:return"pax-header";case 55:return"pax-global-header";case 27:return"gnu-long-link-path";case 28:case 30:return"gnu-long-path"}return null},PGe=function(t){switch(t){case"file":return 0;case"link":return 1;case"symlink":return 2;case"character-device":return 3;case"block-device":return 4;case"directory":return 5;case"fifo":return 6;case"contiguous-file":return 7;case"pax-header":return 72}return 0},Nie=function(t,e,r,i){for(;re?wGe.slice(0,e)+" ":BGe.slice(0,e-t.length)+t+" "};function xGe(t){var e;if(t[0]===128)e=!0;else if(t[0]===255)e=!1;else return null;for(var r=!1,i=[],n=t.length-1;n>0;n--){var s=t[n];e?i.push(s):r&&s===0?i.push(0):r?(r=!1,i.push(256-s)):i.push(255-s)}var o=0,a=i.length;for(n=0;n=Math.pow(10,r)&&r++,e+r+t};Eu.decodeLongPath=function(t,e){return yu(t,0,t.length,e)};Eu.encodePax=function(t){var e="";t.name&&(e+=vF(" path="+t.name+` -`)),t.linkname&&(e+=vF(" linkpath="+t.linkname+` -`));var r=t.pax;if(r)for(var i in r)e+=vF(" "+i+"="+r[i]+` -`);return Buffer.from(e)};Eu.decodePax=function(t){for(var e={};t.length;){for(var r=0;r100;){var n=r.indexOf("/");if(n===-1)return null;i+=i?"/"+r.slice(0,n):r.slice(0,n),r=r.slice(n+1)}return Buffer.byteLength(r)>100||Buffer.byteLength(i)>155||t.linkname&&Buffer.byteLength(t.linkname)>100?null:(e.write(r),e.write(pa(t.mode&bGe,6),100),e.write(pa(t.uid,6),108),e.write(pa(t.gid,6),116),e.write(pa(t.size,11),124),e.write(pa(t.mtime.getTime()/1e3|0,11),136),e[156]=Mie+PGe(t.type),t.linkname&&e.write(t.linkname,157),e.write(QGe,257),t.uname&&e.write(t.uname,265),t.gname&&e.write(t.gname,297),e.write(pa(t.devmajor||0,6),329),e.write(pa(t.devminor||0,6),337),i&&e.write(i,345),e.write(pa(Oie(e),6),148),e)};Eu.decode=function(t,e){var r=t[156]===0?0:t[156]-Mie,i=yu(t,0,100,e),n=da(t,100,8),s=da(t,108,8),o=da(t,116,8),a=da(t,124,12),l=da(t,136,12),c=SGe(r),u=t[157]===0?null:yu(t,157,100,e),g=yu(t,265,32),h=yu(t,297,32),f=da(t,329,8),p=da(t,337,8);t[345]&&(i=yu(t,345,155,e)+"/"+i),r===0&&i&&i[i.length-1]==="/"&&(r=5);var m=Oie(t);if(m===8*32)return null;if(m!==da(t,148,8))throw new Error("Invalid tar header. Maybe the tar is corrupted or it needs to be gunzipped?");return{name:i,mode:n,uid:s,gid:o,size:a,mtime:new Date(1e3*l),type:c,linkname:u,uname:g,gname:h,devmajor:f,devminor:p}}});var Gie=C((jmt,Tie)=>{var Kie=require("util"),kGe=Lie(),Np=FF(),Uie=Iu().Writable,Hie=Iu().PassThrough,Yie=function(){},jie=function(t){return t&=511,t&&512-t},vGe=function(t,e){var r=new Ky(t,e);return r.end(),r},FGe=function(t,e){return e.path&&(t.name=e.path),e.linkpath&&(t.linkname=e.linkpath),e.size&&(t.size=parseInt(e.size,10)),t.pax=e,t},Ky=function(t,e){this._parent=t,this.offset=e,Hie.call(this)};Kie.inherits(Ky,Hie);Ky.prototype.destroy=function(t){this._parent.destroy(t)};var ao=function(t){if(!(this instanceof ao))return new ao(t);Uie.call(this,t),t=t||{},this._offset=0,this._buffer=kGe(),this._missing=0,this._partial=!1,this._onparse=Yie,this._header=null,this._stream=null,this._overflow=null,this._cb=null,this._locked=!1,this._destroyed=!1,this._pax=null,this._paxGlobal=null,this._gnuLongPath=null,this._gnuLongLinkPath=null;var e=this,r=e._buffer,i=function(){e._continue()},n=function(h){if(e._locked=!1,h)return e.destroy(h);e._stream||i()},s=function(){e._stream=null;var h=jie(e._header.size);h?e._parse(h,o):e._parse(512,g),e._locked||i()},o=function(){e._buffer.consume(jie(e._header.size)),e._parse(512,g),i()},a=function(){var h=e._header.size;e._paxGlobal=Np.decodePax(r.slice(0,h)),r.consume(h),s()},l=function(){var h=e._header.size;e._pax=Np.decodePax(r.slice(0,h)),e._paxGlobal&&(e._pax=Object.assign({},e._paxGlobal,e._pax)),r.consume(h),s()},c=function(){var h=e._header.size;this._gnuLongPath=Np.decodeLongPath(r.slice(0,h),t.filenameEncoding),r.consume(h),s()},u=function(){var h=e._header.size;this._gnuLongLinkPath=Np.decodeLongPath(r.slice(0,h),t.filenameEncoding),r.consume(h),s()},g=function(){var h=e._offset,f;try{f=e._header=Np.decode(r.slice(0,512),t.filenameEncoding)}catch(p){e.emit("error",p)}if(r.consume(512),!f){e._parse(512,g),i();return}if(f.type==="gnu-long-path"){e._parse(f.size,c),i();return}if(f.type==="gnu-long-link-path"){e._parse(f.size,u),i();return}if(f.type==="pax-global-header"){e._parse(f.size,a),i();return}if(f.type==="pax-header"){e._parse(f.size,l),i();return}if(e._gnuLongPath&&(f.name=e._gnuLongPath,e._gnuLongPath=null),e._gnuLongLinkPath&&(f.linkname=e._gnuLongLinkPath,e._gnuLongLinkPath=null),e._pax&&(e._header=f=FGe(f,e._pax),e._pax=null),e._locked=!0,!f.size||f.type==="directory"){e._parse(512,g),e.emit("entry",f,vGe(e,h),n);return}e._stream=new Ky(e,h),e.emit("entry",f,e._stream,n),e._parse(f.size,s),i()};this._onheader=g,this._parse(512,g)};Kie.inherits(ao,Uie);ao.prototype.destroy=function(t){this._destroyed||(this._destroyed=!0,t&&this.emit("error",t),this.emit("close"),this._stream&&this._stream.emit("close"))};ao.prototype._parse=function(t,e){this._destroyed||(this._offset+=t,this._missing=t,e===this._onheader&&(this._partial=!1),this._onparse=e)};ao.prototype._continue=function(){if(!this._destroyed){var t=this._cb;this._cb=Yie,this._overflow?this._write(this._overflow,void 0,t):t()}};ao.prototype._write=function(t,e,r){if(!this._destroyed){var i=this._stream,n=this._buffer,s=this._missing;if(t.length&&(this._partial=!0),t.lengths&&(o=t.slice(s),t=t.slice(0,s)),i?i.end(t):n.append(t),this._overflow=o,this._onparse()}};ao.prototype._final=function(t){if(this._partial)return this.destroy(new Error("Unexpected end of data"));t()};Tie.exports=ao});var Jie=C((Gmt,qie)=>{qie.exports=require("fs").constants||require("constants")});var Zie=C((qmt,Wie)=>{var Bu=Jie(),zie=Q0(),Uy=ZA(),RGe=Buffer.alloc,Xie=Iu().Readable,wu=Iu().Writable,LGe=require("string_decoder").StringDecoder,Hy=FF(),MGe=parseInt("755",8),NGe=parseInt("644",8),Vie=RGe(1024),RF=function(){},LF=function(t,e){e&=511,e&&t.push(Vie.slice(0,512-e))};function OGe(t){switch(t&Bu.S_IFMT){case Bu.S_IFBLK:return"block-device";case Bu.S_IFCHR:return"character-device";case Bu.S_IFDIR:return"directory";case Bu.S_IFIFO:return"fifo";case Bu.S_IFLNK:return"symlink"}return"file"}var Yy=function(t){wu.call(this),this.written=0,this._to=t,this._destroyed=!1};Uy(Yy,wu);Yy.prototype._write=function(t,e,r){if(this.written+=t.length,this._to.push(t))return r();this._to._drain=r};Yy.prototype.destroy=function(){this._destroyed||(this._destroyed=!0,this.emit("close"))};var jy=function(){wu.call(this),this.linkname="",this._decoder=new LGe("utf-8"),this._destroyed=!1};Uy(jy,wu);jy.prototype._write=function(t,e,r){this.linkname+=this._decoder.write(t),r()};jy.prototype.destroy=function(){this._destroyed||(this._destroyed=!0,this.emit("close"))};var Op=function(){wu.call(this),this._destroyed=!1};Uy(Op,wu);Op.prototype._write=function(t,e,r){r(new Error("No body allowed for this entry"))};Op.prototype.destroy=function(){this._destroyed||(this._destroyed=!0,this.emit("close"))};var gs=function(t){if(!(this instanceof gs))return new gs(t);Xie.call(this,t),this._drain=RF,this._finalized=!1,this._finalizing=!1,this._destroyed=!1,this._stream=null};Uy(gs,Xie);gs.prototype.entry=function(t,e,r){if(this._stream)throw new Error("already piping an entry");if(!(this._finalized||this._destroyed)){typeof e=="function"&&(r=e,e=null),r||(r=RF);var i=this;if((!t.size||t.type==="symlink")&&(t.size=0),t.type||(t.type=OGe(t.mode)),t.mode||(t.mode=t.type==="directory"?MGe:NGe),t.uid||(t.uid=0),t.gid||(t.gid=0),t.mtime||(t.mtime=new Date),typeof e=="string"&&(e=Buffer.from(e)),Buffer.isBuffer(e))return t.size=e.length,this._encode(t),this.push(e),LF(i,t.size),process.nextTick(r),new Op;if(t.type==="symlink"&&!t.linkname){var n=new jy;return zie(n,function(o){if(o)return i.destroy(),r(o);t.linkname=n.linkname,i._encode(t),r()}),n}if(this._encode(t),t.type!=="file"&&t.type!=="contiguous-file")return process.nextTick(r),new Op;var s=new Yy(this);return this._stream=s,zie(s,function(o){if(i._stream=null,o)return i.destroy(),r(o);if(s.written!==t.size)return i.destroy(),r(new Error("size mismatch"));LF(i,t.size),i._finalizing&&i.finalize(),r()}),s}};gs.prototype.finalize=function(){if(this._stream){this._finalizing=!0;return}this._finalized||(this._finalized=!0,this.push(Vie),this.push(null))};gs.prototype.destroy=function(t){this._destroyed||(this._destroyed=!0,t&&this.emit("error",t),this.emit("close"),this._stream&&this._stream.destroy&&this._stream.destroy())};gs.prototype._encode=function(t){if(!t.pax){var e=Hy.encode(t);if(e){this.push(e);return}}this._encodePax(t)};gs.prototype._encodePax=function(t){var e=Hy.encodePax({name:t.name,linkname:t.linkname,pax:t.pax}),r={name:"PaxHeader",mode:t.mode,uid:t.uid,gid:t.gid,size:e.length,mtime:t.mtime,type:"pax-header",linkname:t.linkname&&"PaxHeader",uname:t.uname,gname:t.gname,devmajor:t.devmajor,devminor:t.devminor};this.push(Hy.encode(r)),this.push(e),LF(this,e.length),r.size=t.size,r.type=t.type,this.push(Hy.encode(r))};gs.prototype._read=function(t){var e=this._drain;this._drain=RF,e()};Wie.exports=gs});var _ie=C(MF=>{MF.extract=Gie();MF.pack=Zie()});var une=C((fIt,ane)=>{"use strict";var Qu=class{constructor(e,r,i){this.__specs=e||{},Object.keys(this.__specs).forEach(n=>{if(typeof this.__specs[n]=="string"){let s=this.__specs[n],o=this.__specs[s];if(o){let a=o.aliases||[];a.push(n,s),o.aliases=[...new Set(a)],this.__specs[n]=o}else throw new Error(`Alias refers to invalid key: ${s} -> ${n}`)}}),this.__opts=r||{},this.__providers=lne(i.filter(n=>n!=null&&typeof n=="object")),this.__isFiggyPudding=!0}get(e){return HF(this,e,!0)}get[Symbol.toStringTag](){return"FiggyPudding"}forEach(e,r=this){for(let[i,n]of this.entries())e.call(r,n,i,this)}toJSON(){let e={};return this.forEach((r,i)=>{e[i]=r}),e}*entries(e){for(let i of Object.keys(this.__specs))yield[i,this.get(i)];let r=e||this.__opts.other;if(r){let i=new Set;for(let n of this.__providers){let s=n.entries?n.entries(r):VGe(n);for(let[o,a]of s)r(o)&&!i.has(o)&&(i.add(o),yield[o,a])}}}*[Symbol.iterator](){for(let[e,r]of this.entries())yield[e,r]}*keys(){for(let[e]of this.entries())yield e}*values(){for(let[,e]of this.entries())yield e}concat(...e){return new Proxy(new Qu(this.__specs,this.__opts,lne(this.__providers).concat(e)),Ane)}};try{let t=require("util");Qu.prototype[t.inspect.custom]=function(e,r){return this[Symbol.toStringTag]+" "+t.inspect(this.toJSON(),r)}}catch(t){}function ZGe(t){throw Object.assign(new Error(`invalid config key requested: ${t}`),{code:"EBADKEY"})}function HF(t,e,r){let i=t.__specs[e];if(r&&!i&&(!t.__opts.other||!t.__opts.other(e)))ZGe(e);else{i||(i={});let n;for(let s of t.__providers){if(n=cne(e,s),n===void 0&&i.aliases&&i.aliases.length){for(let o of i.aliases)if(o!==e&&(n=cne(o,s),n!==void 0))break}if(n!==void 0)break}return n===void 0&&i.default!==void 0?typeof i.default=="function"?i.default(t):i.default:n}}function cne(t,e){let r;return e.__isFiggyPudding?r=HF(e,t,!1):typeof e.get=="function"?r=e.get(t):r=e[t],r}var Ane={has(t,e){return e in t.__specs&&HF(t,e,!1)!==void 0},ownKeys(t){return Object.keys(t.__specs)},get(t,e){return typeof e=="symbol"||e.slice(0,2)==="__"||e in Qu.prototype?t[e]:t.get(e)},set(t,e,r){if(typeof e=="symbol"||e.slice(0,2)==="__")return t[e]=r,!0;throw new Error("figgyPudding options cannot be modified. Use .concat() instead.")},deleteProperty(){throw new Error("figgyPudding options cannot be deleted. Use .concat() and shadow them instead.")}};ane.exports=_Ge;function _Ge(t,e){function r(...i){return new Proxy(new Qu(t,e,i),Ane)}return r}function lne(t){let e=[];return t.forEach(r=>e.unshift(r)),e}function VGe(t){return Object.keys(t).map(e=>[e,t[e]])}});var fne=C((pIt,hs)=>{"use strict";var Kp=require("crypto"),$Ge=une(),eqe=require("stream").Transform,gne=["sha256","sha384","sha512"],tqe=/^[a-z0-9+/]+(?:=?=?)$/i,rqe=/^([^-]+)-([^?]+)([?\S*]*)$/,iqe=/^([^-]+)-([A-Za-z0-9+/=]{44,88})(\?[\x21-\x7E]*)*$/,nqe=/^[\x21-\x7E]+$/,Ai=$Ge({algorithms:{default:["sha512"]},error:{default:!1},integrity:{},options:{default:[]},pickAlgorithm:{default:()=>sqe},Promise:{default:()=>Promise},sep:{default:" "},single:{default:!1},size:{},strict:{default:!1}}),rl=class{get isHash(){return!0}constructor(e,r){r=Ai(r);let i=!!r.strict;this.source=e.trim();let n=this.source.match(i?iqe:rqe);if(!n||i&&!gne.some(o=>o===n[1]))return;this.algorithm=n[1],this.digest=n[2];let s=n[3];this.options=s?s.slice(1).split("?"):[]}hexDigest(){return this.digest&&Buffer.from(this.digest,"base64").toString("hex")}toJSON(){return this.toString()}toString(e){if(e=Ai(e),e.strict&&!(gne.some(i=>i===this.algorithm)&&this.digest.match(tqe)&&(this.options||[]).every(i=>i.match(nqe))))return"";let r=this.options&&this.options.length?`?${this.options.join("?")}`:"";return`${this.algorithm}-${this.digest}${r}`}},bu=class{get isIntegrity(){return!0}toJSON(){return this.toString()}toString(e){e=Ai(e);let r=e.sep||" ";return e.strict&&(r=r.replace(/\S+/g," ")),Object.keys(this).map(i=>this[i].map(n=>rl.prototype.toString.call(n,e)).filter(n=>n.length).join(r)).filter(i=>i.length).join(r)}concat(e,r){r=Ai(r);let i=typeof e=="string"?e:Up(e,r);return fs(`${this.toString(r)} ${i}`,r)}hexDigest(){return fs(this,{single:!0}).hexDigest()}match(e,r){r=Ai(r);let i=fs(e,r),n=i.pickAlgorithm(r);return this[n]&&i[n]&&this[n].find(s=>i[n].find(o=>s.digest===o.digest))||!1}pickAlgorithm(e){e=Ai(e);let r=e.pickAlgorithm,i=Object.keys(this);if(!i.length)throw new Error(`No algorithms available for ${JSON.stringify(this.toString())}`);return i.reduce((n,s)=>r(n,s)||n)}};hs.exports.parse=fs;function fs(t,e){if(e=Ai(e),typeof t=="string")return YF(t,e);if(t.algorithm&&t.digest){let r=new bu;return r[t.algorithm]=[t],YF(Up(r,e),e)}else return YF(Up(t,e),e)}function YF(t,e){return e.single?new rl(t,e):t.trim().split(/\s+/).reduce((r,i)=>{let n=new rl(i,e);if(n.algorithm&&n.digest){let s=n.algorithm;r[s]||(r[s]=[]),r[s].push(n)}return r},new bu)}hs.exports.stringify=Up;function Up(t,e){return e=Ai(e),t.algorithm&&t.digest?rl.prototype.toString.call(t,e):typeof t=="string"?Up(fs(t,e),e):bu.prototype.toString.call(t,e)}hs.exports.fromHex=oqe;function oqe(t,e,r){r=Ai(r);let i=r.options&&r.options.length?`?${r.options.join("?")}`:"";return fs(`${e}-${Buffer.from(t,"hex").toString("base64")}${i}`,r)}hs.exports.fromData=aqe;function aqe(t,e){e=Ai(e);let r=e.algorithms,i=e.options&&e.options.length?`?${e.options.join("?")}`:"";return r.reduce((n,s)=>{let o=Kp.createHash(s).update(t).digest("base64"),a=new rl(`${s}-${o}${i}`,e);if(a.algorithm&&a.digest){let l=a.algorithm;n[l]||(n[l]=[]),n[l].push(a)}return n},new bu)}hs.exports.fromStream=Aqe;function Aqe(t,e){e=Ai(e);let r=e.Promise||Promise,i=jF(e);return new r((n,s)=>{t.pipe(i),t.on("error",s),i.on("error",s);let o;i.on("integrity",a=>{o=a}),i.on("end",()=>n(o)),i.on("data",()=>{})})}hs.exports.checkData=lqe;function lqe(t,e,r){if(r=Ai(r),e=fs(e,r),!Object.keys(e).length){if(r.error)throw Object.assign(new Error("No valid integrity hashes to check against"),{code:"EINTEGRITY"});return!1}let i=e.pickAlgorithm(r),n=Kp.createHash(i).update(t).digest("base64"),s=fs({algorithm:i,digest:n}),o=s.match(e,r);if(o||!r.error)return o;if(typeof r.size=="number"&&t.length!==r.size){let a=new Error(`data size mismatch when checking ${e}. +`,f}function jGe(t,e){return e.fs_.chmod(t,493)}function jF(t){if(!t)return{win32:"",posix:""};let e=typeof t=="string"?t.split(bn.delimiter):Array.from(t),r={};for(let i=0;i`/mnt/${a.toLowerCase()}`):e[i];r.win32=r.win32?`${r.win32};${n}`:n,r.posix=r.posix?`${r.posix}:${s}`:s,r[i]={win32:n,posix:s}}return r}qie.exports=GF});var cR=C((ryt,une)=>{une.exports=require("stream")});var pne=C((iyt,gne)=>{"use strict";function hne(t,e){var r=Object.keys(t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(t);e&&(i=i.filter(function(n){return Object.getOwnPropertyDescriptor(t,n).enumerable})),r.push.apply(r,i)}return r}function uje(t){for(var e=1;e0?this.tail.next=i:this.head=i,this.tail=i,++this.length}},{key:"unshift",value:function(r){var i={data:r,next:this.head};this.length===0&&(this.tail=i),this.head=i,++this.length}},{key:"shift",value:function(){if(this.length!==0){var r=this.head.data;return this.length===1?this.head=this.tail=null:this.head=this.head.next,--this.length,r}}},{key:"clear",value:function(){this.head=this.tail=null,this.length=0}},{key:"join",value:function(r){if(this.length===0)return"";for(var i=this.head,n=""+i.data;i=i.next;)n+=r+i.data;return n}},{key:"concat",value:function(r){if(this.length===0)return dB.alloc(0);for(var i=dB.allocUnsafe(r>>>0),n=this.head,s=0;n;)Cje(n.data,i,s),s+=n.data.length,n=n.next;return i}},{key:"consume",value:function(r,i){var n;return ro.length?o.length:r;if(a===o.length?s+=o:s+=o.slice(0,r),r-=a,r===0){a===o.length?(++n,i.next?this.head=i.next:this.head=this.tail=null):(this.head=i,i.data=o.slice(a));break}++n}return this.length-=n,s}},{key:"_getBuffer",value:function(r){var i=dB.allocUnsafe(r),n=this.head,s=1;for(n.data.copy(i),r-=n.data.length;n=n.next;){var o=n.data,a=r>o.length?o.length:r;if(o.copy(i,i.length-r,0,a),r-=a,r===0){a===o.length?(++s,n.next?this.head=n.next:this.head=this.tail=null):(this.head=n,n.data=o.slice(a));break}++s}return this.length-=s,i}},{key:dje,value:function(r,i){return uR(this,uje({},i,{depth:0,customInspect:!1}))}}]),t}()});var hR=C((nyt,dne)=>{"use strict";function mje(t,e){var r=this,i=this._readableState&&this._readableState.destroyed,n=this._writableState&&this._writableState.destroyed;return i||n?(e?e(t):t&&(this._writableState?this._writableState.errorEmitted||(this._writableState.errorEmitted=!0,process.nextTick(gR,this,t)):process.nextTick(gR,this,t)),this):(this._readableState&&(this._readableState.destroyed=!0),this._writableState&&(this._writableState.destroyed=!0),this._destroy(t||null,function(s){!e&&s?r._writableState?r._writableState.errorEmitted?process.nextTick(CB,r):(r._writableState.errorEmitted=!0,process.nextTick(Cne,r,s)):process.nextTick(Cne,r,s):e?(process.nextTick(CB,r),e(s)):process.nextTick(CB,r)}),this)}function Cne(t,e){gR(t,e),CB(t)}function CB(t){t._writableState&&!t._writableState.emitClose||t._readableState&&!t._readableState.emitClose||t.emit("close")}function Ije(){this._readableState&&(this._readableState.destroyed=!1,this._readableState.reading=!1,this._readableState.ended=!1,this._readableState.endEmitted=!1),this._writableState&&(this._writableState.destroyed=!1,this._writableState.ended=!1,this._writableState.ending=!1,this._writableState.finalCalled=!1,this._writableState.prefinished=!1,this._writableState.finished=!1,this._writableState.errorEmitted=!1)}function gR(t,e){t.emit("error",e)}function Eje(t,e){var r=t._readableState,i=t._writableState;r&&r.autoDestroy||i&&i.autoDestroy?t.destroy(e):t.emit("error",e)}dne.exports={destroy:mje,undestroy:Ije,errorOrDestroy:Eje}});var ka=C((syt,mne)=>{"use strict";var Ine={};function Dn(t,e,r){r||(r=Error);function i(s,o,a){return typeof e=="string"?e:e(s,o,a)}class n extends r{constructor(o,a,l){super(i(o,a,l))}}n.prototype.name=r.name,n.prototype.code=t,Ine[t]=n}function Ene(t,e){if(Array.isArray(t)){let r=t.length;return t=t.map(i=>String(i)),r>2?`one of ${e} ${t.slice(0,r-1).join(", ")}, or `+t[r-1]:r===2?`one of ${e} ${t[0]} or ${t[1]}`:`of ${e} ${t[0]}`}else return`of ${e} ${String(t)}`}function yje(t,e,r){return t.substr(!r||r<0?0:+r,e.length)===e}function Bje(t,e,r){return(r===void 0||r>t.length)&&(r=t.length),t.substring(r-e.length,r)===e}function wje(t,e,r){return typeof r!="number"&&(r=0),r+e.length>t.length?!1:t.indexOf(e,r)!==-1}Dn("ERR_INVALID_OPT_VALUE",function(t,e){return'The value "'+e+'" is invalid for option "'+t+'"'},TypeError);Dn("ERR_INVALID_ARG_TYPE",function(t,e,r){let i;typeof e=="string"&&yje(e,"not ")?(i="must not be",e=e.replace(/^not /,"")):i="must be";let n;if(Bje(t," argument"))n=`The ${t} ${i} ${Ene(e,"type")}`;else{let s=wje(t,".")?"property":"argument";n=`The "${t}" ${s} ${i} ${Ene(e,"type")}`}return n+=`. Received type ${typeof r}`,n},TypeError);Dn("ERR_STREAM_PUSH_AFTER_EOF","stream.push() after EOF");Dn("ERR_METHOD_NOT_IMPLEMENTED",function(t){return"The "+t+" method is not implemented"});Dn("ERR_STREAM_PREMATURE_CLOSE","Premature close");Dn("ERR_STREAM_DESTROYED",function(t){return"Cannot call "+t+" after a stream was destroyed"});Dn("ERR_MULTIPLE_CALLBACK","Callback called multiple times");Dn("ERR_STREAM_CANNOT_PIPE","Cannot pipe, not readable");Dn("ERR_STREAM_WRITE_AFTER_END","write after end");Dn("ERR_STREAM_NULL_VALUES","May not write null values to stream",TypeError);Dn("ERR_UNKNOWN_ENCODING",function(t){return"Unknown encoding: "+t},TypeError);Dn("ERR_STREAM_UNSHIFT_AFTER_END_EVENT","stream.unshift() after end event");mne.exports.codes=Ine});var fR=C((oyt,yne)=>{"use strict";var Qje=ka().codes.ERR_INVALID_OPT_VALUE;function bje(t,e,r){return t.highWaterMark!=null?t.highWaterMark:e?t[r]:null}function Dje(t,e,r,i){var n=bje(e,i,r);if(n!=null){if(!(isFinite(n)&&Math.floor(n)===n)||n<0){var s=i?r:"highWaterMark";throw new Qje(s,n)}return Math.floor(n)}return t.objectMode?16:16*1024}yne.exports={getHighWaterMark:Dje}});var Bne=C((ayt,pR)=>{typeof Object.create=="function"?pR.exports=function(e,r){r&&(e.super_=r,e.prototype=Object.create(r.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}))}:pR.exports=function(e,r){if(r){e.super_=r;var i=function(){};i.prototype=r.prototype,e.prototype=new i,e.prototype.constructor=e}}});var va=C((Ayt,dR)=>{try{if(CR=require("util"),typeof CR.inherits!="function")throw"";dR.exports=CR.inherits}catch(t){dR.exports=Bne()}var CR});var Qne=C((lyt,wne)=>{wne.exports=require("util").deprecate});var ER=C((cyt,bne)=>{"use strict";bne.exports=tr;function Dne(t){var e=this;this.next=null,this.entry=null,this.finish=function(){Sje(e,t)}}var Hu;tr.WritableState=cd;var xje={deprecate:Qne()},Sne=cR(),mB=require("buffer").Buffer,Pje=global.Uint8Array||function(){};function kje(t){return mB.from(t)}function vje(t){return mB.isBuffer(t)||t instanceof Pje}var mR=hR(),Fje=fR(),Rje=Fje.getHighWaterMark,Fa=ka().codes,Lje=Fa.ERR_INVALID_ARG_TYPE,Nje=Fa.ERR_METHOD_NOT_IMPLEMENTED,Mje=Fa.ERR_MULTIPLE_CALLBACK,Oje=Fa.ERR_STREAM_CANNOT_PIPE,Kje=Fa.ERR_STREAM_DESTROYED,Tje=Fa.ERR_STREAM_NULL_VALUES,Uje=Fa.ERR_STREAM_WRITE_AFTER_END,Hje=Fa.ERR_UNKNOWN_ENCODING,Yu=mR.errorOrDestroy;va()(tr,Sne);function Yje(){}function cd(t,e,r){Hu=Hu||Il(),t=t||{},typeof r!="boolean"&&(r=e instanceof Hu),this.objectMode=!!t.objectMode,r&&(this.objectMode=this.objectMode||!!t.writableObjectMode),this.highWaterMark=Rje(this,t,"writableHighWaterMark",r),this.finalCalled=!1,this.needDrain=!1,this.ending=!1,this.ended=!1,this.finished=!1,this.destroyed=!1;var i=t.decodeStrings===!1;this.decodeStrings=!i,this.defaultEncoding=t.defaultEncoding||"utf8",this.length=0,this.writing=!1,this.corked=0,this.sync=!0,this.bufferProcessing=!1,this.onwrite=function(n){Gje(e,n)},this.writecb=null,this.writelen=0,this.bufferedRequest=null,this.lastBufferedRequest=null,this.pendingcb=0,this.prefinished=!1,this.errorEmitted=!1,this.emitClose=t.emitClose!==!1,this.autoDestroy=!!t.autoDestroy,this.bufferedRequestCount=0,this.corkedRequestsFree=new Dne(this)}cd.prototype.getBuffer=function(){for(var e=this.bufferedRequest,r=[];e;)r.push(e),e=e.next;return r};(function(){try{Object.defineProperty(cd.prototype,"buffer",{get:xje.deprecate(function(){return this.getBuffer()},"_writableState.buffer is deprecated. Use _writableState.getBuffer instead.","DEP0003")})}catch(t){}})();var IB;typeof Symbol=="function"&&Symbol.hasInstance&&typeof Function.prototype[Symbol.hasInstance]=="function"?(IB=Function.prototype[Symbol.hasInstance],Object.defineProperty(tr,Symbol.hasInstance,{value:function(e){return IB.call(this,e)?!0:this!==tr?!1:e&&e._writableState instanceof cd}})):IB=function(e){return e instanceof this};function tr(t){Hu=Hu||Il();var e=this instanceof Hu;if(!e&&!IB.call(tr,this))return new tr(t);this._writableState=new cd(t,this,e),this.writable=!0,t&&(typeof t.write=="function"&&(this._write=t.write),typeof t.writev=="function"&&(this._writev=t.writev),typeof t.destroy=="function"&&(this._destroy=t.destroy),typeof t.final=="function"&&(this._final=t.final)),Sne.call(this)}tr.prototype.pipe=function(){Yu(this,new Oje)};function jje(t,e){var r=new Uje;Yu(t,r),process.nextTick(e,r)}function qje(t,e,r,i){var n;return r===null?n=new Tje:typeof r!="string"&&!e.objectMode&&(n=new Lje("chunk",["string","Buffer"],r)),n?(Yu(t,n),process.nextTick(i,n),!1):!0}tr.prototype.write=function(t,e,r){var i=this._writableState,n=!1,s=!i.objectMode&&vje(t);return s&&!mB.isBuffer(t)&&(t=kje(t)),typeof e=="function"&&(r=e,e=null),s?e="buffer":e||(e=i.defaultEncoding),typeof r!="function"&&(r=Yje),i.ending?jje(this,r):(s||qje(this,i,t,r))&&(i.pendingcb++,n=Jje(this,i,s,t,e,r)),n};tr.prototype.cork=function(){this._writableState.corked++};tr.prototype.uncork=function(){var t=this._writableState;t.corked&&(t.corked--,!t.writing&&!t.corked&&!t.bufferProcessing&&t.bufferedRequest&&xne(this,t))};tr.prototype.setDefaultEncoding=function(e){if(typeof e=="string"&&(e=e.toLowerCase()),!(["hex","utf8","utf-8","ascii","binary","base64","ucs2","ucs-2","utf16le","utf-16le","raw"].indexOf((e+"").toLowerCase())>-1))throw new Hje(e);return this._writableState.defaultEncoding=e,this};Object.defineProperty(tr.prototype,"writableBuffer",{enumerable:!1,get:function(){return this._writableState&&this._writableState.getBuffer()}});function Wje(t,e,r){return!t.objectMode&&t.decodeStrings!==!1&&typeof e=="string"&&(e=mB.from(e,r)),e}Object.defineProperty(tr.prototype,"writableHighWaterMark",{enumerable:!1,get:function(){return this._writableState.highWaterMark}});function Jje(t,e,r,i,n,s){if(!r){var o=Wje(e,i,n);i!==o&&(r=!0,n="buffer",i=o)}var a=e.objectMode?1:i.length;e.length+=a;var l=e.length{"use strict";var eqe=Object.keys||function(t){var e=[];for(var r in t)e.push(r);return e};vne.exports=Qs;var Fne=yR(),BR=ER();va()(Qs,Fne);for(wR=eqe(BR.prototype),EB=0;EB{var BB=require("buffer"),wo=BB.Buffer;function Lne(t,e){for(var r in t)e[r]=t[r]}wo.from&&wo.alloc&&wo.allocUnsafe&&wo.allocUnsafeSlow?Rne.exports=BB:(Lne(BB,QR),QR.Buffer=Gu);function Gu(t,e,r){return wo(t,e,r)}Lne(wo,Gu);Gu.from=function(t,e,r){if(typeof t=="number")throw new TypeError("Argument must not be a number");return wo(t,e,r)};Gu.alloc=function(t,e,r){if(typeof t!="number")throw new TypeError("Argument must be a number");var i=wo(t);return e!==void 0?typeof r=="string"?i.fill(e,r):i.fill(e):i.fill(0),i};Gu.allocUnsafe=function(t){if(typeof t!="number")throw new TypeError("Argument must be a number");return wo(t)};Gu.allocUnsafeSlow=function(t){if(typeof t!="number")throw new TypeError("Argument must be a number");return BB.SlowBuffer(t)}});var SR=C(Mne=>{"use strict";var bR=Nne().Buffer,One=bR.isEncoding||function(t){switch(t=""+t,t&&t.toLowerCase()){case"hex":case"utf8":case"utf-8":case"ascii":case"binary":case"base64":case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":case"raw":return!0;default:return!1}};function iqe(t){if(!t)return"utf8";for(var e;;)switch(t){case"utf8":case"utf-8":return"utf8";case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return"utf16le";case"latin1":case"binary":return"latin1";case"base64":case"ascii":case"hex":return t;default:if(e)return;t=(""+t).toLowerCase(),e=!0}}function nqe(t){var e=iqe(t);if(typeof e!="string"&&(bR.isEncoding===One||!One(t)))throw new Error("Unknown encoding: "+t);return e||t}Mne.StringDecoder=gd;function gd(t){this.encoding=nqe(t);var e;switch(this.encoding){case"utf16le":this.text=oqe,this.end=aqe,e=4;break;case"utf8":this.fillLast=sqe,e=4;break;case"base64":this.text=Aqe,this.end=lqe,e=3;break;default:this.write=cqe,this.end=uqe;return}this.lastNeed=0,this.lastTotal=0,this.lastChar=bR.allocUnsafe(e)}gd.prototype.write=function(t){if(t.length===0)return"";var e,r;if(this.lastNeed){if(e=this.fillLast(t),e===void 0)return"";r=this.lastNeed,this.lastNeed=0}else r=0;return r>5==6?2:t>>4==14?3:t>>3==30?4:t>>6==2?-1:-2}function fqe(t,e,r){var i=e.length-1;if(i=0?(n>0&&(t.lastNeed=n-1),n):--i=0?(n>0&&(t.lastNeed=n-2),n):--i=0?(n>0&&(n===2?n=0:t.lastNeed=n-3),n):0))}function pqe(t,e,r){if((e[0]&192)!=128)return t.lastNeed=0,"\uFFFD";if(t.lastNeed>1&&e.length>1){if((e[1]&192)!=128)return t.lastNeed=1,"\uFFFD";if(t.lastNeed>2&&e.length>2&&(e[2]&192)!=128)return t.lastNeed=2,"\uFFFD"}}function sqe(t){var e=this.lastTotal-this.lastNeed,r=pqe(this,t,e);if(r!==void 0)return r;if(this.lastNeed<=t.length)return t.copy(this.lastChar,e,0,this.lastNeed),this.lastChar.toString(this.encoding,0,this.lastTotal);t.copy(this.lastChar,e,0,t.length),this.lastNeed-=t.length}function hqe(t,e){var r=fqe(this,t,e);if(!this.lastNeed)return t.toString("utf8",e);this.lastTotal=r;var i=t.length-(r-this.lastNeed);return t.copy(this.lastChar,0,i),t.toString("utf8",e,i)}function gqe(t){var e=t&&t.length?this.write(t):"";return this.lastNeed?e+"\uFFFD":e}function oqe(t,e){if((t.length-e)%2==0){var r=t.toString("utf16le",e);if(r){var i=r.charCodeAt(r.length-1);if(i>=55296&&i<=56319)return this.lastNeed=2,this.lastTotal=4,this.lastChar[0]=t[t.length-2],this.lastChar[1]=t[t.length-1],r.slice(0,-1)}return r}return this.lastNeed=1,this.lastTotal=2,this.lastChar[0]=t[t.length-1],t.toString("utf16le",e,t.length-1)}function aqe(t){var e=t&&t.length?this.write(t):"";if(this.lastNeed){var r=this.lastTotal-this.lastNeed;return e+this.lastChar.toString("utf16le",0,r)}return e}function Aqe(t,e){var r=(t.length-e)%3;return r===0?t.toString("base64",e):(this.lastNeed=3-r,this.lastTotal=3,r===1?this.lastChar[0]=t[t.length-1]:(this.lastChar[0]=t[t.length-2],this.lastChar[1]=t[t.length-1]),t.toString("base64",e,t.length-r))}function lqe(t){var e=t&&t.length?this.write(t):"";return this.lastNeed?e+this.lastChar.toString("base64",0,3-this.lastNeed):e}function cqe(t){return t.toString(this.encoding)}function uqe(t){return t&&t.length?this.write(t):""}});var wB=C((hyt,Kne)=>{"use strict";var Tne=ka().codes.ERR_STREAM_PREMATURE_CLOSE;function dqe(t){var e=!1;return function(){if(!e){e=!0;for(var r=arguments.length,i=new Array(r),n=0;n{"use strict";var QB;function Ra(t,e,r){return e in t?Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):t[e]=r,t}var Iqe=wB(),La=Symbol("lastResolve"),El=Symbol("lastReject"),hd=Symbol("error"),bB=Symbol("ended"),yl=Symbol("lastPromise"),xR=Symbol("handlePromise"),Bl=Symbol("stream");function Na(t,e){return{value:t,done:e}}function Eqe(t){var e=t[La];if(e!==null){var r=t[Bl].read();r!==null&&(t[yl]=null,t[La]=null,t[El]=null,e(Na(r,!1)))}}function yqe(t){process.nextTick(Eqe,t)}function Bqe(t,e){return function(r,i){t.then(function(){if(e[bB]){r(Na(void 0,!0));return}e[xR](r,i)},i)}}var wqe=Object.getPrototypeOf(function(){}),Qqe=Object.setPrototypeOf((QB={get stream(){return this[Bl]},next:function(){var e=this,r=this[hd];if(r!==null)return Promise.reject(r);if(this[bB])return Promise.resolve(Na(void 0,!0));if(this[Bl].destroyed)return new Promise(function(o,a){process.nextTick(function(){e[hd]?a(e[hd]):o(Na(void 0,!0))})});var i=this[yl],n;if(i)n=new Promise(Bqe(i,this));else{var s=this[Bl].read();if(s!==null)return Promise.resolve(Na(s,!1));n=new Promise(this[xR])}return this[yl]=n,n}},Ra(QB,Symbol.asyncIterator,function(){return this}),Ra(QB,"return",function(){var e=this;return new Promise(function(r,i){e[Bl].destroy(null,function(n){if(n){i(n);return}r(Na(void 0,!0))})})}),QB),wqe),bqe=function(e){var r,i=Object.create(Qqe,(r={},Ra(r,Bl,{value:e,writable:!0}),Ra(r,La,{value:null,writable:!0}),Ra(r,El,{value:null,writable:!0}),Ra(r,hd,{value:null,writable:!0}),Ra(r,bB,{value:e._readableState.endEmitted,writable:!0}),Ra(r,xR,{value:function(s,o){var a=i[Bl].read();a?(i[yl]=null,i[La]=null,i[El]=null,s(Na(a,!1))):(i[La]=s,i[El]=o)},writable:!0}),r));return i[yl]=null,Iqe(e,function(n){if(n&&n.code!=="ERR_STREAM_PREMATURE_CLOSE"){var s=i[El];s!==null&&(i[yl]=null,i[La]=null,i[El]=null,s(n)),i[hd]=n;return}var o=i[La];o!==null&&(i[yl]=null,i[La]=null,i[El]=null,o(Na(void 0,!0))),i[bB]=!0}),e.on("readable",yqe.bind(null,i)),i};Hne.exports=bqe});var Jne=C((pyt,Gne)=>{"use strict";function jne(t,e,r,i,n,s,o){try{var a=t[s](o),l=a.value}catch(c){r(c);return}a.done?e(l):Promise.resolve(l).then(i,n)}function Dqe(t){return function(){var e=this,r=arguments;return new Promise(function(i,n){var s=t.apply(e,r);function o(l){jne(s,i,n,o,a,"next",l)}function a(l){jne(s,i,n,o,a,"throw",l)}o(void 0)})}}function qne(t,e){var r=Object.keys(t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(t);e&&(i=i.filter(function(n){return Object.getOwnPropertyDescriptor(t,n).enumerable})),r.push.apply(r,i)}return r}function xqe(t){for(var e=1;e{"use strict";Wne.exports=dt;var ju;dt.ReadableState=zne;var dyt=require("events").EventEmitter,Vne=function(e,r){return e.listeners(r).length},fd=cR(),DB=require("buffer").Buffer,vqe=global.Uint8Array||function(){};function Fqe(t){return DB.from(t)}function Rqe(t){return DB.isBuffer(t)||t instanceof vqe}var PR=require("util"),ct;PR&&PR.debuglog?ct=PR.debuglog("stream"):ct=function(){};var Lqe=pne(),kR=hR(),Nqe=fR(),Mqe=Nqe.getHighWaterMark,SB=ka().codes,Oqe=SB.ERR_INVALID_ARG_TYPE,Kqe=SB.ERR_STREAM_PUSH_AFTER_EOF,Tqe=SB.ERR_METHOD_NOT_IMPLEMENTED,Uqe=SB.ERR_STREAM_UNSHIFT_AFTER_END_EVENT,qu,vR,FR;va()(dt,fd);var pd=kR.errorOrDestroy,RR=["error","close","destroy","pause","resume"];function Hqe(t,e,r){if(typeof t.prependListener=="function")return t.prependListener(e,r);!t._events||!t._events[e]?t.on(e,r):Array.isArray(t._events[e])?t._events[e].unshift(r):t._events[e]=[r,t._events[e]]}function zne(t,e,r){ju=ju||Il(),t=t||{},typeof r!="boolean"&&(r=e instanceof ju),this.objectMode=!!t.objectMode,r&&(this.objectMode=this.objectMode||!!t.readableObjectMode),this.highWaterMark=Mqe(this,t,"readableHighWaterMark",r),this.buffer=new Lqe,this.length=0,this.pipes=null,this.pipesCount=0,this.flowing=null,this.ended=!1,this.endEmitted=!1,this.reading=!1,this.sync=!0,this.needReadable=!1,this.emittedReadable=!1,this.readableListening=!1,this.resumeScheduled=!1,this.paused=!0,this.emitClose=t.emitClose!==!1,this.autoDestroy=!!t.autoDestroy,this.destroyed=!1,this.defaultEncoding=t.defaultEncoding||"utf8",this.awaitDrain=0,this.readingMore=!1,this.decoder=null,this.encoding=null,t.encoding&&(qu||(qu=SR().StringDecoder),this.decoder=new qu(t.encoding),this.encoding=t.encoding)}function dt(t){if(ju=ju||Il(),!(this instanceof dt))return new dt(t);var e=this instanceof ju;this._readableState=new zne(t,this,e),this.readable=!0,t&&(typeof t.read=="function"&&(this._read=t.read),typeof t.destroy=="function"&&(this._destroy=t.destroy)),fd.call(this)}Object.defineProperty(dt.prototype,"destroyed",{enumerable:!1,get:function(){return this._readableState===void 0?!1:this._readableState.destroyed},set:function(e){!this._readableState||(this._readableState.destroyed=e)}});dt.prototype.destroy=kR.destroy;dt.prototype._undestroy=kR.undestroy;dt.prototype._destroy=function(t,e){e(t)};dt.prototype.push=function(t,e){var r=this._readableState,i;return r.objectMode?i=!0:typeof t=="string"&&(e=e||r.defaultEncoding,e!==r.encoding&&(t=DB.from(t,e),e=""),i=!0),Xne(this,t,e,!1,i)};dt.prototype.unshift=function(t){return Xne(this,t,null,!0,!1)};function Xne(t,e,r,i,n){ct("readableAddChunk",e);var s=t._readableState;if(e===null)s.reading=!1,Gqe(t,s);else{var o;if(n||(o=Yqe(s,e)),o)pd(t,o);else if(s.objectMode||e&&e.length>0)if(typeof e!="string"&&!s.objectMode&&Object.getPrototypeOf(e)!==DB.prototype&&(e=Fqe(e)),i)s.endEmitted?pd(t,new Uqe):LR(t,s,e,!0);else if(s.ended)pd(t,new Kqe);else{if(s.destroyed)return!1;s.reading=!1,s.decoder&&!r?(e=s.decoder.write(e),s.objectMode||e.length!==0?LR(t,s,e,!1):NR(t,s)):LR(t,s,e,!1)}else i||(s.reading=!1,NR(t,s))}return!s.ended&&(s.length=Zne?t=Zne:(t--,t|=t>>>1,t|=t>>>2,t|=t>>>4,t|=t>>>8,t|=t>>>16,t++),t}function _ne(t,e){return t<=0||e.length===0&&e.ended?0:e.objectMode?1:t!==t?e.flowing&&e.length?e.buffer.head.data.length:e.length:(t>e.highWaterMark&&(e.highWaterMark=jqe(t)),t<=e.length?t:e.ended?e.length:(e.needReadable=!0,0))}dt.prototype.read=function(t){ct("read",t),t=parseInt(t,10);var e=this._readableState,r=t;if(t!==0&&(e.emittedReadable=!1),t===0&&e.needReadable&&((e.highWaterMark!==0?e.length>=e.highWaterMark:e.length>0)||e.ended))return ct("read: emitReadable",e.length,e.ended),e.length===0&&e.ended?MR(this):xB(this),null;if(t=_ne(t,e),t===0&&e.ended)return e.length===0&&MR(this),null;var i=e.needReadable;ct("need readable",i),(e.length===0||e.length-t0?n=$ne(t,e):n=null,n===null?(e.needReadable=e.length<=e.highWaterMark,t=0):(e.length-=t,e.awaitDrain=0),e.length===0&&(e.ended||(e.needReadable=!0),r!==t&&e.ended&&MR(this)),n!==null&&this.emit("data",n),n};function Gqe(t,e){if(ct("onEofChunk"),!e.ended){if(e.decoder){var r=e.decoder.end();r&&r.length&&(e.buffer.push(r),e.length+=e.objectMode?1:r.length)}e.ended=!0,e.sync?xB(t):(e.needReadable=!1,e.emittedReadable||(e.emittedReadable=!0,ese(t)))}}function xB(t){var e=t._readableState;ct("emitReadable",e.needReadable,e.emittedReadable),e.needReadable=!1,e.emittedReadable||(ct("emitReadable",e.flowing),e.emittedReadable=!0,process.nextTick(ese,t))}function ese(t){var e=t._readableState;ct("emitReadable_",e.destroyed,e.length,e.ended),!e.destroyed&&(e.length||e.ended)&&(t.emit("readable"),e.emittedReadable=!1),e.needReadable=!e.flowing&&!e.ended&&e.length<=e.highWaterMark,OR(t)}function NR(t,e){e.readingMore||(e.readingMore=!0,process.nextTick(qqe,t,e))}function qqe(t,e){for(;!e.reading&&!e.ended&&(e.length1&&tse(i.pipes,t)!==-1)&&!c&&(ct("false write response, pause",i.awaitDrain),i.awaitDrain++),r.pause())}function h(I){ct("onerror",I),m(),t.removeListener("error",h),Vne(t,"error")===0&&pd(t,I)}Hqe(t,"error",h);function f(){t.removeListener("finish",p),m()}t.once("close",f);function p(){ct("onfinish"),t.removeListener("close",f),m()}t.once("finish",p);function m(){ct("unpipe"),r.unpipe(t)}return t.emit("pipe",r),i.flowing||(ct("pipe resume"),r.resume()),t};function Jqe(t){return function(){var r=t._readableState;ct("pipeOnDrain",r.awaitDrain),r.awaitDrain&&r.awaitDrain--,r.awaitDrain===0&&Vne(t,"data")&&(r.flowing=!0,OR(t))}}dt.prototype.unpipe=function(t){var e=this._readableState,r={hasUnpiped:!1};if(e.pipesCount===0)return this;if(e.pipesCount===1)return t&&t!==e.pipes?this:(t||(t=e.pipes),e.pipes=null,e.pipesCount=0,e.flowing=!1,t&&t.emit("unpipe",this,r),this);if(!t){var i=e.pipes,n=e.pipesCount;e.pipes=null,e.pipesCount=0,e.flowing=!1;for(var s=0;s0,i.flowing!==!1&&this.resume()):t==="readable"&&!i.endEmitted&&!i.readableListening&&(i.readableListening=i.needReadable=!0,i.flowing=!1,i.emittedReadable=!1,ct("on readable",i.length,i.reading),i.length?xB(this):i.reading||process.nextTick(Wqe,this)),r};dt.prototype.addListener=dt.prototype.on;dt.prototype.removeListener=function(t,e){var r=fd.prototype.removeListener.call(this,t,e);return t==="readable"&&process.nextTick(rse,this),r};dt.prototype.removeAllListeners=function(t){var e=fd.prototype.removeAllListeners.apply(this,arguments);return(t==="readable"||t===void 0)&&process.nextTick(rse,this),e};function rse(t){var e=t._readableState;e.readableListening=t.listenerCount("readable")>0,e.resumeScheduled&&!e.paused?e.flowing=!0:t.listenerCount("data")>0&&t.resume()}function Wqe(t){ct("readable nexttick read 0"),t.read(0)}dt.prototype.resume=function(){var t=this._readableState;return t.flowing||(ct("resume"),t.flowing=!t.readableListening,zqe(this,t)),t.paused=!1,this};function zqe(t,e){e.resumeScheduled||(e.resumeScheduled=!0,process.nextTick(Vqe,t,e))}function Vqe(t,e){ct("resume",e.reading),e.reading||t.read(0),e.resumeScheduled=!1,t.emit("resume"),OR(t),e.flowing&&!e.reading&&t.read(0)}dt.prototype.pause=function(){return ct("call pause flowing=%j",this._readableState.flowing),this._readableState.flowing!==!1&&(ct("pause"),this._readableState.flowing=!1,this.emit("pause")),this._readableState.paused=!0,this};function OR(t){var e=t._readableState;for(ct("flow",e.flowing);e.flowing&&t.read()!==null;);}dt.prototype.wrap=function(t){var e=this,r=this._readableState,i=!1;t.on("end",function(){if(ct("wrapped end"),r.decoder&&!r.ended){var o=r.decoder.end();o&&o.length&&e.push(o)}e.push(null)}),t.on("data",function(o){if(ct("wrapped data"),r.decoder&&(o=r.decoder.write(o)),!(r.objectMode&&o==null)&&!(!r.objectMode&&(!o||!o.length))){var a=e.push(o);a||(i=!0,t.pause())}});for(var n in t)this[n]===void 0&&typeof t[n]=="function"&&(this[n]=function(a){return function(){return t[a].apply(t,arguments)}}(n));for(var s=0;s=e.length?(e.decoder?r=e.buffer.join(""):e.buffer.length===1?r=e.buffer.first():r=e.buffer.concat(e.length),e.buffer.clear()):r=e.buffer.consume(t,e.decoder),r}function MR(t){var e=t._readableState;ct("endReadable",e.endEmitted),e.endEmitted||(e.ended=!0,process.nextTick(Xqe,e,t))}function Xqe(t,e){if(ct("endReadableNT",t.endEmitted,t.length),!t.endEmitted&&t.length===0&&(t.endEmitted=!0,e.readable=!1,e.emit("end"),t.autoDestroy)){var r=e._writableState;(!r||r.autoDestroy&&r.finished)&&e.destroy()}}typeof Symbol=="function"&&(dt.from=function(t,e){return FR===void 0&&(FR=Jne()),FR(dt,t,e)});function tse(t,e){for(var r=0,i=t.length;r{"use strict";ise.exports=Qo;var PB=ka().codes,Zqe=PB.ERR_METHOD_NOT_IMPLEMENTED,_qe=PB.ERR_MULTIPLE_CALLBACK,$qe=PB.ERR_TRANSFORM_ALREADY_TRANSFORMING,eJe=PB.ERR_TRANSFORM_WITH_LENGTH_0,kB=Il();va()(Qo,kB);function tJe(t,e){var r=this._transformState;r.transforming=!1;var i=r.writecb;if(i===null)return this.emit("error",new _qe);r.writechunk=null,r.writecb=null,e!=null&&this.push(e),i(t);var n=this._readableState;n.reading=!1,(n.needReadable||n.length{"use strict";sse.exports=dd;var ose=KR();va()(dd,ose);function dd(t){if(!(this instanceof dd))return new dd(t);ose.call(this,t)}dd.prototype._transform=function(t,e,r){r(null,t)}});var gse=C((Eyt,Ase)=>{"use strict";var TR;function iJe(t){var e=!1;return function(){e||(e=!0,t.apply(void 0,arguments))}}var lse=ka().codes,nJe=lse.ERR_MISSING_ARGS,sJe=lse.ERR_STREAM_DESTROYED;function cse(t){if(t)throw t}function oJe(t){return t.setHeader&&typeof t.abort=="function"}function aJe(t,e,r,i){i=iJe(i);var n=!1;t.on("close",function(){n=!0}),TR===void 0&&(TR=wB()),TR(t,{readable:e,writable:r},function(o){if(o)return i(o);n=!0,i()});var s=!1;return function(o){if(!n&&!s){if(s=!0,oJe(t))return t.abort();if(typeof t.destroy=="function")return t.destroy();i(o||new sJe("pipe"))}}}function use(t){t()}function AJe(t,e){return t.pipe(e)}function lJe(t){return!t.length||typeof t[t.length-1]!="function"?cse:t.pop()}function cJe(){for(var t=arguments.length,e=new Array(t),r=0;r0;return aJe(o,l,c,function(u){n||(n=u),u&&s.forEach(use),!l&&(s.forEach(use),i(n))})});return e.reduce(AJe)}Ase.exports=cJe});var Ju=C((Sn,Cd)=>{var md=require("stream");process.env.READABLE_STREAM==="disable"&&md?(Cd.exports=md.Readable,Object.assign(Cd.exports,md),Cd.exports.Stream=md):(Sn=Cd.exports=yR(),Sn.Stream=md||Sn,Sn.Readable=Sn,Sn.Writable=ER(),Sn.Duplex=Il(),Sn.Transform=KR(),Sn.PassThrough=ase(),Sn.finished=wB(),Sn.pipeline=gse())});var pse=C((yyt,hse)=>{"use strict";var{Buffer:Wn}=require("buffer"),fse=Symbol.for("BufferList");function Mt(t){if(!(this instanceof Mt))return new Mt(t);Mt._init.call(this,t)}Mt._init=function(e){Object.defineProperty(this,fse,{value:!0}),this._bufs=[],this.length=0,e&&this.append(e)};Mt.prototype._new=function(e){return new Mt(e)};Mt.prototype._offset=function(e){if(e===0)return[0,0];let r=0;for(let i=0;ithis.length||e<0)return;let r=this._offset(e);return this._bufs[r[0]][r[1]]};Mt.prototype.slice=function(e,r){return typeof e=="number"&&e<0&&(e+=this.length),typeof r=="number"&&r<0&&(r+=this.length),this.copy(null,0,e,r)};Mt.prototype.copy=function(e,r,i,n){if((typeof i!="number"||i<0)&&(i=0),(typeof n!="number"||n>this.length)&&(n=this.length),i>=this.length||n<=0)return e||Wn.alloc(0);let s=!!e,o=this._offset(i),a=n-i,l=a,c=s&&r||0,u=o[1];if(i===0&&n===this.length){if(!s)return this._bufs.length===1?this._bufs[0]:Wn.concat(this._bufs,this.length);for(let g=0;gh)this._bufs[g].copy(e,c,u),c+=h;else{this._bufs[g].copy(e,c,u,u+l),c+=h;break}l-=h,u&&(u=0)}return e.length>c?e.slice(0,c):e};Mt.prototype.shallowSlice=function(e,r){if(e=e||0,r=typeof r!="number"?this.length:r,e<0&&(e+=this.length),r<0&&(r+=this.length),e===r)return this._new();let i=this._offset(e),n=this._offset(r),s=this._bufs.slice(i[0],n[0]+1);return n[1]===0?s.pop():s[s.length-1]=s[s.length-1].slice(0,n[1]),i[1]!==0&&(s[0]=s[0].slice(i[1])),this._new(s)};Mt.prototype.toString=function(e,r,i){return this.slice(r,i).toString(e)};Mt.prototype.consume=function(e){if(e=Math.trunc(e),Number.isNaN(e)||e<=0)return this;for(;this._bufs.length;)if(e>=this._bufs[0].length)e-=this._bufs[0].length,this.length-=this._bufs[0].length,this._bufs.shift();else{this._bufs[0]=this._bufs[0].slice(e),this.length-=e;break}return this};Mt.prototype.duplicate=function(){let e=this._new();for(let r=0;rthis.length?this.length:e;let i=this._offset(e),n=i[0],s=i[1];for(;n=t.length){let l=o.indexOf(t,s);if(l!==-1)return this._reverseOffset([n,l]);s=o.length-t.length+1}else{let l=this._reverseOffset([n,s]);if(this._match(l,t))return l;s++}s=0}return-1};Mt.prototype._match=function(t,e){if(this.length-t{"use strict";var UR=Ju().Duplex,uJe=va(),Id=pse();function ei(t){if(!(this instanceof ei))return new ei(t);if(typeof t=="function"){this._callback=t;let e=function(i){this._callback&&(this._callback(i),this._callback=null)}.bind(this);this.on("pipe",function(i){i.on("error",e)}),this.on("unpipe",function(i){i.removeListener("error",e)}),t=null}Id._init.call(this,t),UR.call(this)}uJe(ei,UR);Object.assign(ei.prototype,Id.prototype);ei.prototype._new=function(e){return new ei(e)};ei.prototype._write=function(e,r,i){this._appendBuffer(e),typeof i=="function"&&i()};ei.prototype._read=function(e){if(!this.length)return this.push(null);e=Math.min(e,this.length),this.push(this.slice(0,e)),this.consume(e)};ei.prototype.end=function(e){UR.prototype.end.call(this,e),this._callback&&(this._callback(null,this.slice()),this._callback=null)};ei.prototype._destroy=function(e,r){this._bufs.length=0,this.length=0,r(e)};ei.prototype._isBufferList=function(e){return e instanceof ei||e instanceof Id||ei.isBufferList(e)};ei.isBufferList=Id.isBufferList;vB.exports=ei;vB.exports.BufferListStream=ei;vB.exports.BufferList=Id});var GR=C(Wu=>{var gJe=Buffer.alloc,hJe="0000000000000000000",fJe="7777777777777777777",Cse="0".charCodeAt(0),mse=Buffer.from("ustar\0","binary"),pJe=Buffer.from("00","binary"),dJe=Buffer.from("ustar ","binary"),CJe=Buffer.from(" \0","binary"),mJe=parseInt("7777",8),Ed=257,HR=263,IJe=function(t,e,r){return typeof t!="number"?r:(t=~~t,t>=e?e:t>=0||(t+=e,t>=0)?t:0)},EJe=function(t){switch(t){case 0:return"file";case 1:return"link";case 2:return"symlink";case 3:return"character-device";case 4:return"block-device";case 5:return"directory";case 6:return"fifo";case 7:return"contiguous-file";case 72:return"pax-header";case 55:return"pax-global-header";case 27:return"gnu-long-link-path";case 28:case 30:return"gnu-long-path"}return null},yJe=function(t){switch(t){case"file":return 0;case"link":return 1;case"symlink":return 2;case"character-device":return 3;case"block-device":return 4;case"directory":return 5;case"fifo":return 6;case"contiguous-file":return 7;case"pax-header":return 72}return 0},Ise=function(t,e,r,i){for(;re?fJe.slice(0,e)+" ":hJe.slice(0,e-t.length)+t+" "};function BJe(t){var e;if(t[0]===128)e=!0;else if(t[0]===255)e=!1;else return null;for(var r=[],i=t.length-1;i>0;i--){var n=t[i];e?r.push(n):r.push(255-n)}var s=0,o=r.length;for(i=0;i=Math.pow(10,r)&&r++,e+r+t};Wu.decodeLongPath=function(t,e){return zu(t,0,t.length,e)};Wu.encodePax=function(t){var e="";t.name&&(e+=YR(" path="+t.name+` +`)),t.linkname&&(e+=YR(" linkpath="+t.linkname+` +`));var r=t.pax;if(r)for(var i in r)e+=YR(" "+i+"="+r[i]+` +`);return Buffer.from(e)};Wu.decodePax=function(t){for(var e={};t.length;){for(var r=0;r100;){var n=r.indexOf("/");if(n===-1)return null;i+=i?"/"+r.slice(0,n):r.slice(0,n),r=r.slice(n+1)}return Buffer.byteLength(r)>100||Buffer.byteLength(i)>155||t.linkname&&Buffer.byteLength(t.linkname)>100?null:(e.write(r),e.write(Ma(t.mode&mJe,6),100),e.write(Ma(t.uid,6),108),e.write(Ma(t.gid,6),116),e.write(Ma(t.size,11),124),e.write(Ma(t.mtime.getTime()/1e3|0,11),136),e[156]=Cse+yJe(t.type),t.linkname&&e.write(t.linkname,157),mse.copy(e,Ed),pJe.copy(e,HR),t.uname&&e.write(t.uname,265),t.gname&&e.write(t.gname,297),e.write(Ma(t.devmajor||0,6),329),e.write(Ma(t.devminor||0,6),337),i&&e.write(i,345),e.write(Ma(Ese(e),6),148),e)};Wu.decode=function(t,e,r){var i=t[156]===0?0:t[156]-Cse,n=zu(t,0,100,e),s=Oa(t,100,8),o=Oa(t,108,8),a=Oa(t,116,8),l=Oa(t,124,12),c=Oa(t,136,12),u=EJe(i),g=t[157]===0?null:zu(t,157,100,e),h=zu(t,265,32),f=zu(t,297,32),p=Oa(t,329,8),m=Oa(t,337,8),I=Ese(t);if(I===8*32)return null;if(I!==Oa(t,148,8))throw new Error("Invalid tar header. Maybe the tar is corrupted or it needs to be gunzipped?");if(mse.compare(t,Ed,Ed+6)===0)t[345]&&(n=zu(t,345,155,e)+"/"+n);else if(!(dJe.compare(t,Ed,Ed+6)===0&&CJe.compare(t,HR,HR+2)===0)){if(!r)throw new Error("Invalid tar header: unknown format.")}return i===0&&n&&n[n.length-1]==="/"&&(i=5),{name:n,mode:s,uid:o,gid:a,size:l,mtime:new Date(1e3*c),type:u,linkname:g,uname:h,gname:f,devmajor:p,devminor:m}}});var Sse=C((Qyt,yse)=>{var Bse=require("util"),wJe=dse(),yd=GR(),wse=Ju().Writable,Qse=Ju().PassThrough,bse=function(){},Dse=function(t){return t&=511,t&&512-t},QJe=function(t,e){var r=new FB(t,e);return r.end(),r},bJe=function(t,e){return e.path&&(t.name=e.path),e.linkpath&&(t.linkname=e.linkpath),e.size&&(t.size=parseInt(e.size,10)),t.pax=e,t},FB=function(t,e){this._parent=t,this.offset=e,Qse.call(this,{autoDestroy:!1})};Bse.inherits(FB,Qse);FB.prototype.destroy=function(t){this._parent.destroy(t)};var bo=function(t){if(!(this instanceof bo))return new bo(t);wse.call(this,t),t=t||{},this._offset=0,this._buffer=wJe(),this._missing=0,this._partial=!1,this._onparse=bse,this._header=null,this._stream=null,this._overflow=null,this._cb=null,this._locked=!1,this._destroyed=!1,this._pax=null,this._paxGlobal=null,this._gnuLongPath=null,this._gnuLongLinkPath=null;var e=this,r=e._buffer,i=function(){e._continue()},n=function(h){if(e._locked=!1,h)return e.destroy(h);e._stream||i()},s=function(){e._stream=null;var h=Dse(e._header.size);h?e._parse(h,o):e._parse(512,g),e._locked||i()},o=function(){e._buffer.consume(Dse(e._header.size)),e._parse(512,g),i()},a=function(){var h=e._header.size;e._paxGlobal=yd.decodePax(r.slice(0,h)),r.consume(h),s()},l=function(){var h=e._header.size;e._pax=yd.decodePax(r.slice(0,h)),e._paxGlobal&&(e._pax=Object.assign({},e._paxGlobal,e._pax)),r.consume(h),s()},c=function(){var h=e._header.size;this._gnuLongPath=yd.decodeLongPath(r.slice(0,h),t.filenameEncoding),r.consume(h),s()},u=function(){var h=e._header.size;this._gnuLongLinkPath=yd.decodeLongPath(r.slice(0,h),t.filenameEncoding),r.consume(h),s()},g=function(){var h=e._offset,f;try{f=e._header=yd.decode(r.slice(0,512),t.filenameEncoding,t.allowUnknownFormat)}catch(p){e.emit("error",p)}if(r.consume(512),!f){e._parse(512,g),i();return}if(f.type==="gnu-long-path"){e._parse(f.size,c),i();return}if(f.type==="gnu-long-link-path"){e._parse(f.size,u),i();return}if(f.type==="pax-global-header"){e._parse(f.size,a),i();return}if(f.type==="pax-header"){e._parse(f.size,l),i();return}if(e._gnuLongPath&&(f.name=e._gnuLongPath,e._gnuLongPath=null),e._gnuLongLinkPath&&(f.linkname=e._gnuLongLinkPath,e._gnuLongLinkPath=null),e._pax&&(e._header=f=bJe(f,e._pax),e._pax=null),e._locked=!0,!f.size||f.type==="directory"){e._parse(512,g),e.emit("entry",f,QJe(e,h),n);return}e._stream=new FB(e,h),e.emit("entry",f,e._stream,n),e._parse(f.size,s),i()};this._onheader=g,this._parse(512,g)};Bse.inherits(bo,wse);bo.prototype.destroy=function(t){this._destroyed||(this._destroyed=!0,t&&this.emit("error",t),this.emit("close"),this._stream&&this._stream.emit("close"))};bo.prototype._parse=function(t,e){this._destroyed||(this._offset+=t,this._missing=t,e===this._onheader&&(this._partial=!1),this._onparse=e)};bo.prototype._continue=function(){if(!this._destroyed){var t=this._cb;this._cb=bse,this._overflow?this._write(this._overflow,void 0,t):t()}};bo.prototype._write=function(t,e,r){if(!this._destroyed){var i=this._stream,n=this._buffer,s=this._missing;if(t.length&&(this._partial=!0),t.lengths&&(o=t.slice(s),t=t.slice(0,s)),i?i.end(t):n.append(t),this._overflow=o,this._onparse()}};bo.prototype._final=function(t){if(this._partial)return this.destroy(new Error("Unexpected end of data"));t()};yse.exports=bo});var Pse=C((byt,xse)=>{xse.exports=require("fs").constants||require("constants")});var Lse=C((Dyt,kse)=>{var Vu=Pse(),vse=Fb(),RB=va(),DJe=Buffer.alloc,Fse=Ju().Readable,Xu=Ju().Writable,SJe=require("string_decoder").StringDecoder,LB=GR(),xJe=parseInt("755",8),PJe=parseInt("644",8),Rse=DJe(1024),jR=function(){},qR=function(t,e){e&=511,e&&t.push(Rse.slice(0,512-e))};function kJe(t){switch(t&Vu.S_IFMT){case Vu.S_IFBLK:return"block-device";case Vu.S_IFCHR:return"character-device";case Vu.S_IFDIR:return"directory";case Vu.S_IFIFO:return"fifo";case Vu.S_IFLNK:return"symlink"}return"file"}var NB=function(t){Xu.call(this),this.written=0,this._to=t,this._destroyed=!1};RB(NB,Xu);NB.prototype._write=function(t,e,r){if(this.written+=t.length,this._to.push(t))return r();this._to._drain=r};NB.prototype.destroy=function(){this._destroyed||(this._destroyed=!0,this.emit("close"))};var MB=function(){Xu.call(this),this.linkname="",this._decoder=new SJe("utf-8"),this._destroyed=!1};RB(MB,Xu);MB.prototype._write=function(t,e,r){this.linkname+=this._decoder.write(t),r()};MB.prototype.destroy=function(){this._destroyed||(this._destroyed=!0,this.emit("close"))};var Bd=function(){Xu.call(this),this._destroyed=!1};RB(Bd,Xu);Bd.prototype._write=function(t,e,r){r(new Error("No body allowed for this entry"))};Bd.prototype.destroy=function(){this._destroyed||(this._destroyed=!0,this.emit("close"))};var bs=function(t){if(!(this instanceof bs))return new bs(t);Fse.call(this,t),this._drain=jR,this._finalized=!1,this._finalizing=!1,this._destroyed=!1,this._stream=null};RB(bs,Fse);bs.prototype.entry=function(t,e,r){if(this._stream)throw new Error("already piping an entry");if(!(this._finalized||this._destroyed)){typeof e=="function"&&(r=e,e=null),r||(r=jR);var i=this;if((!t.size||t.type==="symlink")&&(t.size=0),t.type||(t.type=kJe(t.mode)),t.mode||(t.mode=t.type==="directory"?xJe:PJe),t.uid||(t.uid=0),t.gid||(t.gid=0),t.mtime||(t.mtime=new Date),typeof e=="string"&&(e=Buffer.from(e)),Buffer.isBuffer(e)){t.size=e.length,this._encode(t);var n=this.push(e);return qR(i,t.size),n?process.nextTick(r):this._drain=r,new Bd}if(t.type==="symlink"&&!t.linkname){var s=new MB;return vse(s,function(a){if(a)return i.destroy(),r(a);t.linkname=s.linkname,i._encode(t),r()}),s}if(this._encode(t),t.type!=="file"&&t.type!=="contiguous-file")return process.nextTick(r),new Bd;var o=new NB(this);return this._stream=o,vse(o,function(a){if(i._stream=null,a)return i.destroy(),r(a);if(o.written!==t.size)return i.destroy(),r(new Error("size mismatch"));qR(i,t.size),i._finalizing&&i.finalize(),r()}),o}};bs.prototype.finalize=function(){if(this._stream){this._finalizing=!0;return}this._finalized||(this._finalized=!0,this.push(Rse),this.push(null))};bs.prototype.destroy=function(t){this._destroyed||(this._destroyed=!0,t&&this.emit("error",t),this.emit("close"),this._stream&&this._stream.destroy&&this._stream.destroy())};bs.prototype._encode=function(t){if(!t.pax){var e=LB.encode(t);if(e){this.push(e);return}}this._encodePax(t)};bs.prototype._encodePax=function(t){var e=LB.encodePax({name:t.name,linkname:t.linkname,pax:t.pax}),r={name:"PaxHeader",mode:t.mode,uid:t.uid,gid:t.gid,size:e.length,mtime:t.mtime,type:"pax-header",linkname:t.linkname&&"PaxHeader",uname:t.uname,gname:t.gname,devmajor:t.devmajor,devminor:t.devminor};this.push(LB.encode(r)),this.push(e),qR(this,e.length),r.size=t.size,r.type=t.type,this.push(LB.encode(r))};bs.prototype._read=function(t){var e=this._drain;this._drain=jR,e()};kse.exports=bs});var Nse=C(JR=>{JR.extract=Sse();JR.pack=Lse()});var zse=C((Vyt,jse)=>{"use strict";var Zu=class{constructor(e,r,i){this.__specs=e||{},Object.keys(this.__specs).forEach(n=>{if(typeof this.__specs[n]=="string"){let s=this.__specs[n],o=this.__specs[s];if(o){let a=o.aliases||[];a.push(n,s),o.aliases=[...new Set(a)],this.__specs[n]=o}else throw new Error(`Alias refers to invalid key: ${s} -> ${n}`)}}),this.__opts=r||{},this.__providers=Jse(i.filter(n=>n!=null&&typeof n=="object")),this.__isFiggyPudding=!0}get(e){return _R(this,e,!0)}get[Symbol.toStringTag](){return"FiggyPudding"}forEach(e,r=this){for(let[i,n]of this.entries())e.call(r,n,i,this)}toJSON(){let e={};return this.forEach((r,i)=>{e[i]=r}),e}*entries(e){for(let i of Object.keys(this.__specs))yield[i,this.get(i)];let r=e||this.__opts.other;if(r){let i=new Set;for(let n of this.__providers){let s=n.entries?n.entries(r):GJe(n);for(let[o,a]of s)r(o)&&!i.has(o)&&(i.add(o),yield[o,a])}}}*[Symbol.iterator](){for(let[e,r]of this.entries())yield[e,r]}*keys(){for(let[e]of this.entries())yield e}*values(){for(let[,e]of this.entries())yield e}concat(...e){return new Proxy(new Zu(this.__specs,this.__opts,Jse(this.__providers).concat(e)),qse)}};try{let t=require("util");Zu.prototype[t.inspect.custom]=function(e,r){return this[Symbol.toStringTag]+" "+t.inspect(this.toJSON(),r)}}catch(t){}function jJe(t){throw Object.assign(new Error(`invalid config key requested: ${t}`),{code:"EBADKEY"})}function _R(t,e,r){let i=t.__specs[e];if(r&&!i&&(!t.__opts.other||!t.__opts.other(e)))jJe(e);else{i||(i={});let n;for(let s of t.__providers){if(n=Wse(e,s),n===void 0&&i.aliases&&i.aliases.length){for(let o of i.aliases)if(o!==e&&(n=Wse(o,s),n!==void 0))break}if(n!==void 0)break}return n===void 0&&i.default!==void 0?typeof i.default=="function"?i.default(t):i.default:n}}function Wse(t,e){let r;return e.__isFiggyPudding?r=_R(e,t,!1):typeof e.get=="function"?r=e.get(t):r=e[t],r}var qse={has(t,e){return e in t.__specs&&_R(t,e,!1)!==void 0},ownKeys(t){return Object.keys(t.__specs)},get(t,e){return typeof e=="symbol"||e.slice(0,2)==="__"||e in Zu.prototype?t[e]:t.get(e)},set(t,e,r){if(typeof e=="symbol"||e.slice(0,2)==="__")return t[e]=r,!0;throw new Error("figgyPudding options cannot be modified. Use .concat() instead.")},deleteProperty(){throw new Error("figgyPudding options cannot be deleted. Use .concat() and shadow them instead.")}};jse.exports=qJe;function qJe(t,e){function r(...i){return new Proxy(new Zu(t,e,i),qse)}return r}function Jse(t){let e=[];return t.forEach(r=>e.unshift(r)),e}function GJe(t){return Object.keys(t).map(e=>[e,t[e]])}});var Zse=C((Xyt,Ds)=>{"use strict";var Qd=require("crypto"),JJe=zse(),WJe=require("stream").Transform,Vse=["sha256","sha384","sha512"],zJe=/^[a-z0-9+/]+(?:=?=?)$/i,VJe=/^([^-]+)-([^?]+)([?\S*]*)$/,XJe=/^([^-]+)-([A-Za-z0-9+/=]{44,88})(\?[\x21-\x7E]*)*$/,ZJe=/^[\x21-\x7E]+$/,mi=JJe({algorithms:{default:["sha512"]},error:{default:!1},integrity:{},options:{default:[]},pickAlgorithm:{default:()=>_Je},Promise:{default:()=>Promise},sep:{default:" "},single:{default:!1},size:{},strict:{default:!1}}),wl=class{get isHash(){return!0}constructor(e,r){r=mi(r);let i=!!r.strict;this.source=e.trim();let n=this.source.match(i?XJe:VJe);if(!n||i&&!Vse.some(o=>o===n[1]))return;this.algorithm=n[1],this.digest=n[2];let s=n[3];this.options=s?s.slice(1).split("?"):[]}hexDigest(){return this.digest&&Buffer.from(this.digest,"base64").toString("hex")}toJSON(){return this.toString()}toString(e){if(e=mi(e),e.strict&&!(Vse.some(i=>i===this.algorithm)&&this.digest.match(zJe)&&(this.options||[]).every(i=>i.match(ZJe))))return"";let r=this.options&&this.options.length?`?${this.options.join("?")}`:"";return`${this.algorithm}-${this.digest}${r}`}},_u=class{get isIntegrity(){return!0}toJSON(){return this.toString()}toString(e){e=mi(e);let r=e.sep||" ";return e.strict&&(r=r.replace(/\S+/g," ")),Object.keys(this).map(i=>this[i].map(n=>wl.prototype.toString.call(n,e)).filter(n=>n.length).join(r)).filter(i=>i.length).join(r)}concat(e,r){r=mi(r);let i=typeof e=="string"?e:bd(e,r);return Ss(`${this.toString(r)} ${i}`,r)}hexDigest(){return Ss(this,{single:!0}).hexDigest()}match(e,r){r=mi(r);let i=Ss(e,r),n=i.pickAlgorithm(r);return this[n]&&i[n]&&this[n].find(s=>i[n].find(o=>s.digest===o.digest))||!1}pickAlgorithm(e){e=mi(e);let r=e.pickAlgorithm,i=Object.keys(this);if(!i.length)throw new Error(`No algorithms available for ${JSON.stringify(this.toString())}`);return i.reduce((n,s)=>r(n,s)||n)}};Ds.exports.parse=Ss;function Ss(t,e){if(e=mi(e),typeof t=="string")return $R(t,e);if(t.algorithm&&t.digest){let r=new _u;return r[t.algorithm]=[t],$R(bd(r,e),e)}else return $R(bd(t,e),e)}function $R(t,e){return e.single?new wl(t,e):t.trim().split(/\s+/).reduce((r,i)=>{let n=new wl(i,e);if(n.algorithm&&n.digest){let s=n.algorithm;r[s]||(r[s]=[]),r[s].push(n)}return r},new _u)}Ds.exports.stringify=bd;function bd(t,e){return e=mi(e),t.algorithm&&t.digest?wl.prototype.toString.call(t,e):typeof t=="string"?bd(Ss(t,e),e):_u.prototype.toString.call(t,e)}Ds.exports.fromHex=$Je;function $Je(t,e,r){r=mi(r);let i=r.options&&r.options.length?`?${r.options.join("?")}`:"";return Ss(`${e}-${Buffer.from(t,"hex").toString("base64")}${i}`,r)}Ds.exports.fromData=eWe;function eWe(t,e){e=mi(e);let r=e.algorithms,i=e.options&&e.options.length?`?${e.options.join("?")}`:"";return r.reduce((n,s)=>{let o=Qd.createHash(s).update(t).digest("base64"),a=new wl(`${s}-${o}${i}`,e);if(a.algorithm&&a.digest){let l=a.algorithm;n[l]||(n[l]=[]),n[l].push(a)}return n},new _u)}Ds.exports.fromStream=tWe;function tWe(t,e){e=mi(e);let r=e.Promise||Promise,i=eL(e);return new r((n,s)=>{t.pipe(i),t.on("error",s),i.on("error",s);let o;i.on("integrity",a=>{o=a}),i.on("end",()=>n(o)),i.on("data",()=>{})})}Ds.exports.checkData=rWe;function rWe(t,e,r){if(r=mi(r),e=Ss(e,r),!Object.keys(e).length){if(r.error)throw Object.assign(new Error("No valid integrity hashes to check against"),{code:"EINTEGRITY"});return!1}let i=e.pickAlgorithm(r),n=Qd.createHash(i).update(t).digest("base64"),s=Ss({algorithm:i,digest:n}),o=s.match(e,r);if(o||!r.error)return o;if(typeof r.size=="number"&&t.length!==r.size){let a=new Error(`data size mismatch when checking ${e}. Wanted: ${r.size} - Found: ${t.length}`);throw a.code="EBADSIZE",a.found=t.length,a.expected=r.size,a.sri=e,a}else{let a=new Error(`Integrity checksum failed when using ${i}: Wanted ${e}, but got ${s}. (${t.length} bytes)`);throw a.code="EINTEGRITY",a.found=s,a.expected=e,a.algorithm=i,a.sri=e,a}}hs.exports.checkStream=cqe;function cqe(t,e,r){r=Ai(r);let i=r.Promise||Promise,n=jF(r.concat({integrity:e}));return new i((s,o)=>{t.pipe(n),t.on("error",o),n.on("error",o);let a;n.on("verified",l=>{a=l}),n.on("end",()=>s(a)),n.on("data",()=>{})})}hs.exports.integrityStream=jF;function jF(t){t=Ai(t);let e=t.integrity&&fs(t.integrity,t),r=e&&Object.keys(e).length,i=r&&e.pickAlgorithm(t),n=r&&e[i],s=Array.from(new Set(t.algorithms.concat(i?[i]:[]))),o=s.map(Kp.createHash),a=0,l=new eqe({transform(c,u,g){a+=c.length,o.forEach(h=>h.update(c,u)),g(null,c,u)}}).on("end",()=>{let c=t.options&&t.options.length?`?${t.options.join("?")}`:"",u=fs(o.map((h,f)=>`${s[f]}-${h.digest("base64")}${c}`).join(" "),t),g=r&&u.match(e,t);if(typeof t.size=="number"&&a!==t.size){let h=new Error(`stream size mismatch when checking ${e}. + Found: ${t.length}`);throw a.code="EBADSIZE",a.found=t.length,a.expected=r.size,a.sri=e,a}else{let a=new Error(`Integrity checksum failed when using ${i}: Wanted ${e}, but got ${s}. (${t.length} bytes)`);throw a.code="EINTEGRITY",a.found=s,a.expected=e,a.algorithm=i,a.sri=e,a}}Ds.exports.checkStream=iWe;function iWe(t,e,r){r=mi(r);let i=r.Promise||Promise,n=eL(r.concat({integrity:e}));return new i((s,o)=>{t.pipe(n),t.on("error",o),n.on("error",o);let a;n.on("verified",l=>{a=l}),n.on("end",()=>s(a)),n.on("data",()=>{})})}Ds.exports.integrityStream=eL;function eL(t){t=mi(t);let e=t.integrity&&Ss(t.integrity,t),r=e&&Object.keys(e).length,i=r&&e.pickAlgorithm(t),n=r&&e[i],s=Array.from(new Set(t.algorithms.concat(i?[i]:[]))),o=s.map(Qd.createHash),a=0,l=new WJe({transform(c,u,g){a+=c.length,o.forEach(h=>h.update(c,u)),g(null,c,u)}}).on("end",()=>{let c=t.options&&t.options.length?`?${t.options.join("?")}`:"",u=Ss(o.map((h,f)=>`${s[f]}-${h.digest("base64")}${c}`).join(" "),t),g=r&&u.match(e,t);if(typeof t.size=="number"&&a!==t.size){let h=new Error(`stream size mismatch when checking ${e}. Wanted: ${t.size} - Found: ${a}`);h.code="EBADSIZE",h.found=a,h.expected=t.size,h.sri=e,l.emit("error",h)}else if(t.integrity&&!g){let h=new Error(`${e} integrity checksum failed when using ${i}: wanted ${n} but got ${u}. (${a} bytes)`);h.code="EINTEGRITY",h.found=u,h.expected=n,h.algorithm=i,h.sri=e,l.emit("error",h)}else l.emit("size",a),l.emit("integrity",u),g&&l.emit("verified",g)});return l}hs.exports.create=uqe;function uqe(t){t=Ai(t);let e=t.algorithms,r=t.options.length?`?${t.options.join("?")}`:"",i=e.map(Kp.createHash);return{update:function(n,s){return i.forEach(o=>o.update(n,s)),this},digest:function(n){return e.reduce((o,a)=>{let l=i.shift().digest("base64"),c=new rl(`${a}-${l}${r}`,t);if(c.algorithm&&c.digest){let u=c.algorithm;o[u]||(o[u]=[]),o[u].push(c)}return o},new bu)}}}var gqe=new Set(Kp.getHashes()),hne=["md5","whirlpool","sha1","sha224","sha256","sha384","sha512","sha3","sha3-256","sha3-384","sha3-512","sha3_256","sha3_384","sha3_512"].filter(t=>gqe.has(t));function sqe(t,e){return hne.indexOf(t.toLowerCase())>=hne.indexOf(e.toLowerCase())?t:e}});var af={};We(af,{BuildType:()=>Ki,Cache:()=>lt,Configuration:()=>oe,DEFAULT_LOCK_FILENAME:()=>_S,DEFAULT_RC_FILENAME:()=>ZS,FormatType:()=>kA,LightReport:()=>zs,LinkType:()=>nt,Manifest:()=>je,MessageName:()=>J,PackageExtensionStatus:()=>Or,PackageExtensionType:()=>yr,Project:()=>ke,ProjectLookup:()=>_o,Report:()=>ti,ReportError:()=>Ge,SettingsType:()=>Ae,StreamReport:()=>we,TAG_REGEXP:()=>bc,TelemetryManager:()=>of,ThrowReport:()=>mr,VirtualFetcher:()=>Yh,Workspace:()=>sf,WorkspaceResolver:()=>ai,YarnVersion:()=>Mi,execUtils:()=>ur,folderUtils:()=>WB,formatUtils:()=>se,hashUtils:()=>pi,httpUtils:()=>Mt,miscUtils:()=>he,scriptUtils:()=>Et,semverUtils:()=>St,structUtils:()=>b,tgzUtils:()=>Ar,treeUtils:()=>vn});var ur={};We(ur,{EndStrategy:()=>Wi,execvp:()=>roe,pipevp:()=>ws});var tg={};We(tg,{AliasFS:()=>xa,CwdFS:()=>Ct,DEFAULT_COMPRESSION_LEVEL:()=>Pa,FakeFS:()=>yn,Filename:()=>ft,JailFS:()=>ys,LazyFS:()=>Vu,LinkStrategy:()=>Gu,NoFS:()=>Yd,NodeFS:()=>It,PortablePath:()=>pe,PosixFS:()=>Zu,ProxiedFS:()=>cr,VirtualFS:()=>_t,ZipFS:()=>Er,ZipOpenFS:()=>Ji,extendFs:()=>Gd,normalizeLineEndings:()=>ll,npath:()=>npath,opendir:()=>Qa,patchFs:()=>eg,ppath:()=>w,statUtils:()=>EB,toFilename:()=>Ut,xfs:()=>R});var EB={};We(EB,{BigIntStatsEntry:()=>Hu,DirEntry:()=>mR,StatEntry:()=>Eo,areStatsEqual:()=>BB,clearStats:()=>Ld,convertToBigIntStats:()=>Md,makeDefaultStats:()=>Yu,makeEmptyStats:()=>Cse});var yB=X(require("util"));var Gi=61440,mo=16384,Es=32768,Io=40960;var mR=class{constructor(){this.name="";this.mode=0}isBlockDevice(){return!1}isCharacterDevice(){return!1}isDirectory(){return(this.mode&Gi)===mo}isFIFO(){return!1}isFile(){return(this.mode&Gi)===Es}isSocket(){return!1}isSymbolicLink(){return(this.mode&Gi)===Io}},Eo=class{constructor(){this.uid=0;this.gid=0;this.size=0;this.blksize=0;this.atimeMs=0;this.mtimeMs=0;this.ctimeMs=0;this.birthtimeMs=0;this.atime=new Date(0);this.mtime=new Date(0);this.ctime=new Date(0);this.birthtime=new Date(0);this.dev=0;this.ino=0;this.mode=Es|420;this.nlink=1;this.rdev=0;this.blocks=1}isBlockDevice(){return!1}isCharacterDevice(){return!1}isDirectory(){return(this.mode&Gi)===mo}isFIFO(){return!1}isFile(){return(this.mode&Gi)===Es}isSocket(){return!1}isSymbolicLink(){return(this.mode&Gi)===Io}},Hu=class{constructor(){this.uid=BigInt(0);this.gid=BigInt(0);this.size=BigInt(0);this.blksize=BigInt(0);this.atimeMs=BigInt(0);this.mtimeMs=BigInt(0);this.ctimeMs=BigInt(0);this.birthtimeMs=BigInt(0);this.atimeNs=BigInt(0);this.mtimeNs=BigInt(0);this.ctimeNs=BigInt(0);this.birthtimeNs=BigInt(0);this.atime=new Date(0);this.mtime=new Date(0);this.ctime=new Date(0);this.birthtime=new Date(0);this.dev=BigInt(0);this.ino=BigInt(0);this.mode=BigInt(Es|420);this.nlink=BigInt(1);this.rdev=BigInt(0);this.blocks=BigInt(1)}isBlockDevice(){return!1}isCharacterDevice(){return!1}isDirectory(){return(this.mode&BigInt(Gi))===BigInt(mo)}isFIFO(){return!1}isFile(){return(this.mode&BigInt(Gi))===BigInt(Es)}isSocket(){return!1}isSymbolicLink(){return(this.mode&BigInt(Gi))===BigInt(Io)}};function Yu(){return new Eo}function Cse(){return Ld(Yu())}function Ld(t){for(let e in t)if(Object.prototype.hasOwnProperty.call(t,e)){let r=t[e];typeof r=="number"?t[e]=0:typeof r=="bigint"?t[e]=BigInt(0):yB.types.isDate(r)&&(t[e]=new Date(0))}return t}function Md(t){let e=new Hu;for(let r in t)if(Object.prototype.hasOwnProperty.call(t,r)){let i=t[r];typeof i=="number"?e[r]=BigInt(i):yB.types.isDate(i)&&(e[r]=new Date(i))}return e.atimeNs=e.atimeMs*BigInt(1e6),e.mtimeNs=e.mtimeMs*BigInt(1e6),e.ctimeNs=e.ctimeMs*BigInt(1e6),e.birthtimeNs=e.birthtimeMs*BigInt(1e6),e}function BB(t,e){if(t.atimeMs!==e.atimeMs||t.birthtimeMs!==e.birthtimeMs||t.blksize!==e.blksize||t.blocks!==e.blocks||t.ctimeMs!==e.ctimeMs||t.dev!==e.dev||t.gid!==e.gid||t.ino!==e.ino||t.isBlockDevice()!==e.isBlockDevice()||t.isCharacterDevice()!==e.isCharacterDevice()||t.isDirectory()!==e.isDirectory()||t.isFIFO()!==e.isFIFO()||t.isFile()!==e.isFile()||t.isSocket()!==e.isSocket()||t.isSymbolicLink()!==e.isSymbolicLink()||t.mode!==e.mode||t.mtimeMs!==e.mtimeMs||t.nlink!==e.nlink||t.rdev!==e.rdev||t.size!==e.size||t.uid!==e.uid)return!1;let r=t,i=e;return!(r.atimeNs!==i.atimeNs||r.mtimeNs!==i.mtimeNs||r.ctimeNs!==i.ctimeNs||r.birthtimeNs!==i.birthtimeNs)}var Od=X(require("fs"));var ju=X(require("path")),IR;(function(t){t[t.File=0]="File",t[t.Portable=1]="Portable",t[t.Native=2]="Native"})(IR||(IR={}));var pe={root:"/",dot:"."},ft={nodeModules:"node_modules",manifest:"package.json",lockfile:"yarn.lock",virtual:"__virtual__",pnpJs:".pnp.js",pnpCjs:".pnp.cjs",rc:".yarnrc.yml"},npath=Object.create(ju.default),w=Object.create(ju.default.posix);npath.cwd=()=>process.cwd();w.cwd=()=>wB(process.cwd());w.resolve=(...t)=>t.length>0&&w.isAbsolute(t[0])?ju.default.posix.resolve(...t):ju.default.posix.resolve(w.cwd(),...t);var ER=function(t,e,r){return e=t.normalize(e),r=t.normalize(r),e===r?".":(e.endsWith(t.sep)||(e=e+t.sep),r.startsWith(e)?r.slice(e.length):null)};npath.fromPortablePath=yR;npath.toPortablePath=wB;npath.contains=(t,e)=>ER(npath,t,e);w.contains=(t,e)=>ER(w,t,e);var BR=/^([a-zA-Z]:.*)$/,wR=/^\\\\(\.\\)?(.*)$/,QR=/^\/([a-zA-Z]:.*)$/,bR=/^\/unc\/(\.dot\/)?(.*)$/;function yR(t){if(process.platform!=="win32")return t;if(t.match(QR))t=t.replace(QR,"$1");else if(t.match(bR))t=t.replace(bR,(e,r,i)=>`\\\\${r?".\\":""}${i}`);else return t;return t.replace(/\//g,"\\")}function wB(t){return process.platform!=="win32"?t:(t.match(BR)?t=t.replace(BR,"/$1"):t.match(wR)&&(t=t.replace(wR,(e,r,i)=>`/unc/${r?".dot/":""}${i}`)),t.replace(/\\/g,"/"))}function Nd(t,e){return t===npath?yR(e):wB(e)}function Ut(t){if(npath.parse(t).dir!==""||w.parse(t).dir!=="")throw new Error(`Invalid filename: "${t}"`);return t}var DR=new Date(315532800*1e3),Gu;(function(t){t.Allow="allow",t.ReadOnly="readOnly"})(Gu||(Gu={}));async function SR(t,e,r,i,n){let s=t.pathUtils.normalize(e),o=r.pathUtils.normalize(i),a=[],l=[];await t.mkdirPromise(t.pathUtils.dirname(e),{recursive:!0});let c=typeof t.lutimesPromise=="function"?t.lutimesPromise.bind(t):t.utimesPromise.bind(t);await QB(a,l,c,t,s,r,o,n);for(let u of a)await u();await Promise.all(l.map(u=>u()))}async function QB(t,e,r,i,n,s,o,a){var h,f;let l=await mse(i,n),c=await s.lstatPromise(o),u=a.stableTime?{mtime:DR,atime:DR}:c,g;switch(!0){case c.isDirectory():g=await Ise(t,e,r,i,n,l,s,o,c,a);break;case c.isFile():g=await Ese(t,e,r,i,n,l,s,o,c,a);break;case c.isSymbolicLink():g=await yse(t,e,r,i,n,l,s,o,c,a);break;default:throw new Error(`Unsupported file type (${c.mode})`)}return(g||((h=l==null?void 0:l.mtime)==null?void 0:h.getTime())!==u.mtime.getTime()||((f=l==null?void 0:l.atime)==null?void 0:f.getTime())!==u.atime.getTime())&&(e.push(()=>r(n,u.atime,u.mtime)),g=!0),(l===null||(l.mode&511)!=(c.mode&511))&&(e.push(()=>i.chmodPromise(n,c.mode&511)),g=!0),g}async function mse(t,e){try{return await t.lstatPromise(e)}catch(r){return null}}async function Ise(t,e,r,i,n,s,o,a,l,c){if(s!==null&&!s.isDirectory())if(c.overwrite)t.push(async()=>i.removePromise(n)),s=null;else return!1;let u=!1;s===null&&(t.push(async()=>i.mkdirPromise(n,{mode:l.mode})),u=!0);let g=await o.readdirPromise(a);if(c.stableSort)for(let h of g.sort())await QB(t,e,r,i,i.pathUtils.join(n,h),o,o.pathUtils.join(a,h),c)&&(u=!0);else(await Promise.all(g.map(async f=>{await QB(t,e,r,i,i.pathUtils.join(n,f),o,o.pathUtils.join(a,f),c)}))).some(f=>f)&&(u=!0);return u}var bB=new WeakMap;function DB(t,e,r,i,n){return async()=>{await t.linkPromise(r,e),n===Gu.ReadOnly&&(i.mode&=~146,await t.chmodPromise(e,i.mode))}}function Bse(t,e,r,i,n){let s=bB.get(t);return typeof s=="undefined"?async()=>{try{await t.copyFilePromise(r,e,Od.default.constants.COPYFILE_FICLONE_FORCE),bB.set(t,!0)}catch(o){if(o.code==="ENOSYS"||o.code==="ENOTSUP")bB.set(t,!1),await DB(t,e,r,i,n)();else throw o}}:s?async()=>t.copyFilePromise(r,e,Od.default.constants.COPYFILE_FICLONE_FORCE):DB(t,e,r,i,n)}async function Ese(t,e,r,i,n,s,o,a,l,c){var h;if(s!==null)if(c.overwrite)t.push(async()=>i.removePromise(n)),s=null;else return!1;let u=(h=c.linkStrategy)!=null?h:null,g=i===o?u!==null?Bse(i,n,a,l,u):async()=>i.copyFilePromise(a,n,Od.default.constants.COPYFILE_FICLONE):u!==null?DB(i,n,a,l,u):async()=>i.writeFilePromise(n,await o.readFilePromise(a));return t.push(async()=>g()),!0}async function yse(t,e,r,i,n,s,o,a,l,c){if(s!==null)if(c.overwrite)t.push(async()=>i.removePromise(n)),s=null;else return!1;return t.push(async()=>{await i.symlinkPromise(Nd(i.pathUtils,await o.readlinkPromise(a)),n)}),!0}function qi(t,e){return Object.assign(new Error(`${t}: ${e}`),{code:t})}function Td(t){return qi("EBUSY",t)}function qu(t,e){return qi("ENOSYS",`${t}, ${e}`)}function yo(t){return qi("EINVAL",`invalid argument, ${t}`)}function Wr(t){return qi("EBADF",`bad file descriptor, ${t}`)}function En(t){return qi("ENOENT",`no such file or directory, ${t}`)}function Un(t){return qi("ENOTDIR",`not a directory, ${t}`)}function Ju(t){return qi("EISDIR",`illegal operation on a directory, ${t}`)}function Kd(t){return qi("EEXIST",`file already exists, ${t}`)}function gi(t){return qi("EROFS",`read-only filesystem, ${t}`)}function PR(t){return qi("ENOTEMPTY",`directory not empty, ${t}`)}function xR(t){return qi("EOPNOTSUPP",`operation not supported, ${t}`)}function kR(){return qi("ERR_DIR_CLOSED","Directory handle was closed")}var SB=class extends Error{constructor(e,r){super(e);this.name="Libzip Error",this.code=r}};var vR=class{constructor(e,r,i={}){this.path=e;this.nextDirent=r;this.opts=i;this.closed=!1}throwIfClosed(){if(this.closed)throw kR()}async*[Symbol.asyncIterator](){try{let e;for(;(e=await this.read())!==null;)yield e}finally{await this.close()}}read(e){let r=this.readSync();return typeof e!="undefined"?e(null,r):Promise.resolve(r)}readSync(){return this.throwIfClosed(),this.nextDirent()}close(e){return this.closeSync(),typeof e!="undefined"?e(null):Promise.resolve()}closeSync(){var e,r;this.throwIfClosed(),(r=(e=this.opts).onClose)==null||r.call(e),this.closed=!0}};function Qa(t,e,r,i){let n=()=>{let s=r.shift();return typeof s=="undefined"?null:Object.assign(t.statSync(t.pathUtils.join(e,s)),{name:s})};return new vR(e,n,i)}var FR=X(require("os"));var yn=class{constructor(e){this.pathUtils=e}async*genTraversePromise(e,{stableSort:r=!1}={}){let i=[e];for(;i.length>0;){let n=i.shift();if((await this.lstatPromise(n)).isDirectory()){let o=await this.readdirPromise(n);if(r)for(let a of o.sort())i.push(this.pathUtils.join(n,a));else throw new Error("Not supported")}else yield n}}async removePromise(e,{recursive:r=!0,maxRetries:i=5}={}){let n;try{n=await this.lstatPromise(e)}catch(s){if(s.code==="ENOENT")return;throw s}if(n.isDirectory()){if(r){let o=await this.readdirPromise(e);await Promise.all(o.map(a=>this.removePromise(this.pathUtils.resolve(e,a))))}let s=0;do try{await this.rmdirPromise(e);break}catch(o){if(o.code==="EBUSY"||o.code==="ENOTEMPTY"){if(i===0)break;await new Promise(a=>setTimeout(a,s*100));continue}else throw o}while(s++{let l;try{[l]=await this.readJsonPromise(i)}catch(c){return Date.now()-s<500}try{return process.kill(l,0),!0}catch(c){return!1}};for(;o===null;)try{o=await this.openPromise(i,"wx")}catch(l){if(l.code==="EEXIST"){if(!await a())try{await this.unlinkPromise(i);continue}catch(c){}if(Date.now()-s<60*1e3)await new Promise(c=>setTimeout(c,n));else throw new Error(`Couldn't acquire a lock in a reasonable time (via ${i})`)}else throw l}await this.writePromise(o,JSON.stringify([process.pid]));try{return await r()}finally{try{await this.closePromise(o),await this.unlinkPromise(i)}catch(l){}}}async readJsonPromise(e){let r=await this.readFilePromise(e,"utf8");try{return JSON.parse(r)}catch(i){throw i.message+=` (in ${e})`,i}}readJsonSync(e){let r=this.readFileSync(e,"utf8");try{return JSON.parse(r)}catch(i){throw i.message+=` (in ${e})`,i}}async writeJsonPromise(e,r){return await this.writeFilePromise(e,`${JSON.stringify(r,null,2)} + Found: ${a}`);h.code="EBADSIZE",h.found=a,h.expected=t.size,h.sri=e,l.emit("error",h)}else if(t.integrity&&!g){let h=new Error(`${e} integrity checksum failed when using ${i}: wanted ${n} but got ${u}. (${a} bytes)`);h.code="EINTEGRITY",h.found=u,h.expected=n,h.algorithm=i,h.sri=e,l.emit("error",h)}else l.emit("size",a),l.emit("integrity",u),g&&l.emit("verified",g)});return l}Ds.exports.create=nWe;function nWe(t){t=mi(t);let e=t.algorithms,r=t.options.length?`?${t.options.join("?")}`:"",i=e.map(Qd.createHash);return{update:function(n,s){return i.forEach(o=>o.update(n,s)),this},digest:function(n){return e.reduce((o,a)=>{let l=i.shift().digest("base64"),c=new wl(`${a}-${l}${r}`,t);if(c.algorithm&&c.digest){let u=c.algorithm;o[u]||(o[u]=[]),o[u].push(c)}return o},new _u)}}}var sWe=new Set(Qd.getHashes()),Xse=["md5","whirlpool","sha1","sha224","sha256","sha384","sha512","sha3","sha3-256","sha3-384","sha3-512","sha3_256","sha3_384","sha3_512"].filter(t=>sWe.has(t));function _Je(t,e){return Xse.indexOf(t.toLowerCase())>=Xse.indexOf(e.toLowerCase())?t:e}});var Yf={};$e(Yf,{BuildType:()=>Vi,Cache:()=>gt,Configuration:()=>le,DEFAULT_LOCK_FILENAME:()=>AP,DEFAULT_RC_FILENAME:()=>aP,FormatType:()=>Cs,InstallMode:()=>kr,LightReport:()=>uo,LinkType:()=>At,Manifest:()=>We,MessageName:()=>z,PackageExtensionStatus:()=>qr,PackageExtensionType:()=>Sr,Project:()=>Fe,ProjectLookup:()=>Ca,Report:()=>ci,ReportError:()=>Ze,SettingsType:()=>ge,StreamReport:()=>xe,TAG_REGEXP:()=>tu,TelemetryManager:()=>Hf,ThrowReport:()=>wr,VirtualFetcher:()=>Qf,Workspace:()=>Uf,WorkspaceResolver:()=>Ci,YarnVersion:()=>yr,execUtils:()=>Nr,folderUtils:()=>Gw,formatUtils:()=>Ae,hashUtils:()=>Di,httpUtils:()=>Ft,miscUtils:()=>de,scriptUtils:()=>bt,semverUtils:()=>kt,structUtils:()=>Q,tgzUtils:()=>hr,treeUtils:()=>Hn});var Nr={};$e(Nr,{EndStrategy:()=>sn,execvp:()=>Yae,pipevp:()=>Os});var Lg={};$e(Lg,{AliasFS:()=>za,CwdFS:()=>yt,DEFAULT_COMPRESSION_LEVEL:()=>Wa,FakeFS:()=>kn,Filename:()=>mt,JailFS:()=>Ns,LazyFS:()=>Pg,LinkStrategy:()=>wg,NoFS:()=>bC,NodeFS:()=>wt,PortablePath:()=>Ee,PosixFS:()=>kg,ProxiedFS:()=>pr,VirtualFS:()=>rr,ZipFS:()=>br,ZipOpenFS:()=>nn,extendFs:()=>SC,normalizeLineEndings:()=>kl,npath:()=>L,opendir:()=>Ga,patchFs:()=>Rg,ppath:()=>B,statUtils:()=>pw,toFilename:()=>Jt,xfs:()=>M});var pw={};$e(pw,{BigIntStatsEntry:()=>Eg,DirEntry:()=>PL,StatEntry:()=>Ro,areStatsEqual:()=>Cw,clearStats:()=>CC,convertToBigIntStats:()=>mC,makeDefaultStats:()=>yg,makeEmptyStats:()=>iae});var dw=te(require("util"));var tn=61440,vo=16384,Ls=32768,Fo=40960;var PL=class{constructor(){this.name="";this.mode=0}isBlockDevice(){return!1}isCharacterDevice(){return!1}isDirectory(){return(this.mode&tn)===vo}isFIFO(){return!1}isFile(){return(this.mode&tn)===Ls}isSocket(){return!1}isSymbolicLink(){return(this.mode&tn)===Fo}},Ro=class{constructor(){this.uid=0;this.gid=0;this.size=0;this.blksize=0;this.atimeMs=0;this.mtimeMs=0;this.ctimeMs=0;this.birthtimeMs=0;this.atime=new Date(0);this.mtime=new Date(0);this.ctime=new Date(0);this.birthtime=new Date(0);this.dev=0;this.ino=0;this.mode=Ls|420;this.nlink=1;this.rdev=0;this.blocks=1}isBlockDevice(){return!1}isCharacterDevice(){return!1}isDirectory(){return(this.mode&tn)===vo}isFIFO(){return!1}isFile(){return(this.mode&tn)===Ls}isSocket(){return!1}isSymbolicLink(){return(this.mode&tn)===Fo}},Eg=class{constructor(){this.uid=BigInt(0);this.gid=BigInt(0);this.size=BigInt(0);this.blksize=BigInt(0);this.atimeMs=BigInt(0);this.mtimeMs=BigInt(0);this.ctimeMs=BigInt(0);this.birthtimeMs=BigInt(0);this.atimeNs=BigInt(0);this.mtimeNs=BigInt(0);this.ctimeNs=BigInt(0);this.birthtimeNs=BigInt(0);this.atime=new Date(0);this.mtime=new Date(0);this.ctime=new Date(0);this.birthtime=new Date(0);this.dev=BigInt(0);this.ino=BigInt(0);this.mode=BigInt(Ls|420);this.nlink=BigInt(1);this.rdev=BigInt(0);this.blocks=BigInt(1)}isBlockDevice(){return!1}isCharacterDevice(){return!1}isDirectory(){return(this.mode&BigInt(tn))===BigInt(vo)}isFIFO(){return!1}isFile(){return(this.mode&BigInt(tn))===BigInt(Ls)}isSocket(){return!1}isSymbolicLink(){return(this.mode&BigInt(tn))===BigInt(Fo)}};function yg(){return new Ro}function iae(){return CC(yg())}function CC(t){for(let e in t)if(Object.prototype.hasOwnProperty.call(t,e)){let r=t[e];typeof r=="number"?t[e]=0:typeof r=="bigint"?t[e]=BigInt(0):dw.types.isDate(r)&&(t[e]=new Date(0))}return t}function mC(t){let e=new Eg;for(let r in t)if(Object.prototype.hasOwnProperty.call(t,r)){let i=t[r];typeof i=="number"?e[r]=BigInt(i):dw.types.isDate(i)&&(e[r]=new Date(i))}return e.atimeNs=e.atimeMs*BigInt(1e6),e.mtimeNs=e.mtimeMs*BigInt(1e6),e.ctimeNs=e.ctimeMs*BigInt(1e6),e.birthtimeNs=e.birthtimeMs*BigInt(1e6),e}function Cw(t,e){if(t.atimeMs!==e.atimeMs||t.birthtimeMs!==e.birthtimeMs||t.blksize!==e.blksize||t.blocks!==e.blocks||t.ctimeMs!==e.ctimeMs||t.dev!==e.dev||t.gid!==e.gid||t.ino!==e.ino||t.isBlockDevice()!==e.isBlockDevice()||t.isCharacterDevice()!==e.isCharacterDevice()||t.isDirectory()!==e.isDirectory()||t.isFIFO()!==e.isFIFO()||t.isFile()!==e.isFile()||t.isSocket()!==e.isSocket()||t.isSymbolicLink()!==e.isSymbolicLink()||t.mode!==e.mode||t.mtimeMs!==e.mtimeMs||t.nlink!==e.nlink||t.rdev!==e.rdev||t.size!==e.size||t.uid!==e.uid)return!1;let r=t,i=e;return!(r.atimeNs!==i.atimeNs||r.mtimeNs!==i.mtimeNs||r.ctimeNs!==i.ctimeNs||r.birthtimeNs!==i.birthtimeNs)}var EC=te(require("fs"));var Bg=te(require("path")),kL;(function(i){i[i.File=0]="File",i[i.Portable=1]="Portable",i[i.Native=2]="Native"})(kL||(kL={}));var Ee={root:"/",dot:"."},mt={nodeModules:"node_modules",manifest:"package.json",lockfile:"yarn.lock",virtual:"__virtual__",pnpJs:".pnp.js",pnpCjs:".pnp.cjs",rc:".yarnrc.yml"},L=Object.create(Bg.default),B=Object.create(Bg.default.posix);L.cwd=()=>process.cwd();B.cwd=()=>mw(process.cwd());B.resolve=(...t)=>t.length>0&&B.isAbsolute(t[0])?Bg.default.posix.resolve(...t):Bg.default.posix.resolve(B.cwd(),...t);var vL=function(t,e,r){return e=t.normalize(e),r=t.normalize(r),e===r?".":(e.endsWith(t.sep)||(e=e+t.sep),r.startsWith(e)?r.slice(e.length):null)};L.fromPortablePath=FL;L.toPortablePath=mw;L.contains=(t,e)=>vL(L,t,e);B.contains=(t,e)=>vL(B,t,e);var RL=/^([a-zA-Z]:.*)$/,LL=/^\\\\(\.\\)?(.*)$/,NL=/^\/([a-zA-Z]:.*)$/,ML=/^\/unc\/(\.dot\/)?(.*)$/;function FL(t){if(process.platform!=="win32")return t;if(t.match(NL))t=t.replace(NL,"$1");else if(t.match(ML))t=t.replace(ML,(e,r,i)=>`\\\\${r?".\\":""}${i}`);else return t;return t.replace(/\//g,"\\")}function mw(t){return process.platform!=="win32"?t:(t.match(RL)?t=t.replace(RL,"/$1"):t.match(LL)&&(t=t.replace(LL,(e,r,i)=>`/unc/${r?".dot/":""}${i}`)),t.replace(/\\/g,"/"))}function IC(t,e){return t===L?FL(e):mw(e)}function Jt(t){if(L.parse(t).dir!==""||B.parse(t).dir!=="")throw new Error(`Invalid filename: "${t}"`);return t}var OL=new Date(315532800*1e3),wg;(function(r){r.Allow="allow",r.ReadOnly="readOnly"})(wg||(wg={}));async function KL(t,e,r,i,n){let s=t.pathUtils.normalize(e),o=r.pathUtils.normalize(i),a=[],l=[];await t.mkdirPromise(t.pathUtils.dirname(e),{recursive:!0});let c=typeof t.lutimesPromise=="function"?t.lutimesPromise.bind(t):t.utimesPromise.bind(t);await Iw(a,l,c,t,s,r,o,n);for(let u of a)await u();await Promise.all(l.map(u=>u()))}async function Iw(t,e,r,i,n,s,o,a){var h,f;let l=await nae(i,n),c=await s.lstatPromise(o),u=a.stableTime?{mtime:OL,atime:OL}:c,g;switch(!0){case c.isDirectory():g=await sae(t,e,r,i,n,l,s,o,c,a);break;case c.isFile():g=await oae(t,e,r,i,n,l,s,o,c,a);break;case c.isSymbolicLink():g=await aae(t,e,r,i,n,l,s,o,c,a);break;default:throw new Error(`Unsupported file type (${c.mode})`)}return(g||((h=l==null?void 0:l.mtime)==null?void 0:h.getTime())!==u.mtime.getTime()||((f=l==null?void 0:l.atime)==null?void 0:f.getTime())!==u.atime.getTime())&&(e.push(()=>r(n,u.atime,u.mtime)),g=!0),(l===null||(l.mode&511)!=(c.mode&511))&&(e.push(()=>i.chmodPromise(n,c.mode&511)),g=!0),g}async function nae(t,e){try{return await t.lstatPromise(e)}catch(r){return null}}async function sae(t,e,r,i,n,s,o,a,l,c){if(s!==null&&!s.isDirectory())if(c.overwrite)t.push(async()=>i.removePromise(n)),s=null;else return!1;let u=!1;s===null&&(t.push(async()=>i.mkdirPromise(n,{mode:l.mode})),u=!0);let g=await o.readdirPromise(a);if(c.stableSort)for(let h of g.sort())await Iw(t,e,r,i,i.pathUtils.join(n,h),o,o.pathUtils.join(a,h),c)&&(u=!0);else(await Promise.all(g.map(async f=>{await Iw(t,e,r,i,i.pathUtils.join(n,f),o,o.pathUtils.join(a,f),c)}))).some(f=>f)&&(u=!0);return u}var Ew=new WeakMap;function yw(t,e,r,i,n){return async()=>{await t.linkPromise(r,e),n===wg.ReadOnly&&(i.mode&=~146,await t.chmodPromise(e,i.mode))}}function Aae(t,e,r,i,n){let s=Ew.get(t);return typeof s=="undefined"?async()=>{try{await t.copyFilePromise(r,e,EC.default.constants.COPYFILE_FICLONE_FORCE),Ew.set(t,!0)}catch(o){if(o.code==="ENOSYS"||o.code==="ENOTSUP")Ew.set(t,!1),await yw(t,e,r,i,n)();else throw o}}:s?async()=>t.copyFilePromise(r,e,EC.default.constants.COPYFILE_FICLONE_FORCE):yw(t,e,r,i,n)}async function oae(t,e,r,i,n,s,o,a,l,c){var h;if(s!==null)if(c.overwrite)t.push(async()=>i.removePromise(n)),s=null;else return!1;let u=(h=c.linkStrategy)!=null?h:null,g=i===o?u!==null?Aae(i,n,a,l,u):async()=>i.copyFilePromise(a,n,EC.default.constants.COPYFILE_FICLONE):u!==null?yw(i,n,a,l,u):async()=>i.writeFilePromise(n,await o.readFilePromise(a));return t.push(async()=>g()),!0}async function aae(t,e,r,i,n,s,o,a,l,c){if(s!==null)if(c.overwrite)t.push(async()=>i.removePromise(n)),s=null;else return!1;return t.push(async()=>{await i.symlinkPromise(IC(i.pathUtils,await o.readlinkPromise(a)),n)}),!0}function rn(t,e){return Object.assign(new Error(`${t}: ${e}`),{code:t})}function yC(t){return rn("EBUSY",t)}function Qg(t,e){return rn("ENOSYS",`${t}, ${e}`)}function Lo(t){return rn("EINVAL",`invalid argument, ${t}`)}function ti(t){return rn("EBADF",`bad file descriptor, ${t}`)}function Pn(t){return rn("ENOENT",`no such file or directory, ${t}`)}function Zn(t){return rn("ENOTDIR",`not a directory, ${t}`)}function bg(t){return rn("EISDIR",`illegal operation on a directory, ${t}`)}function BC(t){return rn("EEXIST",`file already exists, ${t}`)}function Bi(t){return rn("EROFS",`read-only filesystem, ${t}`)}function TL(t){return rn("ENOTEMPTY",`directory not empty, ${t}`)}function UL(t){return rn("EOPNOTSUPP",`operation not supported, ${t}`)}function HL(){return rn("ERR_DIR_CLOSED","Directory handle was closed")}var Bw=class extends Error{constructor(e,r){super(e);this.name="Libzip Error",this.code=r}};var YL=class{constructor(e,r,i={}){this.path=e;this.nextDirent=r;this.opts=i;this.closed=!1}throwIfClosed(){if(this.closed)throw HL()}async*[Symbol.asyncIterator](){try{let e;for(;(e=await this.read())!==null;)yield e}finally{await this.close()}}read(e){let r=this.readSync();return typeof e!="undefined"?e(null,r):Promise.resolve(r)}readSync(){return this.throwIfClosed(),this.nextDirent()}close(e){return this.closeSync(),typeof e!="undefined"?e(null):Promise.resolve()}closeSync(){var e,r;this.throwIfClosed(),(r=(e=this.opts).onClose)==null||r.call(e),this.closed=!0}};function Ga(t,e,r,i){let n=()=>{let s=r.shift();return typeof s=="undefined"?null:Object.assign(t.statSync(t.pathUtils.join(e,s)),{name:s})};return new YL(e,n,i)}var GL=te(require("os"));var kn=class{constructor(e){this.pathUtils=e}async*genTraversePromise(e,{stableSort:r=!1}={}){let i=[e];for(;i.length>0;){let n=i.shift();if((await this.lstatPromise(n)).isDirectory()){let o=await this.readdirPromise(n);if(r)for(let a of o.sort())i.push(this.pathUtils.join(n,a));else throw new Error("Not supported")}else yield n}}async removePromise(e,{recursive:r=!0,maxRetries:i=5}={}){let n;try{n=await this.lstatPromise(e)}catch(s){if(s.code==="ENOENT")return;throw s}if(n.isDirectory()){if(r){let o=await this.readdirPromise(e);await Promise.all(o.map(a=>this.removePromise(this.pathUtils.resolve(e,a))))}let s=0;do try{await this.rmdirPromise(e);break}catch(o){if(o.code==="EBUSY"||o.code==="ENOTEMPTY"){if(i===0)break;await new Promise(a=>setTimeout(a,s*100));continue}else throw o}while(s++{let l;try{[l]=await this.readJsonPromise(i)}catch(c){return Date.now()-s<500}try{return process.kill(l,0),!0}catch(c){return!1}};for(;o===null;)try{o=await this.openPromise(i,"wx")}catch(l){if(l.code==="EEXIST"){if(!await a())try{await this.unlinkPromise(i);continue}catch(c){}if(Date.now()-s<60*1e3)await new Promise(c=>setTimeout(c,n));else throw new Error(`Couldn't acquire a lock in a reasonable time (via ${i})`)}else throw l}await this.writePromise(o,JSON.stringify([process.pid]));try{return await r()}finally{try{await this.closePromise(o),await this.unlinkPromise(i)}catch(l){}}}async readJsonPromise(e){let r=await this.readFilePromise(e,"utf8");try{return JSON.parse(r)}catch(i){throw i.message+=` (in ${e})`,i}}readJsonSync(e){let r=this.readFileSync(e,"utf8");try{return JSON.parse(r)}catch(i){throw i.message+=` (in ${e})`,i}}async writeJsonPromise(e,r){return await this.writeFilePromise(e,`${JSON.stringify(r,null,2)} `)}writeJsonSync(e,r){return this.writeFileSync(e,`${JSON.stringify(r,null,2)} -`)}async preserveTimePromise(e,r){let i=await this.lstatPromise(e),n=await r();typeof n!="undefined"&&(e=n),this.lutimesPromise?await this.lutimesPromise(e,i.atime,i.mtime):i.isSymbolicLink()||await this.utimesPromise(e,i.atime,i.mtime)}async preserveTimeSync(e,r){let i=this.lstatSync(e),n=r();typeof n!="undefined"&&(e=n),this.lutimesSync?this.lutimesSync(e,i.atime,i.mtime):i.isSymbolicLink()||this.utimesSync(e,i.atime,i.mtime)}};yn.DEFAULT_TIME=315532800;var ba=class extends yn{constructor(){super(w)}};function wse(t){let e=t.match(/\r?\n/g);if(e===null)return FR.EOL;let r=e.filter(n=>n===`\r +`)}async preserveTimePromise(e,r){let i=await this.lstatPromise(e),n=await r();typeof n!="undefined"&&(e=n),this.lutimesPromise?await this.lutimesPromise(e,i.atime,i.mtime):i.isSymbolicLink()||await this.utimesPromise(e,i.atime,i.mtime)}async preserveTimeSync(e,r){let i=this.lstatSync(e),n=r();typeof n!="undefined"&&(e=n),this.lutimesSync?this.lutimesSync(e,i.atime,i.mtime):i.isSymbolicLink()||this.utimesSync(e,i.atime,i.mtime)}};kn.DEFAULT_TIME=315532800;var ja=class extends kn{constructor(){super(B)}};function lae(t){let e=t.match(/\r?\n/g);if(e===null)return GL.EOL;let r=e.filter(n=>n===`\r `).length,i=e.length-r;return r>i?`\r `:` -`}function ll(t,e){return e.replace(/\r?\n/g,wse(t))}var cl=X(require("fs")),PB=X(require("stream")),NR=X(require("util")),xB=X(require("zlib"));var RR=X(require("fs"));var It=class extends ba{constructor(e=RR.default){super();this.realFs=e,typeof this.realFs.lutimes!="undefined"&&(this.lutimesPromise=this.lutimesPromiseImpl,this.lutimesSync=this.lutimesSyncImpl)}getExtractHint(){return!1}getRealPath(){return pe.root}resolve(e){return w.resolve(e)}async openPromise(e,r,i){return await new Promise((n,s)=>{this.realFs.open(npath.fromPortablePath(e),r,i,this.makeCallback(n,s))})}openSync(e,r,i){return this.realFs.openSync(npath.fromPortablePath(e),r,i)}async opendirPromise(e,r){return await new Promise((i,n)=>{typeof r!="undefined"?this.realFs.opendir(npath.fromPortablePath(e),r,this.makeCallback(i,n)):this.realFs.opendir(npath.fromPortablePath(e),this.makeCallback(i,n))}).then(i=>Object.defineProperty(i,"path",{value:e,configurable:!0,writable:!0}))}opendirSync(e,r){let i=typeof r!="undefined"?this.realFs.opendirSync(npath.fromPortablePath(e),r):this.realFs.opendirSync(npath.fromPortablePath(e));return Object.defineProperty(i,"path",{value:e,configurable:!0,writable:!0})}async readPromise(e,r,i=0,n=0,s=-1){return await new Promise((o,a)=>{this.realFs.read(e,r,i,n,s,(l,c)=>{l?a(l):o(c)})})}readSync(e,r,i,n,s){return this.realFs.readSync(e,r,i,n,s)}async writePromise(e,r,i,n,s){return await new Promise((o,a)=>typeof r=="string"?this.realFs.write(e,r,i,this.makeCallback(o,a)):this.realFs.write(e,r,i,n,s,this.makeCallback(o,a)))}writeSync(e,r,i,n,s){return typeof r=="string"?this.realFs.writeSync(e,r,i):this.realFs.writeSync(e,r,i,n,s)}async closePromise(e){await new Promise((r,i)=>{this.realFs.close(e,this.makeCallback(r,i))})}closeSync(e){this.realFs.closeSync(e)}createReadStream(e,r){let i=e!==null?npath.fromPortablePath(e):e;return this.realFs.createReadStream(i,r)}createWriteStream(e,r){let i=e!==null?npath.fromPortablePath(e):e;return this.realFs.createWriteStream(i,r)}async realpathPromise(e){return await new Promise((r,i)=>{this.realFs.realpath(npath.fromPortablePath(e),{},this.makeCallback(r,i))}).then(r=>npath.toPortablePath(r))}realpathSync(e){return npath.toPortablePath(this.realFs.realpathSync(npath.fromPortablePath(e),{}))}async existsPromise(e){return await new Promise(r=>{this.realFs.exists(npath.fromPortablePath(e),r)})}accessSync(e,r){return this.realFs.accessSync(npath.fromPortablePath(e),r)}async accessPromise(e,r){return await new Promise((i,n)=>{this.realFs.access(npath.fromPortablePath(e),r,this.makeCallback(i,n))})}existsSync(e){return this.realFs.existsSync(npath.fromPortablePath(e))}async statPromise(e,r){return await new Promise((i,n)=>{r?this.realFs.stat(npath.fromPortablePath(e),r,this.makeCallback(i,n)):this.realFs.stat(npath.fromPortablePath(e),this.makeCallback(i,n))})}statSync(e,r){return r?this.realFs.statSync(npath.fromPortablePath(e),r):this.realFs.statSync(npath.fromPortablePath(e))}async fstatPromise(e,r){return await new Promise((i,n)=>{r?this.realFs.fstat(e,r,this.makeCallback(i,n)):this.realFs.fstat(e,this.makeCallback(i,n))})}fstatSync(e,r){return r?this.realFs.fstatSync(e,r):this.realFs.fstatSync(e)}async lstatPromise(e,r){return await new Promise((i,n)=>{r?this.realFs.lstat(npath.fromPortablePath(e),r,this.makeCallback(i,n)):this.realFs.lstat(npath.fromPortablePath(e),this.makeCallback(i,n))})}lstatSync(e,r){return r?this.realFs.lstatSync(npath.fromPortablePath(e),r):this.realFs.lstatSync(npath.fromPortablePath(e))}async chmodPromise(e,r){return await new Promise((i,n)=>{this.realFs.chmod(npath.fromPortablePath(e),r,this.makeCallback(i,n))})}chmodSync(e,r){return this.realFs.chmodSync(npath.fromPortablePath(e),r)}async chownPromise(e,r,i){return await new Promise((n,s)=>{this.realFs.chown(npath.fromPortablePath(e),r,i,this.makeCallback(n,s))})}chownSync(e,r,i){return this.realFs.chownSync(npath.fromPortablePath(e),r,i)}async renamePromise(e,r){return await new Promise((i,n)=>{this.realFs.rename(npath.fromPortablePath(e),npath.fromPortablePath(r),this.makeCallback(i,n))})}renameSync(e,r){return this.realFs.renameSync(npath.fromPortablePath(e),npath.fromPortablePath(r))}async copyFilePromise(e,r,i=0){return await new Promise((n,s)=>{this.realFs.copyFile(npath.fromPortablePath(e),npath.fromPortablePath(r),i,this.makeCallback(n,s))})}copyFileSync(e,r,i=0){return this.realFs.copyFileSync(npath.fromPortablePath(e),npath.fromPortablePath(r),i)}async appendFilePromise(e,r,i){return await new Promise((n,s)=>{let o=typeof e=="string"?npath.fromPortablePath(e):e;i?this.realFs.appendFile(o,r,i,this.makeCallback(n,s)):this.realFs.appendFile(o,r,this.makeCallback(n,s))})}appendFileSync(e,r,i){let n=typeof e=="string"?npath.fromPortablePath(e):e;i?this.realFs.appendFileSync(n,r,i):this.realFs.appendFileSync(n,r)}async writeFilePromise(e,r,i){return await new Promise((n,s)=>{let o=typeof e=="string"?npath.fromPortablePath(e):e;i?this.realFs.writeFile(o,r,i,this.makeCallback(n,s)):this.realFs.writeFile(o,r,this.makeCallback(n,s))})}writeFileSync(e,r,i){let n=typeof e=="string"?npath.fromPortablePath(e):e;i?this.realFs.writeFileSync(n,r,i):this.realFs.writeFileSync(n,r)}async unlinkPromise(e){return await new Promise((r,i)=>{this.realFs.unlink(npath.fromPortablePath(e),this.makeCallback(r,i))})}unlinkSync(e){return this.realFs.unlinkSync(npath.fromPortablePath(e))}async utimesPromise(e,r,i){return await new Promise((n,s)=>{this.realFs.utimes(npath.fromPortablePath(e),r,i,this.makeCallback(n,s))})}utimesSync(e,r,i){this.realFs.utimesSync(npath.fromPortablePath(e),r,i)}async lutimesPromiseImpl(e,r,i){let n=this.realFs.lutimes;if(typeof n=="undefined")throw qu("unavailable Node binding",`lutimes '${e}'`);return await new Promise((s,o)=>{n.call(this.realFs,npath.fromPortablePath(e),r,i,this.makeCallback(s,o))})}lutimesSyncImpl(e,r,i){let n=this.realFs.lutimesSync;if(typeof n=="undefined")throw qu("unavailable Node binding",`lutimes '${e}'`);n.call(this.realFs,npath.fromPortablePath(e),r,i)}async mkdirPromise(e,r){return await new Promise((i,n)=>{this.realFs.mkdir(npath.fromPortablePath(e),r,this.makeCallback(i,n))})}mkdirSync(e,r){return this.realFs.mkdirSync(npath.fromPortablePath(e),r)}async rmdirPromise(e,r){return await new Promise((i,n)=>{r?this.realFs.rmdir(npath.fromPortablePath(e),r,this.makeCallback(i,n)):this.realFs.rmdir(npath.fromPortablePath(e),this.makeCallback(i,n))})}rmdirSync(e,r){return this.realFs.rmdirSync(npath.fromPortablePath(e),r)}async linkPromise(e,r){return await new Promise((i,n)=>{this.realFs.link(npath.fromPortablePath(e),npath.fromPortablePath(r),this.makeCallback(i,n))})}linkSync(e,r){return this.realFs.linkSync(npath.fromPortablePath(e),npath.fromPortablePath(r))}async symlinkPromise(e,r,i){let n=i||(e.endsWith("/")?"dir":"file");return await new Promise((s,o)=>{this.realFs.symlink(npath.fromPortablePath(e.replace(/\/+$/,"")),npath.fromPortablePath(r),n,this.makeCallback(s,o))})}symlinkSync(e,r,i){let n=i||(e.endsWith("/")?"dir":"file");return this.realFs.symlinkSync(npath.fromPortablePath(e.replace(/\/+$/,"")),npath.fromPortablePath(r),n)}async readFilePromise(e,r){return await new Promise((i,n)=>{let s=typeof e=="string"?npath.fromPortablePath(e):e;this.realFs.readFile(s,r,this.makeCallback(i,n))})}readFileSync(e,r){let i=typeof e=="string"?npath.fromPortablePath(e):e;return this.realFs.readFileSync(i,r)}async readdirPromise(e,{withFileTypes:r}={}){return await new Promise((i,n)=>{r?this.realFs.readdir(npath.fromPortablePath(e),{withFileTypes:!0},this.makeCallback(i,n)):this.realFs.readdir(npath.fromPortablePath(e),this.makeCallback(s=>i(s),n))})}readdirSync(e,{withFileTypes:r}={}){return r?this.realFs.readdirSync(npath.fromPortablePath(e),{withFileTypes:!0}):this.realFs.readdirSync(npath.fromPortablePath(e))}async readlinkPromise(e){return await new Promise((r,i)=>{this.realFs.readlink(npath.fromPortablePath(e),this.makeCallback(r,i))}).then(r=>npath.toPortablePath(r))}readlinkSync(e){return npath.toPortablePath(this.realFs.readlinkSync(npath.fromPortablePath(e)))}async truncatePromise(e,r){return await new Promise((i,n)=>{this.realFs.truncate(npath.fromPortablePath(e),r,this.makeCallback(i,n))})}truncateSync(e,r){return this.realFs.truncateSync(npath.fromPortablePath(e),r)}watch(e,r,i){return this.realFs.watch(npath.fromPortablePath(e),r,i)}watchFile(e,r,i){return this.realFs.watchFile(npath.fromPortablePath(e),r,i)}unwatchFile(e,r){return this.realFs.unwatchFile(npath.fromPortablePath(e),r)}makeCallback(e,r){return(i,n)=>{i?r(i):e(n)}}};var LR=X(require("events"));var Da;(function(t){t.Change="change",t.Stop="stop"})(Da||(Da={}));var Sa;(function(t){t.Ready="ready",t.Running="running",t.Stopped="stopped"})(Sa||(Sa={}));function MR(t,e){if(t!==e)throw new Error(`Invalid StatWatcher status: expected '${e}', got '${t}'`)}var Wu=class extends LR.EventEmitter{constructor(e,r,{bigint:i=!1}={}){super();this.status=Sa.Ready;this.changeListeners=new Map;this.startTimeout=null;this.fakeFs=e,this.path=r,this.bigint=i,this.lastStats=this.stat()}static create(e,r,i){let n=new Wu(e,r,i);return n.start(),n}start(){MR(this.status,Sa.Ready),this.status=Sa.Running,this.startTimeout=setTimeout(()=>{this.startTimeout=null,this.fakeFs.existsSync(this.path)||this.emit(Da.Change,this.lastStats,this.lastStats)},3)}stop(){MR(this.status,Sa.Running),this.status=Sa.Stopped,this.startTimeout!==null&&(clearTimeout(this.startTimeout),this.startTimeout=null),this.emit(Da.Stop)}stat(){try{return this.fakeFs.statSync(this.path,{bigint:this.bigint})}catch(e){if(e.code==="ENOENT"){let r=this.bigint?new Hu:new Eo;return Ld(r)}else throw e}}makeInterval(e){let r=setInterval(()=>{let i=this.stat(),n=this.lastStats;BB(i,n)||(this.lastStats=i,this.emit(Da.Change,i,n))},e.interval);return e.persistent?r:r.unref()}registerChangeListener(e,r){this.addListener(Da.Change,e),this.changeListeners.set(e,this.makeInterval(r))}unregisterChangeListener(e){this.removeListener(Da.Change,e);let r=this.changeListeners.get(e);typeof r!="undefined"&&clearInterval(r),this.changeListeners.delete(e)}unregisterAllChangeListeners(){for(let e of this.changeListeners.keys())this.unregisterChangeListener(e)}hasChangeListeners(){return this.changeListeners.size>0}ref(){for(let e of this.changeListeners.values())e.ref();return this}unref(){for(let e of this.changeListeners.values())e.unref();return this}};var Ud=new WeakMap;function Hd(t,e,r,i){let n,s,o,a;switch(typeof r){case"function":n=!1,s=!0,o=5007,a=r;break;default:({bigint:n=!1,persistent:s=!0,interval:o=5007}=r),a=i;break}let l=Ud.get(t);typeof l=="undefined"&&Ud.set(t,l=new Map);let c=l.get(e);return typeof c=="undefined"&&(c=Wu.create(t,e,{bigint:n}),l.set(e,c)),c.registerChangeListener(a,{persistent:s,interval:o}),c}function zu(t,e,r){let i=Ud.get(t);if(typeof i=="undefined")return;let n=i.get(e);typeof n!="undefined"&&(typeof r=="undefined"?n.unregisterAllChangeListeners():n.unregisterChangeListener(r),n.hasChangeListeners()||(n.stop(),i.delete(e)))}function Xu(t){let e=Ud.get(t);if(typeof e!="undefined")for(let r of e.keys())zu(t,r)}var Pa="mixed";function Qse(t){if(typeof t=="string"&&String(+t)===t)return+t;if(Number.isFinite(t))return t<0?Date.now()/1e3:t;if(NR.isDate(t))return t.getTime()/1e3;throw new Error("Invalid time")}var Er=class extends ba{constructor(e,r){super();this.lzSource=null;this.listings=new Map;this.entries=new Map;this.fileSources=new Map;this.fds=new Map;this.nextFd=0;this.ready=!1;this.readOnly=!1;this.libzip=r.libzip;let i=r;if(this.level=typeof i.level!="undefined"?i.level:Pa,e===null&&(e=Buffer.from([80,75,5,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0])),typeof e=="string"){let{baseFs:o=new It}=i;this.baseFs=o,this.path=e}else this.path=null,this.baseFs=null;if(r.stats)this.stats=r.stats;else if(typeof e=="string")try{this.stats=this.baseFs.statSync(e)}catch(o){if(o.code==="ENOENT"&&i.create)this.stats=Yu();else throw o}else this.stats=Yu();let n=this.libzip.malloc(4);try{let o=0;if(typeof e=="string"&&i.create&&(o|=this.libzip.ZIP_CREATE|this.libzip.ZIP_TRUNCATE),r.readOnly&&(o|=this.libzip.ZIP_RDONLY,this.readOnly=!0),typeof e=="string")this.zip=this.libzip.open(npath.fromPortablePath(e),o,n);else{let a=this.allocateUnattachedSource(e);try{this.zip=this.libzip.openFromSource(a,o,n),this.lzSource=a}catch(l){throw this.libzip.source.free(a),l}}if(this.zip===0){let a=this.libzip.struct.errorS();throw this.libzip.error.initWithCode(a,this.libzip.getValue(n,"i32")),this.makeLibzipError(a)}}finally{this.libzip.free(n)}this.listings.set(pe.root,new Set);let s=this.libzip.getNumEntries(this.zip,0);for(let o=0;oe)throw new Error("Overread");let n=this.libzip.HEAPU8.subarray(r,r+e);return Buffer.from(n)}finally{this.libzip.free(r)}}finally{this.libzip.source.close(this.lzSource),this.libzip.source.free(this.lzSource),this.ready=!1}}prepareClose(){if(!this.ready)throw Td("archive closed, close");Xu(this)}saveAndClose(){if(!this.path||!this.baseFs)throw new Error("ZipFS cannot be saved and must be discarded when loaded from a buffer");if(this.prepareClose(),this.readOnly){this.discardAndClose();return}let e=this.baseFs.existsSync(this.path)?this.baseFs.statSync(this.path).mode&511:null;if(this.libzip.close(this.zip)===-1)throw this.makeLibzipError(this.libzip.getError(this.zip));e===null?this.baseFs.chmodSync(this.path,this.stats.mode):e!==(this.baseFs.statSync(this.path).mode&511)&&this.baseFs.chmodSync(this.path,e),this.ready=!1}discardAndClose(){this.prepareClose(),this.libzip.discard(this.zip),this.ready=!1}resolve(e){return w.resolve(pe.root,e)}async openPromise(e,r,i){return this.openSync(e,r,i)}openSync(e,r,i){let n=this.nextFd++;return this.fds.set(n,{cursor:0,p:e}),n}hasOpenFileHandles(){return!!this.fds.size}async opendirPromise(e,r){return this.opendirSync(e,r)}opendirSync(e,r={}){let i=this.resolveFilename(`opendir '${e}'`,e);if(!this.entries.has(i)&&!this.listings.has(i))throw En(`opendir '${e}'`);let n=this.listings.get(i);if(!n)throw Un(`opendir '${e}'`);let s=[...n],o=this.openSync(i,"r");return Qa(this,i,s,{onClose:()=>{this.closeSync(o)}})}async readPromise(e,r,i,n,s){return this.readSync(e,r,i,n,s)}readSync(e,r,i=0,n=0,s=-1){let o=this.fds.get(e);if(typeof o=="undefined")throw Wr("read");let a;s===-1||s===null?a=o.cursor:a=s;let l=this.readFileSync(o.p);l.copy(r,i,a,a+n);let c=Math.max(0,Math.min(l.length-a,n));return(s===-1||s===null)&&(o.cursor+=c),c}async writePromise(e,r,i,n,s){return typeof r=="string"?this.writeSync(e,r,s):this.writeSync(e,r,i,n,s)}writeSync(e,r,i,n,s){throw typeof this.fds.get(e)=="undefined"?Wr("read"):new Error("Unimplemented")}async closePromise(e){return this.closeSync(e)}closeSync(e){if(typeof this.fds.get(e)=="undefined")throw Wr("read");this.fds.delete(e)}createReadStream(e,{encoding:r}={}){if(e===null)throw new Error("Unimplemented");let i=this.openSync(e,"r"),n=Object.assign(new PB.PassThrough({emitClose:!0,autoDestroy:!0,destroy:(o,a)=>{clearImmediate(s),this.closeSync(i),a(o)}}),{close(){n.destroy()},bytesRead:0,path:e}),s=setImmediate(async()=>{try{let o=await this.readFilePromise(e,r);n.bytesRead=o.length,n.end(o)}catch(o){n.destroy(o)}});return n}createWriteStream(e,{encoding:r}={}){if(this.readOnly)throw gi(`open '${e}'`);if(e===null)throw new Error("Unimplemented");let i=[],n=this.openSync(e,"w"),s=Object.assign(new PB.PassThrough({autoDestroy:!0,emitClose:!0,destroy:(o,a)=>{try{o?a(o):(this.writeFileSync(e,Buffer.concat(i),r),a(null))}catch(l){a(l)}finally{this.closeSync(n)}}}),{bytesWritten:0,path:e,close(){s.destroy()}});return s.on("data",o=>{let a=Buffer.from(o);s.bytesWritten+=a.length,i.push(a)}),s}async realpathPromise(e){return this.realpathSync(e)}realpathSync(e){let r=this.resolveFilename(`lstat '${e}'`,e);if(!this.entries.has(r)&&!this.listings.has(r))throw En(`lstat '${e}'`);return r}async existsPromise(e){return this.existsSync(e)}existsSync(e){if(!this.ready)throw Td(`archive closed, existsSync '${e}'`);if(this.symlinkCount===0){let i=w.resolve(pe.root,e);return this.entries.has(i)||this.listings.has(i)}let r;try{r=this.resolveFilename(`stat '${e}'`,e)}catch(i){return!1}return this.entries.has(r)||this.listings.has(r)}async accessPromise(e,r){return this.accessSync(e,r)}accessSync(e,r=cl.constants.F_OK){let i=this.resolveFilename(`access '${e}'`,e);if(!this.entries.has(i)&&!this.listings.has(i))throw En(`access '${e}'`);if(this.readOnly&&r&cl.constants.W_OK)throw gi(`access '${e}'`)}async statPromise(e,r){return this.statSync(e,r)}statSync(e,r){let i=this.resolveFilename(`stat '${e}'`,e);if(!this.entries.has(i)&&!this.listings.has(i))throw En(`stat '${e}'`);if(e[e.length-1]==="/"&&!this.listings.has(i))throw Un(`stat '${e}'`);return this.statImpl(`stat '${e}'`,i,r)}async fstatPromise(e,r){return this.fstatSync(e,r)}fstatSync(e,r){let i=this.fds.get(e);if(typeof i=="undefined")throw Wr("fstatSync");let{p:n}=i,s=this.resolveFilename(`stat '${n}'`,n);if(!this.entries.has(s)&&!this.listings.has(s))throw En(`stat '${n}'`);if(n[n.length-1]==="/"&&!this.listings.has(s))throw Un(`stat '${n}'`);return this.statImpl(`fstat '${n}'`,s,r)}async lstatPromise(e,r){return this.lstatSync(e,r)}lstatSync(e,r){let i=this.resolveFilename(`lstat '${e}'`,e,!1);if(!this.entries.has(i)&&!this.listings.has(i))throw En(`lstat '${e}'`);if(e[e.length-1]==="/"&&!this.listings.has(i))throw Un(`lstat '${e}'`);return this.statImpl(`lstat '${e}'`,i,r)}statImpl(e,r,i={}){let n=this.entries.get(r);if(typeof n!="undefined"){let s=this.libzip.struct.statS();if(this.libzip.statIndex(this.zip,n,0,0,s)===-1)throw this.makeLibzipError(this.libzip.getError(this.zip));let a=this.stats.uid,l=this.stats.gid,c=this.libzip.struct.statSize(s)>>>0,u=512,g=Math.ceil(c/u),h=(this.libzip.struct.statMtime(s)>>>0)*1e3,f=h,p=h,m=h,I=new Date(f),y=new Date(p),B=new Date(m),P=new Date(h),k=this.listings.has(r)?mo:this.isSymbolicLink(n)?Io:Es,N=k===mo?493:420,O=k|this.getUnixMode(n,N)&511,v=this.libzip.struct.statCrc(s),U=Object.assign(new Eo,{uid:a,gid:l,size:c,blksize:u,blocks:g,atime:I,birthtime:y,ctime:B,mtime:P,atimeMs:f,birthtimeMs:p,ctimeMs:m,mtimeMs:h,mode:O,crc:v});return i.bigint===!0?Md(U):U}if(this.listings.has(r)){let s=this.stats.uid,o=this.stats.gid,a=0,l=512,c=0,u=this.stats.mtimeMs,g=this.stats.mtimeMs,h=this.stats.mtimeMs,f=this.stats.mtimeMs,p=new Date(u),m=new Date(g),I=new Date(h),y=new Date(f),B=mo|493,P=0,k=Object.assign(new Eo,{uid:s,gid:o,size:a,blksize:l,blocks:c,atime:p,birthtime:m,ctime:I,mtime:y,atimeMs:u,birthtimeMs:g,ctimeMs:h,mtimeMs:f,mode:B,crc:P});return i.bigint===!0?Md(k):k}throw new Error("Unreachable")}getUnixMode(e,r){if(this.libzip.file.getExternalAttributes(this.zip,e,0,0,this.libzip.uint08S,this.libzip.uint32S)===-1)throw this.makeLibzipError(this.libzip.getError(this.zip));return this.libzip.getValue(this.libzip.uint08S,"i8")>>>0!==this.libzip.ZIP_OPSYS_UNIX?r:this.libzip.getValue(this.libzip.uint32S,"i32")>>>16}registerListing(e){let r=this.listings.get(e);if(r)return r;let i=this.registerListing(w.dirname(e));return r=new Set,i.add(w.basename(e)),this.listings.set(e,r),r}registerEntry(e,r){this.registerListing(w.dirname(e)).add(w.basename(e)),this.entries.set(e,r)}unregisterListing(e){this.listings.delete(e);let r=this.listings.get(w.dirname(e));r==null||r.delete(w.basename(e))}unregisterEntry(e){this.unregisterListing(e);let r=this.entries.get(e);this.entries.delete(e),typeof r!="undefined"&&(this.fileSources.delete(r),this.isSymbolicLink(r)&&this.symlinkCount--)}deleteEntry(e,r){if(this.unregisterEntry(e),this.libzip.delete(this.zip,r)===-1)throw this.makeLibzipError(this.libzip.getError(this.zip))}resolveFilename(e,r,i=!0){if(!this.ready)throw Td(`archive closed, ${e}`);let n=w.resolve(pe.root,r);if(n==="/")return pe.root;let s=this.entries.get(n);if(i&&s!==void 0)if(this.symlinkCount!==0&&this.isSymbolicLink(s)){let o=this.getFileSource(s).toString();return this.resolveFilename(e,w.resolve(w.dirname(n),o),!0)}else return n;for(;;){let o=this.resolveFilename(e,w.dirname(n),!0),a=this.listings.has(o),l=this.entries.has(o);if(!a&&!l)throw En(e);if(!a)throw Un(e);if(n=w.resolve(o,w.basename(n)),!i||this.symlinkCount===0)break;let c=this.libzip.name.locate(this.zip,n.slice(1));if(c===-1)break;if(this.isSymbolicLink(c)){let u=this.getFileSource(c).toString();n=w.resolve(w.dirname(n),u)}else break}return n}allocateBuffer(e){Buffer.isBuffer(e)||(e=Buffer.from(e));let r=this.libzip.malloc(e.byteLength);if(!r)throw new Error("Couldn't allocate enough memory");return new Uint8Array(this.libzip.HEAPU8.buffer,r,e.byteLength).set(e),{buffer:r,byteLength:e.byteLength}}allocateUnattachedSource(e){let r=this.libzip.struct.errorS(),{buffer:i,byteLength:n}=this.allocateBuffer(e),s=this.libzip.source.fromUnattachedBuffer(i,n,0,!0,r);if(s===0)throw this.libzip.free(r),this.makeLibzipError(r);return s}allocateSource(e){let{buffer:r,byteLength:i}=this.allocateBuffer(e),n=this.libzip.source.fromBuffer(this.zip,r,i,0,!0);if(n===0)throw this.libzip.free(r),this.makeLibzipError(this.libzip.getError(this.zip));return n}setFileSource(e,r){let i=Buffer.isBuffer(r)?r:Buffer.from(r),n=w.relative(pe.root,e),s=this.allocateSource(r);try{let o=this.libzip.file.add(this.zip,n,s,this.libzip.ZIP_FL_OVERWRITE);if(o===-1)throw this.makeLibzipError(this.libzip.getError(this.zip));if(this.level!=="mixed"){let a;if(this.level===0?a=this.libzip.ZIP_CM_STORE:a=this.libzip.ZIP_CM_DEFLATE,this.libzip.file.setCompression(this.zip,o,0,a,this.level)===-1)throw this.makeLibzipError(this.libzip.getError(this.zip))}return this.fileSources.set(o,i),o}catch(o){throw this.libzip.source.free(s),o}}isSymbolicLink(e){if(this.symlinkCount===0)return!1;if(this.libzip.file.getExternalAttributes(this.zip,e,0,0,this.libzip.uint08S,this.libzip.uint32S)===-1)throw this.makeLibzipError(this.libzip.getError(this.zip));return this.libzip.getValue(this.libzip.uint08S,"i8")>>>0!==this.libzip.ZIP_OPSYS_UNIX?!1:(this.libzip.getValue(this.libzip.uint32S,"i32")>>>16&Gi)===Io}getFileSource(e,r={asyncDecompress:!1}){let i=this.fileSources.get(e);if(typeof i!="undefined")return i;let n=this.libzip.struct.statS();if(this.libzip.statIndex(this.zip,e,0,0,n)===-1)throw this.makeLibzipError(this.libzip.getError(this.zip));let o=this.libzip.struct.statCompSize(n),a=this.libzip.struct.statCompMethod(n),l=this.libzip.malloc(o);try{let c=this.libzip.fopenIndex(this.zip,e,0,this.libzip.ZIP_FL_COMPRESSED);if(c===0)throw this.makeLibzipError(this.libzip.getError(this.zip));try{let u=this.libzip.fread(c,l,o,0);if(u===-1)throw this.makeLibzipError(this.libzip.file.getError(c));if(uo)throw new Error("Overread");let g=this.libzip.HEAPU8.subarray(l,l+o),h=Buffer.from(g);if(a===0)return this.fileSources.set(e,h),h;if(r.asyncDecompress)return new Promise((f,p)=>{xB.default.inflateRaw(h,(m,I)=>{m?p(m):(this.fileSources.set(e,I),f(I))})});{let f=xB.default.inflateRawSync(h);return this.fileSources.set(e,f),f}}finally{this.libzip.fclose(c)}}finally{this.libzip.free(l)}}async chmodPromise(e,r){return this.chmodSync(e,r)}chmodSync(e,r){if(this.readOnly)throw gi(`chmod '${e}'`);r&=493;let i=this.resolveFilename(`chmod '${e}'`,e,!1),n=this.entries.get(i);if(typeof n=="undefined")throw new Error(`Assertion failed: The entry should have been registered (${i})`);let o=this.getUnixMode(n,Es|0)&~511|r;if(this.libzip.file.setExternalAttributes(this.zip,n,0,0,this.libzip.ZIP_OPSYS_UNIX,o<<16)===-1)throw this.makeLibzipError(this.libzip.getError(this.zip))}async chownPromise(e,r,i){return this.chownSync(e,r,i)}chownSync(e,r,i){throw new Error("Unimplemented")}async renamePromise(e,r){return this.renameSync(e,r)}renameSync(e,r){throw new Error("Unimplemented")}async copyFilePromise(e,r,i){let{indexSource:n,indexDest:s,resolvedDestP:o}=this.prepareCopyFile(e,r,i),a=await this.getFileSource(n,{asyncDecompress:!0}),l=this.setFileSource(o,a);l!==s&&this.registerEntry(o,l)}copyFileSync(e,r,i=0){let{indexSource:n,indexDest:s,resolvedDestP:o}=this.prepareCopyFile(e,r,i),a=this.getFileSource(n),l=this.setFileSource(o,a);l!==s&&this.registerEntry(o,l)}prepareCopyFile(e,r,i=0){if(this.readOnly)throw gi(`copyfile '${e} -> '${r}'`);if((i&cl.constants.COPYFILE_FICLONE_FORCE)!=0)throw qu("unsupported clone operation",`copyfile '${e}' -> ${r}'`);let n=this.resolveFilename(`copyfile '${e} -> ${r}'`,e),s=this.entries.get(n);if(typeof s=="undefined")throw yo(`copyfile '${e}' -> '${r}'`);let o=this.resolveFilename(`copyfile '${e}' -> ${r}'`,r),a=this.entries.get(o);if((i&(cl.constants.COPYFILE_EXCL|cl.constants.COPYFILE_FICLONE_FORCE))!=0&&typeof a!="undefined")throw Kd(`copyfile '${e}' -> '${r}'`);return{indexSource:s,resolvedDestP:o,indexDest:a}}async appendFilePromise(e,r,i){if(this.readOnly)throw gi(`open '${e}'`);return typeof i=="undefined"?i={flag:"a"}:typeof i=="string"?i={flag:"a",encoding:i}:typeof i.flag=="undefined"&&(i={flag:"a",...i}),this.writeFilePromise(e,r,i)}appendFileSync(e,r,i={}){if(this.readOnly)throw gi(`open '${e}'`);return typeof i=="undefined"?i={flag:"a"}:typeof i=="string"?i={flag:"a",encoding:i}:typeof i.flag=="undefined"&&(i={flag:"a",...i}),this.writeFileSync(e,r,i)}async writeFilePromise(e,r,i){let{encoding:n,index:s,resolvedP:o}=this.prepareWriteFile(e,i);s!==void 0&&typeof i=="object"&&i.flag&&i.flag.includes("a")&&(r=Buffer.concat([await this.getFileSource(s,{asyncDecompress:!0}),Buffer.from(r)])),n!==null&&(r=r.toString(n));let a=this.setFileSource(o,r);a!==s&&this.registerEntry(o,a)}writeFileSync(e,r,i){let{encoding:n,index:s,resolvedP:o}=this.prepareWriteFile(e,i);s!==void 0&&typeof i=="object"&&i.flag&&i.flag.includes("a")&&(r=Buffer.concat([this.getFileSource(s),Buffer.from(r)])),n!==null&&(r=r.toString(n));let a=this.setFileSource(o,r);a!==s&&this.registerEntry(o,a)}prepareWriteFile(e,r){if(typeof e!="string")throw Wr("read");if(this.readOnly)throw gi(`open '${e}'`);let i=this.resolveFilename(`open '${e}'`,e);if(this.listings.has(i))throw Ju(`open '${e}'`);let n=null;typeof r=="string"?n=r:typeof r=="object"&&r.encoding&&(n=r.encoding);let s=this.entries.get(i);return{encoding:n,resolvedP:i,index:s}}async unlinkPromise(e){return this.unlinkSync(e)}unlinkSync(e){if(this.readOnly)throw gi(`unlink '${e}'`);let r=this.resolveFilename(`unlink '${e}'`,e);if(this.listings.has(r))throw Ju(`unlink '${e}'`);let i=this.entries.get(r);if(typeof i=="undefined")throw yo(`unlink '${e}'`);this.deleteEntry(r,i)}async utimesPromise(e,r,i){return this.utimesSync(e,r,i)}utimesSync(e,r,i){if(this.readOnly)throw gi(`utimes '${e}'`);let n=this.resolveFilename(`utimes '${e}'`,e);this.utimesImpl(n,i)}async lutimesPromise(e,r,i){return this.lutimesSync(e,r,i)}lutimesSync(e,r,i){if(this.readOnly)throw gi(`lutimes '${e}'`);let n=this.resolveFilename(`utimes '${e}'`,e,!1);this.utimesImpl(n,i)}utimesImpl(e,r){this.listings.has(e)&&(this.entries.has(e)||this.hydrateDirectory(e));let i=this.entries.get(e);if(i===void 0)throw new Error("Unreachable");if(this.libzip.file.setMtime(this.zip,i,0,Qse(r),0)===-1)throw this.makeLibzipError(this.libzip.getError(this.zip))}async mkdirPromise(e,r){return this.mkdirSync(e,r)}mkdirSync(e,{mode:r=493,recursive:i=!1}={}){if(i){this.mkdirpSync(e,{chmod:r});return}if(this.readOnly)throw gi(`mkdir '${e}'`);let n=this.resolveFilename(`mkdir '${e}'`,e);if(this.entries.has(n)||this.listings.has(n))throw Kd(`mkdir '${e}'`);this.hydrateDirectory(n),this.chmodSync(n,r)}async rmdirPromise(e,r){return this.rmdirSync(e,r)}rmdirSync(e,{recursive:r=!1}={}){if(this.readOnly)throw gi(`rmdir '${e}'`);if(r){this.removeSync(e);return}let i=this.resolveFilename(`rmdir '${e}'`,e),n=this.listings.get(i);if(!n)throw Un(`rmdir '${e}'`);if(n.size>0)throw PR(`rmdir '${e}'`);let s=this.entries.get(i);if(typeof s=="undefined")throw yo(`rmdir '${e}'`);this.deleteEntry(e,s)}hydrateDirectory(e){let r=this.libzip.dir.add(this.zip,w.relative(pe.root,e));if(r===-1)throw this.makeLibzipError(this.libzip.getError(this.zip));return this.registerListing(e),this.registerEntry(e,r),r}async linkPromise(e,r){return this.linkSync(e,r)}linkSync(e,r){throw xR(`link '${e}' -> '${r}'`)}async symlinkPromise(e,r){return this.symlinkSync(e,r)}symlinkSync(e,r){if(this.readOnly)throw gi(`symlink '${e}' -> '${r}'`);let i=this.resolveFilename(`symlink '${e}' -> '${r}'`,r);if(this.listings.has(i))throw Ju(`symlink '${e}' -> '${r}'`);if(this.entries.has(i))throw Kd(`symlink '${e}' -> '${r}'`);let n=this.setFileSource(i,e);if(this.registerEntry(i,n),this.libzip.file.setExternalAttributes(this.zip,n,0,0,this.libzip.ZIP_OPSYS_UNIX,(Io|511)<<16)===-1)throw this.makeLibzipError(this.libzip.getError(this.zip));this.symlinkCount+=1}async readFilePromise(e,r){typeof r=="object"&&(r=r?r.encoding:void 0);let i=await this.readFileBuffer(e,{asyncDecompress:!0});return r?i.toString(r):i}readFileSync(e,r){typeof r=="object"&&(r=r?r.encoding:void 0);let i=this.readFileBuffer(e);return r?i.toString(r):i}readFileBuffer(e,r={asyncDecompress:!1}){let i=this.resolveFilename(`open '${e}'`,e);if(!this.entries.has(i)&&!this.listings.has(i))throw En(`open '${e}'`);if(e[e.length-1]==="/"&&!this.listings.has(i))throw Un(`open '${e}'`);if(this.listings.has(i))throw Ju("read");let n=this.entries.get(i);if(n===void 0)throw new Error("Unreachable");return this.getFileSource(n,r)}async readdirPromise(e,{withFileTypes:r}={}){return this.readdirSync(e,{withFileTypes:r})}readdirSync(e,{withFileTypes:r}={}){let i=this.resolveFilename(`scandir '${e}'`,e);if(!this.entries.has(i)&&!this.listings.has(i))throw En(`scandir '${e}'`);let n=this.listings.get(i);if(!n)throw Un(`scandir '${e}'`);let s=[...n];return r?s.map(o=>Object.assign(this.statImpl("lstat",w.join(e,o)),{name:o})):s}async readlinkPromise(e){let r=this.prepareReadlink(e);return(await this.getFileSource(r,{asyncDecompress:!0})).toString()}readlinkSync(e){let r=this.prepareReadlink(e);return this.getFileSource(r).toString()}prepareReadlink(e){let r=this.resolveFilename(`readlink '${e}'`,e,!1);if(!this.entries.has(r)&&!this.listings.has(r))throw En(`readlink '${e}'`);if(e[e.length-1]==="/"&&!this.listings.has(r))throw Un(`open '${e}'`);if(this.listings.has(r))throw yo(`readlink '${e}'`);let i=this.entries.get(r);if(i===void 0)throw new Error("Unreachable");if(!this.isSymbolicLink(i))throw yo(`readlink '${e}'`);return i}async truncatePromise(e,r=0){let i=this.resolveFilename(`open '${e}'`,e),n=this.entries.get(i);if(typeof n=="undefined")throw yo(`open '${e}'`);let s=await this.getFileSource(n,{asyncDecompress:!0}),o=Buffer.alloc(r,0);return s.copy(o),await this.writeFilePromise(e,o)}truncateSync(e,r=0){let i=this.resolveFilename(`open '${e}'`,e),n=this.entries.get(i);if(typeof n=="undefined")throw yo(`open '${e}'`);let s=this.getFileSource(n),o=Buffer.alloc(r,0);return s.copy(o),this.writeFileSync(e,o)}watch(e,r,i){let n;switch(typeof r){case"function":case"string":case"undefined":n=!0;break;default:({persistent:n=!0}=r);break}if(!n)return{on:()=>{},close:()=>{}};let s=setInterval(()=>{},24*60*60*1e3);return{on:()=>{},close:()=>{clearInterval(s)}}}watchFile(e,r,i){let n=this.resolveFilename(`open '${e}'`,e);return Hd(this,n,r,i)}unwatchFile(e,r){let i=this.resolveFilename(`open '${e}'`,e);return zu(this,i,r)}};var cr=class extends yn{getExtractHint(e){return this.baseFs.getExtractHint(e)}resolve(e){return this.mapFromBase(this.baseFs.resolve(this.mapToBase(e)))}getRealPath(){return this.mapFromBase(this.baseFs.getRealPath())}async openPromise(e,r,i){return this.baseFs.openPromise(this.mapToBase(e),r,i)}openSync(e,r,i){return this.baseFs.openSync(this.mapToBase(e),r,i)}async opendirPromise(e,r){return Object.assign(await this.baseFs.opendirPromise(this.mapToBase(e),r),{path:e})}opendirSync(e,r){return Object.assign(this.baseFs.opendirSync(this.mapToBase(e),r),{path:e})}async readPromise(e,r,i,n,s){return await this.baseFs.readPromise(e,r,i,n,s)}readSync(e,r,i,n,s){return this.baseFs.readSync(e,r,i,n,s)}async writePromise(e,r,i,n,s){return typeof r=="string"?await this.baseFs.writePromise(e,r,i):await this.baseFs.writePromise(e,r,i,n,s)}writeSync(e,r,i,n,s){return typeof r=="string"?this.baseFs.writeSync(e,r,i):this.baseFs.writeSync(e,r,i,n,s)}async closePromise(e){return this.baseFs.closePromise(e)}closeSync(e){this.baseFs.closeSync(e)}createReadStream(e,r){return this.baseFs.createReadStream(e!==null?this.mapToBase(e):e,r)}createWriteStream(e,r){return this.baseFs.createWriteStream(e!==null?this.mapToBase(e):e,r)}async realpathPromise(e){return this.mapFromBase(await this.baseFs.realpathPromise(this.mapToBase(e)))}realpathSync(e){return this.mapFromBase(this.baseFs.realpathSync(this.mapToBase(e)))}async existsPromise(e){return this.baseFs.existsPromise(this.mapToBase(e))}existsSync(e){return this.baseFs.existsSync(this.mapToBase(e))}accessSync(e,r){return this.baseFs.accessSync(this.mapToBase(e),r)}async accessPromise(e,r){return this.baseFs.accessPromise(this.mapToBase(e),r)}async statPromise(e,r){return this.baseFs.statPromise(this.mapToBase(e),r)}statSync(e,r){return this.baseFs.statSync(this.mapToBase(e),r)}async fstatPromise(e,r){return this.baseFs.fstatPromise(e,r)}fstatSync(e,r){return this.baseFs.fstatSync(e,r)}async lstatPromise(e,r){return this.baseFs.lstatPromise(this.mapToBase(e),r)}lstatSync(e,r){return this.baseFs.lstatSync(this.mapToBase(e),r)}async chmodPromise(e,r){return this.baseFs.chmodPromise(this.mapToBase(e),r)}chmodSync(e,r){return this.baseFs.chmodSync(this.mapToBase(e),r)}async chownPromise(e,r,i){return this.baseFs.chownPromise(this.mapToBase(e),r,i)}chownSync(e,r,i){return this.baseFs.chownSync(this.mapToBase(e),r,i)}async renamePromise(e,r){return this.baseFs.renamePromise(this.mapToBase(e),this.mapToBase(r))}renameSync(e,r){return this.baseFs.renameSync(this.mapToBase(e),this.mapToBase(r))}async copyFilePromise(e,r,i=0){return this.baseFs.copyFilePromise(this.mapToBase(e),this.mapToBase(r),i)}copyFileSync(e,r,i=0){return this.baseFs.copyFileSync(this.mapToBase(e),this.mapToBase(r),i)}async appendFilePromise(e,r,i){return this.baseFs.appendFilePromise(this.fsMapToBase(e),r,i)}appendFileSync(e,r,i){return this.baseFs.appendFileSync(this.fsMapToBase(e),r,i)}async writeFilePromise(e,r,i){return this.baseFs.writeFilePromise(this.fsMapToBase(e),r,i)}writeFileSync(e,r,i){return this.baseFs.writeFileSync(this.fsMapToBase(e),r,i)}async unlinkPromise(e){return this.baseFs.unlinkPromise(this.mapToBase(e))}unlinkSync(e){return this.baseFs.unlinkSync(this.mapToBase(e))}async utimesPromise(e,r,i){return this.baseFs.utimesPromise(this.mapToBase(e),r,i)}utimesSync(e,r,i){return this.baseFs.utimesSync(this.mapToBase(e),r,i)}async mkdirPromise(e,r){return this.baseFs.mkdirPromise(this.mapToBase(e),r)}mkdirSync(e,r){return this.baseFs.mkdirSync(this.mapToBase(e),r)}async rmdirPromise(e,r){return this.baseFs.rmdirPromise(this.mapToBase(e),r)}rmdirSync(e,r){return this.baseFs.rmdirSync(this.mapToBase(e),r)}async linkPromise(e,r){return this.baseFs.linkPromise(this.mapToBase(e),this.mapToBase(r))}linkSync(e,r){return this.baseFs.linkSync(this.mapToBase(e),this.mapToBase(r))}async symlinkPromise(e,r,i){return this.baseFs.symlinkPromise(this.mapToBase(e),this.mapToBase(r),i)}symlinkSync(e,r,i){return this.baseFs.symlinkSync(this.mapToBase(e),this.mapToBase(r),i)}async readFilePromise(e,r){return r==="utf8"?this.baseFs.readFilePromise(this.fsMapToBase(e),r):this.baseFs.readFilePromise(this.fsMapToBase(e),r)}readFileSync(e,r){return r==="utf8"?this.baseFs.readFileSync(this.fsMapToBase(e),r):this.baseFs.readFileSync(this.fsMapToBase(e),r)}async readdirPromise(e,{withFileTypes:r}={}){return this.baseFs.readdirPromise(this.mapToBase(e),{withFileTypes:r})}readdirSync(e,{withFileTypes:r}={}){return this.baseFs.readdirSync(this.mapToBase(e),{withFileTypes:r})}async readlinkPromise(e){return this.mapFromBase(await this.baseFs.readlinkPromise(this.mapToBase(e)))}readlinkSync(e){return this.mapFromBase(this.baseFs.readlinkSync(this.mapToBase(e)))}async truncatePromise(e,r){return this.baseFs.truncatePromise(this.mapToBase(e),r)}truncateSync(e,r){return this.baseFs.truncateSync(this.mapToBase(e),r)}watch(e,r,i){return this.baseFs.watch(this.mapToBase(e),r,i)}watchFile(e,r,i){return this.baseFs.watchFile(this.mapToBase(e),r,i)}unwatchFile(e,r){return this.baseFs.unwatchFile(this.mapToBase(e),r)}fsMapToBase(e){return typeof e=="number"?e:this.mapToBase(e)}};var xa=class extends cr{constructor(e,{baseFs:r,pathUtils:i}){super(i);this.target=e,this.baseFs=r}getRealPath(){return this.target}getBaseFs(){return this.baseFs}mapFromBase(e){return e}mapToBase(e){return e}};var Ct=class extends cr{constructor(e,{baseFs:r=new It}={}){super(w);this.target=this.pathUtils.normalize(e),this.baseFs=r}getRealPath(){return this.pathUtils.resolve(this.baseFs.getRealPath(),this.target)}resolve(e){return this.pathUtils.isAbsolute(e)?w.normalize(e):this.baseFs.resolve(w.join(this.target,e))}mapFromBase(e){return e}mapToBase(e){return this.pathUtils.isAbsolute(e)?e:this.pathUtils.join(this.target,e)}};var OR=pe.root,ys=class extends cr{constructor(e,{baseFs:r=new It}={}){super(w);this.target=this.pathUtils.resolve(pe.root,e),this.baseFs=r}getRealPath(){return this.pathUtils.resolve(this.baseFs.getRealPath(),this.pathUtils.relative(pe.root,this.target))}getTarget(){return this.target}getBaseFs(){return this.baseFs}mapToBase(e){let r=this.pathUtils.normalize(e);if(this.pathUtils.isAbsolute(e))return this.pathUtils.resolve(this.target,this.pathUtils.relative(OR,e));if(r.match(/^\.\.\/?/))throw new Error(`Resolving this path (${e}) would escape the jail`);return this.pathUtils.resolve(this.target,e)}mapFromBase(e){return this.pathUtils.resolve(OR,this.pathUtils.relative(this.target,e))}};var Vu=class extends cr{constructor(e,r){super(r);this.instance=null;this.factory=e}get baseFs(){return this.instance||(this.instance=this.factory()),this.instance}set baseFs(e){this.instance=e}mapFromBase(e){return e}mapToBase(e){return e}};var Oe=()=>Object.assign(new Error("ENOSYS: unsupported filesystem access"),{code:"ENOSYS"}),kB=class extends yn{constructor(){super(w)}getExtractHint(){throw Oe()}getRealPath(){throw Oe()}resolve(){throw Oe()}async openPromise(){throw Oe()}openSync(){throw Oe()}async opendirPromise(){throw Oe()}opendirSync(){throw Oe()}async readPromise(){throw Oe()}readSync(){throw Oe()}async writePromise(){throw Oe()}writeSync(){throw Oe()}async closePromise(){throw Oe()}closeSync(){throw Oe()}createWriteStream(){throw Oe()}createReadStream(){throw Oe()}async realpathPromise(){throw Oe()}realpathSync(){throw Oe()}async readdirPromise(){throw Oe()}readdirSync(){throw Oe()}async existsPromise(e){throw Oe()}existsSync(e){throw Oe()}async accessPromise(){throw Oe()}accessSync(){throw Oe()}async statPromise(){throw Oe()}statSync(){throw Oe()}async fstatPromise(e){throw Oe()}fstatSync(e){throw Oe()}async lstatPromise(e){throw Oe()}lstatSync(e){throw Oe()}async chmodPromise(){throw Oe()}chmodSync(){throw Oe()}async chownPromise(){throw Oe()}chownSync(){throw Oe()}async mkdirPromise(){throw Oe()}mkdirSync(){throw Oe()}async rmdirPromise(){throw Oe()}rmdirSync(){throw Oe()}async linkPromise(){throw Oe()}linkSync(){throw Oe()}async symlinkPromise(){throw Oe()}symlinkSync(){throw Oe()}async renamePromise(){throw Oe()}renameSync(){throw Oe()}async copyFilePromise(){throw Oe()}copyFileSync(){throw Oe()}async appendFilePromise(){throw Oe()}appendFileSync(){throw Oe()}async writeFilePromise(){throw Oe()}writeFileSync(){throw Oe()}async unlinkPromise(){throw Oe()}unlinkSync(){throw Oe()}async utimesPromise(){throw Oe()}utimesSync(){throw Oe()}async readFilePromise(){throw Oe()}readFileSync(){throw Oe()}async readlinkPromise(){throw Oe()}readlinkSync(){throw Oe()}async truncatePromise(){throw Oe()}truncateSync(){throw Oe()}watch(){throw Oe()}watchFile(){throw Oe()}unwatchFile(){throw Oe()}},Yd=kB;Yd.instance=new kB;var Zu=class extends cr{constructor(e){super(npath);this.baseFs=e}mapFromBase(e){return npath.fromPortablePath(e)}mapToBase(e){return npath.toPortablePath(e)}};var bse=/^[0-9]+$/,vB=/^(\/(?:[^/]+\/)*?(?:\$\$virtual|__virtual__))((?:\/((?:[^/]+-)?[a-f0-9]+)(?:\/([^/]+))?)?((?:\/.*)?))$/,Dse=/^([^/]+-)?[a-f0-9]+$/,_t=class extends cr{static makeVirtualPath(e,r,i){if(w.basename(e)!=="__virtual__")throw new Error('Assertion failed: Virtual folders must be named "__virtual__"');if(!w.basename(r).match(Dse))throw new Error("Assertion failed: Virtual components must be ended by an hexadecimal hash");let s=w.relative(w.dirname(e),i).split("/"),o=0;for(;o{let e=t.indexOf(TR);if(e<=0||t[e-1]===w.sep)return null;let r=e+TR.length;return t.length>r&&t[r]!==w.sep?null:t.slice(0,r)},Ji=class extends ba{constructor({libzip:e,baseFs:r=new It,filter:i=null,maxOpenFiles:n=Infinity,readOnlyArchives:s=!1,useCache:o=!0,maxAge:a=5e3}){super();this.fdMap=new Map;this.nextFd=3;this.isZip=new Set;this.notZip=new Set;this.realPaths=new Map;this.limitOpenFilesTimeout=null;this.libzip=e,this.baseFs=r,this.zipInstances=o?new Map:null,this.filter=i,this.maxOpenFiles=n,this.readOnlyArchives=s,this.maxAge=a}static async openPromise(e,r){let i=new Ji(r);try{return await e(i)}finally{i.saveAndClose()}}getExtractHint(e){return this.baseFs.getExtractHint(e)}getRealPath(){return this.baseFs.getRealPath()}saveAndClose(){if(Xu(this),this.zipInstances)for(let[e,{zipFs:r}]of this.zipInstances.entries())r.saveAndClose(),this.zipInstances.delete(e)}discardAndClose(){if(Xu(this),this.zipInstances)for(let[e,{zipFs:r}]of this.zipInstances.entries())r.discardAndClose(),this.zipInstances.delete(e)}resolve(e){return this.baseFs.resolve(e)}remapFd(e,r){let i=this.nextFd++|Bs;return this.fdMap.set(i,[e,r]),i}async openPromise(e,r,i){return await this.makeCallPromise(e,async()=>await this.baseFs.openPromise(e,r,i),async(n,{subPath:s})=>this.remapFd(n,await n.openPromise(s,r,i)))}openSync(e,r,i){return this.makeCallSync(e,()=>this.baseFs.openSync(e,r,i),(n,{subPath:s})=>this.remapFd(n,n.openSync(s,r,i)))}async opendirPromise(e,r){return await this.makeCallPromise(e,async()=>await this.baseFs.opendirPromise(e,r),async(i,{subPath:n})=>await i.opendirPromise(n,r),{requireSubpath:!1})}opendirSync(e,r){return this.makeCallSync(e,()=>this.baseFs.opendirSync(e,r),(i,{subPath:n})=>i.opendirSync(n,r),{requireSubpath:!1})}async readPromise(e,r,i,n,s){if((e&Bs)==0)return await this.baseFs.readPromise(e,r,i,n,s);let o=this.fdMap.get(e);if(typeof o=="undefined")throw Wr("read");let[a,l]=o;return await a.readPromise(l,r,i,n,s)}readSync(e,r,i,n,s){if((e&Bs)==0)return this.baseFs.readSync(e,r,i,n,s);let o=this.fdMap.get(e);if(typeof o=="undefined")throw Wr("readSync");let[a,l]=o;return a.readSync(l,r,i,n,s)}async writePromise(e,r,i,n,s){if((e&Bs)==0)return typeof r=="string"?await this.baseFs.writePromise(e,r,i):await this.baseFs.writePromise(e,r,i,n,s);let o=this.fdMap.get(e);if(typeof o=="undefined")throw Wr("write");let[a,l]=o;return typeof r=="string"?await a.writePromise(l,r,i):await a.writePromise(l,r,i,n,s)}writeSync(e,r,i,n,s){if((e&Bs)==0)return typeof r=="string"?this.baseFs.writeSync(e,r,i):this.baseFs.writeSync(e,r,i,n,s);let o=this.fdMap.get(e);if(typeof o=="undefined")throw Wr("writeSync");let[a,l]=o;return typeof r=="string"?a.writeSync(l,r,i):a.writeSync(l,r,i,n,s)}async closePromise(e){if((e&Bs)==0)return await this.baseFs.closePromise(e);let r=this.fdMap.get(e);if(typeof r=="undefined")throw Wr("close");this.fdMap.delete(e);let[i,n]=r;return await i.closePromise(n)}closeSync(e){if((e&Bs)==0)return this.baseFs.closeSync(e);let r=this.fdMap.get(e);if(typeof r=="undefined")throw Wr("closeSync");this.fdMap.delete(e);let[i,n]=r;return i.closeSync(n)}createReadStream(e,r){return e===null?this.baseFs.createReadStream(e,r):this.makeCallSync(e,()=>this.baseFs.createReadStream(e,r),(i,{subPath:n})=>i.createReadStream(n,r))}createWriteStream(e,r){return e===null?this.baseFs.createWriteStream(e,r):this.makeCallSync(e,()=>this.baseFs.createWriteStream(e,r),(i,{subPath:n})=>i.createWriteStream(n,r))}async realpathPromise(e){return await this.makeCallPromise(e,async()=>await this.baseFs.realpathPromise(e),async(r,{archivePath:i,subPath:n})=>{let s=this.realPaths.get(i);return typeof s=="undefined"&&(s=await this.baseFs.realpathPromise(i),this.realPaths.set(i,s)),this.pathUtils.join(s,this.pathUtils.relative(pe.root,await r.realpathPromise(n)))})}realpathSync(e){return this.makeCallSync(e,()=>this.baseFs.realpathSync(e),(r,{archivePath:i,subPath:n})=>{let s=this.realPaths.get(i);return typeof s=="undefined"&&(s=this.baseFs.realpathSync(i),this.realPaths.set(i,s)),this.pathUtils.join(s,this.pathUtils.relative(pe.root,r.realpathSync(n)))})}async existsPromise(e){return await this.makeCallPromise(e,async()=>await this.baseFs.existsPromise(e),async(r,{subPath:i})=>await r.existsPromise(i))}existsSync(e){return this.makeCallSync(e,()=>this.baseFs.existsSync(e),(r,{subPath:i})=>r.existsSync(i))}async accessPromise(e,r){return await this.makeCallPromise(e,async()=>await this.baseFs.accessPromise(e,r),async(i,{subPath:n})=>await i.accessPromise(n,r))}accessSync(e,r){return this.makeCallSync(e,()=>this.baseFs.accessSync(e,r),(i,{subPath:n})=>i.accessSync(n,r))}async statPromise(e,r){return await this.makeCallPromise(e,async()=>await this.baseFs.statPromise(e,r),async(i,{subPath:n})=>await i.statPromise(n,r))}statSync(e,r){return this.makeCallSync(e,()=>this.baseFs.statSync(e,r),(i,{subPath:n})=>i.statSync(n,r))}async fstatPromise(e,r){if((e&Bs)==0)return this.baseFs.fstatPromise(e,r);let i=this.fdMap.get(e);if(typeof i=="undefined")throw Wr("fstat");let[n,s]=i;return n.fstatPromise(s,r)}fstatSync(e,r){if((e&Bs)==0)return this.baseFs.fstatSync(e,r);let i=this.fdMap.get(e);if(typeof i=="undefined")throw Wr("fstatSync");let[n,s]=i;return n.fstatSync(s,r)}async lstatPromise(e,r){return await this.makeCallPromise(e,async()=>await this.baseFs.lstatPromise(e,r),async(i,{subPath:n})=>await i.lstatPromise(n,r))}lstatSync(e,r){return this.makeCallSync(e,()=>this.baseFs.lstatSync(e,r),(i,{subPath:n})=>i.lstatSync(n,r))}async chmodPromise(e,r){return await this.makeCallPromise(e,async()=>await this.baseFs.chmodPromise(e,r),async(i,{subPath:n})=>await i.chmodPromise(n,r))}chmodSync(e,r){return this.makeCallSync(e,()=>this.baseFs.chmodSync(e,r),(i,{subPath:n})=>i.chmodSync(n,r))}async chownPromise(e,r,i){return await this.makeCallPromise(e,async()=>await this.baseFs.chownPromise(e,r,i),async(n,{subPath:s})=>await n.chownPromise(s,r,i))}chownSync(e,r,i){return this.makeCallSync(e,()=>this.baseFs.chownSync(e,r,i),(n,{subPath:s})=>n.chownSync(s,r,i))}async renamePromise(e,r){return await this.makeCallPromise(e,async()=>await this.makeCallPromise(r,async()=>await this.baseFs.renamePromise(e,r),async()=>{throw Object.assign(new Error("EEXDEV: cross-device link not permitted"),{code:"EEXDEV"})}),async(i,{subPath:n})=>await this.makeCallPromise(r,async()=>{throw Object.assign(new Error("EEXDEV: cross-device link not permitted"),{code:"EEXDEV"})},async(s,{subPath:o})=>{if(i!==s)throw Object.assign(new Error("EEXDEV: cross-device link not permitted"),{code:"EEXDEV"});return await i.renamePromise(n,o)}))}renameSync(e,r){return this.makeCallSync(e,()=>this.makeCallSync(r,()=>this.baseFs.renameSync(e,r),async()=>{throw Object.assign(new Error("EEXDEV: cross-device link not permitted"),{code:"EEXDEV"})}),(i,{subPath:n})=>this.makeCallSync(r,()=>{throw Object.assign(new Error("EEXDEV: cross-device link not permitted"),{code:"EEXDEV"})},(s,{subPath:o})=>{if(i!==s)throw Object.assign(new Error("EEXDEV: cross-device link not permitted"),{code:"EEXDEV"});return i.renameSync(n,o)}))}async copyFilePromise(e,r,i=0){let n=async(s,o,a,l)=>{if((i&_u.constants.COPYFILE_FICLONE_FORCE)!=0)throw Object.assign(new Error(`EXDEV: cross-device clone not permitted, copyfile '${o}' -> ${l}'`),{code:"EXDEV"});if(i&_u.constants.COPYFILE_EXCL&&await this.existsPromise(o))throw Object.assign(new Error(`EEXIST: file already exists, copyfile '${o}' -> '${l}'`),{code:"EEXIST"});let c;try{c=await s.readFilePromise(o)}catch(u){throw Object.assign(new Error(`EINVAL: invalid argument, copyfile '${o}' -> '${l}'`),{code:"EINVAL"})}await a.writeFilePromise(l,c)};return await this.makeCallPromise(e,async()=>await this.makeCallPromise(r,async()=>await this.baseFs.copyFilePromise(e,r,i),async(s,{subPath:o})=>await n(this.baseFs,e,s,o)),async(s,{subPath:o})=>await this.makeCallPromise(r,async()=>await n(s,o,this.baseFs,r),async(a,{subPath:l})=>s!==a?await n(s,o,a,l):await s.copyFilePromise(o,l,i)))}copyFileSync(e,r,i=0){let n=(s,o,a,l)=>{if((i&_u.constants.COPYFILE_FICLONE_FORCE)!=0)throw Object.assign(new Error(`EXDEV: cross-device clone not permitted, copyfile '${o}' -> ${l}'`),{code:"EXDEV"});if(i&_u.constants.COPYFILE_EXCL&&this.existsSync(o))throw Object.assign(new Error(`EEXIST: file already exists, copyfile '${o}' -> '${l}'`),{code:"EEXIST"});let c;try{c=s.readFileSync(o)}catch(u){throw Object.assign(new Error(`EINVAL: invalid argument, copyfile '${o}' -> '${l}'`),{code:"EINVAL"})}a.writeFileSync(l,c)};return this.makeCallSync(e,()=>this.makeCallSync(r,()=>this.baseFs.copyFileSync(e,r,i),(s,{subPath:o})=>n(this.baseFs,e,s,o)),(s,{subPath:o})=>this.makeCallSync(r,()=>n(s,o,this.baseFs,r),(a,{subPath:l})=>s!==a?n(s,o,a,l):s.copyFileSync(o,l,i)))}async appendFilePromise(e,r,i){return await this.makeCallPromise(e,async()=>await this.baseFs.appendFilePromise(e,r,i),async(n,{subPath:s})=>await n.appendFilePromise(s,r,i))}appendFileSync(e,r,i){return this.makeCallSync(e,()=>this.baseFs.appendFileSync(e,r,i),(n,{subPath:s})=>n.appendFileSync(s,r,i))}async writeFilePromise(e,r,i){return await this.makeCallPromise(e,async()=>await this.baseFs.writeFilePromise(e,r,i),async(n,{subPath:s})=>await n.writeFilePromise(s,r,i))}writeFileSync(e,r,i){return this.makeCallSync(e,()=>this.baseFs.writeFileSync(e,r,i),(n,{subPath:s})=>n.writeFileSync(s,r,i))}async unlinkPromise(e){return await this.makeCallPromise(e,async()=>await this.baseFs.unlinkPromise(e),async(r,{subPath:i})=>await r.unlinkPromise(i))}unlinkSync(e){return this.makeCallSync(e,()=>this.baseFs.unlinkSync(e),(r,{subPath:i})=>r.unlinkSync(i))}async utimesPromise(e,r,i){return await this.makeCallPromise(e,async()=>await this.baseFs.utimesPromise(e,r,i),async(n,{subPath:s})=>await n.utimesPromise(s,r,i))}utimesSync(e,r,i){return this.makeCallSync(e,()=>this.baseFs.utimesSync(e,r,i),(n,{subPath:s})=>n.utimesSync(s,r,i))}async mkdirPromise(e,r){return await this.makeCallPromise(e,async()=>await this.baseFs.mkdirPromise(e,r),async(i,{subPath:n})=>await i.mkdirPromise(n,r))}mkdirSync(e,r){return this.makeCallSync(e,()=>this.baseFs.mkdirSync(e,r),(i,{subPath:n})=>i.mkdirSync(n,r))}async rmdirPromise(e,r){return await this.makeCallPromise(e,async()=>await this.baseFs.rmdirPromise(e,r),async(i,{subPath:n})=>await i.rmdirPromise(n,r))}rmdirSync(e,r){return this.makeCallSync(e,()=>this.baseFs.rmdirSync(e,r),(i,{subPath:n})=>i.rmdirSync(n,r))}async linkPromise(e,r){return await this.makeCallPromise(r,async()=>await this.baseFs.linkPromise(e,r),async(i,{subPath:n})=>await i.linkPromise(e,n))}linkSync(e,r){return this.makeCallSync(r,()=>this.baseFs.linkSync(e,r),(i,{subPath:n})=>i.linkSync(e,n))}async symlinkPromise(e,r,i){return await this.makeCallPromise(r,async()=>await this.baseFs.symlinkPromise(e,r,i),async(n,{subPath:s})=>await n.symlinkPromise(e,s))}symlinkSync(e,r,i){return this.makeCallSync(r,()=>this.baseFs.symlinkSync(e,r,i),(n,{subPath:s})=>n.symlinkSync(e,s))}async readFilePromise(e,r){return this.makeCallPromise(e,async()=>{switch(r){case"utf8":return await this.baseFs.readFilePromise(e,r);default:return await this.baseFs.readFilePromise(e,r)}},async(i,{subPath:n})=>await i.readFilePromise(n,r))}readFileSync(e,r){return this.makeCallSync(e,()=>{switch(r){case"utf8":return this.baseFs.readFileSync(e,r);default:return this.baseFs.readFileSync(e,r)}},(i,{subPath:n})=>i.readFileSync(n,r))}async readdirPromise(e,{withFileTypes:r}={}){return await this.makeCallPromise(e,async()=>await this.baseFs.readdirPromise(e,{withFileTypes:r}),async(i,{subPath:n})=>await i.readdirPromise(n,{withFileTypes:r}),{requireSubpath:!1})}readdirSync(e,{withFileTypes:r}={}){return this.makeCallSync(e,()=>this.baseFs.readdirSync(e,{withFileTypes:r}),(i,{subPath:n})=>i.readdirSync(n,{withFileTypes:r}),{requireSubpath:!1})}async readlinkPromise(e){return await this.makeCallPromise(e,async()=>await this.baseFs.readlinkPromise(e),async(r,{subPath:i})=>await r.readlinkPromise(i))}readlinkSync(e){return this.makeCallSync(e,()=>this.baseFs.readlinkSync(e),(r,{subPath:i})=>r.readlinkSync(i))}async truncatePromise(e,r){return await this.makeCallPromise(e,async()=>await this.baseFs.truncatePromise(e,r),async(i,{subPath:n})=>await i.truncatePromise(n,r))}truncateSync(e,r){return this.makeCallSync(e,()=>this.baseFs.truncateSync(e,r),(i,{subPath:n})=>i.truncateSync(n,r))}watch(e,r,i){return this.makeCallSync(e,()=>this.baseFs.watch(e,r,i),(n,{subPath:s})=>n.watch(s,r,i))}watchFile(e,r,i){return this.makeCallSync(e,()=>this.baseFs.watchFile(e,r,i),()=>Hd(this,e,r,i))}unwatchFile(e,r){return this.makeCallSync(e,()=>this.baseFs.unwatchFile(e,r),()=>zu(this,e,r))}async makeCallPromise(e,r,i,{requireSubpath:n=!0}={}){if(typeof e!="string")return await r();let s=this.resolve(e),o=this.findZip(s);return o?n&&o.subPath==="/"?await r():await this.getZipPromise(o.archivePath,async a=>await i(a,o)):await r()}makeCallSync(e,r,i,{requireSubpath:n=!0}={}){if(typeof e!="string")return r();let s=this.resolve(e),o=this.findZip(s);return!o||n&&o.subPath==="/"?r():this.getZipSync(o.archivePath,a=>i(a,o))}findZip(e){if(this.filter&&!this.filter.test(e))return null;let r="";for(;;){let i=Sse(e.substr(r.length));if(!i)return null;if(r=this.pathUtils.join(r,i),this.isZip.has(r)===!1){if(this.notZip.has(r))continue;try{if(!this.baseFs.lstatSync(r).isFile()){this.notZip.add(r);continue}}catch{return null}this.isZip.add(r)}return{archivePath:r,subPath:this.pathUtils.join(pe.root,e.substr(r.length))}}}limitOpenFiles(e){if(this.zipInstances===null)return;let r=Date.now(),i=r+this.maxAge,n=e===null?0:this.zipInstances.size-e;for(let[s,{zipFs:o,expiresAt:a,refCount:l}]of this.zipInstances.entries())if(!(l!==0||o.hasOpenFileHandles())){if(r>=a){o.saveAndClose(),this.zipInstances.delete(s),n-=1;continue}else if(e===null||n<=0){i=a;break}o.saveAndClose(),this.zipInstances.delete(s),n-=1}this.limitOpenFilesTimeout===null&&(e===null&&this.zipInstances.size>0||e!==null)&&(this.limitOpenFilesTimeout=setTimeout(()=>{this.limitOpenFilesTimeout=null,this.limitOpenFiles(null)},i-r).unref())}async getZipPromise(e,r){let i=async()=>({baseFs:this.baseFs,libzip:this.libzip,readOnly:this.readOnlyArchives,stats:await this.baseFs.statPromise(e)});if(this.zipInstances){let n=this.zipInstances.get(e);if(!n){let s=await i();n=this.zipInstances.get(e),n||(n={zipFs:new Er(e,s),expiresAt:0,refCount:0})}this.zipInstances.delete(e),this.limitOpenFiles(this.maxOpenFiles-1),this.zipInstances.set(e,n),n.expiresAt=Date.now()+this.maxAge,n.refCount+=1;try{return await r(n.zipFs)}finally{n.refCount-=1}}else{let n=new Er(e,await i());try{return await r(n)}finally{n.saveAndClose()}}}getZipSync(e,r){let i=()=>({baseFs:this.baseFs,libzip:this.libzip,readOnly:this.readOnlyArchives,stats:this.baseFs.statSync(e)});if(this.zipInstances){let n=this.zipInstances.get(e);return n||(n={zipFs:new Er(e,i()),expiresAt:0,refCount:0}),this.zipInstances.delete(e),this.limitOpenFiles(this.maxOpenFiles-1),this.zipInstances.set(e,n),n.expiresAt=Date.now()+this.maxAge,r(n.zipFs)}else{let n=new Er(e,i());try{return r(n)}finally{n.saveAndClose()}}}};var $u=X(require("util"));var jd=X(require("url"));var FB=class extends cr{constructor(e){super(npath);this.baseFs=e}mapFromBase(e){return e}mapToBase(e){return e instanceof jd.URL?jd.fileURLToPath(e):e}};var Pse=new Set(["accessSync","appendFileSync","createReadStream","chmodSync","chownSync","closeSync","copyFileSync","linkSync","lstatSync","fstatSync","lutimesSync","mkdirSync","openSync","opendirSync","readSync","readlinkSync","readFileSync","readdirSync","readlinkSync","realpathSync","renameSync","rmdirSync","statSync","symlinkSync","truncateSync","unlinkSync","unwatchFile","utimesSync","watch","watchFile","writeFileSync","writeSync"]),KR=new Set(["accessPromise","appendFilePromise","chmodPromise","chownPromise","closePromise","copyFilePromise","linkPromise","fstatPromise","lstatPromise","lutimesPromise","mkdirPromise","openPromise","opendirPromise","readdirPromise","realpathPromise","readFilePromise","readdirPromise","readlinkPromise","renamePromise","rmdirPromise","statPromise","symlinkPromise","truncatePromise","unlinkPromise","utimesPromise","writeFilePromise","writeSync"]),xse=new Set(["appendFilePromise","chmodPromise","chownPromise","closePromise","readPromise","readFilePromise","statPromise","truncatePromise","utimesPromise","writePromise","writeFilePromise"]);function eg(t,e){e=new FB(e);let r=(i,n,s)=>{let o=i[n];i[n]=s,typeof(o==null?void 0:o[$u.promisify.custom])!="undefined"&&(s[$u.promisify.custom]=o[$u.promisify.custom])};{r(t,"exists",(i,...n)=>{let o=typeof n[n.length-1]=="function"?n.pop():()=>{};process.nextTick(()=>{e.existsPromise(i).then(a=>{o(a)},()=>{o(!1)})})}),r(t,"read",(i,n,...s)=>{let a=typeof s[s.length-1]=="function"?s.pop():()=>{};process.nextTick(()=>{e.readPromise(i,n,...s).then(l=>{a(null,l,n)},l=>{a(l)})})});for(let i of KR){let n=i.replace(/Promise$/,"");if(typeof t[n]=="undefined")continue;let s=e[i];if(typeof s=="undefined")continue;r(t,n,(...a)=>{let c=typeof a[a.length-1]=="function"?a.pop():()=>{};process.nextTick(()=>{s.apply(e,a).then(u=>{c(null,u)},u=>{c(u)})})})}t.realpath.native=t.realpath}{r(t,"existsSync",i=>{try{return e.existsSync(i)}catch(n){return!1}});for(let i of Pse){let n=i;if(typeof t[n]=="undefined")continue;let s=e[i];typeof s!="undefined"&&r(t,n,s.bind(e))}t.realpathSync.native=t.realpathSync}{let i=process.emitWarning;process.emitWarning=()=>{};let n;try{n=t.promises}finally{process.emitWarning=i}if(typeof n!="undefined"){for(let o of KR){let a=o.replace(/Promise$/,"");if(typeof n[a]=="undefined")continue;let l=e[o];typeof l!="undefined"&&o!=="open"&&r(n,a,l.bind(e))}class s{constructor(a){this.fd=a}}for(let o of xse){let a=o.replace(/Promise$/,""),l=e[o];typeof l!="undefined"&&r(s.prototype,a,function(...c){return l.call(e,this.fd,...c)})}r(n,"open",async(...o)=>{let a=await e.openPromise(...o);return new s(a)})}}t.read[$u.promisify.custom]=async(i,n,...s)=>({bytesRead:await e.readPromise(i,n,...s),buffer:n})}function Gd(t,e){let r=Object.create(t);return eg(r,e),r}var UR=X(require("os"));function HR(t){let e=npath.toPortablePath(UR.default.tmpdir()),r=Math.ceil(Math.random()*4294967296).toString(16).padStart(8,"0");return w.join(e,`${t}${r}`)}var Bn=new Set,YR=!1;function jR(){YR||(YR=!0,process.once("exit",()=>{R.rmtempSync()}))}var R=Object.assign(new It,{detachTemp(t){Bn.delete(t)},mktempSync(t){for(jR();;){let e=HR("xfs-");try{this.mkdirSync(e)}catch(i){if(i.code==="EEXIST")continue;throw i}let r=this.realpathSync(e);if(Bn.add(r),typeof t!="undefined")try{return t(r)}finally{if(Bn.has(r)){Bn.delete(r);try{this.removeSync(r)}catch{}}}else return r}},async mktempPromise(t){for(jR();;){let e=HR("xfs-");try{await this.mkdirPromise(e)}catch(i){if(i.code==="EEXIST")continue;throw i}let r=await this.realpathPromise(e);if(Bn.add(r),typeof t!="undefined")try{return await t(r)}finally{if(Bn.has(r)){Bn.delete(r);try{await this.removePromise(r)}catch{}}}else return r}},async rmtempPromise(){await Promise.all(Array.from(Bn.values()).map(async t=>{try{await R.removePromise(t,{maxRetries:0}),Bn.delete(t)}catch{}}))},rmtempSync(){for(let t of Bn)try{R.removeSync(t),Bn.delete(t)}catch{}}});var jB=X(YB()),Wi;(function(t){t[t.Never=0]="Never",t[t.ErrorCode=1]="ErrorCode",t[t.Always=2]="Always"})(Wi||(Wi={}));function ka(t){return t!==null&&typeof t.fd=="number"}var va=new Set;function GB(){}function qB(){for(let t of va)t.kill()}async function ws(t,e,{cwd:r,env:i=process.env,strict:n=!1,stdin:s=null,stdout:o,stderr:a,end:l=2}){let c=["pipe","pipe","pipe"];s===null?c[0]="ignore":ka(s)&&(c[0]=s),ka(o)&&(c[1]=o),ka(a)&&(c[2]=a);let u=jB.default(t,e,{cwd:npath.fromPortablePath(r),env:{...i,PWD:npath.fromPortablePath(r)},stdio:c});va.add(u),va.size===1&&(process.on("SIGINT",GB),process.on("SIGTERM",qB)),!ka(s)&&s!==null&&s.pipe(u.stdin),ka(o)||u.stdout.pipe(o,{end:!1}),ka(a)||u.stderr.pipe(a,{end:!1});let g=()=>{for(let h of new Set([o,a]))ka(h)||h.end()};return new Promise((h,f)=>{u.on("error",p=>{va.delete(u),va.size===0&&(process.off("SIGINT",GB),process.off("SIGTERM",qB)),(l===2||l===1)&&g(),f(p)}),u.on("close",(p,m)=>{va.delete(u),va.size===0&&(process.off("SIGINT",GB),process.off("SIGTERM",qB)),(l===2||l===1&&p>0)&&g(),p===0||!n?h({code:JB(p,m)}):f(p!==null?new Error(`Child "${t}" exited with exit code ${p}`):new Error(`Child "${t}" exited with signal ${m}`))})})}async function roe(t,e,{cwd:r,env:i=process.env,encoding:n="utf8",strict:s=!1}){let o=["ignore","pipe","pipe"],a=[],l=[],c=npath.fromPortablePath(r);typeof i.PWD!="undefined"&&(i={...i,PWD:c});let u=jB.default(t,e,{cwd:c,env:i,stdio:o});return u.stdout.on("data",g=>{a.push(g)}),u.stderr.on("data",g=>{l.push(g)}),await new Promise((g,h)=>{u.on("error",()=>{h()}),u.on("close",(f,p)=>{let m=n==="buffer"?Buffer.concat(a):Buffer.concat(a).toString(n),I=n==="buffer"?Buffer.concat(l):Buffer.concat(l).toString(n);f===0||!s?g({code:JB(f,p),stdout:m,stderr:I}):h(Object.assign(new Error(`Child "${t}" exited with exit code ${f} +`}function kl(t,e){return e.replace(/\r?\n/g,lae(t))}var vl=te(require("fs")),ww=te(require("stream")),WL=te(require("util")),Qw=te(require("zlib"));var jL=te(require("fs"));var wt=class extends ja{constructor(e=jL.default){super();this.realFs=e,typeof this.realFs.lutimes!="undefined"&&(this.lutimesPromise=this.lutimesPromiseImpl,this.lutimesSync=this.lutimesSyncImpl)}getExtractHint(){return!1}getRealPath(){return Ee.root}resolve(e){return B.resolve(e)}async openPromise(e,r,i){return await new Promise((n,s)=>{this.realFs.open(L.fromPortablePath(e),r,i,this.makeCallback(n,s))})}openSync(e,r,i){return this.realFs.openSync(L.fromPortablePath(e),r,i)}async opendirPromise(e,r){return await new Promise((i,n)=>{typeof r!="undefined"?this.realFs.opendir(L.fromPortablePath(e),r,this.makeCallback(i,n)):this.realFs.opendir(L.fromPortablePath(e),this.makeCallback(i,n))}).then(i=>Object.defineProperty(i,"path",{value:e,configurable:!0,writable:!0}))}opendirSync(e,r){let i=typeof r!="undefined"?this.realFs.opendirSync(L.fromPortablePath(e),r):this.realFs.opendirSync(L.fromPortablePath(e));return Object.defineProperty(i,"path",{value:e,configurable:!0,writable:!0})}async readPromise(e,r,i=0,n=0,s=-1){return await new Promise((o,a)=>{this.realFs.read(e,r,i,n,s,(l,c)=>{l?a(l):o(c)})})}readSync(e,r,i,n,s){return this.realFs.readSync(e,r,i,n,s)}async writePromise(e,r,i,n,s){return await new Promise((o,a)=>typeof r=="string"?this.realFs.write(e,r,i,this.makeCallback(o,a)):this.realFs.write(e,r,i,n,s,this.makeCallback(o,a)))}writeSync(e,r,i,n,s){return typeof r=="string"?this.realFs.writeSync(e,r,i):this.realFs.writeSync(e,r,i,n,s)}async closePromise(e){await new Promise((r,i)=>{this.realFs.close(e,this.makeCallback(r,i))})}closeSync(e){this.realFs.closeSync(e)}createReadStream(e,r){let i=e!==null?L.fromPortablePath(e):e;return this.realFs.createReadStream(i,r)}createWriteStream(e,r){let i=e!==null?L.fromPortablePath(e):e;return this.realFs.createWriteStream(i,r)}async realpathPromise(e){return await new Promise((r,i)=>{this.realFs.realpath(L.fromPortablePath(e),{},this.makeCallback(r,i))}).then(r=>L.toPortablePath(r))}realpathSync(e){return L.toPortablePath(this.realFs.realpathSync(L.fromPortablePath(e),{}))}async existsPromise(e){return await new Promise(r=>{this.realFs.exists(L.fromPortablePath(e),r)})}accessSync(e,r){return this.realFs.accessSync(L.fromPortablePath(e),r)}async accessPromise(e,r){return await new Promise((i,n)=>{this.realFs.access(L.fromPortablePath(e),r,this.makeCallback(i,n))})}existsSync(e){return this.realFs.existsSync(L.fromPortablePath(e))}async statPromise(e,r){return await new Promise((i,n)=>{r?this.realFs.stat(L.fromPortablePath(e),r,this.makeCallback(i,n)):this.realFs.stat(L.fromPortablePath(e),this.makeCallback(i,n))})}statSync(e,r){return r?this.realFs.statSync(L.fromPortablePath(e),r):this.realFs.statSync(L.fromPortablePath(e))}async fstatPromise(e,r){return await new Promise((i,n)=>{r?this.realFs.fstat(e,r,this.makeCallback(i,n)):this.realFs.fstat(e,this.makeCallback(i,n))})}fstatSync(e,r){return r?this.realFs.fstatSync(e,r):this.realFs.fstatSync(e)}async lstatPromise(e,r){return await new Promise((i,n)=>{r?this.realFs.lstat(L.fromPortablePath(e),r,this.makeCallback(i,n)):this.realFs.lstat(L.fromPortablePath(e),this.makeCallback(i,n))})}lstatSync(e,r){return r?this.realFs.lstatSync(L.fromPortablePath(e),r):this.realFs.lstatSync(L.fromPortablePath(e))}async chmodPromise(e,r){return await new Promise((i,n)=>{this.realFs.chmod(L.fromPortablePath(e),r,this.makeCallback(i,n))})}chmodSync(e,r){return this.realFs.chmodSync(L.fromPortablePath(e),r)}async chownPromise(e,r,i){return await new Promise((n,s)=>{this.realFs.chown(L.fromPortablePath(e),r,i,this.makeCallback(n,s))})}chownSync(e,r,i){return this.realFs.chownSync(L.fromPortablePath(e),r,i)}async renamePromise(e,r){return await new Promise((i,n)=>{this.realFs.rename(L.fromPortablePath(e),L.fromPortablePath(r),this.makeCallback(i,n))})}renameSync(e,r){return this.realFs.renameSync(L.fromPortablePath(e),L.fromPortablePath(r))}async copyFilePromise(e,r,i=0){return await new Promise((n,s)=>{this.realFs.copyFile(L.fromPortablePath(e),L.fromPortablePath(r),i,this.makeCallback(n,s))})}copyFileSync(e,r,i=0){return this.realFs.copyFileSync(L.fromPortablePath(e),L.fromPortablePath(r),i)}async appendFilePromise(e,r,i){return await new Promise((n,s)=>{let o=typeof e=="string"?L.fromPortablePath(e):e;i?this.realFs.appendFile(o,r,i,this.makeCallback(n,s)):this.realFs.appendFile(o,r,this.makeCallback(n,s))})}appendFileSync(e,r,i){let n=typeof e=="string"?L.fromPortablePath(e):e;i?this.realFs.appendFileSync(n,r,i):this.realFs.appendFileSync(n,r)}async writeFilePromise(e,r,i){return await new Promise((n,s)=>{let o=typeof e=="string"?L.fromPortablePath(e):e;i?this.realFs.writeFile(o,r,i,this.makeCallback(n,s)):this.realFs.writeFile(o,r,this.makeCallback(n,s))})}writeFileSync(e,r,i){let n=typeof e=="string"?L.fromPortablePath(e):e;i?this.realFs.writeFileSync(n,r,i):this.realFs.writeFileSync(n,r)}async unlinkPromise(e){return await new Promise((r,i)=>{this.realFs.unlink(L.fromPortablePath(e),this.makeCallback(r,i))})}unlinkSync(e){return this.realFs.unlinkSync(L.fromPortablePath(e))}async utimesPromise(e,r,i){return await new Promise((n,s)=>{this.realFs.utimes(L.fromPortablePath(e),r,i,this.makeCallback(n,s))})}utimesSync(e,r,i){this.realFs.utimesSync(L.fromPortablePath(e),r,i)}async lutimesPromiseImpl(e,r,i){let n=this.realFs.lutimes;if(typeof n=="undefined")throw Qg("unavailable Node binding",`lutimes '${e}'`);return await new Promise((s,o)=>{n.call(this.realFs,L.fromPortablePath(e),r,i,this.makeCallback(s,o))})}lutimesSyncImpl(e,r,i){let n=this.realFs.lutimesSync;if(typeof n=="undefined")throw Qg("unavailable Node binding",`lutimes '${e}'`);n.call(this.realFs,L.fromPortablePath(e),r,i)}async mkdirPromise(e,r){return await new Promise((i,n)=>{this.realFs.mkdir(L.fromPortablePath(e),r,this.makeCallback(i,n))})}mkdirSync(e,r){return this.realFs.mkdirSync(L.fromPortablePath(e),r)}async rmdirPromise(e,r){return await new Promise((i,n)=>{r?this.realFs.rmdir(L.fromPortablePath(e),r,this.makeCallback(i,n)):this.realFs.rmdir(L.fromPortablePath(e),this.makeCallback(i,n))})}rmdirSync(e,r){return this.realFs.rmdirSync(L.fromPortablePath(e),r)}async linkPromise(e,r){return await new Promise((i,n)=>{this.realFs.link(L.fromPortablePath(e),L.fromPortablePath(r),this.makeCallback(i,n))})}linkSync(e,r){return this.realFs.linkSync(L.fromPortablePath(e),L.fromPortablePath(r))}async symlinkPromise(e,r,i){return await new Promise((n,s)=>{this.realFs.symlink(L.fromPortablePath(e.replace(/\/+$/,"")),L.fromPortablePath(r),i,this.makeCallback(n,s))})}symlinkSync(e,r,i){return this.realFs.symlinkSync(L.fromPortablePath(e.replace(/\/+$/,"")),L.fromPortablePath(r),i)}async readFilePromise(e,r){return await new Promise((i,n)=>{let s=typeof e=="string"?L.fromPortablePath(e):e;this.realFs.readFile(s,r,this.makeCallback(i,n))})}readFileSync(e,r){let i=typeof e=="string"?L.fromPortablePath(e):e;return this.realFs.readFileSync(i,r)}async readdirPromise(e,{withFileTypes:r}={}){return await new Promise((i,n)=>{r?this.realFs.readdir(L.fromPortablePath(e),{withFileTypes:!0},this.makeCallback(i,n)):this.realFs.readdir(L.fromPortablePath(e),this.makeCallback(s=>i(s),n))})}readdirSync(e,{withFileTypes:r}={}){return r?this.realFs.readdirSync(L.fromPortablePath(e),{withFileTypes:!0}):this.realFs.readdirSync(L.fromPortablePath(e))}async readlinkPromise(e){return await new Promise((r,i)=>{this.realFs.readlink(L.fromPortablePath(e),this.makeCallback(r,i))}).then(r=>L.toPortablePath(r))}readlinkSync(e){return L.toPortablePath(this.realFs.readlinkSync(L.fromPortablePath(e)))}async truncatePromise(e,r){return await new Promise((i,n)=>{this.realFs.truncate(L.fromPortablePath(e),r,this.makeCallback(i,n))})}truncateSync(e,r){return this.realFs.truncateSync(L.fromPortablePath(e),r)}watch(e,r,i){return this.realFs.watch(L.fromPortablePath(e),r,i)}watchFile(e,r,i){return this.realFs.watchFile(L.fromPortablePath(e),r,i)}unwatchFile(e,r){return this.realFs.unwatchFile(L.fromPortablePath(e),r)}makeCallback(e,r){return(i,n)=>{i?r(i):e(n)}}};var qL=te(require("events"));var qa;(function(r){r.Change="change",r.Stop="stop"})(qa||(qa={}));var Ja;(function(i){i.Ready="ready",i.Running="running",i.Stopped="stopped"})(Ja||(Ja={}));function JL(t,e){if(t!==e)throw new Error(`Invalid StatWatcher status: expected '${e}', got '${t}'`)}var Dg=class extends qL.EventEmitter{constructor(e,r,{bigint:i=!1}={}){super();this.status=Ja.Ready;this.changeListeners=new Map;this.startTimeout=null;this.fakeFs=e,this.path=r,this.bigint=i,this.lastStats=this.stat()}static create(e,r,i){let n=new Dg(e,r,i);return n.start(),n}start(){JL(this.status,Ja.Ready),this.status=Ja.Running,this.startTimeout=setTimeout(()=>{this.startTimeout=null,this.fakeFs.existsSync(this.path)||this.emit(qa.Change,this.lastStats,this.lastStats)},3)}stop(){JL(this.status,Ja.Running),this.status=Ja.Stopped,this.startTimeout!==null&&(clearTimeout(this.startTimeout),this.startTimeout=null),this.emit(qa.Stop)}stat(){try{return this.fakeFs.statSync(this.path,{bigint:this.bigint})}catch(e){if(e.code==="ENOENT"){let r=this.bigint?new Eg:new Ro;return CC(r)}else throw e}}makeInterval(e){let r=setInterval(()=>{let i=this.stat(),n=this.lastStats;Cw(i,n)||(this.lastStats=i,this.emit(qa.Change,i,n))},e.interval);return e.persistent?r:r.unref()}registerChangeListener(e,r){this.addListener(qa.Change,e),this.changeListeners.set(e,this.makeInterval(r))}unregisterChangeListener(e){this.removeListener(qa.Change,e);let r=this.changeListeners.get(e);typeof r!="undefined"&&clearInterval(r),this.changeListeners.delete(e)}unregisterAllChangeListeners(){for(let e of this.changeListeners.keys())this.unregisterChangeListener(e)}hasChangeListeners(){return this.changeListeners.size>0}ref(){for(let e of this.changeListeners.values())e.ref();return this}unref(){for(let e of this.changeListeners.values())e.unref();return this}};var wC=new WeakMap;function QC(t,e,r,i){let n,s,o,a;switch(typeof r){case"function":n=!1,s=!0,o=5007,a=r;break;default:({bigint:n=!1,persistent:s=!0,interval:o=5007}=r),a=i;break}let l=wC.get(t);typeof l=="undefined"&&wC.set(t,l=new Map);let c=l.get(e);return typeof c=="undefined"&&(c=Dg.create(t,e,{bigint:n}),l.set(e,c)),c.registerChangeListener(a,{persistent:s,interval:o}),c}function Sg(t,e,r){let i=wC.get(t);if(typeof i=="undefined")return;let n=i.get(e);typeof n!="undefined"&&(typeof r=="undefined"?n.unregisterAllChangeListeners():n.unregisterChangeListener(r),n.hasChangeListeners()||(n.stop(),i.delete(e)))}function xg(t){let e=wC.get(t);if(typeof e!="undefined")for(let r of e.keys())Sg(t,r)}var Wa="mixed";function cae(t){if(typeof t=="string"&&String(+t)===t)return+t;if(Number.isFinite(t))return t<0?Date.now()/1e3:t;if((0,WL.isDate)(t))return t.getTime()/1e3;throw new Error("Invalid time")}var br=class extends ja{constructor(e,r){super();this.lzSource=null;this.listings=new Map;this.entries=new Map;this.fileSources=new Map;this.fds=new Map;this.nextFd=0;this.ready=!1;this.readOnly=!1;this.libzip=r.libzip;let i=r;if(this.level=typeof i.level!="undefined"?i.level:Wa,e===null&&(e=Buffer.from([80,75,5,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0])),typeof e=="string"){let{baseFs:o=new wt}=i;this.baseFs=o,this.path=e}else this.path=null,this.baseFs=null;if(r.stats)this.stats=r.stats;else if(typeof e=="string")try{this.stats=this.baseFs.statSync(e)}catch(o){if(o.code==="ENOENT"&&i.create)this.stats=yg();else throw o}else this.stats=yg();let n=this.libzip.malloc(4);try{let o=0;if(typeof e=="string"&&i.create&&(o|=this.libzip.ZIP_CREATE|this.libzip.ZIP_TRUNCATE),r.readOnly&&(o|=this.libzip.ZIP_RDONLY,this.readOnly=!0),typeof e=="string")this.zip=this.libzip.open(L.fromPortablePath(e),o,n);else{let a=this.allocateUnattachedSource(e);try{this.zip=this.libzip.openFromSource(a,o,n),this.lzSource=a}catch(l){throw this.libzip.source.free(a),l}}if(this.zip===0){let a=this.libzip.struct.errorS();throw this.libzip.error.initWithCode(a,this.libzip.getValue(n,"i32")),this.makeLibzipError(a)}}finally{this.libzip.free(n)}this.listings.set(Ee.root,new Set);let s=this.libzip.getNumEntries(this.zip,0);for(let o=0;oe)throw new Error("Overread");let n=this.libzip.HEAPU8.subarray(r,r+e);return Buffer.from(n)}finally{this.libzip.free(r)}}finally{this.libzip.source.close(this.lzSource),this.libzip.source.free(this.lzSource),this.ready=!1}}prepareClose(){if(!this.ready)throw yC("archive closed, close");xg(this)}saveAndClose(){if(!this.path||!this.baseFs)throw new Error("ZipFS cannot be saved and must be discarded when loaded from a buffer");if(this.prepareClose(),this.readOnly){this.discardAndClose();return}let e=this.baseFs.existsSync(this.path)?this.baseFs.statSync(this.path).mode&511:null;if(this.libzip.close(this.zip)===-1)throw this.makeLibzipError(this.libzip.getError(this.zip));e===null?this.baseFs.chmodSync(this.path,this.stats.mode):e!==(this.baseFs.statSync(this.path).mode&511)&&this.baseFs.chmodSync(this.path,e),this.ready=!1}discardAndClose(){this.prepareClose(),this.libzip.discard(this.zip),this.ready=!1}resolve(e){return B.resolve(Ee.root,e)}async openPromise(e,r,i){return this.openSync(e,r,i)}openSync(e,r,i){let n=this.nextFd++;return this.fds.set(n,{cursor:0,p:e}),n}hasOpenFileHandles(){return!!this.fds.size}async opendirPromise(e,r){return this.opendirSync(e,r)}opendirSync(e,r={}){let i=this.resolveFilename(`opendir '${e}'`,e);if(!this.entries.has(i)&&!this.listings.has(i))throw Pn(`opendir '${e}'`);let n=this.listings.get(i);if(!n)throw Zn(`opendir '${e}'`);let s=[...n],o=this.openSync(i,"r");return Ga(this,i,s,{onClose:()=>{this.closeSync(o)}})}async readPromise(e,r,i,n,s){return this.readSync(e,r,i,n,s)}readSync(e,r,i=0,n=0,s=-1){let o=this.fds.get(e);if(typeof o=="undefined")throw ti("read");let a;s===-1||s===null?a=o.cursor:a=s;let l=this.readFileSync(o.p);l.copy(r,i,a,a+n);let c=Math.max(0,Math.min(l.length-a,n));return(s===-1||s===null)&&(o.cursor+=c),c}async writePromise(e,r,i,n,s){return typeof r=="string"?this.writeSync(e,r,s):this.writeSync(e,r,i,n,s)}writeSync(e,r,i,n,s){throw typeof this.fds.get(e)=="undefined"?ti("read"):new Error("Unimplemented")}async closePromise(e){return this.closeSync(e)}closeSync(e){if(typeof this.fds.get(e)=="undefined")throw ti("read");this.fds.delete(e)}createReadStream(e,{encoding:r}={}){if(e===null)throw new Error("Unimplemented");let i=this.openSync(e,"r"),n=Object.assign(new ww.PassThrough({emitClose:!0,autoDestroy:!0,destroy:(o,a)=>{clearImmediate(s),this.closeSync(i),a(o)}}),{close(){n.destroy()},bytesRead:0,path:e}),s=setImmediate(async()=>{try{let o=await this.readFilePromise(e,r);n.bytesRead=o.length,n.end(o)}catch(o){n.destroy(o)}});return n}createWriteStream(e,{encoding:r}={}){if(this.readOnly)throw Bi(`open '${e}'`);if(e===null)throw new Error("Unimplemented");let i=[],n=this.openSync(e,"w"),s=Object.assign(new ww.PassThrough({autoDestroy:!0,emitClose:!0,destroy:(o,a)=>{try{o?a(o):(this.writeFileSync(e,Buffer.concat(i),r),a(null))}catch(l){a(l)}finally{this.closeSync(n)}}}),{bytesWritten:0,path:e,close(){s.destroy()}});return s.on("data",o=>{let a=Buffer.from(o);s.bytesWritten+=a.length,i.push(a)}),s}async realpathPromise(e){return this.realpathSync(e)}realpathSync(e){let r=this.resolveFilename(`lstat '${e}'`,e);if(!this.entries.has(r)&&!this.listings.has(r))throw Pn(`lstat '${e}'`);return r}async existsPromise(e){return this.existsSync(e)}existsSync(e){if(!this.ready)throw yC(`archive closed, existsSync '${e}'`);if(this.symlinkCount===0){let i=B.resolve(Ee.root,e);return this.entries.has(i)||this.listings.has(i)}let r;try{r=this.resolveFilename(`stat '${e}'`,e)}catch(i){return!1}return this.entries.has(r)||this.listings.has(r)}async accessPromise(e,r){return this.accessSync(e,r)}accessSync(e,r=vl.constants.F_OK){let i=this.resolveFilename(`access '${e}'`,e);if(!this.entries.has(i)&&!this.listings.has(i))throw Pn(`access '${e}'`);if(this.readOnly&&r&vl.constants.W_OK)throw Bi(`access '${e}'`)}async statPromise(e,r){return this.statSync(e,r)}statSync(e,r){let i=this.resolveFilename(`stat '${e}'`,e);if(!this.entries.has(i)&&!this.listings.has(i))throw Pn(`stat '${e}'`);if(e[e.length-1]==="/"&&!this.listings.has(i))throw Zn(`stat '${e}'`);return this.statImpl(`stat '${e}'`,i,r)}async fstatPromise(e,r){return this.fstatSync(e,r)}fstatSync(e,r){let i=this.fds.get(e);if(typeof i=="undefined")throw ti("fstatSync");let{p:n}=i,s=this.resolveFilename(`stat '${n}'`,n);if(!this.entries.has(s)&&!this.listings.has(s))throw Pn(`stat '${n}'`);if(n[n.length-1]==="/"&&!this.listings.has(s))throw Zn(`stat '${n}'`);return this.statImpl(`fstat '${n}'`,s,r)}async lstatPromise(e,r){return this.lstatSync(e,r)}lstatSync(e,r){let i=this.resolveFilename(`lstat '${e}'`,e,!1);if(!this.entries.has(i)&&!this.listings.has(i))throw Pn(`lstat '${e}'`);if(e[e.length-1]==="/"&&!this.listings.has(i))throw Zn(`lstat '${e}'`);return this.statImpl(`lstat '${e}'`,i,r)}statImpl(e,r,i={}){let n=this.entries.get(r);if(typeof n!="undefined"){let s=this.libzip.struct.statS();if(this.libzip.statIndex(this.zip,n,0,0,s)===-1)throw this.makeLibzipError(this.libzip.getError(this.zip));let a=this.stats.uid,l=this.stats.gid,c=this.libzip.struct.statSize(s)>>>0,u=512,g=Math.ceil(c/u),h=(this.libzip.struct.statMtime(s)>>>0)*1e3,f=h,p=h,m=h,I=new Date(f),y=new Date(p),w=new Date(m),x=new Date(h),F=this.listings.has(r)?vo:this.isSymbolicLink(n)?Fo:Ls,N=F===vo?493:420,K=F|this.getUnixMode(n,N)&511,v=this.libzip.struct.statCrc(s),J=Object.assign(new Ro,{uid:a,gid:l,size:c,blksize:u,blocks:g,atime:I,birthtime:y,ctime:w,mtime:x,atimeMs:f,birthtimeMs:p,ctimeMs:m,mtimeMs:h,mode:K,crc:v});return i.bigint===!0?mC(J):J}if(this.listings.has(r)){let s=this.stats.uid,o=this.stats.gid,a=0,l=512,c=0,u=this.stats.mtimeMs,g=this.stats.mtimeMs,h=this.stats.mtimeMs,f=this.stats.mtimeMs,p=new Date(u),m=new Date(g),I=new Date(h),y=new Date(f),w=vo|493,x=0,F=Object.assign(new Ro,{uid:s,gid:o,size:a,blksize:l,blocks:c,atime:p,birthtime:m,ctime:I,mtime:y,atimeMs:u,birthtimeMs:g,ctimeMs:h,mtimeMs:f,mode:w,crc:x});return i.bigint===!0?mC(F):F}throw new Error("Unreachable")}getUnixMode(e,r){if(this.libzip.file.getExternalAttributes(this.zip,e,0,0,this.libzip.uint08S,this.libzip.uint32S)===-1)throw this.makeLibzipError(this.libzip.getError(this.zip));return this.libzip.getValue(this.libzip.uint08S,"i8")>>>0!==this.libzip.ZIP_OPSYS_UNIX?r:this.libzip.getValue(this.libzip.uint32S,"i32")>>>16}registerListing(e){let r=this.listings.get(e);if(r)return r;let i=this.registerListing(B.dirname(e));return r=new Set,i.add(B.basename(e)),this.listings.set(e,r),r}registerEntry(e,r){this.registerListing(B.dirname(e)).add(B.basename(e)),this.entries.set(e,r)}unregisterListing(e){this.listings.delete(e);let r=this.listings.get(B.dirname(e));r==null||r.delete(B.basename(e))}unregisterEntry(e){this.unregisterListing(e);let r=this.entries.get(e);this.entries.delete(e),typeof r!="undefined"&&(this.fileSources.delete(r),this.isSymbolicLink(r)&&this.symlinkCount--)}deleteEntry(e,r){if(this.unregisterEntry(e),this.libzip.delete(this.zip,r)===-1)throw this.makeLibzipError(this.libzip.getError(this.zip))}resolveFilename(e,r,i=!0){if(!this.ready)throw yC(`archive closed, ${e}`);let n=B.resolve(Ee.root,r);if(n==="/")return Ee.root;let s=this.entries.get(n);if(i&&s!==void 0)if(this.symlinkCount!==0&&this.isSymbolicLink(s)){let o=this.getFileSource(s).toString();return this.resolveFilename(e,B.resolve(B.dirname(n),o),!0)}else return n;for(;;){let o=this.resolveFilename(e,B.dirname(n),!0),a=this.listings.has(o),l=this.entries.has(o);if(!a&&!l)throw Pn(e);if(!a)throw Zn(e);if(n=B.resolve(o,B.basename(n)),!i||this.symlinkCount===0)break;let c=this.libzip.name.locate(this.zip,n.slice(1));if(c===-1)break;if(this.isSymbolicLink(c)){let u=this.getFileSource(c).toString();n=B.resolve(B.dirname(n),u)}else break}return n}allocateBuffer(e){Buffer.isBuffer(e)||(e=Buffer.from(e));let r=this.libzip.malloc(e.byteLength);if(!r)throw new Error("Couldn't allocate enough memory");return new Uint8Array(this.libzip.HEAPU8.buffer,r,e.byteLength).set(e),{buffer:r,byteLength:e.byteLength}}allocateUnattachedSource(e){let r=this.libzip.struct.errorS(),{buffer:i,byteLength:n}=this.allocateBuffer(e),s=this.libzip.source.fromUnattachedBuffer(i,n,0,!0,r);if(s===0)throw this.libzip.free(r),this.makeLibzipError(r);return s}allocateSource(e){let{buffer:r,byteLength:i}=this.allocateBuffer(e),n=this.libzip.source.fromBuffer(this.zip,r,i,0,!0);if(n===0)throw this.libzip.free(r),this.makeLibzipError(this.libzip.getError(this.zip));return n}setFileSource(e,r){let i=Buffer.isBuffer(r)?r:Buffer.from(r),n=B.relative(Ee.root,e),s=this.allocateSource(r);try{let o=this.libzip.file.add(this.zip,n,s,this.libzip.ZIP_FL_OVERWRITE);if(o===-1)throw this.makeLibzipError(this.libzip.getError(this.zip));if(this.level!=="mixed"){let a;if(this.level===0?a=this.libzip.ZIP_CM_STORE:a=this.libzip.ZIP_CM_DEFLATE,this.libzip.file.setCompression(this.zip,o,0,a,this.level)===-1)throw this.makeLibzipError(this.libzip.getError(this.zip))}return this.fileSources.set(o,i),o}catch(o){throw this.libzip.source.free(s),o}}isSymbolicLink(e){if(this.symlinkCount===0)return!1;if(this.libzip.file.getExternalAttributes(this.zip,e,0,0,this.libzip.uint08S,this.libzip.uint32S)===-1)throw this.makeLibzipError(this.libzip.getError(this.zip));return this.libzip.getValue(this.libzip.uint08S,"i8")>>>0!==this.libzip.ZIP_OPSYS_UNIX?!1:(this.libzip.getValue(this.libzip.uint32S,"i32")>>>16&tn)===Fo}getFileSource(e,r={asyncDecompress:!1}){let i=this.fileSources.get(e);if(typeof i!="undefined")return i;let n=this.libzip.struct.statS();if(this.libzip.statIndex(this.zip,e,0,0,n)===-1)throw this.makeLibzipError(this.libzip.getError(this.zip));let o=this.libzip.struct.statCompSize(n),a=this.libzip.struct.statCompMethod(n),l=this.libzip.malloc(o);try{let c=this.libzip.fopenIndex(this.zip,e,0,this.libzip.ZIP_FL_COMPRESSED);if(c===0)throw this.makeLibzipError(this.libzip.getError(this.zip));try{let u=this.libzip.fread(c,l,o,0);if(u===-1)throw this.makeLibzipError(this.libzip.file.getError(c));if(uo)throw new Error("Overread");let g=this.libzip.HEAPU8.subarray(l,l+o),h=Buffer.from(g);if(a===0)return this.fileSources.set(e,h),h;if(r.asyncDecompress)return new Promise((f,p)=>{Qw.default.inflateRaw(h,(m,I)=>{m?p(m):(this.fileSources.set(e,I),f(I))})});{let f=Qw.default.inflateRawSync(h);return this.fileSources.set(e,f),f}}finally{this.libzip.fclose(c)}}finally{this.libzip.free(l)}}async chmodPromise(e,r){return this.chmodSync(e,r)}chmodSync(e,r){if(this.readOnly)throw Bi(`chmod '${e}'`);r&=493;let i=this.resolveFilename(`chmod '${e}'`,e,!1),n=this.entries.get(i);if(typeof n=="undefined")throw new Error(`Assertion failed: The entry should have been registered (${i})`);let o=this.getUnixMode(n,Ls|0)&~511|r;if(this.libzip.file.setExternalAttributes(this.zip,n,0,0,this.libzip.ZIP_OPSYS_UNIX,o<<16)===-1)throw this.makeLibzipError(this.libzip.getError(this.zip))}async chownPromise(e,r,i){return this.chownSync(e,r,i)}chownSync(e,r,i){throw new Error("Unimplemented")}async renamePromise(e,r){return this.renameSync(e,r)}renameSync(e,r){throw new Error("Unimplemented")}async copyFilePromise(e,r,i){let{indexSource:n,indexDest:s,resolvedDestP:o}=this.prepareCopyFile(e,r,i),a=await this.getFileSource(n,{asyncDecompress:!0}),l=this.setFileSource(o,a);l!==s&&this.registerEntry(o,l)}copyFileSync(e,r,i=0){let{indexSource:n,indexDest:s,resolvedDestP:o}=this.prepareCopyFile(e,r,i),a=this.getFileSource(n),l=this.setFileSource(o,a);l!==s&&this.registerEntry(o,l)}prepareCopyFile(e,r,i=0){if(this.readOnly)throw Bi(`copyfile '${e} -> '${r}'`);if((i&vl.constants.COPYFILE_FICLONE_FORCE)!=0)throw Qg("unsupported clone operation",`copyfile '${e}' -> ${r}'`);let n=this.resolveFilename(`copyfile '${e} -> ${r}'`,e),s=this.entries.get(n);if(typeof s=="undefined")throw Lo(`copyfile '${e}' -> '${r}'`);let o=this.resolveFilename(`copyfile '${e}' -> ${r}'`,r),a=this.entries.get(o);if((i&(vl.constants.COPYFILE_EXCL|vl.constants.COPYFILE_FICLONE_FORCE))!=0&&typeof a!="undefined")throw BC(`copyfile '${e}' -> '${r}'`);return{indexSource:s,resolvedDestP:o,indexDest:a}}async appendFilePromise(e,r,i){if(this.readOnly)throw Bi(`open '${e}'`);return typeof i=="undefined"?i={flag:"a"}:typeof i=="string"?i={flag:"a",encoding:i}:typeof i.flag=="undefined"&&(i=k({flag:"a"},i)),this.writeFilePromise(e,r,i)}appendFileSync(e,r,i={}){if(this.readOnly)throw Bi(`open '${e}'`);return typeof i=="undefined"?i={flag:"a"}:typeof i=="string"?i={flag:"a",encoding:i}:typeof i.flag=="undefined"&&(i=k({flag:"a"},i)),this.writeFileSync(e,r,i)}async writeFilePromise(e,r,i){let{encoding:n,index:s,resolvedP:o}=this.prepareWriteFile(e,i);s!==void 0&&typeof i=="object"&&i.flag&&i.flag.includes("a")&&(r=Buffer.concat([await this.getFileSource(s,{asyncDecompress:!0}),Buffer.from(r)])),n!==null&&(r=r.toString(n));let a=this.setFileSource(o,r);a!==s&&this.registerEntry(o,a)}writeFileSync(e,r,i){let{encoding:n,index:s,resolvedP:o}=this.prepareWriteFile(e,i);s!==void 0&&typeof i=="object"&&i.flag&&i.flag.includes("a")&&(r=Buffer.concat([this.getFileSource(s),Buffer.from(r)])),n!==null&&(r=r.toString(n));let a=this.setFileSource(o,r);a!==s&&this.registerEntry(o,a)}prepareWriteFile(e,r){if(typeof e!="string")throw ti("read");if(this.readOnly)throw Bi(`open '${e}'`);let i=this.resolveFilename(`open '${e}'`,e);if(this.listings.has(i))throw bg(`open '${e}'`);let n=null;typeof r=="string"?n=r:typeof r=="object"&&r.encoding&&(n=r.encoding);let s=this.entries.get(i);return{encoding:n,resolvedP:i,index:s}}async unlinkPromise(e){return this.unlinkSync(e)}unlinkSync(e){if(this.readOnly)throw Bi(`unlink '${e}'`);let r=this.resolveFilename(`unlink '${e}'`,e);if(this.listings.has(r))throw bg(`unlink '${e}'`);let i=this.entries.get(r);if(typeof i=="undefined")throw Lo(`unlink '${e}'`);this.deleteEntry(r,i)}async utimesPromise(e,r,i){return this.utimesSync(e,r,i)}utimesSync(e,r,i){if(this.readOnly)throw Bi(`utimes '${e}'`);let n=this.resolveFilename(`utimes '${e}'`,e);this.utimesImpl(n,i)}async lutimesPromise(e,r,i){return this.lutimesSync(e,r,i)}lutimesSync(e,r,i){if(this.readOnly)throw Bi(`lutimes '${e}'`);let n=this.resolveFilename(`utimes '${e}'`,e,!1);this.utimesImpl(n,i)}utimesImpl(e,r){this.listings.has(e)&&(this.entries.has(e)||this.hydrateDirectory(e));let i=this.entries.get(e);if(i===void 0)throw new Error("Unreachable");if(this.libzip.file.setMtime(this.zip,i,0,cae(r),0)===-1)throw this.makeLibzipError(this.libzip.getError(this.zip))}async mkdirPromise(e,r){return this.mkdirSync(e,r)}mkdirSync(e,{mode:r=493,recursive:i=!1}={}){if(i){this.mkdirpSync(e,{chmod:r});return}if(this.readOnly)throw Bi(`mkdir '${e}'`);let n=this.resolveFilename(`mkdir '${e}'`,e);if(this.entries.has(n)||this.listings.has(n))throw BC(`mkdir '${e}'`);this.hydrateDirectory(n),this.chmodSync(n,r)}async rmdirPromise(e,r){return this.rmdirSync(e,r)}rmdirSync(e,{recursive:r=!1}={}){if(this.readOnly)throw Bi(`rmdir '${e}'`);if(r){this.removeSync(e);return}let i=this.resolveFilename(`rmdir '${e}'`,e),n=this.listings.get(i);if(!n)throw Zn(`rmdir '${e}'`);if(n.size>0)throw TL(`rmdir '${e}'`);let s=this.entries.get(i);if(typeof s=="undefined")throw Lo(`rmdir '${e}'`);this.deleteEntry(e,s)}hydrateDirectory(e){let r=this.libzip.dir.add(this.zip,B.relative(Ee.root,e));if(r===-1)throw this.makeLibzipError(this.libzip.getError(this.zip));return this.registerListing(e),this.registerEntry(e,r),r}async linkPromise(e,r){return this.linkSync(e,r)}linkSync(e,r){throw UL(`link '${e}' -> '${r}'`)}async symlinkPromise(e,r){return this.symlinkSync(e,r)}symlinkSync(e,r){if(this.readOnly)throw Bi(`symlink '${e}' -> '${r}'`);let i=this.resolveFilename(`symlink '${e}' -> '${r}'`,r);if(this.listings.has(i))throw bg(`symlink '${e}' -> '${r}'`);if(this.entries.has(i))throw BC(`symlink '${e}' -> '${r}'`);let n=this.setFileSource(i,e);if(this.registerEntry(i,n),this.libzip.file.setExternalAttributes(this.zip,n,0,0,this.libzip.ZIP_OPSYS_UNIX,(Fo|511)<<16)===-1)throw this.makeLibzipError(this.libzip.getError(this.zip));this.symlinkCount+=1}async readFilePromise(e,r){typeof r=="object"&&(r=r?r.encoding:void 0);let i=await this.readFileBuffer(e,{asyncDecompress:!0});return r?i.toString(r):i}readFileSync(e,r){typeof r=="object"&&(r=r?r.encoding:void 0);let i=this.readFileBuffer(e);return r?i.toString(r):i}readFileBuffer(e,r={asyncDecompress:!1}){let i=this.resolveFilename(`open '${e}'`,e);if(!this.entries.has(i)&&!this.listings.has(i))throw Pn(`open '${e}'`);if(e[e.length-1]==="/"&&!this.listings.has(i))throw Zn(`open '${e}'`);if(this.listings.has(i))throw bg("read");let n=this.entries.get(i);if(n===void 0)throw new Error("Unreachable");return this.getFileSource(n,r)}async readdirPromise(e,{withFileTypes:r}={}){return this.readdirSync(e,{withFileTypes:r})}readdirSync(e,{withFileTypes:r}={}){let i=this.resolveFilename(`scandir '${e}'`,e);if(!this.entries.has(i)&&!this.listings.has(i))throw Pn(`scandir '${e}'`);let n=this.listings.get(i);if(!n)throw Zn(`scandir '${e}'`);let s=[...n];return r?s.map(o=>Object.assign(this.statImpl("lstat",B.join(e,o)),{name:o})):s}async readlinkPromise(e){let r=this.prepareReadlink(e);return(await this.getFileSource(r,{asyncDecompress:!0})).toString()}readlinkSync(e){let r=this.prepareReadlink(e);return this.getFileSource(r).toString()}prepareReadlink(e){let r=this.resolveFilename(`readlink '${e}'`,e,!1);if(!this.entries.has(r)&&!this.listings.has(r))throw Pn(`readlink '${e}'`);if(e[e.length-1]==="/"&&!this.listings.has(r))throw Zn(`open '${e}'`);if(this.listings.has(r))throw Lo(`readlink '${e}'`);let i=this.entries.get(r);if(i===void 0)throw new Error("Unreachable");if(!this.isSymbolicLink(i))throw Lo(`readlink '${e}'`);return i}async truncatePromise(e,r=0){let i=this.resolveFilename(`open '${e}'`,e),n=this.entries.get(i);if(typeof n=="undefined")throw Lo(`open '${e}'`);let s=await this.getFileSource(n,{asyncDecompress:!0}),o=Buffer.alloc(r,0);return s.copy(o),await this.writeFilePromise(e,o)}truncateSync(e,r=0){let i=this.resolveFilename(`open '${e}'`,e),n=this.entries.get(i);if(typeof n=="undefined")throw Lo(`open '${e}'`);let s=this.getFileSource(n),o=Buffer.alloc(r,0);return s.copy(o),this.writeFileSync(e,o)}watch(e,r,i){let n;switch(typeof r){case"function":case"string":case"undefined":n=!0;break;default:({persistent:n=!0}=r);break}if(!n)return{on:()=>{},close:()=>{}};let s=setInterval(()=>{},24*60*60*1e3);return{on:()=>{},close:()=>{clearInterval(s)}}}watchFile(e,r,i){let n=this.resolveFilename(`open '${e}'`,e);return QC(this,n,r,i)}unwatchFile(e,r){let i=this.resolveFilename(`open '${e}'`,e);return Sg(this,i,r)}};var pr=class extends kn{getExtractHint(e){return this.baseFs.getExtractHint(e)}resolve(e){return this.mapFromBase(this.baseFs.resolve(this.mapToBase(e)))}getRealPath(){return this.mapFromBase(this.baseFs.getRealPath())}async openPromise(e,r,i){return this.baseFs.openPromise(this.mapToBase(e),r,i)}openSync(e,r,i){return this.baseFs.openSync(this.mapToBase(e),r,i)}async opendirPromise(e,r){return Object.assign(await this.baseFs.opendirPromise(this.mapToBase(e),r),{path:e})}opendirSync(e,r){return Object.assign(this.baseFs.opendirSync(this.mapToBase(e),r),{path:e})}async readPromise(e,r,i,n,s){return await this.baseFs.readPromise(e,r,i,n,s)}readSync(e,r,i,n,s){return this.baseFs.readSync(e,r,i,n,s)}async writePromise(e,r,i,n,s){return typeof r=="string"?await this.baseFs.writePromise(e,r,i):await this.baseFs.writePromise(e,r,i,n,s)}writeSync(e,r,i,n,s){return typeof r=="string"?this.baseFs.writeSync(e,r,i):this.baseFs.writeSync(e,r,i,n,s)}async closePromise(e){return this.baseFs.closePromise(e)}closeSync(e){this.baseFs.closeSync(e)}createReadStream(e,r){return this.baseFs.createReadStream(e!==null?this.mapToBase(e):e,r)}createWriteStream(e,r){return this.baseFs.createWriteStream(e!==null?this.mapToBase(e):e,r)}async realpathPromise(e){return this.mapFromBase(await this.baseFs.realpathPromise(this.mapToBase(e)))}realpathSync(e){return this.mapFromBase(this.baseFs.realpathSync(this.mapToBase(e)))}async existsPromise(e){return this.baseFs.existsPromise(this.mapToBase(e))}existsSync(e){return this.baseFs.existsSync(this.mapToBase(e))}accessSync(e,r){return this.baseFs.accessSync(this.mapToBase(e),r)}async accessPromise(e,r){return this.baseFs.accessPromise(this.mapToBase(e),r)}async statPromise(e,r){return this.baseFs.statPromise(this.mapToBase(e),r)}statSync(e,r){return this.baseFs.statSync(this.mapToBase(e),r)}async fstatPromise(e,r){return this.baseFs.fstatPromise(e,r)}fstatSync(e,r){return this.baseFs.fstatSync(e,r)}async lstatPromise(e,r){return this.baseFs.lstatPromise(this.mapToBase(e),r)}lstatSync(e,r){return this.baseFs.lstatSync(this.mapToBase(e),r)}async chmodPromise(e,r){return this.baseFs.chmodPromise(this.mapToBase(e),r)}chmodSync(e,r){return this.baseFs.chmodSync(this.mapToBase(e),r)}async chownPromise(e,r,i){return this.baseFs.chownPromise(this.mapToBase(e),r,i)}chownSync(e,r,i){return this.baseFs.chownSync(this.mapToBase(e),r,i)}async renamePromise(e,r){return this.baseFs.renamePromise(this.mapToBase(e),this.mapToBase(r))}renameSync(e,r){return this.baseFs.renameSync(this.mapToBase(e),this.mapToBase(r))}async copyFilePromise(e,r,i=0){return this.baseFs.copyFilePromise(this.mapToBase(e),this.mapToBase(r),i)}copyFileSync(e,r,i=0){return this.baseFs.copyFileSync(this.mapToBase(e),this.mapToBase(r),i)}async appendFilePromise(e,r,i){return this.baseFs.appendFilePromise(this.fsMapToBase(e),r,i)}appendFileSync(e,r,i){return this.baseFs.appendFileSync(this.fsMapToBase(e),r,i)}async writeFilePromise(e,r,i){return this.baseFs.writeFilePromise(this.fsMapToBase(e),r,i)}writeFileSync(e,r,i){return this.baseFs.writeFileSync(this.fsMapToBase(e),r,i)}async unlinkPromise(e){return this.baseFs.unlinkPromise(this.mapToBase(e))}unlinkSync(e){return this.baseFs.unlinkSync(this.mapToBase(e))}async utimesPromise(e,r,i){return this.baseFs.utimesPromise(this.mapToBase(e),r,i)}utimesSync(e,r,i){return this.baseFs.utimesSync(this.mapToBase(e),r,i)}async mkdirPromise(e,r){return this.baseFs.mkdirPromise(this.mapToBase(e),r)}mkdirSync(e,r){return this.baseFs.mkdirSync(this.mapToBase(e),r)}async rmdirPromise(e,r){return this.baseFs.rmdirPromise(this.mapToBase(e),r)}rmdirSync(e,r){return this.baseFs.rmdirSync(this.mapToBase(e),r)}async linkPromise(e,r){return this.baseFs.linkPromise(this.mapToBase(e),this.mapToBase(r))}linkSync(e,r){return this.baseFs.linkSync(this.mapToBase(e),this.mapToBase(r))}async symlinkPromise(e,r,i){let n=this.mapToBase(r);if(this.pathUtils.isAbsolute(e))return this.baseFs.symlinkPromise(this.mapToBase(e),n,i);let s=this.mapToBase(this.pathUtils.join(this.pathUtils.dirname(r),e)),o=this.baseFs.pathUtils.relative(this.baseFs.pathUtils.dirname(n),s);return this.baseFs.symlinkPromise(o,n,i)}symlinkSync(e,r,i){let n=this.mapToBase(r);if(this.pathUtils.isAbsolute(e))return this.baseFs.symlinkSync(this.mapToBase(e),n,i);let s=this.mapToBase(this.pathUtils.join(this.pathUtils.dirname(r),e)),o=this.baseFs.pathUtils.relative(this.baseFs.pathUtils.dirname(n),s);return this.baseFs.symlinkSync(o,n,i)}async readFilePromise(e,r){return r==="utf8"?this.baseFs.readFilePromise(this.fsMapToBase(e),r):this.baseFs.readFilePromise(this.fsMapToBase(e),r)}readFileSync(e,r){return r==="utf8"?this.baseFs.readFileSync(this.fsMapToBase(e),r):this.baseFs.readFileSync(this.fsMapToBase(e),r)}async readdirPromise(e,{withFileTypes:r}={}){return this.baseFs.readdirPromise(this.mapToBase(e),{withFileTypes:r})}readdirSync(e,{withFileTypes:r}={}){return this.baseFs.readdirSync(this.mapToBase(e),{withFileTypes:r})}async readlinkPromise(e){return this.mapFromBase(await this.baseFs.readlinkPromise(this.mapToBase(e)))}readlinkSync(e){return this.mapFromBase(this.baseFs.readlinkSync(this.mapToBase(e)))}async truncatePromise(e,r){return this.baseFs.truncatePromise(this.mapToBase(e),r)}truncateSync(e,r){return this.baseFs.truncateSync(this.mapToBase(e),r)}watch(e,r,i){return this.baseFs.watch(this.mapToBase(e),r,i)}watchFile(e,r,i){return this.baseFs.watchFile(this.mapToBase(e),r,i)}unwatchFile(e,r){return this.baseFs.unwatchFile(this.mapToBase(e),r)}fsMapToBase(e){return typeof e=="number"?e:this.mapToBase(e)}};var za=class extends pr{constructor(e,{baseFs:r,pathUtils:i}){super(i);this.target=e,this.baseFs=r}getRealPath(){return this.target}getBaseFs(){return this.baseFs}mapFromBase(e){return e}mapToBase(e){return e}};var yt=class extends pr{constructor(e,{baseFs:r=new wt}={}){super(B);this.target=this.pathUtils.normalize(e),this.baseFs=r}getRealPath(){return this.pathUtils.resolve(this.baseFs.getRealPath(),this.target)}resolve(e){return this.pathUtils.isAbsolute(e)?B.normalize(e):this.baseFs.resolve(B.join(this.target,e))}mapFromBase(e){return e}mapToBase(e){return this.pathUtils.isAbsolute(e)?e:this.pathUtils.join(this.target,e)}};var zL=Ee.root,Ns=class extends pr{constructor(e,{baseFs:r=new wt}={}){super(B);this.target=this.pathUtils.resolve(Ee.root,e),this.baseFs=r}getRealPath(){return this.pathUtils.resolve(this.baseFs.getRealPath(),this.pathUtils.relative(Ee.root,this.target))}getTarget(){return this.target}getBaseFs(){return this.baseFs}mapToBase(e){let r=this.pathUtils.normalize(e);if(this.pathUtils.isAbsolute(e))return this.pathUtils.resolve(this.target,this.pathUtils.relative(zL,e));if(r.match(/^\.\.\/?/))throw new Error(`Resolving this path (${e}) would escape the jail`);return this.pathUtils.resolve(this.target,e)}mapFromBase(e){return this.pathUtils.resolve(zL,this.pathUtils.relative(this.target,e))}};var Pg=class extends pr{constructor(e,r){super(r);this.instance=null;this.factory=e}get baseFs(){return this.instance||(this.instance=this.factory()),this.instance}set baseFs(e){this.instance=e}mapFromBase(e){return e}mapToBase(e){return e}};var He=()=>Object.assign(new Error("ENOSYS: unsupported filesystem access"),{code:"ENOSYS"}),bw=class extends kn{constructor(){super(B)}getExtractHint(){throw He()}getRealPath(){throw He()}resolve(){throw He()}async openPromise(){throw He()}openSync(){throw He()}async opendirPromise(){throw He()}opendirSync(){throw He()}async readPromise(){throw He()}readSync(){throw He()}async writePromise(){throw He()}writeSync(){throw He()}async closePromise(){throw He()}closeSync(){throw He()}createWriteStream(){throw He()}createReadStream(){throw He()}async realpathPromise(){throw He()}realpathSync(){throw He()}async readdirPromise(){throw He()}readdirSync(){throw He()}async existsPromise(e){throw He()}existsSync(e){throw He()}async accessPromise(){throw He()}accessSync(){throw He()}async statPromise(){throw He()}statSync(){throw He()}async fstatPromise(e){throw He()}fstatSync(e){throw He()}async lstatPromise(e){throw He()}lstatSync(e){throw He()}async chmodPromise(){throw He()}chmodSync(){throw He()}async chownPromise(){throw He()}chownSync(){throw He()}async mkdirPromise(){throw He()}mkdirSync(){throw He()}async rmdirPromise(){throw He()}rmdirSync(){throw He()}async linkPromise(){throw He()}linkSync(){throw He()}async symlinkPromise(){throw He()}symlinkSync(){throw He()}async renamePromise(){throw He()}renameSync(){throw He()}async copyFilePromise(){throw He()}copyFileSync(){throw He()}async appendFilePromise(){throw He()}appendFileSync(){throw He()}async writeFilePromise(){throw He()}writeFileSync(){throw He()}async unlinkPromise(){throw He()}unlinkSync(){throw He()}async utimesPromise(){throw He()}utimesSync(){throw He()}async readFilePromise(){throw He()}readFileSync(){throw He()}async readlinkPromise(){throw He()}readlinkSync(){throw He()}async truncatePromise(){throw He()}truncateSync(){throw He()}watch(){throw He()}watchFile(){throw He()}unwatchFile(){throw He()}},bC=bw;bC.instance=new bw;var kg=class extends pr{constructor(e){super(L);this.baseFs=e}mapFromBase(e){return L.fromPortablePath(e)}mapToBase(e){return L.toPortablePath(e)}};var uae=/^[0-9]+$/,Dw=/^(\/(?:[^/]+\/)*?(?:\$\$virtual|__virtual__))((?:\/((?:[^/]+-)?[a-f0-9]+)(?:\/([^/]+))?)?((?:\/.*)?))$/,gae=/^([^/]+-)?[a-f0-9]+$/,rr=class extends pr{static makeVirtualPath(e,r,i){if(B.basename(e)!=="__virtual__")throw new Error('Assertion failed: Virtual folders must be named "__virtual__"');if(!B.basename(r).match(gae))throw new Error("Assertion failed: Virtual components must be ended by an hexadecimal hash");let s=B.relative(B.dirname(e),i).split("/"),o=0;for(;o{let e=t.indexOf(Sw);if(e<=0)return null;let r=e;for(;e>=0&&(r=e+Sw.length,t[r]!==B.sep);){if(t[e-1]===B.sep)return null;e=t.indexOf(Sw,r)}return t.length>r&&t[r]!==B.sep?null:t.slice(0,r)},nn=class extends ja{constructor({libzip:e,baseFs:r=new wt,filter:i=null,maxOpenFiles:n=Infinity,readOnlyArchives:s=!1,useCache:o=!0,maxAge:a=5e3}){super();this.fdMap=new Map;this.nextFd=3;this.isZip=new Set;this.notZip=new Set;this.realPaths=new Map;this.limitOpenFilesTimeout=null;this.libzipFactory=typeof e!="function"?()=>e:e,this.baseFs=r,this.zipInstances=o?new Map:null,this.filter=i,this.maxOpenFiles=n,this.readOnlyArchives=s,this.maxAge=a}static async openPromise(e,r){let i=new nn(r);try{return await e(i)}finally{i.saveAndClose()}}get libzip(){return typeof this.libzipInstance=="undefined"&&(this.libzipInstance=this.libzipFactory()),this.libzipInstance}getExtractHint(e){return this.baseFs.getExtractHint(e)}getRealPath(){return this.baseFs.getRealPath()}saveAndClose(){if(xg(this),this.zipInstances)for(let[e,{zipFs:r}]of this.zipInstances.entries())r.saveAndClose(),this.zipInstances.delete(e)}discardAndClose(){if(xg(this),this.zipInstances)for(let[e,{zipFs:r}]of this.zipInstances.entries())r.discardAndClose(),this.zipInstances.delete(e)}resolve(e){return this.baseFs.resolve(e)}remapFd(e,r){let i=this.nextFd++|Ms;return this.fdMap.set(i,[e,r]),i}async openPromise(e,r,i){return await this.makeCallPromise(e,async()=>await this.baseFs.openPromise(e,r,i),async(n,{subPath:s})=>this.remapFd(n,await n.openPromise(s,r,i)))}openSync(e,r,i){return this.makeCallSync(e,()=>this.baseFs.openSync(e,r,i),(n,{subPath:s})=>this.remapFd(n,n.openSync(s,r,i)))}async opendirPromise(e,r){return await this.makeCallPromise(e,async()=>await this.baseFs.opendirPromise(e,r),async(i,{subPath:n})=>await i.opendirPromise(n,r),{requireSubpath:!1})}opendirSync(e,r){return this.makeCallSync(e,()=>this.baseFs.opendirSync(e,r),(i,{subPath:n})=>i.opendirSync(n,r),{requireSubpath:!1})}async readPromise(e,r,i,n,s){if((e&Ms)==0)return await this.baseFs.readPromise(e,r,i,n,s);let o=this.fdMap.get(e);if(typeof o=="undefined")throw ti("read");let[a,l]=o;return await a.readPromise(l,r,i,n,s)}readSync(e,r,i,n,s){if((e&Ms)==0)return this.baseFs.readSync(e,r,i,n,s);let o=this.fdMap.get(e);if(typeof o=="undefined")throw ti("readSync");let[a,l]=o;return a.readSync(l,r,i,n,s)}async writePromise(e,r,i,n,s){if((e&Ms)==0)return typeof r=="string"?await this.baseFs.writePromise(e,r,i):await this.baseFs.writePromise(e,r,i,n,s);let o=this.fdMap.get(e);if(typeof o=="undefined")throw ti("write");let[a,l]=o;return typeof r=="string"?await a.writePromise(l,r,i):await a.writePromise(l,r,i,n,s)}writeSync(e,r,i,n,s){if((e&Ms)==0)return typeof r=="string"?this.baseFs.writeSync(e,r,i):this.baseFs.writeSync(e,r,i,n,s);let o=this.fdMap.get(e);if(typeof o=="undefined")throw ti("writeSync");let[a,l]=o;return typeof r=="string"?a.writeSync(l,r,i):a.writeSync(l,r,i,n,s)}async closePromise(e){if((e&Ms)==0)return await this.baseFs.closePromise(e);let r=this.fdMap.get(e);if(typeof r=="undefined")throw ti("close");this.fdMap.delete(e);let[i,n]=r;return await i.closePromise(n)}closeSync(e){if((e&Ms)==0)return this.baseFs.closeSync(e);let r=this.fdMap.get(e);if(typeof r=="undefined")throw ti("closeSync");this.fdMap.delete(e);let[i,n]=r;return i.closeSync(n)}createReadStream(e,r){return e===null?this.baseFs.createReadStream(e,r):this.makeCallSync(e,()=>this.baseFs.createReadStream(e,r),(i,{subPath:n})=>i.createReadStream(n,r))}createWriteStream(e,r){return e===null?this.baseFs.createWriteStream(e,r):this.makeCallSync(e,()=>this.baseFs.createWriteStream(e,r),(i,{subPath:n})=>i.createWriteStream(n,r))}async realpathPromise(e){return await this.makeCallPromise(e,async()=>await this.baseFs.realpathPromise(e),async(r,{archivePath:i,subPath:n})=>{let s=this.realPaths.get(i);return typeof s=="undefined"&&(s=await this.baseFs.realpathPromise(i),this.realPaths.set(i,s)),this.pathUtils.join(s,this.pathUtils.relative(Ee.root,await r.realpathPromise(n)))})}realpathSync(e){return this.makeCallSync(e,()=>this.baseFs.realpathSync(e),(r,{archivePath:i,subPath:n})=>{let s=this.realPaths.get(i);return typeof s=="undefined"&&(s=this.baseFs.realpathSync(i),this.realPaths.set(i,s)),this.pathUtils.join(s,this.pathUtils.relative(Ee.root,r.realpathSync(n)))})}async existsPromise(e){return await this.makeCallPromise(e,async()=>await this.baseFs.existsPromise(e),async(r,{subPath:i})=>await r.existsPromise(i))}existsSync(e){return this.makeCallSync(e,()=>this.baseFs.existsSync(e),(r,{subPath:i})=>r.existsSync(i))}async accessPromise(e,r){return await this.makeCallPromise(e,async()=>await this.baseFs.accessPromise(e,r),async(i,{subPath:n})=>await i.accessPromise(n,r))}accessSync(e,r){return this.makeCallSync(e,()=>this.baseFs.accessSync(e,r),(i,{subPath:n})=>i.accessSync(n,r))}async statPromise(e,r){return await this.makeCallPromise(e,async()=>await this.baseFs.statPromise(e,r),async(i,{subPath:n})=>await i.statPromise(n,r))}statSync(e,r){return this.makeCallSync(e,()=>this.baseFs.statSync(e,r),(i,{subPath:n})=>i.statSync(n,r))}async fstatPromise(e,r){if((e&Ms)==0)return this.baseFs.fstatPromise(e,r);let i=this.fdMap.get(e);if(typeof i=="undefined")throw ti("fstat");let[n,s]=i;return n.fstatPromise(s,r)}fstatSync(e,r){if((e&Ms)==0)return this.baseFs.fstatSync(e,r);let i=this.fdMap.get(e);if(typeof i=="undefined")throw ti("fstatSync");let[n,s]=i;return n.fstatSync(s,r)}async lstatPromise(e,r){return await this.makeCallPromise(e,async()=>await this.baseFs.lstatPromise(e,r),async(i,{subPath:n})=>await i.lstatPromise(n,r))}lstatSync(e,r){return this.makeCallSync(e,()=>this.baseFs.lstatSync(e,r),(i,{subPath:n})=>i.lstatSync(n,r))}async chmodPromise(e,r){return await this.makeCallPromise(e,async()=>await this.baseFs.chmodPromise(e,r),async(i,{subPath:n})=>await i.chmodPromise(n,r))}chmodSync(e,r){return this.makeCallSync(e,()=>this.baseFs.chmodSync(e,r),(i,{subPath:n})=>i.chmodSync(n,r))}async chownPromise(e,r,i){return await this.makeCallPromise(e,async()=>await this.baseFs.chownPromise(e,r,i),async(n,{subPath:s})=>await n.chownPromise(s,r,i))}chownSync(e,r,i){return this.makeCallSync(e,()=>this.baseFs.chownSync(e,r,i),(n,{subPath:s})=>n.chownSync(s,r,i))}async renamePromise(e,r){return await this.makeCallPromise(e,async()=>await this.makeCallPromise(r,async()=>await this.baseFs.renamePromise(e,r),async()=>{throw Object.assign(new Error("EEXDEV: cross-device link not permitted"),{code:"EEXDEV"})}),async(i,{subPath:n})=>await this.makeCallPromise(r,async()=>{throw Object.assign(new Error("EEXDEV: cross-device link not permitted"),{code:"EEXDEV"})},async(s,{subPath:o})=>{if(i!==s)throw Object.assign(new Error("EEXDEV: cross-device link not permitted"),{code:"EEXDEV"});return await i.renamePromise(n,o)}))}renameSync(e,r){return this.makeCallSync(e,()=>this.makeCallSync(r,()=>this.baseFs.renameSync(e,r),async()=>{throw Object.assign(new Error("EEXDEV: cross-device link not permitted"),{code:"EEXDEV"})}),(i,{subPath:n})=>this.makeCallSync(r,()=>{throw Object.assign(new Error("EEXDEV: cross-device link not permitted"),{code:"EEXDEV"})},(s,{subPath:o})=>{if(i!==s)throw Object.assign(new Error("EEXDEV: cross-device link not permitted"),{code:"EEXDEV"});return i.renameSync(n,o)}))}async copyFilePromise(e,r,i=0){let n=async(s,o,a,l)=>{if((i&vg.constants.COPYFILE_FICLONE_FORCE)!=0)throw Object.assign(new Error(`EXDEV: cross-device clone not permitted, copyfile '${o}' -> ${l}'`),{code:"EXDEV"});if(i&vg.constants.COPYFILE_EXCL&&await this.existsPromise(o))throw Object.assign(new Error(`EEXIST: file already exists, copyfile '${o}' -> '${l}'`),{code:"EEXIST"});let c;try{c=await s.readFilePromise(o)}catch(u){throw Object.assign(new Error(`EINVAL: invalid argument, copyfile '${o}' -> '${l}'`),{code:"EINVAL"})}await a.writeFilePromise(l,c)};return await this.makeCallPromise(e,async()=>await this.makeCallPromise(r,async()=>await this.baseFs.copyFilePromise(e,r,i),async(s,{subPath:o})=>await n(this.baseFs,e,s,o)),async(s,{subPath:o})=>await this.makeCallPromise(r,async()=>await n(s,o,this.baseFs,r),async(a,{subPath:l})=>s!==a?await n(s,o,a,l):await s.copyFilePromise(o,l,i)))}copyFileSync(e,r,i=0){let n=(s,o,a,l)=>{if((i&vg.constants.COPYFILE_FICLONE_FORCE)!=0)throw Object.assign(new Error(`EXDEV: cross-device clone not permitted, copyfile '${o}' -> ${l}'`),{code:"EXDEV"});if(i&vg.constants.COPYFILE_EXCL&&this.existsSync(o))throw Object.assign(new Error(`EEXIST: file already exists, copyfile '${o}' -> '${l}'`),{code:"EEXIST"});let c;try{c=s.readFileSync(o)}catch(u){throw Object.assign(new Error(`EINVAL: invalid argument, copyfile '${o}' -> '${l}'`),{code:"EINVAL"})}a.writeFileSync(l,c)};return this.makeCallSync(e,()=>this.makeCallSync(r,()=>this.baseFs.copyFileSync(e,r,i),(s,{subPath:o})=>n(this.baseFs,e,s,o)),(s,{subPath:o})=>this.makeCallSync(r,()=>n(s,o,this.baseFs,r),(a,{subPath:l})=>s!==a?n(s,o,a,l):s.copyFileSync(o,l,i)))}async appendFilePromise(e,r,i){return await this.makeCallPromise(e,async()=>await this.baseFs.appendFilePromise(e,r,i),async(n,{subPath:s})=>await n.appendFilePromise(s,r,i))}appendFileSync(e,r,i){return this.makeCallSync(e,()=>this.baseFs.appendFileSync(e,r,i),(n,{subPath:s})=>n.appendFileSync(s,r,i))}async writeFilePromise(e,r,i){return await this.makeCallPromise(e,async()=>await this.baseFs.writeFilePromise(e,r,i),async(n,{subPath:s})=>await n.writeFilePromise(s,r,i))}writeFileSync(e,r,i){return this.makeCallSync(e,()=>this.baseFs.writeFileSync(e,r,i),(n,{subPath:s})=>n.writeFileSync(s,r,i))}async unlinkPromise(e){return await this.makeCallPromise(e,async()=>await this.baseFs.unlinkPromise(e),async(r,{subPath:i})=>await r.unlinkPromise(i))}unlinkSync(e){return this.makeCallSync(e,()=>this.baseFs.unlinkSync(e),(r,{subPath:i})=>r.unlinkSync(i))}async utimesPromise(e,r,i){return await this.makeCallPromise(e,async()=>await this.baseFs.utimesPromise(e,r,i),async(n,{subPath:s})=>await n.utimesPromise(s,r,i))}utimesSync(e,r,i){return this.makeCallSync(e,()=>this.baseFs.utimesSync(e,r,i),(n,{subPath:s})=>n.utimesSync(s,r,i))}async mkdirPromise(e,r){return await this.makeCallPromise(e,async()=>await this.baseFs.mkdirPromise(e,r),async(i,{subPath:n})=>await i.mkdirPromise(n,r))}mkdirSync(e,r){return this.makeCallSync(e,()=>this.baseFs.mkdirSync(e,r),(i,{subPath:n})=>i.mkdirSync(n,r))}async rmdirPromise(e,r){return await this.makeCallPromise(e,async()=>await this.baseFs.rmdirPromise(e,r),async(i,{subPath:n})=>await i.rmdirPromise(n,r))}rmdirSync(e,r){return this.makeCallSync(e,()=>this.baseFs.rmdirSync(e,r),(i,{subPath:n})=>i.rmdirSync(n,r))}async linkPromise(e,r){return await this.makeCallPromise(r,async()=>await this.baseFs.linkPromise(e,r),async(i,{subPath:n})=>await i.linkPromise(e,n))}linkSync(e,r){return this.makeCallSync(r,()=>this.baseFs.linkSync(e,r),(i,{subPath:n})=>i.linkSync(e,n))}async symlinkPromise(e,r,i){return await this.makeCallPromise(r,async()=>await this.baseFs.symlinkPromise(e,r,i),async(n,{subPath:s})=>await n.symlinkPromise(e,s))}symlinkSync(e,r,i){return this.makeCallSync(r,()=>this.baseFs.symlinkSync(e,r,i),(n,{subPath:s})=>n.symlinkSync(e,s))}async readFilePromise(e,r){return this.makeCallPromise(e,async()=>{switch(r){case"utf8":return await this.baseFs.readFilePromise(e,r);default:return await this.baseFs.readFilePromise(e,r)}},async(i,{subPath:n})=>await i.readFilePromise(n,r))}readFileSync(e,r){return this.makeCallSync(e,()=>{switch(r){case"utf8":return this.baseFs.readFileSync(e,r);default:return this.baseFs.readFileSync(e,r)}},(i,{subPath:n})=>i.readFileSync(n,r))}async readdirPromise(e,{withFileTypes:r}={}){return await this.makeCallPromise(e,async()=>await this.baseFs.readdirPromise(e,{withFileTypes:r}),async(i,{subPath:n})=>await i.readdirPromise(n,{withFileTypes:r}),{requireSubpath:!1})}readdirSync(e,{withFileTypes:r}={}){return this.makeCallSync(e,()=>this.baseFs.readdirSync(e,{withFileTypes:r}),(i,{subPath:n})=>i.readdirSync(n,{withFileTypes:r}),{requireSubpath:!1})}async readlinkPromise(e){return await this.makeCallPromise(e,async()=>await this.baseFs.readlinkPromise(e),async(r,{subPath:i})=>await r.readlinkPromise(i))}readlinkSync(e){return this.makeCallSync(e,()=>this.baseFs.readlinkSync(e),(r,{subPath:i})=>r.readlinkSync(i))}async truncatePromise(e,r){return await this.makeCallPromise(e,async()=>await this.baseFs.truncatePromise(e,r),async(i,{subPath:n})=>await i.truncatePromise(n,r))}truncateSync(e,r){return this.makeCallSync(e,()=>this.baseFs.truncateSync(e,r),(i,{subPath:n})=>i.truncateSync(n,r))}watch(e,r,i){return this.makeCallSync(e,()=>this.baseFs.watch(e,r,i),(n,{subPath:s})=>n.watch(s,r,i))}watchFile(e,r,i){return this.makeCallSync(e,()=>this.baseFs.watchFile(e,r,i),()=>QC(this,e,r,i))}unwatchFile(e,r){return this.makeCallSync(e,()=>this.baseFs.unwatchFile(e,r),()=>Sg(this,e,r))}async makeCallPromise(e,r,i,{requireSubpath:n=!0}={}){if(typeof e!="string")return await r();let s=this.resolve(e),o=this.findZip(s);return o?n&&o.subPath==="/"?await r():await this.getZipPromise(o.archivePath,async a=>await i(a,o)):await r()}makeCallSync(e,r,i,{requireSubpath:n=!0}={}){if(typeof e!="string")return r();let s=this.resolve(e),o=this.findZip(s);return!o||n&&o.subPath==="/"?r():this.getZipSync(o.archivePath,a=>i(a,o))}findZip(e){if(this.filter&&!this.filter.test(e))return null;let r="";for(;;){let i=hae(e.substr(r.length));if(!i)return null;if(r=this.pathUtils.join(r,i),this.isZip.has(r)===!1){if(this.notZip.has(r))continue;try{if(!this.baseFs.lstatSync(r).isFile()){this.notZip.add(r);continue}}catch{return null}this.isZip.add(r)}return{archivePath:r,subPath:this.pathUtils.join(Ee.root,e.substr(r.length))}}}limitOpenFiles(e){if(this.zipInstances===null)return;let r=Date.now(),i=r+this.maxAge,n=e===null?0:this.zipInstances.size-e;for(let[s,{zipFs:o,expiresAt:a,refCount:l}]of this.zipInstances.entries())if(!(l!==0||o.hasOpenFileHandles())){if(r>=a){o.saveAndClose(),this.zipInstances.delete(s),n-=1;continue}else if(e===null||n<=0){i=a;break}o.saveAndClose(),this.zipInstances.delete(s),n-=1}this.limitOpenFilesTimeout===null&&(e===null&&this.zipInstances.size>0||e!==null)&&(this.limitOpenFilesTimeout=setTimeout(()=>{this.limitOpenFilesTimeout=null,this.limitOpenFiles(null)},i-r).unref())}async getZipPromise(e,r){let i=async()=>({baseFs:this.baseFs,libzip:this.libzip,readOnly:this.readOnlyArchives,stats:await this.baseFs.statPromise(e)});if(this.zipInstances){let n=this.zipInstances.get(e);if(!n){let s=await i();n=this.zipInstances.get(e),n||(n={zipFs:new br(e,s),expiresAt:0,refCount:0})}this.zipInstances.delete(e),this.limitOpenFiles(this.maxOpenFiles-1),this.zipInstances.set(e,n),n.expiresAt=Date.now()+this.maxAge,n.refCount+=1;try{return await r(n.zipFs)}finally{n.refCount-=1}}else{let n=new br(e,await i());try{return await r(n)}finally{n.saveAndClose()}}}getZipSync(e,r){let i=()=>({baseFs:this.baseFs,libzip:this.libzip,readOnly:this.readOnlyArchives,stats:this.baseFs.statSync(e)});if(this.zipInstances){let n=this.zipInstances.get(e);return n||(n={zipFs:new br(e,i()),expiresAt:0,refCount:0}),this.zipInstances.delete(e),this.limitOpenFiles(this.maxOpenFiles-1),this.zipInstances.set(e,n),n.expiresAt=Date.now()+this.maxAge,r(n.zipFs)}else{let n=new br(e,i());try{return r(n)}finally{n.saveAndClose()}}}};var Fg=te(require("util"));var DC=te(require("url"));var xw=class extends pr{constructor(e){super(L);this.baseFs=e}mapFromBase(e){return e}mapToBase(e){return e instanceof DC.URL?(0,DC.fileURLToPath)(e):e}};var fae=new Set(["accessSync","appendFileSync","createReadStream","chmodSync","chownSync","closeSync","copyFileSync","linkSync","lstatSync","fstatSync","lutimesSync","mkdirSync","openSync","opendirSync","readSync","readlinkSync","readFileSync","readdirSync","readlinkSync","realpathSync","renameSync","rmdirSync","statSync","symlinkSync","truncateSync","unlinkSync","unwatchFile","utimesSync","watch","watchFile","writeFileSync","writeSync"]),VL=new Set(["accessPromise","appendFilePromise","chmodPromise","chownPromise","closePromise","copyFilePromise","linkPromise","fstatPromise","lstatPromise","lutimesPromise","mkdirPromise","openPromise","opendirPromise","readdirPromise","realpathPromise","readFilePromise","readdirPromise","readlinkPromise","renamePromise","rmdirPromise","statPromise","symlinkPromise","truncatePromise","unlinkPromise","utimesPromise","writeFilePromise","writeSync"]),pae=new Set(["appendFilePromise","chmodPromise","chownPromise","closePromise","readPromise","readFilePromise","statPromise","truncatePromise","utimesPromise","writePromise","writeFilePromise"]);function Rg(t,e){e=new xw(e);let r=(i,n,s)=>{let o=i[n];i[n]=s,typeof(o==null?void 0:o[Fg.promisify.custom])!="undefined"&&(s[Fg.promisify.custom]=o[Fg.promisify.custom])};{r(t,"exists",(i,...n)=>{let o=typeof n[n.length-1]=="function"?n.pop():()=>{};process.nextTick(()=>{e.existsPromise(i).then(a=>{o(a)},()=>{o(!1)})})}),r(t,"read",(i,n,...s)=>{let a=typeof s[s.length-1]=="function"?s.pop():()=>{};process.nextTick(()=>{e.readPromise(i,n,...s).then(l=>{a(null,l,n)},l=>{a(l,0,n)})})});for(let i of VL){let n=i.replace(/Promise$/,"");if(typeof t[n]=="undefined")continue;let s=e[i];if(typeof s=="undefined")continue;r(t,n,(...a)=>{let c=typeof a[a.length-1]=="function"?a.pop():()=>{};process.nextTick(()=>{s.apply(e,a).then(u=>{c(null,u)},u=>{c(u)})})})}t.realpath.native=t.realpath}{r(t,"existsSync",i=>{try{return e.existsSync(i)}catch(n){return!1}});for(let i of fae){let n=i;if(typeof t[n]=="undefined")continue;let s=e[i];typeof s!="undefined"&&r(t,n,s.bind(e))}t.realpathSync.native=t.realpathSync}{let i=process.emitWarning;process.emitWarning=()=>{};let n;try{n=t.promises}finally{process.emitWarning=i}if(typeof n!="undefined"){for(let o of VL){let a=o.replace(/Promise$/,"");if(typeof n[a]=="undefined")continue;let l=e[o];typeof l!="undefined"&&o!=="open"&&r(n,a,l.bind(e))}class s{constructor(a){this.fd=a}}for(let o of pae){let a=o.replace(/Promise$/,""),l=e[o];typeof l!="undefined"&&r(s.prototype,a,function(...c){return l.call(e,this.fd,...c)})}r(n,"open",async(...o)=>{let a=await e.openPromise(...o);return new s(a)})}}t.read[Fg.promisify.custom]=async(i,n,...s)=>({bytesRead:await e.readPromise(i,n,...s),buffer:n})}function SC(t,e){let r=Object.create(t);return Rg(r,e),r}var XL=te(require("os"));function ZL(t){let e=L.toPortablePath(XL.default.tmpdir()),r=Math.ceil(Math.random()*4294967296).toString(16).padStart(8,"0");return B.join(e,`${t}${r}`)}var vn=new Set,_L=!1;function $L(){_L||(_L=!0,process.once("exit",()=>{M.rmtempSync()}))}var M=Object.assign(new wt,{detachTemp(t){vn.delete(t)},mktempSync(t){for($L();;){let e=ZL("xfs-");try{this.mkdirSync(e)}catch(i){if(i.code==="EEXIST")continue;throw i}let r=this.realpathSync(e);if(vn.add(r),typeof t!="undefined")try{return t(r)}finally{if(vn.has(r)){vn.delete(r);try{this.removeSync(r)}catch{}}}else return r}},async mktempPromise(t){for($L();;){let e=ZL("xfs-");try{await this.mkdirPromise(e)}catch(i){if(i.code==="EEXIST")continue;throw i}let r=await this.realpathPromise(e);if(vn.add(r),typeof t!="undefined")try{return await t(r)}finally{if(vn.has(r)){vn.delete(r);try{await this.removePromise(r)}catch{}}}else return r}},async rmtempPromise(){await Promise.all(Array.from(vn.values()).map(async t=>{try{await M.removePromise(t,{maxRetries:0}),vn.delete(t)}catch{}}))},rmtempSync(){for(let t of vn)try{M.removeSync(t),vn.delete(t)}catch{}}});var Tw=te(Kw()),sn;(function(i){i[i.Never=0]="Never",i[i.ErrorCode=1]="ErrorCode",i[i.Always=2]="Always"})(sn||(sn={}));function Va(t){return t!==null&&typeof t.fd=="number"}var Xa=new Set;function Uw(){}function Hw(){for(let t of Xa)t.kill()}async function Os(t,e,{cwd:r,env:i=process.env,strict:n=!1,stdin:s=null,stdout:o,stderr:a,end:l=2}){let c=["pipe","pipe","pipe"];s===null?c[0]="ignore":Va(s)&&(c[0]=s),Va(o)&&(c[1]=o),Va(a)&&(c[2]=a);let u=(0,Tw.default)(t,e,{cwd:L.fromPortablePath(r),env:V(k({},i),{PWD:L.fromPortablePath(r)}),stdio:c});Xa.add(u),Xa.size===1&&(process.on("SIGINT",Uw),process.on("SIGTERM",Hw)),!Va(s)&&s!==null&&s.pipe(u.stdin),Va(o)||u.stdout.pipe(o,{end:!1}),Va(a)||u.stderr.pipe(a,{end:!1});let g=()=>{for(let h of new Set([o,a]))Va(h)||h.end()};return new Promise((h,f)=>{u.on("error",p=>{Xa.delete(u),Xa.size===0&&(process.off("SIGINT",Uw),process.off("SIGTERM",Hw)),(l===2||l===1)&&g(),f(p)}),u.on("close",(p,m)=>{Xa.delete(u),Xa.size===0&&(process.off("SIGINT",Uw),process.off("SIGTERM",Hw)),(l===2||l===1&&p>0)&&g(),p===0||!n?h({code:Yw(p,m)}):f(p!==null?new Error(`Child "${t}" exited with exit code ${p}`):new Error(`Child "${t}" exited with signal ${m}`))})})}async function Yae(t,e,{cwd:r,env:i=process.env,encoding:n="utf8",strict:s=!1}){let o=["ignore","pipe","pipe"],a=[],l=[],c=L.fromPortablePath(r);typeof i.PWD!="undefined"&&(i=V(k({},i),{PWD:c}));let u=(0,Tw.default)(t,e,{cwd:c,env:i,stdio:o});return u.stdout.on("data",g=>{a.push(g)}),u.stderr.on("data",g=>{l.push(g)}),await new Promise((g,h)=>{u.on("error",()=>{h()}),u.on("close",(f,p)=>{let m=n==="buffer"?Buffer.concat(a):Buffer.concat(a).toString(n),I=n==="buffer"?Buffer.concat(l):Buffer.concat(l).toString(n);f===0||!s?g({code:Yw(f,p),stdout:m,stderr:I}):h(Object.assign(new Error(`Child "${t}" exited with exit code ${f} -${I}`),{code:JB(f,p),stdout:m,stderr:I}))})})}var ioe=new Map([["SIGINT",2],["SIGQUIT",3],["SIGKILL",9],["SIGTERM",15]]);function JB(t,e){let r=ioe.get(e);return typeof r!="undefined"?128+r:t!=null?t:1}var WB={};We(WB,{getDefaultGlobalFolder:()=>XB,getHomeFolder:()=>rg,isFolderInside:()=>VB});var zB=X(require("os"));function XB(){if(process.platform==="win32"){let t=npath.toPortablePath(process.env.LOCALAPPDATA||npath.join(zB.homedir(),"AppData","Local"));return w.resolve(t,"Yarn/Berry")}if(process.env.XDG_DATA_HOME){let t=npath.toPortablePath(process.env.XDG_DATA_HOME);return w.resolve(t,"yarn/berry")}return w.resolve(rg(),".yarn/berry")}function rg(){return npath.toPortablePath(zB.homedir()||"/usr/local/share")}function VB(t,e){let r=w.relative(e,t);return r&&!r.startsWith("..")&&!w.isAbsolute(r)}var se={};We(se,{LogLevel:()=>Dn,Style:()=>qa,Type:()=>be,addLogFilterSupport:()=>jg,applyColor:()=>Li,applyHyperlink:()=>Ml,applyStyle:()=>$C,json:()=>Nl,mark:()=>ZQ,pretty:()=>Ue,prettyField:()=>Wa,prettyList:()=>A0,supportsColor:()=>ZC,supportsHyperlinks:()=>o0,tuple:()=>Ja});var Yg=X(AM()),dU=X(og()),CU=X(dM());var J;(function(t){t[t.UNNAMED=0]="UNNAMED",t[t.EXCEPTION=1]="EXCEPTION",t[t.MISSING_PEER_DEPENDENCY=2]="MISSING_PEER_DEPENDENCY",t[t.CYCLIC_DEPENDENCIES=3]="CYCLIC_DEPENDENCIES",t[t.DISABLED_BUILD_SCRIPTS=4]="DISABLED_BUILD_SCRIPTS",t[t.BUILD_DISABLED=5]="BUILD_DISABLED",t[t.SOFT_LINK_BUILD=6]="SOFT_LINK_BUILD",t[t.MUST_BUILD=7]="MUST_BUILD",t[t.MUST_REBUILD=8]="MUST_REBUILD",t[t.BUILD_FAILED=9]="BUILD_FAILED",t[t.RESOLVER_NOT_FOUND=10]="RESOLVER_NOT_FOUND",t[t.FETCHER_NOT_FOUND=11]="FETCHER_NOT_FOUND",t[t.LINKER_NOT_FOUND=12]="LINKER_NOT_FOUND",t[t.FETCH_NOT_CACHED=13]="FETCH_NOT_CACHED",t[t.YARN_IMPORT_FAILED=14]="YARN_IMPORT_FAILED",t[t.REMOTE_INVALID=15]="REMOTE_INVALID",t[t.REMOTE_NOT_FOUND=16]="REMOTE_NOT_FOUND",t[t.RESOLUTION_PACK=17]="RESOLUTION_PACK",t[t.CACHE_CHECKSUM_MISMATCH=18]="CACHE_CHECKSUM_MISMATCH",t[t.UNUSED_CACHE_ENTRY=19]="UNUSED_CACHE_ENTRY",t[t.MISSING_LOCKFILE_ENTRY=20]="MISSING_LOCKFILE_ENTRY",t[t.WORKSPACE_NOT_FOUND=21]="WORKSPACE_NOT_FOUND",t[t.TOO_MANY_MATCHING_WORKSPACES=22]="TOO_MANY_MATCHING_WORKSPACES",t[t.CONSTRAINTS_MISSING_DEPENDENCY=23]="CONSTRAINTS_MISSING_DEPENDENCY",t[t.CONSTRAINTS_INCOMPATIBLE_DEPENDENCY=24]="CONSTRAINTS_INCOMPATIBLE_DEPENDENCY",t[t.CONSTRAINTS_EXTRANEOUS_DEPENDENCY=25]="CONSTRAINTS_EXTRANEOUS_DEPENDENCY",t[t.CONSTRAINTS_INVALID_DEPENDENCY=26]="CONSTRAINTS_INVALID_DEPENDENCY",t[t.CANT_SUGGEST_RESOLUTIONS=27]="CANT_SUGGEST_RESOLUTIONS",t[t.FROZEN_LOCKFILE_EXCEPTION=28]="FROZEN_LOCKFILE_EXCEPTION",t[t.CROSS_DRIVE_VIRTUAL_LOCAL=29]="CROSS_DRIVE_VIRTUAL_LOCAL",t[t.FETCH_FAILED=30]="FETCH_FAILED",t[t.DANGEROUS_NODE_MODULES=31]="DANGEROUS_NODE_MODULES",t[t.NODE_GYP_INJECTED=32]="NODE_GYP_INJECTED",t[t.AUTHENTICATION_NOT_FOUND=33]="AUTHENTICATION_NOT_FOUND",t[t.INVALID_CONFIGURATION_KEY=34]="INVALID_CONFIGURATION_KEY",t[t.NETWORK_ERROR=35]="NETWORK_ERROR",t[t.LIFECYCLE_SCRIPT=36]="LIFECYCLE_SCRIPT",t[t.CONSTRAINTS_MISSING_FIELD=37]="CONSTRAINTS_MISSING_FIELD",t[t.CONSTRAINTS_INCOMPATIBLE_FIELD=38]="CONSTRAINTS_INCOMPATIBLE_FIELD",t[t.CONSTRAINTS_EXTRANEOUS_FIELD=39]="CONSTRAINTS_EXTRANEOUS_FIELD",t[t.CONSTRAINTS_INVALID_FIELD=40]="CONSTRAINTS_INVALID_FIELD",t[t.AUTHENTICATION_INVALID=41]="AUTHENTICATION_INVALID",t[t.PROLOG_UNKNOWN_ERROR=42]="PROLOG_UNKNOWN_ERROR",t[t.PROLOG_SYNTAX_ERROR=43]="PROLOG_SYNTAX_ERROR",t[t.PROLOG_EXISTENCE_ERROR=44]="PROLOG_EXISTENCE_ERROR",t[t.STACK_OVERFLOW_RESOLUTION=45]="STACK_OVERFLOW_RESOLUTION",t[t.AUTOMERGE_FAILED_TO_PARSE=46]="AUTOMERGE_FAILED_TO_PARSE",t[t.AUTOMERGE_IMMUTABLE=47]="AUTOMERGE_IMMUTABLE",t[t.AUTOMERGE_SUCCESS=48]="AUTOMERGE_SUCCESS",t[t.AUTOMERGE_REQUIRED=49]="AUTOMERGE_REQUIRED",t[t.DEPRECATED_CLI_SETTINGS=50]="DEPRECATED_CLI_SETTINGS",t[t.PLUGIN_NAME_NOT_FOUND=51]="PLUGIN_NAME_NOT_FOUND",t[t.INVALID_PLUGIN_REFERENCE=52]="INVALID_PLUGIN_REFERENCE",t[t.CONSTRAINTS_AMBIGUITY=53]="CONSTRAINTS_AMBIGUITY",t[t.CACHE_OUTSIDE_PROJECT=54]="CACHE_OUTSIDE_PROJECT",t[t.IMMUTABLE_INSTALL=55]="IMMUTABLE_INSTALL",t[t.IMMUTABLE_CACHE=56]="IMMUTABLE_CACHE",t[t.INVALID_MANIFEST=57]="INVALID_MANIFEST",t[t.PACKAGE_PREPARATION_FAILED=58]="PACKAGE_PREPARATION_FAILED",t[t.INVALID_RANGE_PEER_DEPENDENCY=59]="INVALID_RANGE_PEER_DEPENDENCY",t[t.INCOMPATIBLE_PEER_DEPENDENCY=60]="INCOMPATIBLE_PEER_DEPENDENCY",t[t.DEPRECATED_PACKAGE=61]="DEPRECATED_PACKAGE",t[t.INCOMPATIBLE_OS=62]="INCOMPATIBLE_OS",t[t.INCOMPATIBLE_CPU=63]="INCOMPATIBLE_CPU",t[t.FROZEN_ARTIFACT_EXCEPTION=64]="FROZEN_ARTIFACT_EXCEPTION",t[t.TELEMETRY_NOTICE=65]="TELEMETRY_NOTICE",t[t.PATCH_HUNK_FAILED=66]="PATCH_HUNK_FAILED",t[t.INVALID_CONFIGURATION_VALUE=67]="INVALID_CONFIGURATION_VALUE",t[t.UNUSED_PACKAGE_EXTENSION=68]="UNUSED_PACKAGE_EXTENSION",t[t.REDUNDANT_PACKAGE_EXTENSION=69]="REDUNDANT_PACKAGE_EXTENSION",t[t.AUTO_NM_SUCCESS=70]="AUTO_NM_SUCCESS",t[t.NM_CANT_INSTALL_EXTERNAL_SOFT_LINK=71]="NM_CANT_INSTALL_EXTERNAL_SOFT_LINK",t[t.NM_PRESERVE_SYMLINKS_REQUIRED=72]="NM_PRESERVE_SYMLINKS_REQUIRED"})(J||(J={}));function Vd(t){return`YN${t.toString(10).padStart(4,"0")}`}var fg={};We(fg,{Builtins:()=>dw,Cli:()=>jn,Command:()=>ce,Option:()=>j,UsageError:()=>UsageError});var Fa=0,ag=1,zr=2,ow="",Dr="\0",Cl=-1,aw=/^(-h|--help)(?:=([0-9]+))?$/,Zd=/^(--[a-z]+(?:-[a-z]+)*|-[a-zA-Z]+)$/,CM=/^-[a-zA-Z]{2,}$/,Aw=/^([^=]+)=([\s\S]*)$/,mM=process.env.DEBUG_CLI==="1";var UsageError=class extends Error{constructor(e){super(e);this.clipanion={type:"usage"},this.name="UsageError"}},Ag=class extends Error{constructor(e,r){super();if(this.input=e,this.candidates=r,this.clipanion={type:"none"},this.name="UnknownSyntaxError",this.candidates.length===0)this.message="Command not found, but we're not sure what's the alternative.";else if(this.candidates.every(i=>i.reason!==null&&i.reason===r[0].reason)){let[{reason:i}]=this.candidates;this.message=`${i} +${I}`),{code:Yw(f,p),stdout:m,stderr:I}))})})}var Gae=new Map([["SIGINT",2],["SIGQUIT",3],["SIGKILL",9],["SIGTERM",15]]);function Yw(t,e){let r=Gae.get(e);return typeof r!="undefined"?128+r:t!=null?t:1}var Gw={};$e(Gw,{getDefaultGlobalFolder:()=>qw,getHomeFolder:()=>Ng,isFolderInside:()=>Jw});var jw=te(require("os"));function qw(){if(process.platform==="win32"){let t=L.toPortablePath(process.env.LOCALAPPDATA||L.join((0,jw.homedir)(),"AppData","Local"));return B.resolve(t,"Yarn/Berry")}if(process.env.XDG_DATA_HOME){let t=L.toPortablePath(process.env.XDG_DATA_HOME);return B.resolve(t,"yarn/berry")}return B.resolve(Ng(),".yarn/berry")}function Ng(){return L.toPortablePath((0,jw.homedir)()||"/usr/local/share")}function Jw(t,e){let r=B.relative(e,t);return r&&!r.startsWith("..")&&!B.isAbsolute(r)}var Ae={};$e(Ae,{LogLevel:()=>Mn,Style:()=>CA,Type:()=>ve,addLogFilterSupport:()=>Dh,applyColor:()=>ji,applyHyperlink:()=>sc,applyStyle:()=>jm,json:()=>oc,mark:()=>sb,pretty:()=>je,prettyField:()=>IA,prettyList:()=>db,supportsColor:()=>Ym,supportsHyperlinks:()=>fb,tuple:()=>mA});var bh=te(rQ()),J2=te(Tg()),W2=te(Yi()),z2=te(RO());var z;(function(_){_[_.UNNAMED=0]="UNNAMED",_[_.EXCEPTION=1]="EXCEPTION",_[_.MISSING_PEER_DEPENDENCY=2]="MISSING_PEER_DEPENDENCY",_[_.CYCLIC_DEPENDENCIES=3]="CYCLIC_DEPENDENCIES",_[_.DISABLED_BUILD_SCRIPTS=4]="DISABLED_BUILD_SCRIPTS",_[_.BUILD_DISABLED=5]="BUILD_DISABLED",_[_.SOFT_LINK_BUILD=6]="SOFT_LINK_BUILD",_[_.MUST_BUILD=7]="MUST_BUILD",_[_.MUST_REBUILD=8]="MUST_REBUILD",_[_.BUILD_FAILED=9]="BUILD_FAILED",_[_.RESOLVER_NOT_FOUND=10]="RESOLVER_NOT_FOUND",_[_.FETCHER_NOT_FOUND=11]="FETCHER_NOT_FOUND",_[_.LINKER_NOT_FOUND=12]="LINKER_NOT_FOUND",_[_.FETCH_NOT_CACHED=13]="FETCH_NOT_CACHED",_[_.YARN_IMPORT_FAILED=14]="YARN_IMPORT_FAILED",_[_.REMOTE_INVALID=15]="REMOTE_INVALID",_[_.REMOTE_NOT_FOUND=16]="REMOTE_NOT_FOUND",_[_.RESOLUTION_PACK=17]="RESOLUTION_PACK",_[_.CACHE_CHECKSUM_MISMATCH=18]="CACHE_CHECKSUM_MISMATCH",_[_.UNUSED_CACHE_ENTRY=19]="UNUSED_CACHE_ENTRY",_[_.MISSING_LOCKFILE_ENTRY=20]="MISSING_LOCKFILE_ENTRY",_[_.WORKSPACE_NOT_FOUND=21]="WORKSPACE_NOT_FOUND",_[_.TOO_MANY_MATCHING_WORKSPACES=22]="TOO_MANY_MATCHING_WORKSPACES",_[_.CONSTRAINTS_MISSING_DEPENDENCY=23]="CONSTRAINTS_MISSING_DEPENDENCY",_[_.CONSTRAINTS_INCOMPATIBLE_DEPENDENCY=24]="CONSTRAINTS_INCOMPATIBLE_DEPENDENCY",_[_.CONSTRAINTS_EXTRANEOUS_DEPENDENCY=25]="CONSTRAINTS_EXTRANEOUS_DEPENDENCY",_[_.CONSTRAINTS_INVALID_DEPENDENCY=26]="CONSTRAINTS_INVALID_DEPENDENCY",_[_.CANT_SUGGEST_RESOLUTIONS=27]="CANT_SUGGEST_RESOLUTIONS",_[_.FROZEN_LOCKFILE_EXCEPTION=28]="FROZEN_LOCKFILE_EXCEPTION",_[_.CROSS_DRIVE_VIRTUAL_LOCAL=29]="CROSS_DRIVE_VIRTUAL_LOCAL",_[_.FETCH_FAILED=30]="FETCH_FAILED",_[_.DANGEROUS_NODE_MODULES=31]="DANGEROUS_NODE_MODULES",_[_.NODE_GYP_INJECTED=32]="NODE_GYP_INJECTED",_[_.AUTHENTICATION_NOT_FOUND=33]="AUTHENTICATION_NOT_FOUND",_[_.INVALID_CONFIGURATION_KEY=34]="INVALID_CONFIGURATION_KEY",_[_.NETWORK_ERROR=35]="NETWORK_ERROR",_[_.LIFECYCLE_SCRIPT=36]="LIFECYCLE_SCRIPT",_[_.CONSTRAINTS_MISSING_FIELD=37]="CONSTRAINTS_MISSING_FIELD",_[_.CONSTRAINTS_INCOMPATIBLE_FIELD=38]="CONSTRAINTS_INCOMPATIBLE_FIELD",_[_.CONSTRAINTS_EXTRANEOUS_FIELD=39]="CONSTRAINTS_EXTRANEOUS_FIELD",_[_.CONSTRAINTS_INVALID_FIELD=40]="CONSTRAINTS_INVALID_FIELD",_[_.AUTHENTICATION_INVALID=41]="AUTHENTICATION_INVALID",_[_.PROLOG_UNKNOWN_ERROR=42]="PROLOG_UNKNOWN_ERROR",_[_.PROLOG_SYNTAX_ERROR=43]="PROLOG_SYNTAX_ERROR",_[_.PROLOG_EXISTENCE_ERROR=44]="PROLOG_EXISTENCE_ERROR",_[_.STACK_OVERFLOW_RESOLUTION=45]="STACK_OVERFLOW_RESOLUTION",_[_.AUTOMERGE_FAILED_TO_PARSE=46]="AUTOMERGE_FAILED_TO_PARSE",_[_.AUTOMERGE_IMMUTABLE=47]="AUTOMERGE_IMMUTABLE",_[_.AUTOMERGE_SUCCESS=48]="AUTOMERGE_SUCCESS",_[_.AUTOMERGE_REQUIRED=49]="AUTOMERGE_REQUIRED",_[_.DEPRECATED_CLI_SETTINGS=50]="DEPRECATED_CLI_SETTINGS",_[_.PLUGIN_NAME_NOT_FOUND=51]="PLUGIN_NAME_NOT_FOUND",_[_.INVALID_PLUGIN_REFERENCE=52]="INVALID_PLUGIN_REFERENCE",_[_.CONSTRAINTS_AMBIGUITY=53]="CONSTRAINTS_AMBIGUITY",_[_.CACHE_OUTSIDE_PROJECT=54]="CACHE_OUTSIDE_PROJECT",_[_.IMMUTABLE_INSTALL=55]="IMMUTABLE_INSTALL",_[_.IMMUTABLE_CACHE=56]="IMMUTABLE_CACHE",_[_.INVALID_MANIFEST=57]="INVALID_MANIFEST",_[_.PACKAGE_PREPARATION_FAILED=58]="PACKAGE_PREPARATION_FAILED",_[_.INVALID_RANGE_PEER_DEPENDENCY=59]="INVALID_RANGE_PEER_DEPENDENCY",_[_.INCOMPATIBLE_PEER_DEPENDENCY=60]="INCOMPATIBLE_PEER_DEPENDENCY",_[_.DEPRECATED_PACKAGE=61]="DEPRECATED_PACKAGE",_[_.INCOMPATIBLE_OS=62]="INCOMPATIBLE_OS",_[_.INCOMPATIBLE_CPU=63]="INCOMPATIBLE_CPU",_[_.FROZEN_ARTIFACT_EXCEPTION=64]="FROZEN_ARTIFACT_EXCEPTION",_[_.TELEMETRY_NOTICE=65]="TELEMETRY_NOTICE",_[_.PATCH_HUNK_FAILED=66]="PATCH_HUNK_FAILED",_[_.INVALID_CONFIGURATION_VALUE=67]="INVALID_CONFIGURATION_VALUE",_[_.UNUSED_PACKAGE_EXTENSION=68]="UNUSED_PACKAGE_EXTENSION",_[_.REDUNDANT_PACKAGE_EXTENSION=69]="REDUNDANT_PACKAGE_EXTENSION",_[_.AUTO_NM_SUCCESS=70]="AUTO_NM_SUCCESS",_[_.NM_CANT_INSTALL_EXTERNAL_SOFT_LINK=71]="NM_CANT_INSTALL_EXTERNAL_SOFT_LINK",_[_.NM_PRESERVE_SYMLINKS_REQUIRED=72]="NM_PRESERVE_SYMLINKS_REQUIRED",_[_.UPDATE_LOCKFILE_ONLY_SKIP_LINK=73]="UPDATE_LOCKFILE_ONLY_SKIP_LINK"})(z||(z={}));function TC(t){return`YN${t.toString(10).padStart(4,"0")}`}var de={};$e(de,{BufferStream:()=>lK,CachingStrategy:()=>nA,DefaultStream:()=>cK,assertNever:()=>MQ,bufferStream:()=>_g,buildIgnorePattern:()=>vce,convertMapsToIndexableObjects:()=>zC,dynamicRequire:()=>Jl,escapeRegExp:()=>Sce,getArrayWithDefault:()=>Gl,getFactoryWithDefault:()=>Us,getMapWithDefault:()=>jl,getSetWithDefault:()=>iA,isIndexableObject:()=>OQ,isPathLike:()=>Fce,isTaggedYarnVersion:()=>Dce,mapAndFilter:()=>rA,mapAndFind:()=>AK,overrideType:()=>NQ,parseBoolean:()=>eh,parseOptionalBoolean:()=>fK,prettifyAsyncErrors:()=>ql,prettifySyncErrors:()=>KQ,releaseAfterUseAsync:()=>Pce,replaceEnvVariables:()=>TQ,sortMap:()=>bi,tryParseOptionalBoolean:()=>UQ,validateEnum:()=>xce});var Zg={};$e(Zg,{Builtins:()=>RQ,Cli:()=>rs,Command:()=>fe,Option:()=>G,UsageError:()=>me});var $a=0,jg=1,ri=2,mQ="",Mr="\0",Ul=-1,IQ=/^(-h|--help)(?:=([0-9]+))?$/,UC=/^(--[a-z]+(?:-[a-z]+)*|-[a-zA-Z]+)$/,LO=/^-[a-zA-Z]{2,}$/,EQ=/^([^=]+)=([\s\S]*)$/,yQ=process.env.DEBUG_CLI==="1";var me=class extends Error{constructor(e){super(e);this.clipanion={type:"usage"},this.name="UsageError"}},qg=class extends Error{constructor(e,r){super();if(this.input=e,this.candidates=r,this.clipanion={type:"none"},this.name="UnknownSyntaxError",this.candidates.length===0)this.message="Command not found, but we're not sure what's the alternative.";else if(this.candidates.every(i=>i.reason!==null&&i.reason===r[0].reason)){let[{reason:i}]=this.candidates;this.message=`${i} ${this.candidates.map(({usage:n})=>`$ ${n}`).join(` `)}`}else if(this.candidates.length===1){let[{usage:i}]=this.candidates;this.message=`Command not found; did you mean: $ ${i} -${lw(e)}`}else this.message=`Command not found; did you mean one of: +${BQ(e)}`}else this.message=`Command not found; did you mean one of: ${this.candidates.map(({usage:i},n)=>`${`${n}.`.padStart(4)} ${i}`).join(` `)} -${lw(e)}`}},cw=class extends Error{constructor(e,r){super();this.input=e,this.usages=r,this.clipanion={type:"none"},this.name="AmbiguousSyntaxError",this.message=`Cannot find which to pick amongst the following alternatives: +${BQ(e)}`}},wQ=class extends Error{constructor(e,r){super();this.input=e,this.usages=r,this.clipanion={type:"none"},this.name="AmbiguousSyntaxError",this.message=`Cannot find which to pick amongst the following alternatives: ${this.usages.map((i,n)=>`${`${n}.`.padStart(4)} ${i}`).join(` `)} -${lw(e)}`}},lw=t=>`While running ${t.filter(e=>e!==Dr).map(e=>{let r=JSON.stringify(e);return e.match(/\s/)||e.length===0||r!==`"${e}"`?r:e}).join(" ")}`;var lg=Symbol("clipanion/isOption");function Xr(t){return{...t,[lg]:!0}}function Yn(t,e){return typeof t=="undefined"?[t,e]:typeof t=="object"&&t!==null&&!Array.isArray(t)?[void 0,t]:[t,e]}function _d(t,e=!1){let r=t.replace(/^\.: /,"");return e&&(r=r[0].toLowerCase()+r.slice(1)),r}function cg(t,e){return e.length===1?new UsageError(`${t}: ${_d(e[0],!0)}`):new UsageError(`${t}: +${BQ(e)}`}},BQ=t=>`While running ${t.filter(e=>e!==Mr).map(e=>{let r=JSON.stringify(e);return e.match(/\s/)||e.length===0||r!==`"${e}"`?r:e}).join(" ")}`;var Jg=Symbol("clipanion/isOption");function ii(t){return V(k({},t),{[Jg]:!0})}function ts(t,e){return typeof t=="undefined"?[t,e]:typeof t=="object"&&t!==null&&!Array.isArray(t)?[void 0,t]:[t,e]}function HC(t,e=!1){let r=t.replace(/^\.: /,"");return e&&(r=r[0].toLowerCase()+r.slice(1)),r}function Wg(t,e){return e.length===1?new me(`${t}: ${HC(e[0],!0)}`):new me(`${t}: ${e.map(r=>` -- ${_d(r)}`).join("")}`)}function $d(t,e,r){if(typeof r=="undefined")return e;let i=[],n=[],s=a=>{let l=e;return e=a,s.bind(null,l)};if(!r(e,{errors:i,coercions:n,coercion:s}))throw cg(`Invalid value for ${t}`,i);for(let[,a]of n)a();return e}var ce=class{constructor(){this.help=!1}static Usage(e){return e}async catch(e){throw e}async validateAndExecute(){let r=this.constructor.schema;if(typeof r!="undefined"){let{isDict:n,isUnknown:s,applyCascade:o}=await Promise.resolve().then(()=>X(Qo())),a=o(n(s()),r),l=[],c=[];if(!a(this,{errors:l,coercions:c}))throw cg("Invalid option schema",l);for(let[,g]of c)g()}let i=await this.execute();return typeof i!="undefined"?i:0}};ce.isOption=lg;ce.Default=[];function hi(t){mM&&console.log(t)}var PM={candidateUsage:null,requiredOptions:[],errorMessage:null,ignoreOptions:!1,path:[],positionals:[],options:[],remainder:null,selectedIndex:Cl};function xM(){return{nodes:[Vr(),Vr(),Vr()]}}function mae(t){let e=xM(),r=[],i=e.nodes.length;for(let n of t){r.push(i);for(let s=0;s{if(e.has(i))return;e.add(i);let n=t.nodes[i];for(let o of Object.values(n.statics))for(let{to:a}of o)r(a);for(let[,{to:o}]of n.dynamics)r(o);for(let{to:o}of n.shortcuts)r(o);let s=new Set(n.shortcuts.map(({to:o})=>o));for(;n.shortcuts.length>0;){let{to:o}=n.shortcuts.shift(),a=t.nodes[o];for(let[l,c]of Object.entries(a.statics)){let u=Object.prototype.hasOwnProperty.call(n.statics,l)?n.statics[l]:n.statics[l]=[];for(let g of c)u.some(({to:h})=>g.to===h)||u.push(g)}for(let[l,c]of a.dynamics)n.dynamics.some(([u,{to:g}])=>l===u&&c.to===g)||n.dynamics.push([l,c]);for(let l of a.shortcuts)s.has(l.to)||(n.shortcuts.push(l),s.add(l.to))}};r(Fa)}function Eae(t,{prefix:e=""}={}){hi(`${e}Nodes are:`);for(let r=0;rl!==zr).map(({state:l})=>({usage:l.candidateUsage,reason:null})));if(a.every(({node:l})=>l===zr))throw new Ag(e,a.map(({state:l})=>({usage:l.candidateUsage,reason:l.errorMessage})));i=yae(a)}if(i.length>0){hi(" Results:");for(let s of i)hi(` - ${s.node} -> ${JSON.stringify(s.state)}`)}else hi(" No results");return i}function Bae(t,e){if(e.selectedIndex!==null)return!0;if(Object.prototype.hasOwnProperty.call(t.statics,Dr)){for(let{to:r}of t.statics[Dr])if(r===ag)return!0}return!1}function Qae(t,e,r){let i=r&&e.length>0?[""]:[],n=vM(t,e,r),s=[],o=new Set,a=(l,c,u=!0)=>{let g=[c];for(;g.length>0;){let f=g;g=[];for(let p of f){let m=t.nodes[p],I=Object.keys(m.statics);for(let y of Object.keys(m.statics)){let B=I[0];for(let{to:P,reducer:k}of m.statics[B])k==="pushPath"&&(u||l.push(B),g.push(P))}}u=!1}let h=JSON.stringify(l);o.has(h)||(s.push(l),o.add(h))};for(let{node:l,state:c}of n){if(c.remainder!==null){a([c.remainder],l);continue}let u=t.nodes[l],g=Bae(u,c);for(let[h,f]of Object.entries(u.statics))(g&&h!==Dr||!h.startsWith("-")&&f.some(({reducer:p})=>p==="pushPath"))&&a([...i,h],l);if(!!g)for(let[h,{to:f}]of u.dynamics){if(f===zr)continue;let p=wae(h,c);if(p!==null)for(let m of p)a([...i,m],l)}}return[...s].sort()}function Dae(t,e){let r=vM(t,[...e,Dr]);return bae(e,r.map(({state:i})=>i))}function yae(t){let e=0;for(let{state:r}of t)r.path.length>e&&(e=r.path.length);return t.filter(({state:r})=>r.path.length===e)}function bae(t,e){let r=e.filter(g=>g.selectedIndex!==null);if(r.length===0)throw new Error;let i=r.filter(g=>g.requiredOptions.every(h=>h.some(f=>g.options.find(p=>p.name===f))));if(i.length===0)throw new Ag(t,r.map(g=>({usage:g.candidateUsage,reason:null})));let n=0;for(let g of i)g.path.length>n&&(n=g.path.length);let s=i.filter(g=>g.path.length===n),o=g=>g.positionals.filter(({extra:h})=>!h).length+g.options.length,a=s.map(g=>({state:g,positionalCount:o(g)})),l=0;for(let{positionalCount:g}of a)g>l&&(l=g);let c=a.filter(({positionalCount:g})=>g===l).map(({state:g})=>g),u=Sae(c);if(u.length>1)throw new cw(t,u.map(g=>g.candidateUsage));return u[0]}function Sae(t){let e=[],r=[];for(let i of t)i.selectedIndex===Cl?r.push(i):e.push(i);return r.length>0&&e.push({...PM,path:FM(...r.map(i=>i.path)),options:r.reduce((i,n)=>i.concat(n.options),[])}),e}function FM(t,e,...r){return e===void 0?Array.from(t):FM(t.filter((i,n)=>i===e[n]),...r)}function Vr(){return{dynamics:[],shortcuts:[],statics:{}}}function kM(t){return t===ag||t===zr}function hw(t,e=0){return{to:kM(t.to)?t.to:t.to>2?t.to+e-2:t.to+e,reducer:t.reducer}}function Cae(t,e=0){let r=Vr();for(let[i,n]of t.dynamics)r.dynamics.push([i,hw(n,e)]);for(let i of t.shortcuts)r.shortcuts.push(hw(i,e));for(let[i,n]of Object.entries(t.statics))r.statics[i]=n.map(s=>hw(s,e));return r}function Sr(t,e,r,i,n){t.nodes[e].dynamics.push([r,{to:i,reducer:n}])}function ml(t,e,r,i){t.nodes[e].shortcuts.push({to:r,reducer:i})}function Qs(t,e,r,i,n){(Object.prototype.hasOwnProperty.call(t.nodes[e].statics,r)?t.nodes[e].statics[r]:t.nodes[e].statics[r]=[]).push({to:i,reducer:n})}function tC(t,e,r,i){if(Array.isArray(e)){let[n,...s]=e;return t[n](r,i,...s)}else return t[e](r,i)}function wae(t,e){let r=Array.isArray(t)?rC[t[0]]:rC[t];if(typeof r.suggest=="undefined")return null;let i=Array.isArray(t)?t.slice(1):[];return r.suggest(e,...i)}var rC={always:()=>!0,isOptionLike:(t,e)=>!t.ignoreOptions&&e.startsWith("-"),isNotOptionLike:(t,e)=>t.ignoreOptions||!e.startsWith("-"),isOption:(t,e,r,i)=>!t.ignoreOptions&&e===r,isBatchOption:(t,e,r)=>!t.ignoreOptions&&CM.test(e)&&[...e.slice(1)].every(i=>r.includes(`-${i}`)),isBoundOption:(t,e,r,i)=>{let n=e.match(Aw);return!t.ignoreOptions&&!!n&&Zd.test(n[1])&&r.includes(n[1])&&i.filter(s=>s.names.includes(n[1])).every(s=>s.allowBinding)},isNegatedOption:(t,e,r)=>!t.ignoreOptions&&e===`--no-${r.slice(2)}`,isHelp:(t,e)=>!t.ignoreOptions&&aw.test(e),isUnsupportedOption:(t,e,r)=>!t.ignoreOptions&&e.startsWith("-")&&Zd.test(e)&&!r.includes(e),isInvalidOption:(t,e)=>!t.ignoreOptions&&e.startsWith("-")&&!Zd.test(e)};rC.isOption.suggest=(t,e,r=!0)=>r?null:[e];var gw={setCandidateState:(t,e,r)=>({...t,...r}),setSelectedIndex:(t,e,r)=>({...t,selectedIndex:r}),pushBatch:(t,e)=>({...t,options:t.options.concat([...e.slice(1)].map(r=>({name:`-${r}`,value:!0})))}),pushBound:(t,e)=>{let[,r,i]=e.match(Aw);return{...t,options:t.options.concat({name:r,value:i})}},pushPath:(t,e)=>({...t,path:t.path.concat(e)}),pushPositional:(t,e)=>({...t,positionals:t.positionals.concat({value:e,extra:!1})}),pushExtra:(t,e)=>({...t,positionals:t.positionals.concat({value:e,extra:!0})}),pushExtraNoLimits:(t,e)=>({...t,positionals:t.positionals.concat({value:e,extra:vi})}),pushTrue:(t,e,r=e)=>({...t,options:t.options.concat({name:e,value:!0})}),pushFalse:(t,e,r=e)=>({...t,options:t.options.concat({name:r,value:!1})}),pushUndefined:(t,e)=>({...t,options:t.options.concat({name:e,value:void 0})}),pushStringValue:(t,e)=>{var r;let i={...t,options:[...t.options]},n=t.options[t.options.length-1];return n.value=((r=n.value)!==null&&r!==void 0?r:[]).concat([e]),i},setStringValue:(t,e)=>{let r={...t,options:[...t.options]},i=t.options[t.options.length-1];return i.value=e,r},inhibateOptions:t=>({...t,ignoreOptions:!0}),useHelp:(t,e,r)=>{let[,,i]=e.match(aw);return typeof i!="undefined"?{...t,options:[{name:"-c",value:String(r)},{name:"-i",value:i}]}:{...t,options:[{name:"-c",value:String(r)}]}},setError:(t,e,r)=>e===Dr?{...t,errorMessage:`${r}.`}:{...t,errorMessage:`${r} ("${e}").`},setOptionArityError:(t,e)=>{let r=t.options[t.options.length-1];return{...t,errorMessage:`Not enough arguments to option ${r.name}.`}}},vi=Symbol(),RM=class{constructor(e,r){this.allOptionNames=[],this.arity={leading:[],trailing:[],extra:[],proxy:!1},this.options=[],this.paths=[],this.cliIndex=e,this.cliOpts=r}addPath(e){this.paths.push(e)}setArity({leading:e=this.arity.leading,trailing:r=this.arity.trailing,extra:i=this.arity.extra,proxy:n=this.arity.proxy}){Object.assign(this.arity,{leading:e,trailing:r,extra:i,proxy:n})}addPositional({name:e="arg",required:r=!0}={}){if(!r&&this.arity.extra===vi)throw new Error("Optional parameters cannot be declared when using .rest() or .proxy()");if(!r&&this.arity.trailing.length>0)throw new Error("Optional parameters cannot be declared after the required trailing positional arguments");!r&&this.arity.extra!==vi?this.arity.extra.push(e):this.arity.extra!==vi&&this.arity.extra.length===0?this.arity.leading.push(e):this.arity.trailing.push(e)}addRest({name:e="arg",required:r=0}={}){if(this.arity.extra===vi)throw new Error("Infinite lists cannot be declared multiple times in the same command");if(this.arity.trailing.length>0)throw new Error("Infinite lists cannot be declared after the required trailing positional arguments");for(let i=0;i1)throw new Error("The arity cannot be higher than 1 when the option only supports the --arg=value syntax");if(!Number.isInteger(i))throw new Error(`The arity must be an integer, got ${i}`);if(i<0)throw new Error(`The arity must be positive, got ${i}`);this.allOptionNames.push(...e),this.options.push({names:e,description:r,arity:i,hidden:n,required:s,allowBinding:o})}setContext(e){this.context=e}usage({detailed:e=!0,inlineOptions:r=!0}={}){let i=[this.cliOpts.binaryName],n=[];if(this.paths.length>0&&i.push(...this.paths[0]),e){for(let{names:o,arity:a,hidden:l,description:c,required:u}of this.options){if(l)continue;let g=[];for(let f=0;f`:`[${h}]`)}i.push(...this.arity.leading.map(o=>`<${o}>`)),this.arity.extra===vi?i.push("..."):i.push(...this.arity.extra.map(o=>`[${o}]`)),i.push(...this.arity.trailing.map(o=>`<${o}>`))}return{usage:i.join(" "),options:n}}compile(){if(typeof this.context=="undefined")throw new Error("Assertion failed: No context attached");let e=xM(),r=Fa,i=this.usage().usage,n=this.options.filter(a=>a.required).map(a=>a.names);r=wn(e,Vr()),Qs(e,Fa,ow,r,["setCandidateState",{candidateUsage:i,requiredOptions:n}]);let s=this.arity.proxy?"always":"isNotOptionLike",o=this.paths.length>0?this.paths:[[]];for(let a of o){let l=r;if(a.length>0){let h=wn(e,Vr());ml(e,l,h),this.registerOptions(e,h),l=h}for(let h=0;h0||!this.arity.proxy){let h=wn(e,Vr());Sr(e,l,"isHelp",h,["useHelp",this.cliIndex]),Qs(e,h,Dr,ag,["setSelectedIndex",Cl]),this.registerOptions(e,l)}this.arity.leading.length>0&&Qs(e,l,Dr,zr,["setError","Not enough positional arguments"]);let c=l;for(let h=0;h0||h+1!==this.arity.leading.length)&&Qs(e,f,Dr,zr,["setError","Not enough positional arguments"]),Sr(e,c,"isNotOptionLike",f,"pushPositional"),c=f}let u=c;if(this.arity.extra===vi||this.arity.extra.length>0){let h=wn(e,Vr());if(ml(e,c,h),this.arity.extra===vi){let f=wn(e,Vr());this.arity.proxy||this.registerOptions(e,f),Sr(e,c,s,f,"pushExtraNoLimits"),Sr(e,f,s,f,"pushExtraNoLimits"),ml(e,f,h)}else for(let f=0;f0&&Qs(e,u,Dr,zr,["setError","Not enough positional arguments"]);let g=u;for(let h=0;ho.length>s.length?o:s,"");if(i.arity===0)for(let s of i.names)Sr(e,r,["isOption",s,i.hidden||s!==n],r,"pushTrue"),s.startsWith("--")&&!s.startsWith("--no-")&&Sr(e,r,["isNegatedOption",s],r,["pushFalse",s]);else{let s=wn(e,Vr());for(let o of i.names)Sr(e,r,["isOption",o,i.hidden||o!==n],s,"pushUndefined");for(let o=0;o=0&&eDae(i,n),suggest:(n,s)=>Qae(i,n,s)}}};var LM=80,fw=Array(LM).fill("\u2501");for(let t=0;t<=24;++t)fw[fw.length-t]=`[38;5;${232+t}m\u2501`;var pw={header:t=>`\u2501\u2501\u2501 ${t}${t.length`${t}`,error:t=>`${t}`,code:t=>`${t}`},MM={header:t=>t,bold:t=>t,error:t=>t,code:t=>t};function Xi(t,{format:e,paragraphs:r}){return t=t.replace(/\r\n?/g,` -`),t=t.replace(/^[\t ]+|[\t ]+$/gm,""),t=t.replace(/^\n+|\n+$/g,""),t=t.replace(/^-([^\n]*?)\n+/gm,`-$1 +- ${HC(r)}`).join("")}`)}function zg(t,e,r){if(typeof r=="undefined")return e;let i=[],n=[],s=a=>{let l=e;return e=a,s.bind(null,l)};if(!r(e,{errors:i,coercions:n,coercion:s}))throw Wg(`Invalid value for ${t}`,i);for(let[,a]of n)a();return e}var fe=class{constructor(){this.help=!1}static Usage(e){return e}async catch(e){throw e}async validateAndExecute(){let r=this.constructor.schema;if(typeof r!="undefined"){let{isDict:n,isUnknown:s,applyCascade:o}=await Promise.resolve().then(()=>(Fn(),Hl)),a=o(n(s()),r),l=[],c=[];if(!a(this,{errors:l,coercions:c}))throw Wg("Invalid option schema",l);for(let[,g]of c)g()}let i=await this.execute();return typeof i!="undefined"?i:0}};fe.isOption=Jg;fe.Default=[];function Qi(t){yQ&&console.log(t)}var jO={candidateUsage:null,requiredOptions:[],errorMessage:null,ignoreOptions:!1,path:[],positionals:[],options:[],remainder:null,selectedIndex:Ul};function qO(){return{nodes:[si(),si(),si()]}}function gce(t){let e=qO(),r=[],i=e.nodes.length;for(let n of t){r.push(i);for(let s=0;s{if(e.has(i))return;e.add(i);let n=t.nodes[i];for(let o of Object.values(n.statics))for(let{to:a}of o)r(a);for(let[,{to:o}]of n.dynamics)r(o);for(let{to:o}of n.shortcuts)r(o);let s=new Set(n.shortcuts.map(({to:o})=>o));for(;n.shortcuts.length>0;){let{to:o}=n.shortcuts.shift(),a=t.nodes[o];for(let[l,c]of Object.entries(a.statics)){let u=Object.prototype.hasOwnProperty.call(n.statics,l)?n.statics[l]:n.statics[l]=[];for(let g of c)u.some(({to:h})=>g.to===h)||u.push(g)}for(let[l,c]of a.dynamics)n.dynamics.some(([u,{to:g}])=>l===u&&c.to===g)||n.dynamics.push([l,c]);for(let l of a.shortcuts)s.has(l.to)||(n.shortcuts.push(l),s.add(l.to))}};r($a)}function fce(t,{prefix:e=""}={}){if(yQ){Qi(`${e}Nodes are:`);for(let r=0;rl!==ri).map(({state:l})=>({usage:l.candidateUsage,reason:null})));if(a.every(({node:l})=>l===ri))throw new qg(e,a.map(({state:l})=>({usage:l.candidateUsage,reason:l.errorMessage})));i=pce(a)}if(i.length>0){Qi(" Results:");for(let s of i)Qi(` - ${s.node} -> ${JSON.stringify(s.state)}`)}else Qi(" No results");return i}function dce(t,e){if(e.selectedIndex!==null)return!0;if(Object.prototype.hasOwnProperty.call(t.statics,Mr)){for(let{to:r}of t.statics[Mr])if(r===jg)return!0}return!1}function mce(t,e,r){let i=r&&e.length>0?[""]:[],n=WO(t,e,r),s=[],o=new Set,a=(l,c,u=!0)=>{let g=[c];for(;g.length>0;){let f=g;g=[];for(let p of f){let m=t.nodes[p],I=Object.keys(m.statics);for(let y of Object.keys(m.statics)){let w=I[0];for(let{to:x,reducer:F}of m.statics[w])F==="pushPath"&&(u||l.push(w),g.push(x))}}u=!1}let h=JSON.stringify(l);o.has(h)||(s.push(l),o.add(h))};for(let{node:l,state:c}of n){if(c.remainder!==null){a([c.remainder],l);continue}let u=t.nodes[l],g=dce(u,c);for(let[h,f]of Object.entries(u.statics))(g&&h!==Mr||!h.startsWith("-")&&f.some(({reducer:p})=>p==="pushPath"))&&a([...i,h],l);if(!!g)for(let[h,{to:f}]of u.dynamics){if(f===ri)continue;let p=Cce(h,c);if(p!==null)for(let m of p)a([...i,m],l)}}return[...s].sort()}function Ece(t,e){let r=WO(t,[...e,Mr]);return Ice(e,r.map(({state:i})=>i))}function pce(t){let e=0;for(let{state:r}of t)r.path.length>e&&(e=r.path.length);return t.filter(({state:r})=>r.path.length===e)}function Ice(t,e){let r=e.filter(g=>g.selectedIndex!==null);if(r.length===0)throw new Error;let i=r.filter(g=>g.requiredOptions.every(h=>h.some(f=>g.options.find(p=>p.name===f))));if(i.length===0)throw new qg(t,r.map(g=>({usage:g.candidateUsage,reason:null})));let n=0;for(let g of i)g.path.length>n&&(n=g.path.length);let s=i.filter(g=>g.path.length===n),o=g=>g.positionals.filter(({extra:h})=>!h).length+g.options.length,a=s.map(g=>({state:g,positionalCount:o(g)})),l=0;for(let{positionalCount:g}of a)g>l&&(l=g);let c=a.filter(({positionalCount:g})=>g===l).map(({state:g})=>g),u=yce(c);if(u.length>1)throw new wQ(t,u.map(g=>g.candidateUsage));return u[0]}function yce(t){let e=[],r=[];for(let i of t)i.selectedIndex===Ul?r.push(i):e.push(i);return r.length>0&&e.push(V(k({},jO),{path:zO(...r.map(i=>i.path)),options:r.reduce((i,n)=>i.concat(n.options),[])})),e}function zO(t,e,...r){return e===void 0?Array.from(t):zO(t.filter((i,n)=>i===e[n]),...r)}function si(){return{dynamics:[],shortcuts:[],statics:{}}}function JO(t){return t===jg||t===ri}function kQ(t,e=0){return{to:JO(t.to)?t.to:t.to>2?t.to+e-2:t.to+e,reducer:t.reducer}}function uce(t,e=0){let r=si();for(let[i,n]of t.dynamics)r.dynamics.push([i,kQ(n,e)]);for(let i of t.shortcuts)r.shortcuts.push(kQ(i,e));for(let[i,n]of Object.entries(t.statics))r.statics[i]=n.map(s=>kQ(s,e));return r}function Or(t,e,r,i,n){t.nodes[e].dynamics.push([r,{to:i,reducer:n}])}function Yl(t,e,r,i){t.nodes[e].shortcuts.push({to:r,reducer:i})}function Ts(t,e,r,i,n){(Object.prototype.hasOwnProperty.call(t.nodes[e].statics,r)?t.nodes[e].statics[r]:t.nodes[e].statics[r]=[]).push({to:i,reducer:n})}function GC(t,e,r,i){if(Array.isArray(e)){let[n,...s]=e;return t[n](r,i,...s)}else return t[e](r,i)}function Cce(t,e){let r=Array.isArray(t)?jC[t[0]]:jC[t];if(typeof r.suggest=="undefined")return null;let i=Array.isArray(t)?t.slice(1):[];return r.suggest(e,...i)}var jC={always:()=>!0,isOptionLike:(t,e)=>!t.ignoreOptions&&e!=="-"&&e.startsWith("-"),isNotOptionLike:(t,e)=>t.ignoreOptions||e==="-"||!e.startsWith("-"),isOption:(t,e,r,i)=>!t.ignoreOptions&&e===r,isBatchOption:(t,e,r)=>!t.ignoreOptions&&LO.test(e)&&[...e.slice(1)].every(i=>r.includes(`-${i}`)),isBoundOption:(t,e,r,i)=>{let n=e.match(EQ);return!t.ignoreOptions&&!!n&&UC.test(n[1])&&r.includes(n[1])&&i.filter(s=>s.names.includes(n[1])).every(s=>s.allowBinding)},isNegatedOption:(t,e,r)=>!t.ignoreOptions&&e===`--no-${r.slice(2)}`,isHelp:(t,e)=>!t.ignoreOptions&&IQ.test(e),isUnsupportedOption:(t,e,r)=>!t.ignoreOptions&&e.startsWith("-")&&UC.test(e)&&!r.includes(e),isInvalidOption:(t,e)=>!t.ignoreOptions&&e.startsWith("-")&&!UC.test(e)};jC.isOption.suggest=(t,e,r=!0)=>r?null:[e];var PQ={setCandidateState:(t,e,r)=>k(k({},t),r),setSelectedIndex:(t,e,r)=>V(k({},t),{selectedIndex:r}),pushBatch:(t,e)=>V(k({},t),{options:t.options.concat([...e.slice(1)].map(r=>({name:`-${r}`,value:!0})))}),pushBound:(t,e)=>{let[,r,i]=e.match(EQ);return V(k({},t),{options:t.options.concat({name:r,value:i})})},pushPath:(t,e)=>V(k({},t),{path:t.path.concat(e)}),pushPositional:(t,e)=>V(k({},t),{positionals:t.positionals.concat({value:e,extra:!1})}),pushExtra:(t,e)=>V(k({},t),{positionals:t.positionals.concat({value:e,extra:!0})}),pushExtraNoLimits:(t,e)=>V(k({},t),{positionals:t.positionals.concat({value:e,extra:Gi})}),pushTrue:(t,e,r=e)=>V(k({},t),{options:t.options.concat({name:e,value:!0})}),pushFalse:(t,e,r=e)=>V(k({},t),{options:t.options.concat({name:r,value:!1})}),pushUndefined:(t,e)=>V(k({},t),{options:t.options.concat({name:e,value:void 0})}),pushStringValue:(t,e)=>{var r;let i=V(k({},t),{options:[...t.options]}),n=t.options[t.options.length-1];return n.value=((r=n.value)!==null&&r!==void 0?r:[]).concat([e]),i},setStringValue:(t,e)=>{let r=V(k({},t),{options:[...t.options]}),i=t.options[t.options.length-1];return i.value=e,r},inhibateOptions:t=>V(k({},t),{ignoreOptions:!0}),useHelp:(t,e,r)=>{let[,,i]=e.match(IQ);return typeof i!="undefined"?V(k({},t),{options:[{name:"-c",value:String(r)},{name:"-i",value:i}]}):V(k({},t),{options:[{name:"-c",value:String(r)}]})},setError:(t,e,r)=>e===Mr?V(k({},t),{errorMessage:`${r}.`}):V(k({},t),{errorMessage:`${r} ("${e}").`}),setOptionArityError:(t,e)=>{let r=t.options[t.options.length-1];return V(k({},t),{errorMessage:`Not enough arguments to option ${r.name}.`})}},Gi=Symbol(),VO=class{constructor(e,r){this.allOptionNames=[],this.arity={leading:[],trailing:[],extra:[],proxy:!1},this.options=[],this.paths=[],this.cliIndex=e,this.cliOpts=r}addPath(e){this.paths.push(e)}setArity({leading:e=this.arity.leading,trailing:r=this.arity.trailing,extra:i=this.arity.extra,proxy:n=this.arity.proxy}){Object.assign(this.arity,{leading:e,trailing:r,extra:i,proxy:n})}addPositional({name:e="arg",required:r=!0}={}){if(!r&&this.arity.extra===Gi)throw new Error("Optional parameters cannot be declared when using .rest() or .proxy()");if(!r&&this.arity.trailing.length>0)throw new Error("Optional parameters cannot be declared after the required trailing positional arguments");!r&&this.arity.extra!==Gi?this.arity.extra.push(e):this.arity.extra!==Gi&&this.arity.extra.length===0?this.arity.leading.push(e):this.arity.trailing.push(e)}addRest({name:e="arg",required:r=0}={}){if(this.arity.extra===Gi)throw new Error("Infinite lists cannot be declared multiple times in the same command");if(this.arity.trailing.length>0)throw new Error("Infinite lists cannot be declared after the required trailing positional arguments");for(let i=0;i1)throw new Error("The arity cannot be higher than 1 when the option only supports the --arg=value syntax");if(!Number.isInteger(i))throw new Error(`The arity must be an integer, got ${i}`);if(i<0)throw new Error(`The arity must be positive, got ${i}`);this.allOptionNames.push(...e),this.options.push({names:e,description:r,arity:i,hidden:n,required:s,allowBinding:o})}setContext(e){this.context=e}usage({detailed:e=!0,inlineOptions:r=!0}={}){let i=[this.cliOpts.binaryName],n=[];if(this.paths.length>0&&i.push(...this.paths[0]),e){for(let{names:o,arity:a,hidden:l,description:c,required:u}of this.options){if(l)continue;let g=[];for(let f=0;f`:`[${h}]`)}i.push(...this.arity.leading.map(o=>`<${o}>`)),this.arity.extra===Gi?i.push("..."):i.push(...this.arity.extra.map(o=>`[${o}]`)),i.push(...this.arity.trailing.map(o=>`<${o}>`))}return{usage:i.join(" "),options:n}}compile(){if(typeof this.context=="undefined")throw new Error("Assertion failed: No context attached");let e=qO(),r=$a,i=this.usage().usage,n=this.options.filter(a=>a.required).map(a=>a.names);r=Rn(e,si()),Ts(e,$a,mQ,r,["setCandidateState",{candidateUsage:i,requiredOptions:n}]);let s=this.arity.proxy?"always":"isNotOptionLike",o=this.paths.length>0?this.paths:[[]];for(let a of o){let l=r;if(a.length>0){let h=Rn(e,si());Yl(e,l,h),this.registerOptions(e,h),l=h}for(let h=0;h0||!this.arity.proxy){let h=Rn(e,si());Or(e,l,"isHelp",h,["useHelp",this.cliIndex]),Ts(e,h,Mr,jg,["setSelectedIndex",Ul]),this.registerOptions(e,l)}this.arity.leading.length>0&&Ts(e,l,Mr,ri,["setError","Not enough positional arguments"]);let c=l;for(let h=0;h0||h+1!==this.arity.leading.length)&&Ts(e,f,Mr,ri,["setError","Not enough positional arguments"]),Or(e,c,"isNotOptionLike",f,"pushPositional"),c=f}let u=c;if(this.arity.extra===Gi||this.arity.extra.length>0){let h=Rn(e,si());if(Yl(e,c,h),this.arity.extra===Gi){let f=Rn(e,si());this.arity.proxy||this.registerOptions(e,f),Or(e,c,s,f,"pushExtraNoLimits"),Or(e,f,s,f,"pushExtraNoLimits"),Yl(e,f,h)}else for(let f=0;f0&&Ts(e,u,Mr,ri,["setError","Not enough positional arguments"]);let g=u;for(let h=0;ho.length>s.length?o:s,"");if(i.arity===0)for(let s of i.names)Or(e,r,["isOption",s,i.hidden||s!==n],r,"pushTrue"),s.startsWith("--")&&!s.startsWith("--no-")&&Or(e,r,["isNegatedOption",s],r,["pushFalse",s]);else{let s=Rn(e,si());for(let o of i.names)Or(e,r,["isOption",o,i.hidden||o!==n],s,"pushUndefined");for(let o=0;o=0&&eEce(i,n),suggest:(n,s)=>mce(i,n,s)}}};var XO=80,vQ=Array(XO).fill("\u2501");for(let t=0;t<=24;++t)vQ[vQ.length-t]=`[38;5;${232+t}m\u2501`;var FQ={header:t=>`\u2501\u2501\u2501 ${t}${t.length`${t}`,error:t=>`${t}`,code:t=>`${t}`},ZO={header:t=>t,bold:t=>t,error:t=>t,code:t=>t};function Bce(t){let e=t.split(` +`),r=e.filter(n=>n.match(/\S/)),i=r.length>0?r.reduce((n,s)=>Math.min(n,s.length-s.trimStart().length),Number.MAX_VALUE):0;return e.map(n=>n.slice(i).trimRight()).join(` +`)}function An(t,{format:e,paragraphs:r}){return t=t.replace(/\r\n?/g,` +`),t=Bce(t),t=t.replace(/^\n+|\n+$/g,""),t=t.replace(/^(\s*)-([^\n]*?)\n+/gm,`$1-$2 -`),t=t.replace(/\n(\n)?\n*/g,"$1"),r&&(t=t.split(/\n/).map(i=>{let n=i.match(/^[*-][\t ]+(.*)/);return n?n[1].match(/(.{1,78})(?: |$)/g).map((s,o)=>(o===0?"- ":" ")+s).join(` -`):i.match(/(.{1,80})(?: |$)/g).join(` +`),t=t.replace(/\n(\n)?\n*/g,"$1"),r&&(t=t.split(/\n/).map(i=>{let n=i.match(/^\s*[*-][\t ]+(.*)/);if(!n)return i.match(/(.{1,80})(?: |$)/g).join(` +`);let s=i.length-i.trimStart().length;return n[1].match(new RegExp(`(.{1,${78-s}})(?: |$)`,"g")).map((o,a)=>" ".repeat(s)+(a===0?"- ":" ")+o).join(` `)}).join(` `)),t=t.replace(/(`+)((?:.|[\n])*?)\1/g,(i,n,s)=>e.code(n+s+n)),t=t.replace(/(\*\*)((?:.|[\n])*?)\1/g,(i,n,s)=>e.bold(n+s+n)),t?`${t} -`:""}var hg=class extends ce{constructor(e){super();this.contexts=e,this.commands=[]}static from(e,r){let i=new hg(r);i.path=e.path;for(let n of e.options)switch(n.name){case"-c":i.commands.push(Number(n.value));break;case"-i":i.index=Number(n.value);break}return i}async execute(){let e=this.commands;if(typeof this.index!="undefined"&&this.index>=0&&this.index1){this.context.stdout.write(`Multiple commands match your selection: +`:""}var Xg=class extends fe{constructor(e){super();this.contexts=e,this.commands=[]}static from(e,r){let i=new Xg(r);i.path=e.path;for(let n of e.options)switch(n.name){case"-c":i.commands.push(Number(n.value));break;case"-i":i.index=Number(n.value);break}return i}async execute(){let e=this.commands;if(typeof this.index!="undefined"&&this.index>=0&&this.index1){this.context.stdout.write(`Multiple commands match your selection: `),this.context.stdout.write(` `);let r=0;for(let i of this.commands)this.context.stdout.write(this.cli.usage(this.contexts[i].commandClass,{prefix:`${r++}. `.padStart(5)}));this.context.stdout.write(` `),this.context.stdout.write(`Run again with -h= to see the longer details of any of those commands. -`)}}};var NM=Symbol("clipanion/errorCommand");function Pae(){return process.env.FORCE_COLOR==="0"?!1:!!(process.env.FORCE_COLOR==="1"||typeof process.stdout!="undefined"&&process.stdout.isTTY)}var jn=class{constructor({binaryLabel:e,binaryName:r="...",binaryVersion:i,enableColors:n=Pae()}={}){this.registrations=new Map,this.builder=new gg({binaryName:r}),this.binaryLabel=e,this.binaryName=r,this.binaryVersion=i,this.enableColors=n}static from(e,r={}){let i=new jn(r);for(let n of e)i.register(n);return i}register(e){var r;let i=new Map,n=new e;for(let l in n){let c=n[l];typeof c=="object"&&c!==null&&c[ce.isOption]&&i.set(l,c)}let s=this.builder.command(),o=s.cliIndex,a=(r=e.paths)!==null&&r!==void 0?r:n.paths;if(typeof a!="undefined")for(let l of a)s.addPath(l);this.registrations.set(e,{specs:i,builder:s,index:o});for(let[l,{definition:c}]of i.entries())c(s,l);s.setContext({commandClass:e})}process(e){let{contexts:r,process:i}=this.builder.compile(),n=i(e);switch(n.selectedIndex){case Cl:return hg.from(n,r);default:{let{commandClass:s}=r[n.selectedIndex],o=this.registrations.get(s);if(typeof o=="undefined")throw new Error("Assertion failed: Expected the command class to have been registered.");let a=new s;a.path=n.path;try{for(let[l,{transformer:c}]of o.specs.entries())a[l]=c(o.builder,l,n);return a}catch(l){throw l[NM]=a,l}}break}}async run(e,r){let i;if(!Array.isArray(e))i=e;else try{i=this.process(e)}catch(s){return r.stdout.write(this.error(s)),1}if(i.help)return r.stdout.write(this.usage(i,{detailed:!0})),0;i.context=r,i.cli={binaryLabel:this.binaryLabel,binaryName:this.binaryName,binaryVersion:this.binaryVersion,enableColors:this.enableColors,definitions:()=>this.definitions(),error:(s,o)=>this.error(s,o),process:s=>this.process(s),run:(s,o)=>this.run(s,{...r,...o}),usage:(s,o)=>this.usage(s,o)};let n;try{n=await i.validateAndExecute().catch(s=>i.catch(s).then(()=>0))}catch(s){return r.stdout.write(this.error(s,{command:i})),1}return n}async runExit(e,r){process.exitCode=await this.run(e,r)}suggest(e,r){let{suggest:i}=this.builder.compile();return i(e,r)}definitions({colored:e=!1}={}){let r=[];for(let[i,{index:n}]of this.registrations){if(typeof i.usage=="undefined")continue;let{usage:s}=this.getUsageByIndex(n,{detailed:!1}),{usage:o,options:a}=this.getUsageByIndex(n,{detailed:!0,inlineOptions:!1}),l=typeof i.usage.category!="undefined"?Xi(i.usage.category,{format:this.format(e),paragraphs:!1}):void 0,c=typeof i.usage.description!="undefined"?Xi(i.usage.description,{format:this.format(e),paragraphs:!1}):void 0,u=typeof i.usage.details!="undefined"?Xi(i.usage.details,{format:this.format(e),paragraphs:!0}):void 0,g=typeof i.usage.examples!="undefined"?i.usage.examples.map(([h,f])=>[Xi(h,{format:this.format(e),paragraphs:!1}),f.replace(/\$0/g,this.binaryName)]):void 0;r.push({path:s,usage:o,category:l,description:c,details:u,examples:g,options:a})}return r}usage(e=null,{colored:r,detailed:i=!1,prefix:n="$ "}={}){let s=e!==null&&e instanceof ce?e.constructor:e,o="";if(s)if(i){let{description:a="",details:l="",examples:c=[]}=s.usage||{};a!==""&&(o+=Xi(a,{format:this.format(r),paragraphs:!1}).replace(/^./,h=>h.toUpperCase()),o+=` -`),(l!==""||c.length>0)&&(o+=`${this.format(r).header("Usage")} -`,o+=` -`);let{usage:u,options:g}=this.getUsageByRegistration(s,{inlineOptions:!1});if(o+=`${this.format(r).bold(n)}${u} -`,g.length>0){o+=` -`,o+=`${pw.header("Options")} -`;let h=g.reduce((f,p)=>Math.max(f,p.definition.length),0);o+=` -`;for(let{definition:f,description:p}of g)o+=` ${this.format(r).bold(f.padEnd(h))} ${Xi(p,{format:this.format(r),paragraphs:!1})}`}if(l!==""&&(o+=` -`,o+=`${this.format(r).header("Details")} -`,o+=` -`,o+=Xi(l,{format:this.format(r),paragraphs:!0})),c.length>0){o+=` -`,o+=`${this.format(r).header("Examples")} -`;for(let[h,f]of c)o+=` -`,o+=Xi(h,{format:this.format(r),paragraphs:!1}),o+=`${f.replace(/^/m,` ${this.format(r).bold(n)}`).replace(/\$0/g,this.binaryName)} -`}}else{let{usage:a}=this.getUsageByRegistration(s);o+=`${this.format(r).bold(n)}${a} -`}else{let a=new Map;for(let[g,{index:h}]of this.registrations.entries()){if(typeof g.usage=="undefined")continue;let f=typeof g.usage.category!="undefined"?Xi(g.usage.category,{format:this.format(r),paragraphs:!1}):null,p=a.get(f);typeof p=="undefined"&&a.set(f,p=[]);let{usage:m}=this.getUsageByIndex(h);p.push({commandClass:g,usage:m})}let l=Array.from(a.keys()).sort((g,h)=>g===null?-1:h===null?1:g.localeCompare(h,"en",{usage:"sort",caseFirst:"upper"})),c=typeof this.binaryLabel!="undefined",u=typeof this.binaryVersion!="undefined";c||u?(c&&u?o+=`${this.format(r).header(`${this.binaryLabel} - ${this.binaryVersion}`)} - -`:c?o+=`${this.format(r).header(`${this.binaryLabel}`)} -`:o+=`${this.format(r).header(`${this.binaryVersion}`)} -`,o+=` ${this.format(r).bold(n)}${this.binaryName} -`):o+=`${this.format(r).bold(n)}${this.binaryName} -`;for(let g of l){let h=a.get(g).slice().sort((p,m)=>p.usage.localeCompare(m.usage,"en",{usage:"sort",caseFirst:"upper"})),f=g!==null?g.trim():"General commands";o+=` -`,o+=`${this.format(r).header(`${f}`)} -`;for(let{commandClass:p,usage:m}of h){let I=p.usage.description||"undocumented";o+=` -`,o+=` ${this.format(r).bold(m)} -`,o+=` ${Xi(I,{format:this.format(r),paragraphs:!1})}`}}o+=` -`,o+=Xi("You can also print more details about any of these commands by calling them with the `-h,--help` flag right after the command name.",{format:this.format(r),paragraphs:!0})}return o}error(e,r){var i,{colored:n,command:s=(i=e[NM])!==null&&i!==void 0?i:null}=r===void 0?{}:r;e instanceof Error||(e=new Error(`Execution failed with a non-error rejection (rejected value: ${JSON.stringify(e)})`));let o="",a=e.name.replace(/([a-z])([A-Z])/g,"$1 $2");a==="Error"&&(a="Internal Error"),o+=`${this.format(n).error(a)}: ${e.message} +`)}}};var _O=Symbol("clipanion/errorCommand");function wce(){return process.env.FORCE_COLOR==="0"?!1:!!(process.env.FORCE_COLOR==="1"||typeof process.stdout!="undefined"&&process.stdout.isTTY)}var rs=class{constructor({binaryLabel:e,binaryName:r="...",binaryVersion:i,enableColors:n=wce()}={}){this.registrations=new Map,this.builder=new Vg({binaryName:r}),this.binaryLabel=e,this.binaryName=r,this.binaryVersion=i,this.enableColors=n}static from(e,r={}){let i=new rs(r);for(let n of e)i.register(n);return i}register(e){var r;let i=new Map,n=new e;for(let l in n){let c=n[l];typeof c=="object"&&c!==null&&c[fe.isOption]&&i.set(l,c)}let s=this.builder.command(),o=s.cliIndex,a=(r=e.paths)!==null&&r!==void 0?r:n.paths;if(typeof a!="undefined")for(let l of a)s.addPath(l);this.registrations.set(e,{specs:i,builder:s,index:o});for(let[l,{definition:c}]of i.entries())c(s,l);s.setContext({commandClass:e})}process(e){let{contexts:r,process:i}=this.builder.compile(),n=i(e);switch(n.selectedIndex){case Ul:return Xg.from(n,r);default:{let{commandClass:s}=r[n.selectedIndex],o=this.registrations.get(s);if(typeof o=="undefined")throw new Error("Assertion failed: Expected the command class to have been registered.");let a=new s;a.path=n.path;try{for(let[l,{transformer:c}]of o.specs.entries())a[l]=c(o.builder,l,n);return a}catch(l){throw l[_O]=a,l}}break}}async run(e,r){let i;if(!Array.isArray(e))i=e;else try{i=this.process(e)}catch(s){return r.stdout.write(this.error(s)),1}if(i.help)return r.stdout.write(this.usage(i,{detailed:!0})),0;i.context=r,i.cli={binaryLabel:this.binaryLabel,binaryName:this.binaryName,binaryVersion:this.binaryVersion,enableColors:this.enableColors,definitions:()=>this.definitions(),error:(s,o)=>this.error(s,o),process:s=>this.process(s),run:(s,o)=>this.run(s,k(k({},r),o)),usage:(s,o)=>this.usage(s,o)};let n;try{n=await i.validateAndExecute().catch(s=>i.catch(s).then(()=>0))}catch(s){return r.stdout.write(this.error(s,{command:i})),1}return n}async runExit(e,r){process.exitCode=await this.run(e,r)}suggest(e,r){let{suggest:i}=this.builder.compile();return i(e,r)}definitions({colored:e=!1}={}){let r=[];for(let[i,{index:n}]of this.registrations){if(typeof i.usage=="undefined")continue;let{usage:s}=this.getUsageByIndex(n,{detailed:!1}),{usage:o,options:a}=this.getUsageByIndex(n,{detailed:!0,inlineOptions:!1}),l=typeof i.usage.category!="undefined"?An(i.usage.category,{format:this.format(e),paragraphs:!1}):void 0,c=typeof i.usage.description!="undefined"?An(i.usage.description,{format:this.format(e),paragraphs:!1}):void 0,u=typeof i.usage.details!="undefined"?An(i.usage.details,{format:this.format(e),paragraphs:!0}):void 0,g=typeof i.usage.examples!="undefined"?i.usage.examples.map(([h,f])=>[An(h,{format:this.format(e),paragraphs:!1}),f.replace(/\$0/g,this.binaryName)]):void 0;r.push({path:s,usage:o,category:l,description:c,details:u,examples:g,options:a})}return r}usage(e=null,{colored:r,detailed:i=!1,prefix:n="$ "}={}){var s;if(e===null)for(let l of this.registrations.keys()){let c=l.paths,u=typeof l.usage!="undefined";if(!c||c.length===0||c.length===1&&c[0].length===0||((s=c==null?void 0:c.some(f=>f.length===0))!==null&&s!==void 0?s:!1))if(e){e=null;break}else e=l;else if(u){e=null;continue}}let o=e!==null&&e instanceof fe?e.constructor:e,a="";if(o)if(i){let{description:l="",details:c="",examples:u=[]}=o.usage||{};l!==""&&(a+=An(l,{format:this.format(r),paragraphs:!1}).replace(/^./,f=>f.toUpperCase()),a+=` +`),(c!==""||u.length>0)&&(a+=`${this.format(r).header("Usage")} +`,a+=` +`);let{usage:g,options:h}=this.getUsageByRegistration(o,{inlineOptions:!1});if(a+=`${this.format(r).bold(n)}${g} +`,h.length>0){a+=` +`,a+=`${FQ.header("Options")} +`;let f=h.reduce((p,m)=>Math.max(p,m.definition.length),0);a+=` +`;for(let{definition:p,description:m}of h)a+=` ${this.format(r).bold(p.padEnd(f))} ${An(m,{format:this.format(r),paragraphs:!1})}`}if(c!==""&&(a+=` +`,a+=`${this.format(r).header("Details")} +`,a+=` +`,a+=An(c,{format:this.format(r),paragraphs:!0})),u.length>0){a+=` +`,a+=`${this.format(r).header("Examples")} +`;for(let[f,p]of u)a+=` +`,a+=An(f,{format:this.format(r),paragraphs:!1}),a+=`${p.replace(/^/m,` ${this.format(r).bold(n)}`).replace(/\$0/g,this.binaryName)} +`}}else{let{usage:l}=this.getUsageByRegistration(o);a+=`${this.format(r).bold(n)}${l} +`}else{let l=new Map;for(let[h,{index:f}]of this.registrations.entries()){if(typeof h.usage=="undefined")continue;let p=typeof h.usage.category!="undefined"?An(h.usage.category,{format:this.format(r),paragraphs:!1}):null,m=l.get(p);typeof m=="undefined"&&l.set(p,m=[]);let{usage:I}=this.getUsageByIndex(f);m.push({commandClass:h,usage:I})}let c=Array.from(l.keys()).sort((h,f)=>h===null?-1:f===null?1:h.localeCompare(f,"en",{usage:"sort",caseFirst:"upper"})),u=typeof this.binaryLabel!="undefined",g=typeof this.binaryVersion!="undefined";u||g?(u&&g?a+=`${this.format(r).header(`${this.binaryLabel} - ${this.binaryVersion}`)} + +`:u?a+=`${this.format(r).header(`${this.binaryLabel}`)} +`:a+=`${this.format(r).header(`${this.binaryVersion}`)} +`,a+=` ${this.format(r).bold(n)}${this.binaryName} +`):a+=`${this.format(r).bold(n)}${this.binaryName} +`;for(let h of c){let f=l.get(h).slice().sort((m,I)=>m.usage.localeCompare(I.usage,"en",{usage:"sort",caseFirst:"upper"})),p=h!==null?h.trim():"General commands";a+=` +`,a+=`${this.format(r).header(`${p}`)} +`;for(let{commandClass:m,usage:I}of f){let y=m.usage.description||"undocumented";a+=` +`,a+=` ${this.format(r).bold(I)} +`,a+=` ${An(y,{format:this.format(r),paragraphs:!1})}`}}a+=` +`,a+=An("You can also print more details about any of these commands by calling them with the `-h,--help` flag right after the command name.",{format:this.format(r),paragraphs:!0})}return a}error(e,r){var i,{colored:n,command:s=(i=e[_O])!==null&&i!==void 0?i:null}=r===void 0?{}:r;e instanceof Error||(e=new Error(`Execution failed with a non-error rejection (rejected value: ${JSON.stringify(e)})`));let o="",a=e.name.replace(/([a-z])([A-Z])/g,"$1 $2");a==="Error"&&(a="Internal Error"),o+=`${this.format(n).error(a)}: ${e.message} `;let l=e.clipanion;return typeof l!="undefined"?l.type==="usage"&&(o+=` `,o+=this.usage(s)):e.stack&&(o+=`${e.stack.replace(/^.*\n/,"")} -`),o}getUsageByRegistration(e,r){let i=this.registrations.get(e);if(typeof i=="undefined")throw new Error("Assertion failed: Unregistered command");return this.getUsageByIndex(i.index,r)}getUsageByIndex(e,r){return this.builder.getBuilderByIndex(e).usage(r)}format(e=this.enableColors){return e?pw:MM}};jn.defaultContext={stdin:process.stdin,stdout:process.stdout,stderr:process.stderr};var dw={};We(dw,{DefinitionsCommand:()=>iC,HelpCommand:()=>nC,VersionCommand:()=>sC});var iC=class extends ce{async execute(){this.context.stdout.write(`${JSON.stringify(this.cli.definitions(),null,2)} -`)}};iC.path=[["--clipanion=definitions"]];var nC=class extends ce{async execute(){this.context.stdout.write(this.cli.usage(null))}};nC.paths=[["-h"],["--help"]];var sC=class extends ce{async execute(){var e;this.context.stdout.write(`${(e=this.cli.binaryVersion)!==null&&e!==void 0?e:""} -`)}};sC.paths=[["-v"],["--version"]];var j={};We(j,{Array:()=>OM,Boolean:()=>TM,Counter:()=>KM,Proxy:()=>UM,Rest:()=>HM,String:()=>YM,applyValidator:()=>$d,cleanValidationError:()=>_d,formatError:()=>cg,isOptionSymbol:()=>lg,makeCommandOption:()=>Xr,rerouteArguments:()=>Yn});function OM(t,e,r){let[i,n]=Yn(e,r!=null?r:{}),{arity:s=1}=n,o=t.split(","),a=new Set(o);return Xr({definition(l){l.addOption({names:o,arity:s,hidden:n==null?void 0:n.hidden,description:n==null?void 0:n.description,required:n.required})},transformer(l,c,u){let g=typeof i!="undefined"?[...i]:void 0;for(let{name:h,value:f}of u.options)!a.has(h)||(g=g!=null?g:[],g.push(f));return g}})}function TM(t,e,r){let[i,n]=Yn(e,r!=null?r:{}),s=t.split(","),o=new Set(s);return Xr({definition(a){a.addOption({names:s,allowBinding:!1,arity:0,hidden:n.hidden,description:n.description,required:n.required})},transformer(a,l,c){let u=i;for(let{name:g,value:h}of c.options)!o.has(g)||(u=h);return u}})}function KM(t,e,r){let[i,n]=Yn(e,r!=null?r:{}),s=t.split(","),o=new Set(s);return Xr({definition(a){a.addOption({names:s,allowBinding:!1,arity:0,hidden:n.hidden,description:n.description,required:n.required})},transformer(a,l,c){let u=i;for(let{name:g,value:h}of c.options)!o.has(g)||(u!=null||(u=0),h?u+=1:u=0);return u}})}function UM(t={}){return Xr({definition(e,r){var i;e.addProxy({name:(i=t.name)!==null&&i!==void 0?i:r,required:t.required})},transformer(e,r,i){return i.positionals.map(({value:n})=>n)}})}function HM(t={}){return Xr({definition(e,r){var i;e.addRest({name:(i=t.name)!==null&&i!==void 0?i:r,required:t.required})},transformer(e,r,i){let n=o=>{let a=i.positionals[o];return a.extra===vi||a.extra===!1&&oo)}})}function xae(t,e,r){let[i,n]=Yn(e,r!=null?r:{}),{arity:s=1}=n,o=t.split(","),a=new Set(o);return Xr({definition(l){l.addOption({names:o,arity:n.tolerateBoolean?0:s,hidden:n.hidden,description:n.description,required:n.required})},transformer(l,c,u){let g,h=i;for(let{name:f,value:p}of u.options)!a.has(f)||(g=f,h=p);return typeof h=="string"?$d(g!=null?g:c,h,n.validator):h}})}function kae(t={}){let{required:e=!0}=t;return Xr({definition(r,i){var n;r.addPositional({name:(n=t.name)!==null&&n!==void 0?n:i,required:t.required})},transformer(r,i,n){for(let s=0;sgU,areIdentsEqual:()=>Tg,areLocatorsEqual:()=>e0,areVirtualPackagesEquivalent:()=>afe,bindDescriptor:()=>sfe,bindLocator:()=>ofe,convertDescriptorToLocator:()=>WC,convertLocatorToDescriptor:()=>zC,convertPackageToLocator:()=>nfe,convertToIdent:()=>ife,convertToManifestRange:()=>cfe,copyPackage:()=>Mg,devirtualizeDescriptor:()=>Ng,devirtualizeLocator:()=>Og,getIdentVendorPath:()=>ufe,isVirtualDescriptor:()=>So,isVirtualLocator:()=>Wn,makeDescriptor:()=>Yt,makeIdent:()=>Do,makeLocator:()=>$r,makeRange:()=>XC,parseDescriptor:()=>Po,parseFileStyleRange:()=>Afe,parseIdent:()=>di,parseLocator:()=>Ga,parseRange:()=>Fl,prettyDependent:()=>n0,prettyDescriptor:()=>Rt,prettyIdent:()=>fr,prettyLocator:()=>$e,prettyLocatorNoColors:()=>r0,prettyRange:()=>qC,prettyReference:()=>Ug,prettyResolution:()=>i0,prettyWorkspace:()=>Hg,renamePackage:()=>Lg,slugifyIdent:()=>t0,slugifyLocator:()=>Rl,sortDescriptors:()=>Ll,stringifyDescriptor:()=>Ci,stringifyIdent:()=>gt,stringifyLocator:()=>tn,tryParseDescriptor:()=>Kg,tryParseIdent:()=>hU,tryParseLocator:()=>fU,virtualizeDescriptor:()=>_Q,virtualizePackage:()=>$Q});var vl=X(require("querystring")),cU=X(hr());var pi={};We(pi,{checksumFile:()=>jC,checksumPattern:()=>GC,makeHash:()=>_r});var YC=X(require("crypto")),VQ=X(XQ());function _r(...t){let e=YC.createHash("sha512"),r="";for(let i of t)typeof i=="string"?r+=i:i&&(r&&(e.update(r),r=""),e.update(i));return r&&e.update(r),e.digest("hex")}async function jC(t,{baseFs:e,algorithm:r}={baseFs:R,algorithm:"sha512"}){let i=await e.openPromise(t,"r");try{let n=65536,s=Buffer.allocUnsafeSlow(n),o=YC.createHash(r),a=0;for(;(a=await e.readPromise(i,s,0,n))!==0;)o.update(a===n?s:s.slice(0,a));return o.digest("hex")}finally{await e.closePromise(i)}}async function GC(t,{cwd:e}){let i=(await VQ.default(t,{cwd:npath.fromPortablePath(e),expandDirectories:!1,onlyDirectories:!0,unique:!0})).map(a=>`${a}/**/*`),n=await VQ.default([t,...i],{cwd:npath.fromPortablePath(e),expandDirectories:!1,onlyFiles:!1,unique:!0});n.sort();let s=await Promise.all(n.map(async a=>{let l=[Buffer.from(a)],c=npath.toPortablePath(a),u=await R.lstatPromise(c);return u.isSymbolicLink()?l.push(Buffer.from(await R.readlinkPromise(c))):u.isFile()&&l.push(await R.readFilePromise(c)),l.join("\0")})),o=YC.createHash("sha512");for(let a of s)o.update(a);return o.digest("hex")}var uU=X(Zi());var JC="virtual:",rfe=5;function Do(t,e){if(t==null?void 0:t.startsWith("@"))throw new Error("Invalid scope: don't prefix it with '@'");return{identHash:_r(t,e),scope:t,name:e}}function Yt(t,e){return{identHash:t.identHash,scope:t.scope,name:t.name,descriptorHash:_r(t.identHash,e),range:e}}function $r(t,e){return{identHash:t.identHash,scope:t.scope,name:t.name,locatorHash:_r(t.identHash,e),reference:e}}function ife(t){return{identHash:t.identHash,scope:t.scope,name:t.name}}function WC(t){return{identHash:t.identHash,scope:t.scope,name:t.name,locatorHash:t.descriptorHash,reference:t.range}}function zC(t){return{identHash:t.identHash,scope:t.scope,name:t.name,descriptorHash:t.locatorHash,range:t.reference}}function nfe(t){return{identHash:t.identHash,scope:t.scope,name:t.name,locatorHash:t.locatorHash,reference:t.reference}}function Lg(t,e){return{identHash:e.identHash,scope:e.scope,name:e.name,locatorHash:e.locatorHash,reference:e.reference,version:t.version,languageName:t.languageName,linkType:t.linkType,dependencies:new Map(t.dependencies),peerDependencies:new Map(t.peerDependencies),dependenciesMeta:new Map(t.dependenciesMeta),peerDependenciesMeta:new Map(t.peerDependenciesMeta),bin:new Map(t.bin)}}function Mg(t){return Lg(t,t)}function _Q(t,e){if(e.includes("#"))throw new Error("Invalid entropy");return Yt(t,`virtual:${e}#${t.range}`)}function $Q(t,e){if(e.includes("#"))throw new Error("Invalid entropy");return Lg(t,$r(t,`virtual:${e}#${t.reference}`))}function So(t){return t.range.startsWith(JC)}function Wn(t){return t.reference.startsWith(JC)}function Ng(t){if(!So(t))throw new Error("Not a virtual descriptor");return Yt(t,t.range.replace(/^[^#]*#/,""))}function Og(t){if(!Wn(t))throw new Error("Not a virtual descriptor");return $r(t,t.reference.replace(/^[^#]*#/,""))}function sfe(t,e){return t.range.includes("::")?t:Yt(t,`${t.range}::${vl.default.stringify(e)}`)}function ofe(t,e){return t.reference.includes("::")?t:$r(t,`${t.reference}::${vl.default.stringify(e)}`)}function Tg(t,e){return t.identHash===e.identHash}function gU(t,e){return t.descriptorHash===e.descriptorHash}function e0(t,e){return t.locatorHash===e.locatorHash}function afe(t,e){if(!Wn(t))throw new Error("Invalid package type");if(!Wn(e))throw new Error("Invalid package type");if(!Tg(t,e)||t.dependencies.size!==e.dependencies.size)return!1;for(let r of t.dependencies.values()){let i=e.dependencies.get(r.identHash);if(!i||!gU(r,i))return!1}return!0}function di(t){let e=hU(t);if(!e)throw new Error(`Invalid ident (${t})`);return e}function hU(t){let e=t.match(/^(?:@([^/]+?)\/)?([^/]+)$/);if(!e)return null;let[,r,i]=e,n=typeof r!="undefined"?r:null;return Do(n,i)}function Po(t,e=!1){let r=Kg(t,e);if(!r)throw new Error(`Invalid descriptor (${t})`);return r}function Kg(t,e=!1){let r=e?t.match(/^(?:@([^/]+?)\/)?([^/]+?)(?:@(.+))$/):t.match(/^(?:@([^/]+?)\/)?([^/]+?)(?:@(.+))?$/);if(!r)return null;let[,i,n,s]=r;if(s==="unknown")throw new Error(`Invalid range (${t})`);let o=typeof i!="undefined"?i:null,a=typeof s!="undefined"?s:"unknown";return Yt(Do(o,n),a)}function Ga(t,e=!1){let r=fU(t,e);if(!r)throw new Error(`Invalid locator (${t})`);return r}function fU(t,e=!1){let r=e?t.match(/^(?:@([^/]+?)\/)?([^/]+?)(?:@(.+))$/):t.match(/^(?:@([^/]+?)\/)?([^/]+?)(?:@(.+))?$/);if(!r)return null;let[,i,n,s]=r;if(s==="unknown")throw new Error(`Invalid reference (${t})`);let o=typeof i!="undefined"?i:null,a=typeof s!="undefined"?s:"unknown";return $r(Do(o,n),a)}function Fl(t,e){let r=t.match(/^([^#:]*:)?((?:(?!::)[^#])*)(?:#((?:(?!::).)*))?(?:::(.*))?$/);if(r===null)throw new Error(`Invalid range (${t})`);let i=typeof r[1]!="undefined"?r[1]:null;if(typeof(e==null?void 0:e.requireProtocol)=="string"&&i!==e.requireProtocol)throw new Error(`Invalid protocol (${i})`);if((e==null?void 0:e.requireProtocol)&&i===null)throw new Error(`Missing protocol (${i})`);let n=typeof r[3]!="undefined"?decodeURIComponent(r[2]):null;if((e==null?void 0:e.requireSource)&&n===null)throw new Error(`Missing source (${t})`);let s=typeof r[3]!="undefined"?decodeURIComponent(r[3]):decodeURIComponent(r[2]),o=(e==null?void 0:e.parseSelector)?vl.default.parse(s):s,a=typeof r[4]!="undefined"?vl.default.parse(r[4]):null;return{protocol:i,source:n,selector:o,params:a}}function Afe(t,{protocol:e}){let{selector:r,params:i}=Fl(t,{requireProtocol:e,requireBindings:!0});if(typeof i.locator!="string")throw new Error(`Assertion failed: Invalid bindings for ${t}`);return{parentLocator:Ga(i.locator,!0),path:r}}function pU(t){return t=t.replace(/%/g,"%25"),t=t.replace(/:/g,"%3A"),t=t.replace(/#/g,"%23"),t}function lfe(t){return t===null?!1:Object.entries(t).length>0}function XC({protocol:t,source:e,selector:r,params:i}){let n="";return t!==null&&(n+=`${t}`),e!==null&&(n+=`${pU(e)}#`),n+=pU(r),lfe(i)&&(n+=`::${vl.default.stringify(i)}`),n}function cfe(t){let{params:e,protocol:r,source:i,selector:n}=Fl(t);for(let s in e)s.startsWith("__")&&delete e[s];return XC({protocol:r,source:i,params:e,selector:n})}function gt(t){return t.scope?`@${t.scope}/${t.name}`:`${t.name}`}function Ci(t){return t.scope?`@${t.scope}/${t.name}@${t.range}`:`${t.name}@${t.range}`}function tn(t){return t.scope?`@${t.scope}/${t.name}@${t.reference}`:`${t.name}@${t.reference}`}function t0(t){return t.scope!==null?`@${t.scope}-${t.name}`:t.name}function Rl(t){let{protocol:e,selector:r}=Fl(t.reference),i=e!==null?e.replace(/:$/,""):"exotic",n=cU.default.valid(r),s=n!==null?`${i}-${n}`:`${i}`,o=10,a=t.scope?`${t0(t)}-${s}-${t.locatorHash.slice(0,o)}`:`${t0(t)}-${s}-${t.locatorHash.slice(0,o)}`;return Ut(a)}function fr(t,e){return e.scope?`${Ue(t,`@${e.scope}/`,be.SCOPE)}${Ue(t,e.name,be.NAME)}`:`${Ue(t,e.name,be.NAME)}`}function VC(t){if(t.startsWith(JC)){let e=VC(t.substr(t.indexOf("#")+1)),r=t.substr(JC.length,rfe);return`${e} [${r}]`}else return t.replace(/\?.*/,"?[...]")}function qC(t,e){return`${Ue(t,VC(e),be.RANGE)}`}function Rt(t,e){return`${fr(t,e)}${Ue(t,"@",be.RANGE)}${qC(t,e.range)}`}function Ug(t,e){return`${Ue(t,VC(e),be.REFERENCE)}`}function $e(t,e){return`${fr(t,e)}${Ue(t,"@",be.REFERENCE)}${Ug(t,e.reference)}`}function r0(t){return`${gt(t)}@${VC(t.reference)}`}function Ll(t){return uU.sortMap(t,[e=>gt(e),e=>e.range])}function Hg(t,e){return fr(t,e.locator)}function i0(t,e,r){let i=So(e)?Ng(e):e;return r===null?`${Rt(t,i)} \u2192 ${ZQ(t).Cross}`:i.identHash===r.identHash?`${Rt(t,i)} \u2192 ${Ug(t,r.reference)}`:`${Rt(t,i)} \u2192 ${$e(t,r)}`}function n0(t,e,r){return r===null?`${$e(t,e)}`:`${$e(t,e)} (via ${qC(t,r.range)})`}function ufe(t){return`node_modules/${gt(t)}`}var nt;(function(t){t.HARD="HARD",t.SOFT="SOFT"})(nt||(nt={}));var yr;(function(t){t.Dependency="Dependency",t.PeerDependency="PeerDependency",t.PeerDependencyMeta="PeerDependencyMeta"})(yr||(yr={}));var Or;(function(t){t.Inactive="inactive",t.Redundant="redundant",t.Active="active"})(Or||(Or={}));var be={NO_HINT:"NO_HINT",NULL:"NULL",SCOPE:"SCOPE",NAME:"NAME",RANGE:"RANGE",REFERENCE:"REFERENCE",NUMBER:"NUMBER",PATH:"PATH",URL:"URL",ADDED:"ADDED",REMOVED:"REMOVED",CODE:"CODE",DURATION:"DURATION",SIZE:"SIZE",IDENT:"IDENT",DESCRIPTOR:"DESCRIPTOR",LOCATOR:"LOCATOR",RESOLUTION:"RESOLUTION",DEPENDENT:"DEPENDENT",PACKAGE_EXTENSION:"PACKAGE_EXTENSION",SETTING:"SETTING"},qa;(function(t){t[t.BOLD=2]="BOLD"})(qa||(qa={}));var s0=process.env.GITHUB_ACTIONS?{level:2}:Yg.default.supportsColor?{level:Yg.default.supportsColor.level}:{level:0},ZC=s0.level!==0,o0=ZC&&!process.env.GITHUB_ACTIONS&&!dU.CIRCLE,a0=new Yg.default.Instance(s0),gfe=new Map([[be.NO_HINT,null],[be.NULL,["#a853b5",129]],[be.SCOPE,["#d75f00",166]],[be.NAME,["#d7875f",173]],[be.RANGE,["#00afaf",37]],[be.REFERENCE,["#87afff",111]],[be.NUMBER,["#ffd700",220]],[be.PATH,["#d75fd7",170]],[be.URL,["#d75fd7",170]],[be.ADDED,["#5faf00",70]],[be.REMOVED,["#d70000",160]],[be.CODE,["#87afff",111]],[be.SIZE,["#ffd700",220]]]),bn=t=>t,_C={[be.NUMBER]:bn({pretty:(t,e)=>`${e}`,json:t=>t}),[be.IDENT]:bn({pretty:(t,e)=>fr(t,e),json:t=>gt(t)}),[be.LOCATOR]:bn({pretty:(t,e)=>$e(t,e),json:t=>tn(t)}),[be.DESCRIPTOR]:bn({pretty:(t,e)=>Rt(t,e),json:t=>Ci(t)}),[be.RESOLUTION]:bn({pretty:(t,{descriptor:e,locator:r})=>i0(t,e,r),json:({descriptor:t,locator:e})=>({descriptor:Ci(t),locator:e!==null?tn(e):null})}),[be.DEPENDENT]:bn({pretty:(t,{locator:e,descriptor:r})=>n0(t,e,r),json:({locator:t,descriptor:e})=>({locator:tn(t),descriptor:Ci(e)})}),[be.PACKAGE_EXTENSION]:bn({pretty:(t,e)=>{switch(e.type){case yr.Dependency:return`${fr(t,e.parentDescriptor)} \u27A4 ${Li(t,"dependencies",be.CODE)} \u27A4 ${fr(t,e.descriptor)}`;case yr.PeerDependency:return`${fr(t,e.parentDescriptor)} \u27A4 ${Li(t,"peerDependencies",be.CODE)} \u27A4 ${fr(t,e.descriptor)}`;case yr.PeerDependencyMeta:return`${fr(t,e.parentDescriptor)} \u27A4 ${Li(t,"peerDependenciesMeta",be.CODE)} \u27A4 ${fr(t,di(e.selector))} \u27A4 ${Li(t,e.key,be.CODE)}`;default:throw new Error(`Assertion failed: Unsupported package extension type: ${e.type}`)}},json:t=>{switch(t.type){case yr.Dependency:return`${gt(t.parentDescriptor)} > ${gt(t.descriptor)}`;case yr.PeerDependency:return`${gt(t.parentDescriptor)} >> ${gt(t.descriptor)}`;case yr.PeerDependencyMeta:return`${gt(t.parentDescriptor)} >> ${t.selector} / ${t.key}`;default:throw new Error(`Assertion failed: Unsupported package extension type: ${t.type}`)}}}),[be.SETTING]:bn({pretty:(t,e)=>(t.get(e),Ml(t,Li(t,e,be.CODE),`https://yarnpkg.com/configuration/yarnrc#${e}`)),json:t=>t}),[be.DURATION]:bn({pretty:(t,e)=>{if(e>1e3*60){let r=Math.floor(e/1e3/60),i=Math.ceil((e-r*60*1e3)/1e3);return i===0?`${r}m`:`${r}m ${i}s`}else{let r=Math.floor(e/1e3),i=e-r*1e3;return i===0?`${r}s`:`${r}s ${i}ms`}},json:t=>t}),[be.SIZE]:bn({pretty:(t,e)=>{let r=["KB","MB","GB","TB"],i=r.length;for(;i>1&&e<1024**i;)i-=1;let n=1024**i,s=Math.floor(e*100/n)/100;return Li(t,`${s} ${r[i-1]}`,be.NUMBER)},json:t=>t}),[be.PATH]:bn({pretty:(t,e)=>Li(t,npath.fromPortablePath(e),be.PATH),json:t=>npath.fromPortablePath(t)})};function Ja(t,e){return[e,t]}function $C(t,e,r){return t.get("enableColors")&&r&2&&(e=Yg.default.bold(e)),e}function Li(t,e,r){if(!t.get("enableColors"))return e;let i=gfe.get(r);if(i===null)return e;let n=typeof i=="undefined"?r:s0.level>=3?i[0]:i[1],s=typeof n=="number"?a0.ansi256(n):n.startsWith("#")?a0.hex(n):a0[n];if(typeof s!="function")throw new Error(`Invalid format type ${n}`);return s(e)}var hfe=!!process.env.KONSOLE_VERSION;function Ml(t,e,r){return t.get("enableHyperlinks")?hfe?`]8;;${r}\\${e}]8;;\\`:`]8;;${r}\x07${e}]8;;\x07`:e}function Ue(t,e,r){if(e===null)return Li(t,"null",be.NULL);if(Object.prototype.hasOwnProperty.call(_C,r))return _C[r].pretty(t,e);if(typeof e!="string")throw new Error(`Assertion failed: Expected the value to be a string, got ${typeof e}`);return Li(t,e,r)}function A0(t,e,r,{separator:i=", "}={}){return[...e].map(n=>Ue(t,n,r)).join(i)}function Nl(t,e){if(t===null)return null;if(Object.prototype.hasOwnProperty.call(_C,e))return mU.overrideType(e),_C[e].json(t);if(typeof t!="string")throw new Error(`Assertion failed: Expected the value to be a string, got ${typeof t}`);return t}function ZQ(t){return{Check:Li(t,"\u2713","green"),Cross:Li(t,"\u2718","red"),Question:Li(t,"?","cyan")}}function Wa(t,{label:e,value:[r,i]}){return`${Ue(t,e,be.CODE)}: ${Ue(t,r,i)}`}var Dn;(function(t){t.Error="error",t.Warning="warning",t.Info="info",t.Discard="discard"})(Dn||(Dn={}));function jg(t,{configuration:e}){let r=e.get("logFilters"),i=new Map,n=new Map;for(let u of r){let g=u.get("level");if(typeof g=="undefined")continue;let h=u.get("code");typeof h!="undefined"&&i.set(h,g);let f=u.get("text");typeof f!="undefined"&&n.set(f,g)}let s=(u,g,h)=>{if(u===null||u===J.UNNAMED)return h;if(n.size>0){let f=n.get(CU.default(g));if(typeof f!="undefined")return f!=null?f:h}if(i.size>0){let f=i.get(Vd(u));if(typeof f!="undefined")return f!=null?f:h}return h},o=t.reportInfo,a=t.reportWarning,l=t.reportError,c=function(u,g,h,f){switch(s(g,h,f)){case Dn.Info:o.call(u,g,h);break;case Dn.Warning:a.call(u,g!=null?g:J.UNNAMED,h);break;case Dn.Error:l.call(u,g!=null?g:J.UNNAMED,h);break}};t.reportInfo=function(...u){return c(this,...u,Dn.Info)},t.reportWarning=function(...u){return c(this,...u,Dn.Warning)},t.reportError=function(...u){return c(this,...u,Dn.Error)}}var Mt={};We(Mt,{Method:()=>Xa,RequestError:()=>sY.RequestError,del:()=>SCe,get:()=>bCe,getNetworkSettings:()=>lY,post:()=>Db,put:()=>DCe,request:()=>eh});var rY=X(Cm()),iY=X(require("https")),nY=X(require("http")),wb=X(Qn()),Qb=X($H()),mm=X(require("url"));var eY=X(require("stream")),tY=X(require("string_decoder"));var Ge=class extends Error{constructor(e,r,i){super(r);this.reportExtra=i;this.reportCode=e}};function ECe(t){return typeof t.reportCode!="undefined"}var ti=class{constructor(){this.reportedInfos=new Set;this.reportedWarnings=new Set;this.reportedErrors=new Set}static progressViaCounter(e){let r=0,i,n=new Promise(l=>{i=l}),s=l=>{let c=i;n=new Promise(u=>{i=u}),r=l,c()},o=(l=0)=>{s(r+1)},a=async function*(){for(;r{let o=i.write(s),a;do if(a=o.indexOf(` -`),a!==-1){let l=n+o.substr(0,a);o=o.substr(a+1),n="",e!==null?this.reportInfo(null,`${e} ${l}`):this.reportInfo(null,l)}while(a!==-1);n+=o}),r.on("end",()=>{let s=i.end();s!==""&&(e!==null?this.reportInfo(null,`${e} ${s}`):this.reportInfo(null,s))}),r}};var bb=X(Zi()),sY=X(Cm()),oY=new Map,aY=new Map,yCe=new nY.Agent({keepAlive:!0}),BCe=new iY.Agent({keepAlive:!0});function AY(t){let e=new mm.URL(t),r={host:e.hostname,headers:{}};return e.port&&(r.port=Number(e.port)),{proxy:r}}async function wCe(t){return bb.getFactoryWithDefault(aY,t,()=>R.readFilePromise(t).then(e=>(aY.set(t,e),e)))}function QCe({statusCode:t,statusMessage:e},r){let i=Ue(r,t,be.NUMBER),n=`https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/${t}`;return Ml(r,`${i}${e?` (${e})`:""}`,n)}async function Im(t,{configuration:e,customErrorMessage:r}){var i,n;try{return await t}catch(s){if(s.name!=="HTTPError")throw s;let o=(n=r==null?void 0:r(s))!=null?n:(i=s.response.body)==null?void 0:i.error;o==null&&(s.message.startsWith("Response code")?o="The remote server failed to provide the requested resource":o=s.message),s instanceof rY.TimeoutError&&s.event==="socket"&&(o+=`(can be increased via ${Ue(e,"httpTimeout",be.SETTING)})`);let a=new Ge(J.NETWORK_ERROR,o,l=>{s.response&&l.reportError(J.NETWORK_ERROR,` ${Wa(e,{label:"Response Code",value:Ja(be.NO_HINT,QCe(s.response,e))})}`),s.request&&(l.reportError(J.NETWORK_ERROR,` ${Wa(e,{label:"Request Method",value:Ja(be.NO_HINT,s.request.options.method)})}`),l.reportError(J.NETWORK_ERROR,` ${Wa(e,{label:"Request URL",value:Ja(be.URL,s.request.requestUrl)})}`)),s.request.redirects.length>0&&l.reportError(J.NETWORK_ERROR,` ${Wa(e,{label:"Request Redirects",value:Ja(be.NO_HINT,A0(e,s.request.redirects,be.URL))})}`),s.request.retryCount===s.request.options.retry.limit&&l.reportError(J.NETWORK_ERROR,` ${Wa(e,{label:"Request Retry Count",value:Ja(be.NO_HINT,`${Ue(e,s.request.retryCount,be.NUMBER)} (can be increased via ${Ue(e,"httpRetry",be.SETTING)})`)})}`)});throw a.originalError=s,a}}function lY(t,e){let r=[...e.configuration.get("networkSettings")].sort(([o],[a])=>a.length-o.length),i={enableNetwork:void 0,caFilePath:void 0,httpProxy:void 0,httpsProxy:void 0},n=Object.keys(i),s=new mm.URL(t);for(let[o,a]of r)if(wb.default.isMatch(s.hostname,o))for(let l of n){let c=a.get(l);c!==null&&typeof i[l]=="undefined"&&(i[l]=c)}for(let o of n)typeof i[o]=="undefined"&&(i[o]=e.configuration.get(o));return i}var Xa;(function(t){t.GET="GET",t.PUT="PUT",t.POST="POST",t.DELETE="DELETE"})(Xa||(Xa={}));async function eh(t,e,{configuration:r,headers:i,jsonRequest:n,jsonResponse:s,method:o=Xa.GET}){let a=lY(t,{configuration:r});if(a.enableNetwork===!1)throw new Error(`Request to '${t}' has been blocked because of your configuration settings`);let l=new mm.URL(t);if(l.protocol==="http:"&&!wb.default.isMatch(l.hostname,r.get("unsafeHttpWhitelist")))throw new Error(`Unsafe http requests must be explicitly whitelisted in your configuration (${l.hostname})`);let u={agent:{http:a.httpProxy?Qb.default.httpOverHttp(AY(a.httpProxy)):yCe,https:a.httpsProxy?Qb.default.httpsOverHttp(AY(a.httpsProxy)):BCe},headers:i,method:o};u.responseType=s?"json":"buffer",e!==null&&(Buffer.isBuffer(e)||!n&&typeof e=="string"?u.body=e:u.json=e);let g=r.get("httpTimeout"),h=r.get("httpRetry"),f=r.get("enableStrictSsl"),p=a.caFilePath,{default:m}=await Promise.resolve().then(()=>X(Cm())),I=p?await wCe(p):void 0,y=m.extend({timeout:{socket:g},retry:h,https:{rejectUnauthorized:f,certificateAuthority:I},...u});return r.getLimit("networkConcurrency")(()=>y(t))}async function bCe(t,{configuration:e,jsonResponse:r,...i}){let n=bb.getFactoryWithDefault(oY,t,()=>Im(eh(t,null,{configuration:e,...i}),{configuration:e}).then(s=>(oY.set(t,s.body),s.body)));return Buffer.isBuffer(n)===!1&&(n=await n),r?JSON.parse(n.toString()):n}async function DCe(t,e,{customErrorMessage:r,...i}){return(await Im(eh(t,e,{...i,method:Xa.PUT}),i)).body}async function Db(t,e,{customErrorMessage:r,...i}){return(await Im(eh(t,e,{...i,method:Xa.POST}),i)).body}async function SCe(t,{customErrorMessage:e,...r}){return(await Im(eh(t,null,{...r,method:Xa.DELETE}),r)).body}var he=X(Zi());var Et={};We(Et,{executePackageAccessibleBinary:()=>fJ,executePackageScript:()=>rI,executePackageShellcode:()=>wD,executeWorkspaceAccessibleBinary:()=>uwe,executeWorkspaceLifecycleScript:()=>hJ,executeWorkspaceScript:()=>gJ,getPackageAccessibleBinaries:()=>iI,getWorkspaceAccessibleBinaries:()=>uJ,hasPackageScript:()=>Awe,hasWorkspaceScript:()=>BD,makeScriptEnv:()=>Bh,maybeExecuteWorkspaceLifecycleScript:()=>cwe,prepareExternalProject:()=>awe});var Ah={};We(Ah,{getLibzipPromise:()=>ri,getLibzipSync:()=>TY});var Lo=["number","number"],Sb;(function(t){t[t.ZIP_ER_OK=0]="ZIP_ER_OK",t[t.ZIP_ER_MULTIDISK=1]="ZIP_ER_MULTIDISK",t[t.ZIP_ER_RENAME=2]="ZIP_ER_RENAME",t[t.ZIP_ER_CLOSE=3]="ZIP_ER_CLOSE",t[t.ZIP_ER_SEEK=4]="ZIP_ER_SEEK",t[t.ZIP_ER_READ=5]="ZIP_ER_READ",t[t.ZIP_ER_WRITE=6]="ZIP_ER_WRITE",t[t.ZIP_ER_CRC=7]="ZIP_ER_CRC",t[t.ZIP_ER_ZIPCLOSED=8]="ZIP_ER_ZIPCLOSED",t[t.ZIP_ER_NOENT=9]="ZIP_ER_NOENT",t[t.ZIP_ER_EXISTS=10]="ZIP_ER_EXISTS",t[t.ZIP_ER_OPEN=11]="ZIP_ER_OPEN",t[t.ZIP_ER_TMPOPEN=12]="ZIP_ER_TMPOPEN",t[t.ZIP_ER_ZLIB=13]="ZIP_ER_ZLIB",t[t.ZIP_ER_MEMORY=14]="ZIP_ER_MEMORY",t[t.ZIP_ER_CHANGED=15]="ZIP_ER_CHANGED",t[t.ZIP_ER_COMPNOTSUPP=16]="ZIP_ER_COMPNOTSUPP",t[t.ZIP_ER_EOF=17]="ZIP_ER_EOF",t[t.ZIP_ER_INVAL=18]="ZIP_ER_INVAL",t[t.ZIP_ER_NOZIP=19]="ZIP_ER_NOZIP",t[t.ZIP_ER_INTERNAL=20]="ZIP_ER_INTERNAL",t[t.ZIP_ER_INCONS=21]="ZIP_ER_INCONS",t[t.ZIP_ER_REMOVE=22]="ZIP_ER_REMOVE",t[t.ZIP_ER_DELETED=23]="ZIP_ER_DELETED",t[t.ZIP_ER_ENCRNOTSUPP=24]="ZIP_ER_ENCRNOTSUPP",t[t.ZIP_ER_RDONLY=25]="ZIP_ER_RDONLY",t[t.ZIP_ER_NOPASSWD=26]="ZIP_ER_NOPASSWD",t[t.ZIP_ER_WRONGPASSWD=27]="ZIP_ER_WRONGPASSWD",t[t.ZIP_ER_OPNOTSUPP=28]="ZIP_ER_OPNOTSUPP",t[t.ZIP_ER_INUSE=29]="ZIP_ER_INUSE",t[t.ZIP_ER_TELL=30]="ZIP_ER_TELL",t[t.ZIP_ER_COMPRESSED_DATA=31]="ZIP_ER_COMPRESSED_DATA"})(Sb||(Sb={}));var cY=t=>({get HEAP8(){return t.HEAP8},get HEAPU8(){return t.HEAPU8},errors:Sb,SEEK_SET:0,SEEK_CUR:1,SEEK_END:2,ZIP_CHECKCONS:4,ZIP_CREATE:1,ZIP_EXCL:2,ZIP_TRUNCATE:8,ZIP_RDONLY:16,ZIP_FL_OVERWRITE:8192,ZIP_FL_COMPRESSED:4,ZIP_OPSYS_DOS:0,ZIP_OPSYS_AMIGA:1,ZIP_OPSYS_OPENVMS:2,ZIP_OPSYS_UNIX:3,ZIP_OPSYS_VM_CMS:4,ZIP_OPSYS_ATARI_ST:5,ZIP_OPSYS_OS_2:6,ZIP_OPSYS_MACINTOSH:7,ZIP_OPSYS_Z_SYSTEM:8,ZIP_OPSYS_CPM:9,ZIP_OPSYS_WINDOWS_NTFS:10,ZIP_OPSYS_MVS:11,ZIP_OPSYS_VSE:12,ZIP_OPSYS_ACORN_RISC:13,ZIP_OPSYS_VFAT:14,ZIP_OPSYS_ALTERNATE_MVS:15,ZIP_OPSYS_BEOS:16,ZIP_OPSYS_TANDEM:17,ZIP_OPSYS_OS_400:18,ZIP_OPSYS_OS_X:19,ZIP_CM_DEFAULT:-1,ZIP_CM_STORE:0,ZIP_CM_DEFLATE:8,uint08S:t._malloc(1),uint16S:t._malloc(2),uint32S:t._malloc(4),uint64S:t._malloc(8),malloc:t._malloc,free:t._free,getValue:t.getValue,open:t.cwrap("zip_open","number",["string","number","number"]),openFromSource:t.cwrap("zip_open_from_source","number",["number","number","number"]),close:t.cwrap("zip_close","number",["number"]),discard:t.cwrap("zip_discard",null,["number"]),getError:t.cwrap("zip_get_error","number",["number"]),getName:t.cwrap("zip_get_name","string",["number","number","number"]),getNumEntries:t.cwrap("zip_get_num_entries","number",["number","number"]),delete:t.cwrap("zip_delete","number",["number","number"]),stat:t.cwrap("zip_stat","number",["number","string","number","number"]),statIndex:t.cwrap("zip_stat_index","number",["number",...Lo,"number","number"]),fopen:t.cwrap("zip_fopen","number",["number","string","number"]),fopenIndex:t.cwrap("zip_fopen_index","number",["number",...Lo,"number"]),fread:t.cwrap("zip_fread","number",["number","number","number","number"]),fclose:t.cwrap("zip_fclose","number",["number"]),dir:{add:t.cwrap("zip_dir_add","number",["number","string"])},file:{add:t.cwrap("zip_file_add","number",["number","string","number","number"]),getError:t.cwrap("zip_file_get_error","number",["number"]),getExternalAttributes:t.cwrap("zip_file_get_external_attributes","number",["number",...Lo,"number","number","number"]),setExternalAttributes:t.cwrap("zip_file_set_external_attributes","number",["number",...Lo,"number","number","number"]),setMtime:t.cwrap("zip_file_set_mtime","number",["number",...Lo,"number","number"]),setCompression:t.cwrap("zip_set_file_compression","number",["number",...Lo,"number","number"])},ext:{countSymlinks:t.cwrap("zip_ext_count_symlinks","number",["number"])},error:{initWithCode:t.cwrap("zip_error_init_with_code",null,["number","number"]),strerror:t.cwrap("zip_error_strerror","string",["number"])},name:{locate:t.cwrap("zip_name_locate","number",["number","string","number"])},source:{fromUnattachedBuffer:t.cwrap("zip_source_buffer_create","number",["number","number","number","number"]),fromBuffer:t.cwrap("zip_source_buffer","number",["number","number",...Lo,"number"]),free:t.cwrap("zip_source_free",null,["number"]),keep:t.cwrap("zip_source_keep",null,["number"]),open:t.cwrap("zip_source_open","number",["number"]),close:t.cwrap("zip_source_close","number",["number"]),seek:t.cwrap("zip_source_seek","number",["number",...Lo,"number"]),tell:t.cwrap("zip_source_tell","number",["number"]),read:t.cwrap("zip_source_read","number",["number","number","number"]),error:t.cwrap("zip_source_error","number",["number"]),setMtime:t.cwrap("zip_source_set_mtime","number",["number","number"])},struct:{stat:t.cwrap("zipstruct_stat","number",[]),statS:t.cwrap("zipstruct_statS","number",[]),statName:t.cwrap("zipstruct_stat_name","string",["number"]),statIndex:t.cwrap("zipstruct_stat_index","number",["number"]),statSize:t.cwrap("zipstruct_stat_size","number",["number"]),statCompSize:t.cwrap("zipstruct_stat_comp_size","number",["number"]),statCompMethod:t.cwrap("zipstruct_stat_comp_method","number",["number"]),statMtime:t.cwrap("zipstruct_stat_mtime","number",["number"]),statCrc:t.cwrap("zipstruct_stat_crc","number",["number"]),error:t.cwrap("zipstruct_error","number",[]),errorS:t.cwrap("zipstruct_errorS","number",[]),errorCodeZip:t.cwrap("zipstruct_error_code_zip","number",["number"])}});var Jb=null;function TY(){return Jb===null&&(Jb=cY(OY())),Jb}async function ri(){return TY()}var Ch={};We(Ch,{ShellError:()=>To,execute:()=>Xm,globUtils:()=>jm});var ph={};We(ph,{parseResolution:()=>xm,parseShell:()=>Pm,parseSyml:()=>kr,stringifyResolution:()=>km,stringifySyml:()=>Os});var HY=X(UY());function Pm(t,e={isGlobPattern:()=>!1}){try{return HY.parse(t,e)}catch(r){throw r.location&&(r.message=r.message.replace(/(\.)?$/,` (line ${r.location.start.line}, column ${r.location.start.column})$1`)),r}}var GY=X(jY());function xm(t){let e=t.match(/^\*{1,2}\/(.*)/);if(e)throw new Error(`The override for '${t}' includes a glob pattern. Glob patterns have been removed since their behaviours don't match what you'd expect. Set the override to '${e[1]}' instead.`);try{return GY.parse(t)}catch(r){throw r.location&&(r.message=r.message.replace(/(\.)?$/,` (line ${r.location.start.line}, column ${r.location.start.column})$1`)),r}}function km(t){let e="";return t.from&&(e+=t.from.fullName,t.from.description&&(e+=`@${t.from.description}`),e+="/"),e+=t.descriptor.fullName,t.descriptor.description&&(e+=`@${t.descriptor.description}`),e}var Ym=X(RG()),NG=X(MG()),Iye=/^(?![-?:,\][{}#&*!|>'"%@` \t\r\n]).([ \t]*(?![,\][{}:# \t\r\n]).)*$/,OG=["__metadata","version","resolution","dependencies","peerDependencies","dependenciesMeta","peerDependenciesMeta","binaries"],oD=class{constructor(e){this.data=e}};function TG(t){return t.match(Iye)?t:JSON.stringify(t)}function KG(t){return typeof t=="undefined"?!0:typeof t=="object"&&t!==null?Object.keys(t).every(e=>KG(t[e])):!1}function aD(t,e,r){if(t===null)return`null +`),o}getUsageByRegistration(e,r){let i=this.registrations.get(e);if(typeof i=="undefined")throw new Error("Assertion failed: Unregistered command");return this.getUsageByIndex(i.index,r)}getUsageByIndex(e,r){return this.builder.getBuilderByIndex(e).usage(r)}format(e=this.enableColors){return e?FQ:ZO}};rs.defaultContext={stdin:process.stdin,stdout:process.stdout,stderr:process.stderr};var RQ={};$e(RQ,{DefinitionsCommand:()=>qC,HelpCommand:()=>JC,VersionCommand:()=>WC});var qC=class extends fe{async execute(){this.context.stdout.write(`${JSON.stringify(this.cli.definitions(),null,2)} +`)}};qC.paths=[["--clipanion=definitions"]];var JC=class extends fe{async execute(){this.context.stdout.write(this.cli.usage(null))}};JC.paths=[["-h"],["--help"]];var WC=class extends fe{async execute(){var e;this.context.stdout.write(`${(e=this.cli.binaryVersion)!==null&&e!==void 0?e:""} +`)}};WC.paths=[["-v"],["--version"]];var G={};$e(G,{Array:()=>$O,Boolean:()=>eK,Counter:()=>tK,Proxy:()=>rK,Rest:()=>iK,String:()=>nK,applyValidator:()=>zg,cleanValidationError:()=>HC,formatError:()=>Wg,isOptionSymbol:()=>Jg,makeCommandOption:()=>ii,rerouteArguments:()=>ts});function $O(t,e,r){let[i,n]=ts(e,r!=null?r:{}),{arity:s=1}=n,o=t.split(","),a=new Set(o);return ii({definition(l){l.addOption({names:o,arity:s,hidden:n==null?void 0:n.hidden,description:n==null?void 0:n.description,required:n.required})},transformer(l,c,u){let g=typeof i!="undefined"?[...i]:void 0;for(let{name:h,value:f}of u.options)!a.has(h)||(g=g!=null?g:[],g.push(f));return g}})}function eK(t,e,r){let[i,n]=ts(e,r!=null?r:{}),s=t.split(","),o=new Set(s);return ii({definition(a){a.addOption({names:s,allowBinding:!1,arity:0,hidden:n.hidden,description:n.description,required:n.required})},transformer(a,l,c){let u=i;for(let{name:g,value:h}of c.options)!o.has(g)||(u=h);return u}})}function tK(t,e,r){let[i,n]=ts(e,r!=null?r:{}),s=t.split(","),o=new Set(s);return ii({definition(a){a.addOption({names:s,allowBinding:!1,arity:0,hidden:n.hidden,description:n.description,required:n.required})},transformer(a,l,c){let u=i;for(let{name:g,value:h}of c.options)!o.has(g)||(u!=null||(u=0),h?u+=1:u=0);return u}})}function rK(t={}){return ii({definition(e,r){var i;e.addProxy({name:(i=t.name)!==null&&i!==void 0?i:r,required:t.required})},transformer(e,r,i){return i.positionals.map(({value:n})=>n)}})}function iK(t={}){return ii({definition(e,r){var i;e.addRest({name:(i=t.name)!==null&&i!==void 0?i:r,required:t.required})},transformer(e,r,i){let n=o=>{let a=i.positionals[o];return a.extra===Gi||a.extra===!1&&oo)}})}function Qce(t,e,r){let[i,n]=ts(e,r!=null?r:{}),{arity:s=1}=n,o=t.split(","),a=new Set(o);return ii({definition(l){l.addOption({names:o,arity:n.tolerateBoolean?0:s,hidden:n.hidden,description:n.description,required:n.required})},transformer(l,c,u){let g,h=i;for(let{name:f,value:p}of u.options)!a.has(f)||(g=f,h=p);return typeof h=="string"?zg(g!=null?g:c,h,n.validator):h}})}function bce(t={}){let{required:e=!0}=t;return ii({definition(r,i){var n;r.addPositional({name:(n=t.name)!==null&&n!==void 0?n:i,required:t.required})},transformer(r,i,n){var s;for(let o=0;o{let i=[];t.on("error",n=>{r(n)}),t.on("data",n=>{i.push(n)}),t.on("end",()=>{e(Buffer.concat(i))})})}var lK=class extends LQ.Transform{constructor(){super(...arguments);this.chunks=[]}_transform(e,r,i){if(r!=="buffer"||!Buffer.isBuffer(e))throw new Error("Assertion failed: BufferStream only accept buffers");this.chunks.push(e),i(null,null)}_flush(e){e(null,Buffer.concat(this.chunks))}},cK=class extends LQ.Transform{constructor(e=Buffer.alloc(0)){super();this.active=!0;this.ifEmpty=e}_transform(e,r,i){if(r!=="buffer"||!Buffer.isBuffer(e))throw new Error("Assertion failed: DefaultStream only accept buffers");this.active=!1,i(null,e)}_flush(e){this.active&&this.ifEmpty.length>0?e(null,this.ifEmpty):e(null)}},$g=eval("require");function uK(t){return $g(L.fromPortablePath(t))}function gK(path){let physicalPath=L.fromPortablePath(path),currentCacheEntry=$g.cache[physicalPath];delete $g.cache[physicalPath];let result;try{result=uK(physicalPath);let freshCacheEntry=$g.cache[physicalPath],dynamicModule=eval("module"),freshCacheIndex=dynamicModule.children.indexOf(freshCacheEntry);freshCacheIndex!==-1&&dynamicModule.children.splice(freshCacheIndex,1)}finally{$g.cache[physicalPath]=currentCacheEntry}return result}var hK=new Map;function kce(t){let e=hK.get(t),r=M.statSync(t);if((e==null?void 0:e.mtime)===r.mtimeMs)return e.instance;let i=gK(t);return hK.set(t,{mtime:r.mtimeMs,instance:i}),i}var nA;(function(i){i[i.NoCache=0]="NoCache",i[i.FsTime=1]="FsTime",i[i.Node=2]="Node"})(nA||(nA={}));function Jl(t,{cachingStrategy:e=2}={}){switch(e){case 0:return gK(t);case 1:return kce(t);case 2:return uK(t);default:throw new Error("Unsupported caching strategy")}}function bi(t,e){let r=Array.from(t);Array.isArray(e)||(e=[e]);let i=[];for(let s of e)i.push(r.map(o=>s(o)));let n=r.map((s,o)=>o);return n.sort((s,o)=>{for(let a of i){let l=a[s]a[o]?1:0;if(l!==0)return l}return 0}),n.map(s=>r[s])}function vce(t){return t.length===0?null:t.map(e=>`(${sK.default.makeRe(e,{windows:!1,dot:!0}).source})`).join("|")}function TQ(t,{env:e}){let r=/\${(?[\d\w_]+)(?:)?(?:-(?[^}]*))?}/g;return t.replace(r,(...i)=>{let{variableName:n,colon:s,fallback:o}=i[i.length-1],a=Object.prototype.hasOwnProperty.call(e,n),l=e[n];if(l||a&&!s)return l;if(o!=null)return o;throw new me(`Environment variable not found (${n})`)})}function eh(t){switch(t){case"true":case"1":case 1:case!0:return!0;case"false":case"0":case 0:case!1:return!1;default:throw new Error(`Couldn't parse "${t}" as a boolean`)}}function fK(t){return typeof t=="undefined"?t:eh(t)}function UQ(t){try{return fK(t)}catch{return null}}function Fce(t){return!!(L.isAbsolute(t)||t.match(/^(\.{1,2}|~)\//))}var Q={};$e(Q,{areDescriptorsEqual:()=>Y2,areIdentsEqual:()=>yh,areLocatorsEqual:()=>Ab,areVirtualPackagesEquivalent:()=>ade,bindDescriptor:()=>sde,bindLocator:()=>ode,convertDescriptorToLocator:()=>Km,convertLocatorToDescriptor:()=>Tm,convertPackageToLocator:()=>nde,convertToIdent:()=>ide,convertToManifestRange:()=>cde,copyPackage:()=>mh,devirtualizeDescriptor:()=>Ih,devirtualizeLocator:()=>Eh,getIdentVendorPath:()=>ude,isVirtualDescriptor:()=>qo,isVirtualLocator:()=>os,makeDescriptor:()=>zt,makeIdent:()=>jo,makeLocator:()=>Ai,makeRange:()=>Um,parseDescriptor:()=>Jo,parseFileStyleRange:()=>Ade,parseIdent:()=>Si,parseLocator:()=>dA,parseRange:()=>rc,prettyDependent:()=>gb,prettyDescriptor:()=>Tt,prettyIdent:()=>mr,prettyLocator:()=>it,prettyLocatorNoColors:()=>cb,prettyRange:()=>Mm,prettyReference:()=>wh,prettyResolution:()=>ub,prettyWorkspace:()=>Qh,renamePackage:()=>Ch,slugifyIdent:()=>lb,slugifyLocator:()=>ic,sortDescriptors:()=>nc,stringifyDescriptor:()=>xi,stringifyIdent:()=>pt,stringifyLocator:()=>gn,tryParseDescriptor:()=>Bh,tryParseIdent:()=>G2,tryParseLocator:()=>j2,virtualizeDescriptor:()=>ob,virtualizePackage:()=>ab});var tc=te(require("querystring")),H2=te(Cr());var Di={};$e(Di,{checksumFile:()=>Lm,checksumPattern:()=>Nm,makeHash:()=>ai});var Rm=te(require("crypto")),nb=te(ib());function ai(...t){let e=(0,Rm.createHash)("sha512"),r="";for(let i of t)typeof i=="string"?r+=i:i&&(r&&(e.update(r),r=""),e.update(i));return r&&e.update(r),e.digest("hex")}async function Lm(t,{baseFs:e,algorithm:r}={baseFs:M,algorithm:"sha512"}){let i=await e.openPromise(t,"r");try{let n=65536,s=Buffer.allocUnsafeSlow(n),o=(0,Rm.createHash)(r),a=0;for(;(a=await e.readPromise(i,s,0,n))!==0;)o.update(a===n?s:s.slice(0,a));return o.digest("hex")}finally{await e.closePromise(i)}}async function Nm(t,{cwd:e}){let i=(await(0,nb.default)(t,{cwd:L.fromPortablePath(e),expandDirectories:!1,onlyDirectories:!0,unique:!0})).map(a=>`${a}/**/*`),n=await(0,nb.default)([t,...i],{cwd:L.fromPortablePath(e),expandDirectories:!1,onlyFiles:!1,unique:!0});n.sort();let s=await Promise.all(n.map(async a=>{let l=[Buffer.from(a)],c=L.toPortablePath(a),u=await M.lstatPromise(c);return u.isSymbolicLink()?l.push(Buffer.from(await M.readlinkPromise(c))):u.isFile()&&l.push(await M.readFilePromise(c)),l.join("\0")})),o=(0,Rm.createHash)("sha512");for(let a of s)o.update(a);return o.digest("hex")}var Om="virtual:",rde=5;function jo(t,e){if(t==null?void 0:t.startsWith("@"))throw new Error("Invalid scope: don't prefix it with '@'");return{identHash:ai(t,e),scope:t,name:e}}function zt(t,e){return{identHash:t.identHash,scope:t.scope,name:t.name,descriptorHash:ai(t.identHash,e),range:e}}function Ai(t,e){return{identHash:t.identHash,scope:t.scope,name:t.name,locatorHash:ai(t.identHash,e),reference:e}}function ide(t){return{identHash:t.identHash,scope:t.scope,name:t.name}}function Km(t){return{identHash:t.identHash,scope:t.scope,name:t.name,locatorHash:t.descriptorHash,reference:t.range}}function Tm(t){return{identHash:t.identHash,scope:t.scope,name:t.name,descriptorHash:t.locatorHash,range:t.reference}}function nde(t){return{identHash:t.identHash,scope:t.scope,name:t.name,locatorHash:t.locatorHash,reference:t.reference}}function Ch(t,e){return{identHash:e.identHash,scope:e.scope,name:e.name,locatorHash:e.locatorHash,reference:e.reference,version:t.version,languageName:t.languageName,linkType:t.linkType,dependencies:new Map(t.dependencies),peerDependencies:new Map(t.peerDependencies),dependenciesMeta:new Map(t.dependenciesMeta),peerDependenciesMeta:new Map(t.peerDependenciesMeta),bin:new Map(t.bin)}}function mh(t){return Ch(t,t)}function ob(t,e){if(e.includes("#"))throw new Error("Invalid entropy");return zt(t,`virtual:${e}#${t.range}`)}function ab(t,e){if(e.includes("#"))throw new Error("Invalid entropy");return Ch(t,Ai(t,`virtual:${e}#${t.reference}`))}function qo(t){return t.range.startsWith(Om)}function os(t){return t.reference.startsWith(Om)}function Ih(t){if(!qo(t))throw new Error("Not a virtual descriptor");return zt(t,t.range.replace(/^[^#]*#/,""))}function Eh(t){if(!os(t))throw new Error("Not a virtual descriptor");return Ai(t,t.reference.replace(/^[^#]*#/,""))}function sde(t,e){return t.range.includes("::")?t:zt(t,`${t.range}::${tc.default.stringify(e)}`)}function ode(t,e){return t.reference.includes("::")?t:Ai(t,`${t.reference}::${tc.default.stringify(e)}`)}function yh(t,e){return t.identHash===e.identHash}function Y2(t,e){return t.descriptorHash===e.descriptorHash}function Ab(t,e){return t.locatorHash===e.locatorHash}function ade(t,e){if(!os(t))throw new Error("Invalid package type");if(!os(e))throw new Error("Invalid package type");if(!yh(t,e)||t.dependencies.size!==e.dependencies.size)return!1;for(let r of t.dependencies.values()){let i=e.dependencies.get(r.identHash);if(!i||!Y2(r,i))return!1}return!0}function Si(t){let e=G2(t);if(!e)throw new Error(`Invalid ident (${t})`);return e}function G2(t){let e=t.match(/^(?:@([^/]+?)\/)?([^/]+)$/);if(!e)return null;let[,r,i]=e,n=typeof r!="undefined"?r:null;return jo(n,i)}function Jo(t,e=!1){let r=Bh(t,e);if(!r)throw new Error(`Invalid descriptor (${t})`);return r}function Bh(t,e=!1){let r=e?t.match(/^(?:@([^/]+?)\/)?([^/]+?)(?:@(.+))$/):t.match(/^(?:@([^/]+?)\/)?([^/]+?)(?:@(.+))?$/);if(!r)return null;let[,i,n,s]=r;if(s==="unknown")throw new Error(`Invalid range (${t})`);let o=typeof i!="undefined"?i:null,a=typeof s!="undefined"?s:"unknown";return zt(jo(o,n),a)}function dA(t,e=!1){let r=j2(t,e);if(!r)throw new Error(`Invalid locator (${t})`);return r}function j2(t,e=!1){let r=e?t.match(/^(?:@([^/]+?)\/)?([^/]+?)(?:@(.+))$/):t.match(/^(?:@([^/]+?)\/)?([^/]+?)(?:@(.+))?$/);if(!r)return null;let[,i,n,s]=r;if(s==="unknown")throw new Error(`Invalid reference (${t})`);let o=typeof i!="undefined"?i:null,a=typeof s!="undefined"?s:"unknown";return Ai(jo(o,n),a)}function rc(t,e){let r=t.match(/^([^#:]*:)?((?:(?!::)[^#])*)(?:#((?:(?!::).)*))?(?:::(.*))?$/);if(r===null)throw new Error(`Invalid range (${t})`);let i=typeof r[1]!="undefined"?r[1]:null;if(typeof(e==null?void 0:e.requireProtocol)=="string"&&i!==e.requireProtocol)throw new Error(`Invalid protocol (${i})`);if((e==null?void 0:e.requireProtocol)&&i===null)throw new Error(`Missing protocol (${i})`);let n=typeof r[3]!="undefined"?decodeURIComponent(r[2]):null;if((e==null?void 0:e.requireSource)&&n===null)throw new Error(`Missing source (${t})`);let s=typeof r[3]!="undefined"?decodeURIComponent(r[3]):decodeURIComponent(r[2]),o=(e==null?void 0:e.parseSelector)?tc.default.parse(s):s,a=typeof r[4]!="undefined"?tc.default.parse(r[4]):null;return{protocol:i,source:n,selector:o,params:a}}function Ade(t,{protocol:e}){let{selector:r,params:i}=rc(t,{requireProtocol:e,requireBindings:!0});if(typeof i.locator!="string")throw new Error(`Assertion failed: Invalid bindings for ${t}`);return{parentLocator:dA(i.locator,!0),path:r}}function q2(t){return t=t.replace(/%/g,"%25"),t=t.replace(/:/g,"%3A"),t=t.replace(/#/g,"%23"),t}function lde(t){return t===null?!1:Object.entries(t).length>0}function Um({protocol:t,source:e,selector:r,params:i}){let n="";return t!==null&&(n+=`${t}`),e!==null&&(n+=`${q2(e)}#`),n+=q2(r),lde(i)&&(n+=`::${tc.default.stringify(i)}`),n}function cde(t){let{params:e,protocol:r,source:i,selector:n}=rc(t);for(let s in e)s.startsWith("__")&&delete e[s];return Um({protocol:r,source:i,params:e,selector:n})}function pt(t){return t.scope?`@${t.scope}/${t.name}`:`${t.name}`}function xi(t){return t.scope?`@${t.scope}/${t.name}@${t.range}`:`${t.name}@${t.range}`}function gn(t){return t.scope?`@${t.scope}/${t.name}@${t.reference}`:`${t.name}@${t.reference}`}function lb(t){return t.scope!==null?`@${t.scope}-${t.name}`:t.name}function ic(t){let{protocol:e,selector:r}=rc(t.reference),i=e!==null?e.replace(/:$/,""):"exotic",n=H2.default.valid(r),s=n!==null?`${i}-${n}`:`${i}`,o=10,a=t.scope?`${lb(t)}-${s}-${t.locatorHash.slice(0,o)}`:`${lb(t)}-${s}-${t.locatorHash.slice(0,o)}`;return Jt(a)}function mr(t,e){return e.scope?`${je(t,`@${e.scope}/`,ve.SCOPE)}${je(t,e.name,ve.NAME)}`:`${je(t,e.name,ve.NAME)}`}function Hm(t){if(t.startsWith(Om)){let e=Hm(t.substr(t.indexOf("#")+1)),r=t.substr(Om.length,rde);return`${e} [${r}]`}else return t.replace(/\?.*/,"?[...]")}function Mm(t,e){return`${je(t,Hm(e),ve.RANGE)}`}function Tt(t,e){return`${mr(t,e)}${je(t,"@",ve.RANGE)}${Mm(t,e.range)}`}function wh(t,e){return`${je(t,Hm(e),ve.REFERENCE)}`}function it(t,e){return`${mr(t,e)}${je(t,"@",ve.REFERENCE)}${wh(t,e.reference)}`}function cb(t){return`${pt(t)}@${Hm(t.reference)}`}function nc(t){return bi(t,[e=>pt(e),e=>e.range])}function Qh(t,e){return mr(t,e.locator)}function ub(t,e,r){let i=qo(e)?Ih(e):e;return r===null?`${Tt(t,i)} \u2192 ${sb(t).Cross}`:i.identHash===r.identHash?`${Tt(t,i)} \u2192 ${wh(t,r.reference)}`:`${Tt(t,i)} \u2192 ${it(t,r)}`}function gb(t,e,r){return r===null?`${it(t,e)}`:`${it(t,e)} (via ${Mm(t,r.range)})`}function ude(t){return`node_modules/${pt(t)}`}var At;(function(r){r.HARD="HARD",r.SOFT="SOFT"})(At||(At={}));var Sr;(function(i){i.Dependency="Dependency",i.PeerDependency="PeerDependency",i.PeerDependencyMeta="PeerDependencyMeta"})(Sr||(Sr={}));var qr;(function(i){i.Inactive="inactive",i.Redundant="redundant",i.Active="active"})(qr||(qr={}));var ve={NO_HINT:"NO_HINT",NULL:"NULL",SCOPE:"SCOPE",NAME:"NAME",RANGE:"RANGE",REFERENCE:"REFERENCE",NUMBER:"NUMBER",PATH:"PATH",URL:"URL",ADDED:"ADDED",REMOVED:"REMOVED",CODE:"CODE",DURATION:"DURATION",SIZE:"SIZE",IDENT:"IDENT",DESCRIPTOR:"DESCRIPTOR",LOCATOR:"LOCATOR",RESOLUTION:"RESOLUTION",DEPENDENT:"DEPENDENT",PACKAGE_EXTENSION:"PACKAGE_EXTENSION",SETTING:"SETTING"},CA;(function(e){e[e.BOLD=2]="BOLD"})(CA||(CA={}));var hb=process.env.GITHUB_ACTIONS?{level:2}:bh.default.supportsColor?{level:bh.default.supportsColor.level}:{level:0},Ym=hb.level!==0,fb=Ym&&!process.env.GITHUB_ACTIONS&&!J2.CIRCLE,pb=new bh.default.Instance(hb),gde=new Map([[ve.NO_HINT,null],[ve.NULL,["#a853b5",129]],[ve.SCOPE,["#d75f00",166]],[ve.NAME,["#d7875f",173]],[ve.RANGE,["#00afaf",37]],[ve.REFERENCE,["#87afff",111]],[ve.NUMBER,["#ffd700",220]],[ve.PATH,["#d75fd7",170]],[ve.URL,["#d75fd7",170]],[ve.ADDED,["#5faf00",70]],[ve.REMOVED,["#d70000",160]],[ve.CODE,["#87afff",111]],[ve.SIZE,["#ffd700",220]]]),Nn=t=>t,Gm={[ve.NUMBER]:Nn({pretty:(t,e)=>`${e}`,json:t=>t}),[ve.IDENT]:Nn({pretty:(t,e)=>mr(t,e),json:t=>pt(t)}),[ve.LOCATOR]:Nn({pretty:(t,e)=>it(t,e),json:t=>gn(t)}),[ve.DESCRIPTOR]:Nn({pretty:(t,e)=>Tt(t,e),json:t=>xi(t)}),[ve.RESOLUTION]:Nn({pretty:(t,{descriptor:e,locator:r})=>ub(t,e,r),json:({descriptor:t,locator:e})=>({descriptor:xi(t),locator:e!==null?gn(e):null})}),[ve.DEPENDENT]:Nn({pretty:(t,{locator:e,descriptor:r})=>gb(t,e,r),json:({locator:t,descriptor:e})=>({locator:gn(t),descriptor:xi(e)})}),[ve.PACKAGE_EXTENSION]:Nn({pretty:(t,e)=>{switch(e.type){case Sr.Dependency:return`${mr(t,e.parentDescriptor)} \u27A4 ${ji(t,"dependencies",ve.CODE)} \u27A4 ${mr(t,e.descriptor)}`;case Sr.PeerDependency:return`${mr(t,e.parentDescriptor)} \u27A4 ${ji(t,"peerDependencies",ve.CODE)} \u27A4 ${mr(t,e.descriptor)}`;case Sr.PeerDependencyMeta:return`${mr(t,e.parentDescriptor)} \u27A4 ${ji(t,"peerDependenciesMeta",ve.CODE)} \u27A4 ${mr(t,Si(e.selector))} \u27A4 ${ji(t,e.key,ve.CODE)}`;default:throw new Error(`Assertion failed: Unsupported package extension type: ${e.type}`)}},json:t=>{switch(t.type){case Sr.Dependency:return`${pt(t.parentDescriptor)} > ${pt(t.descriptor)}`;case Sr.PeerDependency:return`${pt(t.parentDescriptor)} >> ${pt(t.descriptor)}`;case Sr.PeerDependencyMeta:return`${pt(t.parentDescriptor)} >> ${t.selector} / ${t.key}`;default:throw new Error(`Assertion failed: Unsupported package extension type: ${t.type}`)}}}),[ve.SETTING]:Nn({pretty:(t,e)=>(t.get(e),sc(t,ji(t,e,ve.CODE),`https://yarnpkg.com/configuration/yarnrc#${e}`)),json:t=>t}),[ve.DURATION]:Nn({pretty:(t,e)=>{if(e>1e3*60){let r=Math.floor(e/1e3/60),i=Math.ceil((e-r*60*1e3)/1e3);return i===0?`${r}m`:`${r}m ${i}s`}else{let r=Math.floor(e/1e3),i=e-r*1e3;return i===0?`${r}s`:`${r}s ${i}ms`}},json:t=>t}),[ve.SIZE]:Nn({pretty:(t,e)=>{let r=["KB","MB","GB","TB"],i=r.length;for(;i>1&&e<1024**i;)i-=1;let n=1024**i,s=Math.floor(e*100/n)/100;return ji(t,`${s} ${r[i-1]}`,ve.NUMBER)},json:t=>t}),[ve.PATH]:Nn({pretty:(t,e)=>ji(t,L.fromPortablePath(e),ve.PATH),json:t=>L.fromPortablePath(t)})};function mA(t,e){return[e,t]}function jm(t,e,r){return t.get("enableColors")&&r&2&&(e=bh.default.bold(e)),e}function ji(t,e,r){if(!t.get("enableColors"))return e;let i=gde.get(r);if(i===null)return e;let n=typeof i=="undefined"?r:hb.level>=3?i[0]:i[1],s=typeof n=="number"?pb.ansi256(n):n.startsWith("#")?pb.hex(n):pb[n];if(typeof s!="function")throw new Error(`Invalid format type ${n}`);return s(e)}var hde=!!process.env.KONSOLE_VERSION;function sc(t,e,r){return t.get("enableHyperlinks")?hde?`]8;;${r}\\${e}]8;;\\`:`]8;;${r}\x07${e}]8;;\x07`:e}function je(t,e,r){if(e===null)return ji(t,"null",ve.NULL);if(Object.prototype.hasOwnProperty.call(Gm,r))return Gm[r].pretty(t,e);if(typeof e!="string")throw new Error(`Assertion failed: Expected the value to be a string, got ${typeof e}`);return ji(t,e,r)}function db(t,e,r,{separator:i=", "}={}){return[...e].map(n=>je(t,n,r)).join(i)}function oc(t,e){if(t===null)return null;if(Object.prototype.hasOwnProperty.call(Gm,e))return NQ(e),Gm[e].json(t);if(typeof t!="string")throw new Error(`Assertion failed: Expected the value to be a string, got ${typeof t}`);return t}function sb(t){return{Check:ji(t,"\u2713","green"),Cross:ji(t,"\u2718","red"),Question:ji(t,"?","cyan")}}function IA(t,{label:e,value:[r,i]}){return`${je(t,e,ve.CODE)}: ${je(t,r,i)}`}var Mn;(function(n){n.Error="error",n.Warning="warning",n.Info="info",n.Discard="discard"})(Mn||(Mn={}));function Dh(t,{configuration:e}){let r=e.get("logFilters"),i=new Map,n=new Map,s=[];for(let g of r){let h=g.get("level");if(typeof h=="undefined")continue;let f=g.get("code");typeof f!="undefined"&&i.set(f,h);let p=g.get("text");typeof p!="undefined"&&n.set(p,h);let m=g.get("pattern");typeof m!="undefined"&&s.push([W2.default.matcher(m),h])}s.reverse();let o=(g,h,f)=>{if(g===null||g===z.UNNAMED)return f;let p=n.size>0||s.length>0?(0,z2.default)(h):h;if(n.size>0){let m=n.get(p);if(typeof m!="undefined")return m!=null?m:f}if(s.length>0){for(let[m,I]of s)if(m(p))return I!=null?I:f}if(i.size>0){let m=i.get(TC(g));if(typeof m!="undefined")return m!=null?m:f}return f},a=t.reportInfo,l=t.reportWarning,c=t.reportError,u=function(g,h,f,p){switch(o(h,f,p)){case Mn.Info:a.call(g,h,f);break;case Mn.Warning:l.call(g,h!=null?h:z.UNNAMED,f);break;case Mn.Error:c.call(g,h!=null?h:z.UNNAMED,f);break}};t.reportInfo=function(...g){return u(this,...g,Mn.Info)},t.reportWarning=function(...g){return u(this,...g,Mn.Warning)},t.reportError=function(...g){return u(this,...g,Mn.Error)}}var Ft={};$e(Ft,{Method:()=>yA,RequestError:()=>NG.RequestError,del:()=>SIe,get:()=>bIe,getNetworkSettings:()=>TG,post:()=>RD,put:()=>DIe,request:()=>Oh});var FG=te(AI()),RG=te(require("https")),LG=te(require("http")),vD=te(Yi()),FD=te(PG()),lI=te(require("url"));var kG=te(require("stream")),vG=te(require("string_decoder"));var Ze=class extends Error{constructor(e,r,i){super(r);this.reportExtra=i;this.reportCode=e}};function EIe(t){return typeof t.reportCode!="undefined"}var ci=class{constructor(){this.reportedInfos=new Set;this.reportedWarnings=new Set;this.reportedErrors=new Set}static progressViaCounter(e){let r=0,i,n=new Promise(l=>{i=l}),s=l=>{let c=i;n=new Promise(u=>{i=u}),r=l,c()},o=(l=0)=>{s(r+1)},a=async function*(){for(;r{let o=i.write(s),a;do if(a=o.indexOf(` +`),a!==-1){let l=n+o.substr(0,a);o=o.substr(a+1),n="",e!==null?this.reportInfo(null,`${e} ${l}`):this.reportInfo(null,l)}while(a!==-1);n+=o}),r.on("end",()=>{let s=i.end();s!==""&&(e!==null?this.reportInfo(null,`${e} ${s}`):this.reportInfo(null,s))}),r}};var NG=te(AI()),MG=new Map,OG=new Map,yIe=new LG.Agent({keepAlive:!0}),BIe=new RG.Agent({keepAlive:!0});function KG(t){let e=new lI.URL(t),r={host:e.hostname,headers:{}};return e.port&&(r.port=Number(e.port)),{proxy:r}}async function wIe(t){return Us(OG,t,()=>M.readFilePromise(t).then(e=>(OG.set(t,e),e)))}function QIe({statusCode:t,statusMessage:e},r){let i=je(r,t,ve.NUMBER),n=`https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/${t}`;return sc(r,`${i}${e?` (${e})`:""}`,n)}async function cI(t,{configuration:e,customErrorMessage:r}){var i,n;try{return await t}catch(s){if(s.name!=="HTTPError")throw s;let o=(n=r==null?void 0:r(s))!=null?n:(i=s.response.body)==null?void 0:i.error;o==null&&(s.message.startsWith("Response code")?o="The remote server failed to provide the requested resource":o=s.message),s instanceof FG.TimeoutError&&s.event==="socket"&&(o+=`(can be increased via ${je(e,"httpTimeout",ve.SETTING)})`);let a=new Ze(z.NETWORK_ERROR,o,l=>{s.response&&l.reportError(z.NETWORK_ERROR,` ${IA(e,{label:"Response Code",value:mA(ve.NO_HINT,QIe(s.response,e))})}`),s.request&&(l.reportError(z.NETWORK_ERROR,` ${IA(e,{label:"Request Method",value:mA(ve.NO_HINT,s.request.options.method)})}`),l.reportError(z.NETWORK_ERROR,` ${IA(e,{label:"Request URL",value:mA(ve.URL,s.request.requestUrl)})}`)),s.request.redirects.length>0&&l.reportError(z.NETWORK_ERROR,` ${IA(e,{label:"Request Redirects",value:mA(ve.NO_HINT,db(e,s.request.redirects,ve.URL))})}`),s.request.retryCount===s.request.options.retry.limit&&l.reportError(z.NETWORK_ERROR,` ${IA(e,{label:"Request Retry Count",value:mA(ve.NO_HINT,`${je(e,s.request.retryCount,ve.NUMBER)} (can be increased via ${je(e,"httpRetry",ve.SETTING)})`)})}`)});throw a.originalError=s,a}}function TG(t,e){let r=[...e.configuration.get("networkSettings")].sort(([o],[a])=>a.length-o.length),i={enableNetwork:void 0,caFilePath:void 0,httpProxy:void 0,httpsProxy:void 0},n=Object.keys(i),s=typeof t=="string"?new lI.URL(t):t;for(let[o,a]of r)if(vD.default.isMatch(s.hostname,o))for(let l of n){let c=a.get(l);c!==null&&typeof i[l]=="undefined"&&(i[l]=c)}for(let o of n)typeof i[o]=="undefined"&&(i[o]=e.configuration.get(o));return i}var yA;(function(n){n.GET="GET",n.PUT="PUT",n.POST="POST",n.DELETE="DELETE"})(yA||(yA={}));async function Oh(t,e,{configuration:r,headers:i,jsonRequest:n,jsonResponse:s,method:o=yA.GET}){let a=typeof t=="string"?new lI.URL(t):t,l=TG(a,{configuration:r});if(l.enableNetwork===!1)throw new Error(`Request to '${a.href}' has been blocked because of your configuration settings`);if(a.protocol==="http:"&&!vD.default.isMatch(a.hostname,r.get("unsafeHttpWhitelist")))throw new Error(`Unsafe http requests must be explicitly whitelisted in your configuration (${a.hostname})`);let u={agent:{http:l.httpProxy?FD.default.httpOverHttp(KG(l.httpProxy)):yIe,https:l.httpsProxy?FD.default.httpsOverHttp(KG(l.httpsProxy)):BIe},headers:i,method:o};u.responseType=s?"json":"buffer",e!==null&&(Buffer.isBuffer(e)||!n&&typeof e=="string"?u.body=e:u.json=e);let g=r.get("httpTimeout"),h=r.get("httpRetry"),f=r.get("enableStrictSsl"),p=l.caFilePath,{default:m}=await Promise.resolve().then(()=>te(AI())),I=p?await wIe(p):void 0,y=m.extend(k({timeout:{socket:g},retry:h,https:{rejectUnauthorized:f,certificateAuthority:I}},u));return r.getLimit("networkConcurrency")(()=>y(a))}async function bIe(t,n){var s=n,{configuration:e,jsonResponse:r}=s,i=Lr(s,["configuration","jsonResponse"]);let o=Us(MG,t,()=>cI(Oh(t,null,k({configuration:e},i)),{configuration:e}).then(a=>(MG.set(t,a.body),a.body)));return Buffer.isBuffer(o)===!1&&(o=await o),r?JSON.parse(o.toString()):o}async function DIe(t,e,n){var s=n,{customErrorMessage:r}=s,i=Lr(s,["customErrorMessage"]);return(await cI(Oh(t,e,V(k({},i),{method:yA.PUT})),i)).body}async function RD(t,e,n){var s=n,{customErrorMessage:r}=s,i=Lr(s,["customErrorMessage"]);return(await cI(Oh(t,e,V(k({},i),{method:yA.POST})),i)).body}async function SIe(t,i){var n=i,{customErrorMessage:e}=n,r=Lr(n,["customErrorMessage"]);return(await cI(Oh(t,null,V(k({},r),{method:yA.DELETE})),r)).body}var bt={};$e(bt,{executePackageAccessibleBinary:()=>XW,executePackageScript:()=>_I,executePackageShellcode:()=>RS,executeWorkspaceAccessibleBinary:()=>n0e,executeWorkspaceLifecycleScript:()=>VW,executeWorkspaceScript:()=>zW,getPackageAccessibleBinaries:()=>$I,getWorkspaceAccessibleBinaries:()=>WW,hasPackageScript:()=>t0e,hasWorkspaceScript:()=>FS,makeScriptEnv:()=>nf,maybeExecuteWorkspaceLifecycleScript:()=>i0e,prepareExternalProject:()=>e0e});var Yh={};$e(Yh,{getLibzipPromise:()=>gi,getLibzipSync:()=>hj});var _o=["number","number"],LD;(function(R){R[R.ZIP_ER_OK=0]="ZIP_ER_OK",R[R.ZIP_ER_MULTIDISK=1]="ZIP_ER_MULTIDISK",R[R.ZIP_ER_RENAME=2]="ZIP_ER_RENAME",R[R.ZIP_ER_CLOSE=3]="ZIP_ER_CLOSE",R[R.ZIP_ER_SEEK=4]="ZIP_ER_SEEK",R[R.ZIP_ER_READ=5]="ZIP_ER_READ",R[R.ZIP_ER_WRITE=6]="ZIP_ER_WRITE",R[R.ZIP_ER_CRC=7]="ZIP_ER_CRC",R[R.ZIP_ER_ZIPCLOSED=8]="ZIP_ER_ZIPCLOSED",R[R.ZIP_ER_NOENT=9]="ZIP_ER_NOENT",R[R.ZIP_ER_EXISTS=10]="ZIP_ER_EXISTS",R[R.ZIP_ER_OPEN=11]="ZIP_ER_OPEN",R[R.ZIP_ER_TMPOPEN=12]="ZIP_ER_TMPOPEN",R[R.ZIP_ER_ZLIB=13]="ZIP_ER_ZLIB",R[R.ZIP_ER_MEMORY=14]="ZIP_ER_MEMORY",R[R.ZIP_ER_CHANGED=15]="ZIP_ER_CHANGED",R[R.ZIP_ER_COMPNOTSUPP=16]="ZIP_ER_COMPNOTSUPP",R[R.ZIP_ER_EOF=17]="ZIP_ER_EOF",R[R.ZIP_ER_INVAL=18]="ZIP_ER_INVAL",R[R.ZIP_ER_NOZIP=19]="ZIP_ER_NOZIP",R[R.ZIP_ER_INTERNAL=20]="ZIP_ER_INTERNAL",R[R.ZIP_ER_INCONS=21]="ZIP_ER_INCONS",R[R.ZIP_ER_REMOVE=22]="ZIP_ER_REMOVE",R[R.ZIP_ER_DELETED=23]="ZIP_ER_DELETED",R[R.ZIP_ER_ENCRNOTSUPP=24]="ZIP_ER_ENCRNOTSUPP",R[R.ZIP_ER_RDONLY=25]="ZIP_ER_RDONLY",R[R.ZIP_ER_NOPASSWD=26]="ZIP_ER_NOPASSWD",R[R.ZIP_ER_WRONGPASSWD=27]="ZIP_ER_WRONGPASSWD",R[R.ZIP_ER_OPNOTSUPP=28]="ZIP_ER_OPNOTSUPP",R[R.ZIP_ER_INUSE=29]="ZIP_ER_INUSE",R[R.ZIP_ER_TELL=30]="ZIP_ER_TELL",R[R.ZIP_ER_COMPRESSED_DATA=31]="ZIP_ER_COMPRESSED_DATA"})(LD||(LD={}));var UG=t=>({get HEAP8(){return t.HEAP8},get HEAPU8(){return t.HEAPU8},errors:LD,SEEK_SET:0,SEEK_CUR:1,SEEK_END:2,ZIP_CHECKCONS:4,ZIP_CREATE:1,ZIP_EXCL:2,ZIP_TRUNCATE:8,ZIP_RDONLY:16,ZIP_FL_OVERWRITE:8192,ZIP_FL_COMPRESSED:4,ZIP_OPSYS_DOS:0,ZIP_OPSYS_AMIGA:1,ZIP_OPSYS_OPENVMS:2,ZIP_OPSYS_UNIX:3,ZIP_OPSYS_VM_CMS:4,ZIP_OPSYS_ATARI_ST:5,ZIP_OPSYS_OS_2:6,ZIP_OPSYS_MACINTOSH:7,ZIP_OPSYS_Z_SYSTEM:8,ZIP_OPSYS_CPM:9,ZIP_OPSYS_WINDOWS_NTFS:10,ZIP_OPSYS_MVS:11,ZIP_OPSYS_VSE:12,ZIP_OPSYS_ACORN_RISC:13,ZIP_OPSYS_VFAT:14,ZIP_OPSYS_ALTERNATE_MVS:15,ZIP_OPSYS_BEOS:16,ZIP_OPSYS_TANDEM:17,ZIP_OPSYS_OS_400:18,ZIP_OPSYS_OS_X:19,ZIP_CM_DEFAULT:-1,ZIP_CM_STORE:0,ZIP_CM_DEFLATE:8,uint08S:t._malloc(1),uint16S:t._malloc(2),uint32S:t._malloc(4),uint64S:t._malloc(8),malloc:t._malloc,free:t._free,getValue:t.getValue,open:t.cwrap("zip_open","number",["string","number","number"]),openFromSource:t.cwrap("zip_open_from_source","number",["number","number","number"]),close:t.cwrap("zip_close","number",["number"]),discard:t.cwrap("zip_discard",null,["number"]),getError:t.cwrap("zip_get_error","number",["number"]),getName:t.cwrap("zip_get_name","string",["number","number","number"]),getNumEntries:t.cwrap("zip_get_num_entries","number",["number","number"]),delete:t.cwrap("zip_delete","number",["number","number"]),stat:t.cwrap("zip_stat","number",["number","string","number","number"]),statIndex:t.cwrap("zip_stat_index","number",["number",..._o,"number","number"]),fopen:t.cwrap("zip_fopen","number",["number","string","number"]),fopenIndex:t.cwrap("zip_fopen_index","number",["number",..._o,"number"]),fread:t.cwrap("zip_fread","number",["number","number","number","number"]),fclose:t.cwrap("zip_fclose","number",["number"]),dir:{add:t.cwrap("zip_dir_add","number",["number","string"])},file:{add:t.cwrap("zip_file_add","number",["number","string","number","number"]),getError:t.cwrap("zip_file_get_error","number",["number"]),getExternalAttributes:t.cwrap("zip_file_get_external_attributes","number",["number",..._o,"number","number","number"]),setExternalAttributes:t.cwrap("zip_file_set_external_attributes","number",["number",..._o,"number","number","number"]),setMtime:t.cwrap("zip_file_set_mtime","number",["number",..._o,"number","number"]),setCompression:t.cwrap("zip_set_file_compression","number",["number",..._o,"number","number"])},ext:{countSymlinks:t.cwrap("zip_ext_count_symlinks","number",["number"])},error:{initWithCode:t.cwrap("zip_error_init_with_code",null,["number","number"]),strerror:t.cwrap("zip_error_strerror","string",["number"])},name:{locate:t.cwrap("zip_name_locate","number",["number","string","number"])},source:{fromUnattachedBuffer:t.cwrap("zip_source_buffer_create","number",["number","number","number","number"]),fromBuffer:t.cwrap("zip_source_buffer","number",["number","number",..._o,"number"]),free:t.cwrap("zip_source_free",null,["number"]),keep:t.cwrap("zip_source_keep",null,["number"]),open:t.cwrap("zip_source_open","number",["number"]),close:t.cwrap("zip_source_close","number",["number"]),seek:t.cwrap("zip_source_seek","number",["number",..._o,"number"]),tell:t.cwrap("zip_source_tell","number",["number"]),read:t.cwrap("zip_source_read","number",["number","number","number"]),error:t.cwrap("zip_source_error","number",["number"]),setMtime:t.cwrap("zip_source_set_mtime","number",["number","number"])},struct:{stat:t.cwrap("zipstruct_stat","number",[]),statS:t.cwrap("zipstruct_statS","number",[]),statName:t.cwrap("zipstruct_stat_name","string",["number"]),statIndex:t.cwrap("zipstruct_stat_index","number",["number"]),statSize:t.cwrap("zipstruct_stat_size","number",["number"]),statCompSize:t.cwrap("zipstruct_stat_comp_size","number",["number"]),statCompMethod:t.cwrap("zipstruct_stat_comp_method","number",["number"]),statMtime:t.cwrap("zipstruct_stat_mtime","number",["number"]),statCrc:t.cwrap("zipstruct_stat_crc","number",["number"]),error:t.cwrap("zipstruct_error","number",[]),errorS:t.cwrap("zipstruct_errorS","number",[]),errorCodeZip:t.cwrap("zipstruct_error_code_zip","number",["number"])}});var $D=null;function hj(){return $D===null&&($D=UG(gj())),$D}async function gi(){return hj()}var _h={};$e(_h,{ShellError:()=>ia,execute:()=>Fc,globUtils:()=>TI});var Xh={};$e(Xh,{parseResolution:()=>DI,parseShell:()=>BI,parseSyml:()=>Tr,stringifyArgument:()=>iS,stringifyArgumentSegment:()=>nS,stringifyArithmeticExpression:()=>bI,stringifyCommand:()=>rS,stringifyCommandChain:()=>Bc,stringifyCommandChainThen:()=>tS,stringifyCommandLine:()=>wI,stringifyCommandLineThen:()=>eS,stringifyEnvSegment:()=>QI,stringifyRedirectArgument:()=>Gh,stringifyResolution:()=>SI,stringifyShell:()=>yc,stringifyShellLine:()=>yc,stringifySyml:()=>ro,stringifyValueArgument:()=>wc});var dj=te(pj());function BI(t,e={isGlobPattern:()=>!1}){try{return(0,dj.parse)(t,e)}catch(r){throw r.location&&(r.message=r.message.replace(/(\.)?$/,` (line ${r.location.start.line}, column ${r.location.start.column})$1`)),r}}function yc(t,{endSemicolon:e=!1}={}){return t.map(({command:r,type:i},n)=>`${wI(r)}${i===";"?n!==t.length-1||e?";":"":" &"}`).join(" ")}function wI(t){return`${Bc(t.chain)}${t.then?` ${eS(t.then)}`:""}`}function eS(t){return`${t.type} ${wI(t.line)}`}function Bc(t){return`${rS(t)}${t.then?` ${tS(t.then)}`:""}`}function tS(t){return`${t.type} ${Bc(t.chain)}`}function rS(t){switch(t.type){case"command":return`${t.envs.length>0?`${t.envs.map(e=>QI(e)).join(" ")} `:""}${t.args.map(e=>iS(e)).join(" ")}`;case"subshell":return`(${yc(t.subshell)})${t.args.length>0?` ${t.args.map(e=>Gh(e)).join(" ")}`:""}`;case"group":return`{ ${yc(t.group,{endSemicolon:!0})} }${t.args.length>0?` ${t.args.map(e=>Gh(e)).join(" ")}`:""}`;case"envs":return t.envs.map(e=>QI(e)).join(" ");default:throw new Error(`Unsupported command type: "${t.type}"`)}}function QI(t){return`${t.name}=${t.args[0]?wc(t.args[0]):""}`}function iS(t){switch(t.type){case"redirection":return Gh(t);case"argument":return wc(t);default:throw new Error(`Unsupported argument type: "${t.type}"`)}}function Gh(t){return`${t.subtype} ${t.args.map(e=>wc(e)).join(" ")}`}function wc(t){return t.segments.map(e=>nS(e)).join("")}function nS(t){let e=(i,n)=>n?`"${i}"`:i,r=i=>i.match(/[(){}<>$|&; \t"']/)?i.match(/[$"]/)?`'${i.replace(/[']/g,"\\'")}'`:`"${i}"`:i;switch(t.type){case"text":return r(t.text);case"glob":return t.pattern;case"shell":return e(`\${${yc(t.shell)}}`,t.quoted);case"variable":return e(typeof t.defaultValue=="undefined"?`\${${t.name}}`:t.defaultValue.length===0?`\${${t.name}:-}`:`\${${t.name}:-${t.defaultValue.map(i=>wc(i)).join(" ")}}`,t.quoted);case"arithmetic":return`$(( ${bI(t.arithmetic)} ))`;default:throw new Error(`Unsupported argument segment type: "${t.type}"`)}}function bI(t){let e=n=>{switch(n){case"addition":return"+";case"subtraction":return"-";case"multiplication":return"*";case"division":return"/";default:throw new Error(`Can't extract operator from arithmetic expression of type "${n}"`)}},r=(n,s)=>s?`( ${n} )`:n,i=n=>r(bI(n),!["number","variable"].includes(n.type));switch(t.type){case"number":return String(t.value);case"variable":return t.name;default:return`${i(t.left)} ${e(t.type)} ${i(t.right)}`}}var Ij=te(mj());function DI(t){let e=t.match(/^\*{1,2}\/(.*)/);if(e)throw new Error(`The override for '${t}' includes a glob pattern. Glob patterns have been removed since their behaviours don't match what you'd expect. Set the override to '${e[1]}' instead.`);try{return(0,Ij.parse)(t)}catch(r){throw r.location&&(r.message=r.message.replace(/(\.)?$/,` (line ${r.location.start.line}, column ${r.location.start.column})$1`)),r}}function SI(t){let e="";return t.from&&(e+=t.from.fullName,t.from.description&&(e+=`@${t.from.description}`),e+="/"),e+=t.descriptor.fullName,t.descriptor.description&&(e+=`@${t.descriptor.description}`),e}var KI=te(lJ()),gJ=te(uJ()),uwe=/^(?![-?:,\][{}#&*!|>'"%@` \t\r\n]).([ \t]*(?![,\][{}:# \t\r\n]).)*$/,hJ=["__metadata","version","resolution","dependencies","peerDependencies","dependenciesMeta","peerDependenciesMeta","binaries"],CS=class{constructor(e){this.data=e}};function fJ(t){return t.match(uwe)?t:JSON.stringify(t)}function pJ(t){return typeof t=="undefined"?!0:typeof t=="object"&&t!==null?Object.keys(t).every(e=>pJ(t[e])):!1}function mS(t,e,r){if(t===null)return`null `;if(typeof t=="number"||typeof t=="boolean")return`${t.toString()} -`;if(typeof t=="string")return`${TG(t)} +`;if(typeof t=="string")return`${fJ(t)} `;if(Array.isArray(t)){if(t.length===0)return`[] `;let i=" ".repeat(e);return` -${t.map(s=>`${i}- ${aD(s,e+1,!1)}`).join("")}`}if(typeof t=="object"&&t){let i,n;t instanceof oD?(i=t.data,n=!1):(i=t,n=!0);let s=" ".repeat(e),o=Object.keys(i);n&&o.sort((l,c)=>{let u=OG.indexOf(l),g=OG.indexOf(c);return u===-1&&g===-1?lc?1:0:u!==-1&&g===-1?-1:u===-1&&g!==-1?1:u-g});let a=o.filter(l=>!KG(i[l])).map((l,c)=>{let u=i[l],g=TG(l),h=aD(u,e+1,!0),f=c>0||r?s:"";return h.startsWith(` +${t.map(s=>`${i}- ${mS(s,e+1,!1)}`).join("")}`}if(typeof t=="object"&&t){let i,n;t instanceof CS?(i=t.data,n=!1):(i=t,n=!0);let s=" ".repeat(e),o=Object.keys(i);n&&o.sort((l,c)=>{let u=hJ.indexOf(l),g=hJ.indexOf(c);return u===-1&&g===-1?lc?1:0:u!==-1&&g===-1?-1:u===-1&&g!==-1?1:u-g});let a=o.filter(l=>!pJ(i[l])).map((l,c)=>{let u=i[l],g=fJ(l),h=mS(u,e+1,!0),f=c>0||r?s:"";return h.startsWith(` `)?`${f}${g}:${h}`:`${f}${g}: ${h}`}).join(e===0?` `:"")||` `;return r?` -${a}`:`${a}`}throw new Error(`Unsupported value type (${t})`)}function Os(t){try{let e=aD(t,0,!1);return e!==` -`?e:""}catch(e){throw e.location&&(e.message=e.message.replace(/(\.)?$/,` (line ${e.location.start.line}, column ${e.location.start.column})$1`)),e}}Os.PreserveOrdering=oD;function Eye(t){return t.endsWith(` +${a}`:`${a}`}throw new Error(`Unsupported value type (${t})`)}function ro(t){try{let e=mS(t,0,!1);return e!==` +`?e:""}catch(e){throw e.location&&(e.message=e.message.replace(/(\.)?$/,` (line ${e.location.start.line}, column ${e.location.start.column})$1`)),e}}ro.PreserveOrdering=CS;function gwe(t){return t.endsWith(` `)||(t+=` -`),NG.parse(t)}var yye=/^(#.*(\r?\n))*?#\s+yarn\s+lockfile\s+v1\r?\n/i;function Bye(t){if(yye.test(t))return Eye(t);let e=Ym.safeLoad(t,{schema:Ym.FAILSAFE_SCHEMA,json:!0});if(e==null)return{};if(typeof e!="object")throw new Error(`Expected an indexed object, got a ${typeof e} instead. Does your file follow Yaml's rules?`);if(Array.isArray(e))throw new Error("Expected an indexed object, got an array instead. Does your file follow Yaml's rules?");return e}function kr(t){return Bye(t)}var zG=X(require("os")),on=X(require("stream"));var To=class extends Error{constructor(e){super(e);this.name="ShellError"}};var jm={};We(jm,{fastGlobOptions:()=>YG,isBraceExpansion:()=>jG,isGlobPattern:()=>wye,match:()=>Qye,micromatchOptions:()=>qm});var UG=X(MC()),HG=X(require("fs")),Gm=X(Qn()),qm={strictBrackets:!0},YG={onlyDirectories:!1,onlyFiles:!1};function wye(t){if(!Gm.default.scan(t,qm).isGlob)return!1;try{Gm.default.parse(t,qm)}catch{return!1}return!0}function Qye(t,{cwd:e,baseFs:r}){return UG.default(t,{...YG,cwd:npath.fromPortablePath(e),fs:Gd(HG.default,new Zu(r))})}function jG(t){return Gm.default.scan(t,qm).isBrace}var GG=X(YB()),Ts=X(require("stream")),Ei;(function(t){t[t.STDIN=0]="STDIN",t[t.STDOUT=1]="STDOUT",t[t.STDERR=2]="STDERR"})(Ei||(Ei={}));var uA=new Set;function AD(){}function lD(){for(let t of uA)t.kill()}function qG(t,e,r,i){return n=>{let s=n[0]instanceof Ts.Transform?"pipe":n[0],o=n[1]instanceof Ts.Transform?"pipe":n[1],a=n[2]instanceof Ts.Transform?"pipe":n[2],l=GG.default(t,e,{...i,stdio:[s,o,a]});return uA.add(l),uA.size===1&&(process.on("SIGINT",AD),process.on("SIGTERM",lD)),n[0]instanceof Ts.Transform&&n[0].pipe(l.stdin),n[1]instanceof Ts.Transform&&l.stdout.pipe(n[1],{end:!1}),n[2]instanceof Ts.Transform&&l.stderr.pipe(n[2],{end:!1}),{stdin:l.stdin,promise:new Promise(c=>{l.on("error",u=>{switch(uA.delete(l),uA.size===0&&(process.off("SIGINT",AD),process.off("SIGTERM",lD)),u.code){case"ENOENT":n[2].write(`command not found: ${t} +`),(0,gJ.parse)(t)}var hwe=/^(#.*(\r?\n))*?#\s+yarn\s+lockfile\s+v1\r?\n/i;function fwe(t){if(hwe.test(t))return gwe(t);let e=(0,KI.safeLoad)(t,{schema:KI.FAILSAFE_SCHEMA,json:!0});if(e==null)return{};if(typeof e!="object")throw new Error(`Expected an indexed object, got a ${typeof e} instead. Does your file follow Yaml's rules?`);if(Array.isArray(e))throw new Error("Expected an indexed object, got an array instead. Does your file follow Yaml's rules?");return e}function Tr(t){return fwe(t)}var SJ=te(rQ()),xJ=te(require("os")),qi=te(require("stream")),PJ=te(require("util"));var ia=class extends Error{constructor(e){super(e);this.name="ShellError"}};var TI={};$e(TI,{fastGlobOptions:()=>mJ,isBraceExpansion:()=>IJ,isGlobPattern:()=>pwe,match:()=>dwe,micromatchOptions:()=>HI});var dJ=te(Sm()),CJ=te(require("fs")),UI=te(Yi()),HI={strictBrackets:!0},mJ={onlyDirectories:!1,onlyFiles:!1};function pwe(t){if(!UI.default.scan(t,HI).isGlob)return!1;try{UI.default.parse(t,HI)}catch{return!1}return!0}function dwe(t,{cwd:e,baseFs:r}){return(0,dJ.default)(t,V(k({},mJ),{cwd:L.fromPortablePath(e),fs:SC(CJ.default,new kg(r))}))}function IJ(t){return UI.default.scan(t,HI).isBrace}var EJ=te(Kw()),ls=te(require("stream")),yJ=te(require("string_decoder")),ki;(function(i){i[i.STDIN=0]="STDIN",i[i.STDOUT=1]="STDOUT",i[i.STDERR=2]="STDERR"})(ki||(ki={}));var LA=new Set;function IS(){}function ES(){for(let t of LA)t.kill()}function BJ(t,e,r,i){return n=>{let s=n[0]instanceof ls.Transform?"pipe":n[0],o=n[1]instanceof ls.Transform?"pipe":n[1],a=n[2]instanceof ls.Transform?"pipe":n[2],l=(0,EJ.default)(t,e,V(k({},i),{stdio:[s,o,a]}));return LA.add(l),LA.size===1&&(process.on("SIGINT",IS),process.on("SIGTERM",ES)),n[0]instanceof ls.Transform&&n[0].pipe(l.stdin),n[1]instanceof ls.Transform&&l.stdout.pipe(n[1],{end:!1}),n[2]instanceof ls.Transform&&l.stderr.pipe(n[2],{end:!1}),{stdin:l.stdin,promise:new Promise(c=>{l.on("error",u=>{switch(LA.delete(l),LA.size===0&&(process.off("SIGINT",IS),process.off("SIGTERM",ES)),u.code){case"ENOENT":n[2].write(`command not found: ${t} `),c(127);break;case"EACCES":n[2].write(`permission denied: ${t} `),c(128);break;default:n[2].write(`uncaught error: ${u.message} -`),c(1);break}}),l.on("exit",u=>{uA.delete(l),uA.size===0&&(process.off("SIGINT",AD),process.off("SIGTERM",lD)),c(u!==null?u:129)})})}}}function JG(t){return e=>{let r=e[0]==="pipe"?new Ts.PassThrough:e[0];return{stdin:r,promise:Promise.resolve().then(()=>t({stdin:r,stdout:e[1],stderr:e[2]}))}}}var Pn=class{constructor(e){this.stream=e}close(){}get(){return this.stream}},WG=class{constructor(){this.stream=null}close(){if(this.stream===null)throw new Error("Assertion failed: No stream attached");this.stream.end()}attach(e){this.stream=e}get(){if(this.stream===null)throw new Error("Assertion failed: No stream attached");return this.stream}},dh=class{constructor(e,r){this.stdin=null;this.stdout=null;this.stderr=null;this.pipe=null;this.ancestor=e,this.implementation=r}static start(e,{stdin:r,stdout:i,stderr:n}){let s=new dh(null,e);return s.stdin=r,s.stdout=i,s.stderr=n,s}pipeTo(e,r=1){let i=new dh(this,e),n=new WG;return i.pipe=n,i.stdout=this.stdout,i.stderr=this.stderr,(r&1)==1?this.stdout=n:this.ancestor!==null&&(this.stderr=this.ancestor.stdout),(r&2)==2?this.stderr=n:this.ancestor!==null&&(this.stderr=this.ancestor.stderr),i}async exec(){let e=["ignore","ignore","ignore"];if(this.pipe)e[0]="pipe";else{if(this.stdin===null)throw new Error("Assertion failed: No input stream registered");e[0]=this.stdin.get()}let r;if(this.stdout===null)throw new Error("Assertion failed: No output stream registered");r=this.stdout,e[1]=r.get();let i;if(this.stderr===null)throw new Error("Assertion failed: No error stream registered");i=this.stderr,e[2]=i.get();let n=this.implementation(e);return this.pipe&&this.pipe.attach(n.stdin),await n.promise.then(s=>(r.close(),i.close(),s))}async run(){let e=[];for(let i=this;i;i=i.ancestor)e.push(i.exec());return(await Promise.all(e))[0]}};function Jm(t,e){return dh.start(t,e)}var Ur;(function(t){t[t.Readable=1]="Readable",t[t.Writable=2]="Writable"})(Ur||(Ur={}));function XG(t,e,r){let i=new on.PassThrough({autoDestroy:!0});switch(t){case Ei.STDIN:(e&1)==1&&r.stdin.pipe(i,{end:!1}),(e&2)==2&&r.stdin instanceof on.Writable&&i.pipe(r.stdin,{end:!1});break;case Ei.STDOUT:(e&1)==1&&r.stdout.pipe(i,{end:!1}),(e&2)==2&&i.pipe(r.stdout,{end:!1});break;case Ei.STDERR:(e&1)==1&&r.stderr.pipe(i,{end:!1}),(e&2)==2&&i.pipe(r.stderr,{end:!1});break;default:throw new To(`Bad file descriptor: "${t}"`)}return i}function cD(t,e={}){let r={...t,...e};return r.environment={...t.environment,...e.environment},r.variables={...t.variables,...e.variables},r}var bye=new Map([["cd",async([t=zG.homedir(),...e],r,i)=>{let n=w.resolve(i.cwd,npath.toPortablePath(t));return(await r.baseFs.statPromise(n)).isDirectory()?(i.cwd=n,0):(i.stderr.write(`cd: not a directory -`),1)}],["pwd",async(t,e,r)=>(r.stdout.write(`${npath.fromPortablePath(r.cwd)} +`),c(1);break}}),l.on("exit",u=>{LA.delete(l),LA.size===0&&(process.off("SIGINT",IS),process.off("SIGTERM",ES)),c(u!==null?u:129)})})}}}function wJ(t){return e=>{let r=e[0]==="pipe"?new ls.PassThrough:e[0];return{stdin:r,promise:Promise.resolve().then(()=>t({stdin:r,stdout:e[1],stderr:e[2]}))}}}var Kn=class{constructor(e){this.stream=e}close(){}get(){return this.stream}},QJ=class{constructor(){this.stream=null}close(){if(this.stream===null)throw new Error("Assertion failed: No stream attached");this.stream.end()}attach(e){this.stream=e}get(){if(this.stream===null)throw new Error("Assertion failed: No stream attached");return this.stream}},Zh=class{constructor(e,r){this.stdin=null;this.stdout=null;this.stderr=null;this.pipe=null;this.ancestor=e,this.implementation=r}static start(e,{stdin:r,stdout:i,stderr:n}){let s=new Zh(null,e);return s.stdin=r,s.stdout=i,s.stderr=n,s}pipeTo(e,r=1){let i=new Zh(this,e),n=new QJ;return i.pipe=n,i.stdout=this.stdout,i.stderr=this.stderr,(r&1)==1?this.stdout=n:this.ancestor!==null&&(this.stderr=this.ancestor.stdout),(r&2)==2?this.stderr=n:this.ancestor!==null&&(this.stderr=this.ancestor.stderr),i}async exec(){let e=["ignore","ignore","ignore"];if(this.pipe)e[0]="pipe";else{if(this.stdin===null)throw new Error("Assertion failed: No input stream registered");e[0]=this.stdin.get()}let r;if(this.stdout===null)throw new Error("Assertion failed: No output stream registered");r=this.stdout,e[1]=r.get();let i;if(this.stderr===null)throw new Error("Assertion failed: No error stream registered");i=this.stderr,e[2]=i.get();let n=this.implementation(e);return this.pipe&&this.pipe.attach(n.stdin),await n.promise.then(s=>(r.close(),i.close(),s))}async run(){let e=[];for(let i=this;i;i=i.ancestor)e.push(i.exec());return(await Promise.all(e))[0]}};function YI(t,e){return Zh.start(t,e)}function bJ(t,e=null){let r=new ls.PassThrough,i=new yJ.StringDecoder,n="";return r.on("data",s=>{let o=i.write(s),a;do if(a=o.indexOf(` +`),a!==-1){let l=n+o.substr(0,a);o=o.substr(a+1),n="",t(e!==null?`${e} ${l}`:l)}while(a!==-1);n+=o}),r.on("end",()=>{let s=i.end();s!==""&&t(e!==null?`${e} ${s}`:s)}),r}function DJ(t,{prefix:e}){return{stdout:bJ(r=>t.stdout.write(`${r} +`),t.stdout.isTTY?e:null),stderr:bJ(r=>t.stderr.write(`${r} +`),t.stderr.isTTY?e:null)}}var Cwe=(0,PJ.promisify)(setTimeout);var Vr;(function(r){r[r.Readable=1]="Readable",r[r.Writable=2]="Writable"})(Vr||(Vr={}));function kJ(t,e,r){let i=new qi.PassThrough({autoDestroy:!0});switch(t){case ki.STDIN:(e&1)==1&&r.stdin.pipe(i,{end:!1}),(e&2)==2&&r.stdin instanceof qi.Writable&&i.pipe(r.stdin,{end:!1});break;case ki.STDOUT:(e&1)==1&&r.stdout.pipe(i,{end:!1}),(e&2)==2&&i.pipe(r.stdout,{end:!1});break;case ki.STDERR:(e&1)==1&&r.stderr.pipe(i,{end:!1}),(e&2)==2&&i.pipe(r.stderr,{end:!1});break;default:throw new ia(`Bad file descriptor: "${t}"`)}return i}function GI(t,e={}){let r=k(k({},t),e);return r.environment=k(k({},t.environment),e.environment),r.variables=k(k({},t.variables),e.variables),r}var mwe=new Map([["cd",async([t=(0,xJ.homedir)(),...e],r,i)=>{let n=B.resolve(i.cwd,L.toPortablePath(t));return(await r.baseFs.statPromise(n)).isDirectory()?(i.cwd=n,0):(i.stderr.write(`cd: not a directory +`),1)}],["pwd",async(t,e,r)=>(r.stdout.write(`${L.fromPortablePath(r.cwd)} `),0)],[":",async(t,e,r)=>0],["true",async(t,e,r)=>0],["false",async(t,e,r)=>1],["exit",async([t,...e],r,i)=>i.exitCode=parseInt(t!=null?t:i.variables["?"],10)],["echo",async(t,e,r)=>(r.stdout.write(`${t.join(" ")} -`),0)],["__ysh_run_procedure",async(t,e,r)=>{let i=r.procedures[t[0]];return await Jm(i,{stdin:new Pn(r.stdin),stdout:new Pn(r.stdout),stderr:new Pn(r.stderr)}).run()}],["__ysh_set_redirects",async(t,e,r)=>{let i=r.stdin,n=r.stdout,s=r.stderr,o=[],a=[],l=0;for(;t[l]!=="--";){let u=t[l++],g=Number(t[l++]),h=l+g;for(let f=l;fe.baseFs.createReadStream(w.resolve(r.cwd,npath.toPortablePath(t[f]))));break;case"<<<":o.push(()=>{let p=new on.PassThrough;return process.nextTick(()=>{p.write(`${t[f]} -`),p.end()}),p});break;case"<&":o.push(()=>XG(Number(t[f]),1,r));break;case">":case">>":{let p=w.resolve(r.cwd,npath.toPortablePath(t[f]));p==="/dev/null"?a.push(new on.Writable({autoDestroy:!0,emitClose:!0,write(m,I,y){setImmediate(y)}})):a.push(e.baseFs.createWriteStream(p,u===">>"?{flags:"a"}:void 0))}break;case">&":a.push(XG(Number(t[f]),2,r));break;default:throw new Error(`Assertion failed: Unsupported redirection type: "${u}"`)}}if(o.length>0){let u=new on.PassThrough;i=u;let g=h=>{if(h===o.length)u.end();else{let f=o[h]();f.pipe(u,{end:!1}),f.on("end",()=>{g(h+1)})}};g(0)}if(a.length>0){let u=new on.PassThrough;n=u;for(let g of a)u.pipe(g)}let c=await Jm(mh(t.slice(l+1),e,r),{stdin:new Pn(i),stdout:new Pn(n),stderr:new Pn(s)}).run();return await Promise.all(a.map(u=>new Promise((g,h)=>{u.on("error",f=>{h(f)}),u.on("close",()=>{g()}),u.end()}))),c}]]);async function Dye(t,e,r){let i=[],n=new on.PassThrough;return n.on("data",s=>i.push(s)),await Wm(t,e,cD(r,{stdout:n})),Buffer.concat(i).toString().replace(/[\r\n]+$/,"")}async function VG(t,e,r){let i=t.map(async s=>{let o=await gA(s.args,e,r);return{name:s.name,value:o.join(" ")}});return(await Promise.all(i)).reduce((s,o)=>(s[o.name]=o.value,s),{})}function uD(t){return t.match(/[^ \r\n\t]+/g)||[]}async function ZG(t,e,r,i,n=i){switch(t.name){case"$":i(String(process.pid));break;case"#":i(String(e.args.length));break;case"@":if(t.quoted)for(let s of e.args)n(s);else for(let s of e.args){let o=uD(s);for(let a=0;a=0&&st+e,subtraction:(t,e)=>t-e,multiplication:(t,e)=>t*e,division:(t,e)=>Math.trunc(t/e)};async function Ih(t,e,r){if(t.type==="number"){if(Number.isInteger(t.value))return t.value;throw new Error(`Invalid number: "${t.value}", only integers are allowed`)}else if(t.type==="variable"){let i=[];await ZG({...t,quoted:!0},e,r,s=>i.push(s));let n=Number(i.join(" "));return Number.isNaN(n)?Ih({type:"variable",name:i.join(" ")},e,r):Ih({type:"number",value:n},e,r)}else return Sye[t.type](await Ih(t.left,e,r),await Ih(t.right,e,r))}async function gA(t,e,r){let i=new Map,n=[],s=[],o=u=>{s.push(u)},a=()=>{s.length>0&&n.push(s.join("")),s=[]},l=u=>{o(u),a()},c=(u,g)=>{let h=i.get(u);typeof h=="undefined"&&i.set(u,h=[]),h.push(g)};for(let u of t){let g=!1;switch(u.type){case"redirection":{let h=await gA(u.args,e,r);for(let f of h)c(u.subtype,f)}break;case"argument":for(let h of u.segments)switch(h.type){case"text":o(h.text);break;case"glob":o(h.pattern),g=!0;break;case"shell":{let f=await Dye(h.shell,e,r);if(h.quoted)o(f);else{let p=uD(f);for(let m=0;m0){let u=[];for(let[g,h]of i.entries())u.splice(u.length,0,g,String(h.length),...h);n.splice(0,0,"__ysh_set_redirects",...u,"--")}return n}function mh(t,e,r){e.builtins.has(t[0])||(t=["command",...t]);let i=npath.fromPortablePath(r.cwd),n=r.environment;typeof n.PWD!="undefined"&&(n={...n,PWD:i});let[s,...o]=t;if(s==="command")return qG(o[0],o.slice(1),e,{cwd:i,env:n});let a=e.builtins.get(s);if(typeof a=="undefined")throw new Error(`Assertion failed: A builtin should exist for "${s}"`);return JG(async({stdin:l,stdout:c,stderr:u})=>(r.stdin=l,r.stdout=c,r.stderr=u,await a(o,e,r)))}function Pye(t,e,r){return i=>{let n=new on.PassThrough,s=Wm(t,e,cD(r,{stdin:n}));return{stdin:n,promise:s}}}function xye(t,e,r){return i=>{let n=new on.PassThrough,s=Wm(t,e,r);return{stdin:n,promise:s}}}function _G(t,e,r,i){if(e.length===0)return t;{let n;do n=String(Math.random());while(Object.prototype.hasOwnProperty.call(i.procedures,n));return i.procedures={...i.procedures},i.procedures[n]=t,mh([...e,"__ysh_run_procedure",n],r,i)}}async function kye(t,e,r){let i=t,n=null,s=null;for(;i;){let o=i.then?{...r}:r,a;switch(i.type){case"command":{let l=await gA(i.args,e,r),c=await VG(i.envs,e,r);a=i.envs.length?mh(l,e,cD(o,{environment:c})):mh(l,e,o)}break;case"subshell":{let l=await gA(i.args,e,r),c=Pye(i.subshell,e,o);a=_G(c,l,e,o)}break;case"group":{let l=await gA(i.args,e,r),c=xye(i.group,e,o);a=_G(c,l,e,o)}break;case"envs":{let l=await VG(i.envs,e,r);o.environment={...o.environment,...l},a=mh(["true"],e,o)}break}if(typeof a=="undefined")throw new Error("Assertion failed: An action should have been generated");if(n===null)s=Jm(a,{stdin:new Pn(o.stdin),stdout:new Pn(o.stdout),stderr:new Pn(o.stderr)});else{if(s===null)throw new Error("Assertion failed: The execution pipeline should have been setup");switch(n){case"|":s=s.pipeTo(a,Ei.STDOUT);break;case"|&":s=s.pipeTo(a,Ei.STDOUT|Ei.STDERR);break}}i.then?(n=i.then.type,i=i.then.chain):i=null}if(s===null)throw new Error("Assertion failed: The execution pipeline should have been setup");return await s.run()}async function vye(t,e,r){let i,n=o=>{i=o,r.variables["?"]=String(o)},s=async o=>{try{return await kye(o,e,r)}catch(a){if(!(a instanceof To))throw a;return r.stderr.write(`${a.message} -`),1}};for(n(await s(t.chain));t.then;){if(r.exitCode!==null)return r.exitCode;switch(t.then.type){case"&&":i===0&&n(await s(t.then.line.chain));break;case"||":i!==0&&n(await s(t.then.line.chain));break;default:throw new Error(`Assertion failed: Unsupported command type: "${t.then.type}"`)}t=t.then.line}return i}async function Wm(t,e,r){let i=0;for(let{command:n,type:s}of t){if(s==="&")throw new Error("Background jobs aren't currently supported. For more details, please read this issue: https://github.com/yarnpkg/berry/issues/1349");if(i=await vye(n,e,r),r.exitCode!==null)return r.exitCode;r.variables["?"]=String(i)}return i}function $G(t){switch(t.type){case"variable":return t.name==="@"||t.name==="#"||t.name==="*"||Number.isFinite(parseInt(t.name,10))||"defaultValue"in t&&!!t.defaultValue&&t.defaultValue.some(e=>zm(e));case"arithmetic":return gD(t.arithmetic);case"shell":return hD(t.shell);default:return!1}}function zm(t){switch(t.type){case"redirection":return t.args.some(e=>zm(e));case"argument":return t.segments.some(e=>$G(e));default:throw new Error(`Assertion failed: Unsupported argument type: "${t.type}"`)}}function gD(t){switch(t.type){case"variable":return $G(t);case"number":return!1;default:return gD(t.left)||gD(t.right)}}function hD(t){return t.some(({command:e})=>{for(;e;){let r=e.chain;for(;r;){let i;switch(r.type){case"subshell":i=hD(r.subshell);break;case"command":i=r.envs.some(n=>n.args.some(s=>zm(s)))||r.args.some(n=>zm(n));break}if(i)return!0;if(!r.then)break;r=r.then.chain}if(!e.then)break;e=e.then.line}return!1})}async function Xm(t,e=[],{baseFs:r=new It,builtins:i={},cwd:n=npath.toPortablePath(process.cwd()),env:s=process.env,stdin:o=process.stdin,stdout:a=process.stdout,stderr:l=process.stderr,variables:c={},glob:u=jm}={}){let g={};for(let[p,m]of Object.entries(s))typeof m!="undefined"&&(g[p]=m);let h=new Map(bye);for(let[p,m]of Object.entries(i))h.set(p,m);o===null&&(o=new on.PassThrough,o.end());let f=Pm(t,u);if(!hD(f)&&f.length>0&&e.length>0){let{command:p}=f[f.length-1];for(;p.then;)p=p.then.line;let m=p.chain;for(;m.then;)m=m.then.chain;m.type==="command"&&(m.args=m.args.concat(e.map(I=>({type:"argument",segments:[{type:"text",text:I}]}))))}return await Wm(f,{args:e,baseFs:r,builtins:h,initialStdin:o,initialStdout:a,initialStderr:l,glob:u},{cwd:n,environment:g,exitCode:null,procedures:{},stdin:o,stdout:a,stderr:l,variables:Object.assign({},c,{["?"]:0})})}var AJ=X(ID()),lJ=X(Zm()),nc=X(require("stream"));var Zq=X(hr()),ic=X(Zi());var St={};We(St,{SemVer:()=>zq.SemVer,satisfiesWithPrereleases:()=>yh,validRange:()=>kn});var _m=X(hr()),zq=X(hr()),Xq=new Map;function yh(t,e,r=!1){if(!t)return!1;let i=`${e}${r}`,n=Xq.get(i);if(typeof n=="undefined")try{n=new _m.default.Range(e,{includePrerelease:!0,loose:r})}catch{return!1}finally{Xq.set(i,n||null)}else if(n===null)return!1;let s;try{s=new _m.default.SemVer(t,n),s.prerelease&&(s.prerelease=[])}catch(o){return!1}return n.set.some(o=>{for(let a of o)a.semver.prerelease&&(a.semver.prerelease=[]);return o.every(a=>a.test(s))})}var Vq=new Map;function kn(t){if(t.indexOf(":")!==-1)return null;let e=Vq.get(t);if(typeof e!="undefined")return e;try{e=new _m.default.Range(t)}catch{e=null}return Vq.set(t,e),e}var Ko=class{constructor(){this.indent=" ";this.name=null;this.version=null;this.os=null;this.cpu=null;this.type=null;this.private=!1;this.license=null;this.main=null;this.module=null;this.browser=null;this.languageName=null;this.bin=new Map;this.scripts=new Map;this.dependencies=new Map;this.devDependencies=new Map;this.peerDependencies=new Map;this.workspaceDefinitions=[];this.dependenciesMeta=new Map;this.peerDependenciesMeta=new Map;this.resolutions=[];this.files=null;this.publishConfig=null;this.installConfig=null;this.preferUnplugged=null;this.raw={};this.errors=[]}static async tryFind(e,{baseFs:r=new It}={}){let i=w.join(e,"package.json");return await r.existsPromise(i)?await Ko.fromFile(i,{baseFs:r}):null}static async find(e,{baseFs:r}={}){let i=await Ko.tryFind(e,{baseFs:r});if(i===null)throw new Error("Manifest not found");return i}static async fromFile(e,{baseFs:r=new It}={}){let i=new Ko;return await i.loadFile(e,{baseFs:r}),i}static fromText(e){let r=new Ko;return r.loadFromText(e),r}static isManifestFieldCompatible(e,r){if(e===null)return!0;let i=!0,n=!1;for(let s of e)if(s[0]==="!"){if(n=!0,r===s.slice(1))return!1}else if(i=!1,s===r)return!0;return n&&i}loadFromText(e){let r;try{r=JSON.parse($q(e)||"{}")}catch(i){throw i.message+=` (when parsing ${e})`,i}this.load(r),this.indent=_q(e)}async loadFile(e,{baseFs:r=new It}){let i=await r.readFilePromise(e,"utf8"),n;try{n=JSON.parse($q(i)||"{}")}catch(s){throw s.message+=` (when parsing ${e})`,s}this.load(n),this.indent=_q(i)}load(e,{yamlCompatibilityMode:r=!1}={}){if(typeof e!="object"||e===null)throw new Error(`Utterly invalid manifest data (${e})`);this.raw=e;let i=[];if(this.name=null,typeof e.name=="string")try{this.name=di(e.name)}catch(s){i.push(new Error("Parsing failed for the 'name' field"))}if(typeof e.version=="string"?this.version=e.version:this.version=null,Array.isArray(e.os)){let s=[];this.os=s;for(let o of e.os)typeof o!="string"?i.push(new Error("Parsing failed for the 'os' field")):s.push(o)}else this.os=null;if(Array.isArray(e.cpu)){let s=[];this.cpu=s;for(let o of e.cpu)typeof o!="string"?i.push(new Error("Parsing failed for the 'cpu' field")):s.push(o)}else this.cpu=null;if(typeof e.type=="string"?this.type=e.type:this.type=null,typeof e.private=="boolean"?this.private=e.private:this.private=!1,typeof e.license=="string"?this.license=e.license:this.license=null,typeof e.languageName=="string"?this.languageName=e.languageName:this.languageName=null,typeof e.main=="string"?this.main=ii(e.main):this.main=null,typeof e.module=="string"?this.module=ii(e.module):this.module=null,e.browser!=null)if(typeof e.browser=="string")this.browser=ii(e.browser);else{this.browser=new Map;for(let[s,o]of Object.entries(e.browser))this.browser.set(ii(s),typeof o=="string"?ii(o):o)}else this.browser=null;if(this.bin=new Map,typeof e.bin=="string")this.name!==null?this.bin.set(this.name.name,ii(e.bin)):i.push(new Error("String bin field, but no attached package name"));else if(typeof e.bin=="object"&&e.bin!==null)for(let[s,o]of Object.entries(e.bin)){if(typeof o!="string"){i.push(new Error(`Invalid bin definition for '${s}'`));continue}this.bin.set(s,ii(o))}if(this.scripts=new Map,typeof e.scripts=="object"&&e.scripts!==null)for(let[s,o]of Object.entries(e.scripts)){if(typeof o!="string"){i.push(new Error(`Invalid script definition for '${s}'`));continue}this.scripts.set(s,o)}if(this.dependencies=new Map,typeof e.dependencies=="object"&&e.dependencies!==null)for(let[s,o]of Object.entries(e.dependencies)){if(typeof o!="string"){i.push(new Error(`Invalid dependency range for '${s}'`));continue}let a;try{a=di(s)}catch(c){i.push(new Error(`Parsing failed for the dependency name '${s}'`));continue}let l=Yt(a,o);this.dependencies.set(l.identHash,l)}if(this.devDependencies=new Map,typeof e.devDependencies=="object"&&e.devDependencies!==null)for(let[s,o]of Object.entries(e.devDependencies)){if(typeof o!="string"){i.push(new Error(`Invalid dependency range for '${s}'`));continue}let a;try{a=di(s)}catch(c){i.push(new Error(`Parsing failed for the dependency name '${s}'`));continue}let l=Yt(a,o);this.devDependencies.set(l.identHash,l)}if(this.peerDependencies=new Map,typeof e.peerDependencies=="object"&&e.peerDependencies!==null)for(let[s,o]of Object.entries(e.peerDependencies)){let a;try{a=di(s)}catch(c){i.push(new Error(`Parsing failed for the dependency name '${s}'`));continue}(typeof o!="string"||!kn(o))&&(i.push(new Error(`Invalid dependency range for '${s}'`)),o="*");let l=Yt(a,o);this.peerDependencies.set(l.identHash,l)}typeof e.workspaces=="object"&&e.workspaces.nohoist&&i.push(new Error("'nohoist' is deprecated, please use 'installConfig.hoistingLimits' instead"));let n=Array.isArray(e.workspaces)?e.workspaces:typeof e.workspaces=="object"&&e.workspaces!==null&&Array.isArray(e.workspaces.packages)?e.workspaces.packages:[];this.workspaceDefinitions=[];for(let s of n){if(typeof s!="string"){i.push(new Error(`Invalid workspace definition for '${s}'`));continue}this.workspaceDefinitions.push({pattern:s})}if(this.dependenciesMeta=new Map,typeof e.dependenciesMeta=="object"&&e.dependenciesMeta!==null)for(let[s,o]of Object.entries(e.dependenciesMeta)){if(typeof o!="object"||o===null){i.push(new Error(`Invalid meta field for '${s}`));continue}let a=Po(s),l=this.ensureDependencyMeta(a),c=$m(o.built,{yamlCompatibilityMode:r});if(c===null){i.push(new Error(`Invalid built meta field for '${s}'`));continue}let u=$m(o.optional,{yamlCompatibilityMode:r});if(u===null){i.push(new Error(`Invalid optional meta field for '${s}'`));continue}let g=$m(o.unplugged,{yamlCompatibilityMode:r});if(g===null){i.push(new Error(`Invalid unplugged meta field for '${s}'`));continue}Object.assign(l,{built:c,optional:u,unplugged:g})}if(this.peerDependenciesMeta=new Map,typeof e.peerDependenciesMeta=="object"&&e.peerDependenciesMeta!==null)for(let[s,o]of Object.entries(e.peerDependenciesMeta)){if(typeof o!="object"||o===null){i.push(new Error(`Invalid meta field for '${s}'`));continue}let a=Po(s),l=this.ensurePeerDependencyMeta(a),c=$m(o.optional,{yamlCompatibilityMode:r});if(c===null){i.push(new Error(`Invalid optional meta field for '${s}'`));continue}Object.assign(l,{optional:c})}if(this.resolutions=[],typeof e.resolutions=="object"&&e.resolutions!==null)for(let[s,o]of Object.entries(e.resolutions)){if(typeof o!="string"){i.push(new Error(`Invalid resolution entry for '${s}'`));continue}try{this.resolutions.push({pattern:xm(s),reference:o})}catch(a){i.push(a);continue}}if(Array.isArray(e.files)){this.files=new Set;for(let s of e.files){if(typeof s!="string"){i.push(new Error(`Invalid files entry for '${s}'`));continue}this.files.add(s)}}else this.files=null;if(typeof e.publishConfig=="object"&&e.publishConfig!==null){if(this.publishConfig={},typeof e.publishConfig.access=="string"&&(this.publishConfig.access=e.publishConfig.access),typeof e.publishConfig.main=="string"&&(this.publishConfig.main=ii(e.publishConfig.main)),typeof e.publishConfig.module=="string"&&(this.publishConfig.module=ii(e.publishConfig.module)),e.publishConfig.browser!=null)if(typeof e.publishConfig.browser=="string")this.publishConfig.browser=ii(e.publishConfig.browser);else{this.publishConfig.browser=new Map;for(let[s,o]of Object.entries(e.publishConfig.browser))this.publishConfig.browser.set(ii(s),typeof o=="string"?ii(o):o)}if(typeof e.publishConfig.registry=="string"&&(this.publishConfig.registry=e.publishConfig.registry),typeof e.publishConfig.bin=="string")this.name!==null?this.publishConfig.bin=new Map([[this.name.name,ii(e.publishConfig.bin)]]):i.push(new Error("String bin field, but no attached package name"));else if(typeof e.publishConfig.bin=="object"&&e.publishConfig.bin!==null){this.publishConfig.bin=new Map;for(let[s,o]of Object.entries(e.publishConfig.bin)){if(typeof o!="string"){i.push(new Error(`Invalid bin definition for '${s}'`));continue}this.publishConfig.bin.set(s,ii(o))}}if(Array.isArray(e.publishConfig.executableFiles)){this.publishConfig.executableFiles=new Set;for(let s of e.publishConfig.executableFiles){if(typeof s!="string"){i.push(new Error("Invalid executable file definition"));continue}this.publishConfig.executableFiles.add(ii(s))}}}else this.publishConfig=null;if(typeof e.installConfig=="object"&&e.installConfig!==null){this.installConfig={};for(let s of Object.keys(e.installConfig))s==="hoistingLimits"?typeof e.installConfig.hoistingLimits=="string"?this.installConfig.hoistingLimits=e.installConfig.hoistingLimits:i.push(new Error("Invalid hoisting limits definition")):i.push(new Error(`Unrecognized installConfig key: ${s}`))}else this.installConfig=null;if(typeof e.optionalDependencies=="object"&&e.optionalDependencies!==null)for(let[s,o]of Object.entries(e.optionalDependencies)){if(typeof o!="string"){i.push(new Error(`Invalid dependency range for '${s}'`));continue}let a;try{a=di(s)}catch(g){i.push(new Error(`Parsing failed for the dependency name '${s}'`));continue}let l=Yt(a,o);this.dependencies.set(l.identHash,l);let c=Yt(a,"unknown"),u=this.ensureDependencyMeta(c);Object.assign(u,{optional:!0})}typeof e.preferUnplugged=="boolean"?this.preferUnplugged=e.preferUnplugged:this.preferUnplugged=null,this.errors=i}getForScope(e){switch(e){case"dependencies":return this.dependencies;case"devDependencies":return this.devDependencies;case"peerDependencies":return this.peerDependencies;default:throw new Error(`Unsupported value ("${e}")`)}}hasConsumerDependency(e){return!!(this.dependencies.has(e.identHash)||this.peerDependencies.has(e.identHash))}hasHardDependency(e){return!!(this.dependencies.has(e.identHash)||this.devDependencies.has(e.identHash))}hasSoftDependency(e){return!!this.peerDependencies.has(e.identHash)}hasDependency(e){return!!(this.hasHardDependency(e)||this.hasSoftDependency(e))}isCompatibleWithOS(e){return Ko.isManifestFieldCompatible(this.os,e)}isCompatibleWithCPU(e){return Ko.isManifestFieldCompatible(this.cpu,e)}ensureDependencyMeta(e){if(e.range!=="unknown"&&!Zq.default.valid(e.range))throw new Error(`Invalid meta field range for '${Ci(e)}'`);let r=gt(e),i=e.range!=="unknown"?e.range:null,n=this.dependenciesMeta.get(r);n||this.dependenciesMeta.set(r,n=new Map);let s=n.get(i);return s||n.set(i,s={}),s}ensurePeerDependencyMeta(e){if(e.range!=="unknown")throw new Error(`Invalid meta field range for '${Ci(e)}'`);let r=gt(e),i=this.peerDependenciesMeta.get(r);return i||this.peerDependenciesMeta.set(r,i={}),i}setRawField(e,r,{after:i=[]}={}){let n=new Set(i.filter(s=>Object.prototype.hasOwnProperty.call(this.raw,s)));if(n.size===0||Object.prototype.hasOwnProperty.call(this.raw,e))this.raw[e]=r;else{let s=this.raw,o=this.raw={},a=!1;for(let l of Object.keys(s))o[l]=s[l],a||(n.delete(l),n.size===0&&(o[e]=r,a=!0))}}exportTo(e,{compatibilityMode:r=!0}={}){if(Object.assign(e,this.raw),this.name!==null?e.name=gt(this.name):delete e.name,this.version!==null?e.version=this.version:delete e.version,this.os!==null?e.os=this.os:delete e.os,this.cpu!==null?e.cpu=this.cpu:delete e.cpu,this.type!==null?e.type=this.type:delete e.type,this.private?e.private=!0:delete e.private,this.license!==null?e.license=this.license:delete e.license,this.languageName!==null?e.languageName=this.languageName:delete e.languageName,this.main!==null?e.main=this.main:delete e.main,this.module!==null?e.module=this.module:delete e.module,this.browser!==null){let s=this.browser;typeof s=="string"?e.browser=s:s instanceof Map&&(e.browser=Object.assign({},...Array.from(s.keys()).sort().map(o=>({[o]:s.get(o)}))))}else delete e.browser;this.bin.size===1&&this.name!==null&&this.bin.has(this.name.name)?e.bin=this.bin.get(this.name.name):this.bin.size>0?e.bin=Object.assign({},...Array.from(this.bin.keys()).sort().map(s=>({[s]:this.bin.get(s)}))):delete e.bin,this.workspaceDefinitions.length>0?this.raw.workspaces&&!Array.isArray(this.raw.workspaces)?e.workspaces={...this.raw.workspaces,packages:this.workspaceDefinitions.map(({pattern:s})=>s)}:e.workspaces=this.workspaceDefinitions.map(({pattern:s})=>s):this.raw.workspaces&&!Array.isArray(this.raw.workspaces)&&Object.keys(this.raw.workspaces).length>0?e.workspaces=this.raw.workspaces:delete e.workspaces;let i=[],n=[];for(let s of this.dependencies.values()){let o=this.dependenciesMeta.get(gt(s)),a=!1;if(r&&o){let l=o.get(null);l&&l.optional&&(a=!0)}a?n.push(s):i.push(s)}i.length>0?e.dependencies=Object.assign({},...Ll(i).map(s=>({[gt(s)]:s.range}))):delete e.dependencies,n.length>0?e.optionalDependencies=Object.assign({},...Ll(n).map(s=>({[gt(s)]:s.range}))):delete e.optionalDependencies,this.devDependencies.size>0?e.devDependencies=Object.assign({},...Ll(this.devDependencies.values()).map(s=>({[gt(s)]:s.range}))):delete e.devDependencies,this.peerDependencies.size>0?e.peerDependencies=Object.assign({},...Ll(this.peerDependencies.values()).map(s=>({[gt(s)]:s.range}))):delete e.peerDependencies,e.dependenciesMeta={};for(let[s,o]of ic.sortMap(this.dependenciesMeta.entries(),([a,l])=>a))for(let[a,l]of ic.sortMap(o.entries(),([c,u])=>c!==null?`0${c}`:"1")){let c=a!==null?Ci(Yt(di(s),a)):s,u={...l};r&&a===null&&delete u.optional,Object.keys(u).length!==0&&(e.dependenciesMeta[c]=u)}return Object.keys(e.dependenciesMeta).length===0&&delete e.dependenciesMeta,this.peerDependenciesMeta.size>0?e.peerDependenciesMeta=Object.assign({},...ic.sortMap(this.peerDependenciesMeta.entries(),([s,o])=>s).map(([s,o])=>({[s]:o}))):delete e.peerDependenciesMeta,this.resolutions.length>0?e.resolutions=Object.assign({},...this.resolutions.map(({pattern:s,reference:o})=>({[km(s)]:o}))):delete e.resolutions,this.files!==null?e.files=Array.from(this.files):delete e.files,this.preferUnplugged!==null?e.preferUnplugged=this.preferUnplugged:delete e.preferUnplugged,e}},je=Ko;je.fileName="package.json",je.allDependencies=["dependencies","devDependencies","peerDependencies"],je.hardDependencies=["dependencies","devDependencies"];function _q(t){let e=t.match(/^[ \t]+/m);return e?e[0]:" "}function $q(t){return t.charCodeAt(0)===65279?t.slice(1):t}function ii(t){return t.replace(/\\/g,"/")}function $m(t,{yamlCompatibilityMode:e}){return e?ic.tryParseOptionalBoolean(t):typeof t=="undefined"||typeof t=="boolean"?t:null}var iJ=X(rJ());var nJ=["\u280B","\u2819","\u2839","\u2838","\u283C","\u2834","\u2826","\u2827","\u2807","\u280F"],sJ=80,$Be=new Set([J.FETCH_NOT_CACHED,J.UNUSED_CACHE_ENTRY]),ewe=5,Uo=process.env.GITHUB_ACTIONS?{start:t=>`::group::${t} +`),0)],["sleep",async([t],e,r)=>{if(typeof t=="undefined")return r.stderr.write(`sleep: missing operand +`),1;let i=Number(t);return Number.isNaN(i)?(r.stderr.write(`sleep: invalid time interval '${t}' +`),1):await Cwe(1e3*i,0)}],["__ysh_run_procedure",async(t,e,r)=>{let i=r.procedures[t[0]];return await YI(i,{stdin:new Kn(r.stdin),stdout:new Kn(r.stdout),stderr:new Kn(r.stderr)}).run()}],["__ysh_set_redirects",async(t,e,r)=>{let i=r.stdin,n=r.stdout,s=r.stderr,o=[],a=[],l=[],c=0;for(;t[c]!=="--";){let g=t[c++],{type:h,fd:f}=JSON.parse(g),p=w=>{switch(f){case null:case 0:o.push(w);break;default:throw new Error(`Unsupported file descriptor: "${f}"`)}},m=w=>{switch(f){case null:case 1:a.push(w);break;case 2:l.push(w);break;default:throw new Error(`Unsupported file descriptor: "${f}"`)}},I=Number(t[c++]),y=c+I;for(let w=c;we.baseFs.createReadStream(B.resolve(r.cwd,L.toPortablePath(t[w]))));break;case"<<<":p(()=>{let x=new qi.PassThrough;return process.nextTick(()=>{x.write(`${t[w]} +`),x.end()}),x});break;case"<&":p(()=>kJ(Number(t[w]),1,r));break;case">":case">>":{let x=B.resolve(r.cwd,L.toPortablePath(t[w]));m(x==="/dev/null"?new qi.Writable({autoDestroy:!0,emitClose:!0,write(F,N,K){setImmediate(K)}}):e.baseFs.createWriteStream(x,h===">>"?{flags:"a"}:void 0))}break;case">&":m(kJ(Number(t[w]),2,r));break;default:throw new Error(`Assertion failed: Unsupported redirection type: "${h}"`)}}if(o.length>0){let g=new qi.PassThrough;i=g;let h=f=>{if(f===o.length)g.end();else{let p=o[f]();p.pipe(g,{end:!1}),p.on("end",()=>{h(f+1)})}};h(0)}if(a.length>0){let g=new qi.PassThrough;n=g;for(let h of a)g.pipe(h)}if(l.length>0){let g=new qi.PassThrough;s=g;for(let h of l)g.pipe(h)}let u=await YI($h(t.slice(c+1),e,r),{stdin:new Kn(i),stdout:new Kn(n),stderr:new Kn(s)}).run();return await Promise.all(a.map(g=>new Promise((h,f)=>{g.on("error",p=>{f(p)}),g.on("close",()=>{h()}),g.end()}))),await Promise.all(l.map(g=>new Promise((h,f)=>{g.on("error",p=>{f(p)}),g.on("close",()=>{h()}),g.end()}))),u}]]);async function Iwe(t,e,r){let i=[],n=new qi.PassThrough;return n.on("data",s=>i.push(s)),await jI(t,e,GI(r,{stdout:n})),Buffer.concat(i).toString().replace(/[\r\n]+$/,"")}async function vJ(t,e,r){let i=t.map(async s=>{let o=await NA(s.args,e,r);return{name:s.name,value:o.join(" ")}});return(await Promise.all(i)).reduce((s,o)=>(s[o.name]=o.value,s),{})}function yS(t){return t.match(/[^ \r\n\t]+/g)||[]}async function FJ(t,e,r,i,n=i){switch(t.name){case"$":i(String(process.pid));break;case"#":i(String(e.args.length));break;case"@":if(t.quoted)for(let s of e.args)n(s);else for(let s of e.args){let o=yS(s);for(let a=0;a=0&&st+e,subtraction:(t,e)=>t-e,multiplication:(t,e)=>t*e,division:(t,e)=>Math.trunc(t/e)};async function ef(t,e,r){if(t.type==="number"){if(Number.isInteger(t.value))return t.value;throw new Error(`Invalid number: "${t.value}", only integers are allowed`)}else if(t.type==="variable"){let i=[];await FJ(V(k({},t),{quoted:!0}),e,r,s=>i.push(s));let n=Number(i.join(" "));return Number.isNaN(n)?ef({type:"variable",name:i.join(" ")},e,r):ef({type:"number",value:n},e,r)}else return Ewe[t.type](await ef(t.left,e,r),await ef(t.right,e,r))}async function NA(t,e,r){let i=new Map,n=[],s=[],o=u=>{s.push(u)},a=()=>{s.length>0&&n.push(s.join("")),s=[]},l=u=>{o(u),a()},c=(u,g,h)=>{let f=JSON.stringify({type:u,fd:g}),p=i.get(f);typeof p=="undefined"&&i.set(f,p=[]),p.push(h)};for(let u of t){let g=!1;switch(u.type){case"redirection":{let h=await NA(u.args,e,r);for(let f of h)c(u.subtype,u.fd,f)}break;case"argument":for(let h of u.segments)switch(h.type){case"text":o(h.text);break;case"glob":o(h.pattern),g=!0;break;case"shell":{let f=await Iwe(h.shell,e,r);if(h.quoted)o(f);else{let p=yS(f);for(let m=0;m0){let u=[];for(let[g,h]of i.entries())u.splice(u.length,0,g,String(h.length),...h);n.splice(0,0,"__ysh_set_redirects",...u,"--")}return n}function $h(t,e,r){e.builtins.has(t[0])||(t=["command",...t]);let i=L.fromPortablePath(r.cwd),n=r.environment;typeof n.PWD!="undefined"&&(n=V(k({},n),{PWD:i}));let[s,...o]=t;if(s==="command")return BJ(o[0],o.slice(1),e,{cwd:i,env:n});let a=e.builtins.get(s);if(typeof a=="undefined")throw new Error(`Assertion failed: A builtin should exist for "${s}"`);return wJ(async({stdin:l,stdout:c,stderr:u})=>(r.stdin=l,r.stdout=c,r.stderr=u,await a(o,e,r)))}function ywe(t,e,r){return i=>{let n=new qi.PassThrough,s=jI(t,e,GI(r,{stdin:n}));return{stdin:n,promise:s}}}function Bwe(t,e,r){return i=>{let n=new qi.PassThrough,s=jI(t,e,r);return{stdin:n,promise:s}}}function RJ(t,e,r,i){if(e.length===0)return t;{let n;do n=String(Math.random());while(Object.prototype.hasOwnProperty.call(i.procedures,n));return i.procedures=k({},i.procedures),i.procedures[n]=t,$h([...e,"__ysh_run_procedure",n],r,i)}}async function LJ(t,e,r){let i=t,n=null,s=null;for(;i;){let o=i.then?k({},r):r,a;switch(i.type){case"command":{let l=await NA(i.args,e,r),c=await vJ(i.envs,e,r);a=i.envs.length?$h(l,e,GI(o,{environment:c})):$h(l,e,o)}break;case"subshell":{let l=await NA(i.args,e,r),c=ywe(i.subshell,e,o);a=RJ(c,l,e,o)}break;case"group":{let l=await NA(i.args,e,r),c=Bwe(i.group,e,o);a=RJ(c,l,e,o)}break;case"envs":{let l=await vJ(i.envs,e,r);o.environment=k(k({},o.environment),l),a=$h(["true"],e,o)}break}if(typeof a=="undefined")throw new Error("Assertion failed: An action should have been generated");if(n===null)s=YI(a,{stdin:new Kn(o.stdin),stdout:new Kn(o.stdout),stderr:new Kn(o.stderr)});else{if(s===null)throw new Error("Assertion failed: The execution pipeline should have been setup");switch(n){case"|":s=s.pipeTo(a,ki.STDOUT);break;case"|&":s=s.pipeTo(a,ki.STDOUT|ki.STDERR);break}}i.then?(n=i.then.type,i=i.then.chain):i=null}if(s===null)throw new Error("Assertion failed: The execution pipeline should have been setup");return await s.run()}async function wwe(t,e,r,{background:i=!1}={}){function n(s){let o=["#2E86AB","#A23B72","#F18F01","#C73E1D","#CCE2A3"],a=o[s%o.length];return SJ.default.hex(a)}if(i){let s=r.nextBackgroundJobIndex++,o=n(s),a=`[${s}]`,l=o(a),{stdout:c,stderr:u}=DJ(r,{prefix:l});return r.backgroundJobs.push(LJ(t,e,GI(r,{stdout:c,stderr:u})).catch(g=>u.write(`${g.message} +`)).finally(()=>{r.stdout.isTTY&&r.stdout.write(`Job ${l}, '${o(Bc(t))}' has ended +`)})),0}return await LJ(t,e,r)}async function Qwe(t,e,r,{background:i=!1}={}){let n,s=a=>{n=a,r.variables["?"]=String(a)},o=async a=>{try{return await wwe(a.chain,e,r,{background:i&&typeof a.then=="undefined"})}catch(l){if(!(l instanceof ia))throw l;return r.stderr.write(`${l.message} +`),1}};for(s(await o(t));t.then;){if(r.exitCode!==null)return r.exitCode;switch(t.then.type){case"&&":n===0&&s(await o(t.then.line));break;case"||":n!==0&&s(await o(t.then.line));break;default:throw new Error(`Assertion failed: Unsupported command type: "${t.then.type}"`)}t=t.then.line}return n}async function jI(t,e,r){let i=r.backgroundJobs;r.backgroundJobs=[];let n=0;for(let{command:s,type:o}of t){if(n=await Qwe(s,e,r,{background:o==="&"}),r.exitCode!==null)return r.exitCode;r.variables["?"]=String(n)}return await Promise.all(r.backgroundJobs),r.backgroundJobs=i,n}function NJ(t){switch(t.type){case"variable":return t.name==="@"||t.name==="#"||t.name==="*"||Number.isFinite(parseInt(t.name,10))||"defaultValue"in t&&!!t.defaultValue&&t.defaultValue.some(e=>qI(e));case"arithmetic":return BS(t.arithmetic);case"shell":return wS(t.shell);default:return!1}}function qI(t){switch(t.type){case"redirection":return t.args.some(e=>qI(e));case"argument":return t.segments.some(e=>NJ(e));default:throw new Error(`Assertion failed: Unsupported argument type: "${t.type}"`)}}function BS(t){switch(t.type){case"variable":return NJ(t);case"number":return!1;default:return BS(t.left)||BS(t.right)}}function wS(t){return t.some(({command:e})=>{for(;e;){let r=e.chain;for(;r;){let i;switch(r.type){case"subshell":i=wS(r.subshell);break;case"command":i=r.envs.some(n=>n.args.some(s=>qI(s)))||r.args.some(n=>qI(n));break}if(i)return!0;if(!r.then)break;r=r.then.chain}if(!e.then)break;e=e.then.line}return!1})}async function Fc(t,e=[],{baseFs:r=new wt,builtins:i={},cwd:n=L.toPortablePath(process.cwd()),env:s=process.env,stdin:o=process.stdin,stdout:a=process.stdout,stderr:l=process.stderr,variables:c={},glob:u=TI}={}){let g={};for(let[p,m]of Object.entries(s))typeof m!="undefined"&&(g[p]=m);let h=new Map(mwe);for(let[p,m]of Object.entries(i))h.set(p,m);o===null&&(o=new qi.PassThrough,o.end());let f=BI(t,u);if(!wS(f)&&f.length>0&&e.length>0){let{command:p}=f[f.length-1];for(;p.then;)p=p.then.line;let m=p.chain;for(;m.then;)m=m.then.chain;m.type==="command"&&(m.args=m.args.concat(e.map(I=>({type:"argument",segments:[{type:"text",text:I}]}))))}return await jI(f,{args:e,baseFs:r,builtins:h,initialStdin:o,initialStdout:a,initialStderr:l,glob:u},{cwd:n,environment:g,exitCode:null,procedures:{},stdin:o,stdout:a,stderr:l,variables:Object.assign({},c,{["?"]:0}),nextBackgroundJobIndex:1,backgroundJobs:[]})}var jW=te(PS()),qW=te(WI()),Lc=te(require("stream"));var RW=te(Cr());var kt={};$e(kt,{SemVer:()=>kW.SemVer,satisfiesWithPrereleases:()=>rf,validRange:()=>Un});var zI=te(Cr()),kW=te(Cr()),vW=new Map;function rf(t,e,r=!1){if(!t)return!1;let i=`${e}${r}`,n=vW.get(i);if(typeof n=="undefined")try{n=new zI.default.Range(e,{includePrerelease:!0,loose:r})}catch{return!1}finally{vW.set(i,n||null)}else if(n===null)return!1;let s;try{s=new zI.default.SemVer(t,n),s.prerelease&&(s.prerelease=[])}catch(o){return!1}return n.set.some(o=>{for(let a of o)a.semver.prerelease&&(a.semver.prerelease=[]);return o.every(a=>a.test(s))})}var FW=new Map;function Un(t){if(t.indexOf(":")!==-1)return null;let e=FW.get(t);if(typeof e!="undefined")return e;try{e=new zI.default.Range(t)}catch{e=null}return FW.set(t,e),e}var na=class{constructor(){this.indent=" ";this.name=null;this.version=null;this.os=null;this.cpu=null;this.type=null;this.packageManager=null;this.private=!1;this.license=null;this.main=null;this.module=null;this.browser=null;this.languageName=null;this.bin=new Map;this.scripts=new Map;this.dependencies=new Map;this.devDependencies=new Map;this.peerDependencies=new Map;this.workspaceDefinitions=[];this.dependenciesMeta=new Map;this.peerDependenciesMeta=new Map;this.resolutions=[];this.files=null;this.publishConfig=null;this.installConfig=null;this.preferUnplugged=null;this.raw={};this.errors=[]}static async tryFind(e,{baseFs:r=new wt}={}){let i=B.join(e,"package.json");return await r.existsPromise(i)?await na.fromFile(i,{baseFs:r}):null}static async find(e,{baseFs:r}={}){let i=await na.tryFind(e,{baseFs:r});if(i===null)throw new Error("Manifest not found");return i}static async fromFile(e,{baseFs:r=new wt}={}){let i=new na;return await i.loadFile(e,{baseFs:r}),i}static fromText(e){let r=new na;return r.loadFromText(e),r}static isManifestFieldCompatible(e,r){if(e===null)return!0;let i=!0,n=!1;for(let s of e)if(s[0]==="!"){if(n=!0,r===s.slice(1))return!1}else if(i=!1,s===r)return!0;return n&&i}loadFromText(e){let r;try{r=JSON.parse(NW(e)||"{}")}catch(i){throw i.message+=` (when parsing ${e})`,i}this.load(r),this.indent=LW(e)}async loadFile(e,{baseFs:r=new wt}){let i=await r.readFilePromise(e,"utf8"),n;try{n=JSON.parse(NW(i)||"{}")}catch(s){throw s.message+=` (when parsing ${e})`,s}this.load(n),this.indent=LW(i)}load(e,{yamlCompatibilityMode:r=!1}={}){if(typeof e!="object"||e===null)throw new Error(`Utterly invalid manifest data (${e})`);this.raw=e;let i=[];if(this.name=null,typeof e.name=="string")try{this.name=Si(e.name)}catch(s){i.push(new Error("Parsing failed for the 'name' field"))}if(typeof e.version=="string"?this.version=e.version:this.version=null,Array.isArray(e.os)){let s=[];this.os=s;for(let o of e.os)typeof o!="string"?i.push(new Error("Parsing failed for the 'os' field")):s.push(o)}else this.os=null;if(Array.isArray(e.cpu)){let s=[];this.cpu=s;for(let o of e.cpu)typeof o!="string"?i.push(new Error("Parsing failed for the 'cpu' field")):s.push(o)}else this.cpu=null;if(typeof e.type=="string"?this.type=e.type:this.type=null,typeof e.packageManager=="string"?this.packageManager=e.packageManager:this.packageManager=null,typeof e.private=="boolean"?this.private=e.private:this.private=!1,typeof e.license=="string"?this.license=e.license:this.license=null,typeof e.languageName=="string"?this.languageName=e.languageName:this.languageName=null,typeof e.main=="string"?this.main=hi(e.main):this.main=null,typeof e.module=="string"?this.module=hi(e.module):this.module=null,e.browser!=null)if(typeof e.browser=="string")this.browser=hi(e.browser);else{this.browser=new Map;for(let[s,o]of Object.entries(e.browser))this.browser.set(hi(s),typeof o=="string"?hi(o):o)}else this.browser=null;if(this.bin=new Map,typeof e.bin=="string")this.name!==null?this.bin.set(this.name.name,hi(e.bin)):i.push(new Error("String bin field, but no attached package name"));else if(typeof e.bin=="object"&&e.bin!==null)for(let[s,o]of Object.entries(e.bin)){if(typeof o!="string"){i.push(new Error(`Invalid bin definition for '${s}'`));continue}this.bin.set(s,hi(o))}if(this.scripts=new Map,typeof e.scripts=="object"&&e.scripts!==null)for(let[s,o]of Object.entries(e.scripts)){if(typeof o!="string"){i.push(new Error(`Invalid script definition for '${s}'`));continue}this.scripts.set(s,o)}if(this.dependencies=new Map,typeof e.dependencies=="object"&&e.dependencies!==null)for(let[s,o]of Object.entries(e.dependencies)){if(typeof o!="string"){i.push(new Error(`Invalid dependency range for '${s}'`));continue}let a;try{a=Si(s)}catch(c){i.push(new Error(`Parsing failed for the dependency name '${s}'`));continue}let l=zt(a,o);this.dependencies.set(l.identHash,l)}if(this.devDependencies=new Map,typeof e.devDependencies=="object"&&e.devDependencies!==null)for(let[s,o]of Object.entries(e.devDependencies)){if(typeof o!="string"){i.push(new Error(`Invalid dependency range for '${s}'`));continue}let a;try{a=Si(s)}catch(c){i.push(new Error(`Parsing failed for the dependency name '${s}'`));continue}let l=zt(a,o);this.devDependencies.set(l.identHash,l)}if(this.peerDependencies=new Map,typeof e.peerDependencies=="object"&&e.peerDependencies!==null)for(let[s,o]of Object.entries(e.peerDependencies)){let a;try{a=Si(s)}catch(c){i.push(new Error(`Parsing failed for the dependency name '${s}'`));continue}(typeof o!="string"||!Un(o))&&(i.push(new Error(`Invalid dependency range for '${s}'`)),o="*");let l=zt(a,o);this.peerDependencies.set(l.identHash,l)}typeof e.workspaces=="object"&&e.workspaces.nohoist&&i.push(new Error("'nohoist' is deprecated, please use 'installConfig.hoistingLimits' instead"));let n=Array.isArray(e.workspaces)?e.workspaces:typeof e.workspaces=="object"&&e.workspaces!==null&&Array.isArray(e.workspaces.packages)?e.workspaces.packages:[];this.workspaceDefinitions=[];for(let s of n){if(typeof s!="string"){i.push(new Error(`Invalid workspace definition for '${s}'`));continue}this.workspaceDefinitions.push({pattern:s})}if(this.dependenciesMeta=new Map,typeof e.dependenciesMeta=="object"&&e.dependenciesMeta!==null)for(let[s,o]of Object.entries(e.dependenciesMeta)){if(typeof o!="object"||o===null){i.push(new Error(`Invalid meta field for '${s}`));continue}let a=Jo(s),l=this.ensureDependencyMeta(a),c=VI(o.built,{yamlCompatibilityMode:r});if(c===null){i.push(new Error(`Invalid built meta field for '${s}'`));continue}let u=VI(o.optional,{yamlCompatibilityMode:r});if(u===null){i.push(new Error(`Invalid optional meta field for '${s}'`));continue}let g=VI(o.unplugged,{yamlCompatibilityMode:r});if(g===null){i.push(new Error(`Invalid unplugged meta field for '${s}'`));continue}Object.assign(l,{built:c,optional:u,unplugged:g})}if(this.peerDependenciesMeta=new Map,typeof e.peerDependenciesMeta=="object"&&e.peerDependenciesMeta!==null)for(let[s,o]of Object.entries(e.peerDependenciesMeta)){if(typeof o!="object"||o===null){i.push(new Error(`Invalid meta field for '${s}'`));continue}let a=Jo(s),l=this.ensurePeerDependencyMeta(a),c=VI(o.optional,{yamlCompatibilityMode:r});if(c===null){i.push(new Error(`Invalid optional meta field for '${s}'`));continue}Object.assign(l,{optional:c})}if(this.resolutions=[],typeof e.resolutions=="object"&&e.resolutions!==null)for(let[s,o]of Object.entries(e.resolutions)){if(typeof o!="string"){i.push(new Error(`Invalid resolution entry for '${s}'`));continue}try{this.resolutions.push({pattern:DI(s),reference:o})}catch(a){i.push(a);continue}}if(Array.isArray(e.files)){this.files=new Set;for(let s of e.files){if(typeof s!="string"){i.push(new Error(`Invalid files entry for '${s}'`));continue}this.files.add(s)}}else this.files=null;if(typeof e.publishConfig=="object"&&e.publishConfig!==null){if(this.publishConfig={},typeof e.publishConfig.access=="string"&&(this.publishConfig.access=e.publishConfig.access),typeof e.publishConfig.main=="string"&&(this.publishConfig.main=hi(e.publishConfig.main)),typeof e.publishConfig.module=="string"&&(this.publishConfig.module=hi(e.publishConfig.module)),e.publishConfig.browser!=null)if(typeof e.publishConfig.browser=="string")this.publishConfig.browser=hi(e.publishConfig.browser);else{this.publishConfig.browser=new Map;for(let[s,o]of Object.entries(e.publishConfig.browser))this.publishConfig.browser.set(hi(s),typeof o=="string"?hi(o):o)}if(typeof e.publishConfig.registry=="string"&&(this.publishConfig.registry=e.publishConfig.registry),typeof e.publishConfig.bin=="string")this.name!==null?this.publishConfig.bin=new Map([[this.name.name,hi(e.publishConfig.bin)]]):i.push(new Error("String bin field, but no attached package name"));else if(typeof e.publishConfig.bin=="object"&&e.publishConfig.bin!==null){this.publishConfig.bin=new Map;for(let[s,o]of Object.entries(e.publishConfig.bin)){if(typeof o!="string"){i.push(new Error(`Invalid bin definition for '${s}'`));continue}this.publishConfig.bin.set(s,hi(o))}}if(Array.isArray(e.publishConfig.executableFiles)){this.publishConfig.executableFiles=new Set;for(let s of e.publishConfig.executableFiles){if(typeof s!="string"){i.push(new Error("Invalid executable file definition"));continue}this.publishConfig.executableFiles.add(hi(s))}}}else this.publishConfig=null;if(typeof e.installConfig=="object"&&e.installConfig!==null){this.installConfig={};for(let s of Object.keys(e.installConfig))s==="hoistingLimits"?typeof e.installConfig.hoistingLimits=="string"?this.installConfig.hoistingLimits=e.installConfig.hoistingLimits:i.push(new Error("Invalid hoisting limits definition")):i.push(new Error(`Unrecognized installConfig key: ${s}`))}else this.installConfig=null;if(typeof e.optionalDependencies=="object"&&e.optionalDependencies!==null)for(let[s,o]of Object.entries(e.optionalDependencies)){if(typeof o!="string"){i.push(new Error(`Invalid dependency range for '${s}'`));continue}let a;try{a=Si(s)}catch(g){i.push(new Error(`Parsing failed for the dependency name '${s}'`));continue}let l=zt(a,o);this.dependencies.set(l.identHash,l);let c=zt(a,"unknown"),u=this.ensureDependencyMeta(c);Object.assign(u,{optional:!0})}typeof e.preferUnplugged=="boolean"?this.preferUnplugged=e.preferUnplugged:this.preferUnplugged=null,this.errors=i}getForScope(e){switch(e){case"dependencies":return this.dependencies;case"devDependencies":return this.devDependencies;case"peerDependencies":return this.peerDependencies;default:throw new Error(`Unsupported value ("${e}")`)}}hasConsumerDependency(e){return!!(this.dependencies.has(e.identHash)||this.peerDependencies.has(e.identHash))}hasHardDependency(e){return!!(this.dependencies.has(e.identHash)||this.devDependencies.has(e.identHash))}hasSoftDependency(e){return!!this.peerDependencies.has(e.identHash)}hasDependency(e){return!!(this.hasHardDependency(e)||this.hasSoftDependency(e))}isCompatibleWithOS(e){return na.isManifestFieldCompatible(this.os,e)}isCompatibleWithCPU(e){return na.isManifestFieldCompatible(this.cpu,e)}ensureDependencyMeta(e){if(e.range!=="unknown"&&!RW.default.valid(e.range))throw new Error(`Invalid meta field range for '${xi(e)}'`);let r=pt(e),i=e.range!=="unknown"?e.range:null,n=this.dependenciesMeta.get(r);n||this.dependenciesMeta.set(r,n=new Map);let s=n.get(i);return s||n.set(i,s={}),s}ensurePeerDependencyMeta(e){if(e.range!=="unknown")throw new Error(`Invalid meta field range for '${xi(e)}'`);let r=pt(e),i=this.peerDependenciesMeta.get(r);return i||this.peerDependenciesMeta.set(r,i={}),i}setRawField(e,r,{after:i=[]}={}){let n=new Set(i.filter(s=>Object.prototype.hasOwnProperty.call(this.raw,s)));if(n.size===0||Object.prototype.hasOwnProperty.call(this.raw,e))this.raw[e]=r;else{let s=this.raw,o=this.raw={},a=!1;for(let l of Object.keys(s))o[l]=s[l],a||(n.delete(l),n.size===0&&(o[e]=r,a=!0))}}exportTo(e,{compatibilityMode:r=!0}={}){if(Object.assign(e,this.raw),this.name!==null?e.name=pt(this.name):delete e.name,this.version!==null?e.version=this.version:delete e.version,this.os!==null?e.os=this.os:delete e.os,this.cpu!==null?e.cpu=this.cpu:delete e.cpu,this.type!==null?e.type=this.type:delete e.type,this.packageManager!==null?e.packageManager=this.packageManager:delete e.packageManager,this.private?e.private=!0:delete e.private,this.license!==null?e.license=this.license:delete e.license,this.languageName!==null?e.languageName=this.languageName:delete e.languageName,this.main!==null?e.main=this.main:delete e.main,this.module!==null?e.module=this.module:delete e.module,this.browser!==null){let s=this.browser;typeof s=="string"?e.browser=s:s instanceof Map&&(e.browser=Object.assign({},...Array.from(s.keys()).sort().map(o=>({[o]:s.get(o)}))))}else delete e.browser;this.bin.size===1&&this.name!==null&&this.bin.has(this.name.name)?e.bin=this.bin.get(this.name.name):this.bin.size>0?e.bin=Object.assign({},...Array.from(this.bin.keys()).sort().map(s=>({[s]:this.bin.get(s)}))):delete e.bin,this.workspaceDefinitions.length>0?this.raw.workspaces&&!Array.isArray(this.raw.workspaces)?e.workspaces=V(k({},this.raw.workspaces),{packages:this.workspaceDefinitions.map(({pattern:s})=>s)}):e.workspaces=this.workspaceDefinitions.map(({pattern:s})=>s):this.raw.workspaces&&!Array.isArray(this.raw.workspaces)&&Object.keys(this.raw.workspaces).length>0?e.workspaces=this.raw.workspaces:delete e.workspaces;let i=[],n=[];for(let s of this.dependencies.values()){let o=this.dependenciesMeta.get(pt(s)),a=!1;if(r&&o){let l=o.get(null);l&&l.optional&&(a=!0)}a?n.push(s):i.push(s)}i.length>0?e.dependencies=Object.assign({},...nc(i).map(s=>({[pt(s)]:s.range}))):delete e.dependencies,n.length>0?e.optionalDependencies=Object.assign({},...nc(n).map(s=>({[pt(s)]:s.range}))):delete e.optionalDependencies,this.devDependencies.size>0?e.devDependencies=Object.assign({},...nc(this.devDependencies.values()).map(s=>({[pt(s)]:s.range}))):delete e.devDependencies,this.peerDependencies.size>0?e.peerDependencies=Object.assign({},...nc(this.peerDependencies.values()).map(s=>({[pt(s)]:s.range}))):delete e.peerDependencies,e.dependenciesMeta={};for(let[s,o]of bi(this.dependenciesMeta.entries(),([a,l])=>a))for(let[a,l]of bi(o.entries(),([c,u])=>c!==null?`0${c}`:"1")){let c=a!==null?xi(zt(Si(s),a)):s,u=k({},l);r&&a===null&&delete u.optional,Object.keys(u).length!==0&&(e.dependenciesMeta[c]=u)}return Object.keys(e.dependenciesMeta).length===0&&delete e.dependenciesMeta,this.peerDependenciesMeta.size>0?e.peerDependenciesMeta=Object.assign({},...bi(this.peerDependenciesMeta.entries(),([s,o])=>s).map(([s,o])=>({[s]:o}))):delete e.peerDependenciesMeta,this.resolutions.length>0?e.resolutions=Object.assign({},...this.resolutions.map(({pattern:s,reference:o})=>({[SI(s)]:o}))):delete e.resolutions,this.files!==null?e.files=Array.from(this.files):delete e.files,this.preferUnplugged!==null?e.preferUnplugged=this.preferUnplugged:delete e.preferUnplugged,e}},We=na;We.fileName="package.json",We.allDependencies=["dependencies","devDependencies","peerDependencies"],We.hardDependencies=["dependencies","devDependencies"];function LW(t){let e=t.match(/^[ \t]+/m);return e?e[0]:" "}function NW(t){return t.charCodeAt(0)===65279?t.slice(1):t}function hi(t){return t.replace(/\\/g,"/")}function VI(t,{yamlCompatibilityMode:e}){return e?UQ(t):typeof t=="undefined"||typeof t=="boolean"?t:null}var TW=te(KW());var UW=["\u280B","\u2819","\u2839","\u2838","\u283C","\u2834","\u2826","\u2827","\u2807","\u280F"],HW=80,JQe=new Set([z.FETCH_NOT_CACHED,z.UNUSED_CACHE_ENTRY]),WQe=5,sa=process.env.GITHUB_ACTIONS?{start:t=>`::group::${t} `,end:t=>`::endgroup:: `}:process.env.TRAVIS?{start:t=>`travis_fold:start:${t} `,end:t=>`travis_fold:end:${t} `}:process.env.GITLAB_CI?{start:t=>`section_start:${Math.floor(Date.now()/1e3)}:${t.toLowerCase().replace(/\W+/g,"_")}\r${t} -`,end:t=>`section_end:${Math.floor(Date.now()/1e3)}:${t.toLowerCase().replace(/\W+/g,"_")}\r`}:null,oJ=new Date,twe=["iTerm.app","Apple_Terminal"].includes(process.env.TERM_PROGRAM)||!!process.env.WT_SESSION,rwe=t=>t,tI=rwe({patrick:{date:[17,3],chars:["\u{1F340}","\u{1F331}"],size:40},simba:{date:[19,7],chars:["\u{1F981}","\u{1F334}"],size:40},jack:{date:[31,10],chars:["\u{1F383}","\u{1F987}"],size:40},hogsfather:{date:[31,12],chars:["\u{1F389}","\u{1F384}"],size:40},default:{chars:["=","-"],size:80}}),iwe=twe&&Object.keys(tI).find(t=>{let e=tI[t];return!(e.date&&(e.date[0]!==oJ.getDate()||e.date[1]!==oJ.getMonth()+1))})||"default";function aJ(t,{configuration:e,json:r}){if(!e.get("enableMessageNames"))return"";let n=Vd(t===null?0:t);return!r&&t===null?Ue(e,n,"grey"):n}function yD(t,{configuration:e,json:r}){let i=aJ(t,{configuration:e,json:r});if(!i||t===null||t===J.UNNAMED)return i;let n=J[t],s=`https://yarnpkg.com/advanced/error-codes#${i}---${n}`.toLowerCase();return Ml(e,i,s)}var we=class extends ti{constructor({configuration:e,stdout:r,json:i=!1,includeFooter:n=!0,includeLogs:s=!i,includeInfos:o=s,includeWarnings:a=s,forgettableBufferSize:l=ewe,forgettableNames:c=new Set}){super();this.uncommitted=new Set;this.cacheHitCount=0;this.cacheMissCount=0;this.lastCacheMiss=null;this.warningCount=0;this.errorCount=0;this.startTime=Date.now();this.indent=0;this.progress=new Map;this.progressTime=0;this.progressFrame=0;this.progressTimeout=null;this.forgettableLines=[];jg(this,{configuration:e}),this.configuration=e,this.forgettableBufferSize=l,this.forgettableNames=new Set([...c,...$Be]),this.includeFooter=n,this.includeInfos=o,this.includeWarnings=a,this.json=i,this.stdout=r;let u=this.configuration.get("progressBarStyle")||iwe;if(!Object.prototype.hasOwnProperty.call(tI,u))throw new Error("Assertion failed: Invalid progress bar style");this.progressStyle=tI[u];let g="\u27A4 YN0000: \u250C ".length,h=Math.max(0,Math.min(process.stdout.columns-g,80));this.progressMaxScaledSize=Math.floor(this.progressStyle.size*h/80)}static async start(e,r){let i=new this(e),n=process.emitWarning;process.emitWarning=(s,o)=>{if(typeof s!="string"){let l=s;s=l.message,o=o!=null?o:l.name}let a=typeof o!="undefined"?`${o}: ${s}`:s;i.reportWarning(J.UNNAMED,a)};try{await r(i)}catch(s){i.reportExceptionOnce(s)}finally{await i.finalize(),process.emitWarning=n}return i}hasErrors(){return this.errorCount>0}exitCode(){return this.hasErrors()?1:0}reportCacheHit(e){this.cacheHitCount+=1}reportCacheMiss(e,r){this.lastCacheMiss=e,this.cacheMissCount+=1,typeof r!="undefined"&&!this.configuration.get("preferAggregateCacheInfo")&&this.reportInfo(J.FETCH_NOT_CACHED,r)}startTimerSync(e,r,i){let n=typeof r=="function"?{}:r,s=typeof r=="function"?r:i,o={committed:!1,action:()=>{this.reportInfo(null,`\u250C ${e}`),this.indent+=1,Uo!==null&&!this.json&&this.stdout.write(Uo.start(e))}};n.skipIfEmpty?this.uncommitted.add(o):(o.action(),o.committed=!0);let a=Date.now();try{return s()}catch(l){throw this.reportExceptionOnce(l),l}finally{let l=Date.now();this.uncommitted.delete(o),o.committed&&(this.indent-=1,Uo!==null&&!this.json&&this.stdout.write(Uo.end(e)),this.configuration.get("enableTimers")&&l-a>200?this.reportInfo(null,`\u2514 Completed in ${Ue(this.configuration,l-a,be.DURATION)}`):this.reportInfo(null,"\u2514 Completed"))}}async startTimerPromise(e,r,i){let n=typeof r=="function"?{}:r,s=typeof r=="function"?r:i,o={committed:!1,action:()=>{this.reportInfo(null,`\u250C ${e}`),this.indent+=1,Uo!==null&&!this.json&&this.stdout.write(Uo.start(e))}};n.skipIfEmpty?this.uncommitted.add(o):(o.action(),o.committed=!0);let a=Date.now();try{return await s()}catch(l){throw this.reportExceptionOnce(l),l}finally{let l=Date.now();this.uncommitted.delete(o),o.committed&&(this.indent-=1,Uo!==null&&!this.json&&this.stdout.write(Uo.end(e)),this.configuration.get("enableTimers")&&l-a>200?this.reportInfo(null,`\u2514 Completed in ${Ue(this.configuration,l-a,be.DURATION)}`):this.reportInfo(null,"\u2514 Completed"))}}async startCacheReport(e){let r=this.configuration.get("preferAggregateCacheInfo")?{cacheHitCount:this.cacheHitCount,cacheMissCount:this.cacheMissCount}:null;try{return await e()}catch(i){throw this.reportExceptionOnce(i),i}finally{r!==null&&this.reportCacheChanges(r)}}reportSeparator(){this.indent===0?this.writeLineWithForgettableReset(""):this.reportInfo(null,"")}reportInfo(e,r){if(!this.includeInfos)return;this.commit();let i=this.formatNameWithHyperlink(e),n=i?`${i}: `:"",s=`${Ue(this.configuration,"\u27A4","blueBright")} ${n}${this.formatIndent()}${r}`;if(this.json)this.reportJson({type:"info",name:e,displayName:this.formatName(e),indent:this.formatIndent(),data:r});else if(this.forgettableNames.has(e))if(this.forgettableLines.push(s),this.forgettableLines.length>this.forgettableBufferSize){for(;this.forgettableLines.length>this.forgettableBufferSize;)this.forgettableLines.shift();this.writeLines(this.forgettableLines,{truncate:!0})}else this.writeLine(s,{truncate:!0});else this.writeLineWithForgettableReset(s)}reportWarning(e,r){if(this.warningCount+=1,!this.includeWarnings)return;this.commit();let i=this.formatNameWithHyperlink(e),n=i?`${i}: `:"";this.json?this.reportJson({type:"warning",name:e,displayName:this.formatName(e),indent:this.formatIndent(),data:r}):this.writeLineWithForgettableReset(`${Ue(this.configuration,"\u27A4","yellowBright")} ${n}${this.formatIndent()}${r}`)}reportError(e,r){this.errorCount+=1,this.commit();let i=this.formatNameWithHyperlink(e),n=i?`${i}: `:"";this.json?this.reportJson({type:"error",name:e,displayName:this.formatName(e),indent:this.formatIndent(),data:r}):this.writeLineWithForgettableReset(`${Ue(this.configuration,"\u27A4","redBright")} ${n}${this.formatIndent()}${r}`,{truncate:!1})}reportProgress(e){let r=!1,i=Promise.resolve().then(async()=>{let s={progress:0,title:void 0};this.progress.set(e,{definition:s,lastScaledSize:-1}),this.refreshProgress(-1);for await(let{progress:o,title:a}of e)r||s.progress===o&&s.title===a||(s.progress=o,s.title=a,this.refreshProgress());n()}),n=()=>{r||(r=!0,this.progress.delete(e),this.refreshProgress(1))};return{...i,stop:n}}reportJson(e){this.json&&this.writeLineWithForgettableReset(`${JSON.stringify(e)}`)}async finalize(){if(!this.includeFooter)return;let e="";this.errorCount>0?e="Failed with errors":this.warningCount>0?e="Done with warnings":e="Done";let r=Ue(this.configuration,Date.now()-this.startTime,be.DURATION),i=this.configuration.get("enableTimers")?`${e} in ${r}`:e;this.errorCount>0?this.reportError(J.UNNAMED,i):this.warningCount>0?this.reportWarning(J.UNNAMED,i):this.reportInfo(J.UNNAMED,i)}writeLine(e,{truncate:r}={}){this.clearProgress({clear:!0}),this.stdout.write(`${this.truncate(e,{truncate:r})} +`,end:t=>`section_end:${Math.floor(Date.now()/1e3)}:${t.toLowerCase().replace(/\W+/g,"_")}\r`}:null,YW=new Date,zQe=["iTerm.app","Apple_Terminal"].includes(process.env.TERM_PROGRAM)||!!process.env.WT_SESSION,VQe=t=>t,ZI=VQe({patrick:{date:[17,3],chars:["\u{1F340}","\u{1F331}"],size:40},simba:{date:[19,7],chars:["\u{1F981}","\u{1F334}"],size:40},rats:{date:[1,6],chars:["\u{26FD}","\u{1F400}"],size:40},jack:{date:[31,10],chars:["\u{1F383}","\u{1F987}"],size:40},hogsfather:{date:[31,12],chars:["\u{1F389}","\u{1F384}"],size:40},default:{chars:["=","-"],size:80}}),XQe=zQe&&Object.keys(ZI).find(t=>{let e=ZI[t];return!(e.date&&(e.date[0]!==YW.getDate()||e.date[1]!==YW.getMonth()+1))})||"default";function GW(t,{configuration:e,json:r}){if(!e.get("enableMessageNames"))return"";let n=TC(t===null?0:t);return!r&&t===null?je(e,n,"grey"):n}function vS(t,{configuration:e,json:r}){let i=GW(t,{configuration:e,json:r});if(!i||t===null||t===z.UNNAMED)return i;let n=z[t],s=`https://yarnpkg.com/advanced/error-codes#${i}---${n}`.toLowerCase();return sc(e,i,s)}var xe=class extends ci{constructor({configuration:e,stdout:r,json:i=!1,includeFooter:n=!0,includeLogs:s=!i,includeInfos:o=s,includeWarnings:a=s,forgettableBufferSize:l=WQe,forgettableNames:c=new Set}){super();this.uncommitted=new Set;this.cacheHitCount=0;this.cacheMissCount=0;this.lastCacheMiss=null;this.warningCount=0;this.errorCount=0;this.startTime=Date.now();this.indent=0;this.progress=new Map;this.progressTime=0;this.progressFrame=0;this.progressTimeout=null;this.forgettableLines=[];Dh(this,{configuration:e}),this.configuration=e,this.forgettableBufferSize=l,this.forgettableNames=new Set([...c,...JQe]),this.includeFooter=n,this.includeInfos=o,this.includeWarnings=a,this.json=i,this.stdout=r;let u=this.configuration.get("progressBarStyle")||XQe;if(!Object.prototype.hasOwnProperty.call(ZI,u))throw new Error("Assertion failed: Invalid progress bar style");this.progressStyle=ZI[u];let g="\u27A4 YN0000: \u250C ".length,h=Math.max(0,Math.min(process.stdout.columns-g,80));this.progressMaxScaledSize=Math.floor(this.progressStyle.size*h/80)}static async start(e,r){let i=new this(e),n=process.emitWarning;process.emitWarning=(s,o)=>{if(typeof s!="string"){let l=s;s=l.message,o=o!=null?o:l.name}let a=typeof o!="undefined"?`${o}: ${s}`:s;i.reportWarning(z.UNNAMED,a)};try{await r(i)}catch(s){i.reportExceptionOnce(s)}finally{await i.finalize(),process.emitWarning=n}return i}hasErrors(){return this.errorCount>0}exitCode(){return this.hasErrors()?1:0}reportCacheHit(e){this.cacheHitCount+=1}reportCacheMiss(e,r){this.lastCacheMiss=e,this.cacheMissCount+=1,typeof r!="undefined"&&!this.configuration.get("preferAggregateCacheInfo")&&this.reportInfo(z.FETCH_NOT_CACHED,r)}startTimerSync(e,r,i){let n=typeof r=="function"?{}:r,s=typeof r=="function"?r:i,o={committed:!1,action:()=>{this.reportInfo(null,`\u250C ${e}`),this.indent+=1,sa!==null&&!this.json&&this.includeInfos&&this.stdout.write(sa.start(e))}};n.skipIfEmpty?this.uncommitted.add(o):(o.action(),o.committed=!0);let a=Date.now();try{return s()}catch(l){throw this.reportExceptionOnce(l),l}finally{let l=Date.now();this.uncommitted.delete(o),o.committed&&(this.indent-=1,sa!==null&&!this.json&&this.includeInfos&&this.stdout.write(sa.end(e)),this.configuration.get("enableTimers")&&l-a>200?this.reportInfo(null,`\u2514 Completed in ${je(this.configuration,l-a,ve.DURATION)}`):this.reportInfo(null,"\u2514 Completed"))}}async startTimerPromise(e,r,i){let n=typeof r=="function"?{}:r,s=typeof r=="function"?r:i,o={committed:!1,action:()=>{this.reportInfo(null,`\u250C ${e}`),this.indent+=1,sa!==null&&!this.json&&this.includeInfos&&this.stdout.write(sa.start(e))}};n.skipIfEmpty?this.uncommitted.add(o):(o.action(),o.committed=!0);let a=Date.now();try{return await s()}catch(l){throw this.reportExceptionOnce(l),l}finally{let l=Date.now();this.uncommitted.delete(o),o.committed&&(this.indent-=1,sa!==null&&!this.json&&this.includeInfos&&this.stdout.write(sa.end(e)),this.configuration.get("enableTimers")&&l-a>200?this.reportInfo(null,`\u2514 Completed in ${je(this.configuration,l-a,ve.DURATION)}`):this.reportInfo(null,"\u2514 Completed"))}}async startCacheReport(e){let r=this.configuration.get("preferAggregateCacheInfo")?{cacheHitCount:this.cacheHitCount,cacheMissCount:this.cacheMissCount}:null;try{return await e()}catch(i){throw this.reportExceptionOnce(i),i}finally{r!==null&&this.reportCacheChanges(r)}}reportSeparator(){this.indent===0?this.writeLineWithForgettableReset(""):this.reportInfo(null,"")}reportInfo(e,r){if(!this.includeInfos)return;this.commit();let i=this.formatNameWithHyperlink(e),n=i?`${i}: `:"",s=`${je(this.configuration,"\u27A4","blueBright")} ${n}${this.formatIndent()}${r}`;if(this.json)this.reportJson({type:"info",name:e,displayName:this.formatName(e),indent:this.formatIndent(),data:r});else if(this.forgettableNames.has(e))if(this.forgettableLines.push(s),this.forgettableLines.length>this.forgettableBufferSize){for(;this.forgettableLines.length>this.forgettableBufferSize;)this.forgettableLines.shift();this.writeLines(this.forgettableLines,{truncate:!0})}else this.writeLine(s,{truncate:!0});else this.writeLineWithForgettableReset(s)}reportWarning(e,r){if(this.warningCount+=1,!this.includeWarnings)return;this.commit();let i=this.formatNameWithHyperlink(e),n=i?`${i}: `:"";this.json?this.reportJson({type:"warning",name:e,displayName:this.formatName(e),indent:this.formatIndent(),data:r}):this.writeLineWithForgettableReset(`${je(this.configuration,"\u27A4","yellowBright")} ${n}${this.formatIndent()}${r}`)}reportError(e,r){this.errorCount+=1,this.commit();let i=this.formatNameWithHyperlink(e),n=i?`${i}: `:"";this.json?this.reportJson({type:"error",name:e,displayName:this.formatName(e),indent:this.formatIndent(),data:r}):this.writeLineWithForgettableReset(`${je(this.configuration,"\u27A4","redBright")} ${n}${this.formatIndent()}${r}`,{truncate:!1})}reportProgress(e){let r=!1,i=Promise.resolve().then(async()=>{let s={progress:0,title:void 0};this.progress.set(e,{definition:s,lastScaledSize:-1}),this.refreshProgress(-1);for await(let{progress:o,title:a}of e)r||s.progress===o&&s.title===a||(s.progress=o,s.title=a,this.refreshProgress());n()}),n=()=>{r||(r=!0,this.progress.delete(e),this.refreshProgress(1))};return V(k({},i),{stop:n})}reportJson(e){this.json&&this.writeLineWithForgettableReset(`${JSON.stringify(e)}`)}async finalize(){if(!this.includeFooter)return;let e="";this.errorCount>0?e="Failed with errors":this.warningCount>0?e="Done with warnings":e="Done";let r=je(this.configuration,Date.now()-this.startTime,ve.DURATION),i=this.configuration.get("enableTimers")?`${e} in ${r}`:e;this.errorCount>0?this.reportError(z.UNNAMED,i):this.warningCount>0?this.reportWarning(z.UNNAMED,i):this.reportInfo(z.UNNAMED,i)}writeLine(e,{truncate:r}={}){this.clearProgress({clear:!0}),this.stdout.write(`${this.truncate(e,{truncate:r})} `),this.writeProgress()}writeLineWithForgettableReset(e,{truncate:r}={}){this.forgettableLines=[],this.writeLine(e,{truncate:r})}writeLines(e,{truncate:r}={}){this.clearProgress({delta:e.length});for(let i of e)this.stdout.write(`${this.truncate(i,{truncate:r})} -`);this.writeProgress()}reportCacheChanges({cacheHitCount:e,cacheMissCount:r}){let i=this.cacheHitCount-e,n=this.cacheMissCount-r;if(i===0&&n===0)return;let s="";this.cacheHitCount>1?s+=`${this.cacheHitCount} packages were already cached`:this.cacheHitCount===1?s+=" - one package was already cached":s+="No packages were cached",this.cacheHitCount>0?this.cacheMissCount>1?s+=`, ${this.cacheMissCount} had to be fetched`:this.cacheMissCount===1&&(s+=`, one had to be fetched (${$e(this.configuration,this.lastCacheMiss)})`):this.cacheMissCount>1?s+=` - ${this.cacheMissCount} packages had to be fetched`:this.cacheMissCount===1&&(s+=` - one package had to be fetched (${$e(this.configuration,this.lastCacheMiss)})`),this.reportInfo(J.FETCH_NOT_CACHED,s)}commit(){let e=this.uncommitted;this.uncommitted=new Set;for(let r of e)r.committed=!0,r.action()}clearProgress({delta:e=0,clear:r=!1}){!this.configuration.get("enableProgressBars")||this.json||this.progress.size+e>0&&(this.stdout.write(`[${this.progress.size+e}A`),(e>0||r)&&this.stdout.write(""))}writeProgress(){if(!this.configuration.get("enableProgressBars")||this.json||(this.progressTimeout!==null&&clearTimeout(this.progressTimeout),this.progressTimeout=null,this.progress.size===0))return;let e=Date.now();e-this.progressTime>sJ&&(this.progressFrame=(this.progressFrame+1)%nJ.length,this.progressTime=e);let r=nJ[this.progressFrame];for(let i of this.progress.values()){let n=this.progressStyle.chars[0].repeat(i.lastScaledSize),s=this.progressStyle.chars[1].repeat(this.progressMaxScaledSize-i.lastScaledSize),o=this.formatName(null),a=o?`${o}: `:"";this.stdout.write(`${Ue(this.configuration,"\u27A4","blueBright")} ${a}${r} ${n}${s} -`)}this.progressTimeout=setTimeout(()=>{this.refreshProgress()},sJ)}refreshProgress(e=0){let r=!1;if(this.progress.size===0)r=!0;else for(let i of this.progress.values()){let n=Math.trunc(this.progressMaxScaledSize*i.definition.progress),s=i.lastScaledSize;if(i.lastScaledSize=n,n!==s){r=!0;break}}r&&(this.clearProgress({delta:e}),this.writeProgress())}truncate(e,{truncate:r}={}){return this.configuration.get("enableProgressBars")||(r=!1),typeof r=="undefined"&&(r=this.configuration.get("preferTruncatedLines")),r&&(e=iJ.default(e,0,process.stdout.columns-1)),e}formatName(e){return aJ(e,{configuration:this.configuration,json:this.json})}formatNameWithHyperlink(e){return yD(e,{configuration:this.configuration,json:this.json})}formatIndent(){return"\u2502 ".repeat(this.indent)}};var Mi="3.0.0-rc.2.git.20210516.hash-aec98f9e";var Ks=X(Zi());var $n;(function(t){t.Yarn1="Yarn Classic",t.Yarn2="Yarn",t.Npm="npm",t.Pnpm="pnpm"})($n||($n={}));async function Us(t,e,r,i=[]){if(process.platform==="win32"){let n=`@goto #_undefined_# 2>NUL || @title %COMSPEC% & @setlocal & @"${r}" ${i.map(s=>`"${s.replace('"','""')}"`).join(" ")} %*`;await R.writeFilePromise(w.format({dir:t,name:e,ext:".cmd"}),n)}await R.writeFilePromise(w.join(t,e),`#!/bin/sh +`);this.writeProgress()}reportCacheChanges({cacheHitCount:e,cacheMissCount:r}){let i=this.cacheHitCount-e,n=this.cacheMissCount-r;if(i===0&&n===0)return;let s="";this.cacheHitCount>1?s+=`${this.cacheHitCount} packages were already cached`:this.cacheHitCount===1?s+=" - one package was already cached":s+="No packages were cached",this.cacheHitCount>0?this.cacheMissCount>1?s+=`, ${this.cacheMissCount} had to be fetched`:this.cacheMissCount===1&&(s+=`, one had to be fetched (${it(this.configuration,this.lastCacheMiss)})`):this.cacheMissCount>1?s+=` - ${this.cacheMissCount} packages had to be fetched`:this.cacheMissCount===1&&(s+=` - one package had to be fetched (${it(this.configuration,this.lastCacheMiss)})`),this.reportInfo(z.FETCH_NOT_CACHED,s)}commit(){let e=this.uncommitted;this.uncommitted=new Set;for(let r of e)r.committed=!0,r.action()}clearProgress({delta:e=0,clear:r=!1}){!this.configuration.get("enableProgressBars")||this.json||this.progress.size+e>0&&(this.stdout.write(`[${this.progress.size+e}A`),(e>0||r)&&this.stdout.write(""))}writeProgress(){if(!this.configuration.get("enableProgressBars")||this.json||(this.progressTimeout!==null&&clearTimeout(this.progressTimeout),this.progressTimeout=null,this.progress.size===0))return;let e=Date.now();e-this.progressTime>HW&&(this.progressFrame=(this.progressFrame+1)%UW.length,this.progressTime=e);let r=UW[this.progressFrame];for(let i of this.progress.values()){let n=this.progressStyle.chars[0].repeat(i.lastScaledSize),s=this.progressStyle.chars[1].repeat(this.progressMaxScaledSize-i.lastScaledSize),o=this.formatName(null),a=o?`${o}: `:"";this.stdout.write(`${je(this.configuration,"\u27A4","blueBright")} ${a}${r} ${n}${s} +`)}this.progressTimeout=setTimeout(()=>{this.refreshProgress()},HW)}refreshProgress(e=0){let r=!1;if(this.progress.size===0)r=!0;else for(let i of this.progress.values()){let n=Math.trunc(this.progressMaxScaledSize*i.definition.progress),s=i.lastScaledSize;if(i.lastScaledSize=n,n!==s){r=!0;break}}r&&(this.clearProgress({delta:e}),this.writeProgress())}truncate(e,{truncate:r}={}){return this.configuration.get("enableProgressBars")||(r=!1),typeof r=="undefined"&&(r=this.configuration.get("preferTruncatedLines")),r&&(e=(0,TW.default)(e,0,process.stdout.columns-1)),e}formatName(e){return GW(e,{configuration:this.configuration,json:this.json})}formatNameWithHyperlink(e){return vS(e,{configuration:this.configuration,json:this.json})}formatIndent(){return"\u2502 ".repeat(this.indent)}};var yr="3.0.0-rc.9.git.20210719.hash-69c64faa";var us;(function(n){n.Yarn1="Yarn Classic",n.Yarn2="Yarn",n.Npm="npm",n.Pnpm="pnpm"})(us||(us={}));async function io(t,e,r,i=[]){if(process.platform==="win32"){let n=`@goto #_undefined_# 2>NUL || @title %COMSPEC% & @setlocal & @"${r}" ${i.map(s=>`"${s.replace('"','""')}"`).join(" ")} %*`;await M.writeFilePromise(B.format({dir:t,name:e,ext:".cmd"}),n)}await M.writeFilePromise(B.join(t,e),`#!/bin/sh exec "${r}" ${i.map(n=>`'${n.replace(/'/g,`'"'"'`)}'`).join(" ")} "$@" -`),await R.chmodPromise(w.join(t,e),493)}async function nwe(t){let e=null;try{e=await R.readFilePromise(w.join(t,ft.lockfile),"utf8")}catch{}return e!==null?e.match(/^__metadata:$/m)?{packageManager:$n.Yarn2,reason:'"__metadata" key found in yarn.lock'}:{packageManager:$n.Yarn1,reason:'"__metadata" key not found in yarn.lock, must be a Yarn classic lockfile'}:R.existsSync(w.join(t,"package-lock.json"))?{packageManager:$n.Npm,reason:`found npm's "package-lock.json" lockfile`}:R.existsSync(w.join(t,"pnpm-lock.yaml"))?{packageManager:$n.Pnpm,reason:`found pnpm's "pnpm-lock.yaml" lockfile`}:null}async function Bh({project:t,locator:e,binFolder:r,lifecycleScript:i}){var a,l;let n={};for(let[c,u]of Object.entries(process.env))typeof u!="undefined"&&(n[c.toLowerCase()!=="path"?c:"PATH"]=u);let s=npath.fromPortablePath(r);if(n.BERRY_BIN_FOLDER=npath.fromPortablePath(s),await Promise.all([Us(r,"node",process.execPath),...Mi!==null?[Us(r,"run",process.execPath,[process.argv[1],"run"]),Us(r,"yarn",process.execPath,[process.argv[1]]),Us(r,"yarnpkg",process.execPath,[process.argv[1]]),Us(r,"node-gyp",process.execPath,[process.argv[1],"run","--top-level","node-gyp"])]:[]]),t&&(n.INIT_CWD=npath.fromPortablePath(t.configuration.startingCwd),n.PROJECT_CWD=npath.fromPortablePath(t.cwd)),n.PATH=n.PATH?`${s}${npath.delimiter}${n.PATH}`:`${s}`,n.npm_execpath=`${s}${npath.sep}yarn`,n.npm_node_execpath=`${s}${npath.sep}node`,e){if(!t)throw new Error("Assertion failed: Missing project");let c=t.tryWorkspaceByLocator(e),u=c?(a=c.manifest.version)!=null?a:"":(l=t.storedPackages.get(e.locatorHash).version)!=null?l:"";n.npm_package_name=gt(e),n.npm_package_version=u}let o=Mi!==null?`yarn/${Mi}`:`yarn/${Ks.dynamicRequire("@yarnpkg/core").version}-core`;return n.npm_config_user_agent=`${o} npm/? node/${process.versions.node} ${process.platform} ${process.arch}`,i&&(n.npm_lifecycle_event=i),t&&await t.configuration.triggerHook(c=>c.setupScriptEnvironment,t,n,async(c,u,g)=>await Us(r,Ut(c),u,g)),n}var swe=2,owe=lJ.default(swe);async function awe(t,e,{configuration:r,report:i,workspace:n=null,locator:s=null}){await owe(async()=>{await R.mktempPromise(async o=>{let a=w.join(o,"pack.log"),l=null,{stdout:c,stderr:u}=r.getSubprocessStreams(a,{prefix:npath.fromPortablePath(t),report:i}),g=s&&Wn(s)?Og(s):s,h=g?tn(g):"an external project";c.write(`Packing ${h} from sources -`);let f=await nwe(t),p;f!==null?(c.write(`Using ${f.packageManager} for bootstrap. Reason: ${f.reason} +`),await M.chmodPromise(B.join(t,e),493)}async function ZQe(t){let e=null;try{e=await M.readFilePromise(B.join(t,mt.lockfile),"utf8")}catch{}return e!==null?e.match(/^__metadata:$/m)?{packageManager:us.Yarn2,reason:'"__metadata" key found in yarn.lock'}:{packageManager:us.Yarn1,reason:'"__metadata" key not found in yarn.lock, must be a Yarn classic lockfile'}:M.existsSync(B.join(t,"package-lock.json"))?{packageManager:us.Npm,reason:`found npm's "package-lock.json" lockfile`}:M.existsSync(B.join(t,"pnpm-lock.yaml"))?{packageManager:us.Pnpm,reason:`found pnpm's "pnpm-lock.yaml" lockfile`}:null}async function nf({project:t,locator:e,binFolder:r,lifecycleScript:i}){var l,c;let n={};for(let[u,g]of Object.entries(process.env))typeof g!="undefined"&&(n[u.toLowerCase()!=="path"?u:"PATH"]=g);let s=L.fromPortablePath(r);n.BERRY_BIN_FOLDER=L.fromPortablePath(s);let o=process.env.COREPACK_ROOT?L.join(process.env.COREPACK_ROOT,"dist/yarn.js"):process.argv[1];if(await Promise.all([io(r,"node",process.execPath),...yr!==null?[io(r,"run",process.execPath,[o,"run"]),io(r,"yarn",process.execPath,[o]),io(r,"yarnpkg",process.execPath,[o]),io(r,"node-gyp",process.execPath,[o,"run","--top-level","node-gyp"])]:[]]),t&&(n.INIT_CWD=L.fromPortablePath(t.configuration.startingCwd),n.PROJECT_CWD=L.fromPortablePath(t.cwd)),n.PATH=n.PATH?`${s}${L.delimiter}${n.PATH}`:`${s}`,n.npm_execpath=`${s}${L.sep}yarn`,n.npm_node_execpath=`${s}${L.sep}node`,e){if(!t)throw new Error("Assertion failed: Missing project");let u=t.tryWorkspaceByLocator(e),g=u?(l=u.manifest.version)!=null?l:"":(c=t.storedPackages.get(e.locatorHash).version)!=null?c:"";n.npm_package_name=pt(e),n.npm_package_version=g}let a=yr!==null?`yarn/${yr}`:`yarn/${Jl("@yarnpkg/core").version}-core`;return n.npm_config_user_agent=`${a} npm/? node/${process.versions.node} ${process.platform} ${process.arch}`,i&&(n.npm_lifecycle_event=i),t&&await t.configuration.triggerHook(u=>u.setupScriptEnvironment,t,n,async(u,g,h)=>await io(r,Jt(u),g,h)),n}var _Qe=2,$Qe=(0,qW.default)(_Qe);async function e0e(t,e,{configuration:r,report:i,workspace:n=null,locator:s=null}){await $Qe(async()=>{await M.mktempPromise(async o=>{let a=B.join(o,"pack.log"),l=null,{stdout:c,stderr:u}=r.getSubprocessStreams(a,{prefix:L.fromPortablePath(t),report:i}),g=s&&os(s)?Eh(s):s,h=g?gn(g):"an external project";c.write(`Packing ${h} from sources +`);let f=await ZQe(t),p;f!==null?(c.write(`Using ${f.packageManager} for bootstrap. Reason: ${f.reason} `),p=f.packageManager):(c.write(`No package manager configuration detected; defaulting to Yarn -`),p=$n.Yarn2),await R.mktempPromise(async m=>{let I=await Bh({binFolder:m}),B=new Map([[$n.Yarn1,async()=>{let k=n!==null?["workspace",n]:[],N=await ws("yarn",["set","version","classic","--only-if-needed"],{cwd:t,env:I,stdin:l,stdout:c,stderr:u,end:Wi.ErrorCode});if(N.code!==0)return N.code;await R.appendFilePromise(w.join(t,".npmignore"),`/.yarn +`),p=us.Yarn2),await M.mktempPromise(async m=>{let I=await nf({binFolder:m}),w=new Map([[us.Yarn1,async()=>{let F=n!==null?["workspace",n]:[],N=await Os("yarn",["set","version","classic","--only-if-needed"],{cwd:t,env:I,stdin:l,stdout:c,stderr:u,end:sn.ErrorCode});if(N.code!==0)return N.code;await M.appendFilePromise(B.join(t,".npmignore"),`/.yarn `),c.write(` -`);let O=await ws("yarn",["install"],{cwd:t,env:I,stdin:l,stdout:c,stderr:u,end:Wi.ErrorCode});if(O.code!==0)return O.code;c.write(` -`);let v=await ws("yarn",[...k,"pack","--filename",npath.fromPortablePath(e)],{cwd:t,env:I,stdin:l,stdout:c,stderr:u});return v.code!==0?v.code:0}],[$n.Yarn2,async()=>{let k=n!==null?["workspace",n]:[];I.YARN_ENABLE_INLINE_BUILDS="1";let N=w.join(t,ft.lockfile);await R.existsPromise(N)||await R.writeFilePromise(N,"");let O=await ws("yarn",[...k,"pack","--install-if-needed","--filename",npath.fromPortablePath(e)],{cwd:t,env:I,stdin:l,stdout:c,stderr:u});return O.code!==0?O.code:0}],[$n.Npm,async()=>{if(n!==null)throw new Error(`Workspaces aren't supported by npm, which has been detected as the primary package manager for ${t}`);delete I.npm_config_user_agent;let k=await ws("npm",["install"],{cwd:t,env:I,stdin:l,stdout:c,stderr:u,end:Wi.ErrorCode});if(k.code!==0)return k.code;let N=new nc.PassThrough,O=Ks.bufferStream(N);N.pipe(c);let v=await ws("npm",["pack","--silent"],{cwd:t,env:I,stdin:l,stdout:N,stderr:u});if(v.code!==0)return v.code;let U=(await O).toString().trim(),re=w.resolve(t,npath.toPortablePath(U));return await R.renamePromise(re,e),0}]]).get(p);if(typeof B=="undefined")throw new Error("Assertion failed: Unsupported workflow");let P=await B();if(!(P===0||typeof P=="undefined"))throw R.detachTemp(o),new Ge(J.PACKAGE_PREPARATION_FAILED,`Packing the package failed (exit code ${P}, logs can be found here: ${a})`)})})})}async function Awe(t,e,{project:r}){let i=r.tryWorkspaceByLocator(t);if(i!==null)return BD(i,e);let n=r.storedPackages.get(t.locatorHash);if(!n)throw new Error(`Package for ${$e(r.configuration,t)} not found in the project`);return await Ji.openPromise(async s=>{let o=r.configuration,a=r.configuration.getLinkers(),l={project:r,report:new we({stdout:new nc.PassThrough,configuration:o})},c=a.find(f=>f.supportsPackage(n,l));if(!c)throw new Error(`The package ${$e(r.configuration,n)} isn't supported by any of the available linkers`);let u=await c.findPackageLocation(n,l),g=new Ct(u,{baseFs:s});return(await je.find(pe.dot,{baseFs:g})).scripts.has(e)},{libzip:await ri()})}async function rI(t,e,r,{cwd:i,project:n,stdin:s,stdout:o,stderr:a}){return await R.mktempPromise(async l=>{let{manifest:c,env:u,cwd:g}=await cJ(t,{project:n,binFolder:l,cwd:i,lifecycleScript:e}),h=c.scripts.get(e);if(typeof h=="undefined")return 1;let f=async()=>await Xm(h,r,{cwd:g,env:u,stdin:s,stdout:o,stderr:a});return await(await n.configuration.reduceHook(m=>m.wrapScriptExecution,f,n,t,e,{script:h,args:r,cwd:g,env:u,stdin:s,stdout:o,stderr:a}))()})}async function wD(t,e,r,{cwd:i,project:n,stdin:s,stdout:o,stderr:a}){return await R.mktempPromise(async l=>{let{env:c,cwd:u}=await cJ(t,{project:n,binFolder:l,cwd:i});return await Xm(e,r,{cwd:u,env:c,stdin:s,stdout:o,stderr:a})})}async function lwe(t,{binFolder:e,cwd:r,lifecycleScript:i}){let n=await Bh({project:t.project,locator:t.anchoredLocator,binFolder:e,lifecycleScript:i});return await Promise.all(Array.from(await uJ(t),([s,[,o]])=>Us(e,Ut(s),process.execPath,[o]))),typeof r=="undefined"&&(r=w.dirname(await R.realpathPromise(w.join(t.cwd,"package.json")))),{manifest:t.manifest,binFolder:e,env:n,cwd:r}}async function cJ(t,{project:e,binFolder:r,cwd:i,lifecycleScript:n}){let s=e.tryWorkspaceByLocator(t);if(s!==null)return lwe(s,{binFolder:r,cwd:i,lifecycleScript:n});let o=e.storedPackages.get(t.locatorHash);if(!o)throw new Error(`Package for ${$e(e.configuration,t)} not found in the project`);return await Ji.openPromise(async a=>{let l=e.configuration,c=e.configuration.getLinkers(),u={project:e,report:new we({stdout:new nc.PassThrough,configuration:l})},g=c.find(I=>I.supportsPackage(o,u));if(!g)throw new Error(`The package ${$e(e.configuration,o)} isn't supported by any of the available linkers`);let h=await Bh({project:e,locator:t,binFolder:r,lifecycleScript:n});await Promise.all(Array.from(await iI(t,{project:e}),([I,[,y]])=>Us(r,Ut(I),process.execPath,[y])));let f=await g.findPackageLocation(o,u),p=new Ct(f,{baseFs:a}),m=await je.find(pe.dot,{baseFs:p});return typeof i=="undefined"&&(i=f),{manifest:m,binFolder:r,env:h,cwd:i}},{libzip:await ri()})}async function gJ(t,e,r,{cwd:i,stdin:n,stdout:s,stderr:o}){return await rI(t.anchoredLocator,e,r,{cwd:i,project:t.project,stdin:n,stdout:s,stderr:o})}function BD(t,e){return t.manifest.scripts.has(e)}async function hJ(t,e,{cwd:r,report:i}){let{configuration:n}=t.project,s=null;await R.mktempPromise(async o=>{let a=w.join(o,`${e}.log`),l=`# This file contains the result of Yarn calling the "${e}" lifecycle script inside a workspace ("${t.cwd}") -`,{stdout:c,stderr:u}=n.getSubprocessStreams(a,{report:i,prefix:$e(n,t.anchoredLocator),header:l});i.reportInfo(J.LIFECYCLE_SCRIPT,`Calling the "${e}" lifecycle script`);let g=await gJ(t,e,[],{cwd:r,stdin:s,stdout:c,stderr:u});if(c.end(),u.end(),g!==0)throw R.detachTemp(o),new Ge(J.LIFECYCLE_SCRIPT,`${AJ.default(e)} script failed (exit code ${Ue(n,g,be.NUMBER)}, logs can be found here: ${Ue(n,a,be.PATH)}); run ${Ue(n,`yarn ${e}`,be.CODE)} to investigate`)})}async function cwe(t,e,r){BD(t,e)&&await hJ(t,e,r)}async function iI(t,{project:e}){let r=e.configuration,i=new Map,n=e.storedPackages.get(t.locatorHash);if(!n)throw new Error(`Package for ${$e(r,t)} not found in the project`);let s=new nc.Writable,o=r.getLinkers(),a={project:e,report:new we({configuration:r,stdout:s})},l=new Set([t.locatorHash]);for(let u of n.dependencies.values()){let g=e.storedResolutions.get(u.descriptorHash);if(!g)throw new Error(`Assertion failed: The resolution (${Rt(r,u)}) should have been registered`);l.add(g)}let c=await Promise.all(Array.from(l,async u=>{let g=e.storedPackages.get(u);if(!g)throw new Error(`Assertion failed: The package (${u}) should have been registered`);if(g.bin.size===0)return Ks.mapAndFilter.skip;let h=o.find(p=>p.supportsPackage(g,a));if(!h)return Ks.mapAndFilter.skip;let f=null;try{f=await h.findPackageLocation(g,a)}catch(p){if(p.code==="LOCATOR_NOT_INSTALLED")return Ks.mapAndFilter.skip;throw p}return{dependency:g,packageLocation:f}}));for(let u of c){if(u===Ks.mapAndFilter.skip)continue;let{dependency:g,packageLocation:h}=u;for(let[f,p]of g.bin)i.set(f,[g,npath.fromPortablePath(w.resolve(h,p))])}return i}async function uJ(t){return await iI(t.anchoredLocator,{project:t.project})}async function fJ(t,e,r,{cwd:i,project:n,stdin:s,stdout:o,stderr:a,nodeArgs:l=[],packageAccessibleBinaries:c}){c!=null||(c=await iI(t,{project:n}));let u=c.get(e);if(!u)throw new Error(`Binary not found (${e}) for ${$e(n.configuration,t)}`);return await R.mktempPromise(async g=>{let[,h]=u,f=await Bh({project:n,locator:t,binFolder:g});await Promise.all(Array.from(c,([m,[,I]])=>Us(f.BERRY_BIN_FOLDER,Ut(m),process.execPath,[I])));let p;try{p=await ws(process.execPath,[...l,h,...r],{cwd:i,env:f,stdin:s,stdout:o,stderr:a})}finally{await R.removePromise(f.BERRY_BIN_FOLDER)}return p.code})}async function uwe(t,e,r,{cwd:i,stdin:n,stdout:s,stderr:o,packageAccessibleBinaries:a}){return await fJ(t.anchoredLocator,e,r,{project:t.project,cwd:i,stdin:n,stdout:s,stderr:o,packageAccessibleBinaries:a})}var Ar={};We(Ar,{convertToZip:()=>F0e,extractArchiveTo:()=>L0e,makeArchiveFromDirectory:()=>v0e,safeTime:()=>Ti});var y8=X(require("stream")),B8=X(i8());var d8=X(require("os")),C8=X(p8()),m8=X(require("worker_threads")),HS=class{constructor(e){this.source=e;this.pool=[];this.queue=new C8.default({concurrency:d8.cpus().length});let r=setTimeout(()=>{if(!(this.queue.size!==0||this.queue.pending!==0)){for(let i of this.pool)i.terminate();this.pool=[]}},1e3).unref();this.queue.on("idle",()=>{r.refresh()})}run(e){return this.queue.add(()=>{var i;let r=(i=this.pool.pop())!=null?i:new m8.Worker(this.source,{eval:!0,execArgv:[...process.execArgv,"--unhandled-rejections=strict"]});return r.ref(),new Promise((n,s)=>{let o=a=>{a!==0&&s(new Error(`Worker exited with code ${a}`))};r.once("message",a=>{this.pool.push(r),r.unref(),r.off("error",s),r.off("exit",o),n(a)}),r.once("error",s),r.once("exit",o),r.postMessage(e)})})}};var w8=X(Zi()),Q8=X(E8()),Ti=456789e3;async function v0e(t,{baseFs:e=new It,prefixPath:r=pe.root,compressionLevel:i,inMemory:n=!1}={}){let s=await ri(),o;if(n)o=new Er(null,{libzip:s,level:i});else{let l=await R.mktempPromise(),c=w.join(l,"archive.zip");o=new Er(c,{create:!0,libzip:s,level:i})}let a=w.resolve(pe.root,r);return await o.copyPromise(a,t,{baseFs:e,stableTime:!0,stableSort:!0}),o}var b8;async function F0e(t,e){let r=await R.mktempPromise(),i=w.join(r,"archive.zip");return b8||(b8=new HS(Q8.getContent())),await b8.run({tmpFile:i,tgz:t,opts:e}),new Er(i,{libzip:await ri(),level:e.compressionLevel})}async function*R0e(t){let e=new B8.default.Parse,r=new y8.PassThrough({objectMode:!0,autoDestroy:!0,emitClose:!0});e.on("entry",i=>{r.write(i)}),e.on("error",i=>{r.destroy(i)}),e.on("close",()=>{r.destroy()}),e.end(t);for await(let i of r){let n=i;yield n,n.resume()}}async function L0e(t,e,{stripComponents:r=0,prefixPath:i=pe.dot}={}){var s,o;function n(a){if(a.path[0]==="/")return!0;let l=a.path.split(/\//g);return!!(l.some(c=>c==="..")||l.length<=r)}for await(let a of R0e(t)){if(n(a))continue;let l=w.normalize(npath.toPortablePath(a.path)).replace(/\/$/,"").split(/\//g);if(l.length<=r)continue;let c=l.slice(r).join("/"),u=w.join(i,c),g=420;switch((a.type==="Directory"||(((s=a.mode)!=null?s:0)&73)!=0)&&(g|=73),a.type){case"Directory":e.mkdirpSync(w.dirname(u),{chmod:493,utimes:[Ti,Ti]}),e.mkdirSync(u),e.chmodSync(u,g),e.utimesSync(u,Ti,Ti);break;case"OldFile":case"File":e.mkdirpSync(w.dirname(u),{chmod:493,utimes:[Ti,Ti]}),e.writeFileSync(u,await w8.bufferStream(a)),e.chmodSync(u,g),e.utimesSync(u,Ti,Ti);break;case"SymbolicLink":e.mkdirpSync(w.dirname(u),{chmod:493,utimes:[Ti,Ti]}),e.symlinkSync(a.linkpath,u),(o=e.lutimesSync)==null||o.call(e,u,Ti,Ti);break}}return e}var vn={};We(vn,{emitList:()=>M0e,emitTree:()=>v8,treeNodeToJson:()=>k8,treeNodeToTreeify:()=>x8});var P8=X(S8());function x8(t,{configuration:e}){let r={},i=(n,s)=>{let o=Array.isArray(n)?n.entries():Object.entries(n);for(let[a,{label:l,value:c,children:u}]of o){let g=[];typeof l!="undefined"&&g.push($C(e,l,qa.BOLD)),typeof c!="undefined"&&g.push(Ue(e,c[0],c[1])),g.length===0&&g.push($C(e,`${a}`,qa.BOLD));let h=g.join(": "),f=s[h]={};typeof u!="undefined"&&i(u,f)}};if(typeof t.children=="undefined")throw new Error("The root node must only contain children");return i(t.children,r),r}function k8(t){let e=r=>{var s;if(typeof r.children=="undefined"){if(typeof r.value=="undefined")throw new Error("Assertion failed: Expected a value to be set if the children are missing");return Nl(r.value[0],r.value[1])}let i=Array.isArray(r.children)?r.children.entries():Object.entries((s=r.children)!=null?s:{}),n=Array.isArray(r.children)?[]:{};for(let[o,a]of i)n[o]=e(a);return typeof r.value=="undefined"?n:{value:Nl(r.value[0],r.value[1]),children:n}};return e(t)}function M0e(t,{configuration:e,stdout:r,json:i}){let n=t.map(s=>({value:s}));v8({children:n},{configuration:e,stdout:r,json:i})}function v8(t,{configuration:e,stdout:r,json:i,separators:n=0}){var o;if(i){let a=Array.isArray(t.children)?t.children.values():Object.values((o=t.children)!=null?o:{});for(let l of a)r.write(`${JSON.stringify(k8(l))} -`);return}let s=P8.asTree(x8(t,{configuration:e}),!1,!1);if(n>=1&&(s=s.replace(/^([├└]─)/gm,`\u2502 +`);let K=await Os("yarn",["install"],{cwd:t,env:I,stdin:l,stdout:c,stderr:u,end:sn.ErrorCode});if(K.code!==0)return K.code;c.write(` +`);let v=await Os("yarn",[...F,"pack","--filename",L.fromPortablePath(e)],{cwd:t,env:I,stdin:l,stdout:c,stderr:u});return v.code!==0?v.code:0}],[us.Yarn2,async()=>{let F=n!==null?["workspace",n]:[];I.YARN_ENABLE_INLINE_BUILDS="1";let N=B.join(t,mt.lockfile);await M.existsPromise(N)||await M.writeFilePromise(N,"");let K=await Os("yarn",[...F,"pack","--install-if-needed","--filename",L.fromPortablePath(e)],{cwd:t,env:I,stdin:l,stdout:c,stderr:u});return K.code!==0?K.code:0}],[us.Npm,async()=>{if(n!==null)throw new Error(`Workspaces aren't supported by npm, which has been detected as the primary package manager for ${t}`);delete I.npm_config_user_agent;let F=await Os("npm",["install"],{cwd:t,env:I,stdin:l,stdout:c,stderr:u,end:sn.ErrorCode});if(F.code!==0)return F.code;let N=new Lc.PassThrough,K=_g(N);N.pipe(c);let v=await Os("npm",["pack","--silent"],{cwd:t,env:I,stdin:l,stdout:N,stderr:u});if(v.code!==0)return v.code;let J=(await K).toString().trim(),oe=B.resolve(t,L.toPortablePath(J));return await M.renamePromise(oe,e),0}]]).get(p);if(typeof w=="undefined")throw new Error("Assertion failed: Unsupported workflow");let x=await w();if(!(x===0||typeof x=="undefined"))throw M.detachTemp(o),new Ze(z.PACKAGE_PREPARATION_FAILED,`Packing the package failed (exit code ${x}, logs can be found here: ${a})`)})})})}async function t0e(t,e,{project:r}){let i=r.tryWorkspaceByLocator(t);if(i!==null)return FS(i,e);let n=r.storedPackages.get(t.locatorHash);if(!n)throw new Error(`Package for ${it(r.configuration,t)} not found in the project`);return await nn.openPromise(async s=>{let o=r.configuration,a=r.configuration.getLinkers(),l={project:r,report:new xe({stdout:new Lc.PassThrough,configuration:o})},c=a.find(f=>f.supportsPackage(n,l));if(!c)throw new Error(`The package ${it(r.configuration,n)} isn't supported by any of the available linkers`);let u=await c.findPackageLocation(n,l),g=new yt(u,{baseFs:s});return(await We.find(Ee.dot,{baseFs:g})).scripts.has(e)},{libzip:await gi()})}async function _I(t,e,r,{cwd:i,project:n,stdin:s,stdout:o,stderr:a}){return await M.mktempPromise(async l=>{let{manifest:c,env:u,cwd:g}=await JW(t,{project:n,binFolder:l,cwd:i,lifecycleScript:e}),h=c.scripts.get(e);if(typeof h=="undefined")return 1;let f=async()=>await Fc(h,r,{cwd:g,env:u,stdin:s,stdout:o,stderr:a});return await(await n.configuration.reduceHook(m=>m.wrapScriptExecution,f,n,t,e,{script:h,args:r,cwd:g,env:u,stdin:s,stdout:o,stderr:a}))()})}async function RS(t,e,r,{cwd:i,project:n,stdin:s,stdout:o,stderr:a}){return await M.mktempPromise(async l=>{let{env:c,cwd:u}=await JW(t,{project:n,binFolder:l,cwd:i});return await Fc(e,r,{cwd:u,env:c,stdin:s,stdout:o,stderr:a})})}async function r0e(t,{binFolder:e,cwd:r,lifecycleScript:i}){let n=await nf({project:t.project,locator:t.anchoredLocator,binFolder:e,lifecycleScript:i});return await Promise.all(Array.from(await WW(t),([s,[,o]])=>io(e,Jt(s),process.execPath,[o]))),typeof r=="undefined"&&(r=B.dirname(await M.realpathPromise(B.join(t.cwd,"package.json")))),{manifest:t.manifest,binFolder:e,env:n,cwd:r}}async function JW(t,{project:e,binFolder:r,cwd:i,lifecycleScript:n}){let s=e.tryWorkspaceByLocator(t);if(s!==null)return r0e(s,{binFolder:r,cwd:i,lifecycleScript:n});let o=e.storedPackages.get(t.locatorHash);if(!o)throw new Error(`Package for ${it(e.configuration,t)} not found in the project`);return await nn.openPromise(async a=>{let l=e.configuration,c=e.configuration.getLinkers(),u={project:e,report:new xe({stdout:new Lc.PassThrough,configuration:l})},g=c.find(I=>I.supportsPackage(o,u));if(!g)throw new Error(`The package ${it(e.configuration,o)} isn't supported by any of the available linkers`);let h=await nf({project:e,locator:t,binFolder:r,lifecycleScript:n});await Promise.all(Array.from(await $I(t,{project:e}),([I,[,y]])=>io(r,Jt(I),process.execPath,[y])));let f=await g.findPackageLocation(o,u),p=new yt(f,{baseFs:a}),m=await We.find(Ee.dot,{baseFs:p});return typeof i=="undefined"&&(i=f),{manifest:m,binFolder:r,env:h,cwd:i}},{libzip:await gi()})}async function zW(t,e,r,{cwd:i,stdin:n,stdout:s,stderr:o}){return await _I(t.anchoredLocator,e,r,{cwd:i,project:t.project,stdin:n,stdout:s,stderr:o})}function FS(t,e){return t.manifest.scripts.has(e)}async function VW(t,e,{cwd:r,report:i}){let{configuration:n}=t.project,s=null;await M.mktempPromise(async o=>{let a=B.join(o,`${e}.log`),l=`# This file contains the result of Yarn calling the "${e}" lifecycle script inside a workspace ("${t.cwd}") +`,{stdout:c,stderr:u}=n.getSubprocessStreams(a,{report:i,prefix:it(n,t.anchoredLocator),header:l});i.reportInfo(z.LIFECYCLE_SCRIPT,`Calling the "${e}" lifecycle script`);let g=await zW(t,e,[],{cwd:r,stdin:s,stdout:c,stderr:u});if(c.end(),u.end(),g!==0)throw M.detachTemp(o),new Ze(z.LIFECYCLE_SCRIPT,`${(0,jW.default)(e)} script failed (exit code ${je(n,g,ve.NUMBER)}, logs can be found here: ${je(n,a,ve.PATH)}); run ${je(n,`yarn ${e}`,ve.CODE)} to investigate`)})}async function i0e(t,e,r){FS(t,e)&&await VW(t,e,r)}async function $I(t,{project:e}){let r=e.configuration,i=new Map,n=e.storedPackages.get(t.locatorHash);if(!n)throw new Error(`Package for ${it(r,t)} not found in the project`);let s=new Lc.Writable,o=r.getLinkers(),a={project:e,report:new xe({configuration:r,stdout:s})},l=new Set([t.locatorHash]);for(let u of n.dependencies.values()){let g=e.storedResolutions.get(u.descriptorHash);if(!g)throw new Error(`Assertion failed: The resolution (${Tt(r,u)}) should have been registered`);l.add(g)}let c=await Promise.all(Array.from(l,async u=>{let g=e.storedPackages.get(u);if(!g)throw new Error(`Assertion failed: The package (${u}) should have been registered`);if(g.bin.size===0)return rA.skip;let h=o.find(p=>p.supportsPackage(g,a));if(!h)return rA.skip;let f=null;try{f=await h.findPackageLocation(g,a)}catch(p){if(p.code==="LOCATOR_NOT_INSTALLED")return rA.skip;throw p}return{dependency:g,packageLocation:f}}));for(let u of c){if(u===rA.skip)continue;let{dependency:g,packageLocation:h}=u;for(let[f,p]of g.bin)i.set(f,[g,L.fromPortablePath(B.resolve(h,p))])}return i}async function WW(t){return await $I(t.anchoredLocator,{project:t.project})}async function XW(t,e,r,{cwd:i,project:n,stdin:s,stdout:o,stderr:a,nodeArgs:l=[],packageAccessibleBinaries:c}){c!=null||(c=await $I(t,{project:n}));let u=c.get(e);if(!u)throw new Error(`Binary not found (${e}) for ${it(n.configuration,t)}`);return await M.mktempPromise(async g=>{let[,h]=u,f=await nf({project:n,locator:t,binFolder:g});await Promise.all(Array.from(c,([m,[,I]])=>io(f.BERRY_BIN_FOLDER,Jt(m),process.execPath,[I])));let p;try{p=await Os(process.execPath,[...l,h,...r],{cwd:i,env:f,stdin:s,stdout:o,stderr:a})}finally{await M.removePromise(f.BERRY_BIN_FOLDER)}return p.code})}async function n0e(t,e,r,{cwd:i,stdin:n,stdout:s,stderr:o,packageAccessibleBinaries:a}){return await XW(t.anchoredLocator,e,r,{project:t.project,cwd:i,stdin:n,stdout:s,stderr:o,packageAccessibleBinaries:a})}var hr={};$e(hr,{convertToZip:()=>BDe,extractArchiveTo:()=>QDe,makeArchiveFromDirectory:()=>yDe,safeTime:()=>zi});var ez=te(require("stream")),tz=te(M4());var V4=te(require("os")),X4=te(z4()),Z4=te(require("worker_threads")),Zx=class{constructor(e){this.source=e;this.pool=[];this.queue=new X4.default({concurrency:Math.max(1,(0,V4.cpus)().length)});let r=setTimeout(()=>{if(!(this.queue.size!==0||this.queue.pending!==0)){for(let i of this.pool)i.terminate();this.pool=[]}},1e3).unref();this.queue.on("idle",()=>{r.refresh()})}run(e){return this.queue.add(()=>{var i;let r=(i=this.pool.pop())!=null?i:new Z4.Worker(this.source,{eval:!0,execArgv:[...process.execArgv,"--unhandled-rejections=strict"]});return r.ref(),new Promise((n,s)=>{let o=a=>{a!==0&&s(new Error(`Worker exited with code ${a}`))};r.once("message",a=>{this.pool.push(r),r.unref(),r.off("error",s),r.off("exit",o),n(a)}),r.once("error",s),r.once("exit",o),r.postMessage(e)})})}};var rz=te($4()),zi=456789e3;async function yDe(t,{baseFs:e=new wt,prefixPath:r=Ee.root,compressionLevel:i,inMemory:n=!1}={}){let s=await gi(),o;if(n)o=new br(null,{libzip:s,level:i});else{let l=await M.mktempPromise(),c=B.join(l,"archive.zip");o=new br(c,{create:!0,libzip:s,level:i})}let a=B.resolve(Ee.root,r);return await o.copyPromise(a,t,{baseFs:e,stableTime:!0,stableSort:!0}),o}var iz;async function BDe(t,e){let r=await M.mktempPromise(),i=B.join(r,"archive.zip");return iz||(iz=new Zx((0,rz.getContent)())),await iz.run({tmpFile:i,tgz:t,opts:e}),new br(i,{libzip:await gi(),level:e.compressionLevel})}async function*wDe(t){let e=new tz.default.Parse,r=new ez.PassThrough({objectMode:!0,autoDestroy:!0,emitClose:!0});e.on("entry",i=>{r.write(i)}),e.on("error",i=>{r.destroy(i)}),e.on("close",()=>{r.destroy()}),e.end(t);for await(let i of r){let n=i;yield n,n.resume()}}async function QDe(t,e,{stripComponents:r=0,prefixPath:i=Ee.dot}={}){var s,o;function n(a){if(a.path[0]==="/")return!0;let l=a.path.split(/\//g);return!!(l.some(c=>c==="..")||l.length<=r)}for await(let a of wDe(t)){if(n(a))continue;let l=B.normalize(L.toPortablePath(a.path)).replace(/\/$/,"").split(/\//g);if(l.length<=r)continue;let c=l.slice(r).join("/"),u=B.join(i,c),g=420;switch((a.type==="Directory"||(((s=a.mode)!=null?s:0)&73)!=0)&&(g|=73),a.type){case"Directory":e.mkdirpSync(B.dirname(u),{chmod:493,utimes:[zi,zi]}),e.mkdirSync(u),e.chmodSync(u,g),e.utimesSync(u,zi,zi);break;case"OldFile":case"File":e.mkdirpSync(B.dirname(u),{chmod:493,utimes:[zi,zi]}),e.writeFileSync(u,await _g(a)),e.chmodSync(u,g),e.utimesSync(u,zi,zi);break;case"SymbolicLink":e.mkdirpSync(B.dirname(u),{chmod:493,utimes:[zi,zi]}),e.symlinkSync(a.linkpath,u),(o=e.lutimesSync)==null||o.call(e,u,zi,zi);break}}return e}var Hn={};$e(Hn,{emitList:()=>bDe,emitTree:()=>lz,treeNodeToJson:()=>Az,treeNodeToTreeify:()=>az});var oz=te(sz());function az(t,{configuration:e}){let r={},i=(n,s)=>{let o=Array.isArray(n)?n.entries():Object.entries(n);for(let[a,{label:l,value:c,children:u}]of o){let g=[];typeof l!="undefined"&&g.push(jm(e,l,CA.BOLD)),typeof c!="undefined"&&g.push(je(e,c[0],c[1])),g.length===0&&g.push(jm(e,`${a}`,CA.BOLD));let h=g.join(": "),f=s[h]={};typeof u!="undefined"&&i(u,f)}};if(typeof t.children=="undefined")throw new Error("The root node must only contain children");return i(t.children,r),r}function Az(t){let e=r=>{var s;if(typeof r.children=="undefined"){if(typeof r.value=="undefined")throw new Error("Assertion failed: Expected a value to be set if the children are missing");return oc(r.value[0],r.value[1])}let i=Array.isArray(r.children)?r.children.entries():Object.entries((s=r.children)!=null?s:{}),n=Array.isArray(r.children)?[]:{};for(let[o,a]of i)n[o]=e(a);return typeof r.value=="undefined"?n:{value:oc(r.value[0],r.value[1]),children:n}};return e(t)}function bDe(t,{configuration:e,stdout:r,json:i}){let n=t.map(s=>({value:s}));lz({children:n},{configuration:e,stdout:r,json:i})}function lz(t,{configuration:e,stdout:r,json:i,separators:n=0}){var o;if(i){let a=Array.isArray(t.children)?t.children.values():Object.values((o=t.children)!=null?o:{});for(let l of a)r.write(`${JSON.stringify(Az(l))} +`);return}let s=(0,oz.asTree)(az(t,{configuration:e}),!1,!1);if(n>=1&&(s=s.replace(/^([├└]─)/gm,`\u2502 $1`).replace(/^│\n/,"")),n>=2)for(let a=0;a<2;++a)s=s.replace(/^([│ ].{2}[├│ ].{2}[^\n]+\n)(([│ ]).{2}[├└].{2}[^\n]*\n[│ ].{2}[│ ].{2}[├└]─)/gm,`$1$3 \u2502 -$2`).replace(/^│\n/,"");if(n>=3)throw new Error("Only the first two levels are accepted by treeUtils.emitTree");r.write(s)}var GS=X(require("fs"));var F8=X(Zi());var N0e=8,lt=class{constructor(e,{configuration:r,immutable:i=r.get("enableImmutableCache"),check:n=!1}){this.markedFiles=new Set;this.mutexes=new Map;this.configuration=r,this.cwd=e,this.immutable=i,this.check=n;let s=r.get("cacheKeyOverride");if(s!==null)this.cacheKey=`${s}`;else{let o=r.get("compressionLevel"),a=o!==Pa?`c${o}`:"";this.cacheKey=[N0e,a].join("")}}static async find(e,{immutable:r,check:i}={}){let n=new lt(e.get("cacheFolder"),{configuration:e,immutable:r,check:i});return await n.setup(),n}get mirrorCwd(){if(!this.configuration.get("enableMirror"))return null;let e=`${this.configuration.get("globalFolder")}/cache`;return e!==this.cwd?e:null}getVersionFilename(e){return`${Rl(e)}-${this.cacheKey}.zip`}getChecksumFilename(e,r){let n=O0e(r).slice(0,10);return`${Rl(e)}-${n}.zip`}getLocatorPath(e,r){return this.mirrorCwd===null?w.resolve(this.cwd,this.getVersionFilename(e)):r===null||qS(r)!==this.cacheKey?null:w.resolve(this.cwd,this.getChecksumFilename(e,r))}getLocatorMirrorPath(e){let r=this.mirrorCwd;return r!==null?w.resolve(r,this.getVersionFilename(e)):null}async setup(){if(!this.configuration.get("enableGlobalCache"))if(this.immutable){if(!await R.existsPromise(this.cwd))throw new Ge(J.IMMUTABLE_CACHE,"Cache path does not exist.")}else{await R.mkdirPromise(this.cwd,{recursive:!0});let e=w.resolve(this.cwd,".gitignore");await R.changeFilePromise(e,`/.gitignore +$2`).replace(/^│\n/,"");if(n>=3)throw new Error("Only the first two levels are accepted by treeUtils.emitTree");r.write(s)}var eP=te(require("fs"));var DDe=8,gt=class{constructor(e,{configuration:r,immutable:i=r.get("enableImmutableCache"),check:n=!1}){this.markedFiles=new Set;this.mutexes=new Map;this.configuration=r,this.cwd=e,this.immutable=i,this.check=n;let s=r.get("cacheKeyOverride");if(s!==null)this.cacheKey=`${s}`;else{let o=r.get("compressionLevel"),a=o!==Wa?`c${o}`:"";this.cacheKey=[DDe,a].join("")}}static async find(e,{immutable:r,check:i}={}){let n=new gt(e.get("cacheFolder"),{configuration:e,immutable:r,check:i});return await n.setup(),n}get mirrorCwd(){if(!this.configuration.get("enableMirror"))return null;let e=`${this.configuration.get("globalFolder")}/cache`;return e!==this.cwd?e:null}getVersionFilename(e){return`${ic(e)}-${this.cacheKey}.zip`}getChecksumFilename(e,r){let n=SDe(r).slice(0,10);return`${ic(e)}-${n}.zip`}getLocatorPath(e,r){return this.mirrorCwd===null?B.resolve(this.cwd,this.getVersionFilename(e)):r===null||tP(r)!==this.cacheKey?null:B.resolve(this.cwd,this.getChecksumFilename(e,r))}getLocatorMirrorPath(e){let r=this.mirrorCwd;return r!==null?B.resolve(r,this.getVersionFilename(e)):null}async setup(){if(!this.configuration.get("enableGlobalCache"))if(this.immutable){if(!await M.existsPromise(this.cwd))throw new Ze(z.IMMUTABLE_CACHE,"Cache path does not exist.")}else{await M.mkdirPromise(this.cwd,{recursive:!0});let e=B.resolve(this.cwd,".gitignore");await M.changeFilePromise(e,`/.gitignore *.flock -`)}(this.mirrorCwd||!this.immutable)&&await R.mkdirPromise(this.mirrorCwd||this.cwd,{recursive:!0})}async fetchPackageFromCache(e,r,{onHit:i,onMiss:n,loader:s,skipIntegrityCheck:o}){let a=this.getLocatorMirrorPath(e),l=new It,c=async(N,O=null)=>{let v=!o||!r?`${this.cacheKey}/${await jC(N)}`:r;if(O!==null){let U=!o||!r?`${this.cacheKey}/${await jC(O)}`:r;if(v!==U)throw new Ge(J.CACHE_CHECKSUM_MISMATCH,"The remote archive doesn't match the local checksum - has the local cache been corrupted?")}if(r!==null&&v!==r){let U;switch(this.check?U="throw":qS(r)!==qS(v)?U="update":U=this.configuration.get("checksumBehavior"),U){case"ignore":return r;case"update":return v;default:case"throw":throw new Ge(J.CACHE_CHECKSUM_MISMATCH,"The remote archive doesn't match the expected checksum")}}return v},u=async N=>{if(!s)throw new Error(`Cache check required but no loader configured for ${$e(this.configuration,e)}`);let O=await s(),v=O.getRealPath();return O.saveAndClose(),await R.chmodPromise(v,420),await c(N,v)},g=async()=>{if(a===null||!await R.existsPromise(a)){let v=await s(),U=v.getRealPath();return v.saveAndClose(),{source:"loader",path:U}}let N=await R.mktempPromise(),O=w.join(N,this.getVersionFilename(e));return await R.copyFilePromise(a,O,GS.default.constants.COPYFILE_FICLONE),{source:"mirror",path:O}},h=async()=>{if(!s)throw new Error(`Cache entry required but missing for ${$e(this.configuration,e)}`);if(this.immutable)throw new Ge(J.IMMUTABLE_CACHE,`Cache entry required but missing for ${$e(this.configuration,e)}`);let{path:N,source:O}=await g();await R.chmodPromise(N,420);let v=await c(N),U=this.getLocatorPath(e,v);if(!U)throw new Error("Assertion failed: Expected the cache path to be available");let re=null;if(O!=="mirror"&&a!==null){let F=await R.mktempPromise();re=w.join(F,this.getVersionFilename(e)),await R.copyFilePromise(N,re,GS.default.constants.COPYFILE_FICLONE)}return await this.writeFileWithLock(U,async()=>await this.writeFileWithLock(O==="mirror"?null:a,async()=>(await R.movePromise(N,U),re&&a&&await R.movePromise(re,a),[U,v])))},f=async()=>{let O=(async()=>{let v=this.getLocatorPath(e,r),U=v!==null?await l.existsPromise(v):!1,re=U?i:n;if(re&&re(),U){let F=null,A=v;return this.check?F=await u(A):F=await c(A),[A,F]}else return h()})();this.mutexes.set(e.locatorHash,O);try{return await O}finally{this.mutexes.delete(e.locatorHash)}};for(let N;N=this.mutexes.get(e.locatorHash);)await N;let[p,m]=await f();this.markedFiles.add(p);let I=null,y=await ri(),B=new Vu(()=>F8.prettifySyncErrors(()=>I=new Er(p,{baseFs:l,libzip:y,readOnly:!0}),N=>`Failed to open the cache entry for ${$e(this.configuration,e)}: ${N}`),w);return[new xa(p,{baseFs:B,pathUtils:w}),()=>{I!==null&&I.discardAndClose()},m]}async writeFileWithLock(e,r){return e===null?await r():await R.lockPromise(e,async()=>await r())}};function qS(t){let e=t.indexOf("/");return e!==-1?t.slice(0,e):null}function O0e(t){let e=t.indexOf("/");return e!==-1?t.slice(e+1):t}var K8=X(L8()),ZI=X(og());var U8=X(Zm()),VS=X(require("stream"));var M8={hooks:{reduceDependency:(t,e,r,i,{resolver:n,resolveOptions:s})=>{for(let{pattern:o,reference:a}of e.topLevelWorkspace.manifest.resolutions){if(o.from&&o.from.fullName!==gt(r)||o.from&&o.from.description&&o.from.description!==r.reference||o.descriptor.fullName!==gt(t)||o.descriptor.description&&o.descriptor.description!==t.range)continue;return n.bindDescriptor(Yt(t,a),e.topLevelWorkspace.anchoredLocator,s)}return t},validateProject:async(t,e)=>{for(let r of t.workspaces){let i=Hg(t.configuration,r);await t.configuration.triggerHook(n=>n.validateWorkspace,r,{reportWarning:(n,s)=>e.reportWarning(n,`${i}: ${s}`),reportError:(n,s)=>e.reportError(n,`${i}: ${s}`)})}},validateWorkspace:async(t,e)=>{let{manifest:r}=t;r.resolutions.length&&t.cwd!==t.project.cwd&&r.errors.push(new Error("Resolutions field will be ignored"));for(let i of r.errors)e.reportWarning(J.INVALID_MANIFEST,i.message)}}};var WS=class{constructor(e){this.fetchers=e}supports(e,r){return!!this.tryFetcher(e,r)}getLocalPath(e,r){return this.getFetcher(e,r).getLocalPath(e,r)}async fetch(e,r){return await this.getFetcher(e,r).fetch(e,r)}tryFetcher(e,r){let i=this.fetchers.find(n=>n.supports(e,r));return i||null}getFetcher(e,r){let i=this.fetchers.find(n=>n.supports(e,r));if(!i)throw new Ge(J.FETCHER_NOT_FOUND,`${$e(r.project.configuration,e)} isn't supported by any available fetcher`);return i}};var Qc=class{constructor(e){this.resolvers=e.filter(r=>r)}supportsDescriptor(e,r){return!!this.tryResolverByDescriptor(e,r)}supportsLocator(e,r){return!!this.tryResolverByLocator(e,r)}shouldPersistResolution(e,r){return this.getResolverByLocator(e,r).shouldPersistResolution(e,r)}bindDescriptor(e,r,i){return this.getResolverByDescriptor(e,i).bindDescriptor(e,r,i)}getResolutionDependencies(e,r){return this.getResolverByDescriptor(e,r).getResolutionDependencies(e,r)}async getCandidates(e,r,i){return await this.getResolverByDescriptor(e,i).getCandidates(e,r,i)}async getSatisfying(e,r,i){return this.getResolverByDescriptor(e,i).getSatisfying(e,r,i)}async resolve(e,r){return await this.getResolverByLocator(e,r).resolve(e,r)}tryResolverByDescriptor(e,r){let i=this.resolvers.find(n=>n.supportsDescriptor(e,r));return i||null}getResolverByDescriptor(e,r){let i=this.resolvers.find(n=>n.supportsDescriptor(e,r));if(!i)throw new Error(`${Rt(r.project.configuration,e)} isn't supported by any available resolver`);return i}tryResolverByLocator(e,r){let i=this.resolvers.find(n=>n.supportsLocator(e,r));return i||null}getResolverByLocator(e,r){let i=this.resolvers.find(n=>n.supportsLocator(e,r));if(!i)throw new Error(`${$e(r.project.configuration,e)} isn't supported by any available resolver`);return i}};var N8=X(hr());var bc=/^(?!v)[a-z0-9._-]+$/i,zS=class{supportsDescriptor(e,r){return!!(kn(e.range)||bc.test(e.range))}supportsLocator(e,r){return!!(N8.default.valid(e.reference)||bc.test(e.reference))}shouldPersistResolution(e,r){return r.resolver.shouldPersistResolution(this.forwardLocator(e,r),r)}bindDescriptor(e,r,i){return i.resolver.bindDescriptor(this.forwardDescriptor(e,i),r,i)}getResolutionDependencies(e,r){return r.resolver.getResolutionDependencies(this.forwardDescriptor(e,r),r)}async getCandidates(e,r,i){return await i.resolver.getCandidates(this.forwardDescriptor(e,i),r,i)}async getSatisfying(e,r,i){return await i.resolver.getSatisfying(this.forwardDescriptor(e,i),r,i)}async resolve(e,r){let i=await r.resolver.resolve(this.forwardLocator(e,r),r);return Lg(i,e)}forwardDescriptor(e,r){return Yt(e,`${r.project.configuration.get("defaultProtocol")}${e.range}`)}forwardLocator(e,r){return $r(e,`${r.project.configuration.get("defaultProtocol")}${e.reference}`)}};var Yh=class{supports(e){return!!e.reference.startsWith("virtual:")}getLocalPath(e,r){let i=e.reference.indexOf("#");if(i===-1)throw new Error("Invalid virtual package reference");let n=e.reference.slice(i+1),s=$r(e,n);return r.fetcher.getLocalPath(s,r)}async fetch(e,r){let i=e.reference.indexOf("#");if(i===-1)throw new Error("Invalid virtual package reference");let n=e.reference.slice(i+1),s=$r(e,n),o=await r.fetcher.fetch(s,r);return await this.ensureVirtualLink(e,o,r)}getLocatorFilename(e){return Rl(e)}async ensureVirtualLink(e,r,i){let n=r.packageFs.getRealPath(),s=i.project.configuration.get("virtualFolder"),o=this.getLocatorFilename(e),a=_t.makeVirtualPath(s,o,n),l=new xa(a,{baseFs:r.packageFs,pathUtils:w});return{...r,packageFs:l}}};var Dc=class{static isVirtualDescriptor(e){return!!e.range.startsWith(Dc.protocol)}static isVirtualLocator(e){return!!e.reference.startsWith(Dc.protocol)}supportsDescriptor(e,r){return Dc.isVirtualDescriptor(e)}supportsLocator(e,r){return Dc.isVirtualLocator(e)}shouldPersistResolution(e,r){return!1}bindDescriptor(e,r,i){throw new Error('Assertion failed: calling "bindDescriptor" on a virtual descriptor is unsupported')}getResolutionDependencies(e,r){throw new Error('Assertion failed: calling "getResolutionDependencies" on a virtual descriptor is unsupported')}async getCandidates(e,r,i){throw new Error('Assertion failed: calling "getCandidates" on a virtual descriptor is unsupported')}async getSatisfying(e,r,i){throw new Error('Assertion failed: calling "getSatisfying" on a virtual descriptor is unsupported')}async resolve(e,r){throw new Error('Assertion failed: calling "resolve" on a virtual locator is unsupported')}},VI=Dc;VI.protocol="virtual:";var jh=class{supportsDescriptor(e,r){return!!(e.range.startsWith(jh.protocol)||r.project.tryWorkspaceByDescriptor(e)!==null)}supportsLocator(e,r){return!!e.reference.startsWith(jh.protocol)}shouldPersistResolution(e,r){return!1}bindDescriptor(e,r,i){return e}getResolutionDependencies(e,r){return[]}async getCandidates(e,r,i){return[i.project.getWorkspaceByDescriptor(e).anchoredLocator]}async getSatisfying(e,r,i){return null}async resolve(e,r){let i=r.project.getWorkspaceByCwd(e.reference.slice(jh.protocol.length));return{...e,version:i.manifest.version||"0.0.0",languageName:"unknown",linkType:nt.SOFT,dependencies:new Map([...i.manifest.dependencies,...i.manifest.devDependencies]),peerDependencies:new Map([...i.manifest.peerDependencies]),dependenciesMeta:i.manifest.dependenciesMeta,peerDependenciesMeta:i.manifest.peerDependenciesMeta,bin:i.manifest.bin}}},ai=jh;ai.protocol="workspace:";var XS=class{supports(e){return!!e.reference.startsWith(ai.protocol)}getLocalPath(e,r){return this.getWorkspace(e,r).cwd}async fetch(e,r){let i=this.getWorkspace(e,r).cwd;return{packageFs:new Ct(i),prefixPath:pe.dot,localPath:i}}getWorkspace(e,r){return r.project.getWorkspaceByCwd(e.reference.slice(ai.protocol.length))}};var zt=X(Zi());var O8=X(require("module"));function T8(){return new Set(O8.default.builtinModules||Object.keys(process.binding("natives")))}var K0e=new Set(["binFolder","version","flags","profile","gpg","ignoreNode","wrapOutput"]),_I="yarn_",ZS=".yarnrc.yml",_S="yarn.lock",U0e="********",Ae;(function(t){t.ANY="ANY",t.BOOLEAN="BOOLEAN",t.ABSOLUTE_PATH="ABSOLUTE_PATH",t.LOCATOR="LOCATOR",t.LOCATOR_LOOSE="LOCATOR_LOOSE",t.NUMBER="NUMBER",t.STRING="STRING",t.SECRET="SECRET",t.SHAPE="SHAPE",t.MAP="MAP"})(Ae||(Ae={}));var kA=be,$S={lastUpdateCheck:{description:"Last timestamp we checked whether new Yarn versions were available",type:Ae.STRING,default:null},yarnPath:{description:"Path to the local executable that must be used over the global one",type:Ae.ABSOLUTE_PATH,default:null},ignorePath:{description:"If true, the local executable will be ignored when using the global one",type:Ae.BOOLEAN,default:!1},ignoreCwd:{description:"If true, the `--cwd` flag will be ignored",type:Ae.BOOLEAN,default:!1},cacheKeyOverride:{description:"A global cache key override; used only for test purposes",type:Ae.STRING,default:null},globalFolder:{description:"Folder where are stored the system-wide settings",type:Ae.ABSOLUTE_PATH,default:XB()},cacheFolder:{description:"Folder where the cache files must be written",type:Ae.ABSOLUTE_PATH,default:"./.yarn/cache"},compressionLevel:{description:"Zip files compression level, from 0 to 9 or mixed (a variant of 9, which stores some files uncompressed, when compression doesn't yield good results)",type:Ae.NUMBER,values:["mixed",0,1,2,3,4,5,6,7,8,9],default:Pa},virtualFolder:{description:"Folder where the virtual packages (cf doc) will be mapped on the disk (must be named __virtual__)",type:Ae.ABSOLUTE_PATH,default:"./.yarn/__virtual__"},lockfileFilename:{description:"Name of the files where the Yarn dependency tree entries must be stored",type:Ae.STRING,default:_S},installStatePath:{description:"Path of the file where the install state will be persisted",type:Ae.ABSOLUTE_PATH,default:"./.yarn/install-state.gz"},immutablePatterns:{description:"Array of glob patterns; files matching them won't be allowed to change during immutable installs",type:Ae.STRING,default:[],isArray:!0},rcFilename:{description:"Name of the files where the configuration can be found",type:Ae.STRING,default:$I()},enableGlobalCache:{description:"If true, the system-wide cache folder will be used regardless of `cache-folder`",type:Ae.BOOLEAN,default:!1},enableColors:{description:"If true, the CLI is allowed to use colors in its output",type:Ae.BOOLEAN,default:ZC,defaultText:""},enableHyperlinks:{description:"If true, the CLI is allowed to use hyperlinks in its output",type:Ae.BOOLEAN,default:o0,defaultText:""},enableInlineBuilds:{description:"If true, the CLI will print the build output on the command line",type:Ae.BOOLEAN,default:ZI.isCI,defaultText:""},enableMessageNames:{description:"If true, the CLI will prefix most messages with codes suitable for search engines",type:Ae.BOOLEAN,default:!0},enableProgressBars:{description:"If true, the CLI is allowed to show a progress bar for long-running events",type:Ae.BOOLEAN,default:!ZI.isCI&&process.stdout.isTTY&&process.stdout.columns>22,defaultText:""},enableTimers:{description:"If true, the CLI is allowed to print the time spent executing commands",type:Ae.BOOLEAN,default:!0},preferAggregateCacheInfo:{description:"If true, the CLI will only print a one-line report of any cache changes",type:Ae.BOOLEAN,default:ZI.isCI},preferInteractive:{description:"If true, the CLI will automatically use the interactive mode when called from a TTY",type:Ae.BOOLEAN,default:!1},preferTruncatedLines:{description:"If true, the CLI will truncate lines that would go beyond the size of the terminal",type:Ae.BOOLEAN,default:!1},progressBarStyle:{description:"Which style of progress bar should be used (only when progress bars are enabled)",type:Ae.STRING,default:void 0,defaultText:""},defaultLanguageName:{description:"Default language mode that should be used when a package doesn't offer any insight",type:Ae.STRING,default:"node"},defaultProtocol:{description:"Default resolution protocol used when resolving pure semver and tag ranges",type:Ae.STRING,default:"npm:"},enableTransparentWorkspaces:{description:"If false, Yarn won't automatically resolve workspace dependencies unless they use the `workspace:` protocol",type:Ae.BOOLEAN,default:!0},enableMirror:{description:"If true, the downloaded packages will be retrieved and stored in both the local and global folders",type:Ae.BOOLEAN,default:!0},enableNetwork:{description:"If false, the package manager will refuse to use the network if required to",type:Ae.BOOLEAN,default:!0},httpProxy:{description:"URL of the http proxy that must be used for outgoing http requests",type:Ae.STRING,default:null},httpsProxy:{description:"URL of the http proxy that must be used for outgoing https requests",type:Ae.STRING,default:null},unsafeHttpWhitelist:{description:"List of the hostnames for which http queries are allowed (glob patterns are supported)",type:Ae.STRING,default:[],isArray:!0},httpTimeout:{description:"Timeout of each http request in milliseconds",type:Ae.NUMBER,default:6e4},httpRetry:{description:"Retry times on http failure",type:Ae.NUMBER,default:3},networkConcurrency:{description:"Maximal number of concurrent requests",type:Ae.NUMBER,default:Infinity},networkSettings:{description:"Network settings per hostname (glob patterns are supported)",type:Ae.MAP,valueDefinition:{description:"",type:Ae.SHAPE,properties:{caFilePath:{description:"Path to file containing one or multiple Certificate Authority signing certificates",type:Ae.ABSOLUTE_PATH,default:null},enableNetwork:{description:"If false, the package manager will refuse to use the network if required to",type:Ae.BOOLEAN,default:null},httpProxy:{description:"URL of the http proxy that must be used for outgoing http requests",type:Ae.STRING,default:null},httpsProxy:{description:"URL of the http proxy that must be used for outgoing https requests",type:Ae.STRING,default:null}}}},caFilePath:{description:"A path to a file containing one or multiple Certificate Authority signing certificates",type:Ae.ABSOLUTE_PATH,default:null},enableStrictSsl:{description:"If false, SSL certificate errors will be ignored",type:Ae.BOOLEAN,default:!0},logFilters:{description:"Overrides for log levels",type:Ae.SHAPE,isArray:!0,concatenateValues:!0,properties:{code:{description:"Code of the messages covered by this override",type:Ae.STRING,default:void 0},text:{description:"Code of the texts covered by this override",type:Ae.STRING,default:void 0},level:{description:"Log level override, set to null to remove override",type:Ae.STRING,values:Object.values(Dn),isNullable:!0,default:void 0}}},enableTelemetry:{description:"If true, telemetry will be periodically sent, following the rules in https://yarnpkg.com/advanced/telemetry",type:Ae.BOOLEAN,default:!0},telemetryInterval:{description:"Minimal amount of time between two telemetry uploads, in days",type:Ae.NUMBER,default:7},telemetryUserId:{description:"If you desire to tell us which project you are, you can set this field. Completely optional and opt-in.",type:Ae.STRING,default:null},enableScripts:{description:"If true, packages are allowed to have install scripts by default",type:Ae.BOOLEAN,default:!0},enableImmutableCache:{description:"If true, the cache is reputed immutable and actions that would modify it will throw",type:Ae.BOOLEAN,default:!1},checksumBehavior:{description:"Enumeration defining what to do when a checksum doesn't match expectations",type:Ae.STRING,default:"throw"},packageExtensions:{description:"Map of package corrections to apply on the dependency tree",type:Ae.MAP,valueDefinition:{description:"The extension that will be applied to any package whose version matches the specified range",type:Ae.SHAPE,properties:{dependencies:{description:"The set of dependencies that must be made available to the current package in order for it to work properly",type:Ae.MAP,valueDefinition:{description:"A range",type:Ae.STRING}},peerDependencies:{description:"Inherited dependencies - the consumer of the package will be tasked to provide them",type:Ae.MAP,valueDefinition:{description:"A semver range",type:Ae.STRING}},peerDependenciesMeta:{description:"Extra information related to the dependencies listed in the peerDependencies field",type:Ae.MAP,valueDefinition:{description:"The peerDependency meta",type:Ae.SHAPE,properties:{optional:{description:"If true, the selected peer dependency will be marked as optional by the package manager and the consumer omitting it won't be reported as an error",type:Ae.BOOLEAN,default:!1}}}}}}}};function tP(t,e,r,i,n){if(i.isArray||i.type===Ae.ANY&&Array.isArray(r))return Array.isArray(r)?r.map((s,o)=>eP(t,`${e}[${o}]`,s,i,n)):String(r).split(/,/).map(s=>eP(t,e,s,i,n));if(Array.isArray(r))throw new Error(`Non-array configuration settings "${e}" cannot be an array`);return eP(t,e,r,i,n)}function eP(t,e,r,i,n){var a;switch(i.type){case Ae.ANY:return r;case Ae.SHAPE:return H0e(t,e,r,i,n);case Ae.MAP:return Y0e(t,e,r,i,n)}if(r===null&&!i.isNullable&&i.default!==null)throw new Error(`Non-nullable configuration settings "${e}" cannot be set to null`);if((a=i.values)==null?void 0:a.includes(r))return r;let o=(()=>{if(i.type===Ae.BOOLEAN&&typeof r!="string")return zt.parseBoolean(r);if(typeof r!="string")throw new Error(`Expected value (${r}) to be a string`);let l=zt.replaceEnvVariables(r,{env:process.env});switch(i.type){case Ae.ABSOLUTE_PATH:return w.resolve(n,npath.toPortablePath(l));case Ae.LOCATOR_LOOSE:return Ga(l,!1);case Ae.NUMBER:return parseInt(l);case Ae.LOCATOR:return Ga(l);case Ae.BOOLEAN:return zt.parseBoolean(l);default:return l}})();if(i.values&&!i.values.includes(o))throw new Error(`Invalid value, expected one of ${i.values.join(", ")}`);return o}function H0e(t,e,r,i,n){if(typeof r!="object"||Array.isArray(r))throw new UsageError(`Object configuration settings "${e}" must be an object`);let s=rP(t,i,{ignoreArrays:!0});if(r===null)return s;for(let[o,a]of Object.entries(r)){let l=`${e}.${o}`;if(!i.properties[o])throw new UsageError(`Unrecognized configuration settings found: ${e}.${o} - run "yarn config -v" to see the list of settings supported in Yarn`);s.set(o,tP(t,l,a,i.properties[o],n))}return s}function Y0e(t,e,r,i,n){let s=new Map;if(typeof r!="object"||Array.isArray(r))throw new UsageError(`Map configuration settings "${e}" must be an object`);if(r===null)return s;for(let[o,a]of Object.entries(r)){let l=i.normalizeKeys?i.normalizeKeys(o):o,c=`${e}['${l}']`,u=i.valueDefinition;s.set(l,tP(t,c,a,u,n))}return s}function rP(t,e,{ignoreArrays:r=!1}={}){switch(e.type){case Ae.SHAPE:{if(e.isArray&&!r)return[];let i=new Map;for(let[n,s]of Object.entries(e.properties))i.set(n,rP(t,s));return i}break;case Ae.MAP:return e.isArray&&!r?[]:new Map;case Ae.ABSOLUTE_PATH:return e.default===null?null:t.projectCwd===null?w.isAbsolute(e.default)?w.normalize(e.default):e.isNullable?null:void 0:Array.isArray(e.default)?e.default.map(i=>w.resolve(t.projectCwd,i)):w.resolve(t.projectCwd,e.default);default:return e.default}}function eE(t,e,r){if(e.type===Ae.SECRET&&typeof t=="string"&&r.hideSecrets)return U0e;if(e.type===Ae.ABSOLUTE_PATH&&typeof t=="string"&&r.getNativePaths)return npath.fromPortablePath(t);if(e.isArray&&Array.isArray(t)){let i=[];for(let n of t)i.push(eE(n,e,r));return i}if(e.type===Ae.MAP&&t instanceof Map){let i=new Map;for(let[n,s]of t.entries())i.set(n,eE(s,e.valueDefinition,r));return i}if(e.type===Ae.SHAPE&&t instanceof Map){let i=new Map;for(let[n,s]of t.entries()){let o=e.properties[n];i.set(n,eE(s,o,r))}return i}return t}function j0e(){let t={};for(let[e,r]of Object.entries(process.env))e=e.toLowerCase(),!!e.startsWith(_I)&&(e=K8.default(e.slice(_I.length)),t[e]=r);return t}function $I(){let t=`${_I}rc_filename`;for(let[e,r]of Object.entries(process.env))if(e.toLowerCase()===t&&typeof r=="string")return r;return ZS}var _o;(function(t){t[t.LOCKFILE=0]="LOCKFILE",t[t.MANIFEST=1]="MANIFEST",t[t.NONE=2]="NONE"})(_o||(_o={}));var Ws=class{constructor(e){this.projectCwd=null;this.plugins=new Map;this.settings=new Map;this.values=new Map;this.sources=new Map;this.invalid=new Map;this.packageExtensions=new Map;this.limits=new Map;this.startingCwd=e}static create(e,r,i){let n=new Ws(e);typeof r!="undefined"&&!(r instanceof Map)&&(n.projectCwd=r),n.importSettings($S);let s=typeof i!="undefined"?i:r instanceof Map?r:new Map;for(let[o,a]of s)n.activatePlugin(o,a);return n}static async find(e,r,{lookup:i=0,strict:n=!0,usePath:s=!1,useRc:o=!0}={}){let a=j0e();delete a.rcFilename;let l=await Ws.findRcFiles(e),c=await Ws.findHomeRcFile();if(c){let y=l.find(B=>B.path===c.path);y?y.strict=!1:l.push({...c,strict:!1})}let u=({ignoreCwd:y,yarnPath:B,ignorePath:P,lockfileFilename:k})=>({ignoreCwd:y,yarnPath:B,ignorePath:P,lockfileFilename:k}),g=({ignoreCwd:y,yarnPath:B,ignorePath:P,lockfileFilename:k,...N})=>N,h=new Ws(e);h.importSettings(u($S)),h.useWithSource("",u(a),e,{strict:!1});for(let{path:y,cwd:B,data:P}of l)h.useWithSource(y,u(P),B,{strict:!1});if(s){let y=h.get("yarnPath"),B=h.get("ignorePath");if(y!==null&&!B)return h}let f=h.get("lockfileFilename"),p;switch(i){case 0:p=await Ws.findProjectCwd(e,f);break;case 1:p=await Ws.findProjectCwd(e,null);break;case 2:R.existsSync(w.join(e,"package.json"))?p=w.resolve(e):p=null;break}h.startingCwd=e,h.projectCwd=p,h.importSettings(g($S));let m=new Map([["@@core",M8]]),I=y=>y.__esModule?y.default:y;if(r!==null){for(let N of r.plugins.keys())m.set(N,I(r.modules.get(N)));let y=new Map;for(let N of T8())y.set(N,()=>zt.dynamicRequire(N));for(let[N,O]of r.modules)y.set(N,()=>O);let B=new Set,P=N=>N.default||N,k=(N,O)=>{let{factory:v,name:U}=zt.dynamicRequire(npath.fromPortablePath(N));if(B.has(U))return;let re=new Map(y),F=q=>{if(re.has(q))return re.get(q)();throw new UsageError(`This plugin cannot access the package referenced via ${q} which is neither a builtin, nor an exposed entry`)},A=zt.prettifySyncErrors(()=>P(v(F)),q=>`${q} (when initializing ${U}, defined in ${O})`);y.set(U,()=>A),B.add(U),m.set(U,A)};if(a.plugins)for(let N of a.plugins.split(";")){let O=w.resolve(e,npath.toPortablePath(N));k(O,"")}for(let{path:N,cwd:O,data:v}of l)if(!!o&&!!Array.isArray(v.plugins))for(let U of v.plugins){let re=typeof U!="string"?U.path:U,F=w.resolve(O,npath.toPortablePath(re));k(F,N)}}for(let[y,B]of m)h.activatePlugin(y,B);h.useWithSource("",g(a),e,{strict:n});for(let{path:y,cwd:B,data:P,strict:k}of l)h.useWithSource(y,g(P),B,{strict:k!=null?k:n});return h.get("enableGlobalCache")&&(h.values.set("cacheFolder",`${h.get("globalFolder")}/cache`),h.sources.set("cacheFolder","")),await h.refreshPackageExtensions(),h}static async findRcFiles(e){let r=$I(),i=[],n=e,s=null;for(;n!==s;){s=n;let o=w.join(s,r);if(R.existsSync(o)){let a=await R.readFilePromise(o,"utf8"),l;try{l=kr(a)}catch(c){let u="";throw a.match(/^\s+(?!-)[^:]+\s+\S+/m)&&(u=" (in particular, make sure you list the colons after each key name)"),new UsageError(`Parse error when loading ${o}; please check it's proper Yaml${u}`)}i.push({path:o,cwd:s,data:l})}n=w.dirname(s)}return i}static async findHomeRcFile(){let e=$I(),r=rg(),i=w.join(r,e);if(R.existsSync(i)){let n=await R.readFilePromise(i,"utf8"),s=kr(n);return{path:i,cwd:r,data:s}}return null}static async findProjectCwd(e,r){let i=null,n=e,s=null;for(;n!==s;){if(s=n,R.existsSync(w.join(s,"package.json"))&&(i=s),r!==null){if(R.existsSync(w.join(s,r))){i=s;break}}else if(i!==null)break;n=w.dirname(s)}return i}static async updateConfiguration(e,r){let i=$I(),n=w.join(e,i),s=R.existsSync(n)?kr(await R.readFilePromise(n,"utf8")):{},o=!1,a;if(typeof r=="function"){try{a=r(s)}catch{a=r({})}if(a===s)return}else{a=s;for(let l of Object.keys(r)){let c=s[l],u=r[l],g;if(typeof u=="function")try{g=u(c)}catch{g=u(void 0)}else g=u;c!==g&&(a[l]=g,o=!0)}if(!o)return}await R.changeFilePromise(n,Os(a),{automaticNewlines:!0})}static async updateHomeConfiguration(e){let r=rg();return await Ws.updateConfiguration(r,e)}activatePlugin(e,r){this.plugins.set(e,r),typeof r.configuration!="undefined"&&this.importSettings(r.configuration)}importSettings(e){for(let[r,i]of Object.entries(e))if(i!=null){if(this.settings.has(r))throw new Error(`Cannot redefine settings "${r}"`);this.settings.set(r,i),this.values.set(r,rP(this,i))}}useWithSource(e,r,i,n){try{this.use(e,r,i,n)}catch(s){throw s.message+=` (in ${Ue(this,e,be.PATH)})`,s}}use(e,r,i,{strict:n=!0,overwrite:s=!1}={}){for(let o of Object.keys(r)){if(typeof r[o]=="undefined"||o==="plugins"||e===""&&K0e.has(o))continue;if(o==="rcFilename")throw new UsageError(`The rcFilename settings can only be set via ${`${_I}RC_FILENAME`.toUpperCase()}, not via a rc file`);let l=this.settings.get(o);if(!l){if(n)throw new UsageError(`Unrecognized or legacy configuration settings found: ${o} - run "yarn config -v" to see the list of settings supported in Yarn`);this.invalid.set(o,e);continue}if(this.sources.has(o)&&!(s||l.type===Ae.MAP||l.isArray&&l.concatenateValues))continue;let c;try{c=tP(this,o,r[o],l,i)}catch(u){throw u.message+=` in ${Ue(this,e,be.PATH)}`,u}if(l.type===Ae.MAP){let u=this.values.get(o);this.values.set(o,new Map(s?[...u,...c]:[...c,...u])),this.sources.set(o,`${this.sources.get(o)}, ${e}`)}else if(l.isArray&&l.concatenateValues){let u=this.values.get(o);this.values.set(o,s?[...u,...c]:[...c,...u]),this.sources.set(o,`${this.sources.get(o)}, ${e}`)}else this.values.set(o,c),this.sources.set(o,e)}}get(e){if(!this.values.has(e))throw new Error(`Invalid configuration key "${e}"`);return this.values.get(e)}getSpecial(e,{hideSecrets:r=!1,getNativePaths:i=!1}){let n=this.get(e),s=this.settings.get(e);if(typeof s=="undefined")throw new UsageError(`Couldn't find a configuration settings named "${e}"`);return eE(n,s,{hideSecrets:r,getNativePaths:i})}getSubprocessStreams(e,{header:r,prefix:i,report:n}){let s,o,a=R.createWriteStream(e);if(this.get("enableInlineBuilds")){let l=n.createStreamReporter(`${i} ${Ue(this,"STDOUT","green")}`),c=n.createStreamReporter(`${i} ${Ue(this,"STDERR","red")}`);s=new VS.PassThrough,s.pipe(l),s.pipe(a),o=new VS.PassThrough,o.pipe(c),o.pipe(a)}else s=a,o=a,typeof r!="undefined"&&s.write(`${r} -`);return{stdout:s,stderr:o}}makeResolver(){let e=[];for(let r of this.plugins.values())for(let i of r.resolvers||[])e.push(new i);return new Qc([new VI,new ai,new zS,...e])}makeFetcher(){let e=[];for(let r of this.plugins.values())for(let i of r.fetchers||[])e.push(new i);return new WS([new Yh,new XS,...e])}getLinkers(){let e=[];for(let r of this.plugins.values())for(let i of r.linkers||[])e.push(new i);return e}async refreshPackageExtensions(){this.packageExtensions=new Map;let e=this.packageExtensions,r=(i,n,{userProvided:s=!1}={})=>{if(!kn(i.range))throw new Error("Only semver ranges are allowed as keys for the lockfileExtensions setting");let o=new je;o.load(n,{yamlCompatibilityMode:!0});let a=zt.getArrayWithDefault(e,i.identHash),l=[];a.push([i.range,l]);let c={status:Or.Inactive,userProvided:s,parentDescriptor:i};for(let u of o.dependencies.values())l.push({...c,type:yr.Dependency,descriptor:u});for(let u of o.peerDependencies.values())l.push({...c,type:yr.PeerDependency,descriptor:u});for(let[u,g]of o.peerDependenciesMeta)for(let[h,f]of Object.entries(g))l.push({...c,type:yr.PeerDependencyMeta,selector:u,key:h,value:f})};await this.triggerHook(i=>i.registerPackageExtensions,this,r);for(let[i,n]of this.get("packageExtensions"))r(Po(i,!0),zt.convertMapsToIndexableObjects(n),{userProvided:!0})}normalizePackage(e){let r=Mg(e);if(this.packageExtensions==null)throw new Error("refreshPackageExtensions has to be called before normalizing packages");let i=this.packageExtensions.get(e.identHash);if(typeof i!="undefined"){let s=e.version;if(s!==null){for(let[o,a]of i)if(!!yh(s,o))for(let l of a)switch(l.status===Or.Inactive&&(l.status=Or.Redundant),l.type){case yr.Dependency:typeof r.dependencies.get(l.descriptor.identHash)=="undefined"&&(l.status=Or.Active,r.dependencies.set(l.descriptor.identHash,l.descriptor));break;case yr.PeerDependency:typeof r.peerDependencies.get(l.descriptor.identHash)=="undefined"&&(l.status=Or.Active,r.peerDependencies.set(l.descriptor.identHash,l.descriptor));break;case yr.PeerDependencyMeta:{let c=r.peerDependenciesMeta.get(l.selector);(typeof c=="undefined"||!Object.prototype.hasOwnProperty.call(c,l.key)||c[l.key]!==l.value)&&(l.status=Or.Active,zt.getFactoryWithDefault(r.peerDependenciesMeta,l.selector,()=>({}))[l.key]=l.value)}break;default:zt.assertNever(l);break}}}let n=s=>s.scope?`${s.scope}__${s.name}`:`${s.name}`;for(let s of r.peerDependencies.values()){if(s.scope==="types")continue;let o=n(s),a=Do("types",o),l=gt(a);r.peerDependencies.has(a.identHash)||r.peerDependenciesMeta.has(l)||r.peerDependenciesMeta.set(l,{optional:!0})}for(let s of r.peerDependenciesMeta.keys()){let o=di(s);r.peerDependencies.has(o.identHash)||r.peerDependencies.set(o.identHash,Yt(o,"*"))}return r.dependencies=new Map(zt.sortMap(r.dependencies,([,s])=>Ci(s))),r.peerDependencies=new Map(zt.sortMap(r.peerDependencies,([,s])=>Ci(s))),r}getLimit(e){return zt.getFactoryWithDefault(this.limits,e,()=>U8.default(this.get(e)))}async triggerHook(e,...r){for(let i of this.plugins.values()){let n=i.hooks;if(!n)continue;let s=e(n);!s||await s(...r)}}async triggerMultipleHooks(e,r){for(let i of r)await this.triggerHook(e,...i)}async reduceHook(e,r,...i){let n=r;for(let s of this.plugins.values()){let o=s.hooks;if(!o)continue;let a=e(o);!a||(n=await a(n,...i))}return n}async firstHook(e,...r){for(let i of this.plugins.values()){let n=i.hooks;if(!n)continue;let s=e(n);if(!s)continue;let o=await s(...r);if(typeof o!="undefined")return o}return null}},oe=Ws;oe.telemetry=null;var Ki;(function(t){t[t.SCRIPT=0]="SCRIPT",t[t.SHELLCODE=1]="SHELLCODE"})(Ki||(Ki={}));var zs=class extends ti{constructor({configuration:e,stdout:r,suggestInstall:i=!0}){super();this.errorCount=0;jg(this,{configuration:e}),this.configuration=e,this.stdout=r,this.suggestInstall=i}static async start(e,r){let i=new this(e);try{await r(i)}catch(n){i.reportExceptionOnce(n)}finally{await i.finalize()}return i}hasErrors(){return this.errorCount>0}exitCode(){return this.hasErrors()?1:0}reportCacheHit(e){}reportCacheMiss(e){}startTimerSync(e,r,i){return(typeof r=="function"?r:i)()}async startTimerPromise(e,r,i){return await(typeof r=="function"?r:i)()}async startCacheReport(e){return await e()}reportSeparator(){}reportInfo(e,r){}reportWarning(e,r){}reportError(e,r){this.errorCount+=1,this.stdout.write(`${Ue(this.configuration,"\u27A4","redBright")} ${this.formatNameWithHyperlink(e)}: ${r} -`)}reportProgress(e){return{...Promise.resolve().then(async()=>{for await(let{}of e);}),stop:()=>{}}}reportJson(e){}async finalize(){this.errorCount>0&&(this.stdout.write(` -`),this.stdout.write(`${Ue(this.configuration,"\u27A4","redBright")} Errors happened when preparing the environment required to run this command. -`),this.suggestInstall&&this.stdout.write(`${Ue(this.configuration,"\u27A4","redBright")} This might be caused by packages being missing from the lockfile, in which case running "yarn install" might help. -`))}formatNameWithHyperlink(e){return yD(e,{configuration:this.configuration,json:!1})}};var IE=X(require("crypto")),F5=X(wz()),EE=X(k5()),R5=X(Zm()),L5=X(hr()),xP=X(require("util")),kP=X(require("v8")),vP=X(require("zlib"));var Dxe=[[/^(git(?:\+(?:https|ssh))?:\/\/.*(?:\.git)?)#(.*)$/,(t,e,r,i)=>`${r}#commit=${i}`],[/^https:\/\/((?:[^/]+?)@)?codeload\.github\.com\/([^/]+\/[^/]+)\/tar\.gz\/([0-9a-f]+)$/,(t,e,r="",i,n)=>`https://${r}github.com/${i}.git#commit=${n}`],[/^https:\/\/((?:[^/]+?)@)?github\.com\/([^/]+\/[^/]+?)(?:\.git)?#([0-9a-f]+)$/,(t,e,r="",i,n)=>`https://${r}github.com/${i}.git#commit=${n}`],[/^https?:\/\/[^/]+\/(?:[^/]+\/)*(?:@.+(?:\/|(?:%2f)))?([^/]+)\/(?:-|download)\/\1-[^/]+\.tgz(?:#|$)/,t=>`npm:${t}`],[/^https:\/\/npm\.pkg\.github\.com\/download\/(?:@[^/]+)\/(?:[^/]+)\/(?:[^/]+)\/(?:[0-9a-f]+)$/,t=>`npm:${t}`],[/^https:\/\/npm\.fontawesome\.com\/(?:@[^/]+)\/([^/]+)\/-\/([^/]+)\/\1-\2.tgz(?:#|$)/,t=>`npm:${t}`],[/^https?:\/\/(?:[^\\.]+)\.jfrog\.io\/.*\/(@[^/]+)\/([^/]+)\/-\/\1\/\2-(?:[.\d\w-]+)\.tgz(?:#|$)/,(t,e)=>XC({protocol:"npm:",source:null,selector:t,params:{__archiveUrl:e}})],[/^[^/]+\.tgz#[0-9a-f]+$/,t=>`npm:${t}`]],SP=class{constructor(){this.resolutions=null}async setup(e,{report:r}){let i=w.join(e.cwd,e.configuration.get("lockfileFilename"));if(!R.existsSync(i))return;let n=await R.readFilePromise(i,"utf8"),s=kr(n);if(Object.prototype.hasOwnProperty.call(s,"__metadata"))return;let o=this.resolutions=new Map;for(let a of Object.keys(s)){let l=Kg(a);if(!l){r.reportWarning(J.YARN_IMPORT_FAILED,`Failed to parse the string "${a}" into a proper descriptor`);continue}kn(l.range)&&(l=Yt(l,`npm:${l.range}`));let{version:c,resolved:u}=s[a];if(!u)continue;let g;for(let[f,p]of Dxe){let m=u.match(f);if(m){g=p(c,...m);break}}if(!g){r.reportWarning(J.YARN_IMPORT_FAILED,`${Rt(e.configuration,l)}: Only some patterns can be imported from legacy lockfiles (not "${u}")`);continue}let h=l;try{let f=Fl(l.range),p=Kg(f.selector,!0);p&&(h=p)}catch{}o.set(l.descriptorHash,$r(h,g))}}supportsDescriptor(e,r){return this.resolutions?this.resolutions.has(e.descriptorHash):!1}supportsLocator(e,r){return!1}shouldPersistResolution(e,r){throw new Error("Assertion failed: This resolver doesn't support resolving locators to packages")}bindDescriptor(e,r,i){return e}getResolutionDependencies(e,r){return[]}async getCandidates(e,r,i){if(!this.resolutions)throw new Error("Assertion failed: The resolution store should have been setup");let n=this.resolutions.get(e.descriptorHash);if(!n)throw new Error("Assertion failed: The resolution should have been registered");return[n]}async getSatisfying(e,r,i){return null}async resolve(e,r){throw new Error("Assertion failed: This resolver doesn't support resolving locators to packages")}};var mE=class{supportsDescriptor(e,r){return!!(r.project.storedResolutions.get(e.descriptorHash)||r.project.originalPackages.has(WC(e).locatorHash))}supportsLocator(e,r){return!!r.project.originalPackages.has(e.locatorHash)}shouldPersistResolution(e,r){throw new Error("The shouldPersistResolution method shouldn't be called on the lockfile resolver, which would always answer yes")}bindDescriptor(e,r,i){return e}getResolutionDependencies(e,r){return[]}async getCandidates(e,r,i){let n=i.project.originalPackages.get(WC(e).locatorHash);if(n)return[n];let s=i.project.storedResolutions.get(e.descriptorHash);if(!s)throw new Error("Expected the resolution to have been successful - resolution not found");if(n=i.project.originalPackages.get(s),!n)throw new Error("Expected the resolution to have been successful - package not found");return[n]}async getSatisfying(e,r,i){return null}async resolve(e,r){let i=r.project.originalPackages.get(e.locatorHash);if(!i)throw new Error("The lockfile resolver isn't meant to resolve packages - they should already have been stored into a cache");return i}};var PP=class{constructor(e){this.resolver=e}supportsDescriptor(e,r){return this.resolver.supportsDescriptor(e,r)}supportsLocator(e,r){return this.resolver.supportsLocator(e,r)}shouldPersistResolution(e,r){return this.resolver.shouldPersistResolution(e,r)}bindDescriptor(e,r,i){return this.resolver.bindDescriptor(e,r,i)}getResolutionDependencies(e,r){return this.resolver.getResolutionDependencies(e,r)}async getCandidates(e,r,i){throw new Ge(J.MISSING_LOCKFILE_ENTRY,`This package doesn't seem to be present in your lockfile; run "yarn install" to update the lockfile`)}async getSatisfying(e,r,i){throw new Ge(J.MISSING_LOCKFILE_ENTRY,`This package doesn't seem to be present in your lockfile; run "yarn install" to update the lockfile`)}async resolve(e,r){throw new Ge(J.MISSING_LOCKFILE_ENTRY,`This package doesn't seem to be present in your lockfile; run "yarn install" to update the lockfile`)}};var mr=class extends ti{reportCacheHit(e){}reportCacheMiss(e){}startTimerSync(e,r,i){return(typeof r=="function"?r:i)()}async startTimerPromise(e,r,i){return await(typeof r=="function"?r:i)()}async startCacheReport(e){return await e()}reportSeparator(){}reportInfo(e,r){}reportWarning(e,r){}reportError(e,r){}reportProgress(e){return{...Promise.resolve().then(async()=>{for await(let{}of e);}),stop:()=>{}}}reportJson(e){}async finalize(){}};var v5=X(XQ());var sf=class{constructor(e,{project:r}){this.workspacesCwds=new Set;this.dependencies=new Map;this.project=r,this.cwd=e}async setup(){this.manifest=R.existsSync(w.join(this.cwd,je.fileName))?await je.find(this.cwd):new je,this.relativeCwd=w.relative(this.project.cwd,this.cwd)||pe.dot;let e=this.manifest.name?this.manifest.name:Do(null,`${this.computeCandidateName()}-${_r(this.relativeCwd).substr(0,6)}`),r=this.manifest.version?this.manifest.version:"0.0.0";this.locator=$r(e,r),this.anchoredDescriptor=Yt(this.locator,`${ai.protocol}${this.relativeCwd}`),this.anchoredLocator=$r(this.locator,`${ai.protocol}${this.relativeCwd}`);let i=this.manifest.workspaceDefinitions.map(({pattern:s})=>s),n=await v5.default(i,{absolute:!0,cwd:npath.fromPortablePath(this.cwd),expandDirectories:!1,onlyDirectories:!0,onlyFiles:!1,ignore:["**/node_modules","**/.git","**/.yarn"]});n.sort();for(let s of n){let o=w.resolve(this.cwd,npath.toPortablePath(s));R.existsSync(w.join(o,"package.json"))&&this.workspacesCwds.add(o)}}accepts(e){var o;let r=e.indexOf(":"),i=r!==-1?e.slice(0,r+1):null,n=r!==-1?e.slice(r+1):e;if(i===ai.protocol&&w.normalize(n)===this.relativeCwd||i===ai.protocol&&n==="*")return!0;let s=kn(n);return s?i===ai.protocol?s.test((o=this.manifest.version)!=null?o:"0.0.0"):this.project.configuration.get("enableTransparentWorkspaces")&&this.manifest.version!==null?s.test(this.manifest.version):!1:!1}computeCandidateName(){return this.cwd===this.project.cwd?"root-workspace":`${w.basename(this.cwd)}`||"unnamed-workspace"}getRecursiveWorkspaceDependencies({dependencies:e=je.hardDependencies}={}){let r=new Set,i=n=>{for(let s of e)for(let o of n.manifest[s].values()){let a=this.project.tryWorkspaceByDescriptor(o);a===null||r.has(a)||(r.add(a),i(a))}};return i(this),r}getRecursiveWorkspaceChildren(){let e=[];for(let r of this.workspacesCwds){let i=this.project.workspacesByCwd.get(r);i&&e.push(i,...i.getRecursiveWorkspaceChildren())}return e}async persistManifest(){let e={};this.manifest.exportTo(e);let r=w.join(this.cwd,je.fileName),i=`${JSON.stringify(e,null,this.manifest.indent)} -`;await R.changeFilePromise(r,i,{automaticNewlines:!0}),this.manifest.raw=e}};var Gr=X(Zi());var FP=4,Sxe=1,Pxe=/ *, */g,M5=/\/$/,xxe=32,kxe=xP.promisify(vP.default.gzip),vxe=xP.promisify(vP.default.gunzip),RP={restoreInstallersCustomData:["installersCustomData"],restoreResolutions:["accessibleLocators","optionalBuilds","storedDescriptors","storedResolutions","storedPackages","lockFileChecksum"],restoreBuildState:["storedBuildState"]},ke=class{constructor(e,{configuration:r}){this.resolutionAliases=new Map;this.workspaces=[];this.workspacesByCwd=new Map;this.workspacesByIdent=new Map;this.storedResolutions=new Map;this.storedDescriptors=new Map;this.storedPackages=new Map;this.storedChecksums=new Map;this.storedBuildState=new Map;this.accessibleLocators=new Set;this.originalPackages=new Map;this.optionalBuilds=new Set;this.peerRequirements=new Map;this.installersCustomData=new Map;this.lockFileChecksum=null;this.installStateChecksum=null;this.configuration=r,this.cwd=e}static async find(e,r){var c,u,g;if(!e.projectCwd)throw new UsageError(`No project found in ${r}`);let i=e.projectCwd,n=r,s=null;for(;s!==e.projectCwd;){if(s=n,R.existsSync(w.join(s,ft.manifest))){i=s;break}n=w.dirname(s)}let o=new ke(e.projectCwd,{configuration:e});(c=oe.telemetry)==null||c.reportProject(o.cwd),await o.setupResolutions(),await o.setupWorkspaces(),(u=oe.telemetry)==null||u.reportWorkspaceCount(o.workspaces.length),(g=oe.telemetry)==null||g.reportDependencyCount(o.workspaces.reduce((h,f)=>h+f.manifest.dependencies.size+f.manifest.devDependencies.size,0));let a=o.tryWorkspaceByCwd(i);if(a)return{project:o,workspace:a,locator:a.anchoredLocator};let l=await o.findLocatorForLocation(`${i}/`,{strict:!0});if(l)return{project:o,locator:l,workspace:null};throw new UsageError(`The nearest package directory (${Ue(e,i,be.PATH)}) doesn't seem to be part of the project declared in ${Ue(e,o.cwd,be.PATH)}. - -- If the project directory is right, it might be that you forgot to list ${Ue(e,w.relative(o.cwd,i),be.PATH)} as a workspace. -- If it isn't, it's likely because you have a yarn.lock or package.json file there, confusing the project root detection.`)}async setupResolutions(){this.storedResolutions=new Map,this.storedDescriptors=new Map,this.storedPackages=new Map,this.lockFileChecksum=null;let e=w.join(this.cwd,this.configuration.get("lockfileFilename")),r=this.configuration.get("defaultLanguageName");if(R.existsSync(e)){let i=await R.readFilePromise(e,"utf8");this.lockFileChecksum=_r(`${Sxe}`,i);let n=kr(i);if(n.__metadata){let s=n.__metadata.version,o=n.__metadata.cacheKey;for(let a of Object.keys(n)){if(a==="__metadata")continue;let l=n[a];if(typeof l.resolution=="undefined")throw new Error(`Assertion failed: Expected the lockfile entry to have a resolution field (${a})`);let c=Ga(l.resolution,!0),u=new je;u.load(l,{yamlCompatibilityMode:!0});let g=u.version,h=u.languageName||r,f=l.linkType.toUpperCase(),p=u.dependencies,m=u.peerDependencies,I=u.dependenciesMeta,y=u.peerDependenciesMeta,B=u.bin;if(l.checksum!=null){let P=typeof o!="undefined"&&!l.checksum.includes("/")?`${o}/${l.checksum}`:l.checksum;this.storedChecksums.set(c.locatorHash,P)}if(s>=FP){let P={...c,version:g,languageName:h,linkType:f,dependencies:p,peerDependencies:m,dependenciesMeta:I,peerDependenciesMeta:y,bin:B};this.originalPackages.set(P.locatorHash,P)}for(let P of a.split(Pxe)){let k=Po(P);if(this.storedDescriptors.set(k.descriptorHash,k),s>=FP)this.storedResolutions.set(k.descriptorHash,c.locatorHash);else{let N=zC(c);N.descriptorHash!==k.descriptorHash&&(this.storedDescriptors.set(N.descriptorHash,N),this.resolutionAliases.set(k.descriptorHash,N.descriptorHash))}}}}}}async setupWorkspaces(){this.workspaces=[],this.workspacesByCwd=new Map,this.workspacesByIdent=new Map;let e=[this.cwd];for(;e.length>0;){let r=e;e=[];for(let i of r){if(this.workspacesByCwd.has(i))continue;let n=await this.addWorkspace(i),s=this.storedPackages.get(n.anchoredLocator.locatorHash);s&&(n.dependencies=s.dependencies);for(let o of n.workspacesCwds)e.push(o)}}}async addWorkspace(e){let r=new sf(e,{project:this});await r.setup();let i=this.workspacesByIdent.get(r.locator.identHash);if(typeof i!="undefined")throw new Error(`Duplicate workspace name ${fr(this.configuration,r.locator)}: ${npath.fromPortablePath(e)} conflicts with ${npath.fromPortablePath(i.cwd)}`);return this.workspaces.push(r),this.workspacesByCwd.set(e,r),this.workspacesByIdent.set(r.locator.identHash,r),r}get topLevelWorkspace(){return this.getWorkspaceByCwd(this.cwd)}tryWorkspaceByCwd(e){w.isAbsolute(e)||(e=w.resolve(this.cwd,e)),e=w.normalize(e).replace(/\/+$/,"");let r=this.workspacesByCwd.get(e);return r||null}getWorkspaceByCwd(e){let r=this.tryWorkspaceByCwd(e);if(!r)throw new Error(`Workspace not found (${e})`);return r}tryWorkspaceByFilePath(e){let r=null;for(let i of this.workspaces)w.relative(i.cwd,e).startsWith("../")||r&&r.cwd.length>=i.cwd.length||(r=i);return r||null}getWorkspaceByFilePath(e){let r=this.tryWorkspaceByFilePath(e);if(!r)throw new Error(`Workspace not found (${e})`);return r}tryWorkspaceByIdent(e){let r=this.workspacesByIdent.get(e.identHash);return typeof r=="undefined"?null:r}getWorkspaceByIdent(e){let r=this.tryWorkspaceByIdent(e);if(!r)throw new Error(`Workspace not found (${fr(this.configuration,e)})`);return r}tryWorkspaceByDescriptor(e){So(e)&&(e=Ng(e));let r=this.tryWorkspaceByIdent(e);return r===null||!r.accepts(e.range)?null:r}getWorkspaceByDescriptor(e){let r=this.tryWorkspaceByDescriptor(e);if(r===null)throw new Error(`Workspace not found (${Rt(this.configuration,e)})`);return r}tryWorkspaceByLocator(e){Wn(e)&&(e=Og(e));let r=this.tryWorkspaceByIdent(e);return r===null||r.locator.locatorHash!==e.locatorHash&&r.anchoredLocator.locatorHash!==e.locatorHash?null:r}getWorkspaceByLocator(e){let r=this.tryWorkspaceByLocator(e);if(!r)throw new Error(`Workspace not found (${$e(this.configuration,e)})`);return r}refreshWorkspaceDependencies(){for(let e of this.workspaces){let r=this.storedPackages.get(e.anchoredLocator.locatorHash);if(!r)throw new Error(`Assertion failed: Expected workspace ${Hg(this.configuration,e)} (${Ue(this.configuration,w.join(e.cwd,ft.manifest),be.PATH)}) to have been resolved. Run "yarn install" to update the lockfile`);e.dependencies=new Map(r.dependencies)}}forgetResolution(e){let r=n=>{this.storedResolutions.delete(n),this.storedDescriptors.delete(n)},i=n=>{this.originalPackages.delete(n),this.storedPackages.delete(n),this.accessibleLocators.delete(n)};if("descriptorHash"in e){let n=this.storedResolutions.get(e.descriptorHash);r(e.descriptorHash);let s=new Set(this.storedResolutions.values());typeof n!="undefined"&&!s.has(n)&&i(n)}if("locatorHash"in e){i(e.locatorHash);for(let[n,s]of this.storedResolutions)s===e.locatorHash&&r(n)}}forgetTransientResolutions(){let e=this.configuration.makeResolver();for(let r of this.originalPackages.values()){let i;try{i=e.shouldPersistResolution(r,{project:this,resolver:e})}catch{i=!1}i||this.forgetResolution(r)}}forgetVirtualResolutions(){for(let e of this.storedPackages.values())for(let[r,i]of e.dependencies)So(i)&&e.dependencies.set(r,Ng(i))}getDependencyMeta(e,r){let i={},s=this.topLevelWorkspace.manifest.dependenciesMeta.get(gt(e));if(!s)return i;let o=s.get(null);if(o&&Object.assign(i,o),r===null||!L5.default.valid(r))return i;for(let[a,l]of s)a!==null&&a===r&&Object.assign(i,l);return i}async findLocatorForLocation(e,{strict:r=!1}={}){let i=new mr,n=this.configuration.getLinkers(),s={project:this,report:i};for(let o of n){let a=await o.findPackageLocator(e,s);if(a){if(r&&(await o.findPackageLocation(a,s)).replace(M5,"")!==e.replace(M5,""))continue;return a}}return null}async resolveEverything(e){if(!this.workspacesByCwd||!this.workspacesByIdent)throw new Error("Workspaces must have been setup before calling this function");this.forgetVirtualResolutions(),e.lockfileOnly||this.forgetTransientResolutions();let r=e.resolver||this.configuration.makeResolver(),i=new SP;await i.setup(this,{report:e.report});let n=e.lockfileOnly?new Qc([new mE,new PP(r)]):new Qc([new mE,i,r]),s=this.configuration.makeFetcher(),o=e.lockfileOnly?{project:this,report:e.report,resolver:n}:{project:this,report:e.report,resolver:n,fetchOptions:{project:this,cache:e.cache,checksums:this.storedChecksums,report:e.report,fetcher:s}},a=new Map,l=new Map,c=new Map,u=new Map,g=new Map,h=new Map,f=[],p=async v=>{let U=await Gr.prettifyAsyncErrors(async()=>await n.resolve(v,o),F=>`${$e(this.configuration,v)}: ${F}`);if(!e0(v,U))throw new Error(`Assertion failed: The locator cannot be changed by the resolver (went from ${$e(this.configuration,v)} to ${$e(this.configuration,U)})`);u.set(U.locatorHash,U);let re=this.configuration.normalizePackage(U);for(let[F,A]of re.dependencies){let q=await this.configuration.reduceHook($=>$.reduceDependency,A,this,re,A,{resolver:n,resolveOptions:o});if(!Tg(A,q))throw new Error("Assertion failed: The descriptor ident cannot be changed through aliases");let Z=n.bindDescriptor(q,v,o);re.dependencies.set(F,Z)}return f.push(Promise.all([...re.dependencies.values()].map(F=>B(F)))),l.set(re.locatorHash,re),re},m=async v=>{let U=g.get(v.locatorHash);if(typeof U!="undefined")return U;let re=Promise.resolve().then(()=>p(v));return g.set(v.locatorHash,re),re},I=async(v,U)=>{let re=await B(U);return a.set(v.descriptorHash,v),c.set(v.descriptorHash,re.locatorHash),re},y=async v=>{let U=this.resolutionAliases.get(v.descriptorHash);if(typeof U!="undefined")return I(v,this.storedDescriptors.get(U));let re=n.getResolutionDependencies(v,o),F=new Map(await Promise.all(re.map(async Z=>[Z.descriptorHash,await B(Z)]))),q=(await Gr.prettifyAsyncErrors(async()=>await n.getCandidates(v,F,o),Z=>`${Rt(this.configuration,v)}: ${Z}`))[0];if(typeof q=="undefined")throw new Error(`${Rt(this.configuration,v)}: No candidates found`);return a.set(v.descriptorHash,v),c.set(v.descriptorHash,q.locatorHash),m(q)},B=v=>{let U=h.get(v.descriptorHash);if(typeof U!="undefined")return U;a.set(v.descriptorHash,v);let re=Promise.resolve().then(()=>y(v));return h.set(v.descriptorHash,re),re};for(let v of this.workspaces){let U=v.anchoredDescriptor;f.push(B(U))}for(;f.length>0;){let v=[...f];f.length=0,await Promise.all(v)}let P=new Set(this.resolutionAliases.values()),k=new Set(l.keys()),N=new Set,O=new Map;Fxe({project:this,report:e.report,accessibleLocators:N,volatileDescriptors:P,optionalBuilds:k,peerRequirements:O,allDescriptors:a,allResolutions:c,allPackages:l});for(let v of P)a.delete(v),c.delete(v);this.storedResolutions=c,this.storedDescriptors=a,this.storedPackages=l,this.accessibleLocators=N,this.originalPackages=u,this.optionalBuilds=k,this.peerRequirements=O,this.refreshWorkspaceDependencies()}async fetchEverything({cache:e,report:r,fetcher:i}){let n=i||this.configuration.makeFetcher(),s={checksums:this.storedChecksums,project:this,cache:e,fetcher:n,report:r},o=Array.from(new Set(Gr.sortMap(this.storedResolutions.values(),[u=>{let g=this.storedPackages.get(u);if(!g)throw new Error("Assertion failed: The locator should have been registered");return tn(g)}]))),a=!1,l=ti.progressViaCounter(o.length);r.reportProgress(l);let c=R5.default(xxe);if(await r.startCacheReport(async()=>{await Promise.all(o.map(u=>c(async()=>{let g=this.storedPackages.get(u);if(!g)throw new Error("Assertion failed: The locator should have been registered");if(Wn(g))return;let h;try{h=await n.fetch(g,s)}catch(f){f.message=`${$e(this.configuration,g)}: ${f.message}`,r.reportExceptionOnce(f),a=f;return}h.checksum?this.storedChecksums.set(g.locatorHash,h.checksum):this.storedChecksums.delete(g.locatorHash),h.releaseFs&&h.releaseFs()}).finally(()=>{l.tick()})))}),a)throw a}async linkEverything({cache:e,report:r,fetcher:i,skipBuild:n}){var re;let s=i||this.configuration.makeFetcher(),o={checksums:this.storedChecksums,project:this,cache:e,fetcher:s,report:r,skipIntegrityCheck:!0},a=this.configuration.getLinkers(),l={project:this,report:r},c=new Map(a.map(F=>{let A=F.makeInstaller(l),q=A.getCustomDataKey(),Z=this.installersCustomData.get(q);return typeof Z!="undefined"&&A.attachCustomData(Z),[F,A]})),u=new Map,g=new Map,h=new Map,f=new Map(await Promise.all([...this.accessibleLocators].map(async F=>{let A=this.storedPackages.get(F);if(!A)throw new Error("Assertion failed: The locator should have been registered");return[F,await s.fetch(A,o)]})));for(let F of this.accessibleLocators){let A=this.storedPackages.get(F);if(typeof A=="undefined")throw new Error("Assertion failed: The locator should have been registered");let q=f.get(A.locatorHash);if(typeof q=="undefined")throw new Error("Assertion failed: The fetch result should have been registered");let Z=this.tryWorkspaceByLocator(A);if(Z!==null){let $=[],{scripts:T}=Z.manifest;for(let Qe of["preinstall","install","postinstall"])T.has(Qe)&&$.push([Ki.SCRIPT,Qe]);try{for(let Qe of c.values())if((await Qe.installPackage(A,q)).buildDirective!==null)throw new Error("Assertion failed: Linkers can't return build directives for workspaces; this responsibility befalls to the Yarn core")}finally{q.releaseFs&&q.releaseFs()}let G=w.join(q.packageFs.getRealPath(),q.prefixPath);g.set(A.locatorHash,G),!Wn(A)&&$.length>0&&h.set(A.locatorHash,{directives:$,buildLocations:[G]})}else{let $=a.find(Qe=>Qe.supportsPackage(A,l));if(!$)throw new Ge(J.LINKER_NOT_FOUND,`${$e(this.configuration,A)} isn't supported by any available linker`);let T=c.get($);if(!T)throw new Error("Assertion failed: The installer should have been registered");let G;try{G=await T.installPackage(A,q)}finally{q.releaseFs&&q.releaseFs()}u.set(A.locatorHash,$),g.set(A.locatorHash,G.packageLocation),G.buildDirective&&G.packageLocation&&h.set(A.locatorHash,{directives:G.buildDirective,buildLocations:[G.packageLocation]})}}let p=new Map;for(let F of this.accessibleLocators){let A=this.storedPackages.get(F);if(!A)throw new Error("Assertion failed: The locator should have been registered");let q=this.tryWorkspaceByLocator(A)!==null,Z=async($,T)=>{let G=g.get(A.locatorHash);if(typeof G=="undefined")throw new Error(`Assertion failed: The package (${$e(this.configuration,A)}) should have been registered`);let Qe=[];for(let Pe of A.dependencies.values()){let He=this.storedResolutions.get(Pe.descriptorHash);if(typeof He=="undefined")throw new Error(`Assertion failed: The resolution (${Rt(this.configuration,Pe)}, from ${$e(this.configuration,A)})should have been registered`);let Re=this.storedPackages.get(He);if(typeof Re=="undefined")throw new Error(`Assertion failed: The package (${He}, resolved from ${Rt(this.configuration,Pe)}) should have been registered`);let ee=this.tryWorkspaceByLocator(Re)===null?u.get(He):null;if(typeof ee=="undefined")throw new Error(`Assertion failed: The package (${He}, resolved from ${Rt(this.configuration,Pe)}) should have been registered`);ee===$||q||ee===null?g.get(Re.locatorHash)!==null&&Qe.push([Pe,Re]):G!==null&&Gr.getArrayWithDefault(p,He).push(G)}G!==null&&await T.attachInternalDependencies(A,Qe)};if(q)for(let[$,T]of c)await Z($,T);else{let $=u.get(A.locatorHash);if(!$)throw new Error("Assertion failed: The linker should have been found");let T=c.get($);if(!T)throw new Error("Assertion failed: The installer should have been registered");await Z($,T)}}for(let[F,A]of p){let q=this.storedPackages.get(F);if(!q)throw new Error("Assertion failed: The package should have been registered");let Z=u.get(q.locatorHash);if(!Z)throw new Error("Assertion failed: The linker should have been found");let $=c.get(Z);if(!$)throw new Error("Assertion failed: The installer should have been registered");await $.attachExternalDependents(q,A)}let m=new Map;for(let F of c.values()){let A=await F.finalizeInstall();for(let q of(re=A==null?void 0:A.records)!=null?re:[])h.set(q.locatorHash,{directives:q.buildDirective,buildLocations:q.buildLocations});typeof(A==null?void 0:A.customData)!="undefined"&&m.set(F.getCustomDataKey(),A.customData)}if(this.installersCustomData=m,n)return;let I=new Set(this.storedPackages.keys()),y=new Set(h.keys());for(let F of y)I.delete(F);let B=IE.createHash("sha512");B.update(process.versions.node),await this.configuration.triggerHook(F=>F.globalHashGeneration,this,F=>{B.update("\0"),B.update(F)});let P=B.digest("hex"),k=new Map,N=F=>{let A=k.get(F.locatorHash);if(typeof A!="undefined")return A;let q=this.storedPackages.get(F.locatorHash);if(typeof q=="undefined")throw new Error("Assertion failed: The package should have been registered");let Z=IE.createHash("sha512");Z.update(F.locatorHash),k.set(F.locatorHash,"");for(let $ of q.dependencies.values()){let T=this.storedResolutions.get($.descriptorHash);if(typeof T=="undefined")throw new Error(`Assertion failed: The resolution (${Rt(this.configuration,$)}) should have been registered`);let G=this.storedPackages.get(T);if(typeof G=="undefined")throw new Error("Assertion failed: The package should have been registered");Z.update(N(G))}return A=Z.digest("hex"),k.set(F.locatorHash,A),A},O=(F,A)=>{let q=IE.createHash("sha512");q.update(P),q.update(N(F));for(let Z of A)q.update(Z);return q.digest("hex")},v=new Map,U=!1;for(;y.size>0;){let F=y.size,A=[];for(let q of y){let Z=this.storedPackages.get(q);if(!Z)throw new Error("Assertion failed: The package should have been registered");let $=!0;for(let Qe of Z.dependencies.values()){let Pe=this.storedResolutions.get(Qe.descriptorHash);if(!Pe)throw new Error(`Assertion failed: The resolution (${Rt(this.configuration,Qe)}) should have been registered`);if(y.has(Pe)){$=!1;break}}if(!$)continue;y.delete(q);let T=h.get(Z.locatorHash);if(!T)throw new Error("Assertion failed: The build directive should have been registered");let G=O(Z,T.buildLocations);if(this.storedBuildState.get(Z.locatorHash)===G){v.set(Z.locatorHash,G);continue}U||(await this.persistInstallStateFile(),U=!0),this.storedBuildState.has(Z.locatorHash)?r.reportInfo(J.MUST_REBUILD,`${$e(this.configuration,Z)} must be rebuilt because its dependency tree changed`):r.reportInfo(J.MUST_BUILD,`${$e(this.configuration,Z)} must be built because it never has been before or the last one failed`);for(let Qe of T.buildLocations){if(!w.isAbsolute(Qe))throw new Error(`Assertion failed: Expected the build location to be absolute (not ${Qe})`);A.push((async()=>{for(let[Pe,He]of T.directives){let Re=`# This file contains the result of Yarn building a package (${tn(Z)}) -`;switch(Pe){case Ki.SCRIPT:Re+=`# Script name: ${He} -`;break;case Ki.SHELLCODE:Re+=`# Script code: ${He} -`;break}let ee=null;if(!await R.mktempPromise(async Ee=>{let le=w.join(Ee,"build.log"),{stdout:fe,stderr:ue}=this.configuration.getSubprocessStreams(le,{header:Re,prefix:$e(this.configuration,Z),report:r}),De;try{switch(Pe){case Ki.SCRIPT:De=await rI(Z,He,[],{cwd:Qe,project:this,stdin:ee,stdout:fe,stderr:ue});break;case Ki.SHELLCODE:De=await wD(Z,He,[],{cwd:Qe,project:this,stdin:ee,stdout:fe,stderr:ue});break}}catch(W){ue.write(W.stack),De=1}if(fe.end(),ue.end(),De===0)return v.set(Z.locatorHash,G),!0;R.detachTemp(Ee);let z=`${$e(this.configuration,Z)} couldn't be built successfully (exit code ${Ue(this.configuration,De,be.NUMBER)}, logs can be found here: ${Ue(this.configuration,le,be.PATH)})`;return this.optionalBuilds.has(Z.locatorHash)?(r.reportInfo(J.BUILD_FAILED,z),v.set(Z.locatorHash,G),!0):(r.reportError(J.BUILD_FAILED,z),!1)}))return}})())}}if(await Promise.all(A),F===y.size){let q=Array.from(y).map(Z=>{let $=this.storedPackages.get(Z);if(!$)throw new Error("Assertion failed: The package should have been registered");return $e(this.configuration,$)}).join(", ");r.reportError(J.CYCLIC_DEPENDENCIES,`Some packages have circular dependencies that make their build order unsatisfiable - as a result they won't be built (affected packages are: ${q})`);break}}this.storedBuildState=v}async install(e){var a,l;let r=this.configuration.get("nodeLinker");(a=oe.telemetry)==null||a.reportInstall(r),await e.report.startTimerPromise("Project validation",{skipIfEmpty:!0},async()=>{await this.configuration.triggerHook(c=>c.validateProject,this,{reportWarning:e.report.reportWarning.bind(e.report),reportError:e.report.reportError.bind(e.report)})});for(let c of this.configuration.packageExtensions.values())for(let[,u]of c)for(let g of u)g.status=Or.Inactive;let i=w.join(this.cwd,this.configuration.get("lockfileFilename")),n=null;if(e.immutable)try{n=await R.readFilePromise(i,"utf8")}catch(c){throw c.code==="ENOENT"?new Ge(J.FROZEN_LOCKFILE_EXCEPTION,"The lockfile would have been created by this install, which is explicitly forbidden."):c}await e.report.startTimerPromise("Resolution step",async()=>{await this.resolveEverything(e)}),await e.report.startTimerPromise("Post-resolution validation",{skipIfEmpty:!0},async()=>{for(let[,c]of this.configuration.packageExtensions)for(let[,u]of c)for(let g of u)if(g.userProvided){let h=Ue(this.configuration,g,be.PACKAGE_EXTENSION);switch(g.status){case Or.Inactive:e.report.reportWarning(J.UNUSED_PACKAGE_EXTENSION,`${h}: No matching package in the dependency tree; you may not need this rule anymore.`);break;case Or.Redundant:e.report.reportWarning(J.REDUNDANT_PACKAGE_EXTENSION,`${h}: This rule seems redundant when applied on the original package; the extension may have been applied upstream.`);break}}if(n!==null){let c=ll(n,this.generateLockfile());if(c!==n){let u=F5.structuredPatch(i,i,n,c);e.report.reportSeparator();for(let g of u.hunks){e.report.reportInfo(null,`@@ -${g.oldStart},${g.oldLines} +${g.newStart},${g.newLines} @@`);for(let h of g.lines)h.startsWith("+")?e.report.reportError(J.FROZEN_LOCKFILE_EXCEPTION,Ue(this.configuration,h,be.ADDED)):h.startsWith("-")?e.report.reportError(J.FROZEN_LOCKFILE_EXCEPTION,Ue(this.configuration,h,be.REMOVED)):e.report.reportInfo(null,Ue(this.configuration,h,"grey"))}throw e.report.reportSeparator(),new Ge(J.FROZEN_LOCKFILE_EXCEPTION,"The lockfile would have been modified by this install, which is explicitly forbidden.")}}});for(let c of this.configuration.packageExtensions.values())for(let[,u]of c)for(let g of u)g.userProvided&&g.status===Or.Active&&((l=oe.telemetry)==null||l.reportPackageExtension(Nl(g,be.PACKAGE_EXTENSION)));await e.report.startTimerPromise("Fetch step",async()=>{await this.fetchEverything(e),(typeof e.persistProject=="undefined"||e.persistProject)&&await this.cacheCleanup(e)});let s=e.immutable?[...new Set(this.configuration.get("immutablePatterns"))].sort():[],o=await Promise.all(s.map(async c=>GC(c,{cwd:this.cwd})));(typeof e.persistProject=="undefined"||e.persistProject)&&await this.persist(),await e.report.startTimerPromise("Link step",async()=>{await this.linkEverything(e);let c=await Promise.all(s.map(async u=>GC(u,{cwd:this.cwd})));for(let u=0;uc.afterAllInstalled,this,e)}generateLockfile(){let e=new Map;for(let[n,s]of this.storedResolutions.entries()){let o=e.get(s);o||e.set(s,o=new Set),o.add(n)}let r={};r.__metadata={version:FP};for(let[n,s]of e.entries()){let o=this.originalPackages.get(n);if(!o)continue;let a=[];for(let h of s){let f=this.storedDescriptors.get(h);if(!f)throw new Error("Assertion failed: The descriptor should have been registered");a.push(f)}let l=a.map(h=>Ci(h)).sort().join(", "),c=new je;c.version=o.linkType===nt.HARD?o.version:"0.0.0-use.local",c.languageName=o.languageName,c.dependencies=new Map(o.dependencies),c.peerDependencies=new Map(o.peerDependencies),c.dependenciesMeta=new Map(o.dependenciesMeta),c.peerDependenciesMeta=new Map(o.peerDependenciesMeta),c.bin=new Map(o.bin);let u,g=this.storedChecksums.get(o.locatorHash);if(typeof g!="undefined"){let h=g.indexOf("/");if(h===-1)throw new Error("Assertion failed: Expecte the checksum to reference its cache key");let f=g.slice(0,h),p=g.slice(h+1);typeof r.__metadata.cacheKey=="undefined"&&(r.__metadata.cacheKey=f),f===r.__metadata.cacheKey?u=p:u=g}r[l]={...c.exportTo({},{compatibilityMode:!1}),linkType:o.linkType.toLowerCase(),resolution:tn(o),checksum:u}}return`${[`# This file is generated by running "yarn install" inside your project. +`)}(this.mirrorCwd||!this.immutable)&&await M.mkdirPromise(this.mirrorCwd||this.cwd,{recursive:!0})}async fetchPackageFromCache(e,r,{onHit:i,onMiss:n,loader:s,skipIntegrityCheck:o}){let a=this.getLocatorMirrorPath(e),l=new wt,c=async(N,K=null)=>{let v=!o||!r?`${this.cacheKey}/${await Lm(N)}`:r;if(K!==null){let J=!o||!r?`${this.cacheKey}/${await Lm(K)}`:r;if(v!==J)throw new Ze(z.CACHE_CHECKSUM_MISMATCH,"The remote archive doesn't match the local checksum - has the local cache been corrupted?")}if(r!==null&&v!==r){let J;switch(this.check?J="throw":tP(r)!==tP(v)?J="update":J=this.configuration.get("checksumBehavior"),J){case"ignore":return r;case"update":return v;default:case"throw":throw new Ze(z.CACHE_CHECKSUM_MISMATCH,"The remote archive doesn't match the expected checksum")}}return v},u=async N=>{if(!s)throw new Error(`Cache check required but no loader configured for ${it(this.configuration,e)}`);let K=await s(),v=K.getRealPath();return K.saveAndClose(),await M.chmodPromise(v,420),await c(N,v)},g=async()=>{if(a===null||!await M.existsPromise(a)){let v=await s(),J=v.getRealPath();return v.saveAndClose(),{source:"loader",path:J}}let N=await M.mktempPromise(),K=B.join(N,this.getVersionFilename(e));return await M.copyFilePromise(a,K,eP.default.constants.COPYFILE_FICLONE),{source:"mirror",path:K}},h=async()=>{if(!s)throw new Error(`Cache entry required but missing for ${it(this.configuration,e)}`);if(this.immutable)throw new Ze(z.IMMUTABLE_CACHE,`Cache entry required but missing for ${it(this.configuration,e)}`);let{path:N,source:K}=await g();await M.chmodPromise(N,420);let v=await c(N),J=this.getLocatorPath(e,v);if(!J)throw new Error("Assertion failed: Expected the cache path to be available");let oe=null;if(K!=="mirror"&&a!==null){let T=await M.mktempPromise();oe=B.join(T,this.getVersionFilename(e)),await M.copyFilePromise(N,oe,eP.default.constants.COPYFILE_FICLONE)}return await this.writeFileWithLock(J,async()=>await this.writeFileWithLock(K==="mirror"?null:a,async()=>(await M.movePromise(N,J),oe&&a&&await M.movePromise(oe,a),[J,v])))},f=async()=>{let K=(async()=>{let v=this.getLocatorPath(e,r),J=v!==null?await l.existsPromise(v):!1,oe=J?i:n;if(oe&&oe(),J){let T=null,A=v;return this.check?T=await u(A):T=await c(A),[A,T]}else return h()})();this.mutexes.set(e.locatorHash,K);try{return await K}finally{this.mutexes.delete(e.locatorHash)}};for(let N;N=this.mutexes.get(e.locatorHash);)await N;let[p,m]=await f();this.markedFiles.add(p);let I=null,y=await gi(),w=new Pg(()=>KQ(()=>I=new br(p,{baseFs:l,libzip:y,readOnly:!0}),N=>`Failed to open the cache entry for ${it(this.configuration,e)}: ${N}`),B);return[new za(p,{baseFs:w,pathUtils:B}),()=>{I!==null&&I.discardAndClose()},m]}async writeFileWithLock(e,r){return e===null?await r():await M.lockPromise(e,async()=>await r())}};function tP(t){let e=t.indexOf("/");return e!==-1?t.slice(0,e):null}function SDe(t){let e=t.indexOf("/");return e!==-1?t.slice(e+1):t}var dz=te(uz()),JE=te(Tg());var Cz=te(WI()),oP=te(require("stream"));var gz={hooks:{reduceDependency:(t,e,r,i,{resolver:n,resolveOptions:s})=>{for(let{pattern:o,reference:a}of e.topLevelWorkspace.manifest.resolutions){if(o.from&&o.from.fullName!==pt(r)||o.from&&o.from.description&&o.from.description!==r.reference||o.descriptor.fullName!==pt(t)||o.descriptor.description&&o.descriptor.description!==t.range)continue;return n.bindDescriptor(zt(t,a),e.topLevelWorkspace.anchoredLocator,s)}return t},validateProject:async(t,e)=>{for(let r of t.workspaces){let i=Qh(t.configuration,r);await t.configuration.triggerHook(n=>n.validateWorkspace,r,{reportWarning:(n,s)=>e.reportWarning(n,`${i}: ${s}`),reportError:(n,s)=>e.reportError(n,`${i}: ${s}`)})}},validateWorkspace:async(t,e)=>{let{manifest:r}=t;r.resolutions.length&&t.cwd!==t.project.cwd&&r.errors.push(new Error("Resolutions field will be ignored"));for(let i of r.errors)e.reportWarning(z.INVALID_MANIFEST,i.message)}}};var iP=class{constructor(e){this.fetchers=e}supports(e,r){return!!this.tryFetcher(e,r)}getLocalPath(e,r){return this.getFetcher(e,r).getLocalPath(e,r)}async fetch(e,r){return await this.getFetcher(e,r).fetch(e,r)}tryFetcher(e,r){let i=this.fetchers.find(n=>n.supports(e,r));return i||null}getFetcher(e,r){let i=this.fetchers.find(n=>n.supports(e,r));if(!i)throw new Ze(z.FETCHER_NOT_FOUND,`${it(r.project.configuration,e)} isn't supported by any available fetcher`);return i}};var eu=class{constructor(e){this.resolvers=e.filter(r=>r)}supportsDescriptor(e,r){return!!this.tryResolverByDescriptor(e,r)}supportsLocator(e,r){return!!this.tryResolverByLocator(e,r)}shouldPersistResolution(e,r){return this.getResolverByLocator(e,r).shouldPersistResolution(e,r)}bindDescriptor(e,r,i){return this.getResolverByDescriptor(e,i).bindDescriptor(e,r,i)}getResolutionDependencies(e,r){return this.getResolverByDescriptor(e,r).getResolutionDependencies(e,r)}async getCandidates(e,r,i){return await this.getResolverByDescriptor(e,i).getCandidates(e,r,i)}async getSatisfying(e,r,i){return this.getResolverByDescriptor(e,i).getSatisfying(e,r,i)}async resolve(e,r){return await this.getResolverByLocator(e,r).resolve(e,r)}tryResolverByDescriptor(e,r){let i=this.resolvers.find(n=>n.supportsDescriptor(e,r));return i||null}getResolverByDescriptor(e,r){let i=this.resolvers.find(n=>n.supportsDescriptor(e,r));if(!i)throw new Error(`${Tt(r.project.configuration,e)} isn't supported by any available resolver`);return i}tryResolverByLocator(e,r){let i=this.resolvers.find(n=>n.supportsLocator(e,r));return i||null}getResolverByLocator(e,r){let i=this.resolvers.find(n=>n.supportsLocator(e,r));if(!i)throw new Error(`${it(r.project.configuration,e)} isn't supported by any available resolver`);return i}};var hz=te(Cr());var tu=/^(?!v)[a-z0-9._-]+$/i,nP=class{supportsDescriptor(e,r){return!!(Un(e.range)||tu.test(e.range))}supportsLocator(e,r){return!!(hz.default.valid(e.reference)||tu.test(e.reference))}shouldPersistResolution(e,r){return r.resolver.shouldPersistResolution(this.forwardLocator(e,r),r)}bindDescriptor(e,r,i){return i.resolver.bindDescriptor(this.forwardDescriptor(e,i),r,i)}getResolutionDependencies(e,r){return r.resolver.getResolutionDependencies(this.forwardDescriptor(e,r),r)}async getCandidates(e,r,i){return await i.resolver.getCandidates(this.forwardDescriptor(e,i),r,i)}async getSatisfying(e,r,i){return await i.resolver.getSatisfying(this.forwardDescriptor(e,i),r,i)}async resolve(e,r){let i=await r.resolver.resolve(this.forwardLocator(e,r),r);return Ch(i,e)}forwardDescriptor(e,r){return zt(e,`${r.project.configuration.get("defaultProtocol")}${e.range}`)}forwardLocator(e,r){return Ai(e,`${r.project.configuration.get("defaultProtocol")}${e.reference}`)}};var Qf=class{supports(e){return!!e.reference.startsWith("virtual:")}getLocalPath(e,r){let i=e.reference.indexOf("#");if(i===-1)throw new Error("Invalid virtual package reference");let n=e.reference.slice(i+1),s=Ai(e,n);return r.fetcher.getLocalPath(s,r)}async fetch(e,r){let i=e.reference.indexOf("#");if(i===-1)throw new Error("Invalid virtual package reference");let n=e.reference.slice(i+1),s=Ai(e,n),o=await r.fetcher.fetch(s,r);return await this.ensureVirtualLink(e,o,r)}getLocatorFilename(e){return ic(e)}async ensureVirtualLink(e,r,i){let n=r.packageFs.getRealPath(),s=i.project.configuration.get("virtualFolder"),o=this.getLocatorFilename(e),a=rr.makeVirtualPath(s,o,n),l=new za(a,{baseFs:r.packageFs,pathUtils:B});return V(k({},r),{packageFs:l})}};var ru=class{static isVirtualDescriptor(e){return!!e.range.startsWith(ru.protocol)}static isVirtualLocator(e){return!!e.reference.startsWith(ru.protocol)}supportsDescriptor(e,r){return ru.isVirtualDescriptor(e)}supportsLocator(e,r){return ru.isVirtualLocator(e)}shouldPersistResolution(e,r){return!1}bindDescriptor(e,r,i){throw new Error('Assertion failed: calling "bindDescriptor" on a virtual descriptor is unsupported')}getResolutionDependencies(e,r){throw new Error('Assertion failed: calling "getResolutionDependencies" on a virtual descriptor is unsupported')}async getCandidates(e,r,i){throw new Error('Assertion failed: calling "getCandidates" on a virtual descriptor is unsupported')}async getSatisfying(e,r,i){throw new Error('Assertion failed: calling "getSatisfying" on a virtual descriptor is unsupported')}async resolve(e,r){throw new Error('Assertion failed: calling "resolve" on a virtual locator is unsupported')}},qE=ru;qE.protocol="virtual:";var bf=class{supportsDescriptor(e,r){return!!(e.range.startsWith(bf.protocol)||r.project.tryWorkspaceByDescriptor(e)!==null)}supportsLocator(e,r){return!!e.reference.startsWith(bf.protocol)}shouldPersistResolution(e,r){return!1}bindDescriptor(e,r,i){return e}getResolutionDependencies(e,r){return[]}async getCandidates(e,r,i){return[i.project.getWorkspaceByDescriptor(e).anchoredLocator]}async getSatisfying(e,r,i){return null}async resolve(e,r){let i=r.project.getWorkspaceByCwd(e.reference.slice(bf.protocol.length));return V(k({},e),{version:i.manifest.version||"0.0.0",languageName:"unknown",linkType:At.SOFT,dependencies:new Map([...i.manifest.dependencies,...i.manifest.devDependencies]),peerDependencies:new Map([...i.manifest.peerDependencies]),dependenciesMeta:i.manifest.dependenciesMeta,peerDependenciesMeta:i.manifest.peerDependenciesMeta,bin:i.manifest.bin})}},Ci=bf;Ci.protocol="workspace:";var sP=class{supports(e){return!!e.reference.startsWith(Ci.protocol)}getLocalPath(e,r){return this.getWorkspace(e,r).cwd}async fetch(e,r){let i=this.getWorkspace(e,r).cwd;return{packageFs:new yt(i),prefixPath:Ee.dot,localPath:i}}getWorkspace(e,r){return r.project.getWorkspaceByCwd(e.reference.slice(Ci.protocol.length))}};var fz=te(require("module"));function pz(){return new Set(fz.default.builtinModules||Object.keys(process.binding("natives")))}var PDe=new Set(["binFolder","version","flags","profile","gpg","ignoreNode","wrapOutput","home","confDir"]),WE="yarn_",aP=".yarnrc.yml",AP="yarn.lock",kDe="********",ge;(function(u){u.ANY="ANY",u.BOOLEAN="BOOLEAN",u.ABSOLUTE_PATH="ABSOLUTE_PATH",u.LOCATOR="LOCATOR",u.LOCATOR_LOOSE="LOCATOR_LOOSE",u.NUMBER="NUMBER",u.STRING="STRING",u.SECRET="SECRET",u.SHAPE="SHAPE",u.MAP="MAP"})(ge||(ge={}));var Cs=ve,lP={lastUpdateCheck:{description:"Last timestamp we checked whether new Yarn versions were available",type:ge.STRING,default:null},yarnPath:{description:"Path to the local executable that must be used over the global one",type:ge.ABSOLUTE_PATH,default:null},ignorePath:{description:"If true, the local executable will be ignored when using the global one",type:ge.BOOLEAN,default:!1},ignoreCwd:{description:"If true, the `--cwd` flag will be ignored",type:ge.BOOLEAN,default:!1},cacheKeyOverride:{description:"A global cache key override; used only for test purposes",type:ge.STRING,default:null},globalFolder:{description:"Folder where are stored the system-wide settings",type:ge.ABSOLUTE_PATH,default:qw()},cacheFolder:{description:"Folder where the cache files must be written",type:ge.ABSOLUTE_PATH,default:"./.yarn/cache"},compressionLevel:{description:"Zip files compression level, from 0 to 9 or mixed (a variant of 9, which stores some files uncompressed, when compression doesn't yield good results)",type:ge.NUMBER,values:["mixed",0,1,2,3,4,5,6,7,8,9],default:Wa},virtualFolder:{description:"Folder where the virtual packages (cf doc) will be mapped on the disk (must be named __virtual__)",type:ge.ABSOLUTE_PATH,default:"./.yarn/__virtual__"},lockfileFilename:{description:"Name of the files where the Yarn dependency tree entries must be stored",type:ge.STRING,default:AP},installStatePath:{description:"Path of the file where the install state will be persisted",type:ge.ABSOLUTE_PATH,default:"./.yarn/install-state.gz"},immutablePatterns:{description:"Array of glob patterns; files matching them won't be allowed to change during immutable installs",type:ge.STRING,default:[],isArray:!0},rcFilename:{description:"Name of the files where the configuration can be found",type:ge.STRING,default:zE()},enableGlobalCache:{description:"If true, the system-wide cache folder will be used regardless of `cache-folder`",type:ge.BOOLEAN,default:!1},enableColors:{description:"If true, the CLI is allowed to use colors in its output",type:ge.BOOLEAN,default:Ym,defaultText:""},enableHyperlinks:{description:"If true, the CLI is allowed to use hyperlinks in its output",type:ge.BOOLEAN,default:fb,defaultText:""},enableInlineBuilds:{description:"If true, the CLI will print the build output on the command line",type:ge.BOOLEAN,default:JE.isCI,defaultText:""},enableMessageNames:{description:"If true, the CLI will prefix most messages with codes suitable for search engines",type:ge.BOOLEAN,default:!0},enableProgressBars:{description:"If true, the CLI is allowed to show a progress bar for long-running events",type:ge.BOOLEAN,default:!JE.isCI&&process.stdout.isTTY&&process.stdout.columns>22,defaultText:""},enableTimers:{description:"If true, the CLI is allowed to print the time spent executing commands",type:ge.BOOLEAN,default:!0},preferAggregateCacheInfo:{description:"If true, the CLI will only print a one-line report of any cache changes",type:ge.BOOLEAN,default:JE.isCI},preferInteractive:{description:"If true, the CLI will automatically use the interactive mode when called from a TTY",type:ge.BOOLEAN,default:!1},preferTruncatedLines:{description:"If true, the CLI will truncate lines that would go beyond the size of the terminal",type:ge.BOOLEAN,default:!1},progressBarStyle:{description:"Which style of progress bar should be used (only when progress bars are enabled)",type:ge.STRING,default:void 0,defaultText:""},defaultLanguageName:{description:"Default language mode that should be used when a package doesn't offer any insight",type:ge.STRING,default:"node"},defaultProtocol:{description:"Default resolution protocol used when resolving pure semver and tag ranges",type:ge.STRING,default:"npm:"},enableTransparentWorkspaces:{description:"If false, Yarn won't automatically resolve workspace dependencies unless they use the `workspace:` protocol",type:ge.BOOLEAN,default:!0},enableMirror:{description:"If true, the downloaded packages will be retrieved and stored in both the local and global folders",type:ge.BOOLEAN,default:!0},enableNetwork:{description:"If false, the package manager will refuse to use the network if required to",type:ge.BOOLEAN,default:!0},httpProxy:{description:"URL of the http proxy that must be used for outgoing http requests",type:ge.STRING,default:null},httpsProxy:{description:"URL of the http proxy that must be used for outgoing https requests",type:ge.STRING,default:null},unsafeHttpWhitelist:{description:"List of the hostnames for which http queries are allowed (glob patterns are supported)",type:ge.STRING,default:[],isArray:!0},httpTimeout:{description:"Timeout of each http request in milliseconds",type:ge.NUMBER,default:6e4},httpRetry:{description:"Retry times on http failure",type:ge.NUMBER,default:3},networkConcurrency:{description:"Maximal number of concurrent requests",type:ge.NUMBER,default:Infinity},networkSettings:{description:"Network settings per hostname (glob patterns are supported)",type:ge.MAP,valueDefinition:{description:"",type:ge.SHAPE,properties:{caFilePath:{description:"Path to file containing one or multiple Certificate Authority signing certificates",type:ge.ABSOLUTE_PATH,default:null},enableNetwork:{description:"If false, the package manager will refuse to use the network if required to",type:ge.BOOLEAN,default:null},httpProxy:{description:"URL of the http proxy that must be used for outgoing http requests",type:ge.STRING,default:null},httpsProxy:{description:"URL of the http proxy that must be used for outgoing https requests",type:ge.STRING,default:null}}}},caFilePath:{description:"A path to a file containing one or multiple Certificate Authority signing certificates",type:ge.ABSOLUTE_PATH,default:null},enableStrictSsl:{description:"If false, SSL certificate errors will be ignored",type:ge.BOOLEAN,default:!0},logFilters:{description:"Overrides for log levels",type:ge.SHAPE,isArray:!0,concatenateValues:!0,properties:{code:{description:"Code of the messages covered by this override",type:ge.STRING,default:void 0},text:{description:"Code of the texts covered by this override",type:ge.STRING,default:void 0},pattern:{description:"Code of the patterns covered by this override",type:ge.STRING,default:void 0},level:{description:"Log level override, set to null to remove override",type:ge.STRING,values:Object.values(Mn),isNullable:!0,default:void 0}}},enableTelemetry:{description:"If true, telemetry will be periodically sent, following the rules in https://yarnpkg.com/advanced/telemetry",type:ge.BOOLEAN,default:!0},telemetryInterval:{description:"Minimal amount of time between two telemetry uploads, in days",type:ge.NUMBER,default:7},telemetryUserId:{description:"If you desire to tell us which project you are, you can set this field. Completely optional and opt-in.",type:ge.STRING,default:null},enableScripts:{description:"If true, packages are allowed to have install scripts by default",type:ge.BOOLEAN,default:!0},enableImmutableCache:{description:"If true, the cache is reputed immutable and actions that would modify it will throw",type:ge.BOOLEAN,default:!1},checksumBehavior:{description:"Enumeration defining what to do when a checksum doesn't match expectations",type:ge.STRING,default:"throw"},packageExtensions:{description:"Map of package corrections to apply on the dependency tree",type:ge.MAP,valueDefinition:{description:"The extension that will be applied to any package whose version matches the specified range",type:ge.SHAPE,properties:{dependencies:{description:"The set of dependencies that must be made available to the current package in order for it to work properly",type:ge.MAP,valueDefinition:{description:"A range",type:ge.STRING}},peerDependencies:{description:"Inherited dependencies - the consumer of the package will be tasked to provide them",type:ge.MAP,valueDefinition:{description:"A semver range",type:ge.STRING}},peerDependenciesMeta:{description:"Extra information related to the dependencies listed in the peerDependencies field",type:ge.MAP,valueDefinition:{description:"The peerDependency meta",type:ge.SHAPE,properties:{optional:{description:"If true, the selected peer dependency will be marked as optional by the package manager and the consumer omitting it won't be reported as an error",type:ge.BOOLEAN,default:!1}}}}}}}};function uP(t,e,r,i,n){if(i.isArray||i.type===ge.ANY&&Array.isArray(r))return Array.isArray(r)?r.map((s,o)=>cP(t,`${e}[${o}]`,s,i,n)):String(r).split(/,/).map(s=>cP(t,e,s,i,n));if(Array.isArray(r))throw new Error(`Non-array configuration settings "${e}" cannot be an array`);return cP(t,e,r,i,n)}function cP(t,e,r,i,n){var a;switch(i.type){case ge.ANY:return r;case ge.SHAPE:return vDe(t,e,r,i,n);case ge.MAP:return FDe(t,e,r,i,n)}if(r===null&&!i.isNullable&&i.default!==null)throw new Error(`Non-nullable configuration settings "${e}" cannot be set to null`);if((a=i.values)==null?void 0:a.includes(r))return r;let o=(()=>{if(i.type===ge.BOOLEAN&&typeof r!="string")return eh(r);if(typeof r!="string")throw new Error(`Expected value (${r}) to be a string`);let l=TQ(r,{env:process.env});switch(i.type){case ge.ABSOLUTE_PATH:return B.resolve(n,L.toPortablePath(l));case ge.LOCATOR_LOOSE:return dA(l,!1);case ge.NUMBER:return parseInt(l);case ge.LOCATOR:return dA(l);case ge.BOOLEAN:return eh(l);default:return l}})();if(i.values&&!i.values.includes(o))throw new Error(`Invalid value, expected one of ${i.values.join(", ")}`);return o}function vDe(t,e,r,i,n){if(typeof r!="object"||Array.isArray(r))throw new me(`Object configuration settings "${e}" must be an object`);let s=gP(t,i,{ignoreArrays:!0});if(r===null)return s;for(let[o,a]of Object.entries(r)){let l=`${e}.${o}`;if(!i.properties[o])throw new me(`Unrecognized configuration settings found: ${e}.${o} - run "yarn config -v" to see the list of settings supported in Yarn`);s.set(o,uP(t,l,a,i.properties[o],n))}return s}function FDe(t,e,r,i,n){let s=new Map;if(typeof r!="object"||Array.isArray(r))throw new me(`Map configuration settings "${e}" must be an object`);if(r===null)return s;for(let[o,a]of Object.entries(r)){let l=i.normalizeKeys?i.normalizeKeys(o):o,c=`${e}['${l}']`,u=i.valueDefinition;s.set(l,uP(t,c,a,u,n))}return s}function gP(t,e,{ignoreArrays:r=!1}={}){switch(e.type){case ge.SHAPE:{if(e.isArray&&!r)return[];let i=new Map;for(let[n,s]of Object.entries(e.properties))i.set(n,gP(t,s));return i}break;case ge.MAP:return e.isArray&&!r?[]:new Map;case ge.ABSOLUTE_PATH:return e.default===null?null:t.projectCwd===null?B.isAbsolute(e.default)?B.normalize(e.default):e.isNullable?null:void 0:Array.isArray(e.default)?e.default.map(i=>B.resolve(t.projectCwd,i)):B.resolve(t.projectCwd,e.default);default:return e.default}}function VE(t,e,r){if(e.type===ge.SECRET&&typeof t=="string"&&r.hideSecrets)return kDe;if(e.type===ge.ABSOLUTE_PATH&&typeof t=="string"&&r.getNativePaths)return L.fromPortablePath(t);if(e.isArray&&Array.isArray(t)){let i=[];for(let n of t)i.push(VE(n,e,r));return i}if(e.type===ge.MAP&&t instanceof Map){let i=new Map;for(let[n,s]of t.entries())i.set(n,VE(s,e.valueDefinition,r));return i}if(e.type===ge.SHAPE&&t instanceof Map){let i=new Map;for(let[n,s]of t.entries()){let o=e.properties[n];i.set(n,VE(s,o,r))}return i}return t}function RDe(){let t={};for(let[e,r]of Object.entries(process.env))e=e.toLowerCase(),!!e.startsWith(WE)&&(e=(0,dz.default)(e.slice(WE.length)),t[e]=r);return t}function zE(){let t=`${WE}rc_filename`;for(let[e,r]of Object.entries(process.env))if(e.toLowerCase()===t&&typeof r=="string")return r;return aP}var Ca;(function(i){i[i.LOCKFILE=0]="LOCKFILE",i[i.MANIFEST=1]="MANIFEST",i[i.NONE=2]="NONE"})(Ca||(Ca={}));var co=class{constructor(e){this.projectCwd=null;this.plugins=new Map;this.settings=new Map;this.values=new Map;this.sources=new Map;this.invalid=new Map;this.packageExtensions=new Map;this.limits=new Map;this.startingCwd=e}static create(e,r,i){let n=new co(e);typeof r!="undefined"&&!(r instanceof Map)&&(n.projectCwd=r),n.importSettings(lP);let s=typeof i!="undefined"?i:r instanceof Map?r:new Map;for(let[o,a]of s)n.activatePlugin(o,a);return n}static async find(e,r,{lookup:i=0,strict:n=!0,usePath:s=!1,useRc:o=!0}={}){let a=RDe();delete a.rcFilename;let l=await co.findRcFiles(e),c=await co.findHomeRcFile();if(c){let y=l.find(w=>w.path===c.path);y?y.strict=!1:l.push(V(k({},c),{strict:!1}))}let u=({ignoreCwd:y,yarnPath:w,ignorePath:x,lockfileFilename:F})=>({ignoreCwd:y,yarnPath:w,ignorePath:x,lockfileFilename:F}),g=K=>{var v=K,{ignoreCwd:y,yarnPath:w,ignorePath:x,lockfileFilename:F}=v,N=Lr(v,["ignoreCwd","yarnPath","ignorePath","lockfileFilename"]);return N},h=new co(e);h.importSettings(u(lP)),h.useWithSource("",u(a),e,{strict:!1});for(let{path:y,cwd:w,data:x}of l)h.useWithSource(y,u(x),w,{strict:!1});if(s){let y=h.get("yarnPath"),w=h.get("ignorePath");if(y!==null&&!w)return h}let f=h.get("lockfileFilename"),p;switch(i){case 0:p=await co.findProjectCwd(e,f);break;case 1:p=await co.findProjectCwd(e,null);break;case 2:M.existsSync(B.join(e,"package.json"))?p=B.resolve(e):p=null;break}h.startingCwd=e,h.projectCwd=p,h.importSettings(g(lP));let m=new Map([["@@core",gz]]),I=y=>"default"in y?y.default:y;if(r!==null){for(let F of r.plugins.keys())m.set(F,I(r.modules.get(F)));let y=new Map;for(let F of pz())y.set(F,()=>Jl(F));for(let[F,N]of r.modules)y.set(F,()=>N);let w=new Set,x=async(F,N)=>{let{factory:K,name:v}=Jl(F);if(w.has(v))return;let J=new Map(y),oe=A=>{if(J.has(A))return J.get(A)();throw new me(`This plugin cannot access the package referenced via ${A} which is neither a builtin, nor an exposed entry`)},T=await ql(async()=>I(await K(oe)),A=>`${A} (when initializing ${v}, defined in ${N})`);y.set(v,()=>T),w.add(v),m.set(v,T)};if(a.plugins)for(let F of a.plugins.split(";")){let N=B.resolve(e,L.toPortablePath(F));await x(N,"")}for(let{path:F,cwd:N,data:K}of l)if(!!o&&!!Array.isArray(K.plugins))for(let v of K.plugins){let J=typeof v!="string"?v.path:v,oe=B.resolve(N,L.toPortablePath(J));await x(oe,F)}}for(let[y,w]of m)h.activatePlugin(y,w);h.useWithSource("",g(a),e,{strict:n});for(let{path:y,cwd:w,data:x,strict:F}of l)h.useWithSource(y,g(x),w,{strict:F!=null?F:n});return h.get("enableGlobalCache")&&(h.values.set("cacheFolder",`${h.get("globalFolder")}/cache`),h.sources.set("cacheFolder","")),await h.refreshPackageExtensions(),h}static async findRcFiles(e){let r=zE(),i=[],n=e,s=null;for(;n!==s;){s=n;let o=B.join(s,r);if(M.existsSync(o)){let a=await M.readFilePromise(o,"utf8"),l;try{l=Tr(a)}catch(c){let u="";throw a.match(/^\s+(?!-)[^:]+\s+\S+/m)&&(u=" (in particular, make sure you list the colons after each key name)"),new me(`Parse error when loading ${o}; please check it's proper Yaml${u}`)}i.push({path:o,cwd:s,data:l})}n=B.dirname(s)}return i}static async findHomeRcFile(){let e=zE(),r=Ng(),i=B.join(r,e);if(M.existsSync(i)){let n=await M.readFilePromise(i,"utf8"),s=Tr(n);return{path:i,cwd:r,data:s}}return null}static async findProjectCwd(e,r){let i=null,n=e,s=null;for(;n!==s;){if(s=n,M.existsSync(B.join(s,"package.json"))&&(i=s),r!==null){if(M.existsSync(B.join(s,r))){i=s;break}}else if(i!==null)break;n=B.dirname(s)}return i}static async updateConfiguration(e,r){let i=zE(),n=B.join(e,i),s=M.existsSync(n)?Tr(await M.readFilePromise(n,"utf8")):{},o=!1,a;if(typeof r=="function"){try{a=r(s)}catch{a=r({})}if(a===s)return}else{a=s;for(let l of Object.keys(r)){let c=s[l],u=r[l],g;if(typeof u=="function")try{g=u(c)}catch{g=u(void 0)}else g=u;c!==g&&(a[l]=g,o=!0)}if(!o)return}await M.changeFilePromise(n,ro(a),{automaticNewlines:!0})}static async updateHomeConfiguration(e){let r=Ng();return await co.updateConfiguration(r,e)}activatePlugin(e,r){this.plugins.set(e,r),typeof r.configuration!="undefined"&&this.importSettings(r.configuration)}importSettings(e){for(let[r,i]of Object.entries(e))if(i!=null){if(this.settings.has(r))throw new Error(`Cannot redefine settings "${r}"`);this.settings.set(r,i),this.values.set(r,gP(this,i))}}useWithSource(e,r,i,n){try{this.use(e,r,i,n)}catch(s){throw s.message+=` (in ${je(this,e,ve.PATH)})`,s}}use(e,r,i,{strict:n=!0,overwrite:s=!1}={}){for(let o of Object.keys(r)){if(typeof r[o]=="undefined"||o==="plugins"||e===""&&PDe.has(o))continue;if(o==="rcFilename")throw new me(`The rcFilename settings can only be set via ${`${WE}RC_FILENAME`.toUpperCase()}, not via a rc file`);let l=this.settings.get(o);if(!l){if(n)throw new me(`Unrecognized or legacy configuration settings found: ${o} - run "yarn config -v" to see the list of settings supported in Yarn`);this.invalid.set(o,e);continue}if(this.sources.has(o)&&!(s||l.type===ge.MAP||l.isArray&&l.concatenateValues))continue;let c;try{c=uP(this,o,r[o],l,i)}catch(u){throw u.message+=` in ${je(this,e,ve.PATH)}`,u}if(l.type===ge.MAP){let u=this.values.get(o);this.values.set(o,new Map(s?[...u,...c]:[...c,...u])),this.sources.set(o,`${this.sources.get(o)}, ${e}`)}else if(l.isArray&&l.concatenateValues){let u=this.values.get(o);this.values.set(o,s?[...u,...c]:[...c,...u]),this.sources.set(o,`${this.sources.get(o)}, ${e}`)}else this.values.set(o,c),this.sources.set(o,e)}}get(e){if(!this.values.has(e))throw new Error(`Invalid configuration key "${e}"`);return this.values.get(e)}getSpecial(e,{hideSecrets:r=!1,getNativePaths:i=!1}){let n=this.get(e),s=this.settings.get(e);if(typeof s=="undefined")throw new me(`Couldn't find a configuration settings named "${e}"`);return VE(n,s,{hideSecrets:r,getNativePaths:i})}getSubprocessStreams(e,{header:r,prefix:i,report:n}){let s,o,a=M.createWriteStream(e);if(this.get("enableInlineBuilds")){let l=n.createStreamReporter(`${i} ${je(this,"STDOUT","green")}`),c=n.createStreamReporter(`${i} ${je(this,"STDERR","red")}`);s=new oP.PassThrough,s.pipe(l),s.pipe(a),o=new oP.PassThrough,o.pipe(c),o.pipe(a)}else s=a,o=a,typeof r!="undefined"&&s.write(`${r} +`);return{stdout:s,stderr:o}}makeResolver(){let e=[];for(let r of this.plugins.values())for(let i of r.resolvers||[])e.push(new i);return new eu([new qE,new Ci,new nP,...e])}makeFetcher(){let e=[];for(let r of this.plugins.values())for(let i of r.fetchers||[])e.push(new i);return new iP([new Qf,new sP,...e])}getLinkers(){let e=[];for(let r of this.plugins.values())for(let i of r.linkers||[])e.push(new i);return e}async refreshPackageExtensions(){this.packageExtensions=new Map;let e=this.packageExtensions,r=(i,n,{userProvided:s=!1}={})=>{if(!Un(i.range))throw new Error("Only semver ranges are allowed as keys for the lockfileExtensions setting");let o=new We;o.load(n,{yamlCompatibilityMode:!0});let a=Gl(e,i.identHash),l=[];a.push([i.range,l]);let c={status:qr.Inactive,userProvided:s,parentDescriptor:i};for(let u of o.dependencies.values())l.push(V(k({},c),{type:Sr.Dependency,descriptor:u}));for(let u of o.peerDependencies.values())l.push(V(k({},c),{type:Sr.PeerDependency,descriptor:u}));for(let[u,g]of o.peerDependenciesMeta)for(let[h,f]of Object.entries(g))l.push(V(k({},c),{type:Sr.PeerDependencyMeta,selector:u,key:h,value:f}))};await this.triggerHook(i=>i.registerPackageExtensions,this,r);for(let[i,n]of this.get("packageExtensions"))r(Jo(i,!0),zC(n),{userProvided:!0})}normalizePackage(e){let r=mh(e);if(this.packageExtensions==null)throw new Error("refreshPackageExtensions has to be called before normalizing packages");let i=this.packageExtensions.get(e.identHash);if(typeof i!="undefined"){let s=e.version;if(s!==null){for(let[o,a]of i)if(!!rf(s,o))for(let l of a)switch(l.status===qr.Inactive&&(l.status=qr.Redundant),l.type){case Sr.Dependency:typeof r.dependencies.get(l.descriptor.identHash)=="undefined"&&(l.status=qr.Active,r.dependencies.set(l.descriptor.identHash,l.descriptor));break;case Sr.PeerDependency:typeof r.peerDependencies.get(l.descriptor.identHash)=="undefined"&&(l.status=qr.Active,r.peerDependencies.set(l.descriptor.identHash,l.descriptor));break;case Sr.PeerDependencyMeta:{let c=r.peerDependenciesMeta.get(l.selector);(typeof c=="undefined"||!Object.prototype.hasOwnProperty.call(c,l.key)||c[l.key]!==l.value)&&(l.status=qr.Active,Us(r.peerDependenciesMeta,l.selector,()=>({}))[l.key]=l.value)}break;default:MQ(l);break}}}let n=s=>s.scope?`${s.scope}__${s.name}`:`${s.name}`;for(let s of r.peerDependencies.values()){if(s.scope==="types")continue;let o=n(s),a=jo("types",o),l=pt(a);r.peerDependencies.has(a.identHash)||r.peerDependenciesMeta.has(l)||r.peerDependenciesMeta.set(l,{optional:!0})}for(let s of r.peerDependenciesMeta.keys()){let o=Si(s);r.peerDependencies.has(o.identHash)||r.peerDependencies.set(o.identHash,zt(o,"*"))}return r.dependencies=new Map(bi(r.dependencies,([,s])=>xi(s))),r.peerDependencies=new Map(bi(r.peerDependencies,([,s])=>xi(s))),r}getLimit(e){return Us(this.limits,e,()=>(0,Cz.default)(this.get(e)))}async triggerHook(e,...r){for(let i of this.plugins.values()){let n=i.hooks;if(!n)continue;let s=e(n);!s||await s(...r)}}async triggerMultipleHooks(e,r){for(let i of r)await this.triggerHook(e,...i)}async reduceHook(e,r,...i){let n=r;for(let s of this.plugins.values()){let o=s.hooks;if(!o)continue;let a=e(o);!a||(n=await a(n,...i))}return n}async firstHook(e,...r){for(let i of this.plugins.values()){let n=i.hooks;if(!n)continue;let s=e(n);if(!s)continue;let o=await s(...r);if(typeof o!="undefined")return o}return null}},le=co;le.telemetry=null;var Vi;(function(r){r[r.SCRIPT=0]="SCRIPT",r[r.SHELLCODE=1]="SHELLCODE"})(Vi||(Vi={}));var uo=class extends ci{constructor({configuration:e,stdout:r,suggestInstall:i=!0}){super();this.errorCount=0;Dh(this,{configuration:e}),this.configuration=e,this.stdout=r,this.suggestInstall=i}static async start(e,r){let i=new this(e);try{await r(i)}catch(n){i.reportExceptionOnce(n)}finally{await i.finalize()}return i}hasErrors(){return this.errorCount>0}exitCode(){return this.hasErrors()?1:0}reportCacheHit(e){}reportCacheMiss(e){}startTimerSync(e,r,i){return(typeof r=="function"?r:i)()}async startTimerPromise(e,r,i){return await(typeof r=="function"?r:i)()}async startCacheReport(e){return await e()}reportSeparator(){}reportInfo(e,r){}reportWarning(e,r){}reportError(e,r){this.errorCount+=1,this.stdout.write(`${je(this.configuration,"\u27A4","redBright")} ${this.formatNameWithHyperlink(e)}: ${r} +`)}reportProgress(e){let r=Promise.resolve().then(async()=>{for await(let{}of e);}),i=()=>{};return V(k({},r),{stop:i})}reportJson(e){}async finalize(){this.errorCount>0&&(this.stdout.write(` +`),this.stdout.write(`${je(this.configuration,"\u27A4","redBright")} Errors happened when preparing the environment required to run this command. +`),this.suggestInstall&&this.stdout.write(`${je(this.configuration,"\u27A4","redBright")} This might be caused by packages being missing from the lockfile, in which case running "yarn install" might help. +`))}formatNameWithHyperlink(e){return vS(e,{configuration:this.configuration,json:!1})}};var fy=te(require("crypto")),lV=te(e5()),py=te(aV()),cV=te(WI()),uV=te(Cr()),TP=te(require("util")),UP=te(require("v8")),HP=te(require("zlib"));var dve=[[/^(git(?:\+(?:https|ssh))?:\/\/.*(?:\.git)?)#(.*)$/,(t,e,r,i)=>`${r}#commit=${i}`],[/^https:\/\/((?:[^/]+?)@)?codeload\.github\.com\/([^/]+\/[^/]+)\/tar\.gz\/([0-9a-f]+)$/,(t,e,r="",i,n)=>`https://${r}github.com/${i}.git#commit=${n}`],[/^https:\/\/((?:[^/]+?)@)?github\.com\/([^/]+\/[^/]+?)(?:\.git)?#([0-9a-f]+)$/,(t,e,r="",i,n)=>`https://${r}github.com/${i}.git#commit=${n}`],[/^https?:\/\/[^/]+\/(?:[^/]+\/)*(?:@.+(?:\/|(?:%2f)))?([^/]+)\/(?:-|download)\/\1-[^/]+\.tgz(?:#|$)/,t=>`npm:${t}`],[/^https:\/\/npm\.pkg\.github\.com\/download\/(?:@[^/]+)\/(?:[^/]+)\/(?:[^/]+)\/(?:[0-9a-f]+)$/,t=>`npm:${t}`],[/^https:\/\/npm\.fontawesome\.com\/(?:@[^/]+)\/([^/]+)\/-\/([^/]+)\/\1-\2.tgz(?:#|$)/,t=>`npm:${t}`],[/^https?:\/\/(?:[^\\.]+)\.jfrog\.io\/.*\/(@[^/]+)\/([^/]+)\/-\/\1\/\2-(?:[.\d\w-]+)\.tgz(?:#|$)/,(t,e)=>Um({protocol:"npm:",source:null,selector:t,params:{__archiveUrl:e}})],[/^[^/]+\.tgz#[0-9a-f]+$/,t=>`npm:${t}`]],OP=class{constructor(){this.resolutions=null}async setup(e,{report:r}){let i=B.join(e.cwd,e.configuration.get("lockfileFilename"));if(!M.existsSync(i))return;let n=await M.readFilePromise(i,"utf8"),s=Tr(n);if(Object.prototype.hasOwnProperty.call(s,"__metadata"))return;let o=this.resolutions=new Map;for(let a of Object.keys(s)){let l=Bh(a);if(!l){r.reportWarning(z.YARN_IMPORT_FAILED,`Failed to parse the string "${a}" into a proper descriptor`);continue}Un(l.range)&&(l=zt(l,`npm:${l.range}`));let{version:c,resolved:u}=s[a];if(!u)continue;let g;for(let[f,p]of dve){let m=u.match(f);if(m){g=p(c,...m);break}}if(!g){r.reportWarning(z.YARN_IMPORT_FAILED,`${Tt(e.configuration,l)}: Only some patterns can be imported from legacy lockfiles (not "${u}")`);continue}let h=l;try{let f=rc(l.range),p=Bh(f.selector,!0);p&&(h=p)}catch{}o.set(l.descriptorHash,Ai(h,g))}}supportsDescriptor(e,r){return this.resolutions?this.resolutions.has(e.descriptorHash):!1}supportsLocator(e,r){return!1}shouldPersistResolution(e,r){throw new Error("Assertion failed: This resolver doesn't support resolving locators to packages")}bindDescriptor(e,r,i){return e}getResolutionDependencies(e,r){return[]}async getCandidates(e,r,i){if(!this.resolutions)throw new Error("Assertion failed: The resolution store should have been setup");let n=this.resolutions.get(e.descriptorHash);if(!n)throw new Error("Assertion failed: The resolution should have been registered");return[n]}async getSatisfying(e,r,i){return null}async resolve(e,r){throw new Error("Assertion failed: This resolver doesn't support resolving locators to packages")}};var hy=class{supportsDescriptor(e,r){return!!(r.project.storedResolutions.get(e.descriptorHash)||r.project.originalPackages.has(Km(e).locatorHash))}supportsLocator(e,r){return!!r.project.originalPackages.has(e.locatorHash)}shouldPersistResolution(e,r){throw new Error("The shouldPersistResolution method shouldn't be called on the lockfile resolver, which would always answer yes")}bindDescriptor(e,r,i){return e}getResolutionDependencies(e,r){return[]}async getCandidates(e,r,i){let n=i.project.originalPackages.get(Km(e).locatorHash);if(n)return[n];let s=i.project.storedResolutions.get(e.descriptorHash);if(!s)throw new Error("Expected the resolution to have been successful - resolution not found");if(n=i.project.originalPackages.get(s),!n)throw new Error("Expected the resolution to have been successful - package not found");return[n]}async getSatisfying(e,r,i){return null}async resolve(e,r){let i=r.project.originalPackages.get(e.locatorHash);if(!i)throw new Error("The lockfile resolver isn't meant to resolve packages - they should already have been stored into a cache");return i}};var KP=class{constructor(e){this.resolver=e}supportsDescriptor(e,r){return this.resolver.supportsDescriptor(e,r)}supportsLocator(e,r){return this.resolver.supportsLocator(e,r)}shouldPersistResolution(e,r){return this.resolver.shouldPersistResolution(e,r)}bindDescriptor(e,r,i){return this.resolver.bindDescriptor(e,r,i)}getResolutionDependencies(e,r){return this.resolver.getResolutionDependencies(e,r)}async getCandidates(e,r,i){throw new Ze(z.MISSING_LOCKFILE_ENTRY,`This package doesn't seem to be present in your lockfile; run "yarn install" to update the lockfile`)}async getSatisfying(e,r,i){throw new Ze(z.MISSING_LOCKFILE_ENTRY,`This package doesn't seem to be present in your lockfile; run "yarn install" to update the lockfile`)}async resolve(e,r){throw new Ze(z.MISSING_LOCKFILE_ENTRY,`This package doesn't seem to be present in your lockfile; run "yarn install" to update the lockfile`)}};var wr=class extends ci{reportCacheHit(e){}reportCacheMiss(e){}startTimerSync(e,r,i){return(typeof r=="function"?r:i)()}async startTimerPromise(e,r,i){return await(typeof r=="function"?r:i)()}async startCacheReport(e){return await e()}reportSeparator(){}reportInfo(e,r){}reportWarning(e,r){}reportError(e,r){}reportProgress(e){let r=Promise.resolve().then(async()=>{for await(let{}of e);}),i=()=>{};return V(k({},r),{stop:i})}reportJson(e){}async finalize(){}};var AV=te(ib());var Uf=class{constructor(e,{project:r}){this.workspacesCwds=new Set;this.dependencies=new Map;this.project=r,this.cwd=e}async setup(){this.manifest=M.existsSync(B.join(this.cwd,We.fileName))?await We.find(this.cwd):new We,this.relativeCwd=B.relative(this.project.cwd,this.cwd)||Ee.dot;let e=this.manifest.name?this.manifest.name:jo(null,`${this.computeCandidateName()}-${ai(this.relativeCwd).substr(0,6)}`),r=this.manifest.version?this.manifest.version:"0.0.0";this.locator=Ai(e,r),this.anchoredDescriptor=zt(this.locator,`${Ci.protocol}${this.relativeCwd}`),this.anchoredLocator=Ai(this.locator,`${Ci.protocol}${this.relativeCwd}`);let i=this.manifest.workspaceDefinitions.map(({pattern:s})=>s),n=await(0,AV.default)(i,{cwd:L.fromPortablePath(this.cwd),expandDirectories:!1,onlyDirectories:!0,onlyFiles:!1,ignore:["**/node_modules","**/.git","**/.yarn"]});n.sort();for(let s of n){let o=B.resolve(this.cwd,L.toPortablePath(s));M.existsSync(B.join(o,"package.json"))&&this.workspacesCwds.add(o)}}accepts(e){var o;let r=e.indexOf(":"),i=r!==-1?e.slice(0,r+1):null,n=r!==-1?e.slice(r+1):e;if(i===Ci.protocol&&B.normalize(n)===this.relativeCwd||i===Ci.protocol&&n==="*")return!0;let s=Un(n);return s?i===Ci.protocol?s.test((o=this.manifest.version)!=null?o:"0.0.0"):this.project.configuration.get("enableTransparentWorkspaces")&&this.manifest.version!==null?s.test(this.manifest.version):!1:!1}computeCandidateName(){return this.cwd===this.project.cwd?"root-workspace":`${B.basename(this.cwd)}`||"unnamed-workspace"}getRecursiveWorkspaceDependencies({dependencies:e=We.hardDependencies}={}){let r=new Set,i=n=>{for(let s of e)for(let o of n.manifest[s].values()){let a=this.project.tryWorkspaceByDescriptor(o);a===null||r.has(a)||(r.add(a),i(a))}};return i(this),r}getRecursiveWorkspaceChildren(){let e=[];for(let r of this.workspacesCwds){let i=this.project.workspacesByCwd.get(r);i&&e.push(i,...i.getRecursiveWorkspaceChildren())}return e}async persistManifest(){let e={};this.manifest.exportTo(e);let r=B.join(this.cwd,We.fileName),i=`${JSON.stringify(e,null,this.manifest.indent)} +`;await M.changeFilePromise(r,i,{automaticNewlines:!0}),this.manifest.raw=e}};var YP=4,Cve=1,mve=/ *, */g,gV=/\/$/,Ive=32,Eve=(0,TP.promisify)(HP.default.gzip),yve=(0,TP.promisify)(HP.default.gunzip),kr;(function(r){r.UpdateLockfile="update-lockfile",r.SkipBuild="skip-build"})(kr||(kr={}));var GP={restoreInstallersCustomData:["installersCustomData"],restoreResolutions:["accessibleLocators","optionalBuilds","storedDescriptors","storedResolutions","storedPackages","lockFileChecksum"],restoreBuildState:["storedBuildState"]},Fe=class{constructor(e,{configuration:r}){this.resolutionAliases=new Map;this.workspaces=[];this.workspacesByCwd=new Map;this.workspacesByIdent=new Map;this.storedResolutions=new Map;this.storedDescriptors=new Map;this.storedPackages=new Map;this.storedChecksums=new Map;this.storedBuildState=new Map;this.accessibleLocators=new Set;this.originalPackages=new Map;this.optionalBuilds=new Set;this.peerRequirements=new Map;this.installersCustomData=new Map;this.lockFileChecksum=null;this.installStateChecksum=null;this.configuration=r,this.cwd=e}static async find(e,r){var c,u,g;if(!e.projectCwd)throw new me(`No project found in ${r}`);let i=e.projectCwd,n=r,s=null;for(;s!==e.projectCwd;){if(s=n,M.existsSync(B.join(s,mt.manifest))){i=s;break}n=B.dirname(s)}let o=new Fe(e.projectCwd,{configuration:e});(c=le.telemetry)==null||c.reportProject(o.cwd),await o.setupResolutions(),await o.setupWorkspaces(),(u=le.telemetry)==null||u.reportWorkspaceCount(o.workspaces.length),(g=le.telemetry)==null||g.reportDependencyCount(o.workspaces.reduce((h,f)=>h+f.manifest.dependencies.size+f.manifest.devDependencies.size,0));let a=o.tryWorkspaceByCwd(i);if(a)return{project:o,workspace:a,locator:a.anchoredLocator};let l=await o.findLocatorForLocation(`${i}/`,{strict:!0});if(l)return{project:o,locator:l,workspace:null};throw new me(`The nearest package directory (${je(e,i,ve.PATH)}) doesn't seem to be part of the project declared in ${je(e,o.cwd,ve.PATH)}. + +- If the project directory is right, it might be that you forgot to list ${je(e,B.relative(o.cwd,i),ve.PATH)} as a workspace. +- If it isn't, it's likely because you have a yarn.lock or package.json file there, confusing the project root detection.`)}async setupResolutions(){this.storedResolutions=new Map,this.storedDescriptors=new Map,this.storedPackages=new Map,this.lockFileChecksum=null;let e=B.join(this.cwd,this.configuration.get("lockfileFilename")),r=this.configuration.get("defaultLanguageName");if(M.existsSync(e)){let i=await M.readFilePromise(e,"utf8");this.lockFileChecksum=ai(`${Cve}`,i);let n=Tr(i);if(n.__metadata){let s=n.__metadata.version,o=n.__metadata.cacheKey;for(let a of Object.keys(n)){if(a==="__metadata")continue;let l=n[a];if(typeof l.resolution=="undefined")throw new Error(`Assertion failed: Expected the lockfile entry to have a resolution field (${a})`);let c=dA(l.resolution,!0),u=new We;u.load(l,{yamlCompatibilityMode:!0});let g=u.version,h=u.languageName||r,f=l.linkType.toUpperCase(),p=u.dependencies,m=u.peerDependencies,I=u.dependenciesMeta,y=u.peerDependenciesMeta,w=u.bin;if(l.checksum!=null){let x=typeof o!="undefined"&&!l.checksum.includes("/")?`${o}/${l.checksum}`:l.checksum;this.storedChecksums.set(c.locatorHash,x)}if(s>=YP){let x=V(k({},c),{version:g,languageName:h,linkType:f,dependencies:p,peerDependencies:m,dependenciesMeta:I,peerDependenciesMeta:y,bin:w});this.originalPackages.set(x.locatorHash,x)}for(let x of a.split(mve)){let F=Jo(x);if(this.storedDescriptors.set(F.descriptorHash,F),s>=YP)this.storedResolutions.set(F.descriptorHash,c.locatorHash);else{let N=Tm(c);N.descriptorHash!==F.descriptorHash&&(this.storedDescriptors.set(N.descriptorHash,N),this.resolutionAliases.set(F.descriptorHash,N.descriptorHash))}}}}}}async setupWorkspaces(){this.workspaces=[],this.workspacesByCwd=new Map,this.workspacesByIdent=new Map;let e=[this.cwd];for(;e.length>0;){let r=e;e=[];for(let i of r){if(this.workspacesByCwd.has(i))continue;let n=await this.addWorkspace(i),s=this.storedPackages.get(n.anchoredLocator.locatorHash);s&&(n.dependencies=s.dependencies);for(let o of n.workspacesCwds)e.push(o)}}}async addWorkspace(e){let r=new Uf(e,{project:this});await r.setup();let i=this.workspacesByIdent.get(r.locator.identHash);if(typeof i!="undefined")throw new Error(`Duplicate workspace name ${mr(this.configuration,r.locator)}: ${L.fromPortablePath(e)} conflicts with ${L.fromPortablePath(i.cwd)}`);return this.workspaces.push(r),this.workspacesByCwd.set(e,r),this.workspacesByIdent.set(r.locator.identHash,r),r}get topLevelWorkspace(){return this.getWorkspaceByCwd(this.cwd)}tryWorkspaceByCwd(e){B.isAbsolute(e)||(e=B.resolve(this.cwd,e)),e=B.normalize(e).replace(/\/+$/,"");let r=this.workspacesByCwd.get(e);return r||null}getWorkspaceByCwd(e){let r=this.tryWorkspaceByCwd(e);if(!r)throw new Error(`Workspace not found (${e})`);return r}tryWorkspaceByFilePath(e){let r=null;for(let i of this.workspaces)B.relative(i.cwd,e).startsWith("../")||r&&r.cwd.length>=i.cwd.length||(r=i);return r||null}getWorkspaceByFilePath(e){let r=this.tryWorkspaceByFilePath(e);if(!r)throw new Error(`Workspace not found (${e})`);return r}tryWorkspaceByIdent(e){let r=this.workspacesByIdent.get(e.identHash);return typeof r=="undefined"?null:r}getWorkspaceByIdent(e){let r=this.tryWorkspaceByIdent(e);if(!r)throw new Error(`Workspace not found (${mr(this.configuration,e)})`);return r}tryWorkspaceByDescriptor(e){let r=this.tryWorkspaceByIdent(e);return r===null||(qo(e)&&(e=Ih(e)),!r.accepts(e.range))?null:r}getWorkspaceByDescriptor(e){let r=this.tryWorkspaceByDescriptor(e);if(r===null)throw new Error(`Workspace not found (${Tt(this.configuration,e)})`);return r}tryWorkspaceByLocator(e){let r=this.tryWorkspaceByIdent(e);return r===null||(os(e)&&(e=Eh(e)),r.locator.locatorHash!==e.locatorHash&&r.anchoredLocator.locatorHash!==e.locatorHash)?null:r}getWorkspaceByLocator(e){let r=this.tryWorkspaceByLocator(e);if(!r)throw new Error(`Workspace not found (${it(this.configuration,e)})`);return r}refreshWorkspaceDependencies(){for(let e of this.workspaces){let r=this.storedPackages.get(e.anchoredLocator.locatorHash);if(!r)throw new Error(`Assertion failed: Expected workspace ${Qh(this.configuration,e)} (${je(this.configuration,B.join(e.cwd,mt.manifest),ve.PATH)}) to have been resolved. Run "yarn install" to update the lockfile`);e.dependencies=new Map(r.dependencies)}}forgetResolution(e){let r=n=>{this.storedResolutions.delete(n),this.storedDescriptors.delete(n)},i=n=>{this.originalPackages.delete(n),this.storedPackages.delete(n),this.accessibleLocators.delete(n)};if("descriptorHash"in e){let n=this.storedResolutions.get(e.descriptorHash);r(e.descriptorHash);let s=new Set(this.storedResolutions.values());typeof n!="undefined"&&!s.has(n)&&i(n)}if("locatorHash"in e){i(e.locatorHash);for(let[n,s]of this.storedResolutions)s===e.locatorHash&&r(n)}}forgetTransientResolutions(){let e=this.configuration.makeResolver();for(let r of this.originalPackages.values()){let i;try{i=e.shouldPersistResolution(r,{project:this,resolver:e})}catch{i=!1}i||this.forgetResolution(r)}}forgetVirtualResolutions(){for(let e of this.storedPackages.values())for(let[r,i]of e.dependencies)qo(i)&&e.dependencies.set(r,Ih(i))}getDependencyMeta(e,r){let i={},s=this.topLevelWorkspace.manifest.dependenciesMeta.get(pt(e));if(!s)return i;let o=s.get(null);if(o&&Object.assign(i,o),r===null||!uV.default.valid(r))return i;for(let[a,l]of s)a!==null&&a===r&&Object.assign(i,l);return i}async findLocatorForLocation(e,{strict:r=!1}={}){let i=new wr,n=this.configuration.getLinkers(),s={project:this,report:i};for(let o of n){let a=await o.findPackageLocator(e,s);if(a){if(r&&(await o.findPackageLocation(a,s)).replace(gV,"")!==e.replace(gV,""))continue;return a}}return null}async resolveEverything(e){if(!this.workspacesByCwd||!this.workspacesByIdent)throw new Error("Workspaces must have been setup before calling this function");this.forgetVirtualResolutions(),e.lockfileOnly||this.forgetTransientResolutions();let r=e.resolver||this.configuration.makeResolver(),i=new OP;await i.setup(this,{report:e.report});let n=e.lockfileOnly?new eu([new hy,new KP(r)]):new eu([new hy,i,r]),s=this.configuration.makeFetcher(),o=e.lockfileOnly?{project:this,report:e.report,resolver:n}:{project:this,report:e.report,resolver:n,fetchOptions:{project:this,cache:e.cache,checksums:this.storedChecksums,report:e.report,fetcher:s}},a=new Map,l=new Map,c=new Map,u=new Map,g=new Map,h=new Map,f=[],p=async v=>{let J=await ql(async()=>await n.resolve(v,o),T=>`${it(this.configuration,v)}: ${T}`);if(!Ab(v,J))throw new Error(`Assertion failed: The locator cannot be changed by the resolver (went from ${it(this.configuration,v)} to ${it(this.configuration,J)})`);u.set(J.locatorHash,J);let oe=this.configuration.normalizePackage(J);for(let[T,A]of oe.dependencies){let W=await this.configuration.reduceHook(re=>re.reduceDependency,A,this,oe,A,{resolver:n,resolveOptions:o});if(!yh(A,W))throw new Error("Assertion failed: The descriptor ident cannot be changed through aliases");let ee=n.bindDescriptor(W,v,o);oe.dependencies.set(T,ee)}return f.push(Promise.all([...oe.dependencies.values()].map(T=>w(T)))),l.set(oe.locatorHash,oe),oe},m=async v=>{let J=g.get(v.locatorHash);if(typeof J!="undefined")return J;let oe=Promise.resolve().then(()=>p(v));return g.set(v.locatorHash,oe),oe},I=async(v,J)=>{let oe=await w(J);return a.set(v.descriptorHash,v),c.set(v.descriptorHash,oe.locatorHash),oe},y=async v=>{let J=this.resolutionAliases.get(v.descriptorHash);if(typeof J!="undefined")return I(v,this.storedDescriptors.get(J));let oe=n.getResolutionDependencies(v,o),T=new Map(await Promise.all(oe.map(async ee=>[ee.descriptorHash,await w(ee)]))),W=(await ql(async()=>await n.getCandidates(v,T,o),ee=>`${Tt(this.configuration,v)}: ${ee}`))[0];if(typeof W=="undefined")throw new Error(`${Tt(this.configuration,v)}: No candidates found`);return a.set(v.descriptorHash,v),c.set(v.descriptorHash,W.locatorHash),m(W)},w=v=>{let J=h.get(v.descriptorHash);if(typeof J!="undefined")return J;a.set(v.descriptorHash,v);let oe=Promise.resolve().then(()=>y(v));return h.set(v.descriptorHash,oe),oe};for(let v of this.workspaces){let J=v.anchoredDescriptor;f.push(w(J))}for(;f.length>0;){let v=[...f];f.length=0,await Promise.all(v)}let x=new Set(this.resolutionAliases.values()),F=new Set(l.keys()),N=new Set,K=new Map;Bve({project:this,report:e.report,accessibleLocators:N,volatileDescriptors:x,optionalBuilds:F,peerRequirements:K,allDescriptors:a,allResolutions:c,allPackages:l});for(let v of x)a.delete(v),c.delete(v);this.storedResolutions=c,this.storedDescriptors=a,this.storedPackages=l,this.accessibleLocators=N,this.originalPackages=u,this.optionalBuilds=F,this.peerRequirements=K,this.refreshWorkspaceDependencies()}async fetchEverything({cache:e,report:r,fetcher:i,mode:n}){let s=i||this.configuration.makeFetcher(),o={checksums:this.storedChecksums,project:this,cache:e,fetcher:s,report:r},a=Array.from(new Set(bi(this.storedResolutions.values(),[g=>{let h=this.storedPackages.get(g);if(!h)throw new Error("Assertion failed: The locator should have been registered");return gn(h)}])));n===kr.UpdateLockfile&&(a=a.filter(g=>!this.storedChecksums.has(g)));let l=!1,c=ci.progressViaCounter(a.length);r.reportProgress(c);let u=(0,cV.default)(Ive);if(await r.startCacheReport(async()=>{await Promise.all(a.map(g=>u(async()=>{let h=this.storedPackages.get(g);if(!h)throw new Error("Assertion failed: The locator should have been registered");if(os(h))return;let f;try{f=await s.fetch(h,o)}catch(p){p.message=`${it(this.configuration,h)}: ${p.message}`,r.reportExceptionOnce(p),l=p;return}f.checksum?this.storedChecksums.set(h.locatorHash,f.checksum):this.storedChecksums.delete(h.locatorHash),f.releaseFs&&f.releaseFs()}).finally(()=>{c.tick()})))}),l)throw l}async linkEverything({cache:e,report:r,fetcher:i,mode:n}){var oe;let s=i||this.configuration.makeFetcher(),o={checksums:this.storedChecksums,project:this,cache:e,fetcher:s,report:r,skipIntegrityCheck:!0},a=this.configuration.getLinkers(),l={project:this,report:r},c=new Map(a.map(T=>{let A=T.makeInstaller(l),W=A.getCustomDataKey(),ee=this.installersCustomData.get(W);return typeof ee!="undefined"&&A.attachCustomData(ee),[T,A]})),u=new Map,g=new Map,h=new Map,f=new Map(await Promise.all([...this.accessibleLocators].map(async T=>{let A=this.storedPackages.get(T);if(!A)throw new Error("Assertion failed: The locator should have been registered");return[T,await s.fetch(A,o)]})));for(let T of this.accessibleLocators){let A=this.storedPackages.get(T);if(typeof A=="undefined")throw new Error("Assertion failed: The locator should have been registered");let W=f.get(A.locatorHash);if(typeof W=="undefined")throw new Error("Assertion failed: The fetch result should have been registered");let ee=this.tryWorkspaceByLocator(A);if(ee!==null){let re=[],{scripts:H}=ee.manifest;for(let ke of["preinstall","install","postinstall"])H.has(ke)&&re.push([Vi.SCRIPT,ke]);try{for(let[ke,Le]of c)if(ke.supportsPackage(A,l)&&(await Le.installPackage(A,W)).buildDirective!==null)throw new Error("Assertion failed: Linkers can't return build directives for workspaces; this responsibility befalls to the Yarn core")}finally{W.releaseFs&&W.releaseFs()}let R=B.join(W.packageFs.getRealPath(),W.prefixPath);g.set(A.locatorHash,R),!os(A)&&re.length>0&&h.set(A.locatorHash,{directives:re,buildLocations:[R]})}else{let re=a.find(ke=>ke.supportsPackage(A,l));if(!re)throw new Ze(z.LINKER_NOT_FOUND,`${it(this.configuration,A)} isn't supported by any available linker`);let H=c.get(re);if(!H)throw new Error("Assertion failed: The installer should have been registered");let R;try{R=await H.installPackage(A,W)}finally{W.releaseFs&&W.releaseFs()}u.set(A.locatorHash,re),g.set(A.locatorHash,R.packageLocation),R.buildDirective&&R.packageLocation&&h.set(A.locatorHash,{directives:R.buildDirective,buildLocations:[R.packageLocation]})}}let p=new Map;for(let T of this.accessibleLocators){let A=this.storedPackages.get(T);if(!A)throw new Error("Assertion failed: The locator should have been registered");let W=this.tryWorkspaceByLocator(A)!==null,ee=async(re,H)=>{let R=g.get(A.locatorHash);if(typeof R=="undefined")throw new Error(`Assertion failed: The package (${it(this.configuration,A)}) should have been registered`);let ke=[];for(let Le of A.dependencies.values()){let qe=this.storedResolutions.get(Le.descriptorHash);if(typeof qe=="undefined")throw new Error(`Assertion failed: The resolution (${Tt(this.configuration,Le)}, from ${it(this.configuration,A)})should have been registered`);let Ke=this.storedPackages.get(qe);if(typeof Ke=="undefined")throw new Error(`Assertion failed: The package (${qe}, resolved from ${Tt(this.configuration,Le)}) should have been registered`);let ie=this.tryWorkspaceByLocator(Ke)===null?u.get(qe):null;if(typeof ie=="undefined")throw new Error(`Assertion failed: The package (${qe}, resolved from ${Tt(this.configuration,Le)}) should have been registered`);ie===re||W||ie===null?g.get(Ke.locatorHash)!==null&&ke.push([Le,Ke]):R!==null&&Gl(p,qe).push(R)}R!==null&&await H.attachInternalDependencies(A,ke)};if(W)for(let[re,H]of c)re.supportsPackage(A,l)&&await ee(re,H);else{let re=u.get(A.locatorHash);if(!re)throw new Error("Assertion failed: The linker should have been found");let H=c.get(re);if(!H)throw new Error("Assertion failed: The installer should have been registered");await ee(re,H)}}for(let[T,A]of p){let W=this.storedPackages.get(T);if(!W)throw new Error("Assertion failed: The package should have been registered");let ee=u.get(W.locatorHash);if(!ee)throw new Error("Assertion failed: The linker should have been found");let re=c.get(ee);if(!re)throw new Error("Assertion failed: The installer should have been registered");await re.attachExternalDependents(W,A)}let m=new Map;for(let T of c.values()){let A=await T.finalizeInstall();for(let W of(oe=A==null?void 0:A.records)!=null?oe:[])h.set(W.locatorHash,{directives:W.buildDirective,buildLocations:W.buildLocations});typeof(A==null?void 0:A.customData)!="undefined"&&m.set(T.getCustomDataKey(),A.customData)}if(this.installersCustomData=m,n===kr.SkipBuild)return;let I=new Set(this.storedPackages.keys()),y=new Set(h.keys());for(let T of y)I.delete(T);let w=(0,fy.createHash)("sha512");w.update(process.versions.node),await this.configuration.triggerHook(T=>T.globalHashGeneration,this,T=>{w.update("\0"),w.update(T)});let x=w.digest("hex"),F=new Map,N=T=>{let A=F.get(T.locatorHash);if(typeof A!="undefined")return A;let W=this.storedPackages.get(T.locatorHash);if(typeof W=="undefined")throw new Error("Assertion failed: The package should have been registered");let ee=(0,fy.createHash)("sha512");ee.update(T.locatorHash),F.set(T.locatorHash,"");for(let re of W.dependencies.values()){let H=this.storedResolutions.get(re.descriptorHash);if(typeof H=="undefined")throw new Error(`Assertion failed: The resolution (${Tt(this.configuration,re)}) should have been registered`);let R=this.storedPackages.get(H);if(typeof R=="undefined")throw new Error("Assertion failed: The package should have been registered");ee.update(N(R))}return A=ee.digest("hex"),F.set(T.locatorHash,A),A},K=(T,A)=>{let W=(0,fy.createHash)("sha512");W.update(x),W.update(N(T));for(let ee of A)W.update(ee);return W.digest("hex")},v=new Map,J=!1;for(;y.size>0;){let T=y.size,A=[];for(let W of y){let ee=this.storedPackages.get(W);if(!ee)throw new Error("Assertion failed: The package should have been registered");let re=!0;for(let ke of ee.dependencies.values()){let Le=this.storedResolutions.get(ke.descriptorHash);if(!Le)throw new Error(`Assertion failed: The resolution (${Tt(this.configuration,ke)}) should have been registered`);if(y.has(Le)){re=!1;break}}if(!re)continue;y.delete(W);let H=h.get(ee.locatorHash);if(!H)throw new Error("Assertion failed: The build directive should have been registered");let R=K(ee,H.buildLocations);if(this.storedBuildState.get(ee.locatorHash)===R){v.set(ee.locatorHash,R);continue}J||(await this.persistInstallStateFile(),J=!0),this.storedBuildState.has(ee.locatorHash)?r.reportInfo(z.MUST_REBUILD,`${it(this.configuration,ee)} must be rebuilt because its dependency tree changed`):r.reportInfo(z.MUST_BUILD,`${it(this.configuration,ee)} must be built because it never has been before or the last one failed`);for(let ke of H.buildLocations){if(!B.isAbsolute(ke))throw new Error(`Assertion failed: Expected the build location to be absolute (not ${ke})`);A.push((async()=>{for(let[Le,qe]of H.directives){let Ke=`# This file contains the result of Yarn building a package (${gn(ee)}) +`;switch(Le){case Vi.SCRIPT:Ke+=`# Script name: ${qe} +`;break;case Vi.SHELLCODE:Ke+=`# Script code: ${qe} +`;break}let ie=null;if(!await M.mktempPromise(async Se=>{let he=B.join(Se,"build.log"),{stdout:Ie,stderr:pe}=this.configuration.getSubprocessStreams(he,{header:Ke,prefix:it(this.configuration,ee),report:r}),Qe;try{switch(Le){case Vi.SCRIPT:Qe=await _I(ee,qe,[],{cwd:ke,project:this,stdin:ie,stdout:Ie,stderr:pe});break;case Vi.SHELLCODE:Qe=await RS(ee,qe,[],{cwd:ke,project:this,stdin:ie,stdout:Ie,stderr:pe});break}}catch(X){pe.write(X.stack),Qe=1}if(Ie.end(),pe.end(),Qe===0)return v.set(ee.locatorHash,R),!0;M.detachTemp(Se);let Z=`${it(this.configuration,ee)} couldn't be built successfully (exit code ${je(this.configuration,Qe,ve.NUMBER)}, logs can be found here: ${je(this.configuration,he,ve.PATH)})`;return this.optionalBuilds.has(ee.locatorHash)?(r.reportInfo(z.BUILD_FAILED,Z),v.set(ee.locatorHash,R),!0):(r.reportError(z.BUILD_FAILED,Z),!1)}))return}})())}}if(await Promise.all(A),T===y.size){let W=Array.from(y).map(ee=>{let re=this.storedPackages.get(ee);if(!re)throw new Error("Assertion failed: The package should have been registered");return it(this.configuration,re)}).join(", ");r.reportError(z.CYCLIC_DEPENDENCIES,`Some packages have circular dependencies that make their build order unsatisfiable - as a result they won't be built (affected packages are: ${W})`);break}}this.storedBuildState=v}async install(e){var a,l;let r=this.configuration.get("nodeLinker");(a=le.telemetry)==null||a.reportInstall(r),await e.report.startTimerPromise("Project validation",{skipIfEmpty:!0},async()=>{await this.configuration.triggerHook(c=>c.validateProject,this,{reportWarning:e.report.reportWarning.bind(e.report),reportError:e.report.reportError.bind(e.report)})});for(let c of this.configuration.packageExtensions.values())for(let[,u]of c)for(let g of u)g.status=qr.Inactive;let i=B.join(this.cwd,this.configuration.get("lockfileFilename")),n=null;if(e.immutable)try{n=await M.readFilePromise(i,"utf8")}catch(c){throw c.code==="ENOENT"?new Ze(z.FROZEN_LOCKFILE_EXCEPTION,"The lockfile would have been created by this install, which is explicitly forbidden."):c}await e.report.startTimerPromise("Resolution step",async()=>{await this.resolveEverything(e)}),await e.report.startTimerPromise("Post-resolution validation",{skipIfEmpty:!0},async()=>{for(let[,c]of this.configuration.packageExtensions)for(let[,u]of c)for(let g of u)if(g.userProvided){let h=je(this.configuration,g,ve.PACKAGE_EXTENSION);switch(g.status){case qr.Inactive:e.report.reportWarning(z.UNUSED_PACKAGE_EXTENSION,`${h}: No matching package in the dependency tree; you may not need this rule anymore.`);break;case qr.Redundant:e.report.reportWarning(z.REDUNDANT_PACKAGE_EXTENSION,`${h}: This rule seems redundant when applied on the original package; the extension may have been applied upstream.`);break}}if(n!==null){let c=kl(n,this.generateLockfile());if(c!==n){let u=(0,lV.structuredPatch)(i,i,n,c);e.report.reportSeparator();for(let g of u.hunks){e.report.reportInfo(null,`@@ -${g.oldStart},${g.oldLines} +${g.newStart},${g.newLines} @@`);for(let h of g.lines)h.startsWith("+")?e.report.reportError(z.FROZEN_LOCKFILE_EXCEPTION,je(this.configuration,h,ve.ADDED)):h.startsWith("-")?e.report.reportError(z.FROZEN_LOCKFILE_EXCEPTION,je(this.configuration,h,ve.REMOVED)):e.report.reportInfo(null,je(this.configuration,h,"grey"))}throw e.report.reportSeparator(),new Ze(z.FROZEN_LOCKFILE_EXCEPTION,"The lockfile would have been modified by this install, which is explicitly forbidden.")}}});for(let c of this.configuration.packageExtensions.values())for(let[,u]of c)for(let g of u)g.userProvided&&g.status===qr.Active&&((l=le.telemetry)==null||l.reportPackageExtension(oc(g,ve.PACKAGE_EXTENSION)));await e.report.startTimerPromise("Fetch step",async()=>{await this.fetchEverything(e),(typeof e.persistProject=="undefined"||e.persistProject)&&e.mode!==kr.UpdateLockfile&&await this.cacheCleanup(e)});let s=e.immutable?[...new Set(this.configuration.get("immutablePatterns"))].sort():[],o=await Promise.all(s.map(async c=>Nm(c,{cwd:this.cwd})));(typeof e.persistProject=="undefined"||e.persistProject)&&await this.persist(),await e.report.startTimerPromise("Link step",async()=>{if(e.mode===kr.UpdateLockfile){e.report.reportWarning(z.UPDATE_LOCKFILE_ONLY_SKIP_LINK,`Skipped due to ${je(this.configuration,"mode=update-lockfile",ve.CODE)}`);return}await this.linkEverything(e);let c=await Promise.all(s.map(async u=>Nm(u,{cwd:this.cwd})));for(let u=0;uc.afterAllInstalled,this,e)}generateLockfile(){let e=new Map;for(let[n,s]of this.storedResolutions.entries()){let o=e.get(s);o||e.set(s,o=new Set),o.add(n)}let r={};r.__metadata={version:YP};for(let[n,s]of e.entries()){let o=this.originalPackages.get(n);if(!o)continue;let a=[];for(let h of s){let f=this.storedDescriptors.get(h);if(!f)throw new Error("Assertion failed: The descriptor should have been registered");a.push(f)}let l=a.map(h=>xi(h)).sort().join(", "),c=new We;c.version=o.linkType===At.HARD?o.version:"0.0.0-use.local",c.languageName=o.languageName,c.dependencies=new Map(o.dependencies),c.peerDependencies=new Map(o.peerDependencies),c.dependenciesMeta=new Map(o.dependenciesMeta),c.peerDependenciesMeta=new Map(o.peerDependenciesMeta),c.bin=new Map(o.bin);let u,g=this.storedChecksums.get(o.locatorHash);if(typeof g!="undefined"){let h=g.indexOf("/");if(h===-1)throw new Error("Assertion failed: Expecte the checksum to reference its cache key");let f=g.slice(0,h),p=g.slice(h+1);typeof r.__metadata.cacheKey=="undefined"&&(r.__metadata.cacheKey=f),f===r.__metadata.cacheKey?u=p:u=g}r[l]=V(k({},c.exportTo({},{compatibilityMode:!1})),{linkType:o.linkType.toLowerCase(),resolution:gn(o),checksum:u})}return`${[`# This file is generated by running "yarn install" inside your project. `,`# Manual changes might be lost - proceed with caution! `].join("")} -`+Os(r)}async persistLockfile(){let e=w.join(this.cwd,this.configuration.get("lockfileFilename")),r=this.generateLockfile();await R.changeFilePromise(e,r,{automaticNewlines:!0})}async persistInstallStateFile(){let e=[];for(let o of Object.values(RP))e.push(...o);let r=EE.default(this,e),i=kP.default.serialize(r),n=_r(i);if(this.installStateChecksum===n)return;let s=this.configuration.get("installStatePath");await R.mkdirPromise(w.dirname(s),{recursive:!0}),await R.writeFilePromise(s,await kxe(i)),this.installStateChecksum=n}async restoreInstallState({restoreInstallersCustomData:e=!0,restoreResolutions:r=!0,restoreBuildState:i=!0}={}){let n=this.configuration.get("installStatePath");if(!R.existsSync(n)){r&&await this.applyLightResolution();return}let s=await vxe(await R.readFilePromise(n));this.installStateChecksum=_r(s);let o=kP.default.deserialize(s);e&&typeof o.installersCustomData!="undefined"&&(this.installersCustomData=o.installersCustomData),i&&Object.assign(this,EE.default(o,RP.restoreBuildState)),r&&(o.lockFileChecksum===this.lockFileChecksum?(Object.assign(this,EE.default(o,RP.restoreResolutions)),this.refreshWorkspaceDependencies()):await this.applyLightResolution())}async applyLightResolution(){await this.resolveEverything({lockfileOnly:!0,report:new mr}),await this.persistInstallStateFile()}async persist(){await this.persistLockfile();for(let e of this.workspacesByCwd.values())await e.persistManifest()}async cacheCleanup({cache:e,report:r}){let i=new Set([".gitignore"]);if(!VB(e.cwd,this.cwd)||!await R.existsPromise(e.cwd))return;let n=this.configuration.get("preferAggregateCacheInfo"),s=0,o=null;for(let a of await R.readdirPromise(e.cwd)){if(i.has(a))continue;let l=w.resolve(e.cwd,a);e.markedFiles.has(l)||(o=a,e.immutable?r.reportError(J.IMMUTABLE_CACHE,`${Ue(this.configuration,w.basename(l),"magenta")} appears to be unused and would be marked for deletion, but the cache is immutable`):(n?s+=1:r.reportInfo(J.UNUSED_CACHE_ENTRY,`${Ue(this.configuration,w.basename(l),"magenta")} appears to be unused - removing`),await R.removePromise(l)))}n&&s!==0&&r.reportInfo(J.UNUSED_CACHE_ENTRY,s>1?`${s} packages appeared to be unused and were removed`:`${o} appeared to be unused and was removed`),e.markedFiles.clear()}};function Fxe({project:t,allDescriptors:e,allResolutions:r,allPackages:i,accessibleLocators:n=new Set,optionalBuilds:s=new Set,volatileDescriptors:o=new Set,peerRequirements:a=new Map,report:l,tolerateMissingPackages:c=!1}){var re;let u=new Map,g=[],h=new Map,f=new Map,p=new Map,m=new Map,I=new Map,y=new Map(t.workspaces.map(F=>{let A=F.anchoredLocator.locatorHash,q=i.get(A);if(typeof q=="undefined"){if(c)return[A,null];throw new Error("Assertion failed: The workspace should have an associated package")}return[A,Mg(q)]})),B=()=>{let F=R.mktempSync(),A=w.join(F,"stacktrace.log"),q=String(g.length+1).length,Z=g.map(($,T)=>`${`${T+1}.`.padStart(q," ")} ${tn($)} -`).join("");throw R.writeFileSync(A,Z),R.detachTemp(F),new Ge(J.STACK_OVERFLOW_RESOLUTION,`Encountered a stack overflow when resolving peer dependencies; cf ${npath.fromPortablePath(A)}`)},P=F=>{let A=r.get(F.descriptorHash);if(typeof A=="undefined")throw new Error("Assertion failed: The resolution should have been registered");let q=i.get(A);if(!q)throw new Error("Assertion failed: The package could not be found");return q},k=(F,A,{top:q,optional:Z})=>{g.length>1e3&&B(),g.push(F);let $=N(F,A,{top:q,optional:Z});return g.pop(),$},N=(F,A,{top:q,optional:Z})=>{if(n.has(F.locatorHash))return;n.add(F.locatorHash),Z||s.delete(F.locatorHash);let $=i.get(F.locatorHash);if(!$){if(c)return;throw new Error(`Assertion failed: The package (${$e(t.configuration,F)}) should have been registered`)}let T=[],G=[],Qe=[],Pe=[],He=[];for(let ee of Array.from($.dependencies.values())){if($.peerDependencies.has(ee.identHash)&&$.locatorHash!==q)continue;if(So(ee))throw new Error("Assertion failed: Virtual packages shouldn't be encountered when virtualizing a branch");o.delete(ee.descriptorHash);let ne=Z;if(!ne){let ie=$.dependenciesMeta.get(gt(ee));if(typeof ie!="undefined"){let ae=ie.get(null);typeof ae!="undefined"&&ae.optional&&(ne=!0)}}let Ee=r.get(ee.descriptorHash);if(!Ee){if(c)continue;throw new Error(`Assertion failed: The resolution (${Rt(t.configuration,ee)}) should have been registered`)}let le=y.get(Ee)||i.get(Ee);if(!le)throw new Error(`Assertion failed: The package (${Ee}, resolved from ${Rt(t.configuration,ee)}) should have been registered`);if(le.peerDependencies.size===0){k(le,new Map,{top:q,optional:ne});continue}let fe=u.get(le.locatorHash);typeof fe=="number"&&fe>=2&&B();let ue,De,z=new Set,W;G.push(()=>{ue=_Q(ee,F.locatorHash),De=$Q(le,F.locatorHash),$.dependencies.delete(ee.identHash),$.dependencies.set(ue.identHash,ue),r.set(ue.descriptorHash,De.locatorHash),e.set(ue.descriptorHash,ue),i.set(De.locatorHash,De),T.push([le,ue,De])}),Qe.push(()=>{var ie;W=new Map;for(let ae of De.peerDependencies.values()){let me=$.dependencies.get(ae.identHash);if(!me&&Tg(F,ae)&&(me=zC(F),e.set(me.descriptorHash,me),r.set(me.descriptorHash,F.locatorHash),o.delete(me.descriptorHash)),!me&&De.dependencies.has(ae.identHash)){De.peerDependencies.delete(ae.identHash);continue}me||(me=Yt(ae,"missing:")),De.dependencies.set(me.identHash,me),So(me)&&Gr.getSetWithDefault(p,me.descriptorHash).add(De.locatorHash),h.set(me.identHash,me),me.range==="missing:"&&z.add(me.identHash),W.set(ae.identHash,(ie=A.get(ae.identHash))!=null?ie:De.locatorHash)}De.dependencies=new Map(Gr.sortMap(De.dependencies,([ae,me])=>gt(me)))}),Pe.push(()=>{if(!i.has(De.locatorHash))return;let ie=u.get(le.locatorHash),ae=typeof ie!="undefined"?ie+1:1;u.set(le.locatorHash,ae),k(De,W,{top:q,optional:ne}),u.set(le.locatorHash,ae-1)}),He.push(()=>{let ie=$.dependencies.get(ee.identHash);if(typeof ie=="undefined")throw new Error("Assertion failed: Expected the peer dependency to have been turned into a dependency");let ae=r.get(ie.descriptorHash);if(typeof ae=="undefined")throw new Error("Assertion failed: Expected the descriptor to be registered");if(Gr.getSetWithDefault(I,ae).add(F.locatorHash),!!i.has(De.locatorHash)){for(let me of De.peerDependencies.values()){let ot=W.get(me.identHash);if(typeof ot=="undefined")throw new Error("Assertion failed: Expected the peer dependency ident to be registered");Gr.getArrayWithDefault(Gr.getMapWithDefault(m,ot),gt(me)).push(De.locatorHash)}for(let me of z)De.dependencies.delete(me)}})}for(let ee of[...G,...Qe])ee();let Re;do{Re=!0;for(let[ee,ne,Ee]of T){if(!i.has(Ee.locatorHash))continue;let le=Gr.getMapWithDefault(f,ee.locatorHash),fe=_r(...[...Ee.dependencies.values()].map(W=>{let ie=W.range!=="missing:"?r.get(W.descriptorHash):"missing:";if(typeof ie=="undefined")throw new Error(`Assertion failed: Expected the resolution for ${Rt(t.configuration,W)} to have been registered`);return ie===q?`${ie} (top)`:ie}),ne.identHash),ue=le.get(fe);if(typeof ue=="undefined"){le.set(fe,ne);continue}if(ue===ne)continue;Re=!1,i.delete(Ee.locatorHash),e.delete(ne.descriptorHash),r.delete(ne.descriptorHash),n.delete(Ee.locatorHash);let De=p.get(ne.descriptorHash)||[],z=[$.locatorHash,...De];p.delete(ne.descriptorHash);for(let W of z){let ie=i.get(W);typeof ie!="undefined"&&ie.dependencies.set(ne.identHash,ue)}}}while(!Re);for(let ee of[...Pe,...He])ee()};for(let F of t.workspaces){let A=F.anchoredLocator;o.delete(F.anchoredDescriptor.descriptorHash),k(A,new Map,{top:A.locatorHash,optional:!1})}var O;(function(F){F[F.NotProvided=0]="NotProvided",F[F.NotCompatible=1]="NotCompatible"})(O||(O={}));let v=[];for(let[F,A]of I){let q=i.get(F);if(typeof q=="undefined")throw new Error("Assertion failed: Expected the root to be registered");let Z=m.get(F);if(typeof Z!="undefined")for(let $ of A){let T=i.get($);if(typeof T!="undefined")for(let[G,Qe]of Z){let Pe=di(G);if(T.peerDependencies.has(Pe.identHash))continue;let He=`p${_r($,G,F).slice(0,5)}`;a.set(He,{subject:$,requested:Pe,rootRequester:F,allRequesters:Qe});let Re=q.dependencies.get(Pe.identHash);if(typeof Re!="undefined"){let ne=(re=P(Re).version)!=null?re:"0.0.0",Ee=new Set;for(let fe of Qe){let ue=i.get(fe);if(typeof ue=="undefined")throw new Error("Assertion failed: Expected the link to be registered");let De=ue.peerDependencies.get(Pe.identHash);if(typeof De=="undefined")throw new Error("Assertion failed: Expected the ident to be registered");Ee.add(De.range)}[...Ee].every(fe=>yh(ne,fe))||v.push({type:1,subject:T,requested:Pe,requester:q,version:ne,hash:He,requirementCount:Qe.length})}else{let ee=q.peerDependenciesMeta.get(G);(ee==null?void 0:ee.optional)||v.push({type:0,subject:T,requested:Pe,requester:q,hash:He})}}}}let U=[F=>r0(F.subject),F=>gt(F.requested),F=>`${F.type}`];for(let F of Gr.sortMap(v,U))switch(F.type){case 0:l==null||l.reportWarning(J.MISSING_PEER_DEPENDENCY,`${$e(t.configuration,F.subject)} doesn't provide ${fr(t.configuration,F.requested)} (${Ue(t.configuration,F.hash,be.CODE)}), requested by ${fr(t.configuration,F.requester)}`);break;case 1:{let A=F.requirementCount>1?"and some of its descendants request":"requests";l==null||l.reportWarning(J.INCOMPATIBLE_PEER_DEPENDENCY,`${$e(t.configuration,F.subject)} provides ${fr(t.configuration,F.requested)} (${Ue(t.configuration,F.hash,be.CODE)}) with version ${Ug(t.configuration,F.version)}, which doesn't satisfy what ${fr(t.configuration,F.requester)} ${A}`)}break}v.length>0&&(l==null||l.reportWarning(J.UNNAMED,`Some peer dependencies are incorrectly met; run ${Ue(t.configuration,"yarn explain peer-requirements ",be.CODE)} for details, where ${Ue(t.configuration,"",be.CODE)} is the six-letter p-prefixed code`))}var LA=X(Zi()),ss;(function(t){t.VERSION="version",t.COMMAND_NAME="commandName",t.PLUGIN_NAME="pluginName",t.INSTALL_COUNT="installCount",t.PROJECT_COUNT="projectCount",t.WORKSPACE_COUNT="workspaceCount",t.DEPENDENCY_COUNT="dependencyCount",t.EXTENSION="packageExtension"})(ss||(ss={}));var of=class{constructor(e,r){this.values=new Map;this.hits=new Map;this.enumerators=new Map;this.configuration=e;let i=this.getRegistryPath();this.isNew=!R.existsSync(i),this.sendReport(r),this.startBuffer()}reportVersion(e){this.reportValue(ss.VERSION,e.replace(/-git\..*/,"-git"))}reportCommandName(e){this.reportValue(ss.COMMAND_NAME,e||"")}reportPluginName(e){this.reportValue(ss.PLUGIN_NAME,e)}reportProject(e){this.reportEnumerator(ss.PROJECT_COUNT,e)}reportInstall(e){this.reportHit(ss.INSTALL_COUNT,e)}reportPackageExtension(e){this.reportValue(ss.EXTENSION,e)}reportWorkspaceCount(e){this.reportValue(ss.WORKSPACE_COUNT,String(e))}reportDependencyCount(e){this.reportValue(ss.DEPENDENCY_COUNT,String(e))}reportValue(e,r){LA.getSetWithDefault(this.values,e).add(r)}reportEnumerator(e,r){LA.getSetWithDefault(this.enumerators,e).add(_r(r))}reportHit(e,r="*"){let i=LA.getMapWithDefault(this.hits,e),n=LA.getFactoryWithDefault(i,r,()=>0);i.set(r,n+1)}getRegistryPath(){let e=this.configuration.get("globalFolder");return w.join(e,"telemetry.json")}sendReport(e){var u,g,h;let r=this.getRegistryPath(),i;try{i=R.readJsonSync(r)}catch{i={}}let n=Date.now(),s=this.configuration.get("telemetryInterval")*24*60*60*1e3,a=((u=i.lastUpdate)!=null?u:n+s+Math.floor(s*Math.random()))+s;if(a>n&&i.lastUpdate!=null)return;try{R.mkdirSync(w.dirname(r),{recursive:!0}),R.writeJsonSync(r,{lastUpdate:n})}catch{return}if(a>n||!i.blocks)return;let l=`https://browser-http-intake.logs.datadoghq.eu/v1/input/${e}?ddsource=yarn`,c=f=>Db(l,f,{configuration:this.configuration}).catch(()=>{});for(let[f,p]of Object.entries((g=i.blocks)!=null?g:{})){if(Object.keys(p).length===0)continue;let m=p;m.userId=f,m.reportType="primary";for(let B of Object.keys((h=m.enumerators)!=null?h:{}))m.enumerators[B]=m.enumerators[B].length;c(m);let I=new Map,y=20;for(let[B,P]of Object.entries(m.values))P.length>0&&I.set(B,P.slice(0,y));for(;I.size>0;){let B={};B.userId=f,B.reportType="secondary",B.metrics={};for(let[P,k]of I)B.metrics[P]=k.shift(),k.length===0&&I.delete(P);c(B)}}}applyChanges(){var o,a,l,c,u,g,h,f,p;let e=this.getRegistryPath(),r;try{r=R.readJsonSync(e)}catch{r={}}let i=(o=this.configuration.get("telemetryUserId"))!=null?o:"*",n=r.blocks=(a=r.blocks)!=null?a:{},s=n[i]=(l=n[i])!=null?l:{};for(let m of this.hits.keys()){let I=s.hits=(c=s.hits)!=null?c:{},y=I[m]=(u=I[m])!=null?u:{};for(let[B,P]of this.hits.get(m))y[B]=((g=y[B])!=null?g:0)+P}for(let m of["values","enumerators"])for(let I of this[m].keys()){let y=s[m]=(h=s[m])!=null?h:{};y[I]=[...new Set([...(f=y[I])!=null?f:[],...(p=this[m].get(I))!=null?p:[]])]}R.mkdirSync(w.dirname(e),{recursive:!0}),R.writeJsonSync(e,r)}startBuffer(){process.on("exit",()=>{try{this.applyChanges()}catch{}})}};var LP=X(require("child_process")),N5=X(og());var MP=X(require("fs"));var Oc=new Map([["constraints",[["constraints","query"],["constraints","source"],["constraints"]]],["exec",[]],["interactive-tools",[["search"],["upgrade-interactive"]]],["stage",[["stage"]]],["typescript",[]],["version",[["version","apply"],["version","check"],["version"]]],["workspace-tools",[["workspaces","focus"],["workspaces","foreach"]]]]);function Rxe(t){let e=npath.fromPortablePath(t);process.on("SIGINT",()=>{}),e?LP.execFileSync(process.execPath,[e,...process.argv.slice(2)],{stdio:"inherit",env:{...process.env,YARN_IGNORE_PATH:"1",YARN_IGNORE_CWD:"1"}}):LP.execFileSync(e,process.argv.slice(2),{stdio:"inherit",env:{...process.env,YARN_IGNORE_PATH:"1",YARN_IGNORE_CWD:"1"}})}async function yE({binaryVersion:t,pluginConfiguration:e}){async function r(){let n=new jn({binaryLabel:"Yarn Package Manager",binaryName:"yarn",binaryVersion:t});try{await i(n)}catch(s){process.stdout.write(n.error(s)),process.exitCode=1}}async function i(n){var g,h,f,p,m;let s=process.versions.node,o=">=12 <14 || 14.2 - 14.9 || >14.10.0";if(process.env.YARN_IGNORE_NODE!=="1"&&!St.satisfiesWithPrereleases(s,o))throw new UsageError(`This tool requires a Node version compatible with ${o} (got ${s}). Upgrade Node, or set \`YARN_IGNORE_NODE=1\` in your environment.`);let a=await oe.find(npath.toPortablePath(process.cwd()),e,{usePath:!0,strict:!1}),l=a.get("yarnPath"),c=a.get("ignorePath"),u=a.get("ignoreCwd");if(!c&&!u&&l===npath.toPortablePath(npath.resolve(process.argv[1]))){process.env.YARN_IGNORE_PATH="1",process.env.YARN_IGNORE_CWD="1",await i(n);return}else if(l!==null&&!c)if(!R.existsSync(l))process.stdout.write(n.error(new Error(`The "yarn-path" option has been set (in ${a.sources.get("yarnPath")}), but the specified location doesn't exist (${l}).`))),process.exitCode=1;else try{Rxe(l)}catch(I){process.exitCode=I.code||1}else{c&&delete process.env.YARN_IGNORE_PATH,a.get("enableTelemetry")&&!N5.isCI&&process.stdout.isTTY&&(oe.telemetry=new of(a,"puba9cdc10ec5790a2cf4969dd413a47270")),(g=oe.telemetry)==null||g.reportVersion(t);for(let[P,k]of a.plugins.entries()){Oc.has((f=(h=P.match(/^@yarnpkg\/plugin-(.*)$/))==null?void 0:h[1])!=null?f:"")&&((p=oe.telemetry)==null||p.reportPluginName(P));for(let N of k.commands||[])n.register(N)}let y=n.process(process.argv.slice(2));y.help||(m=oe.telemetry)==null||m.reportCommandName(y.path.join(" "));let B=y.cwd;if(typeof B!="undefined"&&!u){let P=MP.realpathSync(process.cwd()),k=MP.realpathSync(B);if(P!==k){process.chdir(B),await r();return}}await n.runExit(y,{cwd:npath.toPortablePath(process.cwd()),plugins:e,quiet:!1,stdin:process.stdin,stdout:process.stdout,stderr:process.stderr})}}return r().catch(n=>{process.stdout.write(n.stack||n.message),process.exitCode=1}).finally(()=>R.rmtempPromise())}function O5(t){t.Command.Path=(...e)=>r=>{r.paths=r.paths||[],r.paths.push(e)};for(let e of["Array","Boolean","String","Proxy","Rest","Counter"])t.Command[e]=(...r)=>(i,n)=>{let s=t.Option[e](...r);Object.defineProperty(i,`__${n}`,{configurable:!1,enumerable:!0,get(){return s},set(o){this[n]=o}})};return t}var kf={};We(kf,{BaseCommand:()=>Ce,WorkspaceRequiredError:()=>Xe,getDynamicLibs:()=>ZX,getPluginConfiguration:()=>_E,main:()=>yE,openWorkspace:()=>Xc,pluginCommands:()=>Oc});var Ce=class extends ce{constructor(){super(...arguments);this.cwd=j.String("--cwd",{hidden:!0})}};var Xe=class extends UsageError{constructor(e,r){let i=w.relative(e,r),n=w.join(e,je.fileName);super(`This command can only be run from within a workspace of your project (${i} isn't a workspace of ${n}).`)}};var KNe=X(hr()),UNe=X(Qo()),HNe=X(Rx()),ZX=()=>new Map([["@yarnpkg/cli",kf],["@yarnpkg/core",af],["@yarnpkg/fslib",tg],["@yarnpkg/libzip",Ah],["@yarnpkg/parsers",ph],["@yarnpkg/shell",Ch],["clipanion",fg],["semver",KNe],["typanion",UNe],["yup",HNe]]);async function Xc(t,e){let{project:r,workspace:i}=await ke.find(t,e);if(!i)throw new Xe(r.cwd,e);return i}var Hqe=X(hr()),Yqe=X(Qo()),jqe=X(Rx());var Bk={};We(Bk,{dedupeUtils:()=>oy,default:()=>SUe,suggestUtils:()=>oy});var bee=X(og());var n_=X(Lf());var oy={};We(oy,{Modifier:()=>qA,Strategy:()=>tr,Target:()=>Vt,applyModifier:()=>r_,extractDescriptorFromPath:()=>nk,extractRangeModifier:()=>t_,fetchDescriptorFrom:()=>ik,findProjectDescriptors:()=>i_,getModifier:()=>Mf,getSuggestedDescriptors:()=>Nf});var rk=X(hr()),Vt;(function(t){t.REGULAR="dependencies",t.DEVELOPMENT="devDependencies",t.PEER="peerDependencies"})(Vt||(Vt={}));var qA;(function(t){t.CARET="^",t.TILDE="~",t.EXACT=""})(qA||(qA={}));var tr;(function(t){t.KEEP="keep",t.REUSE="reuse",t.PROJECT="project",t.LATEST="latest",t.CACHE="cache"})(tr||(tr={}));function Mf(t,e){return t.exact?qA.EXACT:t.caret?qA.CARET:t.tilde?qA.TILDE:e.configuration.get("defaultSemverRangePrefix")}var sTe=/^([\^~]?)[0-9]+(?:\.[0-9]+){0,2}(?:-\S+)?$/;function t_(t,{project:e}){let r=t.match(sTe);return r?r[1]:e.configuration.get("defaultSemverRangePrefix")}function r_(t,e){let{protocol:r,source:i,params:n,selector:s}=b.parseRange(t.range);return rk.default.valid(s)&&(s=`${e}${t.range}`),b.makeDescriptor(t,b.makeRange({protocol:r,source:i,params:n,selector:s}))}async function i_(t,{project:e,target:r}){let i=new Map,n=s=>{let o=i.get(s.descriptorHash);return o||i.set(s.descriptorHash,o={descriptor:s,locators:[]}),o};for(let s of e.workspaces)if(r===Vt.PEER){let o=s.manifest.peerDependencies.get(t.identHash);o!==void 0&&n(o).locators.push(s.locator)}else{let o=s.manifest.dependencies.get(t.identHash),a=s.manifest.devDependencies.get(t.identHash);r===Vt.DEVELOPMENT?a!==void 0?n(a).locators.push(s.locator):o!==void 0&&n(o).locators.push(s.locator):o!==void 0?n(o).locators.push(s.locator):a!==void 0&&n(a).locators.push(s.locator)}return i}async function nk(t,{cwd:e,workspace:r}){return await oTe(async i=>{w.isAbsolute(t)||(t=w.relative(r.cwd,w.resolve(e,t)),t.match(/^\.{0,2}\//)||(t=`./${t}`));let{project:n}=r,s=await ik(b.makeIdent(null,"archive"),t,{project:r.project,cache:i,workspace:r});if(!s)throw new Error("Assertion failed: The descriptor should have been found");let o=new mr,a=n.configuration.makeResolver(),l=n.configuration.makeFetcher(),c={checksums:n.storedChecksums,project:n,cache:i,fetcher:l,report:o,resolver:a},u=a.bindDescriptor(s,r.anchoredLocator,c),g=b.convertDescriptorToLocator(u),h=await l.fetch(g,c),f=await je.find(h.prefixPath,{baseFs:h.packageFs});if(!f.name)throw new Error("Target path doesn't have a name");return b.makeDescriptor(f.name,t)})}async function Nf(t,{project:e,workspace:r,cache:i,target:n,modifier:s,strategies:o,maxResults:a=Infinity}){if(!(a>=0))throw new Error(`Invalid maxResults (${a})`);if(t.range!=="unknown")return{suggestions:[{descriptor:t,name:`Use ${b.prettyDescriptor(e.configuration,t)}`,reason:"(unambiguous explicit request)"}],rejections:[]};let l=typeof r!="undefined"&&r!==null&&r.manifest[n].get(t.identHash)||null,c=[],u=[],g=async h=>{try{await h()}catch(f){u.push(f)}};for(let h of o){if(c.length>=a)break;switch(h){case tr.KEEP:await g(async()=>{l&&c.push({descriptor:l,name:`Keep ${b.prettyDescriptor(e.configuration,l)}`,reason:"(no changes)"})});break;case tr.REUSE:await g(async()=>{for(let{descriptor:f,locators:p}of(await i_(t,{project:e,target:n})).values()){if(p.length===1&&p[0].locatorHash===r.anchoredLocator.locatorHash&&o.includes(tr.KEEP))continue;let m=`(originally used by ${b.prettyLocator(e.configuration,p[0])}`;m+=p.length>1?` and ${p.length-1} other${p.length>2?"s":""})`:")",c.push({descriptor:f,name:`Reuse ${b.prettyDescriptor(e.configuration,f)}`,reason:m})}});break;case tr.CACHE:await g(async()=>{for(let f of e.storedDescriptors.values())f.identHash===t.identHash&&c.push({descriptor:f,name:`Reuse ${b.prettyDescriptor(e.configuration,f)}`,reason:"(already used somewhere in the lockfile)"})});break;case tr.PROJECT:await g(async()=>{if(r.manifest.name!==null&&t.identHash===r.manifest.name.identHash)return;let f=e.tryWorkspaceByIdent(t);f!==null&&c.push({descriptor:f.anchoredDescriptor,name:`Attach ${b.prettyWorkspace(e.configuration,f)}`,reason:`(local workspace at ${f.cwd})`})});break;case tr.LATEST:await g(async()=>{if(t.range!=="unknown")c.push({descriptor:t,name:`Use ${b.prettyRange(e.configuration,t.range)}`,reason:"(explicit range requested)"});else if(n===Vt.PEER)c.push({descriptor:b.makeDescriptor(t,"*"),name:"Use *",reason:"(catch-all peer dependency pattern)"});else if(!e.configuration.get("enableNetwork"))c.push({descriptor:null,name:"Resolve from latest",reason:se.pretty(e.configuration,"(unavailable because enableNetwork is toggled off)","grey")});else{let f=await ik(t,"latest",{project:e,cache:i,workspace:r,preserveModifier:!1});f&&(f=r_(f,s),c.push({descriptor:f,name:`Use ${b.prettyDescriptor(e.configuration,f)}`,reason:"(resolved from latest)"}))}});break}}return{suggestions:c.slice(0,a),rejections:u.slice(0,a)}}async function ik(t,e,{project:r,cache:i,workspace:n,preserveModifier:s=!0}){let o=b.makeDescriptor(t,e),a=new mr,l=r.configuration.makeFetcher(),c=r.configuration.makeResolver(),u={project:r,fetcher:l,cache:i,checksums:r.storedChecksums,report:a,skipIntegrityCheck:!0},g={...u,resolver:c,fetchOptions:u},h=c.bindDescriptor(o,n.anchoredLocator,g),f=await c.getCandidates(h,new Map,g);if(f.length===0)return null;let p=f[0],{protocol:m,source:I,params:y,selector:B}=b.parseRange(b.convertToManifestRange(p.reference));if(m===r.configuration.get("defaultProtocol")&&(m=null),rk.default.valid(B)&&s!==!1){let P=typeof s=="string"?s:o.range;B=t_(P,{project:r})+B}return b.makeDescriptor(p,b.makeRange({protocol:m,source:I,params:y,selector:B}))}async function oTe(t){return await R.mktempPromise(async e=>{let r=oe.create(e);return r.useWithSource(e,{enableMirror:!1,compressionLevel:0},e,{overwrite:!0}),await t(new lt(e,{configuration:r,check:!1,immutable:!1}))})}var Of=class extends Ce{constructor(){super(...arguments);this.json=j.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"});this.exact=j.Boolean("-E,--exact",!1,{description:"Don't use any semver modifier on the resolved range"});this.tilde=j.Boolean("-T,--tilde",!1,{description:"Use the `~` semver modifier on the resolved range"});this.caret=j.Boolean("-C,--caret",!1,{description:"Use the `^` semver modifier on the resolved range"});this.dev=j.Boolean("-D,--dev",!1,{description:"Add a package as a dev dependency"});this.peer=j.Boolean("-P,--peer",!1,{description:"Add a package as a peer dependency"});this.optional=j.Boolean("-O,--optional",!1,{description:"Add / upgrade a package to an optional regular / peer dependency"});this.preferDev=j.Boolean("--prefer-dev",!1,{description:"Add / upgrade a package to a dev dependency"});this.interactive=j.Boolean("-i,--interactive",!1,{description:"Reuse the specified package from other workspaces in the project"});this.cached=j.Boolean("--cached",!1,{description:"Reuse the highest version already used somewhere within the project"});this.packages=j.Rest()}async execute(){var m;let e=await oe.find(this.context.cwd,this.context.plugins),{project:r,workspace:i}=await ke.find(e,this.context.cwd),n=await lt.find(e);if(!i)throw new Xe(r.cwd,this.context.cwd);await r.restoreInstallState({restoreResolutions:!1});let s=(m=this.interactive)!=null?m:e.get("preferInteractive"),o=Mf(this,r),a=[...s?[tr.REUSE]:[],tr.PROJECT,...this.cached?[tr.CACHE]:[],tr.LATEST],l=s?Infinity:1,c=await Promise.all(this.packages.map(async I=>{let y=I.match(/^\.{0,2}\//)?await nk(I,{cwd:this.context.cwd,workspace:i}):b.parseDescriptor(I),B=aTe(i,y,{dev:this.dev,peer:this.peer,preferDev:this.preferDev,optional:this.optional}),P=await Nf(y,{project:r,workspace:i,cache:n,target:B,modifier:o,strategies:a,maxResults:l});return[y,P,B]})),u=await zs.start({configuration:e,stdout:this.context.stdout,suggestInstall:!1},async I=>{for(let[y,{suggestions:B,rejections:P}]of c)if(B.filter(N=>N.descriptor!==null).length===0){let[N]=P;if(typeof N=="undefined")throw new Error("Assertion failed: Expected an error to have been set");r.configuration.get("enableNetwork")?I.reportError(J.CANT_SUGGEST_RESOLUTIONS,`${b.prettyDescriptor(e,y)} can't be resolved to a satisfying range`):I.reportError(J.CANT_SUGGEST_RESOLUTIONS,`${b.prettyDescriptor(e,y)} can't be resolved to a satisfying range (note: network resolution has been disabled)`),I.reportSeparator(),I.reportExceptionOnce(N)}});if(u.hasErrors())return u.exitCode();let g=!1,h=[],f=[];for(let[,{suggestions:I},y]of c){let B,P=I.filter(v=>v.descriptor!==null),k=P[0].descriptor,N=P.every(v=>b.areDescriptorsEqual(v.descriptor,k));P.length===1||N?B=k:(g=!0,{answer:B}=await n_.prompt({type:"select",name:"answer",message:"Which range do you want to use?",choices:I.map(({descriptor:v,name:U,reason:re})=>v?{name:U,hint:re,descriptor:v}:{name:U,hint:re,disabled:!0}),onCancel:()=>process.exit(130),result(v){return this.find(v,"descriptor")},stdin:this.context.stdin,stdout:this.context.stdout}));let O=i.manifest[y].get(B.identHash);(typeof O=="undefined"||O.descriptorHash!==B.descriptorHash)&&(i.manifest[y].set(B.identHash,B),this.optional&&(y==="dependencies"?i.manifest.ensureDependencyMeta({...B,range:"unknown"}).optional=!0:y==="peerDependencies"&&(i.manifest.ensurePeerDependencyMeta({...B,range:"unknown"}).optional=!0)),typeof O=="undefined"?h.push([i,y,B,a]):f.push([i,y,O,B]))}return await e.triggerMultipleHooks(I=>I.afterWorkspaceDependencyAddition,h),await e.triggerMultipleHooks(I=>I.afterWorkspaceDependencyReplacement,f),g&&this.context.stdout.write(` -`),(await we.start({configuration:e,json:this.json,stdout:this.context.stdout,includeLogs:!this.context.quiet},async I=>{await r.install({cache:n,report:I})})).exitCode()}};Of.paths=[["add"]],Of.usage=ce.Usage({description:"add dependencies to the project",details:"\n This command adds a package to the package.json for the nearest workspace.\n\n - If it didn't exist before, the package will by default be added to the regular `dependencies` field, but this behavior can be overriden thanks to the `-D,--dev` flag (which will cause the dependency to be added to the `devDependencies` field instead) and the `-P,--peer` flag (which will do the same but for `peerDependencies`).\n\n - If the package was already listed in your dependencies, it will by default be upgraded whether it's part of your `dependencies` or `devDependencies` (it won't ever update `peerDependencies`, though).\n\n - If set, the `--prefer-dev` flag will operate as a more flexible `-D,--dev` in that it will add the package to your `devDependencies` if it isn't already listed in either `dependencies` or `devDependencies`, but it will also happily upgrade your `dependencies` if that's what you already use (whereas `-D,--dev` would throw an exception).\n\n - If set, the `-O,--optional` flag will add the package to the `optionalDependencies` field and, in combination with the `-P,--peer` flag, it will add the package as an optional peer dependency. If the package was already listed in your `dependencies`, it will be upgraded to `optionalDependencies`. If the package was already listed in your `peerDependencies`, in combination with the `-P,--peer` flag, it will be upgraded to an optional peer dependency: `\"peerDependenciesMeta\": { \"\": { \"optional\": true } }`\n\n - If the added package doesn't specify a range at all its `latest` tag will be resolved and the returned version will be used to generate a new semver range (using the `^` modifier by default unless otherwise configured via the `defaultSemverRangePrefix` configuration, or the `~` modifier if `-T,--tilde` is specified, or no modifier at all if `-E,--exact` is specified). Two exceptions to this rule: the first one is that if the package is a workspace then its local version will be used, and the second one is that if you use `-P,--peer` the default range will be `*` and won't be resolved at all.\n\n - If the added package specifies a range (such as `^1.0.0`, `latest`, or `rc`), Yarn will add this range as-is in the resulting package.json entry (in particular, tags such as `rc` will be encoded as-is rather than being converted into a semver range).\n\n If the `--cached` option is used, Yarn will preferably reuse the highest version already used somewhere within the project, even if through a transitive dependency.\n\n If the `-i,--interactive` option is used (or if the `preferInteractive` settings is toggled on) the command will first try to check whether other workspaces in the project use the specified package and, if so, will offer to reuse them.\n\n For a compilation of all the supported protocols, please consult the dedicated page from our website: https://yarnpkg.com/features/protocols.\n ",examples:[["Add a regular package to the current workspace","$0 add lodash"],["Add a specific version for a package to the current workspace","$0 add lodash@1.2.3"],["Add a package from a GitHub repository (the master branch) to the current workspace using a URL","$0 add lodash@https://github.com/lodash/lodash"],["Add a package from a GitHub repository (the master branch) to the current workspace using the GitHub protocol","$0 add lodash@github:lodash/lodash"],["Add a package from a GitHub repository (the master branch) to the current workspace using the GitHub protocol (shorthand)","$0 add lodash@lodash/lodash"],["Add a package from a specific branch of a GitHub repository to the current workspace using the GitHub protocol (shorthand)","$0 add lodash-es@lodash/lodash#es"]]});var s_=Of;function aTe(t,e,{dev:r,peer:i,preferDev:n,optional:s}){let o=t.manifest[Vt.REGULAR].has(e.identHash),a=t.manifest[Vt.DEVELOPMENT].has(e.identHash),l=t.manifest[Vt.PEER].has(e.identHash);if((r||i)&&o)throw new UsageError(`Package "${b.prettyIdent(t.project.configuration,e)}" is already listed as a regular dependency - remove the -D,-P flags or remove it from your dependencies first`);if(!r&&!i&&l)throw new UsageError(`Package "${b.prettyIdent(t.project.configuration,e)}" is already listed as a peer dependency - use either of -D or -P, or remove it from your peer dependencies first`);if(s&&a)throw new UsageError(`Package "${b.prettyIdent(t.project.configuration,e)}" is already listed as a dev dependency - remove the -O flag or remove it from your dev dependencies first`);if(s&&!i&&l)throw new UsageError(`Package "${b.prettyIdent(t.project.configuration,e)}" is already listed as a peer dependency - remove the -O flag or add the -P flag or remove it from your peer dependencies first`);if((r||n)&&s)throw new UsageError(`Package "${b.prettyIdent(t.project.configuration,e)}" cannot simultaneously be a dev dependency and an optional dependency`);return i?Vt.PEER:r||n?Vt.DEVELOPMENT:o?Vt.REGULAR:a?Vt.DEVELOPMENT:Vt.REGULAR}var Tf=class extends Ce{constructor(){super(...arguments);this.verbose=j.Boolean("-v,--verbose",!1,{description:"Print both the binary name and the locator of the package that provides the binary"});this.json=j.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"});this.name=j.String({required:!1})}async execute(){let e=await oe.find(this.context.cwd,this.context.plugins),{project:r,locator:i}=await ke.find(e,this.context.cwd);if(await r.restoreInstallState(),this.name){let o=(await Et.getPackageAccessibleBinaries(i,{project:r})).get(this.name);if(!o)throw new UsageError(`Couldn't find a binary named "${this.name}" for package "${b.prettyLocator(e,i)}"`);let[,a]=o;return this.context.stdout.write(`${a} -`),0}return(await we.start({configuration:e,json:this.json,stdout:this.context.stdout},async s=>{let o=await Et.getPackageAccessibleBinaries(i,{project:r}),l=Array.from(o.keys()).reduce((c,u)=>Math.max(c,u.length),0);for(let[c,[u,g]]of o)s.reportJson({name:c,source:b.stringifyIdent(u),path:g});if(this.verbose)for(let[c,[u]]of o)s.reportInfo(null,`${c.padEnd(l," ")} ${b.prettyLocator(e,u)}`);else for(let c of o.keys())s.reportInfo(null,c)})).exitCode()}};Tf.paths=[["bin"]],Tf.usage=ce.Usage({description:"get the path to a binary script",details:` +`+ro(r)}async persistLockfile(){let e=B.join(this.cwd,this.configuration.get("lockfileFilename")),r=this.generateLockfile();await M.changeFilePromise(e,r,{automaticNewlines:!0})}async persistInstallStateFile(){let e=[];for(let o of Object.values(GP))e.push(...o);let r=(0,py.default)(this,e),i=UP.default.serialize(r),n=ai(i);if(this.installStateChecksum===n)return;let s=this.configuration.get("installStatePath");await M.mkdirPromise(B.dirname(s),{recursive:!0}),await M.writeFilePromise(s,await Eve(i)),this.installStateChecksum=n}async restoreInstallState({restoreInstallersCustomData:e=!0,restoreResolutions:r=!0,restoreBuildState:i=!0}={}){let n=this.configuration.get("installStatePath");if(!M.existsSync(n)){r&&await this.applyLightResolution();return}let s=await yve(await M.readFilePromise(n));this.installStateChecksum=ai(s);let o=UP.default.deserialize(s);e&&typeof o.installersCustomData!="undefined"&&(this.installersCustomData=o.installersCustomData),i&&Object.assign(this,(0,py.default)(o,GP.restoreBuildState)),r&&(o.lockFileChecksum===this.lockFileChecksum?(Object.assign(this,(0,py.default)(o,GP.restoreResolutions)),this.refreshWorkspaceDependencies()):await this.applyLightResolution())}async applyLightResolution(){await this.resolveEverything({lockfileOnly:!0,report:new wr}),await this.persistInstallStateFile()}async persist(){await this.persistLockfile();for(let e of this.workspacesByCwd.values())await e.persistManifest()}async cacheCleanup({cache:e,report:r}){let i=new Set([".gitignore"]);if(!Jw(e.cwd,this.cwd)||!await M.existsPromise(e.cwd))return;let n=this.configuration.get("preferAggregateCacheInfo"),s=0,o=null;for(let a of await M.readdirPromise(e.cwd)){if(i.has(a))continue;let l=B.resolve(e.cwd,a);e.markedFiles.has(l)||(o=a,e.immutable?r.reportError(z.IMMUTABLE_CACHE,`${je(this.configuration,B.basename(l),"magenta")} appears to be unused and would be marked for deletion, but the cache is immutable`):(n?s+=1:r.reportInfo(z.UNUSED_CACHE_ENTRY,`${je(this.configuration,B.basename(l),"magenta")} appears to be unused - removing`),await M.removePromise(l)))}n&&s!==0&&r.reportInfo(z.UNUSED_CACHE_ENTRY,s>1?`${s} packages appeared to be unused and were removed`:`${o} appeared to be unused and was removed`),e.markedFiles.clear()}};function Bve({project:t,allDescriptors:e,allResolutions:r,allPackages:i,accessibleLocators:n=new Set,optionalBuilds:s=new Set,volatileDescriptors:o=new Set,peerRequirements:a=new Map,report:l,tolerateMissingPackages:c=!1}){var oe;let u=new Map,g=[],h=new Map,f=new Map,p=new Map,m=new Map,I=new Map,y=new Map(t.workspaces.map(T=>{let A=T.anchoredLocator.locatorHash,W=i.get(A);if(typeof W=="undefined"){if(c)return[A,null];throw new Error("Assertion failed: The workspace should have an associated package")}return[A,mh(W)]})),w=()=>{let T=M.mktempSync(),A=B.join(T,"stacktrace.log"),W=String(g.length+1).length,ee=g.map((re,H)=>`${`${H+1}.`.padStart(W," ")} ${gn(re)} +`).join("");throw M.writeFileSync(A,ee),M.detachTemp(T),new Ze(z.STACK_OVERFLOW_RESOLUTION,`Encountered a stack overflow when resolving peer dependencies; cf ${L.fromPortablePath(A)}`)},x=T=>{let A=r.get(T.descriptorHash);if(typeof A=="undefined")throw new Error("Assertion failed: The resolution should have been registered");let W=i.get(A);if(!W)throw new Error("Assertion failed: The package could not be found");return W},F=(T,A,{top:W,optional:ee})=>{g.length>1e3&&w(),g.push(T);let re=N(T,A,{top:W,optional:ee});return g.pop(),re},N=(T,A,{top:W,optional:ee})=>{if(n.has(T.locatorHash))return;n.add(T.locatorHash),ee||s.delete(T.locatorHash);let re=i.get(T.locatorHash);if(!re){if(c)return;throw new Error(`Assertion failed: The package (${it(t.configuration,T)}) should have been registered`)}let H=[],R=[],ke=[],Le=[],qe=[];for(let ie of Array.from(re.dependencies.values())){if(re.peerDependencies.has(ie.identHash)&&re.locatorHash!==W)continue;if(qo(ie))throw new Error("Assertion failed: Virtual packages shouldn't be encountered when virtualizing a branch");o.delete(ie.descriptorHash);let ce=ee;if(!ce){let ae=re.dependenciesMeta.get(pt(ie));if(typeof ae!="undefined"){let ue=ae.get(null);typeof ue!="undefined"&&ue.optional&&(ce=!0)}}let Se=r.get(ie.descriptorHash);if(!Se){if(c)continue;throw new Error(`Assertion failed: The resolution (${Tt(t.configuration,ie)}) should have been registered`)}let he=y.get(Se)||i.get(Se);if(!he)throw new Error(`Assertion failed: The package (${Se}, resolved from ${Tt(t.configuration,ie)}) should have been registered`);if(he.peerDependencies.size===0){F(he,new Map,{top:W,optional:ce});continue}let Ie=u.get(he.locatorHash);typeof Ie=="number"&&Ie>=2&&w();let pe,Qe,Z=new Set,X;R.push(()=>{pe=ob(ie,T.locatorHash),Qe=ab(he,T.locatorHash),re.dependencies.delete(ie.identHash),re.dependencies.set(pe.identHash,pe),r.set(pe.descriptorHash,Qe.locatorHash),e.set(pe.descriptorHash,pe),i.set(Qe.locatorHash,Qe),H.push([he,pe,Qe])}),ke.push(()=>{var ae;X=new Map;for(let ue of Qe.peerDependencies.values()){let we=re.dependencies.get(ue.identHash);if(!we&&yh(T,ue)&&(we=Tm(T),e.set(we.descriptorHash,we),r.set(we.descriptorHash,T.locatorHash),o.delete(we.descriptorHash)),(!we||we.range==="missing:")&&Qe.dependencies.has(ue.identHash)){Qe.peerDependencies.delete(ue.identHash);continue}we||(we=zt(ue,"missing:")),Qe.dependencies.set(we.identHash,we),qo(we)&&iA(p,we.descriptorHash).add(Qe.locatorHash),h.set(we.identHash,we),we.range==="missing:"&&Z.add(we.identHash),X.set(ue.identHash,(ae=A.get(ue.identHash))!=null?ae:Qe.locatorHash)}Qe.dependencies=new Map(bi(Qe.dependencies,([ue,we])=>pt(we)))}),Le.push(()=>{if(!i.has(Qe.locatorHash))return;let ae=u.get(he.locatorHash),ue=typeof ae!="undefined"?ae+1:1;u.set(he.locatorHash,ue),F(Qe,X,{top:W,optional:ce}),u.set(he.locatorHash,ue-1)}),qe.push(()=>{let ae=re.dependencies.get(ie.identHash);if(typeof ae=="undefined")throw new Error("Assertion failed: Expected the peer dependency to have been turned into a dependency");let ue=r.get(ae.descriptorHash);if(typeof ue=="undefined")throw new Error("Assertion failed: Expected the descriptor to be registered");if(iA(I,ue).add(T.locatorHash),!!i.has(Qe.locatorHash)){for(let we of Qe.peerDependencies.values()){let lt=X.get(we.identHash);if(typeof lt=="undefined")throw new Error("Assertion failed: Expected the peer dependency ident to be registered");Gl(jl(m,lt),pt(we)).push(Qe.locatorHash)}for(let we of Z)Qe.dependencies.delete(we)}})}for(let ie of[...R,...ke])ie();let Ke;do{Ke=!0;for(let[ie,ce,Se]of H){if(!i.has(Se.locatorHash))continue;let he=jl(f,ie.locatorHash),Ie=ai(...[...Se.dependencies.values()].map(X=>{let ae=X.range!=="missing:"?r.get(X.descriptorHash):"missing:";if(typeof ae=="undefined")throw new Error(`Assertion failed: Expected the resolution for ${Tt(t.configuration,X)} to have been registered`);return ae===W?`${ae} (top)`:ae}),ce.identHash),pe=he.get(Ie);if(typeof pe=="undefined"){he.set(Ie,ce);continue}if(pe===ce)continue;Ke=!1,i.delete(Se.locatorHash),e.delete(ce.descriptorHash),r.delete(ce.descriptorHash),n.delete(Se.locatorHash);let Qe=p.get(ce.descriptorHash)||[],Z=[re.locatorHash,...Qe];p.delete(ce.descriptorHash);for(let X of Z){let ae=i.get(X);typeof ae!="undefined"&&ae.dependencies.set(ce.identHash,pe)}}}while(!Ke);for(let ie of[...Le,...qe])ie()};for(let T of t.workspaces){let A=T.anchoredLocator;o.delete(T.anchoredDescriptor.descriptorHash),F(A,new Map,{top:A.locatorHash,optional:!1})}var K;(function(W){W[W.NotProvided=0]="NotProvided",W[W.NotCompatible=1]="NotCompatible"})(K||(K={}));let v=[];for(let[T,A]of I){let W=i.get(T);if(typeof W=="undefined")throw new Error("Assertion failed: Expected the root to be registered");let ee=m.get(T);if(typeof ee!="undefined")for(let re of A){let H=i.get(re);if(typeof H!="undefined")for(let[R,ke]of ee){let Le=Si(R);if(H.peerDependencies.has(Le.identHash))continue;let qe=`p${ai(re,R,T).slice(0,5)}`;a.set(qe,{subject:re,requested:Le,rootRequester:T,allRequesters:ke});let Ke=W.dependencies.get(Le.identHash);if(typeof Ke!="undefined"){let ce=(oe=x(Ke).version)!=null?oe:"0.0.0",Se=new Set;for(let Ie of ke){let pe=i.get(Ie);if(typeof pe=="undefined")throw new Error("Assertion failed: Expected the link to be registered");let Qe=pe.peerDependencies.get(Le.identHash);if(typeof Qe=="undefined")throw new Error("Assertion failed: Expected the ident to be registered");Se.add(Qe.range)}[...Se].every(Ie=>rf(ce,Ie))||v.push({type:1,subject:H,requested:Le,requester:W,version:ce,hash:qe,requirementCount:ke.length})}else{let ie=W.peerDependenciesMeta.get(R);(ie==null?void 0:ie.optional)||v.push({type:0,subject:H,requested:Le,requester:W,hash:qe})}}}}let J=[T=>cb(T.subject),T=>pt(T.requested),T=>`${T.type}`];for(let T of bi(v,J))switch(T.type){case 0:l==null||l.reportWarning(z.MISSING_PEER_DEPENDENCY,`${it(t.configuration,T.subject)} doesn't provide ${mr(t.configuration,T.requested)} (${je(t.configuration,T.hash,ve.CODE)}), requested by ${mr(t.configuration,T.requester)}`);break;case 1:{let A=T.requirementCount>1?"and some of its descendants request":"requests";l==null||l.reportWarning(z.INCOMPATIBLE_PEER_DEPENDENCY,`${it(t.configuration,T.subject)} provides ${mr(t.configuration,T.requested)} (${je(t.configuration,T.hash,ve.CODE)}) with version ${wh(t.configuration,T.version)}, which doesn't satisfy what ${mr(t.configuration,T.requester)} ${A}`)}break}v.length>0&&(l==null||l.reportWarning(z.UNNAMED,`Some peer dependencies are incorrectly met; run ${je(t.configuration,"yarn explain peer-requirements ",ve.CODE)} for details, where ${je(t.configuration,"",ve.CODE)} is the six-letter p-prefixed code`))}var ms;(function(l){l.VERSION="version",l.COMMAND_NAME="commandName",l.PLUGIN_NAME="pluginName",l.INSTALL_COUNT="installCount",l.PROJECT_COUNT="projectCount",l.WORKSPACE_COUNT="workspaceCount",l.DEPENDENCY_COUNT="dependencyCount",l.EXTENSION="packageExtension"})(ms||(ms={}));var Hf=class{constructor(e,r){this.values=new Map;this.hits=new Map;this.enumerators=new Map;this.configuration=e;let i=this.getRegistryPath();this.isNew=!M.existsSync(i),this.sendReport(r),this.startBuffer()}reportVersion(e){this.reportValue(ms.VERSION,e.replace(/-git\..*/,"-git"))}reportCommandName(e){this.reportValue(ms.COMMAND_NAME,e||"")}reportPluginName(e){this.reportValue(ms.PLUGIN_NAME,e)}reportProject(e){this.reportEnumerator(ms.PROJECT_COUNT,e)}reportInstall(e){this.reportHit(ms.INSTALL_COUNT,e)}reportPackageExtension(e){this.reportValue(ms.EXTENSION,e)}reportWorkspaceCount(e){this.reportValue(ms.WORKSPACE_COUNT,String(e))}reportDependencyCount(e){this.reportValue(ms.DEPENDENCY_COUNT,String(e))}reportValue(e,r){iA(this.values,e).add(r)}reportEnumerator(e,r){iA(this.enumerators,e).add(ai(r))}reportHit(e,r="*"){let i=jl(this.hits,e),n=Us(i,r,()=>0);i.set(r,n+1)}getRegistryPath(){let e=this.configuration.get("globalFolder");return B.join(e,"telemetry.json")}sendReport(e){var u,g,h;let r=this.getRegistryPath(),i;try{i=M.readJsonSync(r)}catch{i={}}let n=Date.now(),s=this.configuration.get("telemetryInterval")*24*60*60*1e3,a=((u=i.lastUpdate)!=null?u:n+s+Math.floor(s*Math.random()))+s;if(a>n&&i.lastUpdate!=null)return;try{M.mkdirSync(B.dirname(r),{recursive:!0}),M.writeJsonSync(r,{lastUpdate:n})}catch{return}if(a>n||!i.blocks)return;let l=`https://browser-http-intake.logs.datadoghq.eu/v1/input/${e}?ddsource=yarn`,c=f=>RD(l,f,{configuration:this.configuration}).catch(()=>{});for(let[f,p]of Object.entries((g=i.blocks)!=null?g:{})){if(Object.keys(p).length===0)continue;let m=p;m.userId=f,m.reportType="primary";for(let w of Object.keys((h=m.enumerators)!=null?h:{}))m.enumerators[w]=m.enumerators[w].length;c(m);let I=new Map,y=20;for(let[w,x]of Object.entries(m.values))x.length>0&&I.set(w,x.slice(0,y));for(;I.size>0;){let w={};w.userId=f,w.reportType="secondary",w.metrics={};for(let[x,F]of I)w.metrics[x]=F.shift(),F.length===0&&I.delete(x);c(w)}}}applyChanges(){var o,a,l,c,u,g,h,f,p;let e=this.getRegistryPath(),r;try{r=M.readJsonSync(e)}catch{r={}}let i=(o=this.configuration.get("telemetryUserId"))!=null?o:"*",n=r.blocks=(a=r.blocks)!=null?a:{},s=n[i]=(l=n[i])!=null?l:{};for(let m of this.hits.keys()){let I=s.hits=(c=s.hits)!=null?c:{},y=I[m]=(u=I[m])!=null?u:{};for(let[w,x]of this.hits.get(m))y[w]=((g=y[w])!=null?g:0)+x}for(let m of["values","enumerators"])for(let I of this[m].keys()){let y=s[m]=(h=s[m])!=null?h:{};y[I]=[...new Set([...(f=y[I])!=null?f:[],...(p=this[m].get(I))!=null?p:[]])]}M.mkdirSync(B.dirname(e),{recursive:!0}),M.writeJsonSync(e,r)}startBuffer(){process.on("exit",()=>{try{this.applyChanges()}catch{}})}};var jP=te(require("child_process")),hV=te(Tg());var qP=te(require("fs"));var hu=new Map([["constraints",[["constraints","query"],["constraints","source"],["constraints"]]],["exec",[]],["interactive-tools",[["search"],["upgrade-interactive"]]],["stage",[["stage"]]],["typescript",[]],["version",[["version","apply"],["version","check"],["version"]]],["workspace-tools",[["workspaces","focus"],["workspaces","foreach"]]]]);function wve(t){let e=L.fromPortablePath(t);process.on("SIGINT",()=>{}),e?(0,jP.execFileSync)(process.execPath,[e,...process.argv.slice(2)],{stdio:"inherit",env:V(k({},process.env),{YARN_IGNORE_PATH:"1",YARN_IGNORE_CWD:"1"})}):(0,jP.execFileSync)(e,process.argv.slice(2),{stdio:"inherit",env:V(k({},process.env),{YARN_IGNORE_PATH:"1",YARN_IGNORE_CWD:"1"})})}async function dy({binaryVersion:t,pluginConfiguration:e}){async function r(){let n=new rs({binaryLabel:"Yarn Package Manager",binaryName:"yarn",binaryVersion:t});try{await i(n)}catch(s){process.stdout.write(n.error(s)),process.exitCode=1}}async function i(n){var p,m,I,y,w;let s=process.versions.node,o=">=12 <14 || 14.2 - 14.9 || >14.10.0";if(process.env.YARN_IGNORE_NODE!=="1"&&!kt.satisfiesWithPrereleases(s,o))throw new me(`This tool requires a Node version compatible with ${o} (got ${s}). Upgrade Node, or set \`YARN_IGNORE_NODE=1\` in your environment.`);let a=await le.find(L.toPortablePath(process.cwd()),e,{usePath:!0,strict:!1}),l=a.get("yarnPath"),c=a.get("ignorePath"),u=a.get("ignoreCwd"),g=L.toPortablePath(L.resolve(process.argv[1])),h=x=>M.readFilePromise(x).catch(()=>Buffer.of());if(!c&&!u&&await(async()=>l===g||Buffer.compare(...await Promise.all([h(l),h(g)]))===0)()){process.env.YARN_IGNORE_PATH="1",process.env.YARN_IGNORE_CWD="1",await i(n);return}else if(l!==null&&!c)if(!M.existsSync(l))process.stdout.write(n.error(new Error(`The "yarn-path" option has been set (in ${a.sources.get("yarnPath")}), but the specified location doesn't exist (${l}).`))),process.exitCode=1;else try{wve(l)}catch(x){process.exitCode=x.code||1}else{c&&delete process.env.YARN_IGNORE_PATH,a.get("enableTelemetry")&&!hV.isCI&&process.stdout.isTTY&&(le.telemetry=new Hf(a,"puba9cdc10ec5790a2cf4969dd413a47270")),(p=le.telemetry)==null||p.reportVersion(t);for(let[K,v]of a.plugins.entries()){hu.has((I=(m=K.match(/^@yarnpkg\/plugin-(.*)$/))==null?void 0:m[1])!=null?I:"")&&((y=le.telemetry)==null||y.reportPluginName(K));for(let J of v.commands||[])n.register(J)}let F=n.process(process.argv.slice(2));F.help||(w=le.telemetry)==null||w.reportCommandName(F.path.join(" "));let N=F.cwd;if(typeof N!="undefined"&&!u){let K=(0,qP.realpathSync)(process.cwd()),v=(0,qP.realpathSync)(N);if(K!==v){process.chdir(N),await r();return}}await n.runExit(F,{cwd:L.toPortablePath(process.cwd()),plugins:e,quiet:!1,stdin:process.stdin,stdout:process.stdout,stderr:process.stderr})}}return r().catch(n=>{process.stdout.write(n.stack||n.message),process.exitCode=1}).finally(()=>M.rmtempPromise())}function fV(t){t.Command.Path=(...e)=>r=>{r.paths=r.paths||[],r.paths.push(e)};for(let e of["Array","Boolean","String","Proxy","Rest","Counter"])t.Command[e]=(...r)=>(i,n)=>{let s=t.Option[e](...r);Object.defineProperty(i,`__${n}`,{configurable:!1,enumerable:!0,get(){return s},set(o){this[n]=o}})};return t}var gp={};$e(gp,{BaseCommand:()=>Be,WorkspaceRequiredError:()=>Xe,getDynamicLibs:()=>xZ,getPluginConfiguration:()=>Jy,main:()=>dy,openWorkspace:()=>bu,pluginCommands:()=>hu});var Be=class extends fe{constructor(){super(...arguments);this.cwd=G.String("--cwd",{hidden:!0})}};var Xe=class extends me{constructor(e,r){let i=B.relative(e,r),n=B.join(e,We.fileName);super(`This command can only be run from within a workspace of your project (${i} isn't a workspace of ${n}).`)}};var PKe=te(Cr());Fn();var kKe=te(Gk()),xZ=()=>new Map([["@yarnpkg/cli",gp],["@yarnpkg/core",Yf],["@yarnpkg/fslib",Lg],["@yarnpkg/libzip",Yh],["@yarnpkg/parsers",Xh],["@yarnpkg/shell",_h],["clipanion",Zg],["semver",PKe],["typanion",Hl],["yup",kKe]]);async function bu(t,e){let{project:r,workspace:i}=await Fe.find(t,e);if(!i)throw new Xe(r.cwd,e);return i}var LWe=te(Cr());Fn();var NWe=te(Gk());var Lv={};$e(Lv,{dedupeUtils:()=>bv,default:()=>mHe,suggestUtils:()=>gv});var sre=te(Tg());var N$=te(dp());Fn();var gv={};$e(gv,{Modifier:()=>ul,Strategy:()=>sr,Target:()=>er,applyModifier:()=>R$,extractDescriptorFromPath:()=>pv,extractRangeModifier:()=>F$,fetchDescriptorFrom:()=>fv,findProjectDescriptors:()=>L$,getModifier:()=>Cp,getSuggestedDescriptors:()=>mp});var hv=te(Cr()),er;(function(i){i.REGULAR="dependencies",i.DEVELOPMENT="devDependencies",i.PEER="peerDependencies"})(er||(er={}));var ul;(function(i){i.CARET="^",i.TILDE="~",i.EXACT=""})(ul||(ul={}));var sr;(function(s){s.KEEP="keep",s.REUSE="reuse",s.PROJECT="project",s.LATEST="latest",s.CACHE="cache"})(sr||(sr={}));function Cp(t,e){return t.exact?ul.EXACT:t.caret?ul.CARET:t.tilde?ul.TILDE:e.configuration.get("defaultSemverRangePrefix")}var zTe=/^([\^~]?)[0-9]+(?:\.[0-9]+){0,2}(?:-\S+)?$/;function F$(t,{project:e}){let r=t.match(zTe);return r?r[1]:e.configuration.get("defaultSemverRangePrefix")}function R$(t,e){let{protocol:r,source:i,params:n,selector:s}=Q.parseRange(t.range);return hv.default.valid(s)&&(s=`${e}${t.range}`),Q.makeDescriptor(t,Q.makeRange({protocol:r,source:i,params:n,selector:s}))}async function L$(t,{project:e,target:r}){let i=new Map,n=s=>{let o=i.get(s.descriptorHash);return o||i.set(s.descriptorHash,o={descriptor:s,locators:[]}),o};for(let s of e.workspaces)if(r===er.PEER){let o=s.manifest.peerDependencies.get(t.identHash);o!==void 0&&n(o).locators.push(s.locator)}else{let o=s.manifest.dependencies.get(t.identHash),a=s.manifest.devDependencies.get(t.identHash);r===er.DEVELOPMENT?a!==void 0?n(a).locators.push(s.locator):o!==void 0&&n(o).locators.push(s.locator):o!==void 0?n(o).locators.push(s.locator):a!==void 0&&n(a).locators.push(s.locator)}return i}async function pv(t,{cwd:e,workspace:r}){return await VTe(async i=>{B.isAbsolute(t)||(t=B.relative(r.cwd,B.resolve(e,t)),t.match(/^\.{0,2}\//)||(t=`./${t}`));let{project:n}=r,s=await fv(Q.makeIdent(null,"archive"),t,{project:r.project,cache:i,workspace:r});if(!s)throw new Error("Assertion failed: The descriptor should have been found");let o=new wr,a=n.configuration.makeResolver(),l=n.configuration.makeFetcher(),c={checksums:n.storedChecksums,project:n,cache:i,fetcher:l,report:o,resolver:a},u=a.bindDescriptor(s,r.anchoredLocator,c),g=Q.convertDescriptorToLocator(u),h=await l.fetch(g,c),f=await We.find(h.prefixPath,{baseFs:h.packageFs});if(!f.name)throw new Error("Target path doesn't have a name");return Q.makeDescriptor(f.name,t)})}async function mp(t,{project:e,workspace:r,cache:i,target:n,modifier:s,strategies:o,maxResults:a=Infinity}){if(!(a>=0))throw new Error(`Invalid maxResults (${a})`);if(t.range!=="unknown")return{suggestions:[{descriptor:t,name:`Use ${Q.prettyDescriptor(e.configuration,t)}`,reason:"(unambiguous explicit request)"}],rejections:[]};let l=typeof r!="undefined"&&r!==null&&r.manifest[n].get(t.identHash)||null,c=[],u=[],g=async h=>{try{await h()}catch(f){u.push(f)}};for(let h of o){if(c.length>=a)break;switch(h){case sr.KEEP:await g(async()=>{l&&c.push({descriptor:l,name:`Keep ${Q.prettyDescriptor(e.configuration,l)}`,reason:"(no changes)"})});break;case sr.REUSE:await g(async()=>{for(let{descriptor:f,locators:p}of(await L$(t,{project:e,target:n})).values()){if(p.length===1&&p[0].locatorHash===r.anchoredLocator.locatorHash&&o.includes(sr.KEEP))continue;let m=`(originally used by ${Q.prettyLocator(e.configuration,p[0])}`;m+=p.length>1?` and ${p.length-1} other${p.length>2?"s":""})`:")",c.push({descriptor:f,name:`Reuse ${Q.prettyDescriptor(e.configuration,f)}`,reason:m})}});break;case sr.CACHE:await g(async()=>{for(let f of e.storedDescriptors.values())f.identHash===t.identHash&&c.push({descriptor:f,name:`Reuse ${Q.prettyDescriptor(e.configuration,f)}`,reason:"(already used somewhere in the lockfile)"})});break;case sr.PROJECT:await g(async()=>{if(r.manifest.name!==null&&t.identHash===r.manifest.name.identHash)return;let f=e.tryWorkspaceByIdent(t);f!==null&&c.push({descriptor:f.anchoredDescriptor,name:`Attach ${Q.prettyWorkspace(e.configuration,f)}`,reason:`(local workspace at ${f.cwd})`})});break;case sr.LATEST:await g(async()=>{if(t.range!=="unknown")c.push({descriptor:t,name:`Use ${Q.prettyRange(e.configuration,t.range)}`,reason:"(explicit range requested)"});else if(n===er.PEER)c.push({descriptor:Q.makeDescriptor(t,"*"),name:"Use *",reason:"(catch-all peer dependency pattern)"});else if(!e.configuration.get("enableNetwork"))c.push({descriptor:null,name:"Resolve from latest",reason:Ae.pretty(e.configuration,"(unavailable because enableNetwork is toggled off)","grey")});else{let f=await fv(t,"latest",{project:e,cache:i,workspace:r,preserveModifier:!1});f&&(f=R$(f,s),c.push({descriptor:f,name:`Use ${Q.prettyDescriptor(e.configuration,f)}`,reason:"(resolved from latest)"}))}});break}}return{suggestions:c.slice(0,a),rejections:u.slice(0,a)}}async function fv(t,e,{project:r,cache:i,workspace:n,preserveModifier:s=!0}){let o=Q.makeDescriptor(t,e),a=new wr,l=r.configuration.makeFetcher(),c=r.configuration.makeResolver(),u={project:r,fetcher:l,cache:i,checksums:r.storedChecksums,report:a,skipIntegrityCheck:!0},g=V(k({},u),{resolver:c,fetchOptions:u}),h=c.bindDescriptor(o,n.anchoredLocator,g),f=await c.getCandidates(h,new Map,g);if(f.length===0)return null;let p=f[0],{protocol:m,source:I,params:y,selector:w}=Q.parseRange(Q.convertToManifestRange(p.reference));if(m===r.configuration.get("defaultProtocol")&&(m=null),hv.default.valid(w)&&s!==!1){let x=typeof s=="string"?s:o.range;w=F$(x,{project:r})+w}return Q.makeDescriptor(p,Q.makeRange({protocol:m,source:I,params:y,selector:w}))}async function VTe(t){return await M.mktempPromise(async e=>{let r=le.create(e);return r.useWithSource(e,{enableMirror:!1,compressionLevel:0},e,{overwrite:!0}),await t(new gt(e,{configuration:r,check:!1,immutable:!1}))})}var Ip=class extends Be{constructor(){super(...arguments);this.json=G.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"});this.exact=G.Boolean("-E,--exact",!1,{description:"Don't use any semver modifier on the resolved range"});this.tilde=G.Boolean("-T,--tilde",!1,{description:"Use the `~` semver modifier on the resolved range"});this.caret=G.Boolean("-C,--caret",!1,{description:"Use the `^` semver modifier on the resolved range"});this.dev=G.Boolean("-D,--dev",!1,{description:"Add a package as a dev dependency"});this.peer=G.Boolean("-P,--peer",!1,{description:"Add a package as a peer dependency"});this.optional=G.Boolean("-O,--optional",!1,{description:"Add / upgrade a package to an optional regular / peer dependency"});this.preferDev=G.Boolean("--prefer-dev",!1,{description:"Add / upgrade a package to a dev dependency"});this.interactive=G.Boolean("-i,--interactive",!1,{description:"Reuse the specified package from other workspaces in the project"});this.cached=G.Boolean("--cached",!1,{description:"Reuse the highest version already used somewhere within the project"});this.mode=G.String("--mode",{description:"Change what artifacts installs generate",validator:ni(kr)});this.packages=G.Rest()}async execute(){var m;let e=await le.find(this.context.cwd,this.context.plugins),{project:r,workspace:i}=await Fe.find(e,this.context.cwd),n=await gt.find(e);if(!i)throw new Xe(r.cwd,this.context.cwd);await r.restoreInstallState({restoreResolutions:!1});let s=(m=this.interactive)!=null?m:e.get("preferInteractive"),o=Cp(this,r),a=[...s?[sr.REUSE]:[],sr.PROJECT,...this.cached?[sr.CACHE]:[],sr.LATEST],l=s?Infinity:1,c=await Promise.all(this.packages.map(async I=>{let y=I.match(/^\.{0,2}\//)?await pv(I,{cwd:this.context.cwd,workspace:i}):Q.parseDescriptor(I),w=XTe(i,y,{dev:this.dev,peer:this.peer,preferDev:this.preferDev,optional:this.optional}),x=await mp(y,{project:r,workspace:i,cache:n,target:w,modifier:o,strategies:a,maxResults:l});return[y,x,w]})),u=await uo.start({configuration:e,stdout:this.context.stdout,suggestInstall:!1},async I=>{for(let[y,{suggestions:w,rejections:x}]of c)if(w.filter(N=>N.descriptor!==null).length===0){let[N]=x;if(typeof N=="undefined")throw new Error("Assertion failed: Expected an error to have been set");r.configuration.get("enableNetwork")?I.reportError(z.CANT_SUGGEST_RESOLUTIONS,`${Q.prettyDescriptor(e,y)} can't be resolved to a satisfying range`):I.reportError(z.CANT_SUGGEST_RESOLUTIONS,`${Q.prettyDescriptor(e,y)} can't be resolved to a satisfying range (note: network resolution has been disabled)`),I.reportSeparator(),I.reportExceptionOnce(N)}});if(u.hasErrors())return u.exitCode();let g=!1,h=[],f=[];for(let[,{suggestions:I},y]of c){let w,x=I.filter(v=>v.descriptor!==null),F=x[0].descriptor,N=x.every(v=>Q.areDescriptorsEqual(v.descriptor,F));x.length===1||N?w=F:(g=!0,{answer:w}=await(0,N$.prompt)({type:"select",name:"answer",message:"Which range do you want to use?",choices:I.map(({descriptor:v,name:J,reason:oe})=>v?{name:J,hint:oe,descriptor:v}:{name:J,hint:oe,disabled:!0}),onCancel:()=>process.exit(130),result(v){return this.find(v,"descriptor")},stdin:this.context.stdin,stdout:this.context.stdout}));let K=i.manifest[y].get(w.identHash);(typeof K=="undefined"||K.descriptorHash!==w.descriptorHash)&&(i.manifest[y].set(w.identHash,w),this.optional&&(y==="dependencies"?i.manifest.ensureDependencyMeta(V(k({},w),{range:"unknown"})).optional=!0:y==="peerDependencies"&&(i.manifest.ensurePeerDependencyMeta(V(k({},w),{range:"unknown"})).optional=!0)),typeof K=="undefined"?h.push([i,y,w,a]):f.push([i,y,K,w]))}return await e.triggerMultipleHooks(I=>I.afterWorkspaceDependencyAddition,h),await e.triggerMultipleHooks(I=>I.afterWorkspaceDependencyReplacement,f),g&&this.context.stdout.write(` +`),(await xe.start({configuration:e,json:this.json,stdout:this.context.stdout,includeLogs:!this.context.quiet},async I=>{await r.install({cache:n,report:I,mode:this.mode})})).exitCode()}};Ip.paths=[["add"]],Ip.usage=fe.Usage({description:"add dependencies to the project",details:"\n This command adds a package to the package.json for the nearest workspace.\n\n - If it didn't exist before, the package will by default be added to the regular `dependencies` field, but this behavior can be overriden thanks to the `-D,--dev` flag (which will cause the dependency to be added to the `devDependencies` field instead) and the `-P,--peer` flag (which will do the same but for `peerDependencies`).\n\n - If the package was already listed in your dependencies, it will by default be upgraded whether it's part of your `dependencies` or `devDependencies` (it won't ever update `peerDependencies`, though).\n\n - If set, the `--prefer-dev` flag will operate as a more flexible `-D,--dev` in that it will add the package to your `devDependencies` if it isn't already listed in either `dependencies` or `devDependencies`, but it will also happily upgrade your `dependencies` if that's what you already use (whereas `-D,--dev` would throw an exception).\n\n - If set, the `-O,--optional` flag will add the package to the `optionalDependencies` field and, in combination with the `-P,--peer` flag, it will add the package as an optional peer dependency. If the package was already listed in your `dependencies`, it will be upgraded to `optionalDependencies`. If the package was already listed in your `peerDependencies`, in combination with the `-P,--peer` flag, it will be upgraded to an optional peer dependency: `\"peerDependenciesMeta\": { \"\": { \"optional\": true } }`\n\n - If the added package doesn't specify a range at all its `latest` tag will be resolved and the returned version will be used to generate a new semver range (using the `^` modifier by default unless otherwise configured via the `defaultSemverRangePrefix` configuration, or the `~` modifier if `-T,--tilde` is specified, or no modifier at all if `-E,--exact` is specified). Two exceptions to this rule: the first one is that if the package is a workspace then its local version will be used, and the second one is that if you use `-P,--peer` the default range will be `*` and won't be resolved at all.\n\n - If the added package specifies a range (such as `^1.0.0`, `latest`, or `rc`), Yarn will add this range as-is in the resulting package.json entry (in particular, tags such as `rc` will be encoded as-is rather than being converted into a semver range).\n\n If the `--cached` option is used, Yarn will preferably reuse the highest version already used somewhere within the project, even if through a transitive dependency.\n\n If the `-i,--interactive` option is used (or if the `preferInteractive` settings is toggled on) the command will first try to check whether other workspaces in the project use the specified package and, if so, will offer to reuse them.\n\n If the `--mode=` option is set, Yarn will change which artifacts are generated. The modes currently supported are:\n\n - `skip-build` will not run the build scripts at all. Note that this is different from setting `enableScripts` to false because the later will disable build scripts, and thus affect the content of the artifacts generated on disk, whereas the former will just disable the build step - but not the scripts themselves, which just won't run.\n\n - `update-lockfile` will skip the link step altogether, and only fetch packages that are missing from the lockfile (or that have no associated checksums). This mode is typically used by tools like Renovate or Dependabot to keep a lockfile up-to-date without incurring the full install cost.\n\n For a compilation of all the supported protocols, please consult the dedicated page from our website: https://yarnpkg.com/features/protocols.\n ",examples:[["Add a regular package to the current workspace","$0 add lodash"],["Add a specific version for a package to the current workspace","$0 add lodash@1.2.3"],["Add a package from a GitHub repository (the master branch) to the current workspace using a URL","$0 add lodash@https://github.com/lodash/lodash"],["Add a package from a GitHub repository (the master branch) to the current workspace using the GitHub protocol","$0 add lodash@github:lodash/lodash"],["Add a package from a GitHub repository (the master branch) to the current workspace using the GitHub protocol (shorthand)","$0 add lodash@lodash/lodash"],["Add a package from a specific branch of a GitHub repository to the current workspace using the GitHub protocol (shorthand)","$0 add lodash-es@lodash/lodash#es"]]});var M$=Ip;function XTe(t,e,{dev:r,peer:i,preferDev:n,optional:s}){let o=t.manifest[er.REGULAR].has(e.identHash),a=t.manifest[er.DEVELOPMENT].has(e.identHash),l=t.manifest[er.PEER].has(e.identHash);if((r||i)&&o)throw new me(`Package "${Q.prettyIdent(t.project.configuration,e)}" is already listed as a regular dependency - remove the -D,-P flags or remove it from your dependencies first`);if(!r&&!i&&l)throw new me(`Package "${Q.prettyIdent(t.project.configuration,e)}" is already listed as a peer dependency - use either of -D or -P, or remove it from your peer dependencies first`);if(s&&a)throw new me(`Package "${Q.prettyIdent(t.project.configuration,e)}" is already listed as a dev dependency - remove the -O flag or remove it from your dev dependencies first`);if(s&&!i&&l)throw new me(`Package "${Q.prettyIdent(t.project.configuration,e)}" is already listed as a peer dependency - remove the -O flag or add the -P flag or remove it from your peer dependencies first`);if((r||n)&&s)throw new me(`Package "${Q.prettyIdent(t.project.configuration,e)}" cannot simultaneously be a dev dependency and an optional dependency`);return i?er.PEER:r||n?er.DEVELOPMENT:o?er.REGULAR:a?er.DEVELOPMENT:er.REGULAR}var Ep=class extends Be{constructor(){super(...arguments);this.verbose=G.Boolean("-v,--verbose",!1,{description:"Print both the binary name and the locator of the package that provides the binary"});this.json=G.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"});this.name=G.String({required:!1})}async execute(){let e=await le.find(this.context.cwd,this.context.plugins),{project:r,locator:i}=await Fe.find(e,this.context.cwd);if(await r.restoreInstallState(),this.name){let o=(await bt.getPackageAccessibleBinaries(i,{project:r})).get(this.name);if(!o)throw new me(`Couldn't find a binary named "${this.name}" for package "${Q.prettyLocator(e,i)}"`);let[,a]=o;return this.context.stdout.write(`${a} +`),0}return(await xe.start({configuration:e,json:this.json,stdout:this.context.stdout},async s=>{let o=await bt.getPackageAccessibleBinaries(i,{project:r}),l=Array.from(o.keys()).reduce((c,u)=>Math.max(c,u.length),0);for(let[c,[u,g]]of o)s.reportJson({name:c,source:Q.stringifyIdent(u),path:g});if(this.verbose)for(let[c,[u]]of o)s.reportInfo(null,`${c.padEnd(l," ")} ${Q.prettyLocator(e,u)}`);else for(let c of o.keys())s.reportInfo(null,c)})).exitCode()}};Ep.paths=[["bin"]],Ep.usage=fe.Usage({description:"get the path to a binary script",details:` When used without arguments, this command will print the list of all the binaries available in the current workspace. Adding the \`-v,--verbose\` flag will cause the output to contain both the binary name and the locator of the package that provides the binary. When an argument is specified, this command will just print the path to the binary on the standard output and exit. Note that the reported path may be stored within a zip archive. - `,examples:[["List all the available binaries","$0 bin"],["Print the path to a specific binary","$0 bin eslint"]]});var o_=Tf;var Kf=class extends Ce{constructor(){super(...arguments);this.mirror=j.Boolean("--mirror",!1,{description:"Remove the global cache files instead of the local cache files"});this.all=j.Boolean("--all",!1,{description:"Remove both the global cache files and the local cache files of the current project"})}async execute(){let e=await oe.find(this.context.cwd,this.context.plugins),r=await lt.find(e);return(await we.start({configuration:e,stdout:this.context.stdout},async()=>{let n=(this.all||this.mirror)&&r.mirrorCwd!==null,s=!this.mirror;n&&(await R.removePromise(r.mirrorCwd),await e.triggerHook(o=>o.cleanGlobalArtifacts,e)),s&&await R.removePromise(r.cwd)})).exitCode()}};Kf.paths=[["cache","clean"],["cache","clear"]],Kf.usage=ce.Usage({description:"remove the shared cache files",details:` + `,examples:[["List all the available binaries","$0 bin"],["Print the path to a specific binary","$0 bin eslint"]]});var O$=Ep;var yp=class extends Be{constructor(){super(...arguments);this.mirror=G.Boolean("--mirror",!1,{description:"Remove the global cache files instead of the local cache files"});this.all=G.Boolean("--all",!1,{description:"Remove both the global cache files and the local cache files of the current project"})}async execute(){let e=await le.find(this.context.cwd,this.context.plugins),r=await gt.find(e);return(await xe.start({configuration:e,stdout:this.context.stdout},async()=>{let n=(this.all||this.mirror)&&r.mirrorCwd!==null,s=!this.mirror;n&&(await M.removePromise(r.mirrorCwd),await e.triggerHook(o=>o.cleanGlobalArtifacts,e)),s&&await M.removePromise(r.cwd)})).exitCode()}};yp.paths=[["cache","clean"],["cache","clear"]],yp.usage=fe.Usage({description:"remove the shared cache files",details:` This command will remove all the files from the cache. - `,examples:[["Remove all the local archives","$0 cache clean"],["Remove all the archives stored in the ~/.yarn directory","$0 cache clean --mirror"]]});var a_=Kf;var A_=X(LE()),sk=X(require("util")),Uf=class extends Ce{constructor(){super(...arguments);this.json=j.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"});this.unsafe=j.Boolean("--no-redacted",!1,{description:"Don't redact secrets (such as tokens) from the output"});this.name=j.String()}async execute(){let e=await oe.find(this.context.cwd,this.context.plugins),r=this.name.replace(/[.[].*$/,""),i=this.name.replace(/^[^.[]*/,"");if(typeof e.settings.get(r)=="undefined")throw new UsageError(`Couldn't find a configuration settings named "${r}"`);let s=e.getSpecial(r,{hideSecrets:!this.unsafe,getNativePaths:!0}),o=he.convertMapsToIndexableObjects(s),a=i?A_.default(o,i):o,l=await we.start({configuration:e,includeFooter:!1,json:this.json,stdout:this.context.stdout},async c=>{c.reportJson(a)});if(!this.json){if(typeof a=="string")return this.context.stdout.write(`${a} -`),l.exitCode();sk.inspect.styles.name="cyan",this.context.stdout.write(`${sk.inspect(a,{depth:Infinity,colors:e.get("enableColors"),compact:!1})} -`)}return l.exitCode()}};Uf.paths=[["config","get"]],Uf.usage=ce.Usage({description:"read a configuration settings",details:` + `,examples:[["Remove all the local archives","$0 cache clean"],["Remove all the archives stored in the ~/.yarn directory","$0 cache clean --mirror"]]});var K$=yp;var T$=te(xy()),dv=te(require("util")),Bp=class extends Be{constructor(){super(...arguments);this.json=G.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"});this.unsafe=G.Boolean("--no-redacted",!1,{description:"Don't redact secrets (such as tokens) from the output"});this.name=G.String()}async execute(){let e=await le.find(this.context.cwd,this.context.plugins),r=this.name.replace(/[.[].*$/,""),i=this.name.replace(/^[^.[]*/,"");if(typeof e.settings.get(r)=="undefined")throw new me(`Couldn't find a configuration settings named "${r}"`);let s=e.getSpecial(r,{hideSecrets:!this.unsafe,getNativePaths:!0}),o=de.convertMapsToIndexableObjects(s),a=i?(0,T$.default)(o,i):o,l=await xe.start({configuration:e,includeFooter:!1,json:this.json,stdout:this.context.stdout},async c=>{c.reportJson(a)});if(!this.json){if(typeof a=="string")return this.context.stdout.write(`${a} +`),l.exitCode();dv.inspect.styles.name="cyan",this.context.stdout.write(`${(0,dv.inspect)(a,{depth:Infinity,colors:e.get("enableColors"),compact:!1})} +`)}return l.exitCode()}};Bp.paths=[["config","get"]],Bp.usage=fe.Usage({description:"read a configuration settings",details:` This command will print a configuration setting. Secrets (such as tokens) will be redacted from the output by default. If this behavior isn't desired, set the \`--no-redacted\` to get the untransformed value. - `,examples:[["Print a simple configuration setting","yarn config get yarnPath"],["Print a complex configuration setting","yarn config get packageExtensions"],["Print a nested field from the configuration",`yarn config get 'npmScopes["my-company"].npmRegistryServer'`],["Print a token from the configuration","yarn config get npmAuthToken --no-redacted"],["Print a configuration setting as JSON","yarn config get packageExtensions --json"]]});var l_=Uf;var y$=X(uk()),B$=X(LE()),w$=X(E$()),gk=X(require("util")),Yf=class extends Ce{constructor(){super(...arguments);this.json=j.Boolean("--json",!1,{description:"Set complex configuration settings to JSON values"});this.home=j.Boolean("-H,--home",!1,{description:"Update the home configuration instead of the project configuration"});this.name=j.String();this.value=j.String()}async execute(){let e=await oe.find(this.context.cwd,this.context.plugins);if(!e.projectCwd)throw new UsageError("This command must be run from within a project folder");let r=this.name.replace(/[.[].*$/,""),i=this.name.replace(/^[^.[]*\.?/,"");if(typeof e.settings.get(r)=="undefined")throw new UsageError(`Couldn't find a configuration settings named "${r}"`);let s=this.json?JSON.parse(this.value):this.value;await(this.home?h=>oe.updateHomeConfiguration(h):h=>oe.updateConfiguration(e.projectCwd,h))(h=>{if(i){let f=y$.default(h);return w$.default(f,this.name,s),f}else return{...h,[r]:s}});let l=(await oe.find(this.context.cwd,this.context.plugins)).getSpecial(r,{hideSecrets:!0,getNativePaths:!0}),c=he.convertMapsToIndexableObjects(l),u=i?B$.default(c,i):c;return(await we.start({configuration:e,includeFooter:!1,stdout:this.context.stdout},async h=>{gk.inspect.styles.name="cyan",h.reportInfo(J.UNNAMED,`Successfully set ${this.name} to ${gk.inspect(u,{depth:Infinity,colors:e.get("enableColors"),compact:!1})}`)})).exitCode()}};Yf.paths=[["config","set"]],Yf.usage=ce.Usage({description:"change a configuration settings",details:` + `,examples:[["Print a simple configuration setting","yarn config get yarnPath"],["Print a complex configuration setting","yarn config get packageExtensions"],["Print a nested field from the configuration",`yarn config get 'npmScopes["my-company"].npmRegistryServer'`],["Print a token from the configuration","yarn config get npmAuthToken --no-redacted"],["Print a configuration setting as JSON","yarn config get packageExtensions --json"]]});var U$=Bp;var _ee=te(Bv()),$ee=te(xy()),ete=te(Zee()),wv=te(require("util")),Qp=class extends Be{constructor(){super(...arguments);this.json=G.Boolean("--json",!1,{description:"Set complex configuration settings to JSON values"});this.home=G.Boolean("-H,--home",!1,{description:"Update the home configuration instead of the project configuration"});this.name=G.String();this.value=G.String()}async execute(){let e=await le.find(this.context.cwd,this.context.plugins),r=()=>{if(!e.projectCwd)throw new me("This command must be run from within a project folder");return e.projectCwd},i=this.name.replace(/[.[].*$/,""),n=this.name.replace(/^[^.[]*\.?/,"");if(typeof e.settings.get(i)=="undefined")throw new me(`Couldn't find a configuration settings named "${i}"`);let o=this.json?JSON.parse(this.value):this.value;await(this.home?f=>le.updateHomeConfiguration(f):f=>le.updateConfiguration(r(),f))(f=>{if(n){let p=(0,_ee.default)(f);return(0,ete.default)(p,this.name,o),p}else return V(k({},f),{[i]:o})});let c=(await le.find(this.context.cwd,this.context.plugins)).getSpecial(i,{hideSecrets:!0,getNativePaths:!0}),u=de.convertMapsToIndexableObjects(c),g=n?(0,$ee.default)(u,n):u;return(await xe.start({configuration:e,includeFooter:!1,stdout:this.context.stdout},async f=>{wv.inspect.styles.name="cyan",f.reportInfo(z.UNNAMED,`Successfully set ${this.name} to ${(0,wv.inspect)(g,{depth:Infinity,colors:e.get("enableColors"),compact:!1})}`)})).exitCode()}};Qp.paths=[["config","set"]],Qp.usage=fe.Usage({description:"change a configuration settings",details:` This command will set a configuration setting. When used without the \`--json\` flag, it can only set a simple configuration setting (a string, a number, or a boolean). When used with the \`--json\` flag, it can set both simple and complex configuration settings, including Arrays and Objects. - `,examples:[["Set a simple configuration setting (a string, a number, or a boolean)","yarn config set initScope myScope"],["Set a simple configuration setting (a string, a number, or a boolean) using the `--json` flag",'yarn config set initScope --json \\"myScope\\"'],["Set a complex configuration setting (an Array) using the `--json` flag",`yarn config set unsafeHttpWhitelist --json '["*.example.com", "example.com"]'`],["Set a complex configuration setting (an Object) using the `--json` flag",`yarn config set packageExtensions --json '{ "@babel/parser@*": { "dependencies": { "@babel/types": "*" } } }'`],["Set a nested configuration setting",'yarn config set npmScopes.company.npmRegistryServer "https://npm.example.com"'],["Set a nested configuration setting using indexed access for non-simple keys",`yarn config set 'npmRegistries["//npm.example.com"].npmAuthToken' "ffffffff-ffff-ffff-ffff-ffffffffffff"`]]});var Q$=Yf;var R$=X(uk()),hk=X(F$()),jf=class extends Ce{constructor(){super(...arguments);this.home=j.Boolean("-H,--home",!1,{description:"Update the home configuration instead of the project configuration"});this.name=j.String()}async execute(){let e=await oe.find(this.context.cwd,this.context.plugins);if(!e.projectCwd)throw new UsageError("This command must be run from within a project folder");let r=this.name.replace(/[.[].*$/,""),i=this.name.replace(/^[^.[]*\.?/,"");if(typeof e.settings.get(r)=="undefined")throw new UsageError(`Couldn't find a configuration settings named "${r}"`);return await(this.home?a=>oe.updateHomeConfiguration(a):a=>oe.updateConfiguration(e.projectCwd,a))(a=>{if(i){let l=R$.default(a);return hk.default(l,this.name),l}else return hk.default({...a},r)}),(await we.start({configuration:e,includeFooter:!1,stdout:this.context.stdout},async a=>{a.reportInfo(J.UNNAMED,`Successfully unset ${this.name}`)})).exitCode()}};jf.paths=[["config","unset"]],jf.usage=ce.Usage({description:"unset a configuration setting",details:` + `,examples:[["Set a simple configuration setting (a string, a number, or a boolean)","yarn config set initScope myScope"],["Set a simple configuration setting (a string, a number, or a boolean) using the `--json` flag",'yarn config set initScope --json \\"myScope\\"'],["Set a complex configuration setting (an Array) using the `--json` flag",`yarn config set unsafeHttpWhitelist --json '["*.example.com", "example.com"]'`],["Set a complex configuration setting (an Object) using the `--json` flag",`yarn config set packageExtensions --json '{ "@babel/parser@*": { "dependencies": { "@babel/types": "*" } } }'`],["Set a nested configuration setting",'yarn config set npmScopes.company.npmRegistryServer "https://npm.example.com"'],["Set a nested configuration setting using indexed access for non-simple keys",`yarn config set 'npmRegistries["//npm.example.com"].npmAuthToken' "ffffffff-ffff-ffff-ffff-ffffffffffff"`]]});var tte=Qp;var cte=te(Bv()),ute=te(jf()),gte=te(lte()),bp=class extends Be{constructor(){super(...arguments);this.home=G.Boolean("-H,--home",!1,{description:"Update the home configuration instead of the project configuration"});this.name=G.String()}async execute(){let e=await le.find(this.context.cwd,this.context.plugins),r=()=>{if(!e.projectCwd)throw new me("This command must be run from within a project folder");return e.projectCwd},i=this.name.replace(/[.[].*$/,""),n=this.name.replace(/^[^.[]*\.?/,"");if(typeof e.settings.get(i)=="undefined")throw new me(`Couldn't find a configuration settings named "${i}"`);let o=this.home?l=>le.updateHomeConfiguration(l):l=>le.updateConfiguration(r(),l);return(await xe.start({configuration:e,includeFooter:!1,stdout:this.context.stdout},async l=>{let c=!1;await o(u=>{if(!(0,ute.default)(u,this.name))return l.reportWarning(z.UNNAMED,`Configuration doesn't contain setting ${this.name}; there is nothing to unset`),c=!0,u;let g=n?(0,cte.default)(u):k({},u);return(0,gte.default)(g,this.name),g}),c||l.reportInfo(z.UNNAMED,`Successfully unset ${this.name}`)})).exitCode()}};bp.paths=[["config","unset"]],bp.usage=fe.Usage({description:"unset a configuration setting",details:` This command will unset a configuration setting. - `,examples:[["Unset a simple configuration setting","yarn config unset initScope"],["Unset a complex configuration setting","yarn config unset packageExtensions"],["Unset a nested configuration setting","yarn config unset npmScopes.company.npmRegistryServer"]]});var L$=jf;var fk=X(require("util")),Gf=class extends Ce{constructor(){super(...arguments);this.verbose=j.Boolean("-v,--verbose",!1,{description:"Print the setting description on top of the regular key/value information"});this.why=j.Boolean("--why",!1,{description:"Print the reason why a setting is set a particular way"});this.json=j.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"})}async execute(){let e=await oe.find(this.context.cwd,this.context.plugins,{strict:!1});return(await we.start({configuration:e,json:this.json,stdout:this.context.stdout},async i=>{if(e.invalid.size>0&&!this.json){for(let[n,s]of e.invalid)i.reportError(J.INVALID_CONFIGURATION_KEY,`Invalid configuration key "${n}" in ${s}`);i.reportSeparator()}if(this.json){let n=he.sortMap(e.settings.keys(),s=>s);for(let s of n){let o=e.settings.get(s),a=e.getSpecial(s,{hideSecrets:!0,getNativePaths:!0}),l=e.sources.get(s);this.verbose?i.reportJson({key:s,effective:a,source:l}):i.reportJson({key:s,effective:a,source:l,...o})}}else{let n=he.sortMap(e.settings.keys(),a=>a),s=n.reduce((a,l)=>Math.max(a,l.length),0),o={breakLength:Infinity,colors:e.get("enableColors"),maxArrayLength:2};if(this.why||this.verbose){let a=n.map(c=>{let u=e.settings.get(c);if(!u)throw new Error(`Assertion failed: This settings ("${c}") should have been registered`);let g=this.why?e.sources.get(c)||"":u.description;return[c,g]}),l=a.reduce((c,[,u])=>Math.max(c,u.length),0);for(let[c,u]of a)i.reportInfo(null,`${c.padEnd(s," ")} ${u.padEnd(l," ")} ${fk.inspect(e.getSpecial(c,{hideSecrets:!0,getNativePaths:!0}),o)}`)}else for(let a of n)i.reportInfo(null,`${a.padEnd(s," ")} ${fk.inspect(e.getSpecial(a,{hideSecrets:!0,getNativePaths:!0}),o)}`)}})).exitCode()}};Gf.paths=[["config"]],Gf.usage=ce.Usage({description:"display the current configuration",details:` + `,examples:[["Unset a simple configuration setting","yarn config unset initScope"],["Unset a complex configuration setting","yarn config unset packageExtensions"],["Unset a nested configuration setting","yarn config unset npmScopes.company.npmRegistryServer"]]});var hte=bp;var Qv=te(require("util")),Dp=class extends Be{constructor(){super(...arguments);this.verbose=G.Boolean("-v,--verbose",!1,{description:"Print the setting description on top of the regular key/value information"});this.why=G.Boolean("--why",!1,{description:"Print the reason why a setting is set a particular way"});this.json=G.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"})}async execute(){let e=await le.find(this.context.cwd,this.context.plugins,{strict:!1});return(await xe.start({configuration:e,json:this.json,stdout:this.context.stdout},async i=>{if(e.invalid.size>0&&!this.json){for(let[n,s]of e.invalid)i.reportError(z.INVALID_CONFIGURATION_KEY,`Invalid configuration key "${n}" in ${s}`);i.reportSeparator()}if(this.json){let n=de.sortMap(e.settings.keys(),s=>s);for(let s of n){let o=e.settings.get(s),a=e.getSpecial(s,{hideSecrets:!0,getNativePaths:!0}),l=e.sources.get(s);this.verbose?i.reportJson({key:s,effective:a,source:l}):i.reportJson(k({key:s,effective:a,source:l},o))}}else{let n=de.sortMap(e.settings.keys(),a=>a),s=n.reduce((a,l)=>Math.max(a,l.length),0),o={breakLength:Infinity,colors:e.get("enableColors"),maxArrayLength:2};if(this.why||this.verbose){let a=n.map(c=>{let u=e.settings.get(c);if(!u)throw new Error(`Assertion failed: This settings ("${c}") should have been registered`);let g=this.why?e.sources.get(c)||"":u.description;return[c,g]}),l=a.reduce((c,[,u])=>Math.max(c,u.length),0);for(let[c,u]of a)i.reportInfo(null,`${c.padEnd(s," ")} ${u.padEnd(l," ")} ${(0,Qv.inspect)(e.getSpecial(c,{hideSecrets:!0,getNativePaths:!0}),o)}`)}else for(let a of n)i.reportInfo(null,`${a.padEnd(s," ")} ${(0,Qv.inspect)(e.getSpecial(a,{hideSecrets:!0,getNativePaths:!0}),o)}`)}})).exitCode()}};Dp.paths=[["config"]],Dp.usage=fe.Usage({description:"display the current configuration",details:` This command prints the current active configuration settings. - `,examples:[["Print the active configuration settings","$0 config"]]});var M$=Gf;var T$=X(Qo());var N$=X(Qn()),ru;(function(t){t.HIGHEST="highest"})(ru||(ru={}));var jot=new Set(Object.values(ru)),cUe={highest:async(t,e,{resolver:r,fetcher:i,resolveOptions:n,fetchOptions:s})=>{let o=new Map;for(let[a,l]of t.storedResolutions){let c=t.storedDescriptors.get(a);if(typeof c=="undefined")throw new Error(`Assertion failed: The descriptor (${a}) should have been registered`);he.getSetWithDefault(o,c.identHash).add(l)}return Array.from(t.storedDescriptors.values(),async a=>{if(e.length&&!N$.default.isMatch(b.stringifyIdent(a),e))return null;let l=t.storedResolutions.get(a.descriptorHash);if(typeof l=="undefined")throw new Error(`Assertion failed: The resolution (${a.descriptorHash}) should have been registered`);let c=t.originalPackages.get(l);if(typeof c=="undefined"||!r.shouldPersistResolution(c,n))return null;let u=o.get(a.identHash);if(typeof u=="undefined")throw new Error(`Assertion failed: The resolutions (${a.identHash}) should have been registered`);if(u.size===1)return null;let g=[...u].map(I=>{let y=t.originalPackages.get(I);if(typeof y=="undefined")throw new Error(`Assertion failed: The package (${I}) should have been registered`);return y.reference}),h=await r.getSatisfying(a,g,n),f=h==null?void 0:h[0];if(typeof f=="undefined")return null;let p=f.locatorHash,m=t.originalPackages.get(p);if(typeof m=="undefined")throw new Error(`Assertion failed: The package (${p}) should have been registered`);return p===l?null:{descriptor:a,currentPackage:c,updatedPackage:m}})}};async function O$(t,{strategy:e,patterns:r,cache:i,report:n}){let{configuration:s}=t,o=new mr,a=s.makeResolver(),l=s.makeFetcher(),c={cache:i,checksums:t.storedChecksums,fetcher:l,project:t,report:o,skipIntegrityCheck:!0},u={project:t,resolver:a,report:o,fetchOptions:c};return await n.startTimerPromise("Deduplication step",async()=>{let h=await cUe[e](t,r,{resolver:a,resolveOptions:u,fetcher:l,fetchOptions:c}),f=ti.progressViaCounter(h.length);n.reportProgress(f);let p=0;await Promise.all(h.map(y=>y.then(B=>{if(B===null)return;p++;let{descriptor:P,currentPackage:k,updatedPackage:N}=B;n.reportInfo(J.UNNAMED,`${b.prettyDescriptor(s,P)} can be deduped from ${b.prettyLocator(s,k)} to ${b.prettyLocator(s,N)}`),n.reportJson({descriptor:b.stringifyDescriptor(P),currentResolution:b.stringifyLocator(k),updatedResolution:b.stringifyLocator(N)}),t.storedResolutions.set(P.descriptorHash,N.locatorHash)}).finally(()=>f.tick())));let m;switch(p){case 0:m="No packages";break;case 1:m="One package";break;default:m=`${p} packages`}let I=se.pretty(s,e,se.Type.CODE);return n.reportInfo(J.UNNAMED,`${m} can be deduped using the ${I} strategy`),p})}var qf=class extends Ce{constructor(){super(...arguments);this.strategy=j.String("-s,--strategy",ru.HIGHEST,{description:"The strategy to use when deduping dependencies",validator:T$.isEnum(ru)});this.check=j.Boolean("-c,--check",!1,{description:"Exit with exit code 1 when duplicates are found, without persisting the dependency tree"});this.json=j.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"});this.patterns=j.Rest()}async execute(){let e=await oe.find(this.context.cwd,this.context.plugins),{project:r}=await ke.find(e,this.context.cwd),i=await lt.find(e);await r.restoreInstallState({restoreResolutions:!1});let n=0,s=await we.start({configuration:e,includeFooter:!1,stdout:this.context.stdout,json:this.json},async o=>{n=await O$(r,{strategy:this.strategy,patterns:this.patterns,cache:i,report:o})});return s.hasErrors()?s.exitCode():this.check?n?1:0:(await we.start({configuration:e,stdout:this.context.stdout,json:this.json},async a=>{await r.install({cache:i,report:a})})).exitCode()}};qf.paths=[["dedupe"]],qf.usage=ce.Usage({description:"deduplicate dependencies with overlapping ranges",details:"\n Duplicates are defined as descriptors with overlapping ranges being resolved and locked to different locators. They are a natural consequence of Yarn's deterministic installs, but they can sometimes pile up and unnecessarily increase the size of your project.\n\n This command dedupes dependencies in the current project using different strategies (only one is implemented at the moment):\n\n - `highest`: Reuses (where possible) the locators with the highest versions. This means that dependencies can only be upgraded, never downgraded. It's also guaranteed that it never takes more than a single pass to dedupe the entire dependency tree.\n\n **Note:** Even though it never produces a wrong dependency tree, this command should be used with caution, as it modifies the dependency tree, which can sometimes cause problems when packages don't strictly follow semver recommendations. Because of this, it is recommended to also review the changes manually.\n\n If set, the `-c,--check` flag will only report the found duplicates, without persisting the modified dependency tree. If changes are found, the command will exit with a non-zero exit code, making it suitable for CI purposes.\n\n This command accepts glob patterns as arguments (if valid Idents and supported by [micromatch](https://github.com/micromatch/micromatch)). Make sure to escape the patterns, to prevent your own shell from trying to expand them.\n\n ### In-depth explanation:\n\n Yarn doesn't deduplicate dependencies by default, otherwise installs wouldn't be deterministic and the lockfile would be useless. What it actually does is that it tries to not duplicate dependencies in the first place.\n\n **Example:** If `foo@^2.3.4` (a dependency of a dependency) has already been resolved to `foo@2.3.4`, running `yarn add foo@*`will cause Yarn to reuse `foo@2.3.4`, even if the latest `foo` is actually `foo@2.10.14`, thus preventing unnecessary duplication.\n\n Duplication happens when Yarn can't unlock dependencies that have already been locked inside the lockfile.\n\n **Example:** If `foo@^2.3.4` (a dependency of a dependency) has already been resolved to `foo@2.3.4`, running `yarn add foo@2.10.14` will cause Yarn to install `foo@2.10.14` because the existing resolution doesn't satisfy the range `2.10.14`. This behavior can lead to (sometimes) unwanted duplication, since now the lockfile contains 2 separate resolutions for the 2 `foo` descriptors, even though they have overlapping ranges, which means that the lockfile can be simplified so that both descriptors resolve to `foo@2.10.14`.\n ",examples:[["Dedupe all packages","$0 dedupe"],["Dedupe all packages using a specific strategy","$0 dedupe --strategy highest"],["Dedupe a specific package","$0 dedupe lodash"],["Dedupe all packages with the `@babel/*` scope","$0 dedupe '@babel/*'"],["Check for duplicates (can be used as a CI step)","$0 dedupe --check"]]});var K$=qf;var cy=class extends ce{async execute(){let{plugins:e}=await oe.find(this.context.cwd,this.context.plugins),r=[];for(let o of e){let{commands:a}=o[1];if(a){let c=jn.from(a).definitions();r.push([o[0],c])}}let i=this.cli.definitions(),n=(o,a)=>o.split(" ").slice(1).join()===a.split(" ").slice(1).join(),s=H$()["@yarnpkg/builder"].bundles.standard;for(let o of r){let a=o[1];for(let l of a)i.find(c=>n(c.path,l.path)).plugin={name:o[0],isDefault:s.includes(o[0])}}this.context.stdout.write(`${JSON.stringify({commands:i},null,2)} -`)}};cy.paths=[["--clipanion=definitions"]];var Y$=cy;var uy=class extends ce{async execute(){this.context.stdout.write(this.cli.usage(null))}};uy.paths=[["help"],["--help"],["-h"]];var j$=uy;var pk=class extends ce{constructor(){super(...arguments);this.leadingArgument=j.String();this.args=j.Proxy()}async execute(){if(this.leadingArgument.match(/[\\/]/)&&!b.tryParseIdent(this.leadingArgument)){let e=w.resolve(this.context.cwd,npath.toPortablePath(this.leadingArgument));return await this.cli.run(this.args,{cwd:e})}else return await this.cli.run(["run",this.leadingArgument,...this.args])}},G$=pk;var gy=class extends ce{async execute(){this.context.stdout.write(`${Mi||""} -`)}};gy.paths=[["-v"],["--version"]];var q$=gy;var Jf=class extends Ce{constructor(){super(...arguments);this.commandName=j.String();this.args=j.Proxy()}async execute(){let e=await oe.find(this.context.cwd,this.context.plugins),{project:r,locator:i}=await ke.find(e,this.context.cwd);return await R.mktempPromise(async n=>{let{code:s}=await ur.pipevp(this.commandName,this.args,{cwd:this.context.cwd,stdin:this.context.stdin,stdout:this.context.stdout,stderr:this.context.stderr,env:await Et.makeScriptEnv({project:r,locator:i,binFolder:n})});return s})}};Jf.paths=[["exec"]],Jf.usage=ce.Usage({description:"execute a shell command",details:` - This command simply executes a shell binary within the context of the root directory of the active workspace. + `,examples:[["Print the active configuration settings","$0 config"]]});var fte=Dp;Fn();var bv={};$e(bv,{Strategy:()=>gl,acceptedStrategies:()=>$2e,dedupe:()=>Dv});var pte=te(Yi()),gl;(function(e){e.HIGHEST="highest"})(gl||(gl={}));var $2e=new Set(Object.values(gl)),eHe={highest:async(t,e,{resolver:r,fetcher:i,resolveOptions:n,fetchOptions:s})=>{let o=new Map;for(let[a,l]of t.storedResolutions){let c=t.storedDescriptors.get(a);if(typeof c=="undefined")throw new Error(`Assertion failed: The descriptor (${a}) should have been registered`);de.getSetWithDefault(o,c.identHash).add(l)}return Array.from(t.storedDescriptors.values(),async a=>{if(e.length&&!pte.default.isMatch(Q.stringifyIdent(a),e))return null;let l=t.storedResolutions.get(a.descriptorHash);if(typeof l=="undefined")throw new Error(`Assertion failed: The resolution (${a.descriptorHash}) should have been registered`);let c=t.originalPackages.get(l);if(typeof c=="undefined"||!r.shouldPersistResolution(c,n))return null;let u=o.get(a.identHash);if(typeof u=="undefined")throw new Error(`Assertion failed: The resolutions (${a.identHash}) should have been registered`);if(u.size===1)return null;let g=[...u].map(I=>{let y=t.originalPackages.get(I);if(typeof y=="undefined")throw new Error(`Assertion failed: The package (${I}) should have been registered`);return y.reference}),h=await r.getSatisfying(a,g,n),f=h==null?void 0:h[0];if(typeof f=="undefined")return null;let p=f.locatorHash,m=t.originalPackages.get(p);if(typeof m=="undefined")throw new Error(`Assertion failed: The package (${p}) should have been registered`);return p===l?null:{descriptor:a,currentPackage:c,updatedPackage:m}})}};async function Dv(t,{strategy:e,patterns:r,cache:i,report:n}){let{configuration:s}=t,o=new wr,a=s.makeResolver(),l=s.makeFetcher(),c={cache:i,checksums:t.storedChecksums,fetcher:l,project:t,report:o,skipIntegrityCheck:!0},u={project:t,resolver:a,report:o,fetchOptions:c};return await n.startTimerPromise("Deduplication step",async()=>{let h=await eHe[e](t,r,{resolver:a,resolveOptions:u,fetcher:l,fetchOptions:c}),f=ci.progressViaCounter(h.length);n.reportProgress(f);let p=0;await Promise.all(h.map(y=>y.then(w=>{if(w===null)return;p++;let{descriptor:x,currentPackage:F,updatedPackage:N}=w;n.reportInfo(z.UNNAMED,`${Q.prettyDescriptor(s,x)} can be deduped from ${Q.prettyLocator(s,F)} to ${Q.prettyLocator(s,N)}`),n.reportJson({descriptor:Q.stringifyDescriptor(x),currentResolution:Q.stringifyLocator(F),updatedResolution:Q.stringifyLocator(N)}),t.storedResolutions.set(x.descriptorHash,N.locatorHash)}).finally(()=>f.tick())));let m;switch(p){case 0:m="No packages";break;case 1:m="One package";break;default:m=`${p} packages`}let I=Ae.pretty(s,e,Ae.Type.CODE);return n.reportInfo(z.UNNAMED,`${m} can be deduped using the ${I} strategy`),p})}var Sp=class extends Be{constructor(){super(...arguments);this.strategy=G.String("-s,--strategy",gl.HIGHEST,{description:"The strategy to use when deduping dependencies",validator:ni(gl)});this.check=G.Boolean("-c,--check",!1,{description:"Exit with exit code 1 when duplicates are found, without persisting the dependency tree"});this.json=G.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"});this.mode=G.String("--mode",{description:"Change what artifacts installs generate",validator:ni(kr)});this.patterns=G.Rest()}async execute(){let e=await le.find(this.context.cwd,this.context.plugins),{project:r}=await Fe.find(e,this.context.cwd),i=await gt.find(e);await r.restoreInstallState({restoreResolutions:!1});let n=0,s=await xe.start({configuration:e,includeFooter:!1,stdout:this.context.stdout,json:this.json},async o=>{n=await Dv(r,{strategy:this.strategy,patterns:this.patterns,cache:i,report:o})});return s.hasErrors()?s.exitCode():this.check?n?1:0:(await xe.start({configuration:e,stdout:this.context.stdout,json:this.json},async a=>{await r.install({cache:i,report:a,mode:this.mode})})).exitCode()}};Sp.paths=[["dedupe"]],Sp.usage=fe.Usage({description:"deduplicate dependencies with overlapping ranges",details:"\n Duplicates are defined as descriptors with overlapping ranges being resolved and locked to different locators. They are a natural consequence of Yarn's deterministic installs, but they can sometimes pile up and unnecessarily increase the size of your project.\n\n This command dedupes dependencies in the current project using different strategies (only one is implemented at the moment):\n\n - `highest`: Reuses (where possible) the locators with the highest versions. This means that dependencies can only be upgraded, never downgraded. It's also guaranteed that it never takes more than a single pass to dedupe the entire dependency tree.\n\n **Note:** Even though it never produces a wrong dependency tree, this command should be used with caution, as it modifies the dependency tree, which can sometimes cause problems when packages don't strictly follow semver recommendations. Because of this, it is recommended to also review the changes manually.\n\n If set, the `-c,--check` flag will only report the found duplicates, without persisting the modified dependency tree. If changes are found, the command will exit with a non-zero exit code, making it suitable for CI purposes.\n\n If the `--mode=` option is set, Yarn will change which artifacts are generated. The modes currently supported are:\n\n - `skip-build` will not run the build scripts at all. Note that this is different from setting `enableScripts` to false because the later will disable build scripts, and thus affect the content of the artifacts generated on disk, whereas the former will just disable the build step - but not the scripts themselves, which just won't run.\n\n - `update-lockfile` will skip the link step altogether, and only fetch packages that are missing from the lockfile (or that have no associated checksums). This mode is typically used by tools like Renovate or Dependabot to keep a lockfile up-to-date without incurring the full install cost.\n\n This command accepts glob patterns as arguments (if valid Idents and supported by [micromatch](https://github.com/micromatch/micromatch)). Make sure to escape the patterns, to prevent your own shell from trying to expand them.\n\n ### In-depth explanation:\n\n Yarn doesn't deduplicate dependencies by default, otherwise installs wouldn't be deterministic and the lockfile would be useless. What it actually does is that it tries to not duplicate dependencies in the first place.\n\n **Example:** If `foo@^2.3.4` (a dependency of a dependency) has already been resolved to `foo@2.3.4`, running `yarn add foo@*`will cause Yarn to reuse `foo@2.3.4`, even if the latest `foo` is actually `foo@2.10.14`, thus preventing unnecessary duplication.\n\n Duplication happens when Yarn can't unlock dependencies that have already been locked inside the lockfile.\n\n **Example:** If `foo@^2.3.4` (a dependency of a dependency) has already been resolved to `foo@2.3.4`, running `yarn add foo@2.10.14` will cause Yarn to install `foo@2.10.14` because the existing resolution doesn't satisfy the range `2.10.14`. This behavior can lead to (sometimes) unwanted duplication, since now the lockfile contains 2 separate resolutions for the 2 `foo` descriptors, even though they have overlapping ranges, which means that the lockfile can be simplified so that both descriptors resolve to `foo@2.10.14`.\n ",examples:[["Dedupe all packages","$0 dedupe"],["Dedupe all packages using a specific strategy","$0 dedupe --strategy highest"],["Dedupe a specific package","$0 dedupe lodash"],["Dedupe all packages with the `@babel/*` scope","$0 dedupe '@babel/*'"],["Check for duplicates (can be used as a CI step)","$0 dedupe --check"]]});var dte=Sp;var iB=class extends fe{async execute(){let{plugins:e}=await le.find(this.context.cwd,this.context.plugins),r=[];for(let o of e){let{commands:a}=o[1];if(a){let c=rs.from(a).definitions();r.push([o[0],c])}}let i=this.cli.definitions(),n=(o,a)=>o.split(" ").slice(1).join()===a.split(" ").slice(1).join(),s=mte()["@yarnpkg/builder"].bundles.standard;for(let o of r){let a=o[1];for(let l of a)i.find(c=>n(c.path,l.path)).plugin={name:o[0],isDefault:s.includes(o[0])}}this.context.stdout.write(`${JSON.stringify({commands:i},null,2)} +`)}};iB.paths=[["--clipanion=definitions"]];var Ite=iB;var nB=class extends fe{async execute(){this.context.stdout.write(this.cli.usage(null))}};nB.paths=[["help"],["--help"],["-h"]];var Ete=nB;var Sv=class extends fe{constructor(){super(...arguments);this.leadingArgument=G.String();this.args=G.Proxy()}async execute(){if(this.leadingArgument.match(/[\\/]/)&&!Q.tryParseIdent(this.leadingArgument)){let e=B.resolve(this.context.cwd,L.toPortablePath(this.leadingArgument));return await this.cli.run(this.args,{cwd:e})}else return await this.cli.run(["run",this.leadingArgument,...this.args])}},yte=Sv;var sB=class extends fe{async execute(){this.context.stdout.write(`${yr||""} +`)}};sB.paths=[["-v"],["--version"]];var Bte=sB;var xp=class extends Be{constructor(){super(...arguments);this.commandName=G.String();this.args=G.Proxy()}async execute(){let e=await le.find(this.context.cwd,this.context.plugins),{project:r,locator:i}=await Fe.find(e,this.context.cwd);return await M.mktempPromise(async n=>await Fc(this.commandName,this.args,{cwd:this.context.cwd,stdin:this.context.stdin,stdout:this.context.stdout,stderr:this.context.stderr,env:await bt.makeScriptEnv({project:r,locator:i,binFolder:n})}))}};xp.paths=[["exec"]],xp.usage=fe.Usage({description:"execute a shell script",details:` + This command simply executes a shell script within the context of the root directory of the active workspace using the portable shell. It also makes sure to call it in a way that's compatible with the current project (for example, on PnP projects the environment will be setup in such a way that PnP will be correctly injected into the environment). - `,examples:[["Execute a shell command","$0 exec echo Hello World"]]});var J$=Jf;var iu=X(Qo()),Wf=class extends Ce{constructor(){super(...arguments);this.hash=j.String({required:!1,validator:iu.applyCascade(iu.isString(),[iu.matchesRegExp(/^p[0-9a-f]{5}$/)])})}async execute(){let e=await oe.find(this.context.cwd,this.context.plugins),{project:r}=await ke.find(e,this.context.cwd);return await r.restoreInstallState({restoreResolutions:!1}),await r.applyLightResolution(),typeof this.hash!="undefined"?await uUe(this.hash,r,{stdout:this.context.stdout}):(await we.start({configuration:e,stdout:this.context.stdout,includeFooter:!1},async n=>{var o;let s=[([,a])=>b.stringifyLocator(r.storedPackages.get(a.subject)),([,a])=>b.stringifyIdent(a.requested)];for(let[a,l]of he.sortMap(r.peerRequirements,s)){let c=r.storedPackages.get(l.subject);if(typeof c=="undefined")throw new Error("Assertion failed: Expected the subject package to have been registered");let u=r.storedPackages.get(l.rootRequester);if(typeof u=="undefined")throw new Error("Assertion failed: Expected the root package to have been registered");let g=(o=c.dependencies.get(l.requested.identHash))!=null?o:null,h=se.pretty(e,a,se.Type.CODE),f=b.prettyLocator(e,c),p=b.prettyIdent(e,l.requested),m=b.prettyIdent(e,u),I=l.allRequesters.length-1,y=`descendant${I===1?"":"s"}`,B=I>0?` and ${I} ${y}`:"",P=g!==null?"provides":"doesn't provide";n.reportInfo(null,`${h} \u2192 ${f} ${P} ${p} to ${m}${B}`)}})).exitCode()}};Wf.paths=[["explain","peer-requirements"]],Wf.usage=ce.Usage({description:"explain a set of peer requirements",details:` + `,examples:[["Execute a single shell command","$0 exec echo Hello World"],["Execute a shell script",'$0 exec "tsc & babel src --out-dir lib"']]});var wte=xp;Fn();var Pp=class extends Be{constructor(){super(...arguments);this.hash=G.String({required:!1,validator:DQ(bQ(),[SQ(/^p[0-9a-f]{5}$/)])})}async execute(){let e=await le.find(this.context.cwd,this.context.plugins),{project:r}=await Fe.find(e,this.context.cwd);return await r.restoreInstallState({restoreResolutions:!1}),await r.applyLightResolution(),typeof this.hash!="undefined"?await tHe(this.hash,r,{stdout:this.context.stdout}):(await xe.start({configuration:e,stdout:this.context.stdout,includeFooter:!1},async n=>{var o;let s=[([,a])=>Q.stringifyLocator(r.storedPackages.get(a.subject)),([,a])=>Q.stringifyIdent(a.requested)];for(let[a,l]of de.sortMap(r.peerRequirements,s)){let c=r.storedPackages.get(l.subject);if(typeof c=="undefined")throw new Error("Assertion failed: Expected the subject package to have been registered");let u=r.storedPackages.get(l.rootRequester);if(typeof u=="undefined")throw new Error("Assertion failed: Expected the root package to have been registered");let g=(o=c.dependencies.get(l.requested.identHash))!=null?o:null,h=Ae.pretty(e,a,Ae.Type.CODE),f=Q.prettyLocator(e,c),p=Q.prettyIdent(e,l.requested),m=Q.prettyIdent(e,u),I=l.allRequesters.length-1,y=`descendant${I===1?"":"s"}`,w=I>0?` and ${I} ${y}`:"",x=g!==null?"provides":"doesn't provide";n.reportInfo(null,`${h} \u2192 ${f} ${x} ${p} to ${m}${w}`)}})).exitCode()}};Pp.paths=[["explain","peer-requirements"]],Pp.usage=fe.Usage({description:"explain a set of peer requirements",details:` A set of peer requirements represents all peer requirements that a dependent must satisfy when providing a given peer request to a requester and its descendants. When the hash argument is specified, this command prints a detailed explanation of all requirements of the set corresponding to the hash and whether they're satisfied or not. @@ -337,7 +345,7 @@ $2`).replace(/^│\n/,"");if(n>=3)throw new Error("Only the first two levels are When used without arguments, this command lists all sets of peer requirements and the corresponding hash that can be used to get detailed information about a given set. **Note:** A hash is a six-letter p-prefixed code that can be obtained from peer dependency warnings or from the list of all peer requirements (\`yarn explain peer-requirements\`). - `,examples:[["Explain the corresponding set of peer requirements for a hash","$0 explain peer-requirements p1a4ed"],["List all sets of peer requirements","$0 explain peer-requirements"]]});var W$=Wf;async function uUe(t,e,r){let{configuration:i}=e,n=e.peerRequirements.get(t);if(typeof n=="undefined")throw new Error(`No peerDependency requirements found for hash: "${t}"`);return(await we.start({configuration:i,stdout:r.stdout,includeFooter:!1},async o=>{var y,B;let a=e.storedPackages.get(n.subject);if(typeof a=="undefined")throw new Error("Assertion failed: Expected the subject package to have been registered");let l=e.storedPackages.get(n.rootRequester);if(typeof l=="undefined")throw new Error("Assertion failed: Expected the root package to have been registered");let c=(y=a.dependencies.get(n.requested.identHash))!=null?y:null,u=c!==null?e.storedResolutions.get(c.descriptorHash):null;if(typeof u=="undefined")throw new Error("Assertion failed: Expected the resolution to have been registered");let g=u!==null?e.storedPackages.get(u):null;if(typeof g=="undefined")throw new Error("Assertion failed: Expected the provided package to have been registered");let h=[...n.allRequesters.values()].map(P=>{let k=e.storedPackages.get(P);if(typeof k=="undefined")throw new Error("Assertion failed: Expected the package to be registered");let N=b.devirtualizeLocator(k),O=e.storedPackages.get(N.locatorHash);if(typeof O=="undefined")throw new Error("Assertion failed: Expected the package to be registered");let v=O.peerDependencies.get(n.requested.identHash);if(typeof v=="undefined")throw new Error("Assertion failed: Expected the peer dependency to be registered");return{pkg:k,peerDependency:v}});if(g!==null){let P=h.every(({peerDependency:k})=>St.satisfiesWithPrereleases(g.version,k.range));o.reportInfo(J.UNNAMED,`${b.prettyLocator(i,a)} provides ${b.prettyLocator(i,g)} with version ${b.prettyReference(i,(B=g.version)!=null?B:"")}, which ${P?"satisfies":"doesn't satisfy"} the following requirements:`)}else o.reportInfo(J.UNNAMED,`${b.prettyLocator(i,a)} doesn't provide ${b.prettyIdent(i,n.requested)}, breaking the following requirements:`);o.reportSeparator();let f=se.mark(i),p=[];for(let{pkg:P,peerDependency:k}of he.sortMap(h,N=>b.stringifyLocator(N.pkg))){let O=(g!==null?St.satisfiesWithPrereleases(g.version,k.range):!1)?f.Check:f.Cross;p.push({stringifiedLocator:b.stringifyLocator(P),prettyLocator:b.prettyLocator(i,P),prettyRange:b.prettyRange(i,k.range),mark:O})}let m=Math.max(...p.map(({stringifiedLocator:P})=>P.length)),I=Math.max(...p.map(({prettyRange:P})=>P.length));for(let{stringifiedLocator:P,prettyLocator:k,prettyRange:N,mark:O}of he.sortMap(p,({stringifiedLocator:v})=>v))o.reportInfo(null,`${k.padEnd(m+(k.length-P.length)," ")} \u2192 ${N.padEnd(I," ")} ${O}`);p.length>1&&(o.reportSeparator(),o.reportInfo(J.UNNAMED,`Note: these requirements start with ${b.prettyLocator(e.configuration,l)}`))})).exitCode()}var z$=X(Qn()),zf=class extends Ce{constructor(){super(...arguments);this.all=j.Boolean("-A,--all",!1,{description:"Print versions of a package from the whole project"});this.recursive=j.Boolean("-R,--recursive",!1,{description:"Print information for all packages, including transitive dependencies"});this.extra=j.Array("-X,--extra",[],{description:"An array of requests of extra data provided by plugins"});this.cache=j.Boolean("--cache",!1,{description:"Print information about the cache entry of a package (path, size, checksum)"});this.dependents=j.Boolean("--dependents",!1,{description:"Print all dependents for each matching package"});this.manifest=j.Boolean("--manifest",!1,{description:"Print data obtained by looking at the package archive (license, homepage, ...)"});this.nameOnly=j.Boolean("--name-only",!1,{description:"Only print the name for the matching packages"});this.virtuals=j.Boolean("--virtuals",!1,{description:"Print each instance of the virtual packages"});this.json=j.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"});this.patterns=j.Rest()}async execute(){let e=await oe.find(this.context.cwd,this.context.plugins),{project:r,workspace:i}=await ke.find(e,this.context.cwd),n=await lt.find(e);if(!i&&!this.all)throw new Xe(r.cwd,this.context.cwd);await r.restoreInstallState();let s=new Set(this.extra);this.cache&&s.add("cache"),this.dependents&&s.add("dependents"),this.manifest&&s.add("manifest");let o=(P,{recursive:k})=>{let N=P.anchoredLocator.locatorHash,O=new Map,v=[N];for(;v.length>0;){let U=v.shift();if(O.has(U))continue;let re=r.storedPackages.get(U);if(typeof re=="undefined")throw new Error("Assertion failed: Expected the package to be registered");if(O.set(U,re),b.isVirtualLocator(re)&&v.push(b.devirtualizeLocator(re).locatorHash),!(!k&&U!==N))for(let F of re.dependencies.values()){let A=r.storedResolutions.get(F.descriptorHash);if(typeof A=="undefined")throw new Error("Assertion failed: Expected the resolution to be registered");v.push(A)}}return O.values()},a=({recursive:P})=>{let k=new Map;for(let N of r.workspaces)for(let O of o(N,{recursive:P}))k.set(O.locatorHash,O);return k.values()},l=({all:P,recursive:k})=>P&&k?r.storedPackages.values():P?a({recursive:k}):o(i,{recursive:k}),c=({all:P,recursive:k})=>{let N=l({all:P,recursive:k}),O=this.patterns.map(re=>{let F=b.parseLocator(re),A=z$.default.makeRe(b.stringifyIdent(F)),q=b.isVirtualLocator(F),Z=q?b.devirtualizeLocator(F):F;return $=>{let T=b.stringifyIdent($);if(!A.test(T))return!1;if(F.reference==="unknown")return!0;let G=b.isVirtualLocator($),Qe=G?b.devirtualizeLocator($):$;return!(q&&G&&F.reference!==$.reference||Z.reference!==Qe.reference)}}),v=he.sortMap([...N],re=>b.stringifyLocator(re));return{selection:v.filter(re=>O.length===0||O.some(F=>F(re))),sortedLookup:v}},{selection:u,sortedLookup:g}=c({all:this.all,recursive:this.recursive});if(u.length===0)throw new UsageError("No package matched your request");let h=new Map;if(this.dependents)for(let P of g)for(let k of P.dependencies.values()){let N=r.storedResolutions.get(k.descriptorHash);if(typeof N=="undefined")throw new Error("Assertion failed: Expected the resolution to be registered");he.getArrayWithDefault(h,N).push(P)}let f=new Map;for(let P of g){if(!b.isVirtualLocator(P))continue;let k=b.devirtualizeLocator(P);he.getArrayWithDefault(f,k.locatorHash).push(P)}let p={},m={children:p},I=e.makeFetcher(),y={project:r,fetcher:I,cache:n,checksums:r.storedChecksums,report:new mr,skipIntegrityCheck:!0},B=[async(P,k,N)=>{var U,re;if(!k.has("manifest"))return;let O=await I.fetch(P,y),v;try{v=await je.find(O.prefixPath,{baseFs:O.packageFs})}finally{(U=O.releaseFs)==null||U.call(O)}N("Manifest",{License:se.tuple(se.Type.NO_HINT,v.license),Homepage:se.tuple(se.Type.URL,(re=v.raw.homepage)!=null?re:null)})},async(P,k,N)=>{var F;if(!k.has("cache"))return;let O=(F=r.storedChecksums.get(P.locatorHash))!=null?F:null,v=n.getLocatorPath(P,O),U;if(v!==null)try{U=R.statSync(v)}catch{}let re=typeof U!="undefined"?[U.size,se.Type.SIZE]:void 0;N("Cache",{Checksum:se.tuple(se.Type.NO_HINT,O),Path:se.tuple(se.Type.PATH,v),Size:re})}];for(let P of u){let k=b.isVirtualLocator(P);if(!this.virtuals&&k)continue;let N={},O={value:[P,se.Type.LOCATOR],children:N};if(p[b.stringifyLocator(P)]=O,this.nameOnly){delete O.children;continue}let v=f.get(P.locatorHash);typeof v!="undefined"&&(N.Instances={label:"Instances",value:se.tuple(se.Type.NUMBER,v.length)}),N.Version={label:"Version",value:se.tuple(se.Type.NO_HINT,P.version)};let U=(F,A)=>{let q={};if(N[F]=q,Array.isArray(A))q.children=A.map(Z=>({value:Z}));else{let Z={};q.children=Z;for(let[$,T]of Object.entries(A))typeof T!="undefined"&&(Z[$]={label:$,value:T})}};if(!k){for(let F of B)await F(P,s,U);await e.triggerHook(F=>F.fetchPackageInfo,P,s,U)}P.bin.size>0&&!k&&U("Exported Binaries",[...P.bin.keys()].map(F=>se.tuple(se.Type.PATH,F)));let re=h.get(P.locatorHash);typeof re!="undefined"&&re.length>0&&U("Dependents",re.map(F=>se.tuple(se.Type.LOCATOR,F))),P.dependencies.size>0&&!k&&U("Dependencies",[...P.dependencies.values()].map(F=>{var Z;let A=r.storedResolutions.get(F.descriptorHash),q=typeof A!="undefined"&&(Z=r.storedPackages.get(A))!=null?Z:null;return se.tuple(se.Type.RESOLUTION,{descriptor:F,locator:q})})),P.peerDependencies.size>0&&k&&U("Peer dependencies",[...P.peerDependencies.values()].map(F=>{var $,T;let A=P.dependencies.get(F.identHash),q=typeof A!="undefined"&&($=r.storedResolutions.get(A.descriptorHash))!=null?$:null,Z=q!==null&&(T=r.storedPackages.get(q))!=null?T:null;return se.tuple(se.Type.RESOLUTION,{descriptor:F,locator:Z})}))}vn.emitTree(m,{configuration:e,json:this.json,stdout:this.context.stdout,separators:this.nameOnly?0:2})}};zf.paths=[["info"]],zf.usage=ce.Usage({description:"see information related to packages",details:"\n This command prints various information related to the specified packages, accepting glob patterns.\n\n By default, if the locator reference is missing, Yarn will default to print the information about all the matching direct dependencies of the package for the active workspace. To instead print all versions of the package that are direct dependencies of any of your workspaces, use the `-A,--all` flag. Adding the `-R,--recursive` flag will also report transitive dependencies.\n\n Some fields will be hidden by default in order to keep the output readable, but can be selectively displayed by using additional options (`--dependents`, `--manifest`, `--virtuals`, ...) described in the option descriptions.\n\n Note that this command will only print the information directly related to the selected packages - if you wish to know why the package is there in the first place, use `yarn why` which will do just that (it also provides a `-R,--recursive` flag that may be of some help).\n ",examples:[["Show information about Lodash","$0 info lodash"]]});var X$=zf;var Xf=class extends Ce{constructor(){super(...arguments);this.json=j.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"});this.immutable=j.Boolean("--immutable",{description:"Abort with an error exit code if the lockfile was to be modified"});this.immutableCache=j.Boolean("--immutable-cache",{description:"Abort with an error exit code if the cache folder was to be modified"});this.checkCache=j.Boolean("--check-cache",!1,{description:"Always refetch the packages and ensure that their checksums are consistent"});this.inlineBuilds=j.Boolean("--inline-builds",{description:"Verbosely print the output of the build steps of dependencies"});this.skipBuilds=j.Boolean("--skip-builds",!1,{description:"Skip the build step altogether"});this.cacheFolder=j.String("--cache-folder",{hidden:!0});this.frozenLockfile=j.Boolean("--frozen-lockfile",{hidden:!0});this.ignoreEngines=j.Boolean("--ignore-engines",{hidden:!0});this.nonInteractive=j.Boolean("--non-interactive",{hidden:!0});this.preferOffline=j.Boolean("--prefer-offline",{hidden:!0});this.production=j.Boolean("--production",{hidden:!0});this.registry=j.String("--registry",{hidden:!0});this.silent=j.Boolean("--silent",{hidden:!0})}async execute(){var g;let e=await oe.find(this.context.cwd,this.context.plugins);typeof this.inlineBuilds!="undefined"&&e.useWithSource("",{enableInlineBuilds:this.inlineBuilds},e.startingCwd,{overwrite:!0});let r=!!process.env.NOW_BUILDER,i=!!process.env.NETLIFY,n=!!process.env.FUNCTION_TARGET||!!process.env.GOOGLE_RUNTIME,s=async(h,{error:f})=>{let p=await we.start({configuration:e,stdout:this.context.stdout,includeFooter:!1},async m=>{f?m.reportError(J.DEPRECATED_CLI_SETTINGS,h):m.reportWarning(J.DEPRECATED_CLI_SETTINGS,h)});return p.hasErrors()?p.exitCode():null};if(typeof this.ignoreEngines!="undefined"){let h=await s("The --ignore-engines option is deprecated; engine checking isn't a core feature anymore",{error:!r});if(h!==null)return h}if(typeof this.registry!="undefined"){let h=await s("The --registry option is deprecated; prefer setting npmRegistryServer in your .yarnrc.yml file",{error:!1});if(h!==null)return h}if(typeof this.preferOffline!="undefined"){let h=await s("The --prefer-offline flag is deprecated; use the --cached flag with 'yarn add' instead",{error:!r});if(h!==null)return h}if(typeof this.production!="undefined"){let h=await s("The --production option is deprecated on 'install'; use 'yarn workspaces focus' instead",{error:!0});if(h!==null)return h}if(typeof this.nonInteractive!="undefined"){let h=await s("The --non-interactive option is deprecated",{error:!n});if(h!==null)return h}if(typeof this.frozenLockfile!="undefined"&&(await s("The --frozen-lockfile option is deprecated; use --immutable and/or --immutable-cache instead",{error:!1}),this.immutable=this.frozenLockfile),typeof this.cacheFolder!="undefined"){let h=await s("The cache-folder option has been deprecated; use rc settings instead",{error:!i});if(h!==null)return h}let o=(g=this.immutable)!=null?g:e.get("enableImmutableInstalls");if(e.projectCwd!==null){let h=await we.start({configuration:e,json:this.json,stdout:this.context.stdout,includeFooter:!1},async f=>{await gUe(e,o)&&(f.reportInfo(J.AUTOMERGE_SUCCESS,"Automatically fixed merge conflicts \u{1F44D}"),f.reportSeparator())});if(h.hasErrors())return h.exitCode()}if(e.projectCwd!==null&&typeof e.sources.get("nodeLinker")=="undefined"){let h=e.projectCwd,f;try{f=await R.readFilePromise(w.join(h,ft.lockfile),"utf8")}catch{}if(f==null?void 0:f.includes("yarn lockfile v1")){let p=await we.start({configuration:e,json:this.json,stdout:this.context.stdout,includeFooter:!1},async m=>{m.reportInfo(J.AUTO_NM_SUCCESS,"Migrating from Yarn 1; automatically enabling the compatibility node-modules linker \u{1F44D}"),m.reportSeparator(),e.use("",{nodeLinker:"node-modules"},h,{overwrite:!0}),await oe.updateConfiguration(h,{nodeLinker:"node-modules"})});if(p.hasErrors())return p.exitCode()}}if(e.projectCwd!==null){let h=await we.start({configuration:e,json:this.json,stdout:this.context.stdout,includeFooter:!1},async f=>{var p;((p=oe.telemetry)==null?void 0:p.isNew)&&(f.reportInfo(J.TELEMETRY_NOTICE,"Yarn will periodically gather anonymous telemetry: https://yarnpkg.com/advanced/telemetry"),f.reportInfo(J.TELEMETRY_NOTICE,`Run ${se.pretty(e,"yarn config set --home enableTelemetry 0",se.Type.CODE)} to disable`),f.reportSeparator())});if(h.hasErrors())return h.exitCode()}let{project:a,workspace:l}=await ke.find(e,this.context.cwd),c=await lt.find(e,{immutable:this.immutableCache,check:this.checkCache});if(!l)throw new Xe(a.cwd,this.context.cwd);return await a.restoreInstallState({restoreResolutions:!1}),(await we.start({configuration:e,json:this.json,stdout:this.context.stdout,includeLogs:!0},async h=>{await a.install({cache:c,report:h,immutable:o,skipBuild:this.skipBuilds})})).exitCode()}};Xf.paths=[["install"],ce.Default],Xf.usage=ce.Usage({description:"install the project dependencies",details:` + `,examples:[["Explain the corresponding set of peer requirements for a hash","$0 explain peer-requirements p1a4ed"],["List all sets of peer requirements","$0 explain peer-requirements"]]});var Qte=Pp;async function tHe(t,e,r){let{configuration:i}=e,n=e.peerRequirements.get(t);if(typeof n=="undefined")throw new Error(`No peerDependency requirements found for hash: "${t}"`);return(await xe.start({configuration:i,stdout:r.stdout,includeFooter:!1},async o=>{var y,w;let a=e.storedPackages.get(n.subject);if(typeof a=="undefined")throw new Error("Assertion failed: Expected the subject package to have been registered");let l=e.storedPackages.get(n.rootRequester);if(typeof l=="undefined")throw new Error("Assertion failed: Expected the root package to have been registered");let c=(y=a.dependencies.get(n.requested.identHash))!=null?y:null,u=c!==null?e.storedResolutions.get(c.descriptorHash):null;if(typeof u=="undefined")throw new Error("Assertion failed: Expected the resolution to have been registered");let g=u!==null?e.storedPackages.get(u):null;if(typeof g=="undefined")throw new Error("Assertion failed: Expected the provided package to have been registered");let h=[...n.allRequesters.values()].map(x=>{let F=e.storedPackages.get(x);if(typeof F=="undefined")throw new Error("Assertion failed: Expected the package to be registered");let N=Q.devirtualizeLocator(F),K=e.storedPackages.get(N.locatorHash);if(typeof K=="undefined")throw new Error("Assertion failed: Expected the package to be registered");let v=K.peerDependencies.get(n.requested.identHash);if(typeof v=="undefined")throw new Error("Assertion failed: Expected the peer dependency to be registered");return{pkg:F,peerDependency:v}});if(g!==null){let x=h.every(({peerDependency:F})=>kt.satisfiesWithPrereleases(g.version,F.range));o.reportInfo(z.UNNAMED,`${Q.prettyLocator(i,a)} provides ${Q.prettyLocator(i,g)} with version ${Q.prettyReference(i,(w=g.version)!=null?w:"")}, which ${x?"satisfies":"doesn't satisfy"} the following requirements:`)}else o.reportInfo(z.UNNAMED,`${Q.prettyLocator(i,a)} doesn't provide ${Q.prettyIdent(i,n.requested)}, breaking the following requirements:`);o.reportSeparator();let f=Ae.mark(i),p=[];for(let{pkg:x,peerDependency:F}of de.sortMap(h,N=>Q.stringifyLocator(N.pkg))){let K=(g!==null?kt.satisfiesWithPrereleases(g.version,F.range):!1)?f.Check:f.Cross;p.push({stringifiedLocator:Q.stringifyLocator(x),prettyLocator:Q.prettyLocator(i,x),prettyRange:Q.prettyRange(i,F.range),mark:K})}let m=Math.max(...p.map(({stringifiedLocator:x})=>x.length)),I=Math.max(...p.map(({prettyRange:x})=>x.length));for(let{stringifiedLocator:x,prettyLocator:F,prettyRange:N,mark:K}of de.sortMap(p,({stringifiedLocator:v})=>v))o.reportInfo(null,`${F.padEnd(m+(F.length-x.length)," ")} \u2192 ${N.padEnd(I," ")} ${K}`);p.length>1&&(o.reportSeparator(),o.reportInfo(z.UNNAMED,`Note: these requirements start with ${Q.prettyLocator(e.configuration,l)}`))})).exitCode()}var bte=te(Yi()),kp=class extends Be{constructor(){super(...arguments);this.all=G.Boolean("-A,--all",!1,{description:"Print versions of a package from the whole project"});this.recursive=G.Boolean("-R,--recursive",!1,{description:"Print information for all packages, including transitive dependencies"});this.extra=G.Array("-X,--extra",[],{description:"An array of requests of extra data provided by plugins"});this.cache=G.Boolean("--cache",!1,{description:"Print information about the cache entry of a package (path, size, checksum)"});this.dependents=G.Boolean("--dependents",!1,{description:"Print all dependents for each matching package"});this.manifest=G.Boolean("--manifest",!1,{description:"Print data obtained by looking at the package archive (license, homepage, ...)"});this.nameOnly=G.Boolean("--name-only",!1,{description:"Only print the name for the matching packages"});this.virtuals=G.Boolean("--virtuals",!1,{description:"Print each instance of the virtual packages"});this.json=G.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"});this.patterns=G.Rest()}async execute(){let e=await le.find(this.context.cwd,this.context.plugins),{project:r,workspace:i}=await Fe.find(e,this.context.cwd),n=await gt.find(e);if(!i&&!this.all)throw new Xe(r.cwd,this.context.cwd);await r.restoreInstallState();let s=new Set(this.extra);this.cache&&s.add("cache"),this.dependents&&s.add("dependents"),this.manifest&&s.add("manifest");let o=(x,{recursive:F})=>{let N=x.anchoredLocator.locatorHash,K=new Map,v=[N];for(;v.length>0;){let J=v.shift();if(K.has(J))continue;let oe=r.storedPackages.get(J);if(typeof oe=="undefined")throw new Error("Assertion failed: Expected the package to be registered");if(K.set(J,oe),Q.isVirtualLocator(oe)&&v.push(Q.devirtualizeLocator(oe).locatorHash),!(!F&&J!==N))for(let T of oe.dependencies.values()){let A=r.storedResolutions.get(T.descriptorHash);if(typeof A=="undefined")throw new Error("Assertion failed: Expected the resolution to be registered");v.push(A)}}return K.values()},a=({recursive:x})=>{let F=new Map;for(let N of r.workspaces)for(let K of o(N,{recursive:x}))F.set(K.locatorHash,K);return F.values()},l=({all:x,recursive:F})=>x&&F?r.storedPackages.values():x?a({recursive:F}):o(i,{recursive:F}),c=({all:x,recursive:F})=>{let N=l({all:x,recursive:F}),K=this.patterns.map(oe=>{let T=Q.parseLocator(oe),A=bte.default.makeRe(Q.stringifyIdent(T)),W=Q.isVirtualLocator(T),ee=W?Q.devirtualizeLocator(T):T;return re=>{let H=Q.stringifyIdent(re);if(!A.test(H))return!1;if(T.reference==="unknown")return!0;let R=Q.isVirtualLocator(re),ke=R?Q.devirtualizeLocator(re):re;return!(W&&R&&T.reference!==re.reference||ee.reference!==ke.reference)}}),v=de.sortMap([...N],oe=>Q.stringifyLocator(oe));return{selection:v.filter(oe=>K.length===0||K.some(T=>T(oe))),sortedLookup:v}},{selection:u,sortedLookup:g}=c({all:this.all,recursive:this.recursive});if(u.length===0)throw new me("No package matched your request");let h=new Map;if(this.dependents)for(let x of g)for(let F of x.dependencies.values()){let N=r.storedResolutions.get(F.descriptorHash);if(typeof N=="undefined")throw new Error("Assertion failed: Expected the resolution to be registered");de.getArrayWithDefault(h,N).push(x)}let f=new Map;for(let x of g){if(!Q.isVirtualLocator(x))continue;let F=Q.devirtualizeLocator(x);de.getArrayWithDefault(f,F.locatorHash).push(x)}let p={},m={children:p},I=e.makeFetcher(),y={project:r,fetcher:I,cache:n,checksums:r.storedChecksums,report:new wr,skipIntegrityCheck:!0},w=[async(x,F,N)=>{var J,oe;if(!F.has("manifest"))return;let K=await I.fetch(x,y),v;try{v=await We.find(K.prefixPath,{baseFs:K.packageFs})}finally{(J=K.releaseFs)==null||J.call(K)}N("Manifest",{License:Ae.tuple(Ae.Type.NO_HINT,v.license),Homepage:Ae.tuple(Ae.Type.URL,(oe=v.raw.homepage)!=null?oe:null)})},async(x,F,N)=>{var T;if(!F.has("cache"))return;let K=(T=r.storedChecksums.get(x.locatorHash))!=null?T:null,v=n.getLocatorPath(x,K),J;if(v!==null)try{J=M.statSync(v)}catch{}let oe=typeof J!="undefined"?[J.size,Ae.Type.SIZE]:void 0;N("Cache",{Checksum:Ae.tuple(Ae.Type.NO_HINT,K),Path:Ae.tuple(Ae.Type.PATH,v),Size:oe})}];for(let x of u){let F=Q.isVirtualLocator(x);if(!this.virtuals&&F)continue;let N={},K={value:[x,Ae.Type.LOCATOR],children:N};if(p[Q.stringifyLocator(x)]=K,this.nameOnly){delete K.children;continue}let v=f.get(x.locatorHash);typeof v!="undefined"&&(N.Instances={label:"Instances",value:Ae.tuple(Ae.Type.NUMBER,v.length)}),N.Version={label:"Version",value:Ae.tuple(Ae.Type.NO_HINT,x.version)};let J=(T,A)=>{let W={};if(N[T]=W,Array.isArray(A))W.children=A.map(ee=>({value:ee}));else{let ee={};W.children=ee;for(let[re,H]of Object.entries(A))typeof H!="undefined"&&(ee[re]={label:re,value:H})}};if(!F){for(let T of w)await T(x,s,J);await e.triggerHook(T=>T.fetchPackageInfo,x,s,J)}x.bin.size>0&&!F&&J("Exported Binaries",[...x.bin.keys()].map(T=>Ae.tuple(Ae.Type.PATH,T)));let oe=h.get(x.locatorHash);typeof oe!="undefined"&&oe.length>0&&J("Dependents",oe.map(T=>Ae.tuple(Ae.Type.LOCATOR,T))),x.dependencies.size>0&&!F&&J("Dependencies",[...x.dependencies.values()].map(T=>{var ee;let A=r.storedResolutions.get(T.descriptorHash),W=typeof A!="undefined"&&(ee=r.storedPackages.get(A))!=null?ee:null;return Ae.tuple(Ae.Type.RESOLUTION,{descriptor:T,locator:W})})),x.peerDependencies.size>0&&F&&J("Peer dependencies",[...x.peerDependencies.values()].map(T=>{var re,H;let A=x.dependencies.get(T.identHash),W=typeof A!="undefined"&&(re=r.storedResolutions.get(A.descriptorHash))!=null?re:null,ee=W!==null&&(H=r.storedPackages.get(W))!=null?H:null;return Ae.tuple(Ae.Type.RESOLUTION,{descriptor:T,locator:ee})}))}Hn.emitTree(m,{configuration:e,json:this.json,stdout:this.context.stdout,separators:this.nameOnly?0:2})}};kp.paths=[["info"]],kp.usage=fe.Usage({description:"see information related to packages",details:"\n This command prints various information related to the specified packages, accepting glob patterns.\n\n By default, if the locator reference is missing, Yarn will default to print the information about all the matching direct dependencies of the package for the active workspace. To instead print all versions of the package that are direct dependencies of any of your workspaces, use the `-A,--all` flag. Adding the `-R,--recursive` flag will also report transitive dependencies.\n\n Some fields will be hidden by default in order to keep the output readable, but can be selectively displayed by using additional options (`--dependents`, `--manifest`, `--virtuals`, ...) described in the option descriptions.\n\n Note that this command will only print the information directly related to the selected packages - if you wish to know why the package is there in the first place, use `yarn why` which will do just that (it also provides a `-R,--recursive` flag that may be of some help).\n ",examples:[["Show information about Lodash","$0 info lodash"]]});var Dte=kp;Fn();var vp=class extends Be{constructor(){super(...arguments);this.json=G.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"});this.immutable=G.Boolean("--immutable",{description:"Abort with an error exit code if the lockfile was to be modified"});this.immutableCache=G.Boolean("--immutable-cache",{description:"Abort with an error exit code if the cache folder was to be modified"});this.checkCache=G.Boolean("--check-cache",!1,{description:"Always refetch the packages and ensure that their checksums are consistent"});this.inlineBuilds=G.Boolean("--inline-builds",{description:"Verbosely print the output of the build steps of dependencies"});this.mode=G.String("--mode",{description:"Change what artifacts installs generate",validator:ni(kr)});this.cacheFolder=G.String("--cache-folder",{hidden:!0});this.frozenLockfile=G.Boolean("--frozen-lockfile",{hidden:!0});this.ignoreEngines=G.Boolean("--ignore-engines",{hidden:!0});this.nonInteractive=G.Boolean("--non-interactive",{hidden:!0});this.preferOffline=G.Boolean("--prefer-offline",{hidden:!0});this.production=G.Boolean("--production",{hidden:!0});this.registry=G.String("--registry",{hidden:!0});this.silent=G.Boolean("--silent",{hidden:!0})}async execute(){var g;let e=await le.find(this.context.cwd,this.context.plugins);typeof this.inlineBuilds!="undefined"&&e.useWithSource("",{enableInlineBuilds:this.inlineBuilds},e.startingCwd,{overwrite:!0});let r=!!process.env.NOW_BUILDER,i=!!process.env.NETLIFY,n=!!process.env.FUNCTION_TARGET||!!process.env.GOOGLE_RUNTIME,s=async(h,{error:f})=>{let p=await xe.start({configuration:e,stdout:this.context.stdout,includeFooter:!1},async m=>{f?m.reportError(z.DEPRECATED_CLI_SETTINGS,h):m.reportWarning(z.DEPRECATED_CLI_SETTINGS,h)});return p.hasErrors()?p.exitCode():null};if(typeof this.ignoreEngines!="undefined"){let h=await s("The --ignore-engines option is deprecated; engine checking isn't a core feature anymore",{error:!r});if(h!==null)return h}if(typeof this.registry!="undefined"){let h=await s("The --registry option is deprecated; prefer setting npmRegistryServer in your .yarnrc.yml file",{error:!1});if(h!==null)return h}if(typeof this.preferOffline!="undefined"){let h=await s("The --prefer-offline flag is deprecated; use the --cached flag with 'yarn add' instead",{error:!r});if(h!==null)return h}if(typeof this.production!="undefined"){let h=await s("The --production option is deprecated on 'install'; use 'yarn workspaces focus' instead",{error:!0});if(h!==null)return h}if(typeof this.nonInteractive!="undefined"){let h=await s("The --non-interactive option is deprecated",{error:!n});if(h!==null)return h}if(typeof this.frozenLockfile!="undefined"&&(await s("The --frozen-lockfile option is deprecated; use --immutable and/or --immutable-cache instead",{error:!1}),this.immutable=this.frozenLockfile),typeof this.cacheFolder!="undefined"){let h=await s("The cache-folder option has been deprecated; use rc settings instead",{error:!i});if(h!==null)return h}let o=(g=this.immutable)!=null?g:e.get("enableImmutableInstalls");if(e.projectCwd!==null){let h=await xe.start({configuration:e,json:this.json,stdout:this.context.stdout,includeFooter:!1},async f=>{await rHe(e,o)&&(f.reportInfo(z.AUTOMERGE_SUCCESS,"Automatically fixed merge conflicts \u{1F44D}"),f.reportSeparator())});if(h.hasErrors())return h.exitCode()}if(e.projectCwd!==null&&typeof e.sources.get("nodeLinker")=="undefined"){let h=e.projectCwd,f;try{f=await M.readFilePromise(B.join(h,mt.lockfile),"utf8")}catch{}if(f==null?void 0:f.includes("yarn lockfile v1")){let p=await xe.start({configuration:e,json:this.json,stdout:this.context.stdout,includeFooter:!1},async m=>{m.reportInfo(z.AUTO_NM_SUCCESS,"Migrating from Yarn 1; automatically enabling the compatibility node-modules linker \u{1F44D}"),m.reportSeparator(),e.use("",{nodeLinker:"node-modules"},h,{overwrite:!0}),await le.updateConfiguration(h,{nodeLinker:"node-modules"})});if(p.hasErrors())return p.exitCode()}}if(e.projectCwd!==null){let h=await xe.start({configuration:e,json:this.json,stdout:this.context.stdout,includeFooter:!1},async f=>{var p;((p=le.telemetry)==null?void 0:p.isNew)&&(f.reportInfo(z.TELEMETRY_NOTICE,"Yarn will periodically gather anonymous telemetry: https://yarnpkg.com/advanced/telemetry"),f.reportInfo(z.TELEMETRY_NOTICE,`Run ${Ae.pretty(e,"yarn config set --home enableTelemetry 0",Ae.Type.CODE)} to disable`),f.reportSeparator())});if(h.hasErrors())return h.exitCode()}let{project:a,workspace:l}=await Fe.find(e,this.context.cwd),c=await gt.find(e,{immutable:this.immutableCache,check:this.checkCache});if(!l)throw new Xe(a.cwd,this.context.cwd);return await a.restoreInstallState({restoreResolutions:!1}),(await xe.start({configuration:e,json:this.json,stdout:this.context.stdout,includeLogs:!0},async h=>{await a.install({cache:c,report:h,immutable:o,mode:this.mode})})).exitCode()}};vp.paths=[["install"],fe.Default],vp.usage=fe.Usage({description:"install the project dependencies",details:` This command setup your project if needed. The installation is splitted in four different steps that each have their own characteristics: - **Resolution:** First the package manager will resolve your dependencies. The exact way a dependency version is privileged over another isn't standardized outside of the regular semver guarantees. If a package doesn't resolve to what you would expect, check that all dependencies are correctly declared (also check our website for more information: ). @@ -358,20 +366,25 @@ $2`).replace(/^│\n/,"");if(n>=3)throw new Error("Only the first two levels are If the \`--inline-builds\` option is set, Yarn will verbosely print the output of the build steps of your dependencies (instead of writing them into individual files). This is likely useful mostly for debug purposes only when using Docker-like environments. - If the \`--skip-builds\` option is set, Yarn will not run the build scripts at all. Note that this is different from setting \`enableScripts\` to false because the later will disable build scripts, and thus affect the content of the artifacts generated on disk, whereas the former will just disable the build step - but not the scripts themselves, which just won't run. - `,examples:[["Install the project","$0 install"],["Validate a project when using Zero-Installs","$0 install --immutable --immutable-cache"],["Validate a project when using Zero-Installs (slightly safer if you accept external PRs)","$0 install --immutable --immutable-cache --check-cache"]]});var V$=Xf,hUe="|||||||",fUe=">>>>>>>",pUe="=======",Z$="<<<<<<<";async function gUe(t,e){if(!t.projectCwd)return!1;let r=w.join(t.projectCwd,t.get("lockfileFilename"));if(!await R.existsPromise(r))return!1;let i=await R.readFilePromise(r,"utf8");if(!i.includes(Z$))return!1;if(e)throw new Ge(J.AUTOMERGE_IMMUTABLE,"Cannot autofix a lockfile when running an immutable install");let[n,s]=dUe(i),o,a;try{o=kr(n),a=kr(s)}catch(c){throw new Ge(J.AUTOMERGE_FAILED_TO_PARSE,"The individual variants of the lockfile failed to parse")}let l={...o,...a};for(let[c,u]of Object.entries(l))typeof u=="string"&&delete l[c];return await R.changeFilePromise(r,Os(l),{automaticNewlines:!0}),!0}function dUe(t){let e=[[],[]],r=t.split(/\r?\n/g),i=!1;for(;r.length>0;){let n=r.shift();if(typeof n=="undefined")throw new Error("Assertion failed: Some lines should remain");if(n.startsWith(Z$)){for(;r.length>0;){let s=r.shift();if(typeof s=="undefined")throw new Error("Assertion failed: Some lines should remain");if(s===pUe){i=!1;break}else if(i||s.startsWith(hUe)){i=!0;continue}else e[0].push(s)}for(;r.length>0;){let s=r.shift();if(typeof s=="undefined")throw new Error("Assertion failed: Some lines should remain");if(s.startsWith(fUe))break;e[1].push(s)}}else e[0].push(n),e[1].push(n)}return[e[0].join(` + If the \`--mode=\` option is set, Yarn will change which artifacts are generated. The modes currently supported are: + + - \`skip-build\` will not run the build scripts at all. Note that this is different from setting \`enableScripts\` to false because the later will disable build scripts, and thus affect the content of the artifacts generated on disk, whereas the former will just disable the build step - but not the scripts themselves, which just won't run. + + - \`update-lockfile\` will skip the link step altogether, and only fetch packages that are missing from the lockfile (or that have no associated checksums). This mode is typically used by tools like Renovate or Dependabot to keep a lockfile up-to-date without incurring the full install cost. + `,examples:[["Install the project","$0 install"],["Validate a project when using Zero-Installs","$0 install --immutable --immutable-cache"],["Validate a project when using Zero-Installs (slightly safer if you accept external PRs)","$0 install --immutable --immutable-cache --check-cache"]]});var Ste=vp,iHe="|||||||",nHe=">>>>>>>",sHe="=======",xte="<<<<<<<";async function rHe(t,e){if(!t.projectCwd)return!1;let r=B.join(t.projectCwd,t.get("lockfileFilename"));if(!await M.existsPromise(r))return!1;let i=await M.readFilePromise(r,"utf8");if(!i.includes(xte))return!1;if(e)throw new Ze(z.AUTOMERGE_IMMUTABLE,"Cannot autofix a lockfile when running an immutable install");let[n,s]=oHe(i),o,a;try{o=Tr(n),a=Tr(s)}catch(c){throw new Ze(z.AUTOMERGE_FAILED_TO_PARSE,"The individual variants of the lockfile failed to parse")}let l=k(k({},o),a);for(let[c,u]of Object.entries(l))typeof u=="string"&&delete l[c];return await M.changeFilePromise(r,ro(l),{automaticNewlines:!0}),!0}function oHe(t){let e=[[],[]],r=t.split(/\r?\n/g),i=!1;for(;r.length>0;){let n=r.shift();if(typeof n=="undefined")throw new Error("Assertion failed: Some lines should remain");if(n.startsWith(xte)){for(;r.length>0;){let s=r.shift();if(typeof s=="undefined")throw new Error("Assertion failed: Some lines should remain");if(s===sHe){i=!1;break}else if(i||s.startsWith(iHe)){i=!0;continue}else e[0].push(s)}for(;r.length>0;){let s=r.shift();if(typeof s=="undefined")throw new Error("Assertion failed: Some lines should remain");if(s.startsWith(nHe))break;e[1].push(s)}}else e[0].push(n),e[1].push(n)}return[e[0].join(` `),e[1].join(` -`)]}var Vf=class extends Ce{constructor(){super(...arguments);this.all=j.Boolean("-A,--all",!1,{description:"Link all workspaces belonging to the target project to the current one"});this.private=j.Boolean("-p,--private",!1,{description:"Also link private workspaces belonging to the target project to the current one"});this.relative=j.Boolean("-r,--relative",!1,{description:"Link workspaces using relative paths instead of absolute paths"});this.destination=j.String()}async execute(){let e=await oe.find(this.context.cwd,this.context.plugins),{project:r,workspace:i}=await ke.find(e,this.context.cwd),n=await lt.find(e);if(!i)throw new Xe(r.cwd,this.context.cwd);await r.restoreInstallState({restoreResolutions:!1});let s=w.resolve(this.context.cwd,npath.toPortablePath(this.destination)),o=await oe.find(s,this.context.plugins,{useRc:!1,strict:!1}),{project:a,workspace:l}=await ke.find(o,s);if(!l)throw new Xe(a.cwd,s);let c=r.topLevelWorkspace,u=[];if(this.all){for(let h of a.workspaces)h.manifest.name&&(!h.manifest.private||this.private)&&u.push(h);if(u.length===0)throw new UsageError("No workspace found to be linked in the target project")}else{if(!l.manifest.name)throw new UsageError("The target workspace doesn't have a name and thus cannot be linked");if(l.manifest.private&&!this.private)throw new UsageError("The target workspace is marked private - use the --private flag to link it anyway");u.push(l)}for(let h of u){let f=b.stringifyIdent(h.locator),p=this.relative?w.relative(r.cwd,h.cwd):h.cwd;c.manifest.resolutions.push({pattern:{descriptor:{fullName:f}},reference:`portal:${p}`})}return(await we.start({configuration:e,stdout:this.context.stdout},async h=>{await r.install({cache:n,report:h})})).exitCode()}};Vf.paths=[["link"]],Vf.usage=ce.Usage({description:"connect the local project to another one",details:"\n This command will set a new `resolutions` field in the project-level manifest and point it to the workspace at the specified location (even if part of another project).\n\n There is no `yarn unlink` command. To unlink the workspaces from the current project one must revert the changes made to the `resolutions` field.\n ",examples:[["Register a remote workspace for use in the current project","$0 link ~/ts-loader"],["Register all workspaces from a remote project for use in the current project","$0 link ~/jest --all"]]});var _$=Vf;var Zf=class extends Ce{constructor(){super(...arguments);this.args=j.Proxy()}async execute(){return this.cli.run(["exec","node",...this.args])}};Zf.paths=[["node"]],Zf.usage=ce.Usage({description:"run node with the hook already setup",details:` +`)]}var Fp=class extends Be{constructor(){super(...arguments);this.all=G.Boolean("-A,--all",!1,{description:"Link all workspaces belonging to the target project to the current one"});this.private=G.Boolean("-p,--private",!1,{description:"Also link private workspaces belonging to the target project to the current one"});this.relative=G.Boolean("-r,--relative",!1,{description:"Link workspaces using relative paths instead of absolute paths"});this.destination=G.String()}async execute(){let e=await le.find(this.context.cwd,this.context.plugins),{project:r,workspace:i}=await Fe.find(e,this.context.cwd),n=await gt.find(e);if(!i)throw new Xe(r.cwd,this.context.cwd);await r.restoreInstallState({restoreResolutions:!1});let s=B.resolve(this.context.cwd,L.toPortablePath(this.destination)),o=await le.find(s,this.context.plugins,{useRc:!1,strict:!1}),{project:a,workspace:l}=await Fe.find(o,s);if(r.cwd===a.cwd)throw new me("Invalid destination; Can't link the project to itself");if(!l)throw new Xe(a.cwd,s);let c=r.topLevelWorkspace,u=[];if(this.all){for(let h of a.workspaces)h.manifest.name&&(!h.manifest.private||this.private)&&u.push(h);if(u.length===0)throw new me("No workspace found to be linked in the target project")}else{if(!l.manifest.name)throw new me("The target workspace doesn't have a name and thus cannot be linked");if(l.manifest.private&&!this.private)throw new me("The target workspace is marked private - use the --private flag to link it anyway");u.push(l)}for(let h of u){let f=Q.stringifyIdent(h.locator),p=this.relative?B.relative(r.cwd,h.cwd):h.cwd;c.manifest.resolutions.push({pattern:{descriptor:{fullName:f}},reference:`portal:${p}`})}return(await xe.start({configuration:e,stdout:this.context.stdout},async h=>{await r.install({cache:n,report:h})})).exitCode()}};Fp.paths=[["link"]],Fp.usage=fe.Usage({description:"connect the local project to another one",details:"\n This command will set a new `resolutions` field in the project-level manifest and point it to the workspace at the specified location (even if part of another project).\n ",examples:[["Register a remote workspace for use in the current project","$0 link ~/ts-loader"],["Register all workspaces from a remote project for use in the current project","$0 link ~/jest --all"]]});var Pte=Fp;var Rp=class extends Be{constructor(){super(...arguments);this.args=G.Proxy()}async execute(){return this.cli.run(["exec","node",...this.args])}};Rp.paths=[["node"]],Rp.usage=fe.Usage({description:"run node with the hook already setup",details:` This command simply runs Node. It also makes sure to call it in a way that's compatible with the current project (for example, on PnP projects the environment will be setup in such a way that PnP will be correctly injected into the environment). The Node process will use the exact same version of Node as the one used to run Yarn itself, which might be a good way to ensure that your commands always use a consistent Node version. - `,examples:[["Run a Node script","$0 node ./my-script.js"]]});var $$=Zf;var cee=X(require("os"));var iee=X(require("os"));var CUe="https://raw.githubusercontent.com/yarnpkg/berry/master/plugins.yml";async function JA(t){let e=await Mt.get(CUe,{configuration:t});return kr(e.toString())}var _f=class extends Ce{constructor(){super(...arguments);this.json=j.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"})}async execute(){let e=await oe.find(this.context.cwd,this.context.plugins);return(await we.start({configuration:e,json:this.json,stdout:this.context.stdout},async i=>{let n=await JA(e);for(let[s,{experimental:o,...a}]of Object.entries(n)){let l=s;o&&(l+=" [experimental]"),i.reportJson({name:s,experimental:o,...a}),i.reportInfo(null,l)}})).exitCode()}};_f.paths=[["plugin","list"]],_f.usage=ce.Usage({category:"Plugin-related commands",description:"list the available official plugins",details:"\n This command prints the plugins available directly from the Yarn repository. Only those plugins can be referenced by name in `yarn plugin import`.\n ",examples:[["List the official plugins","$0 plugin list"]]});var eee=_f;var tee=X(hr()),$f=class extends Ce{constructor(){super(...arguments);this.onlyIfNeeded=j.Boolean("--only-if-needed",!1,{description:"Only lock the Yarn version if it isn't already locked"});this.version=j.String()}async execute(){let e=await oe.find(this.context.cwd,this.context.plugins);if(e.get("yarnPath")&&this.onlyIfNeeded)return 0;let r;if(this.version==="latest"||this.version==="berry")r="https://github.com/yarnpkg/berry/raw/master/packages/yarnpkg-cli/bin/yarn.js";else if(this.version==="classic")r="https://nightly.yarnpkg.com/latest.js";else if(St.satisfiesWithPrereleases(this.version,">=2.0.0"))r=`https://github.com/yarnpkg/berry/raw/%40yarnpkg/cli/${this.version}/packages/yarnpkg-cli/bin/yarn.js`;else if(St.satisfiesWithPrereleases(this.version,"^0.x || ^1.x"))r=`https://github.com/yarnpkg/yarn/releases/download/v${this.version}/yarn-${this.version}.js`;else throw St.validRange(this.version)?new UsageError("Support for ranges got removed - please use the exact version you want to install, or 'latest' to get the latest build available"):new UsageError(`Invalid version descriptor "${this.version}"`);return(await we.start({configuration:e,stdout:this.context.stdout},async n=>{n.reportInfo(J.UNNAMED,`Downloading ${se.pretty(e,r,"green")}`);let s=await Mt.get(r,{configuration:e});await dk(e,null,s,{report:n})})).exitCode()}};$f.paths=[["set","version"]],$f.usage=ce.Usage({description:"lock the Yarn version used by the project",details:"\n This command will download a specific release of Yarn directly from the Yarn GitHub repository, will store it inside your project, and will change the `yarnPath` settings from your project `.yarnrc.yml` file to point to the new file.\n\n A very good use case for this command is to enforce the version of Yarn used by the any single member of your team inside a same project - by doing this you ensure that you have control on Yarn upgrades and downgrades (including on your deployment servers), and get rid of most of the headaches related to someone using a slightly different version and getting a different behavior than you.\n ",examples:[["Download the latest release from the Yarn repository","$0 set version latest"],["Download the latest classic release from the Yarn repository","$0 set version classic"],["Download a specific Yarn 2 build","$0 set version 2.0.0-rc.30"],["Switch back to a specific Yarn 1 release","$0 set version 1.22.1"]]});var ree=$f;async function dk(t,e,r,{report:i}){var g;e===null&&await R.mktempPromise(async h=>{let f=w.join(h,"yarn.cjs");await R.writeFilePromise(f,r);let{stdout:p}=await ur.execvp(process.execPath,[npath.fromPortablePath(f),"--version"],{cwd:h,env:{...process.env,YARN_IGNORE_PATH:"1"}});if(e=p.trim(),!tee.default.valid(e))throw new Error(`Invalid semver version. ${se.pretty(t,"yarn --version",se.Type.CODE)} returned: -${e}`)});let n=(g=t.projectCwd)!=null?g:t.startingCwd,s=w.resolve(n,".yarn/releases"),o=w.resolve(s,`yarn-${e}.cjs`),a=w.relative(t.startingCwd,o),l=w.relative(n,o),c=t.get("yarnPath"),u=c===null||c.startsWith(`${s}/`);i.reportInfo(J.UNNAMED,`Saving the new release in ${se.pretty(t,a,"magenta")}`),await R.removePromise(w.dirname(o)),await R.mkdirPromise(w.dirname(o),{recursive:!0}),await R.writeFilePromise(o,r),await R.chmodPromise(o,493),u&&await oe.updateConfiguration(n,{yarnPath:l})}var mUe=/^[0-9]+$/;function nee(t){return mUe.test(t)?`pull/${t}/head`:t}var IUe=({repository:t,branch:e},r)=>[["git","init",npath.fromPortablePath(r)],["git","remote","add","origin",t],["git","fetch","origin",nee(e)],["git","reset","--hard","FETCH_HEAD"]],EUe=({branch:t})=>[["git","fetch","origin",nee(t),"--force"],["git","reset","--hard","FETCH_HEAD"],["git","clean","-dfx"]],yUe=({plugins:t,noMinify:e},r)=>[["yarn","build:cli",...new Array().concat(...t.map(i=>["--plugin",w.resolve(r,i)])),...e?["--no-minify"]:[],"|"]],ep=class extends Ce{constructor(){super(...arguments);this.installPath=j.String("--path",{description:"The path where the repository should be cloned to"});this.repository=j.String("--repository","https://github.com/yarnpkg/berry.git",{description:"The repository that should be cloned"});this.branch=j.String("--branch","master",{description:"The branch of the repository that should be cloned"});this.plugins=j.Array("--plugin",[],{description:"An array of additional plugins that should be included in the bundle"});this.noMinify=j.Boolean("--no-minify",!1,{description:"Build a bundle for development (debugging) - non-minified and non-mangled"});this.force=j.Boolean("-f,--force",!1,{description:"Always clone the repository instead of trying to fetch the latest commits"});this.skipPlugins=j.Boolean("--skip-plugins",!1,{description:"Skip updating the contrib plugins"})}async execute(){let e=await oe.find(this.context.cwd,this.context.plugins),{project:r}=await ke.find(e,this.context.cwd),i=typeof this.installPath!="undefined"?w.resolve(this.context.cwd,npath.toPortablePath(this.installPath)):w.resolve(npath.toPortablePath(iee.tmpdir()),"yarnpkg-sources",pi.makeHash(this.repository).slice(0,6));return(await we.start({configuration:e,stdout:this.context.stdout},async s=>{await mk(this,{configuration:e,report:s,target:i}),s.reportSeparator(),s.reportInfo(J.UNNAMED,"Building a fresh bundle"),s.reportSeparator(),await tp(yUe(this,i),{configuration:e,context:this.context,target:i}),s.reportSeparator();let o=w.resolve(i,"packages/yarnpkg-cli/bundles/yarn.js"),a=await R.readFilePromise(o);await dk(e,"sources",a,{report:s}),this.skipPlugins||await BUe(this,{project:r,report:s,target:i})})).exitCode()}};ep.paths=[["set","version","from","sources"]],ep.usage=ce.Usage({description:"build Yarn from master",details:` + `,examples:[["Run a Node script","$0 node ./my-script.js"]]});var kte=Rp;var Yte=te(require("os"));var Nte=te(require("os"));var aHe="https://raw.githubusercontent.com/yarnpkg/berry/master/plugins.yml";async function hl(t){let e=await Ft.get(aHe,{configuration:t});return Tr(e.toString())}var Lp=class extends Be{constructor(){super(...arguments);this.json=G.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"})}async execute(){let e=await le.find(this.context.cwd,this.context.plugins);return(await xe.start({configuration:e,json:this.json,stdout:this.context.stdout},async i=>{let n=await hl(e);for(let s of Object.entries(n)){let[l,o]=s,a=o,{experimental:c}=a,u=Lr(a,["experimental"]);let g=l;c&&(g+=" [experimental]"),i.reportJson(k({name:l,experimental:c},u)),i.reportInfo(null,g)}})).exitCode()}};Lp.paths=[["plugin","list"]],Lp.usage=fe.Usage({category:"Plugin-related commands",description:"list the available official plugins",details:"\n This command prints the plugins available directly from the Yarn repository. Only those plugins can be referenced by name in `yarn plugin import`.\n ",examples:[["List the official plugins","$0 plugin list"]]});var vte=Lp;var Fte=te(Cr()),Np=class extends Be{constructor(){super(...arguments);this.onlyIfNeeded=G.Boolean("--only-if-needed",!1,{description:"Only lock the Yarn version if it isn't already locked"});this.version=G.String()}async execute(){let e=await le.find(this.context.cwd,this.context.plugins);if(e.get("yarnPath")&&this.onlyIfNeeded)return 0;let r=()=>{if(typeof yr=="undefined")throw new me("The --install flag can only be used without explicit version specifier from the Yarn CLI");return`file://${process.argv[1]}`},i;if(this.version==="self")i=r();else if(this.version==="latest"||this.version==="berry"||this.version==="stable")i=`https://repo.yarnpkg.com/${await Rte(e,"stable")}/packages/yarnpkg-cli/bin/yarn.js`;else if(this.version==="canary")i=`https://repo.yarnpkg.com/${await Rte(e,"canary")}/packages/yarnpkg-cli/bin/yarn.js`;else if(this.version==="classic")i="https://nightly.yarnpkg.com/latest.js";else if(this.version.match(/^\.{0,2}[\\/]/)||L.isAbsolute(this.version))i=`file://${L.resolve(this.version)}`;else if(kt.satisfiesWithPrereleases(this.version,">=2.0.0"))i=`https://repo.yarnpkg.com/${this.version}/packages/yarnpkg-cli/bin/yarn.js`;else if(kt.satisfiesWithPrereleases(this.version,"^0.x || ^1.x"))i=`https://github.com/yarnpkg/yarn/releases/download/v${this.version}/yarn-${this.version}.js`;else if(kt.validRange(this.version))i=`https://repo.yarnpkg.com/${await AHe(e,this.version)}/packages/yarnpkg-cli/bin/yarn.js`;else throw new me(`Invalid version descriptor "${this.version}"`);return(await xe.start({configuration:e,stdout:this.context.stdout,includeLogs:!this.context.quiet},async s=>{let o="file://",a;i.startsWith(o)?(s.reportInfo(z.UNNAMED,`Downloading ${Ae.pretty(e,i,Cs.URL)}`),a=await M.readFilePromise(L.toPortablePath(i.slice(o.length)))):(s.reportInfo(z.UNNAMED,`Retrieving ${Ae.pretty(e,i,Cs.PATH)}`),a=await Ft.get(i,{configuration:e})),await xv(e,null,a,{report:s})})).exitCode()}};Np.paths=[["set","version"]],Np.usage=fe.Usage({description:"lock the Yarn version used by the project",details:"\n This command will download a specific release of Yarn directly from the Yarn GitHub repository, will store it inside your project, and will change the `yarnPath` settings from your project `.yarnrc.yml` file to point to the new file.\n\n A very good use case for this command is to enforce the version of Yarn used by the any single member of your team inside a same project - by doing this you ensure that you have control on Yarn upgrades and downgrades (including on your deployment servers), and get rid of most of the headaches related to someone using a slightly different version and getting a different behavior than you.\n\n The version specifier can be:\n\n - a tag:\n - `latest` / `berry` / `stable` -> the most recent stable berry (`>=2.0.0`) release\n - `canary` -> the most recent canary (release candidate) berry (`>=2.0.0`) release\n - `classic` -> the most recent classic (`^0.x || ^1.x`) release\n\n - a semver range (e.g. `2.x`) -> the most recent version satisfying the range (limited to berry releases)\n\n - a semver version (e.g. `2.4.1`, `1.22.1`)\n\n - a local file referenced through either a relative or absolute path\n\n - `self` -> the version used to invoke the command\n ",examples:[["Download the latest release from the Yarn repository","$0 set version latest"],["Download the latest canary release from the Yarn repository","$0 set version canary"],["Download the latest classic release from the Yarn repository","$0 set version classic"],["Download the most recent Yarn 3 build","$0 set version 3.x"],["Download a specific Yarn 2 build","$0 set version 2.0.0-rc.30"],["Switch back to a specific Yarn 1 release","$0 set version 1.22.1"],["Use a release from the local filesystem","$0 set version ./yarn.cjs"],["Download the version used to invoke the command","$0 set version self"]]});var Lte=Np;async function AHe(t,e){let i=(await Ft.get("https://repo.yarnpkg.com/tags",{configuration:t,jsonResponse:!0})).tags.filter(n=>kt.satisfiesWithPrereleases(n,e));if(i.length===0)throw new me(`No matching release found for range ${Ae.pretty(t,e,Ae.Type.RANGE)}.`);return i[0]}async function Rte(t,e){let r=await Ft.get("https://repo.yarnpkg.com/tags",{configuration:t,jsonResponse:!0});if(!r.latest[e])throw new me(`Tag ${Ae.pretty(t,e,Ae.Type.RANGE)} not found`);return r.latest[e]}async function xv(t,e,r,{report:i}){var g;e===null&&await M.mktempPromise(async h=>{let f=B.join(h,"yarn.cjs");await M.writeFilePromise(f,r);let{stdout:p}=await Nr.execvp(process.execPath,[L.fromPortablePath(f),"--version"],{cwd:h,env:V(k({},process.env),{YARN_IGNORE_PATH:"1"})});if(e=p.trim(),!Fte.default.valid(e))throw new Error(`Invalid semver version. ${Ae.pretty(t,"yarn --version",Ae.Type.CODE)} returned: +${e}`)});let n=(g=t.projectCwd)!=null?g:t.startingCwd,s=B.resolve(n,".yarn/releases"),o=B.resolve(s,`yarn-${e}.cjs`),a=B.relative(t.startingCwd,o),l=B.relative(n,o),c=t.get("yarnPath"),u=c===null||c.startsWith(`${s}/`);if(i.reportInfo(z.UNNAMED,`Saving the new release in ${Ae.pretty(t,a,"magenta")}`),await M.removePromise(B.dirname(o)),await M.mkdirPromise(B.dirname(o),{recursive:!0}),await M.writeFilePromise(o,r),await M.chmodPromise(o,493),u){await le.updateConfiguration(n,{yarnPath:l});let h=await We.tryFind(n)||new We;e&&de.isTaggedYarnVersion(e)&&(h.packageManager=`yarn@${e}`);let f={};h.exportTo(f);let p=B.join(n,We.fileName),m=`${JSON.stringify(f,null,h.indent)} +`;await M.changeFilePromise(p,m,{automaticNewlines:!0})}}var lHe=/^[0-9]+$/;function Mte(t){return lHe.test(t)?`pull/${t}/head`:t}var cHe=({repository:t,branch:e},r)=>[["git","init",L.fromPortablePath(r)],["git","remote","add","origin",t],["git","fetch","origin",Mte(e)],["git","reset","--hard","FETCH_HEAD"]],uHe=({branch:t})=>[["git","fetch","origin",Mte(t),"--force"],["git","reset","--hard","FETCH_HEAD"],["git","clean","-dfx"]],gHe=({plugins:t,noMinify:e},r)=>[["yarn","build:cli",...new Array().concat(...t.map(i=>["--plugin",B.resolve(r,i)])),...e?["--no-minify"]:[],"|"]],Mp=class extends Be{constructor(){super(...arguments);this.installPath=G.String("--path",{description:"The path where the repository should be cloned to"});this.repository=G.String("--repository","https://github.com/yarnpkg/berry.git",{description:"The repository that should be cloned"});this.branch=G.String("--branch","master",{description:"The branch of the repository that should be cloned"});this.plugins=G.Array("--plugin",[],{description:"An array of additional plugins that should be included in the bundle"});this.noMinify=G.Boolean("--no-minify",!1,{description:"Build a bundle for development (debugging) - non-minified and non-mangled"});this.force=G.Boolean("-f,--force",!1,{description:"Always clone the repository instead of trying to fetch the latest commits"});this.skipPlugins=G.Boolean("--skip-plugins",!1,{description:"Skip updating the contrib plugins"})}async execute(){let e=await le.find(this.context.cwd,this.context.plugins),{project:r}=await Fe.find(e,this.context.cwd),i=typeof this.installPath!="undefined"?B.resolve(this.context.cwd,L.toPortablePath(this.installPath)):B.resolve(L.toPortablePath((0,Nte.tmpdir)()),"yarnpkg-sources",Di.makeHash(this.repository).slice(0,6));return(await xe.start({configuration:e,stdout:this.context.stdout},async s=>{await kv(this,{configuration:e,report:s,target:i}),s.reportSeparator(),s.reportInfo(z.UNNAMED,"Building a fresh bundle"),s.reportSeparator(),await Op(gHe(this,i),{configuration:e,context:this.context,target:i}),s.reportSeparator();let o=B.resolve(i,"packages/yarnpkg-cli/bundles/yarn.js"),a=await M.readFilePromise(o);await xv(e,"sources",a,{report:s}),this.skipPlugins||await hHe(this,{project:r,report:s,target:i})})).exitCode()}};Mp.paths=[["set","version","from","sources"]],Mp.usage=fe.Usage({description:"build Yarn from master",details:` This command will clone the Yarn repository into a temporary folder, then build it. The resulting bundle will then be copied into the local project. By default, it also updates all contrib plugins to the same commit the bundle is built from. This behavior can be disabled by using the \`--skip-plugins\` flag. - `,examples:[["Build Yarn from master","$0 set version from sources"]]});var see=ep;async function tp(t,{configuration:e,context:r,target:i}){for(let[n,...s]of t){let o=s[s.length-1]==="|";if(o&&s.pop(),o)await ur.pipevp(n,s,{cwd:i,stdin:r.stdin,stdout:r.stdout,stderr:r.stderr,strict:!0});else{r.stdout.write(`${se.pretty(e,` $ ${[n,...s].join(" ")}`,"grey")} -`);try{await ur.execvp(n,s,{cwd:i,strict:!0})}catch(a){throw r.stdout.write(a.stdout||a.stack),a}}}}async function mk(t,{configuration:e,report:r,target:i}){let n=!1;if(!t.force&&R.existsSync(w.join(i,".git"))){r.reportInfo(J.UNNAMED,"Fetching the latest commits"),r.reportSeparator();try{await tp(EUe(t),{configuration:e,context:t.context,target:i}),n=!0}catch(s){r.reportSeparator(),r.reportWarning(J.UNNAMED,"Repository update failed; we'll try to regenerate it")}}n||(r.reportInfo(J.UNNAMED,"Cloning the remote repository"),r.reportSeparator(),await R.removePromise(i),await R.mkdirPromise(i,{recursive:!0}),await tp(IUe(t,i),{configuration:e,context:t.context,target:i}))}async function BUe(t,{project:e,report:r,target:i}){let n=await JA(e.configuration),s=new Set(Object.keys(n));for(let o of e.configuration.plugins.keys())!s.has(o)||await Ck(o,t,{project:e,report:r,target:i})}var oee=X(hr()),aee=X(require("url")),Aee=X(require("vm"));var rp=class extends Ce{constructor(){super(...arguments);this.name=j.String()}async execute(){let e=await oe.find(this.context.cwd,this.context.plugins);return(await we.start({configuration:e,stdout:this.context.stdout},async i=>{let{project:n}=await ke.find(e,this.context.cwd),s,o;if(this.name.match(/^\.{0,2}[\\/]/)||npath.isAbsolute(this.name)){let a=w.resolve(this.context.cwd,npath.toPortablePath(this.name));i.reportInfo(J.UNNAMED,`Reading ${se.pretty(e,a,se.Type.PATH)}`),s=w.relative(n.cwd,a),o=await R.readFilePromise(a)}else{let a;if(this.name.match(/^https?:/)){try{new aee.URL(this.name)}catch{throw new Ge(J.INVALID_PLUGIN_REFERENCE,`Plugin specifier "${this.name}" is neither a plugin name nor a valid url`)}s=this.name,a=this.name}else{let l=b.parseLocator(this.name.replace(/^((@yarnpkg\/)?plugin-)?/,"@yarnpkg/plugin-"));if(l.reference!=="unknown"&&!oee.default.valid(l.reference))throw new Ge(J.UNNAMED,"Official plugins only accept strict version references. Use an explicit URL if you wish to download them from another location.");let c=b.stringifyIdent(l),u=await JA(e);if(!Object.prototype.hasOwnProperty.call(u,c))throw new Ge(J.PLUGIN_NAME_NOT_FOUND,`Couldn't find a plugin named "${c}" on the remote registry. Note that only the plugins referenced on our website (https://github.com/yarnpkg/berry/blob/master/plugins.yml) can be referenced by their name; any other plugin will have to be referenced through its public url (for example https://github.com/yarnpkg/berry/raw/master/packages/plugin-typescript/bin/%40yarnpkg/plugin-typescript.js).`);s=c,a=u[c].url,l.reference!=="unknown"?a=a.replace(/\/master\//,`/${c}/${l.reference}/`):Mi!==null&&(a=a.replace(/\/master\//,`/@yarnpkg/cli/${Mi}/`))}i.reportInfo(J.UNNAMED,`Downloading ${se.pretty(e,a,"green")}`),o=await Mt.get(a,{configuration:e})}await Ik(s,o,{project:n,report:i})})).exitCode()}};rp.paths=[["plugin","import"]],rp.usage=ce.Usage({category:"Plugin-related commands",description:"download a plugin",details:` + `,examples:[["Build Yarn from master","$0 set version from sources"]]});var Ote=Mp;async function Op(t,{configuration:e,context:r,target:i}){for(let[n,...s]of t){let o=s[s.length-1]==="|";if(o&&s.pop(),o)await Nr.pipevp(n,s,{cwd:i,stdin:r.stdin,stdout:r.stdout,stderr:r.stderr,strict:!0});else{r.stdout.write(`${Ae.pretty(e,` $ ${[n,...s].join(" ")}`,"grey")} +`);try{await Nr.execvp(n,s,{cwd:i,strict:!0})}catch(a){throw r.stdout.write(a.stdout||a.stack),a}}}}async function kv(t,{configuration:e,report:r,target:i}){let n=!1;if(!t.force&&M.existsSync(B.join(i,".git"))){r.reportInfo(z.UNNAMED,"Fetching the latest commits"),r.reportSeparator();try{await Op(uHe(t),{configuration:e,context:t.context,target:i}),n=!0}catch(s){r.reportSeparator(),r.reportWarning(z.UNNAMED,"Repository update failed; we'll try to regenerate it")}}n||(r.reportInfo(z.UNNAMED,"Cloning the remote repository"),r.reportSeparator(),await M.removePromise(i),await M.mkdirPromise(i,{recursive:!0}),await Op(cHe(t,i),{configuration:e,context:t.context,target:i}))}async function hHe(t,{project:e,report:r,target:i}){let n=await hl(e.configuration),s=new Set(Object.keys(n));for(let o of e.configuration.plugins.keys())!s.has(o)||await Pv(o,t,{project:e,report:r,target:i})}var Kte=te(Cr()),Tte=te(require("url")),Ute=te(require("vm"));var Kp=class extends Be{constructor(){super(...arguments);this.name=G.String()}async execute(){let e=await le.find(this.context.cwd,this.context.plugins);return(await xe.start({configuration:e,stdout:this.context.stdout},async i=>{let{project:n}=await Fe.find(e,this.context.cwd),s,o;if(this.name.match(/^\.{0,2}[\\/]/)||L.isAbsolute(this.name)){let a=B.resolve(this.context.cwd,L.toPortablePath(this.name));i.reportInfo(z.UNNAMED,`Reading ${Ae.pretty(e,a,Ae.Type.PATH)}`),s=B.relative(n.cwd,a),o=await M.readFilePromise(a)}else{let a;if(this.name.match(/^https?:/)){try{new Tte.URL(this.name)}catch{throw new Ze(z.INVALID_PLUGIN_REFERENCE,`Plugin specifier "${this.name}" is neither a plugin name nor a valid url`)}s=this.name,a=this.name}else{let l=Q.parseLocator(this.name.replace(/^((@yarnpkg\/)?plugin-)?/,"@yarnpkg/plugin-"));if(l.reference!=="unknown"&&!Kte.default.valid(l.reference))throw new Ze(z.UNNAMED,"Official plugins only accept strict version references. Use an explicit URL if you wish to download them from another location.");let c=Q.stringifyIdent(l),u=await hl(e);if(!Object.prototype.hasOwnProperty.call(u,c))throw new Ze(z.PLUGIN_NAME_NOT_FOUND,`Couldn't find a plugin named "${c}" on the remote registry. Note that only the plugins referenced on our website (https://github.com/yarnpkg/berry/blob/master/plugins.yml) can be referenced by their name; any other plugin will have to be referenced through its public url (for example https://github.com/yarnpkg/berry/raw/master/packages/plugin-typescript/bin/%40yarnpkg/plugin-typescript.js).`);s=c,a=u[c].url,l.reference!=="unknown"?a=a.replace(/\/master\//,`/${c}/${l.reference}/`):yr!==null&&(a=a.replace(/\/master\//,`/@yarnpkg/cli/${yr}/`))}i.reportInfo(z.UNNAMED,`Downloading ${Ae.pretty(e,a,"green")}`),o=await Ft.get(a,{configuration:e})}await vv(s,o,{project:n,report:i})})).exitCode()}};Kp.paths=[["plugin","import"]],Kp.usage=fe.Usage({category:"Plugin-related commands",description:"download a plugin",details:` This command downloads the specified plugin from its remote location and updates the configuration to reference it in further CLI invocations. Three types of plugin references are accepted: @@ -381,27 +394,33 @@ ${e}`)});let n=(g=t.projectCwd)!=null?g:t.startingCwd,s=w.resolve(n,".yarn/relea - Local plugins can be referenced by their path on the disk. Plugins cannot be downloaded from the npm registry, and aren't allowed to have dependencies (they need to be bundled into a single file, possibly thanks to the \`@yarnpkg/builder\` package). - `,examples:[['Download and activate the "@yarnpkg/plugin-exec" plugin',"$0 plugin import @yarnpkg/plugin-exec"],['Download and activate the "@yarnpkg/plugin-exec" plugin (shorthand)',"$0 plugin import exec"],["Download and activate a community plugin","$0 plugin import https://example.org/path/to/plugin.js"],["Activate a local plugin","$0 plugin import ./path/to/plugin.js"]]});var lee=rp;async function Ik(t,e,{project:r,report:i}){let{configuration:n}=r,s={},o={exports:s};Aee.runInNewContext(e.toString(),{module:o,exports:s});let a=o.exports.name,l=`.yarn/plugins/${a}.cjs`,c=w.resolve(r.cwd,l);i.reportInfo(J.UNNAMED,`Saving the new plugin in ${se.pretty(n,l,"magenta")}`),await R.mkdirPromise(w.dirname(c),{recursive:!0}),await R.writeFilePromise(c,e);let u={path:l,spec:t};await oe.updateConfiguration(r.cwd,g=>{let h=[],f=!1;for(let p of g.plugins||[]){let m=typeof p!="string"?p.path:p,I=w.resolve(r.cwd,npath.toPortablePath(m)),{name:y}=he.dynamicRequire(npath.fromPortablePath(I));y!==a?h.push(p):(h.push(u),f=!0)}return f||h.push(u),{...g,plugins:h}})}var wUe=({pluginName:t,noMinify:e},r)=>[["yarn",`build:${t}`,...e?["--no-minify"]:[],"|"]],ip=class extends Ce{constructor(){super(...arguments);this.installPath=j.String("--path",{description:"The path where the repository should be cloned to"});this.repository=j.String("--repository","https://github.com/yarnpkg/berry.git",{description:"The repository that should be cloned"});this.branch=j.String("--branch","master",{description:"The branch of the repository that should be cloned"});this.noMinify=j.Boolean("--no-minify",!1,{description:"Build a plugin for development (debugging) - non-minified and non-mangled"});this.force=j.Boolean("-f,--force",!1,{description:"Always clone the repository instead of trying to fetch the latest commits"});this.name=j.String()}async execute(){let e=await oe.find(this.context.cwd,this.context.plugins),r=typeof this.installPath!="undefined"?w.resolve(this.context.cwd,npath.toPortablePath(this.installPath)):w.resolve(npath.toPortablePath(cee.tmpdir()),"yarnpkg-sources",pi.makeHash(this.repository).slice(0,6));return(await we.start({configuration:e,stdout:this.context.stdout},async n=>{let{project:s}=await ke.find(e,this.context.cwd),o=b.parseIdent(this.name.replace(/^((@yarnpkg\/)?plugin-)?/,"@yarnpkg/plugin-")),a=b.stringifyIdent(o),l=await JA(e);if(!Object.prototype.hasOwnProperty.call(l,a))throw new Ge(J.PLUGIN_NAME_NOT_FOUND,`Couldn't find a plugin named "${a}" on the remote registry. Note that only the plugins referenced on our website (https://github.com/yarnpkg/berry/blob/master/plugins.yml) can be built and imported from sources.`);let c=a;await mk(this,{configuration:e,report:n,target:r}),await Ck(c,this,{project:s,report:n,target:r})})).exitCode()}};ip.paths=[["plugin","import","from","sources"]],ip.usage=ce.Usage({category:"Plugin-related commands",description:"build a plugin from sources",details:` + `,examples:[['Download and activate the "@yarnpkg/plugin-exec" plugin',"$0 plugin import @yarnpkg/plugin-exec"],['Download and activate the "@yarnpkg/plugin-exec" plugin (shorthand)',"$0 plugin import exec"],["Download and activate a community plugin","$0 plugin import https://example.org/path/to/plugin.js"],["Activate a local plugin","$0 plugin import ./path/to/plugin.js"]]});var Hte=Kp;async function vv(t,e,{project:r,report:i}){let{configuration:n}=r,s={},o={exports:s};(0,Ute.runInNewContext)(e.toString(),{module:o,exports:s});let a=o.exports.name,l=`.yarn/plugins/${a}.cjs`,c=B.resolve(r.cwd,l);i.reportInfo(z.UNNAMED,`Saving the new plugin in ${Ae.pretty(n,l,"magenta")}`),await M.mkdirPromise(B.dirname(c),{recursive:!0}),await M.writeFilePromise(c,e);let u={path:l,spec:t};await le.updateConfiguration(r.cwd,g=>{let h=[],f=!1;for(let p of g.plugins||[]){let m=typeof p!="string"?p.path:p,I=B.resolve(r.cwd,L.toPortablePath(m)),{name:y}=de.dynamicRequire(I);y!==a?h.push(p):(h.push(u),f=!0)}return f||h.push(u),V(k({},g),{plugins:h})})}var fHe=({pluginName:t,noMinify:e},r)=>[["yarn",`build:${t}`,...e?["--no-minify"]:[],"|"]],Tp=class extends Be{constructor(){super(...arguments);this.installPath=G.String("--path",{description:"The path where the repository should be cloned to"});this.repository=G.String("--repository","https://github.com/yarnpkg/berry.git",{description:"The repository that should be cloned"});this.branch=G.String("--branch","master",{description:"The branch of the repository that should be cloned"});this.noMinify=G.Boolean("--no-minify",!1,{description:"Build a plugin for development (debugging) - non-minified and non-mangled"});this.force=G.Boolean("-f,--force",!1,{description:"Always clone the repository instead of trying to fetch the latest commits"});this.name=G.String()}async execute(){let e=await le.find(this.context.cwd,this.context.plugins),r=typeof this.installPath!="undefined"?B.resolve(this.context.cwd,L.toPortablePath(this.installPath)):B.resolve(L.toPortablePath((0,Yte.tmpdir)()),"yarnpkg-sources",Di.makeHash(this.repository).slice(0,6));return(await xe.start({configuration:e,stdout:this.context.stdout},async n=>{let{project:s}=await Fe.find(e,this.context.cwd),o=Q.parseIdent(this.name.replace(/^((@yarnpkg\/)?plugin-)?/,"@yarnpkg/plugin-")),a=Q.stringifyIdent(o),l=await hl(e);if(!Object.prototype.hasOwnProperty.call(l,a))throw new Ze(z.PLUGIN_NAME_NOT_FOUND,`Couldn't find a plugin named "${a}" on the remote registry. Note that only the plugins referenced on our website (https://github.com/yarnpkg/berry/blob/master/plugins.yml) can be built and imported from sources.`);let c=a;await kv(this,{configuration:e,report:n,target:r}),await Pv(c,this,{project:s,report:n,target:r})})).exitCode()}};Tp.paths=[["plugin","import","from","sources"]],Tp.usage=fe.Usage({category:"Plugin-related commands",description:"build a plugin from sources",details:` This command clones the Yarn repository into a temporary folder, builds the specified contrib plugin and updates the configuration to reference it in further CLI invocations. The plugins can be referenced by their short name if sourced from the official Yarn repository. - `,examples:[['Build and activate the "@yarnpkg/plugin-exec" plugin',"$0 plugin import from sources @yarnpkg/plugin-exec"],['Build and activate the "@yarnpkg/plugin-exec" plugin (shorthand)',"$0 plugin import from sources exec"]]});var uee=ip;async function Ck(t,{context:e,noMinify:r},{project:i,report:n,target:s}){let o=t.replace(/@yarnpkg\//,""),{configuration:a}=i;n.reportSeparator(),n.reportInfo(J.UNNAMED,`Building a fresh ${o}`),n.reportSeparator(),await tp(wUe({pluginName:o,noMinify:r},s),{configuration:a,context:e,target:s}),n.reportSeparator();let l=w.resolve(s,`packages/${o}/bundles/${t}.js`),c=await R.readFilePromise(l);await Ik(t,c,{project:i,report:n})}var np=class extends Ce{constructor(){super(...arguments);this.name=j.String()}async execute(){let e=await oe.find(this.context.cwd,this.context.plugins),{project:r}=await ke.find(e,this.context.cwd);return(await we.start({configuration:e,stdout:this.context.stdout},async n=>{let s=this.name,o=b.parseIdent(s);if(!e.plugins.has(s))throw new UsageError(`${b.prettyIdent(e,o)} isn't referenced by the current configuration`);let a=`.yarn/plugins/${s}.cjs`,l=w.resolve(r.cwd,a);R.existsSync(l)&&(n.reportInfo(J.UNNAMED,`Removing ${se.pretty(e,a,se.Type.PATH)}...`),await R.removePromise(l)),n.reportInfo(J.UNNAMED,"Updating the configuration..."),await oe.updateConfiguration(r.cwd,c=>{if(!Array.isArray(c.plugins))return c;let u=c.plugins.filter(g=>g.path!==a);return c.plugins.length===u.length?c:{...c,plugins:u}})})).exitCode()}};np.paths=[["plugin","remove"]],np.usage=ce.Usage({category:"Plugin-related commands",description:"remove a plugin",details:` + `,examples:[['Build and activate the "@yarnpkg/plugin-exec" plugin',"$0 plugin import from sources @yarnpkg/plugin-exec"],['Build and activate the "@yarnpkg/plugin-exec" plugin (shorthand)',"$0 plugin import from sources exec"]]});var Gte=Tp;async function Pv(t,{context:e,noMinify:r},{project:i,report:n,target:s}){let o=t.replace(/@yarnpkg\//,""),{configuration:a}=i;n.reportSeparator(),n.reportInfo(z.UNNAMED,`Building a fresh ${o}`),n.reportSeparator(),await Op(fHe({pluginName:o,noMinify:r},s),{configuration:a,context:e,target:s}),n.reportSeparator();let l=B.resolve(s,`packages/${o}/bundles/${t}.js`),c=await M.readFilePromise(l);await vv(t,c,{project:i,report:n})}var Up=class extends Be{constructor(){super(...arguments);this.name=G.String()}async execute(){let e=await le.find(this.context.cwd,this.context.plugins),{project:r}=await Fe.find(e,this.context.cwd);return(await xe.start({configuration:e,stdout:this.context.stdout},async n=>{let s=this.name,o=Q.parseIdent(s);if(!e.plugins.has(s))throw new me(`${Q.prettyIdent(e,o)} isn't referenced by the current configuration`);let a=`.yarn/plugins/${s}.cjs`,l=B.resolve(r.cwd,a);M.existsSync(l)&&(n.reportInfo(z.UNNAMED,`Removing ${Ae.pretty(e,a,Ae.Type.PATH)}...`),await M.removePromise(l)),n.reportInfo(z.UNNAMED,"Updating the configuration..."),await le.updateConfiguration(r.cwd,c=>{if(!Array.isArray(c.plugins))return c;let u=c.plugins.filter(g=>g.path!==a);return c.plugins.length===u.length?c:V(k({},c),{plugins:u})})})).exitCode()}};Up.paths=[["plugin","remove"]],Up.usage=fe.Usage({category:"Plugin-related commands",description:"remove a plugin",details:` This command deletes the specified plugin from the .yarn/plugins folder and removes it from the configuration. **Note:** The plugins have to be referenced by their name property, which can be obtained using the \`yarn plugin runtime\` command. Shorthands are not allowed. - `,examples:[["Remove a plugin imported from the Yarn repository","$0 plugin remove @yarnpkg/plugin-typescript"],["Remove a plugin imported from a local file","$0 plugin remove my-local-plugin"]]});var gee=np;var sp=class extends Ce{constructor(){super(...arguments);this.json=j.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"})}async execute(){let e=await oe.find(this.context.cwd,this.context.plugins);return(await we.start({configuration:e,json:this.json,stdout:this.context.stdout},async i=>{for(let n of e.plugins.keys()){let s=this.context.plugins.plugins.has(n),o=n;s&&(o+=" [builtin]"),i.reportJson({name:n,builtin:s}),i.reportInfo(null,`${o}`)}})).exitCode()}};sp.paths=[["plugin","runtime"]],sp.usage=ce.Usage({category:"Plugin-related commands",description:"list the active plugins",details:` + `,examples:[["Remove a plugin imported from the Yarn repository","$0 plugin remove @yarnpkg/plugin-typescript"],["Remove a plugin imported from a local file","$0 plugin remove my-local-plugin"]]});var jte=Up;var Hp=class extends Be{constructor(){super(...arguments);this.json=G.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"})}async execute(){let e=await le.find(this.context.cwd,this.context.plugins);return(await xe.start({configuration:e,json:this.json,stdout:this.context.stdout},async i=>{for(let n of e.plugins.keys()){let s=this.context.plugins.plugins.has(n),o=n;s&&(o+=" [builtin]"),i.reportJson({name:n,builtin:s}),i.reportInfo(null,`${o}`)}})).exitCode()}};Hp.paths=[["plugin","runtime"]],Hp.usage=fe.Usage({category:"Plugin-related commands",description:"list the active plugins",details:` This command prints the currently active plugins. Will be displayed both builtin plugins and external plugins. - `,examples:[["List the currently active plugins","$0 plugin runtime"]]});var hee=sp;var op=class extends Ce{constructor(){super(...arguments);this.idents=j.Rest()}async execute(){let e=await oe.find(this.context.cwd,this.context.plugins),{project:r,workspace:i}=await ke.find(e,this.context.cwd),n=await lt.find(e);if(!i)throw new Xe(r.cwd,this.context.cwd);let s=new Set;for(let a of this.idents)s.add(b.parseIdent(a).identHash);if(await r.restoreInstallState({restoreResolutions:!1}),await r.resolveEverything({cache:n,report:new mr}),s.size>0)for(let a of r.storedPackages.values())s.has(a.identHash)&&r.storedBuildState.delete(a.locatorHash);else r.storedBuildState.clear();return(await we.start({configuration:e,stdout:this.context.stdout,includeLogs:!this.context.quiet},async a=>{await r.install({cache:n,report:a})})).exitCode()}};op.paths=[["rebuild"]],op.usage=ce.Usage({description:"rebuild the project's native packages",details:` + `,examples:[["List the currently active plugins","$0 plugin runtime"]]});var qte=Hp;var Yp=class extends Be{constructor(){super(...arguments);this.idents=G.Rest()}async execute(){let e=await le.find(this.context.cwd,this.context.plugins),{project:r,workspace:i}=await Fe.find(e,this.context.cwd),n=await gt.find(e);if(!i)throw new Xe(r.cwd,this.context.cwd);let s=new Set;for(let a of this.idents)s.add(Q.parseIdent(a).identHash);if(await r.restoreInstallState({restoreResolutions:!1}),await r.resolveEverything({cache:n,report:new wr}),s.size>0)for(let a of r.storedPackages.values())s.has(a.identHash)&&r.storedBuildState.delete(a.locatorHash);else r.storedBuildState.clear();return(await xe.start({configuration:e,stdout:this.context.stdout,includeLogs:!this.context.quiet},async a=>{await r.install({cache:n,report:a})})).exitCode()}};Yp.paths=[["rebuild"]],Yp.usage=fe.Usage({description:"rebuild the project's native packages",details:` This command will automatically cause Yarn to forget about previous compilations of the given packages and to run them again. Note that while Yarn forgets the compilation, the previous artifacts aren't erased from the filesystem and may affect the next builds (in good or bad). To avoid this, you may remove the .yarn/unplugged folder, or any other relevant location where packages might have been stored (Yarn may offer a way to do that automatically in the future). By default all packages will be rebuilt, but you can filter the list by specifying the names of the packages you want to clear from memory. - `,examples:[["Rebuild all packages","$0 rebuild"],["Rebuild fsevents only","$0 rebuild fsevents"]]});var fee=op;var Ek=X(Qn());var ap=class extends Ce{constructor(){super(...arguments);this.all=j.Boolean("-A,--all",!1,{description:"Apply the operation to all workspaces from the current project"});this.patterns=j.Rest()}async execute(){let e=await oe.find(this.context.cwd,this.context.plugins),{project:r,workspace:i}=await ke.find(e,this.context.cwd),n=await lt.find(e);if(!i)throw new Xe(r.cwd,this.context.cwd);await r.restoreInstallState({restoreResolutions:!1});let s=this.all?r.workspaces:[i],o=[Vt.REGULAR,Vt.DEVELOPMENT,Vt.PEER],a=[],l=!1,c=[];for(let f of this.patterns){let p=!1,m=b.parseIdent(f);for(let I of s){let y=[...I.manifest.peerDependenciesMeta.keys()];for(let B of Ek.default(y,f))I.manifest.peerDependenciesMeta.delete(B),l=!0,p=!0;for(let B of o){let P=I.manifest.getForScope(B),k=[...P.values()].map(N=>b.stringifyIdent(N));for(let N of Ek.default(k,b.stringifyIdent(m))){let{identHash:O}=b.parseIdent(N),v=P.get(O);if(typeof v=="undefined")throw new Error("Assertion failed: Expected the descriptor to be registered");I.manifest[B].delete(O),c.push([I,B,v]),l=!0,p=!0}}}p||a.push(f)}let u=a.length>1?"Patterns":"Pattern",g=a.length>1?"don't":"doesn't",h=this.all?"any":"this";if(a.length>0)throw new UsageError(`${u} ${se.prettyList(e,a,kA.CODE)} ${g} match any packages referenced by ${h} workspace`);return l?(await e.triggerMultipleHooks(p=>p.afterWorkspaceDependencyRemoval,c),(await we.start({configuration:e,stdout:this.context.stdout},async p=>{await r.install({cache:n,report:p})})).exitCode()):0}};ap.paths=[["remove"]],ap.usage=ce.Usage({description:"remove dependencies from the project",details:` + `,examples:[["Rebuild all packages","$0 rebuild"],["Rebuild fsevents only","$0 rebuild fsevents"]]});var Jte=Yp;var Fv=te(Yi());Fn();var Gp=class extends Be{constructor(){super(...arguments);this.all=G.Boolean("-A,--all",!1,{description:"Apply the operation to all workspaces from the current project"});this.mode=G.String("--mode",{description:"Change what artifacts installs generate",validator:ni(kr)});this.patterns=G.Rest()}async execute(){let e=await le.find(this.context.cwd,this.context.plugins),{project:r,workspace:i}=await Fe.find(e,this.context.cwd),n=await gt.find(e);if(!i)throw new Xe(r.cwd,this.context.cwd);await r.restoreInstallState({restoreResolutions:!1});let s=this.all?r.workspaces:[i],o=[er.REGULAR,er.DEVELOPMENT,er.PEER],a=[],l=!1,c=[];for(let f of this.patterns){let p=!1,m=Q.parseIdent(f);for(let I of s){let y=[...I.manifest.peerDependenciesMeta.keys()];for(let w of(0,Fv.default)(y,f))I.manifest.peerDependenciesMeta.delete(w),l=!0,p=!0;for(let w of o){let x=I.manifest.getForScope(w),F=[...x.values()].map(N=>Q.stringifyIdent(N));for(let N of(0,Fv.default)(F,Q.stringifyIdent(m))){let{identHash:K}=Q.parseIdent(N),v=x.get(K);if(typeof v=="undefined")throw new Error("Assertion failed: Expected the descriptor to be registered");I.manifest[w].delete(K),c.push([I,w,v]),l=!0,p=!0}}}p||a.push(f)}let u=a.length>1?"Patterns":"Pattern",g=a.length>1?"don't":"doesn't",h=this.all?"any":"this";if(a.length>0)throw new me(`${u} ${Ae.prettyList(e,a,Cs.CODE)} ${g} match any packages referenced by ${h} workspace`);return l?(await e.triggerMultipleHooks(p=>p.afterWorkspaceDependencyRemoval,c),(await xe.start({configuration:e,stdout:this.context.stdout},async p=>{await r.install({cache:n,report:p,mode:this.mode})})).exitCode()):0}};Gp.paths=[["remove"]],Gp.usage=fe.Usage({description:"remove dependencies from the project",details:` This command will remove the packages matching the specified patterns from the current workspace. + If the \`--mode=\` option is set, Yarn will change which artifacts are generated. The modes currently supported are: + + - \`skip-build\` will not run the build scripts at all. Note that this is different from setting \`enableScripts\` to false because the later will disable build scripts, and thus affect the content of the artifacts generated on disk, whereas the former will just disable the build step - but not the scripts themselves, which just won't run. + + - \`update-lockfile\` will skip the link step altogether, and only fetch packages that are missing from the lockfile (or that have no associated checksums). This mode is typically used by tools like Renovate or Dependabot to keep a lockfile up-to-date without incurring the full install cost. + This command accepts glob patterns as arguments (if valid Idents and supported by [micromatch](https://github.com/micromatch/micromatch)). Make sure to escape the patterns, to prevent your own shell from trying to expand them. - `,examples:[["Remove a dependency from the current project","$0 remove lodash"],["Remove a dependency from all workspaces at once","$0 remove lodash --all"],["Remove all dependencies starting with `eslint-`","$0 remove 'eslint-*'"],["Remove all dependencies with the `@babel` scope","$0 remove '@babel/*'"],["Remove all dependencies matching `react-dom` or `react-helmet`","$0 remove 'react-{dom,helmet}'"]]});var pee=ap;var dee=X(require("util")),hy=class extends Ce{async execute(){let e=await oe.find(this.context.cwd,this.context.plugins),{project:r,workspace:i}=await ke.find(e,this.context.cwd);if(!i)throw new Xe(r.cwd,this.context.cwd);return(await we.start({configuration:e,stdout:this.context.stdout},async s=>{let o=i.manifest.scripts,a=he.sortMap(o.keys(),u=>u),l={breakLength:Infinity,colors:e.get("enableColors"),maxArrayLength:2},c=a.reduce((u,g)=>Math.max(u,g.length),0);for(let[u,g]of o.entries())s.reportInfo(null,`${u.padEnd(c," ")} ${dee.inspect(g,l)}`)})).exitCode()}};hy.paths=[["run"]];var Cee=hy;var Ap=class extends Ce{constructor(){super(...arguments);this.inspect=j.String("--inspect",!1,{tolerateBoolean:!0,description:"Forwarded to the underlying Node process when executing a binary"});this.inspectBrk=j.String("--inspect-brk",!1,{tolerateBoolean:!0,description:"Forwarded to the underlying Node process when executing a binary"});this.topLevel=j.Boolean("-T,--top-level",!1,{hidden:!0});this.binariesOnly=j.Boolean("-B,--binaries-only",!1,{hidden:!0});this.silent=j.Boolean("--silent",{hidden:!0});this.scriptName=j.String();this.args=j.Proxy()}async execute(){let e=await oe.find(this.context.cwd,this.context.plugins),{project:r,workspace:i,locator:n}=await ke.find(e,this.context.cwd);await r.restoreInstallState();let s=this.topLevel?r.topLevelWorkspace.anchoredLocator:n;if(!this.binariesOnly&&await Et.hasPackageScript(s,this.scriptName,{project:r}))return await Et.executePackageScript(s,this.scriptName,this.args,{project:r,stdin:this.context.stdin,stdout:this.context.stdout,stderr:this.context.stderr});let o=await Et.getPackageAccessibleBinaries(s,{project:r});if(o.get(this.scriptName)){let l=[];return this.inspect&&(typeof this.inspect=="string"?l.push(`--inspect=${this.inspect}`):l.push("--inspect")),this.inspectBrk&&(typeof this.inspectBrk=="string"?l.push(`--inspect-brk=${this.inspectBrk}`):l.push("--inspect-brk")),await Et.executePackageAccessibleBinary(s,this.scriptName,this.args,{cwd:this.context.cwd,project:r,stdin:this.context.stdin,stdout:this.context.stdout,stderr:this.context.stderr,nodeArgs:l,packageAccessibleBinaries:o})}if(!this.topLevel&&!this.binariesOnly&&i&&this.scriptName.includes(":")){let c=(await Promise.all(r.workspaces.map(async u=>u.manifest.scripts.has(this.scriptName)?u:null))).filter(u=>u!==null);if(c.length===1)return await Et.executeWorkspaceScript(c[0],this.scriptName,this.args,{stdin:this.context.stdin,stdout:this.context.stdout,stderr:this.context.stderr})}if(this.topLevel)throw this.scriptName==="node-gyp"?new UsageError(`Couldn't find a script name "${this.scriptName}" in the top-level (used by ${b.prettyLocator(e,n)}). This typically happens because some package depends on "node-gyp" to build itself, but didn't list it in their dependencies. To fix that, please run "yarn add node-gyp" into your top-level workspace. You also can open an issue on the repository of the specified package to suggest them to use an optional peer dependency.`):new UsageError(`Couldn't find a script name "${this.scriptName}" in the top-level (used by ${b.prettyLocator(e,n)}).`);{if(this.scriptName==="global")throw new UsageError("The 'yarn global' commands have been removed in 2.x - consider using 'yarn dlx' or a third-party plugin instead");let l=[this.scriptName].concat(this.args);for(let[c,u]of Oc)for(let g of u)if(l.length>=g.length&&JSON.stringify(l.slice(0,g.length))===JSON.stringify(g))throw new UsageError(`Couldn't find a script named "${this.scriptName}", but a matching command can be found in the ${c} plugin. You can install it with "yarn plugin import ${c}".`);throw new UsageError(`Couldn't find a script named "${this.scriptName}".`)}}};Ap.paths=[["run"]],Ap.usage=ce.Usage({description:"run a script defined in the package.json",details:` + `,examples:[["Remove a dependency from the current project","$0 remove lodash"],["Remove a dependency from all workspaces at once","$0 remove lodash --all"],["Remove all dependencies starting with `eslint-`","$0 remove 'eslint-*'"],["Remove all dependencies with the `@babel` scope","$0 remove '@babel/*'"],["Remove all dependencies matching `react-dom` or `react-helmet`","$0 remove 'react-{dom,helmet}'"]]});var Wte=Gp;var zte=te(require("util")),oB=class extends Be{async execute(){let e=await le.find(this.context.cwd,this.context.plugins),{project:r,workspace:i}=await Fe.find(e,this.context.cwd);if(!i)throw new Xe(r.cwd,this.context.cwd);return(await xe.start({configuration:e,stdout:this.context.stdout},async s=>{let o=i.manifest.scripts,a=de.sortMap(o.keys(),u=>u),l={breakLength:Infinity,colors:e.get("enableColors"),maxArrayLength:2},c=a.reduce((u,g)=>Math.max(u,g.length),0);for(let[u,g]of o.entries())s.reportInfo(null,`${u.padEnd(c," ")} ${(0,zte.inspect)(g,l)}`)})).exitCode()}};oB.paths=[["run"]];var Vte=oB;var jp=class extends Be{constructor(){super(...arguments);this.inspect=G.String("--inspect",!1,{tolerateBoolean:!0,description:"Forwarded to the underlying Node process when executing a binary"});this.inspectBrk=G.String("--inspect-brk",!1,{tolerateBoolean:!0,description:"Forwarded to the underlying Node process when executing a binary"});this.topLevel=G.Boolean("-T,--top-level",!1,{hidden:!0});this.binariesOnly=G.Boolean("-B,--binaries-only",!1,{hidden:!0});this.silent=G.Boolean("--silent",{hidden:!0});this.scriptName=G.String();this.args=G.Proxy()}async execute(){let e=await le.find(this.context.cwd,this.context.plugins),{project:r,workspace:i,locator:n}=await Fe.find(e,this.context.cwd);await r.restoreInstallState();let s=this.topLevel?r.topLevelWorkspace.anchoredLocator:n;if(!this.binariesOnly&&await bt.hasPackageScript(s,this.scriptName,{project:r}))return await bt.executePackageScript(s,this.scriptName,this.args,{project:r,stdin:this.context.stdin,stdout:this.context.stdout,stderr:this.context.stderr});let o=await bt.getPackageAccessibleBinaries(s,{project:r});if(o.get(this.scriptName)){let l=[];return this.inspect&&(typeof this.inspect=="string"?l.push(`--inspect=${this.inspect}`):l.push("--inspect")),this.inspectBrk&&(typeof this.inspectBrk=="string"?l.push(`--inspect-brk=${this.inspectBrk}`):l.push("--inspect-brk")),await bt.executePackageAccessibleBinary(s,this.scriptName,this.args,{cwd:this.context.cwd,project:r,stdin:this.context.stdin,stdout:this.context.stdout,stderr:this.context.stderr,nodeArgs:l,packageAccessibleBinaries:o})}if(!this.topLevel&&!this.binariesOnly&&i&&this.scriptName.includes(":")){let c=(await Promise.all(r.workspaces.map(async u=>u.manifest.scripts.has(this.scriptName)?u:null))).filter(u=>u!==null);if(c.length===1)return await bt.executeWorkspaceScript(c[0],this.scriptName,this.args,{stdin:this.context.stdin,stdout:this.context.stdout,stderr:this.context.stderr})}if(this.topLevel)throw this.scriptName==="node-gyp"?new me(`Couldn't find a script name "${this.scriptName}" in the top-level (used by ${Q.prettyLocator(e,n)}). This typically happens because some package depends on "node-gyp" to build itself, but didn't list it in their dependencies. To fix that, please run "yarn add node-gyp" into your top-level workspace. You also can open an issue on the repository of the specified package to suggest them to use an optional peer dependency.`):new me(`Couldn't find a script name "${this.scriptName}" in the top-level (used by ${Q.prettyLocator(e,n)}).`);{if(this.scriptName==="global")throw new me("The 'yarn global' commands have been removed in 2.x - consider using 'yarn dlx' or a third-party plugin instead");let l=[this.scriptName].concat(this.args);for(let[c,u]of hu)for(let g of u)if(l.length>=g.length&&JSON.stringify(l.slice(0,g.length))===JSON.stringify(g))throw new me(`Couldn't find a script named "${this.scriptName}", but a matching command can be found in the ${c} plugin. You can install it with "yarn plugin import ${c}".`);throw new me(`Couldn't find a script named "${this.scriptName}".`)}}};jp.paths=[["run"]],jp.usage=fe.Usage({description:"run a script defined in the package.json",details:` This command will run a tool. The exact tool that will be executed will depend on the current state of your workspace: - If the \`scripts\` field from your local package.json contains a matching script name, its definition will get executed. @@ -411,46 +430,48 @@ ${e}`)});let n=(g=t.projectCwd)!=null?g:t.startingCwd,s=w.resolve(n,".yarn/relea - Otherwise, if the specified name contains a colon character and if one of the workspaces in the project contains exactly one script with a matching name, then this script will get executed. Whatever happens, the cwd of the spawned process will be the workspace that declares the script (which makes it possible to call commands cross-workspaces using the third syntax). - `,examples:[["Run the tests from the local workspace","$0 run test"],['Same thing, but without the "run" keyword',"$0 test"],["Inspect Webpack while running","$0 run --inspect-brk webpack"]]});var mee=Ap;var lp=class extends Ce{constructor(){super(...arguments);this.save=j.Boolean("-s,--save",!1,{description:"Persist the resolution inside the top-level manifest"});this.descriptor=j.String();this.resolution=j.String()}async execute(){let e=await oe.find(this.context.cwd,this.context.plugins),{project:r,workspace:i}=await ke.find(e,this.context.cwd),n=await lt.find(e);if(await r.restoreInstallState({restoreResolutions:!1}),!i)throw new Xe(r.cwd,this.context.cwd);let s=b.parseDescriptor(this.descriptor,!0),o=b.makeDescriptor(s,this.resolution);return r.storedDescriptors.set(s.descriptorHash,s),r.storedDescriptors.set(o.descriptorHash,o),r.resolutionAliases.set(s.descriptorHash,o.descriptorHash),(await we.start({configuration:e,stdout:this.context.stdout},async l=>{await r.install({cache:n,report:l})})).exitCode()}};lp.paths=[["set","resolution"]],lp.usage=ce.Usage({description:"enforce a package resolution",details:'\n This command updates the resolution table so that `descriptor` is resolved by `resolution`.\n\n Note that by default this command only affect the current resolution table - meaning that this "manual override" will disappear if you remove the lockfile, or if the package disappear from the table. If you wish to make the enforced resolution persist whatever happens, add the `-s,--save` flag which will also edit the `resolutions` field from your top-level manifest.\n\n Note that no attempt is made at validating that `resolution` is a valid resolution entry for `descriptor`.\n ',examples:[["Force all instances of lodash@npm:^1.2.3 to resolve to 1.5.0","$0 set resolution lodash@npm:^1.2.3 1.5.0"]]});var Iee=lp;var Eee=X(Lf()),yk=X(Qn()),fy=X(Qo());var nu=class extends Ce{constructor(){super(...arguments);this.interactive=j.Boolean("-i,--interactive",{description:"Offer various choices, depending on the detected upgrade paths"});this.exact=j.Boolean("-E,--exact",!1,{description:"Don't use any semver modifier on the resolved range"});this.tilde=j.Boolean("-T,--tilde",!1,{description:"Use the `~` semver modifier on the resolved range"});this.caret=j.Boolean("-C,--caret",!1,{description:"Use the `^` semver modifier on the resolved range"});this.recursive=j.Boolean("-R,--recursive",!1,{description:"Resolve again ALL resolutions for those packages"});this.patterns=j.Rest()}async execute(){return this.recursive?await this.executeUpRecursive():await this.executeUpClassic()}async executeUpRecursive(){let e=await oe.find(this.context.cwd,this.context.plugins),{project:r,workspace:i}=await ke.find(e,this.context.cwd),n=await lt.find(e);if(!i)throw new Xe(r.cwd,this.context.cwd);await r.restoreInstallState({restoreResolutions:!1});let s=[...r.storedDescriptors.values()],o=s.map(u=>b.stringifyIdent(u)),a=new Set;for(let u of this.patterns){if(b.parseDescriptor(u).range!=="unknown")throw new UsageError("Ranges aren't allowed when using --recursive");for(let g of yk.default(o,u)){let h=b.parseIdent(g);a.add(h.identHash)}}let l=s.filter(u=>a.has(u.identHash));for(let u of l)r.storedDescriptors.delete(u.descriptorHash),r.storedResolutions.delete(u.descriptorHash);return(await we.start({configuration:e,stdout:this.context.stdout},async u=>{await r.install({cache:n,report:u})})).exitCode()}async executeUpClassic(){var m;let e=await oe.find(this.context.cwd,this.context.plugins),{project:r,workspace:i}=await ke.find(e,this.context.cwd),n=await lt.find(e);if(!i)throw new Xe(r.cwd,this.context.cwd);await r.restoreInstallState({restoreResolutions:!1});let s=(m=this.interactive)!=null?m:e.get("preferInteractive"),o=Mf(this,r),a=s?[tr.KEEP,tr.REUSE,tr.PROJECT,tr.LATEST]:[tr.PROJECT,tr.LATEST],l=[],c=[];for(let I of this.patterns){let y=!1,B=b.parseDescriptor(I);for(let P of r.workspaces)for(let k of[Vt.REGULAR,Vt.DEVELOPMENT]){let O=[...P.manifest.getForScope(k).values()].map(v=>b.stringifyIdent(v));for(let v of yk.default(O,b.stringifyIdent(B))){let U=b.parseIdent(v),re=P.manifest[k].get(U.identHash);if(typeof re=="undefined")throw new Error("Assertion failed: Expected the descriptor to be registered");let F=b.makeDescriptor(U,B.range);l.push(Promise.resolve().then(async()=>[P,k,re,await Nf(F,{project:r,workspace:P,cache:n,target:k,modifier:o,strategies:a})])),y=!0}}y||c.push(I)}if(c.length>1)throw new UsageError(`Patterns ${se.prettyList(e,c,kA.CODE)} don't match any packages referenced by any workspace`);if(c.length>0)throw new UsageError(`Pattern ${se.prettyList(e,c,kA.CODE)} doesn't match any packages referenced by any workspace`);let u=await Promise.all(l),g=await zs.start({configuration:e,stdout:this.context.stdout,suggestInstall:!1},async I=>{for(let[,,y,{suggestions:B,rejections:P}]of u){let k=B.filter(N=>N.descriptor!==null);if(k.length===0){let[N]=P;if(typeof N=="undefined")throw new Error("Assertion failed: Expected an error to have been set");let O=this.cli.error(N);r.configuration.get("enableNetwork")?I.reportError(J.CANT_SUGGEST_RESOLUTIONS,`${b.prettyDescriptor(e,y)} can't be resolved to a satisfying range + `,examples:[["Run the tests from the local workspace","$0 run test"],['Same thing, but without the "run" keyword',"$0 test"],["Inspect Webpack while running","$0 run --inspect-brk webpack"]]});var Xte=jp;var qp=class extends Be{constructor(){super(...arguments);this.save=G.Boolean("-s,--save",!1,{description:"Persist the resolution inside the top-level manifest"});this.descriptor=G.String();this.resolution=G.String()}async execute(){let e=await le.find(this.context.cwd,this.context.plugins),{project:r,workspace:i}=await Fe.find(e,this.context.cwd),n=await gt.find(e);if(await r.restoreInstallState({restoreResolutions:!1}),!i)throw new Xe(r.cwd,this.context.cwd);let s=Q.parseDescriptor(this.descriptor,!0),o=Q.makeDescriptor(s,this.resolution);return r.storedDescriptors.set(s.descriptorHash,s),r.storedDescriptors.set(o.descriptorHash,o),r.resolutionAliases.set(s.descriptorHash,o.descriptorHash),(await xe.start({configuration:e,stdout:this.context.stdout},async l=>{await r.install({cache:n,report:l})})).exitCode()}};qp.paths=[["set","resolution"]],qp.usage=fe.Usage({description:"enforce a package resolution",details:'\n This command updates the resolution table so that `descriptor` is resolved by `resolution`.\n\n Note that by default this command only affect the current resolution table - meaning that this "manual override" will disappear if you remove the lockfile, or if the package disappear from the table. If you wish to make the enforced resolution persist whatever happens, add the `-s,--save` flag which will also edit the `resolutions` field from your top-level manifest.\n\n Note that no attempt is made at validating that `resolution` is a valid resolution entry for `descriptor`.\n ',examples:[["Force all instances of lodash@npm:^1.2.3 to resolve to 1.5.0","$0 set resolution lodash@npm:^1.2.3 1.5.0"]]});var Zte=qp;var _te=te(Yi()),Jp=class extends Be{constructor(){super(...arguments);this.all=G.Boolean("-A,--all",!1,{description:"Unlink all workspaces belonging to the target project from the current one"});this.leadingArguments=G.Rest()}async execute(){let e=await le.find(this.context.cwd,this.context.plugins),{project:r,workspace:i}=await Fe.find(e,this.context.cwd),n=await gt.find(e);if(!i)throw new Xe(r.cwd,this.context.cwd);let s=r.topLevelWorkspace,o=new Set;if(this.leadingArguments.length===0&&this.all)for(let{pattern:l,reference:c}of s.manifest.resolutions)c.startsWith("portal:")&&o.add(l.descriptor.fullName);if(this.leadingArguments.length>0)for(let l of this.leadingArguments){let c=B.resolve(this.context.cwd,L.toPortablePath(l));if(de.isPathLike(l)){let u=await le.find(c,this.context.plugins,{useRc:!1,strict:!1}),{project:g,workspace:h}=await Fe.find(u,c);if(!h)throw new Xe(g.cwd,c);if(this.all){for(let f of g.workspaces)f.manifest.name&&o.add(Q.stringifyIdent(f.locator));if(o.size===0)throw new me("No workspace found to be unlinked in the target project")}else{if(!h.manifest.name)throw new me("The target workspace doesn't have a name and thus cannot be unlinked");o.add(Q.stringifyIdent(h.locator))}}else{let u=[...s.manifest.resolutions.map(({pattern:g})=>g.descriptor.fullName)];for(let g of(0,_te.default)(u,l))o.add(g)}}return s.manifest.resolutions=s.manifest.resolutions.filter(({pattern:l})=>!o.has(l.descriptor.fullName)),(await xe.start({configuration:e,stdout:this.context.stdout},async l=>{await r.install({cache:n,report:l})})).exitCode()}};Jp.paths=[["unlink"]],Jp.usage=fe.Usage({description:"disconnect the local project from another one",details:` + This command will remove any resolutions in the project-level manifest that would have been added via a yarn link with similar arguments. + `,examples:[["Unregister a remote workspace in the current project","$0 unlink ~/ts-loader"],["Unregister all workspaces from a remote project in the current project","$0 unlink ~/jest --all"],["Unregister all previously linked workspaces","$0 unlink --all"],["Unregister all workspaces matching a glob","$0 unlink '@babel/*' 'pkg-{a,b}'"]]});var $te=Jp;var ere=te(dp()),Rv=te(Yi());Fn();var Fu=class extends Be{constructor(){super(...arguments);this.interactive=G.Boolean("-i,--interactive",{description:"Offer various choices, depending on the detected upgrade paths"});this.exact=G.Boolean("-E,--exact",!1,{description:"Don't use any semver modifier on the resolved range"});this.tilde=G.Boolean("-T,--tilde",!1,{description:"Use the `~` semver modifier on the resolved range"});this.caret=G.Boolean("-C,--caret",!1,{description:"Use the `^` semver modifier on the resolved range"});this.recursive=G.Boolean("-R,--recursive",!1,{description:"Resolve again ALL resolutions for those packages"});this.mode=G.String("--mode",{description:"Change what artifacts installs generate",validator:ni(kr)});this.patterns=G.Rest()}async execute(){return this.recursive?await this.executeUpRecursive():await this.executeUpClassic()}async executeUpRecursive(){let e=await le.find(this.context.cwd,this.context.plugins),{project:r,workspace:i}=await Fe.find(e,this.context.cwd),n=await gt.find(e);if(!i)throw new Xe(r.cwd,this.context.cwd);await r.restoreInstallState({restoreResolutions:!1});let s=[...r.storedDescriptors.values()],o=s.map(u=>Q.stringifyIdent(u)),a=new Set;for(let u of this.patterns){if(Q.parseDescriptor(u).range!=="unknown")throw new me("Ranges aren't allowed when using --recursive");for(let g of(0,Rv.default)(o,u)){let h=Q.parseIdent(g);a.add(h.identHash)}}let l=s.filter(u=>a.has(u.identHash));for(let u of l)r.storedDescriptors.delete(u.descriptorHash),r.storedResolutions.delete(u.descriptorHash);return(await xe.start({configuration:e,stdout:this.context.stdout},async u=>{await r.install({cache:n,report:u})})).exitCode()}async executeUpClassic(){var m;let e=await le.find(this.context.cwd,this.context.plugins),{project:r,workspace:i}=await Fe.find(e,this.context.cwd),n=await gt.find(e);if(!i)throw new Xe(r.cwd,this.context.cwd);await r.restoreInstallState({restoreResolutions:!1});let s=(m=this.interactive)!=null?m:e.get("preferInteractive"),o=Cp(this,r),a=s?[sr.KEEP,sr.REUSE,sr.PROJECT,sr.LATEST]:[sr.PROJECT,sr.LATEST],l=[],c=[];for(let I of this.patterns){let y=!1,w=Q.parseDescriptor(I);for(let x of r.workspaces)for(let F of[er.REGULAR,er.DEVELOPMENT]){let K=[...x.manifest.getForScope(F).values()].map(v=>Q.stringifyIdent(v));for(let v of(0,Rv.default)(K,Q.stringifyIdent(w))){let J=Q.parseIdent(v),oe=x.manifest[F].get(J.identHash);if(typeof oe=="undefined")throw new Error("Assertion failed: Expected the descriptor to be registered");let T=Q.makeDescriptor(J,w.range);l.push(Promise.resolve().then(async()=>[x,F,oe,await mp(T,{project:r,workspace:x,cache:n,target:F,modifier:o,strategies:a})])),y=!0}}y||c.push(I)}if(c.length>1)throw new me(`Patterns ${Ae.prettyList(e,c,Cs.CODE)} don't match any packages referenced by any workspace`);if(c.length>0)throw new me(`Pattern ${Ae.prettyList(e,c,Cs.CODE)} doesn't match any packages referenced by any workspace`);let u=await Promise.all(l),g=await uo.start({configuration:e,stdout:this.context.stdout,suggestInstall:!1},async I=>{for(let[,,y,{suggestions:w,rejections:x}]of u){let F=w.filter(N=>N.descriptor!==null);if(F.length===0){let[N]=x;if(typeof N=="undefined")throw new Error("Assertion failed: Expected an error to have been set");let K=this.cli.error(N);r.configuration.get("enableNetwork")?I.reportError(z.CANT_SUGGEST_RESOLUTIONS,`${Q.prettyDescriptor(e,y)} can't be resolved to a satisfying range -${O}`):I.reportError(J.CANT_SUGGEST_RESOLUTIONS,`${b.prettyDescriptor(e,y)} can't be resolved to a satisfying range (note: network resolution has been disabled) +${K}`):I.reportError(z.CANT_SUGGEST_RESOLUTIONS,`${Q.prettyDescriptor(e,y)} can't be resolved to a satisfying range (note: network resolution has been disabled) -${O}`)}else k.length>1&&!s&&I.reportError(J.CANT_SUGGEST_RESOLUTIONS,`${b.prettyDescriptor(e,y)} has multiple possible upgrade strategies; use -i to disambiguate manually`)}});if(g.hasErrors())return g.exitCode();let h=!1,f=[];for(let[I,y,,{suggestions:B}]of u){let P,k=B.filter(U=>U.descriptor!==null),N=k[0].descriptor,O=k.every(U=>b.areDescriptorsEqual(U.descriptor,N));k.length===1||O?P=N:(h=!0,{answer:P}=await Eee.prompt({type:"select",name:"answer",message:`Which range to you want to use in ${b.prettyWorkspace(e,I)} \u276F ${y}?`,choices:B.map(({descriptor:U,name:re,reason:F})=>U?{name:re,hint:F,descriptor:U}:{name:re,hint:F,disabled:!0}),onCancel:()=>process.exit(130),result(U){return this.find(U,"descriptor")},stdin:this.context.stdin,stdout:this.context.stdout}));let v=I.manifest[y].get(P.identHash);if(typeof v=="undefined")throw new Error("Assertion failed: This descriptor should have a matching entry");if(v.descriptorHash!==P.descriptorHash)I.manifest[y].set(P.identHash,P),f.push([I,y,v,P]);else{let U=e.makeResolver(),re={project:r,resolver:U},F=U.bindDescriptor(v,I.anchoredLocator,re);r.forgetResolution(F)}}return await e.triggerMultipleHooks(I=>I.afterWorkspaceDependencyReplacement,f),h&&this.context.stdout.write(` -`),(await we.start({configuration:e,stdout:this.context.stdout},async I=>{await r.install({cache:n,report:I})})).exitCode()}};nu.paths=[["up"]],nu.usage=ce.Usage({description:"upgrade dependencies across the project",details:"\n This command upgrades the packages matching the list of specified patterns to their latest available version across the whole project (regardless of whether they're part of `dependencies` or `devDependencies` - `peerDependencies` won't be affected). This is a project-wide command: all workspaces will be upgraded in the process.\n\n If `-R,--recursive` is set the command will change behavior and no other switch will be allowed. When operating under this mode `yarn up` will force all ranges matching the selected packages to be resolved again (often to the highest available versions) before being stored in the lockfile. It however won't touch your manifests anymore, so depending on your needs you might want to run both `yarn up` and `yarn up -R` to cover all bases.\n\n If `-i,--interactive` is set (or if the `preferInteractive` settings is toggled on) the command will offer various choices, depending on the detected upgrade paths. Some upgrades require this flag in order to resolve ambiguities.\n\n The, `-C,--caret`, `-E,--exact` and `-T,--tilde` options have the same meaning as in the `add` command (they change the modifier used when the range is missing or a tag, and are ignored when the range is explicitly set).\n\n Generally you can see `yarn up` as a counterpart to what was `yarn upgrade --latest` in Yarn 1 (ie it ignores the ranges previously listed in your manifests), but unlike `yarn upgrade` which only upgraded dependencies in the current workspace, `yarn up` will upgrade all workspaces at the same time.\n\n This command accepts glob patterns as arguments (if valid Descriptors and supported by [micromatch](https://github.com/micromatch/micromatch)). Make sure to escape the patterns, to prevent your own shell from trying to expand them.\n\n **Note:** The ranges have to be static, only the package scopes and names can contain glob patterns.\n ",examples:[["Upgrade all instances of lodash to the latest release","$0 up lodash"],["Upgrade all instances of lodash to the latest release, but ask confirmation for each","$0 up lodash -i"],["Upgrade all instances of lodash to 1.2.3","$0 up lodash@1.2.3"],["Upgrade all instances of packages with the `@babel` scope to the latest release","$0 up '@babel/*'"],["Upgrade all instances of packages containing the word `jest` to the latest release","$0 up '*jest*'"],["Upgrade all instances of packages with the `@babel` scope to 7.0.0","$0 up '@babel/*@7.0.0'"]]}),nu.schema=[fy.hasKeyRelationship("recursive",fy.KeyRelationship.Forbids,["interactive","exact","tilde","caret"],{ignore:[void 0,!1]})];var yee=nu;var cp=class extends Ce{constructor(){super(...arguments);this.recursive=j.Boolean("-R,--recursive",!1,{description:"List, for each workspace, what are all the paths that lead to the dependency"});this.json=j.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"});this.peers=j.Boolean("--peers",!1,{description:"Also print the peer dependencies that match the specified name"});this.package=j.String()}async execute(){let e=await oe.find(this.context.cwd,this.context.plugins),{project:r,workspace:i}=await ke.find(e,this.context.cwd);if(!i)throw new Xe(r.cwd,this.context.cwd);await r.restoreInstallState();let n=b.parseIdent(this.package).identHash,s=this.recursive?bUe(r,n,{configuration:e,peers:this.peers}):QUe(r,n,{configuration:e,peers:this.peers});vn.emitTree(s,{configuration:e,stdout:this.context.stdout,json:this.json,separators:1})}};cp.paths=[["why"]],cp.usage=ce.Usage({description:"display the reason why a package is needed",details:` +${K}`)}else F.length>1&&!s&&I.reportError(z.CANT_SUGGEST_RESOLUTIONS,`${Q.prettyDescriptor(e,y)} has multiple possible upgrade strategies; use -i to disambiguate manually`)}});if(g.hasErrors())return g.exitCode();let h=!1,f=[];for(let[I,y,,{suggestions:w}]of u){let x,F=w.filter(J=>J.descriptor!==null),N=F[0].descriptor,K=F.every(J=>Q.areDescriptorsEqual(J.descriptor,N));F.length===1||K?x=N:(h=!0,{answer:x}=await(0,ere.prompt)({type:"select",name:"answer",message:`Which range to you want to use in ${Q.prettyWorkspace(e,I)} \u276F ${y}?`,choices:w.map(({descriptor:J,name:oe,reason:T})=>J?{name:oe,hint:T,descriptor:J}:{name:oe,hint:T,disabled:!0}),onCancel:()=>process.exit(130),result(J){return this.find(J,"descriptor")},stdin:this.context.stdin,stdout:this.context.stdout}));let v=I.manifest[y].get(x.identHash);if(typeof v=="undefined")throw new Error("Assertion failed: This descriptor should have a matching entry");if(v.descriptorHash!==x.descriptorHash)I.manifest[y].set(x.identHash,x),f.push([I,y,v,x]);else{let J=e.makeResolver(),oe={project:r,resolver:J},T=J.bindDescriptor(v,I.anchoredLocator,oe);r.forgetResolution(T)}}return await e.triggerMultipleHooks(I=>I.afterWorkspaceDependencyReplacement,f),h&&this.context.stdout.write(` +`),(await xe.start({configuration:e,stdout:this.context.stdout},async I=>{await r.install({cache:n,report:I,mode:this.mode})})).exitCode()}};Fu.paths=[["up"]],Fu.usage=fe.Usage({description:"upgrade dependencies across the project",details:"\n This command upgrades the packages matching the list of specified patterns to their latest available version across the whole project (regardless of whether they're part of `dependencies` or `devDependencies` - `peerDependencies` won't be affected). This is a project-wide command: all workspaces will be upgraded in the process.\n\n If `-R,--recursive` is set the command will change behavior and no other switch will be allowed. When operating under this mode `yarn up` will force all ranges matching the selected packages to be resolved again (often to the highest available versions) before being stored in the lockfile. It however won't touch your manifests anymore, so depending on your needs you might want to run both `yarn up` and `yarn up -R` to cover all bases.\n\n If `-i,--interactive` is set (or if the `preferInteractive` settings is toggled on) the command will offer various choices, depending on the detected upgrade paths. Some upgrades require this flag in order to resolve ambiguities.\n\n The, `-C,--caret`, `-E,--exact` and `-T,--tilde` options have the same meaning as in the `add` command (they change the modifier used when the range is missing or a tag, and are ignored when the range is explicitly set).\n\n If the `--mode=` option is set, Yarn will change which artifacts are generated. The modes currently supported are:\n\n - `skip-build` will not run the build scripts at all. Note that this is different from setting `enableScripts` to false because the later will disable build scripts, and thus affect the content of the artifacts generated on disk, whereas the former will just disable the build step - but not the scripts themselves, which just won't run.\n\n - `update-lockfile` will skip the link step altogether, and only fetch packages that are missing from the lockfile (or that have no associated checksums). This mode is typically used by tools like Renovate or Dependabot to keep a lockfile up-to-date without incurring the full install cost.\n\n Generally you can see `yarn up` as a counterpart to what was `yarn upgrade --latest` in Yarn 1 (ie it ignores the ranges previously listed in your manifests), but unlike `yarn upgrade` which only upgraded dependencies in the current workspace, `yarn up` will upgrade all workspaces at the same time.\n\n This command accepts glob patterns as arguments (if valid Descriptors and supported by [micromatch](https://github.com/micromatch/micromatch)). Make sure to escape the patterns, to prevent your own shell from trying to expand them.\n\n **Note:** The ranges have to be static, only the package scopes and names can contain glob patterns.\n ",examples:[["Upgrade all instances of lodash to the latest release","$0 up lodash"],["Upgrade all instances of lodash to the latest release, but ask confirmation for each","$0 up lodash -i"],["Upgrade all instances of lodash to 1.2.3","$0 up lodash@1.2.3"],["Upgrade all instances of packages with the `@babel` scope to the latest release","$0 up '@babel/*'"],["Upgrade all instances of packages containing the word `jest` to the latest release","$0 up '*jest*'"],["Upgrade all instances of packages with the `@babel` scope to 7.0.0","$0 up '@babel/*@7.0.0'"]]}),Fu.schema=[xQ("recursive",tA.Forbids,["interactive","exact","tilde","caret"],{ignore:[void 0,!1]})];var tre=Fu;var Wp=class extends Be{constructor(){super(...arguments);this.recursive=G.Boolean("-R,--recursive",!1,{description:"List, for each workspace, what are all the paths that lead to the dependency"});this.json=G.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"});this.peers=G.Boolean("--peers",!1,{description:"Also print the peer dependencies that match the specified name"});this.package=G.String()}async execute(){let e=await le.find(this.context.cwd,this.context.plugins),{project:r,workspace:i}=await Fe.find(e,this.context.cwd);if(!i)throw new Xe(r.cwd,this.context.cwd);await r.restoreInstallState();let n=Q.parseIdent(this.package).identHash,s=this.recursive?dHe(r,n,{configuration:e,peers:this.peers}):pHe(r,n,{configuration:e,peers:this.peers});Hn.emitTree(s,{configuration:e,stdout:this.context.stdout,json:this.json,separators:1})}};Wp.paths=[["why"]],Wp.usage=fe.Usage({description:"display the reason why a package is needed",details:` This command prints the exact reasons why a package appears in the dependency tree. If \`-R,--recursive\` is set, the listing will go in depth and will list, for each workspaces, what are all the paths that lead to the dependency. Note that the display is somewhat optimized in that it will not print the package listing twice for a single package, so if you see a leaf named "Foo" when looking for "Bar", it means that "Foo" already got printed higher in the tree. - `,examples:[["Explain why lodash is used in your project","$0 why lodash"]]});var Bee=cp;function QUe(t,e,{configuration:r,peers:i}){let n=he.sortMap(t.storedPackages.values(),a=>b.stringifyLocator(a)),s={},o={children:s};for(let a of n){let l={},c=null;for(let u of a.dependencies.values()){if(!i&&a.peerDependencies.has(u.identHash))continue;let g=t.storedResolutions.get(u.descriptorHash);if(!g)throw new Error("Assertion failed: The resolution should have been registered");let h=t.storedPackages.get(g);if(!h)throw new Error("Assertion failed: The package should have been registered");if(h.identHash!==e)continue;if(c===null){let p=b.stringifyLocator(a);s[p]={value:[a,se.Type.LOCATOR],children:l}}let f=b.stringifyLocator(h);l[f]={value:[{descriptor:u,locator:h},se.Type.DEPENDENT]}}}return o}function bUe(t,e,{configuration:r,peers:i}){let n=he.sortMap(t.workspaces,h=>b.stringifyLocator(h.anchoredLocator)),s=new Set,o=new Set,a=h=>{if(s.has(h.locatorHash))return o.has(h.locatorHash);if(s.add(h.locatorHash),h.identHash===e)return o.add(h.locatorHash),!0;let f=!1;h.identHash===e&&(f=!0);for(let p of h.dependencies.values()){if(!i&&h.peerDependencies.has(p.identHash))continue;let m=t.storedResolutions.get(p.descriptorHash);if(!m)throw new Error("Assertion failed: The resolution should have been registered");let I=t.storedPackages.get(m);if(!I)throw new Error("Assertion failed: The package should have been registered");a(I)&&(f=!0)}return f&&o.add(h.locatorHash),f};for(let h of n){let f=t.storedPackages.get(h.anchoredLocator.locatorHash);if(!f)throw new Error("Assertion failed: The package should have been registered");a(f)}let l=new Set,c={},u={children:c},g=(h,f,p)=>{if(!o.has(h.locatorHash))return;let m=p!==null?se.tuple(se.Type.DEPENDENT,{locator:h,descriptor:p}):se.tuple(se.Type.LOCATOR,h),I={},y={value:m,children:I},B=b.stringifyLocator(h);if(f[B]=y,!l.has(h.locatorHash)&&(l.add(h.locatorHash),!(p!==null&&t.tryWorkspaceByLocator(h))))for(let P of h.dependencies.values()){if(!i&&h.peerDependencies.has(P.identHash))continue;let k=t.storedResolutions.get(P.descriptorHash);if(!k)throw new Error("Assertion failed: The resolution should have been registered");let N=t.storedPackages.get(k);if(!N)throw new Error("Assertion failed: The package should have been registered");g(N,I,P)}};for(let h of n){let f=t.storedPackages.get(h.anchoredLocator.locatorHash);if(!f)throw new Error("Assertion failed: The package should have been registered");g(f,c,null)}return u}var up=class extends Ce{constructor(){super(...arguments);this.verbose=j.Boolean("-v,--verbose",!1,{description:"Also return the cross-dependencies between workspaces"});this.json=j.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"})}async execute(){let e=await oe.find(this.context.cwd,this.context.plugins),{project:r}=await ke.find(e,this.context.cwd);return(await we.start({configuration:e,json:this.json,stdout:this.context.stdout},async n=>{for(let s of r.workspaces){let{manifest:o}=s,a;if(this.verbose){let l=new Set,c=new Set;for(let u of je.hardDependencies)for(let[g,h]of o.getForScope(u)){let f=r.tryWorkspaceByDescriptor(h);f===null?r.workspacesByIdent.has(g)&&c.add(h):l.add(f)}a={workspaceDependencies:Array.from(l).map(u=>u.relativeCwd),mismatchedWorkspaceDependencies:Array.from(c).map(u=>b.stringifyDescriptor(u))}}n.reportInfo(null,`${s.relativeCwd}`),n.reportJson({location:s.relativeCwd,name:o.name?b.stringifyIdent(o.name):null,...a})}})).exitCode()}};up.paths=[["workspaces","list"]],up.usage=ce.Usage({category:"Workspace-related commands",description:"list all available workspaces",details:"\n This command will print the list of all workspaces in the project. If both the `-v,--verbose` and `--json` options are set, Yarn will also return the cross-dependencies between each workspaces (useful when you wish to automatically generate Buck / Bazel rules).\n "});var wee=up;var gp=class extends ce{constructor(){super(...arguments);this.workspaceName=j.String();this.commandName=j.String();this.args=j.Proxy()}async execute(){let e=await oe.find(this.context.cwd,this.context.plugins),{project:r,workspace:i}=await ke.find(e,this.context.cwd);if(!i)throw new Xe(r.cwd,this.context.cwd);let n=r.workspaces,s=new Map(n.map(a=>{let l=b.convertToIdent(a.locator);return[b.stringifyIdent(l),a]})),o=s.get(this.workspaceName);if(o===void 0){let a=Array.from(s.keys()).sort();throw new UsageError(`Workspace '${this.workspaceName}' not found. Did you mean any of the following: + `,examples:[["Explain why lodash is used in your project","$0 why lodash"]]});var rre=Wp;function pHe(t,e,{configuration:r,peers:i}){let n=de.sortMap(t.storedPackages.values(),a=>Q.stringifyLocator(a)),s={},o={children:s};for(let a of n){let l={},c=null;for(let u of a.dependencies.values()){if(!i&&a.peerDependencies.has(u.identHash))continue;let g=t.storedResolutions.get(u.descriptorHash);if(!g)throw new Error("Assertion failed: The resolution should have been registered");let h=t.storedPackages.get(g);if(!h)throw new Error("Assertion failed: The package should have been registered");if(h.identHash!==e)continue;if(c===null){let p=Q.stringifyLocator(a);s[p]={value:[a,Ae.Type.LOCATOR],children:l}}let f=Q.stringifyLocator(h);l[f]={value:[{descriptor:u,locator:h},Ae.Type.DEPENDENT]}}}return o}function dHe(t,e,{configuration:r,peers:i}){let n=de.sortMap(t.workspaces,h=>Q.stringifyLocator(h.anchoredLocator)),s=new Set,o=new Set,a=h=>{if(s.has(h.locatorHash))return o.has(h.locatorHash);if(s.add(h.locatorHash),h.identHash===e)return o.add(h.locatorHash),!0;let f=!1;h.identHash===e&&(f=!0);for(let p of h.dependencies.values()){if(!i&&h.peerDependencies.has(p.identHash))continue;let m=t.storedResolutions.get(p.descriptorHash);if(!m)throw new Error("Assertion failed: The resolution should have been registered");let I=t.storedPackages.get(m);if(!I)throw new Error("Assertion failed: The package should have been registered");a(I)&&(f=!0)}return f&&o.add(h.locatorHash),f};for(let h of n){let f=t.storedPackages.get(h.anchoredLocator.locatorHash);if(!f)throw new Error("Assertion failed: The package should have been registered");a(f)}let l=new Set,c={},u={children:c},g=(h,f,p)=>{if(!o.has(h.locatorHash))return;let m=p!==null?Ae.tuple(Ae.Type.DEPENDENT,{locator:h,descriptor:p}):Ae.tuple(Ae.Type.LOCATOR,h),I={},y={value:m,children:I},w=Q.stringifyLocator(h);if(f[w]=y,!l.has(h.locatorHash)&&(l.add(h.locatorHash),!(p!==null&&t.tryWorkspaceByLocator(h))))for(let x of h.dependencies.values()){if(!i&&h.peerDependencies.has(x.identHash))continue;let F=t.storedResolutions.get(x.descriptorHash);if(!F)throw new Error("Assertion failed: The resolution should have been registered");let N=t.storedPackages.get(F);if(!N)throw new Error("Assertion failed: The package should have been registered");g(N,I,x)}};for(let h of n){let f=t.storedPackages.get(h.anchoredLocator.locatorHash);if(!f)throw new Error("Assertion failed: The package should have been registered");g(f,c,null)}return u}var zp=class extends Be{constructor(){super(...arguments);this.verbose=G.Boolean("-v,--verbose",!1,{description:"Also return the cross-dependencies between workspaces"});this.json=G.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"})}async execute(){let e=await le.find(this.context.cwd,this.context.plugins),{project:r}=await Fe.find(e,this.context.cwd);return(await xe.start({configuration:e,json:this.json,stdout:this.context.stdout},async n=>{for(let s of r.workspaces){let{manifest:o}=s,a;if(this.verbose){let l=new Set,c=new Set;for(let u of We.hardDependencies)for(let[g,h]of o.getForScope(u)){let f=r.tryWorkspaceByDescriptor(h);f===null?r.workspacesByIdent.has(g)&&c.add(h):l.add(f)}a={workspaceDependencies:Array.from(l).map(u=>u.relativeCwd),mismatchedWorkspaceDependencies:Array.from(c).map(u=>Q.stringifyDescriptor(u))}}n.reportInfo(null,`${s.relativeCwd}`),n.reportJson(k({location:s.relativeCwd,name:o.name?Q.stringifyIdent(o.name):null},a))}})).exitCode()}};zp.paths=[["workspaces","list"]],zp.usage=fe.Usage({category:"Workspace-related commands",description:"list all available workspaces",details:"\n This command will print the list of all workspaces in the project. If both the `-v,--verbose` and `--json` options are set, Yarn will also return the cross-dependencies between each workspaces (useful when you wish to automatically generate Buck / Bazel rules).\n "});var ire=zp;var Vp=class extends fe{constructor(){super(...arguments);this.workspaceName=G.String();this.commandName=G.String();this.args=G.Proxy()}async execute(){let e=await le.find(this.context.cwd,this.context.plugins),{project:r,workspace:i}=await Fe.find(e,this.context.cwd);if(!i)throw new Xe(r.cwd,this.context.cwd);let n=r.workspaces,s=new Map(n.map(a=>{let l=Q.convertToIdent(a.locator);return[Q.stringifyIdent(l),a]})),o=s.get(this.workspaceName);if(o===void 0){let a=Array.from(s.keys()).sort();throw new me(`Workspace '${this.workspaceName}' not found. Did you mean any of the following: - ${a.join(` - - `)}?`)}return this.cli.run([this.commandName,...this.args],{cwd:o.cwd})}};gp.paths=[["workspace"]],gp.usage=ce.Usage({category:"Workspace-related commands",description:"run a command within the specified workspace",details:` + - `)}?`)}return this.cli.run([this.commandName,...this.args],{cwd:o.cwd})}};Vp.paths=[["workspace"]],Vp.usage=fe.Usage({category:"Workspace-related commands",description:"run a command within the specified workspace",details:` This command will run a given sub-command on a single workspace. - `,examples:[["Add a package to a single workspace","yarn workspace components add -D react"],["Run build script on a single workspace","yarn workspace components run build"]]});var Qee=gp;var DUe={configuration:{enableImmutableInstalls:{description:"If true (the default on CI), prevents the install command from modifying the lockfile",type:Ae.BOOLEAN,default:bee.isCI},defaultSemverRangePrefix:{description:"The default save prefix: '^', '~' or ''",type:Ae.STRING,values:["^","~",""],default:qA.CARET}},commands:[a_,l_,Q$,L$,Iee,see,ree,wee,Y$,j$,G$,q$,s_,o_,M$,K$,J$,W$,X$,V$,_$,$$,uee,lee,gee,eee,hee,fee,pee,Cee,mee,yee,Bee,Qee]},SUe=DUe;var Dk={};We(Dk,{default:()=>xUe});var Jr={optional:!0},Dee=[["@samverschueren/stream-to-observable@<0.3.1",{peerDependenciesMeta:{rxjs:Jr,zenObservable:Jr}}],["any-observable@<0.5.1",{peerDependenciesMeta:{rxjs:Jr,zenObservable:Jr}}],["@pm2/agent@<1.0.4",{dependencies:{debug:"*"}}],["debug@<4.2.0",{peerDependenciesMeta:{["supports-color"]:Jr}}],["got@<11",{dependencies:{["@types/responselike"]:"^1.0.0",["@types/keyv"]:"^3.1.1"}}],["cacheable-lookup@<4.1.2",{dependencies:{["@types/keyv"]:"^3.1.1"}}],["http-link-dataloader@*",{peerDependencies:{graphql:"^0.13.1 || ^14.0.0"}}],["typescript-language-server@*",{dependencies:{["vscode-jsonrpc"]:"^5.0.1",["vscode-languageserver-protocol"]:"^3.15.0"}}],["postcss-syntax@*",{peerDependenciesMeta:{["postcss-html"]:Jr,["postcss-jsx"]:Jr,["postcss-less"]:Jr,["postcss-markdown"]:Jr,["postcss-scss"]:Jr}}],["jss-plugin-rule-value-function@<=10.1.1",{dependencies:{["tiny-warning"]:"^1.0.2"}}],["ink-select-input@<4.1.0",{peerDependencies:{react:"^16.8.2"}}],["license-webpack-plugin@*",{peerDependenciesMeta:{webpack:Jr}}],["snowpack@>=3.3.0",{dependencies:{["node-gyp"]:"^7.1.0"}}],["promise-inflight@*",{peerDependenciesMeta:{bluebird:Jr}}],["reactcss@*",{peerDependencies:{react:"*"}}],["react-color@<=2.19.0",{peerDependencies:{react:"*"}}],["gatsby-plugin-i18n@*",{dependencies:{ramda:"^0.24.1"}}],["useragent@^2.0.0",{dependencies:{request:"^2.88.0",yamlparser:"0.0.x",semver:"5.5.x"}}],["@apollographql/apollo-tools@*",{peerDependencies:{graphql:"^14.2.1 || ^15.0.0"}}],["material-table@^2.0.0",{dependencies:{"@babel/runtime":"^7.11.2"}}],["@babel/parser@*",{dependencies:{"@babel/types":"^7.8.3"}}],["fork-ts-checker-webpack-plugin@*",{peerDependencies:{eslint:">= 6",typescript:">= 2.7",webpack:">= 4","vue-template-compiler":"*"},peerDependenciesMeta:{eslint:Jr,"vue-template-compiler":Jr}}],["rc-animate@<=3.1.1",{peerDependencies:{react:">=16.9.0","react-dom":">=16.9.0"}}],["react-bootstrap-table2-paginator@*",{dependencies:{classnames:"^2.2.6"}}],["react-draggable@<=4.4.3",{peerDependencies:{react:">= 16.3.0","react-dom":">= 16.3.0"}}],["apollo-upload-client@<14",{peerDependencies:{graphql:"14 - 15"}}],["react-instantsearch-core@<=6.7.0",{peerDependencies:{algoliasearch:">= 3.1 < 5"}}],["react-instantsearch-dom@<=6.7.0",{dependencies:{"react-fast-compare":"^3.0.0"}}],["ws@<7.2.1",{peerDependencies:{bufferutil:"^4.0.1","utf-8-validate":"^5.0.2"},peerDependenciesMeta:{bufferutil:Jr,"utf-8-validate":Jr}}],["react-portal@*",{peerDependencies:{"react-dom":"^15.0.0-0 || ^16.0.0-0 || ^17.0.0-0"}}],["react-scripts@<=4.0.1",{peerDependencies:{react:"*"}}],["testcafe@<=1.10.1",{dependencies:{"@babel/plugin-transform-for-of":"^7.12.1","@babel/runtime":"^7.12.5"}}],["testcafe-legacy-api@<=4.2.0",{dependencies:{"testcafe-hammerhead":"^17.0.1","read-file-relative":"^1.2.0"}}],["@google-cloud/firestore@<=4.9.3",{dependencies:{protobufjs:"^6.8.6"}}],["gatsby-source-apiserver@*",{dependencies:{["babel-polyfill"]:"^6.26.0"}}],["@webpack-cli/package-utils@<=1.0.1-alpha.4",{dependencies:{["cross-spawn"]:"^7.0.3"}}],["gatsby-remark-prismjs@<3.3.28",{dependencies:{lodash:"^4"}}],["gatsby-plugin-favicon@*",{peerDependencies:{webpack:"*"}}],["gatsby-plugin-sharp@*",{dependencies:{debug:"^4.3.1"}}],["gatsby-react-router-scroll@*",{dependencies:{["prop-types"]:"^15.7.2"}}],["@rebass/forms@*",{dependencies:{["@styled-system/should-forward-prop"]:"^5.0.0"},peerDependencies:{react:"^16.8.6"}}],["rebass@*",{peerDependencies:{react:"^16.8.6"}}]];var wk;function See(){return typeof wk=="undefined"&&(wk=require("zlib").brotliDecompressSync(Buffer.from("G7weAByFTVk3Vs7UfHhq4yykgEM7pbW7TI43SG2S5tvGrwHBAzdz+s/npQ6tgEvobvxisrPIadkXeUAJotBn5bDZ5kAhcRqsIHe3F75Walet5hNalwgFDtxb0BiDUjiUQkjG0yW2hto9HPgiCkm316d6bC0kST72YN7D7rfkhCE9x4J0XwB0yavalxpUu2t9xszHrmtwalOxT7VslsxWcB1qpqZwERUra4psWhTV8BgwWeizurec82Caf1ABL11YMfbf8FJ9JBceZOkgmvrQPbC9DUldX/yMbmX06UQluCEjSwUoyO+EZPIjofr+/oAZUck2enraRD+oWLlnlYnj8xB+gwSo9lmmks4fXv574qSqcWA6z21uYkzMu3EWj+K23RxeQlLqiE35/rC8GcS4CGkKHKKq+zAIQwD9iRDNfiAqueLLpicFFrNsAI4zeTD/eO9MHcnRa5m8UT+M2+V+AkFST4BlKneiAQRSdST8KEAIyFlULt6wa9EBd0Ds28VmpaxquJdVt+nwdEs5xUskI13OVtFyY0UrQIRAlCuvvWivvlSKQfTO+2Q8OyUR1W5RvetaPz4jD27hdtwHFFA1Ptx6Ee/t2cY2rg2G46M1pNDRf2pWhvpy8pqMnuI3++4OF3+7OFIWXGjh+o7Nr2jNvbiYcQdQS1h903/jVFgOpA0yJ78z+x759bFA0rq+6aY5qPB4FzS3oYoLupDUhD9nDz6F6H7hpnlMf18KNKDu4IKjTWwrAnY6MFQw1W6ymOALHlFyCZmQhldg1MQHaMVVQTVgDC60TfaBqG++Y8PEoFhN/PBTZT175KNP/BlHDYGOOBmnBdzqJKplZ/ljiVG0ZBzfqeBRrrUkn6rA54462SgiliKoYVnbeptMdXNfAuaupIEi0bApF10TlgHfmEJAPUVidRVFyDupSem5po5vErPqWKhKbUIp0LozpYsIKK57dM/HKr+nguF+7924IIWMICkQ8JUigs9D+W+c4LnNoRtPPKNRUiCYmP+Jfo2lfKCKw8qpraEeWU3uiNRO6zcyKQoXPR5htmzzLznke7b4YbXW3I1lIRzmgG02Udb58U+7TpwyN7XymCgH+wuPDthZVQvRZuEP+SnLtMicz9m5zASWOBiAcLmkuFlTKuHspSIhCBD0yUPKcxu81A+4YD78rA2vtwsUEday9WNyrShyrl60rWmA+SmbYZkQOwFJWArxRYYc5jGhA5ikxYw1rx3ei4NmeX/lKiwpZ9Ln1tV2Ae7sArvxuVLbJjqJRjW1vFXAyHpvLG+8MJ6T2Ubx5M2KDa2SN6vuIGxJ9WQM9Mk3Q7aCNiZONXllhqq24DmoLbQfW2rYWsOgHWjtOmIQMyMKdiHZDjoyIq5+U700nZ6odJAoYXPQBvFNiQ78d5jaXliBqLTJEqUCwi+LiH2mx92EmNKDsJL74Z613+3lf20pxkV1+erOrjj8pW00vsPaahKUM+05ssd5uwM7K482KWEf3TCwlg/o3e5ngto7qSMz7YteIgCsF1UOcsLk7F7MxWbvrPMY473ew0G+noVL8EPbkmEMftMSeL6HFub/zy+2JQ==","base64")).toString()),wk}var Qk;function Pee(){return typeof Qk=="undefined"&&(Qk=require("zlib").brotliDecompressSync(Buffer.from("G1QTIIzURnVBnGa0VPvr81orV8AFIqdU0sqrdcVgCdukgAZwi8a50gLk9+19Z2NcUILjmzXkzt4dzm5a6Yoys+/9qnKiaApXukOiuoyUaMcynG4X7X4vBaIE/PL30gwG6HSGJkLxb9PnLjfMr+748n7sM6C/NycK6ber/bX1reVVxta6W/31tZIhfrS+upoE/TPRHj0S/l0T59gTGdtKOp1OmMOJt9rhfucDdLJ2tgyfnO+u4YMkQAcYq/nebTcDmbXhqhgo6iQA4M3m4xya4Cos3p6klmkmQT+S4DLDZfwfMF+sUCx36KleOtaHLQfEIz0Bmncj/Ngi3lqOl4391EWEfIss6gVp3oDUGwsSZJKeOVONJWZg+Mue3KUMV3aMqYJ+7b2219D+GFDi8EV5y/Y+5J+He0oNjKAgqLsJziEsS9uIaCu3BHBKSXxNKKa2ShbfglcWoiiVT2kfGI7Gw+YJ/Sqy1H6wdFWtyVUQIa82JPwbeV25YKLzc5ZIFM6GCPSA+J9dTvJbs5LuuKnLP3f09gCu2jxqsAv6CA+ZySVaUJr2d3A70BC/uBCKr2OVrWgC3fSwb7NlfkgSEEiejrMGvhya9lMbVI6lMsFKN330A1/FOaefHQdNGLEZ3IwFF87H3xVlM0Xxsmbi/7A60oymRcIe0tH90alG6ez/yA7jwYotxuHWZdR+1HlMcddGHAV6QD/gXYPV0wnNv47I+5FGevzZFMqWSO8GU4nQ3FjsdgdJcD+c1rvudERKuLyd7bxiBpnsMDHsvPP4nXdXkld/gUNks3GAE1Otmb90bavDyiw4Mrx496Iw+jbLTgsCZGZXSZ9vM55C7KGe4HyJAKXEk0iT/Cj/PFwLJBN7pcP7ZFfYtUApGTWKkYhI9IE2zt/5ByH72wdvH+88b71zuv/FMCX3w6x5nzhY44Cg5IYv9LeKwHuHIWgPbfgrAcUxOlKkPRdQOIDF/aBuLPJAXD+TgxCNXx4jQxeR/qlBWVikFPfEI4rXMUc4kZ2w9KbPKYRvFUag0dVlVoyUP4zfidbTXAdZF88jAckl+NHjLFCNdX7EQ1PbLSOl+P+MqgwEOCi6dxgWZ7NCwJBjWKpk1LaxwKrhZ4aEC/0lMPJYe5S8xAakDcmA2kSS86GjEMTrv3VEu0S0YGZcxToMV524G4WAc4CReePePdipvs4aXRL5p+aeN96yfMGjsiTbQNxgbdRKc+keQ+NxYIEm1mBtEO29WrcbrqNbQRMR66KpGG4aG0NtmRyZ2JhUvu0paCklRlID8PT3gSiwZrqr4XZXoBBzBMrveWCuOg7iTgGDXDdbGi8XHkQf5KXDGFUxWueu5wkSa6gMWY1599g2piQjwBKIAPt4N5cOZdFBidz2feGwEAy1j1UydGxDSCCUsh314cUIIRV/dWCheceubL2gU8CibewmP7UxmN5kN4I7zfQhPxkP0NCcei8GXQpw4c3krEzW7PR2hgi/hqqqR58UJ/ZVfWxfcH5ZKMo4itkmPK0FCGxzzIRP20lK/gz28Y03sY233KvSVWUKl9rcbX6MbHjpUG8MvNlw72p6FwTejv92zgpnCxVJnIHHZhCBxNcHF5RTveRp513hUtTHHq4BIndlytZT5xoTSYfHKqKNr4o9kcGINIz6tZSKRdtbON3Ydr9cgqxHIeisMNIsvPg/IFMZuBbSqqDLeSO5dak1cGr76FtH2PC7hs0S0Oq3GsmF1Ga4YABAMGcdPAWzTk26B7cKV91I2b0V/GYvnsEQ1YGntRqi5EQqTlgZszbV/32GuZtUF49JOA/r4jAdwUOsbPo6mNoBlJPYjM5axrZaWQf33bFsLWqiyvvDOM4x0Ng802T7cuP2a3q98GWq6yiq6q3M77hcZlOUnmryctRYmI4Hb2F5XixFohkBmySCjU+M7/WQVE5YAtnlxiUJDhFN0y1tNeMWY9E0MfZi2rQ4eC72WXjsAA==","base64")).toString()),Qk}var bk;function xee(){return typeof bk=="undefined"&&(bk=require("zlib").brotliDecompressSync(Buffer.from("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","base64")).toString()),bk}var kee=new Map([[b.makeIdent(null,"fsevents").identHash,See],[b.makeIdent(null,"resolve").identHash,Pee],[b.makeIdent(null,"typescript").identHash,xee]]),PUe={hooks:{registerPackageExtensions:async(t,e)=>{for(let[r,i]of Dee)e(b.parseDescriptor(r,!0),i)},getBuiltinPatch:async(t,e)=>{var s;let r="compat/";if(!e.startsWith(r))return;let i=b.parseIdent(e.slice(r.length)),n=(s=kee.get(i.identHash))==null?void 0:s();return typeof n!="undefined"?n:null},reduceDependency:async(t,e,r,i)=>typeof kee.get(t.identHash)=="undefined"?t:b.makeDescriptor(t,b.makeRange({protocol:"patch:",source:b.stringifyDescriptor(t),selector:`~builtin`,params:null}))}},xUe=PUe;var Sk={};We(Sk,{default:()=>vUe});var py=class extends Ce{constructor(){super(...arguments);this.pkg=j.String("-p,--package",{description:"The package to run the provided command from"});this.quiet=j.Boolean("-q,--quiet",!1,{description:"Only report critical errors instead of printing the full install logs"});this.command=j.String();this.args=j.Proxy()}async execute(){let e=[];this.pkg&&e.push("--package",this.pkg),this.quiet&&e.push("--quiet");let r=b.parseIdent(this.command),i=b.makeIdent(r.scope,`create-${r.name}`);return this.cli.run(["dlx",...e,b.stringifyIdent(i),...this.args])}};py.paths=[["create"]];var vee=py;var hp=class extends Ce{constructor(){super(...arguments);this.packages=j.Array("-p,--package",{description:"The package(s) to install before running the command"});this.quiet=j.Boolean("-q,--quiet",!1,{description:"Only report critical errors instead of printing the full install logs"});this.command=j.String();this.args=j.Proxy()}async execute(){return oe.telemetry=null,await R.mktempPromise(async e=>{var p;let r=w.join(e,`dlx-${process.pid}`);await R.mkdirPromise(r),await R.writeFilePromise(w.join(r,"package.json"),`{} -`),await R.writeFilePromise(w.join(r,"yarn.lock"),"");let i=w.join(r,".yarnrc.yml"),n=await oe.findProjectCwd(this.context.cwd,ft.lockfile),s=!(await oe.find(this.context.cwd,null,{strict:!1})).get("enableGlobalCache"),o=n!==null?w.join(n,".yarnrc.yml"):null;o!==null&&R.existsSync(o)?(await R.copyFilePromise(o,i),await oe.updateConfiguration(r,m=>{let I={...m,enableGlobalCache:s,enableTelemetry:!1};return Array.isArray(m.plugins)&&(I.plugins=m.plugins.map(y=>{let B=typeof y=="string"?y:y.path,P=npath.isAbsolute(B)?B:npath.resolve(npath.fromPortablePath(n),B);return typeof y=="string"?P:{path:P,spec:y.spec}})),I})):await R.writeFilePromise(i,`enableGlobalCache: ${s} + `,examples:[["Add a package to a single workspace","yarn workspace components add -D react"],["Run build script on a single workspace","yarn workspace components run build"]]});var nre=Vp;var CHe={configuration:{enableImmutableInstalls:{description:"If true (the default on CI), prevents the install command from modifying the lockfile",type:ge.BOOLEAN,default:sre.isCI},defaultSemverRangePrefix:{description:"The default save prefix: '^', '~' or ''",type:ge.STRING,values:["^","~",""],default:ul.CARET}},commands:[K$,U$,tte,hte,Zte,Ote,Lte,ire,Ite,Ete,yte,Bte,M$,O$,fte,dte,wte,Qte,Dte,Ste,Pte,$te,kte,Gte,Hte,jte,vte,qte,Jte,Wte,Vte,Xte,tre,rre,nre]},mHe=CHe;var Kv={};$e(Kv,{default:()=>EHe});var or={optional:!0},ore=[["@tailwindcss/aspect-ratio@<0.2.1",{peerDependencies:{tailwindcss:"^2.0.2"}}],["@tailwindcss/line-clamp@<0.2.1",{peerDependencies:{tailwindcss:"^2.0.2"}}],["@fullhuman/postcss-purgecss@3.1.3 || 3.1.3-alpha.0",{peerDependencies:{postcss:"^8.0.0"}}],["@samverschueren/stream-to-observable@<0.3.1",{peerDependenciesMeta:{rxjs:or,zenObservable:or}}],["any-observable@<0.5.1",{peerDependenciesMeta:{rxjs:or,zenObservable:or}}],["@pm2/agent@<1.0.4",{dependencies:{debug:"*"}}],["debug@<4.2.0",{peerDependenciesMeta:{["supports-color"]:or}}],["got@<11",{dependencies:{["@types/responselike"]:"^1.0.0",["@types/keyv"]:"^3.1.1"}}],["cacheable-lookup@<4.1.2",{dependencies:{["@types/keyv"]:"^3.1.1"}}],["http-link-dataloader@*",{peerDependencies:{graphql:"^0.13.1 || ^14.0.0"}}],["typescript-language-server@*",{dependencies:{["vscode-jsonrpc"]:"^5.0.1",["vscode-languageserver-protocol"]:"^3.15.0"}}],["postcss-syntax@*",{peerDependenciesMeta:{["postcss-html"]:or,["postcss-jsx"]:or,["postcss-less"]:or,["postcss-markdown"]:or,["postcss-scss"]:or}}],["jss-plugin-rule-value-function@<=10.1.1",{dependencies:{["tiny-warning"]:"^1.0.2"}}],["ink-select-input@<4.1.0",{peerDependencies:{react:"^16.8.2"}}],["license-webpack-plugin@<2.3.18",{peerDependenciesMeta:{webpack:or}}],["snowpack@>=3.3.0",{dependencies:{["node-gyp"]:"^7.1.0"}}],["promise-inflight@*",{peerDependenciesMeta:{bluebird:or}}],["reactcss@*",{peerDependencies:{react:"*"}}],["react-color@<=2.19.0",{peerDependencies:{react:"*"}}],["gatsby-plugin-i18n@*",{dependencies:{ramda:"^0.24.1"}}],["useragent@^2.0.0",{dependencies:{request:"^2.88.0",yamlparser:"0.0.x",semver:"5.5.x"}}],["@apollographql/apollo-tools@*",{peerDependencies:{graphql:"^14.2.1 || ^15.0.0"}}],["material-table@^2.0.0",{dependencies:{"@babel/runtime":"^7.11.2"}}],["@babel/parser@*",{dependencies:{"@babel/types":"^7.8.3"}}],["fork-ts-checker-webpack-plugin@*",{peerDependencies:{eslint:">= 6",typescript:">= 2.7",webpack:">= 4","vue-template-compiler":"*"},peerDependenciesMeta:{eslint:or,"vue-template-compiler":or}}],["rc-animate@<=3.1.1",{peerDependencies:{react:">=16.9.0","react-dom":">=16.9.0"}}],["react-bootstrap-table2-paginator@*",{dependencies:{classnames:"^2.2.6"}}],["react-draggable@<=4.4.3",{peerDependencies:{react:">= 16.3.0","react-dom":">= 16.3.0"}}],["apollo-upload-client@<14",{peerDependencies:{graphql:"14 - 15"}}],["react-instantsearch-core@<=6.7.0",{peerDependencies:{algoliasearch:">= 3.1 < 5"}}],["react-instantsearch-dom@<=6.7.0",{dependencies:{"react-fast-compare":"^3.0.0"}}],["ws@<7.2.1",{peerDependencies:{bufferutil:"^4.0.1","utf-8-validate":"^5.0.2"},peerDependenciesMeta:{bufferutil:or,"utf-8-validate":or}}],["react-portal@*",{peerDependencies:{"react-dom":"^15.0.0-0 || ^16.0.0-0 || ^17.0.0-0"}}],["react-scripts@<=4.0.1",{peerDependencies:{react:"*"}}],["testcafe@<=1.10.1",{dependencies:{"@babel/plugin-transform-for-of":"^7.12.1","@babel/runtime":"^7.12.5"}}],["testcafe-legacy-api@<=4.2.0",{dependencies:{"testcafe-hammerhead":"^17.0.1","read-file-relative":"^1.2.0"}}],["@google-cloud/firestore@<=4.9.3",{dependencies:{protobufjs:"^6.8.6"}}],["gatsby-source-apiserver@*",{dependencies:{["babel-polyfill"]:"^6.26.0"}}],["@webpack-cli/package-utils@<=1.0.1-alpha.4",{dependencies:{["cross-spawn"]:"^7.0.3"}}],["gatsby-remark-prismjs@<3.3.28",{dependencies:{lodash:"^4"}}],["gatsby-plugin-favicon@*",{peerDependencies:{webpack:"*"}}],["gatsby-plugin-sharp@*",{dependencies:{debug:"^4.3.1"}}],["gatsby-react-router-scroll@*",{dependencies:{["prop-types"]:"^15.7.2"}}],["@rebass/forms@*",{dependencies:{["@styled-system/should-forward-prop"]:"^5.0.0"},peerDependencies:{react:"^16.8.6"}}],["rebass@*",{peerDependencies:{react:"^16.8.6"}}],["@ant-design/react-slick@<=0.28.3",{peerDependencies:{react:">=16.0.0"}}],["mqtt@<4.2.7",{dependencies:{duplexify:"^4.1.1"}}],["vue-cli-plugin-vuetify@<=2.0.3",{dependencies:{semver:"^6.3.0"},peerDependenciesMeta:{"sass-loader":or,"vuetify-loader":or}}],["vue-cli-plugin-vuetify@<=2.0.4",{dependencies:{"null-loader":"^3.0.0"}}],["@vuetify/cli-plugin-utils@<=0.0.4",{dependencies:{semver:"^6.3.0"},peerDependenciesMeta:{"sass-loader":or}}],["@vue/cli-plugin-typescript@<=5.0.0-alpha.0",{dependencies:{"babel-loader":"^8.1.0"}}],["@vue/cli-plugin-typescript@<=5.0.0-beta.0",{dependencies:{"@babel/core":"^7.12.16"},peerDependencies:{"vue-template-compiler":"^2.0.0"},peerDependenciesMeta:{"vue-template-compiler":or}}],["cordova-ios@<=6.3.0",{dependencies:{underscore:"^1.9.2"}}],["cordova-lib@<=10.0.1",{dependencies:{underscore:"^1.9.2"}}],["git-node-fs@*",{peerDependencies:{"js-git":"^0.7.8"},peerDependenciesMeta:{"js-git":or}}]];var Nv;function are(){return typeof Nv=="undefined"&&(Nv=require("zlib").brotliDecompressSync(Buffer.from("G7weAByFTVk3Vs7UfHhq4yykgEM7pbW7TI43SG2S5tvGrwHBAzdz+s/npQ6tgEvobvxisrPIadkXeUAJotBn5bDZ5kAhcRqsIHe3F75Walet5hNalwgFDtxb0BiDUjiUQkjG0yW2hto9HPgiCkm316d6bC0kST72YN7D7rfkhCE9x4J0XwB0yavalxpUu2t9xszHrmtwalOxT7VslsxWcB1qpqZwERUra4psWhTV8BgwWeizurec82Caf1ABL11YMfbf8FJ9JBceZOkgmvrQPbC9DUldX/yMbmX06UQluCEjSwUoyO+EZPIjofr+/oAZUck2enraRD+oWLlnlYnj8xB+gwSo9lmmks4fXv574qSqcWA6z21uYkzMu3EWj+K23RxeQlLqiE35/rC8GcS4CGkKHKKq+zAIQwD9iRDNfiAqueLLpicFFrNsAI4zeTD/eO9MHcnRa5m8UT+M2+V+AkFST4BlKneiAQRSdST8KEAIyFlULt6wa9EBd0Ds28VmpaxquJdVt+nwdEs5xUskI13OVtFyY0UrQIRAlCuvvWivvlSKQfTO+2Q8OyUR1W5RvetaPz4jD27hdtwHFFA1Ptx6Ee/t2cY2rg2G46M1pNDRf2pWhvpy8pqMnuI3++4OF3+7OFIWXGjh+o7Nr2jNvbiYcQdQS1h903/jVFgOpA0yJ78z+x759bFA0rq+6aY5qPB4FzS3oYoLupDUhD9nDz6F6H7hpnlMf18KNKDu4IKjTWwrAnY6MFQw1W6ymOALHlFyCZmQhldg1MQHaMVVQTVgDC60TfaBqG++Y8PEoFhN/PBTZT175KNP/BlHDYGOOBmnBdzqJKplZ/ljiVG0ZBzfqeBRrrUkn6rA54462SgiliKoYVnbeptMdXNfAuaupIEi0bApF10TlgHfmEJAPUVidRVFyDupSem5po5vErPqWKhKbUIp0LozpYsIKK57dM/HKr+nguF+7924IIWMICkQ8JUigs9D+W+c4LnNoRtPPKNRUiCYmP+Jfo2lfKCKw8qpraEeWU3uiNRO6zcyKQoXPR5htmzzLznke7b4YbXW3I1lIRzmgG02Udb58U+7TpwyN7XymCgH+wuPDthZVQvRZuEP+SnLtMicz9m5zASWOBiAcLmkuFlTKuHspSIhCBD0yUPKcxu81A+4YD78rA2vtwsUEday9WNyrShyrl60rWmA+SmbYZkQOwFJWArxRYYc5jGhA5ikxYw1rx3ei4NmeX/lKiwpZ9Ln1tV2Ae7sArvxuVLbJjqJRjW1vFXAyHpvLG+8MJ6T2Ubx5M2KDa2SN6vuIGxJ9WQM9Mk3Q7aCNiZONXllhqq24DmoLbQfW2rYWsOgHWjtOmIQMyMKdiHZDjoyIq5+U700nZ6odJAoYXPQBvFNiQ78d5jaXliBqLTJEqUCwi+LiH2mx92EmNKDsJL74Z613+3lf20pxkV1+erOrjj8pW00vsPaahKUM+05ssd5uwM7K482KWEf3TCwlg/o3e5ngto7qSMz7YteIgCsF1UOcsLk7F7MxWbvrPMY473ew0G+noVL8EPbkmEMftMSeL6HFub/zy+2JQ==","base64")).toString()),Nv}var Mv;function Are(){return typeof Mv=="undefined"&&(Mv=require("zlib").brotliDecompressSync(Buffer.from("G1QTIIzURnVBnGa0VPvr81orV8AFIqdU0sqrdcVgCdukgAZwi8a50gLk9+19Z2NcUILjmzXkzt4dzm5a6Yoys+/9qnKiaApXukOiuoyUaMcynG4X7X4vBaIE/PL30gwG6HSGJkLxb9PnLjfMr+748n7sM6C/NycK6ber/bX1reVVxta6W/31tZIhfrS+upoE/TPRHj0S/l0T59gTGdtKOp1OmMOJt9rhfucDdLJ2tgyfnO+u4YMkQAcYq/nebTcDmbXhqhgo6iQA4M3m4xya4Cos3p6klmkmQT+S4DLDZfwfMF+sUCx36KleOtaHLQfEIz0Bmncj/Ngi3lqOl4391EWEfIss6gVp3oDUGwsSZJKeOVONJWZg+Mue3KUMV3aMqYJ+7b2219D+GFDi8EV5y/Y+5J+He0oNjKAgqLsJziEsS9uIaCu3BHBKSXxNKKa2ShbfglcWoiiVT2kfGI7Gw+YJ/Sqy1H6wdFWtyVUQIa82JPwbeV25YKLzc5ZIFM6GCPSA+J9dTvJbs5LuuKnLP3f09gCu2jxqsAv6CA+ZySVaUJr2d3A70BC/uBCKr2OVrWgC3fSwb7NlfkgSEEiejrMGvhya9lMbVI6lMsFKN330A1/FOaefHQdNGLEZ3IwFF87H3xVlM0Xxsmbi/7A60oymRcIe0tH90alG6ez/yA7jwYotxuHWZdR+1HlMcddGHAV6QD/gXYPV0wnNv47I+5FGevzZFMqWSO8GU4nQ3FjsdgdJcD+c1rvudERKuLyd7bxiBpnsMDHsvPP4nXdXkld/gUNks3GAE1Otmb90bavDyiw4Mrx496Iw+jbLTgsCZGZXSZ9vM55C7KGe4HyJAKXEk0iT/Cj/PFwLJBN7pcP7ZFfYtUApGTWKkYhI9IE2zt/5ByH72wdvH+88b71zuv/FMCX3w6x5nzhY44Cg5IYv9LeKwHuHIWgPbfgrAcUxOlKkPRdQOIDF/aBuLPJAXD+TgxCNXx4jQxeR/qlBWVikFPfEI4rXMUc4kZ2w9KbPKYRvFUag0dVlVoyUP4zfidbTXAdZF88jAckl+NHjLFCNdX7EQ1PbLSOl+P+MqgwEOCi6dxgWZ7NCwJBjWKpk1LaxwKrhZ4aEC/0lMPJYe5S8xAakDcmA2kSS86GjEMTrv3VEu0S0YGZcxToMV524G4WAc4CReePePdipvs4aXRL5p+aeN96yfMGjsiTbQNxgbdRKc+keQ+NxYIEm1mBtEO29WrcbrqNbQRMR66KpGG4aG0NtmRyZ2JhUvu0paCklRlID8PT3gSiwZrqr4XZXoBBzBMrveWCuOg7iTgGDXDdbGi8XHkQf5KXDGFUxWueu5wkSa6gMWY1599g2piQjwBKIAPt4N5cOZdFBidz2feGwEAy1j1UydGxDSCCUsh314cUIIRV/dWCheceubL2gU8CibewmP7UxmN5kN4I7zfQhPxkP0NCcei8GXQpw4c3krEzW7PR2hgi/hqqqR58UJ/ZVfWxfcH5ZKMo4itkmPK0FCGxzzIRP20lK/gz28Y03sY233KvSVWUKl9rcbX6MbHjpUG8MvNlw72p6FwTejv92zgpnCxVJnIHHZhCBxNcHF5RTveRp513hUtTHHq4BIndlytZT5xoTSYfHKqKNr4o9kcGINIz6tZSKRdtbON3Ydr9cgqxHIeisMNIsvPg/IFMZuBbSqqDLeSO5dak1cGr76FtH2PC7hs0S0Oq3GsmF1Ga4YABAMGcdPAWzTk26B7cKV91I2b0V/GYvnsEQ1YGntRqi5EQqTlgZszbV/32GuZtUF49JOA/r4jAdwUOsbPo6mNoBlJPYjM5axrZaWQf33bFsLWqiyvvDOM4x0Ng802T7cuP2a3q98GWq6yiq6q3M77hcZlOUnmryctRYmI4Hb2F5XixFohkBmySCjU+M7/WQVE5YAtnlxiUJDhFN0y1tNeMWY9E0MfZi2rQ4eC72WXjsAA==","base64")).toString()),Mv}var Ov;function lre(){return typeof Ov=="undefined"&&(Ov=require("zlib").brotliDecompressSync(Buffer.from("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","base64")).toString()),Ov}var cre=new Map([[Q.makeIdent(null,"fsevents").identHash,are],[Q.makeIdent(null,"resolve").identHash,Are],[Q.makeIdent(null,"typescript").identHash,lre]]),IHe={hooks:{registerPackageExtensions:async(t,e)=>{for(let[r,i]of ore)e(Q.parseDescriptor(r,!0),i)},getBuiltinPatch:async(t,e)=>{var s;let r="compat/";if(!e.startsWith(r))return;let i=Q.parseIdent(e.slice(r.length)),n=(s=cre.get(i.identHash))==null?void 0:s();return typeof n!="undefined"?n:null},reduceDependency:async(t,e,r,i)=>typeof cre.get(t.identHash)=="undefined"?t:Q.makeDescriptor(t,Q.makeRange({protocol:"patch:",source:Q.stringifyDescriptor(t),selector:`~builtin`,params:null}))}},EHe=IHe;var Tv={};$e(Tv,{default:()=>BHe});var aB=class extends Be{constructor(){super(...arguments);this.pkg=G.String("-p,--package",{description:"The package to run the provided command from"});this.quiet=G.Boolean("-q,--quiet",!1,{description:"Only report critical errors instead of printing the full install logs"});this.command=G.String();this.args=G.Proxy()}async execute(){let e=[];this.pkg&&e.push("--package",this.pkg),this.quiet&&e.push("--quiet");let r=Q.parseIdent(this.command),i=Q.makeIdent(r.scope,`create-${r.name}`);return this.cli.run(["dlx",...e,Q.stringifyIdent(i),...this.args])}};aB.paths=[["create"]];var ure=aB;var Xp=class extends Be{constructor(){super(...arguments);this.packages=G.Array("-p,--package",{description:"The package(s) to install before running the command"});this.quiet=G.Boolean("-q,--quiet",!1,{description:"Only report critical errors instead of printing the full install logs"});this.command=G.String();this.args=G.Proxy()}async execute(){return le.telemetry=null,await M.mktempPromise(async e=>{var p;let r=B.join(e,`dlx-${process.pid}`);await M.mkdirPromise(r),await M.writeFilePromise(B.join(r,"package.json"),`{} +`),await M.writeFilePromise(B.join(r,"yarn.lock"),"");let i=B.join(r,".yarnrc.yml"),n=await le.findProjectCwd(this.context.cwd,mt.lockfile),s=!(await le.find(this.context.cwd,null,{strict:!1})).get("enableGlobalCache"),o=n!==null?B.join(n,".yarnrc.yml"):null;o!==null&&M.existsSync(o)?(await M.copyFilePromise(o,i),await le.updateConfiguration(r,m=>{let I=V(k({},m),{enableGlobalCache:s,enableTelemetry:!1});return Array.isArray(m.plugins)&&(I.plugins=m.plugins.map(y=>{let w=typeof y=="string"?y:y.path,x=L.isAbsolute(w)?w:L.resolve(L.fromPortablePath(n),w);return typeof y=="string"?x:{path:x,spec:y.spec}})),I})):await M.writeFilePromise(i,`enableGlobalCache: ${s} enableTelemetry: false -`);let a=(p=this.packages)!=null?p:[this.command],l=b.parseDescriptor(this.command).name,c=await this.cli.run(["add","--",...a],{cwd:r,quiet:this.quiet});if(c!==0)return c;this.quiet||this.context.stdout.write(` -`);let u=await oe.find(r,this.context.plugins),{project:g,workspace:h}=await ke.find(u,r);if(h===null)throw new Xe(g.cwd,r);await g.restoreInstallState();let f=await Et.getWorkspaceAccessibleBinaries(h);return f.has(l)===!1&&f.size===1&&typeof this.packages=="undefined"&&(l=Array.from(f)[0][0]),await Et.executeWorkspaceAccessibleBinary(h,l,this.args,{packageAccessibleBinaries:f,cwd:this.context.cwd,stdin:this.context.stdin,stdout:this.context.stdout,stderr:this.context.stderr})})}};hp.paths=[["dlx"]],hp.usage=ce.Usage({description:"run a package in a temporary environment",details:"\n This command will install a package within a temporary environment, and run its binary script if it contains any. The binary will run within the current cwd.\n\n By default Yarn will download the package named `command`, but this can be changed through the use of the `-p,--package` flag which will instruct Yarn to still run the same command but from a different package.\n\n Using `yarn dlx` as a replacement of `yarn add` isn't recommended, as it makes your project non-deterministic (Yarn doesn't keep track of the packages installed through `dlx` - neither their name, nor their version).\n ",examples:[["Use create-react-app to create a new React app","yarn dlx create-react-app ./my-app"]]});var Fee=hp;var kUe={commands:[vee,Fee]},vUe=kUe;var Nk={};We(Nk,{default:()=>LUe,fileUtils:()=>Pk});var su=/^(?:[a-zA-Z]:[\\/]|\.{0,2}\/)/,fp=/^[^?]*\.(?:tar\.gz|tgz)(?:::.*)?$/,rr="file:";var Pk={};We(Pk,{makeArchiveFromLocator:()=>dy,makeBufferFromLocator:()=>vk,makeLocator:()=>kk,makeSpec:()=>Ree,parseSpec:()=>xk});function xk(t){let{params:e,selector:r}=b.parseRange(t),i=npath.toPortablePath(r);return{parentLocator:e&&typeof e.locator=="string"?b.parseLocator(e.locator):null,path:i}}function Ree({parentLocator:t,path:e,folderHash:r,protocol:i}){let n=t!==null?{locator:b.stringifyLocator(t)}:{},s=typeof r!="undefined"?{hash:r}:{};return b.makeRange({protocol:i,source:e,selector:e,params:{...s,...n}})}function kk(t,{parentLocator:e,path:r,folderHash:i,protocol:n}){return b.makeLocator(t,Ree({parentLocator:e,path:r,folderHash:i,protocol:n}))}async function dy(t,{protocol:e,fetchOptions:r,inMemory:i=!1}){let{parentLocator:n,path:s}=b.parseFileStyleRange(t.reference,{protocol:e}),o=w.isAbsolute(s)?{packageFs:new Ct(pe.root),prefixPath:pe.dot,localPath:pe.root}:await r.fetcher.fetch(n,r),a=o.localPath?{packageFs:new Ct(pe.root),prefixPath:w.relative(pe.root,o.localPath)}:o;o!==a&&o.releaseFs&&o.releaseFs();let l=a.packageFs,c=w.join(a.prefixPath,s);return await he.releaseAfterUseAsync(async()=>await Ar.makeArchiveFromDirectory(c,{baseFs:l,prefixPath:b.getIdentVendorPath(t),compressionLevel:r.project.configuration.get("compressionLevel"),inMemory:i}),a.releaseFs)}async function vk(t,{protocol:e,fetchOptions:r}){return(await dy(t,{protocol:e,fetchOptions:r,inMemory:!0})).getBufferAndClose()}var Fk=class{supports(e,r){return!!e.reference.startsWith(rr)}getLocalPath(e,r){let{parentLocator:i,path:n}=b.parseFileStyleRange(e.reference,{protocol:rr});if(w.isAbsolute(n))return n;let s=r.fetcher.getLocalPath(i,r);return s===null?null:w.resolve(s,n)}async fetch(e,r){let i=r.checksums.get(e.locatorHash)||null,[n,s,o]=await r.cache.fetchPackageFromCache(e,i,{onHit:()=>r.report.reportCacheHit(e),onMiss:()=>r.report.reportCacheMiss(e,`${b.prettyLocator(r.project.configuration,e)} can't be found in the cache and will be fetched from the disk`),loader:()=>this.fetchFromDisk(e,r),skipIntegrityCheck:r.skipIntegrityCheck});return{packageFs:n,releaseFs:s,prefixPath:b.getIdentVendorPath(e),localPath:this.getLocalPath(e,r),checksum:o}}async fetchFromDisk(e,r){return dy(e,{protocol:rr,fetchOptions:r})}};var FUe=1,Rk=class{supportsDescriptor(e,r){return e.range.match(su)?!0:!!e.range.startsWith(rr)}supportsLocator(e,r){return!!e.reference.startsWith(rr)}shouldPersistResolution(e,r){return!1}bindDescriptor(e,r,i){return su.test(e.range)&&(e=b.makeDescriptor(e,`${rr}${e.range}`)),b.bindDescriptor(e,{locator:b.stringifyLocator(r)})}getResolutionDependencies(e,r){return[]}async getCandidates(e,r,i){if(!i.fetchOptions)throw new Error("Assertion failed: This resolver cannot be used unless a fetcher is configured");let{path:n,parentLocator:s}=xk(e.range);if(s===null)throw new Error("Assertion failed: The descriptor should have been bound");let o=await vk(b.makeLocator(e,b.makeRange({protocol:rr,source:n,selector:n,params:{locator:b.stringifyLocator(s)}})),{protocol:rr,fetchOptions:i.fetchOptions}),a=pi.makeHash(`${FUe}`,o).slice(0,6);return[kk(e,{parentLocator:s,path:n,folderHash:a,protocol:rr})]}async getSatisfying(e,r,i){return null}async resolve(e,r){if(!r.fetchOptions)throw new Error("Assertion failed: This resolver cannot be used unless a fetcher is configured");let i=await r.fetchOptions.fetcher.fetch(e,r.fetchOptions),n=await he.releaseAfterUseAsync(async()=>await je.find(i.prefixPath,{baseFs:i.packageFs}),i.releaseFs);return{...e,version:n.version||"0.0.0",languageName:r.project.configuration.get("defaultLanguageName"),linkType:nt.HARD,dependencies:n.dependencies,peerDependencies:n.peerDependencies,dependenciesMeta:n.dependenciesMeta,peerDependenciesMeta:n.peerDependenciesMeta,bin:n.bin}}};var Lk=class{supports(e,r){return fp.test(e.reference)?!!e.reference.startsWith(rr):!1}getLocalPath(e,r){return null}async fetch(e,r){let i=r.checksums.get(e.locatorHash)||null,[n,s,o]=await r.cache.fetchPackageFromCache(e,i,{onHit:()=>r.report.reportCacheHit(e),onMiss:()=>r.report.reportCacheMiss(e,`${b.prettyLocator(r.project.configuration,e)} can't be found in the cache and will be fetched from the disk`),loader:()=>this.fetchFromDisk(e,r),skipIntegrityCheck:r.skipIntegrityCheck});return{packageFs:n,releaseFs:s,prefixPath:b.getIdentVendorPath(e),checksum:o}}async fetchFromDisk(e,r){let{parentLocator:i,path:n}=b.parseFileStyleRange(e.reference,{protocol:rr}),s=w.isAbsolute(n)?{packageFs:new Ct(pe.root),prefixPath:pe.dot,localPath:pe.root}:await r.fetcher.fetch(i,r),o=s.localPath?{packageFs:new Ct(pe.root),prefixPath:w.relative(pe.root,s.localPath)}:s;s!==o&&s.releaseFs&&s.releaseFs();let a=o.packageFs,l=w.join(o.prefixPath,n),c=await a.readFilePromise(l);return await he.releaseAfterUseAsync(async()=>await Ar.convertToZip(c,{compressionLevel:r.project.configuration.get("compressionLevel"),prefixPath:b.getIdentVendorPath(e),stripComponents:1}),o.releaseFs)}};var Mk=class{supportsDescriptor(e,r){return fp.test(e.range)?!!(e.range.startsWith(rr)||su.test(e.range)):!1}supportsLocator(e,r){return fp.test(e.reference)?!!e.reference.startsWith(rr):!1}shouldPersistResolution(e,r){return!0}bindDescriptor(e,r,i){return su.test(e.range)&&(e=b.makeDescriptor(e,`${rr}${e.range}`)),b.bindDescriptor(e,{locator:b.stringifyLocator(r)})}getResolutionDependencies(e,r){return[]}async getCandidates(e,r,i){let n=e.range;return n.startsWith(rr)&&(n=n.slice(rr.length)),[b.makeLocator(e,`${rr}${npath.toPortablePath(n)}`)]}async getSatisfying(e,r,i){return null}async resolve(e,r){if(!r.fetchOptions)throw new Error("Assertion failed: This resolver cannot be used unless a fetcher is configured");let i=await r.fetchOptions.fetcher.fetch(e,r.fetchOptions),n=await he.releaseAfterUseAsync(async()=>await je.find(i.prefixPath,{baseFs:i.packageFs}),i.releaseFs);return{...e,version:n.version||"0.0.0",languageName:r.project.configuration.get("defaultLanguageName"),linkType:nt.HARD,dependencies:n.dependencies,peerDependencies:n.peerDependencies,dependenciesMeta:n.dependenciesMeta,peerDependenciesMeta:n.peerDependenciesMeta,bin:n.bin}}};var RUe={fetchers:[Lk,Fk],resolvers:[Mk,Rk]},LUe=RUe;var Wk={};We(Wk,{default:()=>ZUe,gitUtils:()=>pp});var pp={};We(pp,{TreeishProtocols:()=>Qi,clone:()=>Gk,isGitUrl:()=>au,lsRemote:()=>Zee,normalizeLocator:()=>Yk,normalizeRepoUrl:()=>dp,resolveUrl:()=>jk,splitRepoUrl:()=>Cp});var Uk=X(zee()),ou=X(require("querystring")),Hk=X(hr()),Xee=X(require("url"));function Vee(){return{...process.env,GIT_SSH_COMMAND:"ssh -o BatchMode=yes"}}var XUe=[/^ssh:/,/^git(?:\+[^:]+)?:/,/^(?:git\+)?https?:[^#]+\/[^#]+(?:\.git)(?:#.*)?$/,/^git@[^#]+\/[^#]+\.git(?:#.*)?$/,/^(?:github:|https:\/\/github\.com\/)?(?!\.{1,2}\/)([a-zA-Z._0-9-]+)\/(?!\.{1,2}(?:#|$))([a-zA-Z._0-9-]+?)(?:\.git)?(?:#.*)?$/,/^https:\/\/github\.com\/(?!\.{1,2}\/)([a-zA-Z0-9._-]+)\/(?!\.{1,2}(?:#|$))([a-zA-Z0-9._-]+?)\/tarball\/(.+)?$/],Qi;(function(t){t.Commit="commit",t.Head="head",t.Tag="tag",t.Semver="semver"})(Qi||(Qi={}));function au(t){return t?XUe.some(e=>!!t.match(e)):!1}function Cp(t){t=dp(t);let e=t.indexOf("#");if(e===-1)return{repo:t,treeish:{protocol:Qi.Head,request:"HEAD"},extra:{}};let r=t.slice(0,e),i=t.slice(e+1);if(i.match(/^[a-z]+=/)){let n=ou.default.parse(i);for(let[l,c]of Object.entries(n))if(typeof c!="string")throw new Error(`Assertion failed: The ${l} parameter must be a literal string`);let s=Object.values(Qi).find(l=>Object.prototype.hasOwnProperty.call(n,l)),o,a;typeof s!="undefined"?(o=s,a=n[s]):(o=Qi.Head,a="HEAD");for(let l of Object.values(Qi))delete n[l];return{repo:r,treeish:{protocol:o,request:a},extra:n}}else{let n=i.indexOf(":"),s,o;return n===-1?(s=null,o=i):(s=i.slice(0,n),o=i.slice(n+1)),{repo:r,treeish:{protocol:s,request:o},extra:{}}}}function dp(t,{git:e=!1}={}){var r;if(t=t.replace(/^git\+https:/,"https:"),t=t.replace(/^(?:github:|https:\/\/github\.com\/)?(?!\.{1,2}\/)([a-zA-Z0-9._-]+)\/(?!\.{1,2}(?:#|$))([a-zA-Z0-9._-]+?)(?:\.git)?(#.*)?$/,"https://github.com/$1/$2.git$3"),t=t.replace(/^https:\/\/github\.com\/(?!\.{1,2}\/)([a-zA-Z0-9._-]+)\/(?!\.{1,2}(?:#|$))([a-zA-Z0-9._-]+?)\/tarball\/(.+)?$/,"https://github.com/$1/$2.git#$3"),e){t=t.replace(/^git\+([^:]+):/,"$1:");let i;try{i=Xee.default.parse(t)}catch{i=null}i&&i.protocol==="ssh:"&&((r=i.path)==null?void 0:r.startsWith("/:"))&&(t=t.replace(/^ssh:\/\//,""))}return t}function Yk(t){return b.makeLocator(t,dp(t.reference))}async function Zee(t,e){let r=dp(t,{git:!0});if(!Mt.getNetworkSettings(`https://${Uk.default(r).resource}`,{configuration:e}).enableNetwork)throw new Error(`Request to '${r}' has been blocked because of your configuration settings`);let n;try{n=await ur.execvp("git",["ls-remote",r],{cwd:e.startingCwd,env:Vee(),strict:!0})}catch(l){throw l.message=`Listing the refs for ${t} failed`,l}let s=new Map,o=/^([a-f0-9]{40})\t([^\n]+)/gm,a;for(;(a=o.exec(n.stdout))!==null;)s.set(a[2],a[1]);return s}async function jk(t,e){let{repo:r,treeish:{protocol:i,request:n},extra:s}=Cp(t),o=await Zee(r,e),a=(c,u)=>{switch(c){case Qi.Commit:{if(!u.match(/^[a-f0-9]{40}$/))throw new Error("Invalid commit hash");return ou.default.stringify({...s,commit:u})}case Qi.Head:{let g=o.get(u==="HEAD"?u:`refs/heads/${u}`);if(typeof g=="undefined")throw new Error(`Unknown head ("${u}")`);return ou.default.stringify({...s,commit:g})}case Qi.Tag:{let g=o.get(`refs/tags/${u}`);if(typeof g=="undefined")throw new Error(`Unknown tag ("${u}")`);return ou.default.stringify({...s,commit:g})}case Qi.Semver:{let g=St.validRange(u);if(!g)throw new Error(`Invalid range ("${u}")`);let h=new Map([...o.entries()].filter(([p])=>p.startsWith("refs/tags/")).map(([p,m])=>[Hk.default.parse(p.slice(10)),m]).filter(p=>p[0]!==null)),f=Hk.default.maxSatisfying([...h.keys()],g);if(f===null)throw new Error(`No matching range ("${u}")`);return ou.default.stringify({...s,commit:h.get(f)})}case null:{let g;if((g=l(Qi.Commit,u))!==null||(g=l(Qi.Tag,u))!==null||(g=l(Qi.Head,u))!==null)return g;throw u.match(/^[a-f0-9]+$/)?new Error(`Couldn't resolve "${u}" as either a commit, a tag, or a head - if a commit, use the 40-characters commit hash`):new Error(`Couldn't resolve "${u}" as either a commit, a tag, or a head`)}default:throw new Error(`Invalid Git resolution protocol ("${c}")`)}},l=(c,u)=>{try{return a(c,u)}catch(g){return null}};return`${r}#${a(i,n)}`}async function Gk(t,e){return await e.getLimit("cloneConcurrency")(async()=>{let{repo:r,treeish:{protocol:i,request:n}}=Cp(t);if(i!=="commit")throw new Error("Invalid treeish protocol when cloning");let s=dp(r,{git:!0});if(Mt.getNetworkSettings(`https://${Uk.default(s).resource}`,{configuration:e}).enableNetwork===!1)throw new Error(`Request to '${s}' has been blocked because of your configuration settings`);let o=await R.mktempPromise(),a={cwd:o,env:Vee(),strict:!0};try{await ur.execvp("git",["clone","-c core.autocrlf=false",s,npath.fromPortablePath(o)],a),await ur.execvp("git",["checkout",`${n}`],a)}catch(l){throw l.message=`Repository clone failed: ${l.message}`,l}return o})}var qk=class{supports(e,r){return au(e.reference)}getLocalPath(e,r){return null}async fetch(e,r){let i=r.checksums.get(e.locatorHash)||null,n=Yk(e),s=new Map(r.checksums);s.set(n.locatorHash,i);let o={...r,checksums:s},a=await this.downloadHosted(n,o);if(a!==null)return a;let[l,c,u]=await r.cache.fetchPackageFromCache(e,i,{onHit:()=>r.report.reportCacheHit(e),onMiss:()=>r.report.reportCacheMiss(e,`${b.prettyLocator(r.project.configuration,e)} can't be found in the cache and will be fetched from the remote repository`),loader:()=>this.cloneFromRemote(n,o),skipIntegrityCheck:r.skipIntegrityCheck});return{packageFs:l,releaseFs:c,prefixPath:b.getIdentVendorPath(e),checksum:u}}async downloadHosted(e,r){return r.project.configuration.reduceHook(i=>i.fetchHostedRepository,null,e,r)}async cloneFromRemote(e,r){let i=await Gk(e.reference,r.project.configuration),n=Cp(e.reference),s=w.join(i,"package.tgz");await Et.prepareExternalProject(i,s,{configuration:r.project.configuration,report:r.report,workspace:n.extra.workspace,locator:e});let o=await R.readFilePromise(s);return await he.releaseAfterUseAsync(async()=>await Ar.convertToZip(o,{compressionLevel:r.project.configuration.get("compressionLevel"),prefixPath:b.getIdentVendorPath(e),stripComponents:1}))}};var Jk=class{supportsDescriptor(e,r){return au(e.range)}supportsLocator(e,r){return au(e.reference)}shouldPersistResolution(e,r){return!0}bindDescriptor(e,r,i){return e}getResolutionDependencies(e,r){return[]}async getCandidates(e,r,i){let n=await jk(e.range,i.project.configuration);return[b.makeLocator(e,n)]}async getSatisfying(e,r,i){return null}async resolve(e,r){if(!r.fetchOptions)throw new Error("Assertion failed: This resolver cannot be used unless a fetcher is configured");let i=await r.fetchOptions.fetcher.fetch(e,r.fetchOptions),n=await he.releaseAfterUseAsync(async()=>await je.find(i.prefixPath,{baseFs:i.packageFs}),i.releaseFs);return{...e,version:n.version||"0.0.0",languageName:r.project.configuration.get("defaultLanguageName"),linkType:nt.HARD,dependencies:n.dependencies,peerDependencies:n.peerDependencies,dependenciesMeta:n.dependenciesMeta,peerDependenciesMeta:n.peerDependenciesMeta,bin:n.bin}}};var VUe={configuration:{cloneConcurrency:{description:"Maximal number of concurrent clones",type:Ae.NUMBER,default:2}},fetchers:[qk],resolvers:[Jk]};var ZUe=VUe;var Xk={};We(Xk,{default:()=>e2e});var _ee=X(require("querystring")),$ee=[/^https?:\/\/(?:([^/]+?)@)?github.com\/([^/#]+)\/([^/#]+)\/tarball\/([^/#]+)(?:#(.*))?$/,/^https?:\/\/(?:([^/]+?)@)?github.com\/([^/#]+)\/([^/#]+?)(?:\.git)?(?:#(.*))?$/];function ete(t){return t?$ee.some(e=>!!t.match(e)):!1}function tte(t){let e;for(let a of $ee)if(e=t.match(a),e)break;if(!e)throw new Error(_Ue(t));let[,r,i,n,s="master"]=e,{commit:o}=_ee.default.parse(s);return s=o||s.replace(/[^:]*:/,""),{auth:r,username:i,reponame:n,treeish:s}}function _Ue(t){return`Input cannot be parsed as a valid GitHub URL ('${t}').`}var zk=class{supports(e,r){return!!ete(e.reference)}getLocalPath(e,r){return null}async fetch(e,r){let i=r.checksums.get(e.locatorHash)||null,[n,s,o]=await r.cache.fetchPackageFromCache(e,i,{onHit:()=>r.report.reportCacheHit(e),onMiss:()=>r.report.reportCacheMiss(e,`${b.prettyLocator(r.project.configuration,e)} can't be found in the cache and will be fetched from GitHub`),loader:()=>this.fetchFromNetwork(e,r),skipIntegrityCheck:r.skipIntegrityCheck});return{packageFs:n,releaseFs:s,prefixPath:b.getIdentVendorPath(e),checksum:o}}async fetchFromNetwork(e,r){let i=await Mt.get(this.getLocatorUrl(e,r),{configuration:r.project.configuration});return await R.mktempPromise(async n=>{let s=new Ct(n);await Ar.extractArchiveTo(i,s,{stripComponents:1});let o=pp.splitRepoUrl(e.reference),a=w.join(n,"package.tgz");await Et.prepareExternalProject(n,a,{configuration:r.project.configuration,report:r.report,workspace:o.extra.workspace,locator:e});let l=await R.readFilePromise(a);return await Ar.convertToZip(l,{compressionLevel:r.project.configuration.get("compressionLevel"),prefixPath:b.getIdentVendorPath(e),stripComponents:1})})}getLocatorUrl(e,r){let{auth:i,username:n,reponame:s,treeish:o}=tte(e.reference);return`https://${i?`${i}@`:""}github.com/${n}/${s}/archive/${o}.tar.gz`}};var $Ue={hooks:{async fetchHostedRepository(t,e,r){if(t!==null)return t;let i=new zk;if(!i.supports(e,r))return null;try{return await i.fetch(e,r)}catch(n){return null}}}},e2e=$Ue;var _k={};We(_k,{default:()=>r2e});var mp=/^[^?]*\.(?:tar\.gz|tgz)(?:\?.*)?$/,Ip=/^https?:/;var Vk=class{supports(e,r){return mp.test(e.reference)?!!Ip.test(e.reference):!1}getLocalPath(e,r){return null}async fetch(e,r){let i=r.checksums.get(e.locatorHash)||null,[n,s,o]=await r.cache.fetchPackageFromCache(e,i,{onHit:()=>r.report.reportCacheHit(e),onMiss:()=>r.report.reportCacheMiss(e,`${b.prettyLocator(r.project.configuration,e)} can't be found in the cache and will be fetched from the remote server`),loader:()=>this.fetchFromNetwork(e,r),skipIntegrityCheck:r.skipIntegrityCheck});return{packageFs:n,releaseFs:s,prefixPath:b.getIdentVendorPath(e),checksum:o}}async fetchFromNetwork(e,r){let i=await Mt.get(e.reference,{configuration:r.project.configuration});return await Ar.convertToZip(i,{compressionLevel:r.project.configuration.get("compressionLevel"),prefixPath:b.getIdentVendorPath(e),stripComponents:1})}};var Zk=class{supportsDescriptor(e,r){return mp.test(e.range)?!!Ip.test(e.range):!1}supportsLocator(e,r){return mp.test(e.reference)?!!Ip.test(e.reference):!1}shouldPersistResolution(e,r){return!0}bindDescriptor(e,r,i){return e}getResolutionDependencies(e,r){return[]}async getCandidates(e,r,i){return[b.convertDescriptorToLocator(e)]}async getSatisfying(e,r,i){return null}async resolve(e,r){if(!r.fetchOptions)throw new Error("Assertion failed: This resolver cannot be used unless a fetcher is configured");let i=await r.fetchOptions.fetcher.fetch(e,r.fetchOptions),n=await he.releaseAfterUseAsync(async()=>await je.find(i.prefixPath,{baseFs:i.packageFs}),i.releaseFs);return{...e,version:n.version||"0.0.0",languageName:r.project.configuration.get("defaultLanguageName"),linkType:nt.HARD,dependencies:n.dependencies,peerDependencies:n.peerDependencies,dependenciesMeta:n.dependenciesMeta,peerDependenciesMeta:n.peerDependenciesMeta,bin:n.bin}}};var t2e={fetchers:[Vk],resolvers:[Zk]},r2e=t2e;var rv={};We(rv,{default:()=>iHe});var Pte=X(Ste()),tv=X(require("util")),Ep=class extends Ce{constructor(){super(...arguments);this.private=j.Boolean("-p,--private",!1,{description:"Initialize a private package"});this.workspace=j.Boolean("-w,--workspace",!1,{description:"Initialize a workspace root with a `packages/` directory"});this.install=j.String("-i,--install",!1,{tolerateBoolean:!0,description:"Initialize a package with a specific bundle that will be locked in the project"});this.usev2=j.Boolean("-2",!1,{hidden:!0});this.yes=j.Boolean("-y,--yes",{hidden:!0});this.assumeFreshProject=j.Boolean("--assume-fresh-project",!1,{hidden:!0})}async execute(){if(R.existsSync(w.join(this.context.cwd,je.fileName)))throw new UsageError("A package.json already exists in the specified directory");let e=await oe.find(this.context.cwd,this.context.plugins),r=this.install?this.install===!0?"latest":this.install:null;return r!==null?await this.executeProxy(e,r):await this.executeRegular(e)}async executeProxy(e,r){if(e.get("yarnPath")!==null)throw new UsageError(`Cannot use the --install flag when the current directory already uses yarnPath (from ${e.sources.get("yarnPath")})`);if(e.projectCwd!==null)throw new UsageError("Cannot use the --install flag when the current directory is already part of a project");R.existsSync(this.context.cwd)||await R.mkdirPromise(this.context.cwd,{recursive:!0});let i=w.join(this.context.cwd,e.get("lockfileFilename"));R.existsSync(i)||await R.writeFilePromise(i,"");let n=await this.cli.run(["set","version",r]);if(n!==0)return n;this.context.stdout.write(` -`);let s=["--assume-fresh-project"];return this.private&&s.push("-p"),this.workspace&&s.push("-w"),this.yes&&s.push("-y"),await R.mktempPromise(async o=>{let{code:a}=await ur.pipevp("yarn",["init",...s],{cwd:this.context.cwd,stdin:this.context.stdin,stdout:this.context.stdout,stderr:this.context.stderr,env:await Et.makeScriptEnv({binFolder:o})});return a})}async executeRegular(e){let r=null;if(!this.assumeFreshProject)try{r=await ke.find(e,this.context.cwd)}catch{r=null}R.existsSync(this.context.cwd)||await R.mkdirPromise(this.context.cwd,{recursive:!0});let i=new je,n=Object.fromEntries(e.get("initFields").entries());i.load(n),i.name=b.makeIdent(e.get("initScope"),w.basename(this.context.cwd)),i.private=this.private||this.workspace,this.workspace&&(await R.mkdirPromise(w.join(this.context.cwd,"packages"),{recursive:!0}),i.workspaceDefinitions=[{pattern:"packages/*"}]);let s={};i.exportTo(s),tv.inspect.styles.name="cyan",this.context.stdout.write(`${tv.inspect(s,{depth:Infinity,colors:!0,compact:!1})} -`);let o=w.join(this.context.cwd,je.fileName);await R.changeFilePromise(o,`${JSON.stringify(s,null,2)} -`);let a=w.join(this.context.cwd,"README.md");if(R.existsSync(a)||await R.writeFilePromise(a,`# ${b.stringifyIdent(i.name)} -`),!r){let l=w.join(this.context.cwd,ft.lockfile);await R.writeFilePromise(l,"");let u=["/.yarn/*","!/.yarn/patches","!/.yarn/plugins","!/.yarn/releases","!/.yarn/sdks","","# Swap the comments on the following lines if you don't wish to use zero-installs","# Documentation here: https://yarnpkg.com/features/zero-installs","!/.yarn/cache","#/.pnp.*"].map(m=>`${m} -`).join(""),g=w.join(this.context.cwd,".gitignore");R.existsSync(g)||await R.writeFilePromise(g,u);let h={["*"]:{endOfLine:"lf",insertFinalNewline:!0},["*.{js,json,yml}"]:{charset:"utf-8",indentStyle:"space",indentSize:2}};Pte.default(h,e.get("initEditorConfig"));let f=`root = true -`;for(let[m,I]of Object.entries(h)){f+=` -[${m}] -`;for(let[y,B]of Object.entries(I))f+=`${y.replace(/[A-Z]/g,k=>`_${k.toLowerCase()}`)} = ${B} -`}let p=w.join(this.context.cwd,".editorconfig");R.existsSync(p)||await R.writeFilePromise(p,f),await ur.execvp("git",["init"],{cwd:this.context.cwd})}}};Ep.paths=[["init"]],Ep.usage=ce.Usage({description:"create a new package",details:"\n This command will setup a new package in your local directory.\n\n If the `-p,--private` or `-w,--workspace` options are set, the package will be private by default.\n\n If the `-w,--workspace` option is set, the package will be configured to accept a set of workspaces in the `packages/` directory.\n\n If the `-i,--install` option is given a value, Yarn will first download it using `yarn set version` and only then forward the init call to the newly downloaded bundle. Without arguments, the downloaded bundle will be `latest`.\n\n The initial settings of the manifest can be changed by using the `initScope` and `initFields` configuration values. Additionally, Yarn will generate an EditorConfig file whose rules can be altered via `initEditorConfig`, and will initialize a Git repository in the current directory.\n ",examples:[["Create a new package in the local directory","yarn init"],["Create a new private package in the local directory","yarn init -p"],["Create a new package and store the Yarn release inside","yarn init -i=latest"],["Create a new private package and defines it as a workspace root","yarn init -w"]]});var xte=Ep;var rHe={configuration:{initScope:{description:"Scope used when creating packages via the init command",type:Ae.STRING,default:null},initFields:{description:"Additional fields to set when creating packages via the init command",type:Ae.MAP,valueDefinition:{description:"",type:Ae.ANY}},initEditorConfig:{description:"Extra rules to define in the generator editorconfig",type:Ae.MAP,valueDefinition:{description:"",type:Ae.ANY}}},commands:[xte]},iHe=rHe;var av={};We(av,{default:()=>sHe});var to="portal:",ro="link:";var iv=class{supports(e,r){return!!e.reference.startsWith(to)}getLocalPath(e,r){let{parentLocator:i,path:n}=b.parseFileStyleRange(e.reference,{protocol:to});if(w.isAbsolute(n))return n;let s=r.fetcher.getLocalPath(i,r);return s===null?null:w.resolve(s,n)}async fetch(e,r){let{parentLocator:i,path:n}=b.parseFileStyleRange(e.reference,{protocol:to}),s=w.isAbsolute(n)?{packageFs:new Ct(pe.root),prefixPath:pe.dot,localPath:pe.root}:await r.fetcher.fetch(i,r),o=s.localPath?{packageFs:new Ct(pe.root),prefixPath:w.relative(pe.root,s.localPath)}:s;s!==o&&s.releaseFs&&s.releaseFs();let a=o.packageFs,l=w.join(o.prefixPath,n);return s.localPath?{packageFs:new Ct(l,{baseFs:a}),releaseFs:o.releaseFs,prefixPath:pe.dot,localPath:l}:{packageFs:new ys(l,{baseFs:a}),releaseFs:o.releaseFs,prefixPath:pe.dot}}};var nv=class{supportsDescriptor(e,r){return!!e.range.startsWith(to)}supportsLocator(e,r){return!!e.reference.startsWith(to)}shouldPersistResolution(e,r){return!1}bindDescriptor(e,r,i){return b.bindDescriptor(e,{locator:b.stringifyLocator(r)})}getResolutionDependencies(e,r){return[]}async getCandidates(e,r,i){let n=e.range.slice(to.length);return[b.makeLocator(e,`${to}${npath.toPortablePath(n)}`)]}async getSatisfying(e,r,i){return null}async resolve(e,r){if(!r.fetchOptions)throw new Error("Assertion failed: This resolver cannot be used unless a fetcher is configured");let i=await r.fetchOptions.fetcher.fetch(e,r.fetchOptions),n=await he.releaseAfterUseAsync(async()=>await je.find(i.prefixPath,{baseFs:i.packageFs}),i.releaseFs);return{...e,version:n.version||"0.0.0",languageName:r.project.configuration.get("defaultLanguageName"),linkType:nt.SOFT,dependencies:new Map([...n.dependencies]),peerDependencies:n.peerDependencies,dependenciesMeta:n.dependenciesMeta,peerDependenciesMeta:n.peerDependenciesMeta,bin:n.bin}}};var sv=class{supports(e,r){return!!e.reference.startsWith(ro)}getLocalPath(e,r){let{parentLocator:i,path:n}=b.parseFileStyleRange(e.reference,{protocol:ro});if(w.isAbsolute(n))return n;let s=r.fetcher.getLocalPath(i,r);return s===null?null:w.resolve(s,n)}async fetch(e,r){let{parentLocator:i,path:n}=b.parseFileStyleRange(e.reference,{protocol:ro}),s=w.isAbsolute(n)?{packageFs:new Ct(pe.root),prefixPath:pe.dot,localPath:pe.root}:await r.fetcher.fetch(i,r),o=s.localPath?{packageFs:new Ct(pe.root),prefixPath:w.relative(pe.root,s.localPath)}:s;s!==o&&s.releaseFs&&s.releaseFs();let a=o.packageFs,l=w.join(o.prefixPath,n);return s.localPath?{packageFs:new Ct(l,{baseFs:a}),releaseFs:o.releaseFs,prefixPath:pe.dot,discardFromLookup:!0,localPath:l}:{packageFs:new ys(l,{baseFs:a}),releaseFs:o.releaseFs,prefixPath:pe.dot,discardFromLookup:!0}}};var ov=class{supportsDescriptor(e,r){return!!e.range.startsWith(ro)}supportsLocator(e,r){return!!e.reference.startsWith(ro)}shouldPersistResolution(e,r){return!1}bindDescriptor(e,r,i){return b.bindDescriptor(e,{locator:b.stringifyLocator(r)})}getResolutionDependencies(e,r){return[]}async getCandidates(e,r,i){let n=e.range.slice(ro.length);return[b.makeLocator(e,`${ro}${npath.toPortablePath(n)}`)]}async getSatisfying(e,r,i){return null}async resolve(e,r){return{...e,version:"0.0.0",languageName:r.project.configuration.get("defaultLanguageName"),linkType:nt.SOFT,dependencies:new Map,peerDependencies:new Map,dependenciesMeta:new Map,peerDependenciesMeta:new Map,bin:new Map}}};var nHe={fetchers:[sv,iv],resolvers:[ov,nv]},sHe=nHe;var Hv={};We(Hv,{default:()=>cYe});var mv=X(require("fs"));var Kte=X(require("fs"));var Av=X(require("events")),kte=class extends Av.EventEmitter{constructor(e,r,i){super();this.dirWatchers=e,this.watchPath=r,this.watcherId=i}close(){let e=this.dirWatchers.get(this.watchPath);e.eventEmitters.delete(this.watcherId),e.eventEmitters.size===0&&this.dirWatchers.delete(this.watchPath)}},lv=class extends Av.EventEmitter{constructor(){super(...arguments);this.dirWatchers=new Map;this.lastWatcherId=0}registerWatcher(e,r,i){let n=this.dirWatchers.get(e);n||(n={eventEmitters:new Map,dirEntries:r},this.dirWatchers.set(e,n));let s=this.lastWatcherId++,o=new kte(this.dirWatchers,e,s);return n.eventEmitters.set(s,o),o.on("rename",a=>i("rename",a)),o}notifyWatchers(e){for(let[r,i]of this.dirWatchers){let n=e(r).dirList||new Set,s=new Set;for(let o of n)i.dirEntries.has(o)||s.add(o);for(let o of i.dirEntries)n.has(o)||s.add(o);for(let o of s)for(let a of i.eventEmitters.values())a.emit("rename",o);i.dirEntries=n}}};var io;(function(t){t[t.YES=0]="YES",t[t.NO=1]="NO",t[t.DEPENDS=2]="DEPENDS"})(io||(io={}));var cv=(t,e)=>`${t}@${e}`,vte=(t,e)=>{let r=e.indexOf("#"),i=r>=0?e.substring(r+1):e;return cv(t,i)},Ui;(function(t){t[t.NONE=-1]="NONE",t[t.PERF=0]="PERF",t[t.CHECK=1]="CHECK",t[t.REASONS=2]="REASONS",t[t.INTENSIVE_CHECK=9]="INTENSIVE_CHECK"})(Ui||(Ui={}));var Rte=(t,e={})=>{let r=e.debugLevel||Number(process.env.NM_DEBUG_LEVEL||-1),i=e.check||r>=9,n=e.hoistingLimits||new Map,s={check:i,debugLevel:r,hoistingLimits:n,fastLookupPossible:!0},o;s.debugLevel>=0&&(o=Date.now());let a=oHe(t,s),l=!1,c=0;do l=uv(a,[a],new Set([a.locator]),new Map,s).anotherRoundNeeded,s.fastLookupPossible=!1,c++;while(l);if(s.debugLevel>=0&&console.log(`hoist time: ${Date.now()-o}ms, rounds: ${c}`),s.debugLevel>=1){let u=yp(a);if(uv(a,[a],new Set([a.locator]),new Map,s).isGraphChanged)throw new Error(`The hoisting result is not terminal, prev tree: +`);let a=(p=this.packages)!=null?p:[this.command],l=Q.parseDescriptor(this.command).name,c=await this.cli.run(["add","--",...a],{cwd:r,quiet:this.quiet});if(c!==0)return c;this.quiet||this.context.stdout.write(` +`);let u=await le.find(r,this.context.plugins),{project:g,workspace:h}=await Fe.find(u,r);if(h===null)throw new Xe(g.cwd,r);await g.restoreInstallState();let f=await bt.getWorkspaceAccessibleBinaries(h);return f.has(l)===!1&&f.size===1&&typeof this.packages=="undefined"&&(l=Array.from(f)[0][0]),await bt.executeWorkspaceAccessibleBinary(h,l,this.args,{packageAccessibleBinaries:f,cwd:this.context.cwd,stdin:this.context.stdin,stdout:this.context.stdout,stderr:this.context.stderr})})}};Xp.paths=[["dlx"]],Xp.usage=fe.Usage({description:"run a package in a temporary environment",details:"\n This command will install a package within a temporary environment, and run its binary script if it contains any. The binary will run within the current cwd.\n\n By default Yarn will download the package named `command`, but this can be changed through the use of the `-p,--package` flag which will instruct Yarn to still run the same command but from a different package.\n\n Using `yarn dlx` as a replacement of `yarn add` isn't recommended, as it makes your project non-deterministic (Yarn doesn't keep track of the packages installed through `dlx` - neither their name, nor their version).\n ",examples:[["Use create-react-app to create a new React app","yarn dlx create-react-app ./my-app"]]});var gre=Xp;var yHe={commands:[ure,gre]},BHe=yHe;var zv={};$e(zv,{default:()=>bHe,fileUtils:()=>Uv});var Ru=/^(?:[a-zA-Z]:[\\/]|\.{0,2}\/)/,Zp=/^[^?]*\.(?:tar\.gz|tgz)(?:::.*)?$/,ar="file:";var Uv={};$e(Uv,{makeArchiveFromLocator:()=>AB,makeBufferFromLocator:()=>Gv,makeLocator:()=>Yv,makeSpec:()=>hre,parseSpec:()=>Hv});function Hv(t){let{params:e,selector:r}=Q.parseRange(t),i=L.toPortablePath(r);return{parentLocator:e&&typeof e.locator=="string"?Q.parseLocator(e.locator):null,path:i}}function hre({parentLocator:t,path:e,folderHash:r,protocol:i}){let n=t!==null?{locator:Q.stringifyLocator(t)}:{},s=typeof r!="undefined"?{hash:r}:{};return Q.makeRange({protocol:i,source:e,selector:e,params:k(k({},s),n)})}function Yv(t,{parentLocator:e,path:r,folderHash:i,protocol:n}){return Q.makeLocator(t,hre({parentLocator:e,path:r,folderHash:i,protocol:n}))}async function AB(t,{protocol:e,fetchOptions:r,inMemory:i=!1}){let{parentLocator:n,path:s}=Q.parseFileStyleRange(t.reference,{protocol:e}),o=B.isAbsolute(s)?{packageFs:new yt(Ee.root),prefixPath:Ee.dot,localPath:Ee.root}:await r.fetcher.fetch(n,r),a=o.localPath?{packageFs:new yt(Ee.root),prefixPath:B.relative(Ee.root,o.localPath)}:o;o!==a&&o.releaseFs&&o.releaseFs();let l=a.packageFs,c=B.join(a.prefixPath,s);return await de.releaseAfterUseAsync(async()=>await hr.makeArchiveFromDirectory(c,{baseFs:l,prefixPath:Q.getIdentVendorPath(t),compressionLevel:r.project.configuration.get("compressionLevel"),inMemory:i}),a.releaseFs)}async function Gv(t,{protocol:e,fetchOptions:r}){return(await AB(t,{protocol:e,fetchOptions:r,inMemory:!0})).getBufferAndClose()}var jv=class{supports(e,r){return!!e.reference.startsWith(ar)}getLocalPath(e,r){let{parentLocator:i,path:n}=Q.parseFileStyleRange(e.reference,{protocol:ar});if(B.isAbsolute(n))return n;let s=r.fetcher.getLocalPath(i,r);return s===null?null:B.resolve(s,n)}async fetch(e,r){let i=r.checksums.get(e.locatorHash)||null,[n,s,o]=await r.cache.fetchPackageFromCache(e,i,{onHit:()=>r.report.reportCacheHit(e),onMiss:()=>r.report.reportCacheMiss(e,`${Q.prettyLocator(r.project.configuration,e)} can't be found in the cache and will be fetched from the disk`),loader:()=>this.fetchFromDisk(e,r),skipIntegrityCheck:r.skipIntegrityCheck});return{packageFs:n,releaseFs:s,prefixPath:Q.getIdentVendorPath(e),localPath:this.getLocalPath(e,r),checksum:o}}async fetchFromDisk(e,r){return AB(e,{protocol:ar,fetchOptions:r})}};var wHe=1,qv=class{supportsDescriptor(e,r){return e.range.match(Ru)?!0:!!e.range.startsWith(ar)}supportsLocator(e,r){return!!e.reference.startsWith(ar)}shouldPersistResolution(e,r){return!1}bindDescriptor(e,r,i){return Ru.test(e.range)&&(e=Q.makeDescriptor(e,`${ar}${e.range}`)),Q.bindDescriptor(e,{locator:Q.stringifyLocator(r)})}getResolutionDependencies(e,r){return[]}async getCandidates(e,r,i){if(!i.fetchOptions)throw new Error("Assertion failed: This resolver cannot be used unless a fetcher is configured");let{path:n,parentLocator:s}=Hv(e.range);if(s===null)throw new Error("Assertion failed: The descriptor should have been bound");let o=await Gv(Q.makeLocator(e,Q.makeRange({protocol:ar,source:n,selector:n,params:{locator:Q.stringifyLocator(s)}})),{protocol:ar,fetchOptions:i.fetchOptions}),a=Di.makeHash(`${wHe}`,o).slice(0,6);return[Yv(e,{parentLocator:s,path:n,folderHash:a,protocol:ar})]}async getSatisfying(e,r,i){return null}async resolve(e,r){if(!r.fetchOptions)throw new Error("Assertion failed: This resolver cannot be used unless a fetcher is configured");let i=await r.fetchOptions.fetcher.fetch(e,r.fetchOptions),n=await de.releaseAfterUseAsync(async()=>await We.find(i.prefixPath,{baseFs:i.packageFs}),i.releaseFs);return V(k({},e),{version:n.version||"0.0.0",languageName:n.languageName||r.project.configuration.get("defaultLanguageName"),linkType:At.HARD,dependencies:n.dependencies,peerDependencies:n.peerDependencies,dependenciesMeta:n.dependenciesMeta,peerDependenciesMeta:n.peerDependenciesMeta,bin:n.bin})}};var Jv=class{supports(e,r){return Zp.test(e.reference)?!!e.reference.startsWith(ar):!1}getLocalPath(e,r){return null}async fetch(e,r){let i=r.checksums.get(e.locatorHash)||null,[n,s,o]=await r.cache.fetchPackageFromCache(e,i,{onHit:()=>r.report.reportCacheHit(e),onMiss:()=>r.report.reportCacheMiss(e,`${Q.prettyLocator(r.project.configuration,e)} can't be found in the cache and will be fetched from the disk`),loader:()=>this.fetchFromDisk(e,r),skipIntegrityCheck:r.skipIntegrityCheck});return{packageFs:n,releaseFs:s,prefixPath:Q.getIdentVendorPath(e),checksum:o}}async fetchFromDisk(e,r){let{parentLocator:i,path:n}=Q.parseFileStyleRange(e.reference,{protocol:ar}),s=B.isAbsolute(n)?{packageFs:new yt(Ee.root),prefixPath:Ee.dot,localPath:Ee.root}:await r.fetcher.fetch(i,r),o=s.localPath?{packageFs:new yt(Ee.root),prefixPath:B.relative(Ee.root,s.localPath)}:s;s!==o&&s.releaseFs&&s.releaseFs();let a=o.packageFs,l=B.join(o.prefixPath,n),c=await a.readFilePromise(l);return await de.releaseAfterUseAsync(async()=>await hr.convertToZip(c,{compressionLevel:r.project.configuration.get("compressionLevel"),prefixPath:Q.getIdentVendorPath(e),stripComponents:1}),o.releaseFs)}};var Wv=class{supportsDescriptor(e,r){return Zp.test(e.range)?!!(e.range.startsWith(ar)||Ru.test(e.range)):!1}supportsLocator(e,r){return Zp.test(e.reference)?!!e.reference.startsWith(ar):!1}shouldPersistResolution(e,r){return!0}bindDescriptor(e,r,i){return Ru.test(e.range)&&(e=Q.makeDescriptor(e,`${ar}${e.range}`)),Q.bindDescriptor(e,{locator:Q.stringifyLocator(r)})}getResolutionDependencies(e,r){return[]}async getCandidates(e,r,i){let n=e.range;return n.startsWith(ar)&&(n=n.slice(ar.length)),[Q.makeLocator(e,`${ar}${L.toPortablePath(n)}`)]}async getSatisfying(e,r,i){return null}async resolve(e,r){if(!r.fetchOptions)throw new Error("Assertion failed: This resolver cannot be used unless a fetcher is configured");let i=await r.fetchOptions.fetcher.fetch(e,r.fetchOptions),n=await de.releaseAfterUseAsync(async()=>await We.find(i.prefixPath,{baseFs:i.packageFs}),i.releaseFs);return V(k({},e),{version:n.version||"0.0.0",languageName:n.languageName||r.project.configuration.get("defaultLanguageName"),linkType:At.HARD,dependencies:n.dependencies,peerDependencies:n.peerDependencies,dependenciesMeta:n.dependenciesMeta,peerDependenciesMeta:n.peerDependenciesMeta,bin:n.bin})}};var QHe={fetchers:[Jv,jv],resolvers:[Wv,qv]},bHe=QHe;var sF={};$e(sF,{default:()=>YHe,gitUtils:()=>_p});var _p={};$e(_p,{TreeishProtocols:()=>Li,clone:()=>rF,isGitUrl:()=>Nu,lsRemote:()=>vre,normalizeLocator:()=>eF,normalizeRepoUrl:()=>$p,resolveUrl:()=>tF,splitRepoUrl:()=>ed});var _v=te(xre()),Lu=te(require("querystring")),$v=te(Cr()),Pre=te(require("url"));function kre(){return V(k({},process.env),{GIT_SSH_COMMAND:"ssh -o BatchMode=yes"})}var UHe=[/^ssh:/,/^git(?:\+[^:]+)?:/,/^(?:git\+)?https?:[^#]+\/[^#]+(?:\.git)(?:#.*)?$/,/^git@[^#]+\/[^#]+\.git(?:#.*)?$/,/^(?:github:|https:\/\/github\.com\/)?(?!\.{1,2}\/)([a-zA-Z._0-9-]+)\/(?!\.{1,2}(?:#|$))([a-zA-Z._0-9-]+?)(?:\.git)?(?:#.*)?$/,/^https:\/\/github\.com\/(?!\.{1,2}\/)([a-zA-Z0-9._-]+)\/(?!\.{1,2}(?:#|$))([a-zA-Z0-9._-]+?)\/tarball\/(.+)?$/],Li;(function(n){n.Commit="commit",n.Head="head",n.Tag="tag",n.Semver="semver"})(Li||(Li={}));function Nu(t){return t?UHe.some(e=>!!t.match(e)):!1}function ed(t){t=$p(t);let e=t.indexOf("#");if(e===-1)return{repo:t,treeish:{protocol:Li.Head,request:"HEAD"},extra:{}};let r=t.slice(0,e),i=t.slice(e+1);if(i.match(/^[a-z]+=/)){let n=Lu.default.parse(i);for(let[l,c]of Object.entries(n))if(typeof c!="string")throw new Error(`Assertion failed: The ${l} parameter must be a literal string`);let s=Object.values(Li).find(l=>Object.prototype.hasOwnProperty.call(n,l)),o,a;typeof s!="undefined"?(o=s,a=n[s]):(o=Li.Head,a="HEAD");for(let l of Object.values(Li))delete n[l];return{repo:r,treeish:{protocol:o,request:a},extra:n}}else{let n=i.indexOf(":"),s,o;return n===-1?(s=null,o=i):(s=i.slice(0,n),o=i.slice(n+1)),{repo:r,treeish:{protocol:s,request:o},extra:{}}}}function $p(t,{git:e=!1}={}){var r;if(t=t.replace(/^git\+https:/,"https:"),t=t.replace(/^(?:github:|https:\/\/github\.com\/)?(?!\.{1,2}\/)([a-zA-Z0-9._-]+)\/(?!\.{1,2}(?:#|$))([a-zA-Z0-9._-]+?)(?:\.git)?(#.*)?$/,"https://github.com/$1/$2.git$3"),t=t.replace(/^https:\/\/github\.com\/(?!\.{1,2}\/)([a-zA-Z0-9._-]+)\/(?!\.{1,2}(?:#|$))([a-zA-Z0-9._-]+?)\/tarball\/(.+)?$/,"https://github.com/$1/$2.git#$3"),e){t=t.replace(/^git\+([^:]+):/,"$1:");let i;try{i=Pre.default.parse(t)}catch{i=null}i&&i.protocol==="ssh:"&&((r=i.path)==null?void 0:r.startsWith("/:"))&&(t=t.replace(/^ssh:\/\//,""))}return t}function eF(t){return Q.makeLocator(t,$p(t.reference))}async function vre(t,e){let r=$p(t,{git:!0});if(!Ft.getNetworkSettings(`https://${(0,_v.default)(r).resource}`,{configuration:e}).enableNetwork)throw new Error(`Request to '${r}' has been blocked because of your configuration settings`);let n;try{n=await Nr.execvp("git",["ls-remote",r],{cwd:e.startingCwd,env:kre(),strict:!0})}catch(l){throw l.message=`Listing the refs for ${t} failed`,l}let s=new Map,o=/^([a-f0-9]{40})\t([^\n]+)/gm,a;for(;(a=o.exec(n.stdout))!==null;)s.set(a[2],a[1]);return s}async function tF(t,e){let{repo:r,treeish:{protocol:i,request:n},extra:s}=ed(t),o=await vre(r,e),a=(c,u)=>{switch(c){case Li.Commit:{if(!u.match(/^[a-f0-9]{40}$/))throw new Error("Invalid commit hash");return Lu.default.stringify(V(k({},s),{commit:u}))}case Li.Head:{let g=o.get(u==="HEAD"?u:`refs/heads/${u}`);if(typeof g=="undefined")throw new Error(`Unknown head ("${u}")`);return Lu.default.stringify(V(k({},s),{commit:g}))}case Li.Tag:{let g=o.get(`refs/tags/${u}`);if(typeof g=="undefined")throw new Error(`Unknown tag ("${u}")`);return Lu.default.stringify(V(k({},s),{commit:g}))}case Li.Semver:{let g=kt.validRange(u);if(!g)throw new Error(`Invalid range ("${u}")`);let h=new Map([...o.entries()].filter(([p])=>p.startsWith("refs/tags/")).map(([p,m])=>[$v.default.parse(p.slice(10)),m]).filter(p=>p[0]!==null)),f=$v.default.maxSatisfying([...h.keys()],g);if(f===null)throw new Error(`No matching range ("${u}")`);return Lu.default.stringify(V(k({},s),{commit:h.get(f)}))}case null:{let g;if((g=l(Li.Commit,u))!==null||(g=l(Li.Tag,u))!==null||(g=l(Li.Head,u))!==null)return g;throw u.match(/^[a-f0-9]+$/)?new Error(`Couldn't resolve "${u}" as either a commit, a tag, or a head - if a commit, use the 40-characters commit hash`):new Error(`Couldn't resolve "${u}" as either a commit, a tag, or a head`)}default:throw new Error(`Invalid Git resolution protocol ("${c}")`)}},l=(c,u)=>{try{return a(c,u)}catch(g){return null}};return`${r}#${a(i,n)}`}async function rF(t,e){return await e.getLimit("cloneConcurrency")(async()=>{let{repo:r,treeish:{protocol:i,request:n}}=ed(t);if(i!=="commit")throw new Error("Invalid treeish protocol when cloning");let s=$p(r,{git:!0});if(Ft.getNetworkSettings(`https://${(0,_v.default)(s).resource}`,{configuration:e}).enableNetwork===!1)throw new Error(`Request to '${s}' has been blocked because of your configuration settings`);let o=await M.mktempPromise(),a={cwd:o,env:kre(),strict:!0};try{await Nr.execvp("git",["clone","-c core.autocrlf=false",s,L.fromPortablePath(o)],a),await Nr.execvp("git",["checkout",`${n}`],a)}catch(l){throw l.message=`Repository clone failed: ${l.message}`,l}return o})}var iF=class{supports(e,r){return Nu(e.reference)}getLocalPath(e,r){return null}async fetch(e,r){let i=r.checksums.get(e.locatorHash)||null,n=eF(e),s=new Map(r.checksums);s.set(n.locatorHash,i);let o=V(k({},r),{checksums:s}),a=await this.downloadHosted(n,o);if(a!==null)return a;let[l,c,u]=await r.cache.fetchPackageFromCache(e,i,{onHit:()=>r.report.reportCacheHit(e),onMiss:()=>r.report.reportCacheMiss(e,`${Q.prettyLocator(r.project.configuration,e)} can't be found in the cache and will be fetched from the remote repository`),loader:()=>this.cloneFromRemote(n,o),skipIntegrityCheck:r.skipIntegrityCheck});return{packageFs:l,releaseFs:c,prefixPath:Q.getIdentVendorPath(e),checksum:u}}async downloadHosted(e,r){return r.project.configuration.reduceHook(i=>i.fetchHostedRepository,null,e,r)}async cloneFromRemote(e,r){let i=await rF(e.reference,r.project.configuration),n=ed(e.reference),s=B.join(i,"package.tgz");await bt.prepareExternalProject(i,s,{configuration:r.project.configuration,report:r.report,workspace:n.extra.workspace,locator:e});let o=await M.readFilePromise(s);return await de.releaseAfterUseAsync(async()=>await hr.convertToZip(o,{compressionLevel:r.project.configuration.get("compressionLevel"),prefixPath:Q.getIdentVendorPath(e),stripComponents:1}))}};var nF=class{supportsDescriptor(e,r){return Nu(e.range)}supportsLocator(e,r){return Nu(e.reference)}shouldPersistResolution(e,r){return!0}bindDescriptor(e,r,i){return e}getResolutionDependencies(e,r){return[]}async getCandidates(e,r,i){let n=await tF(e.range,i.project.configuration);return[Q.makeLocator(e,n)]}async getSatisfying(e,r,i){return null}async resolve(e,r){if(!r.fetchOptions)throw new Error("Assertion failed: This resolver cannot be used unless a fetcher is configured");let i=await r.fetchOptions.fetcher.fetch(e,r.fetchOptions),n=await de.releaseAfterUseAsync(async()=>await We.find(i.prefixPath,{baseFs:i.packageFs}),i.releaseFs);return V(k({},e),{version:n.version||"0.0.0",languageName:n.languageName||r.project.configuration.get("defaultLanguageName"),linkType:At.HARD,dependencies:n.dependencies,peerDependencies:n.peerDependencies,dependenciesMeta:n.dependenciesMeta,peerDependenciesMeta:n.peerDependenciesMeta,bin:n.bin})}};var HHe={configuration:{cloneConcurrency:{description:"Maximal number of concurrent clones",type:ge.NUMBER,default:2}},fetchers:[iF],resolvers:[nF]};var YHe=HHe;var aF={};$e(aF,{default:()=>qHe});var Fre=te(require("querystring")),Rre=[/^https?:\/\/(?:([^/]+?)@)?github.com\/([^/#]+)\/([^/#]+)\/tarball\/([^/#]+)(?:#(.*))?$/,/^https?:\/\/(?:([^/]+?)@)?github.com\/([^/#]+)\/([^/#]+?)(?:\.git)?(?:#(.*))?$/];function Lre(t){return t?Rre.some(e=>!!t.match(e)):!1}function Nre(t){let e;for(let a of Rre)if(e=t.match(a),e)break;if(!e)throw new Error(GHe(t));let[,r,i,n,s="master"]=e,{commit:o}=Fre.default.parse(s);return s=o||s.replace(/[^:]*:/,""),{auth:r,username:i,reponame:n,treeish:s}}function GHe(t){return`Input cannot be parsed as a valid GitHub URL ('${t}').`}var oF=class{supports(e,r){return!!Lre(e.reference)}getLocalPath(e,r){return null}async fetch(e,r){let i=r.checksums.get(e.locatorHash)||null,[n,s,o]=await r.cache.fetchPackageFromCache(e,i,{onHit:()=>r.report.reportCacheHit(e),onMiss:()=>r.report.reportCacheMiss(e,`${Q.prettyLocator(r.project.configuration,e)} can't be found in the cache and will be fetched from GitHub`),loader:()=>this.fetchFromNetwork(e,r),skipIntegrityCheck:r.skipIntegrityCheck});return{packageFs:n,releaseFs:s,prefixPath:Q.getIdentVendorPath(e),checksum:o}}async fetchFromNetwork(e,r){let i=await Ft.get(this.getLocatorUrl(e,r),{configuration:r.project.configuration});return await M.mktempPromise(async n=>{let s=new yt(n);await hr.extractArchiveTo(i,s,{stripComponents:1});let o=_p.splitRepoUrl(e.reference),a=B.join(n,"package.tgz");await bt.prepareExternalProject(n,a,{configuration:r.project.configuration,report:r.report,workspace:o.extra.workspace,locator:e});let l=await M.readFilePromise(a);return await hr.convertToZip(l,{compressionLevel:r.project.configuration.get("compressionLevel"),prefixPath:Q.getIdentVendorPath(e),stripComponents:1})})}getLocatorUrl(e,r){let{auth:i,username:n,reponame:s,treeish:o}=Nre(e.reference);return`https://${i?`${i}@`:""}github.com/${n}/${s}/archive/${o}.tar.gz`}};var jHe={hooks:{async fetchHostedRepository(t,e,r){if(t!==null)return t;let i=new oF;if(!i.supports(e,r))return null;try{return await i.fetch(e,r)}catch(n){return null}}}},qHe=jHe;var cF={};$e(cF,{default:()=>WHe});var td=/^[^?]*\.(?:tar\.gz|tgz)(?:\?.*)?$/,rd=/^https?:/;var AF=class{supports(e,r){return td.test(e.reference)?!!rd.test(e.reference):!1}getLocalPath(e,r){return null}async fetch(e,r){let i=r.checksums.get(e.locatorHash)||null,[n,s,o]=await r.cache.fetchPackageFromCache(e,i,{onHit:()=>r.report.reportCacheHit(e),onMiss:()=>r.report.reportCacheMiss(e,`${Q.prettyLocator(r.project.configuration,e)} can't be found in the cache and will be fetched from the remote server`),loader:()=>this.fetchFromNetwork(e,r),skipIntegrityCheck:r.skipIntegrityCheck});return{packageFs:n,releaseFs:s,prefixPath:Q.getIdentVendorPath(e),checksum:o}}async fetchFromNetwork(e,r){let i=await Ft.get(e.reference,{configuration:r.project.configuration});return await hr.convertToZip(i,{compressionLevel:r.project.configuration.get("compressionLevel"),prefixPath:Q.getIdentVendorPath(e),stripComponents:1})}};var lF=class{supportsDescriptor(e,r){return td.test(e.range)?!!rd.test(e.range):!1}supportsLocator(e,r){return td.test(e.reference)?!!rd.test(e.reference):!1}shouldPersistResolution(e,r){return!0}bindDescriptor(e,r,i){return e}getResolutionDependencies(e,r){return[]}async getCandidates(e,r,i){return[Q.convertDescriptorToLocator(e)]}async getSatisfying(e,r,i){return null}async resolve(e,r){if(!r.fetchOptions)throw new Error("Assertion failed: This resolver cannot be used unless a fetcher is configured");let i=await r.fetchOptions.fetcher.fetch(e,r.fetchOptions),n=await de.releaseAfterUseAsync(async()=>await We.find(i.prefixPath,{baseFs:i.packageFs}),i.releaseFs);return V(k({},e),{version:n.version||"0.0.0",languageName:n.languageName||r.project.configuration.get("defaultLanguageName"),linkType:At.HARD,dependencies:n.dependencies,peerDependencies:n.peerDependencies,dependenciesMeta:n.dependenciesMeta,peerDependenciesMeta:n.peerDependenciesMeta,bin:n.bin})}};var JHe={fetchers:[AF],resolvers:[lF]},WHe=JHe;var fF={};$e(fF,{default:()=>zYe});var Aie=te(aie()),hF=te(require("util")),id=class extends Be{constructor(){super(...arguments);this.private=G.Boolean("-p,--private",!1,{description:"Initialize a private package"});this.workspace=G.Boolean("-w,--workspace",!1,{description:"Initialize a workspace root with a `packages/` directory"});this.install=G.String("-i,--install",!1,{tolerateBoolean:!0,description:"Initialize a package with a specific bundle that will be locked in the project"});this.usev2=G.Boolean("-2",!1,{hidden:!0});this.yes=G.Boolean("-y,--yes",{hidden:!0});this.assumeFreshProject=G.Boolean("--assume-fresh-project",!1,{hidden:!0})}async execute(){let e=await le.find(this.context.cwd,this.context.plugins),r=typeof this.install=="string"?this.install:this.usev2||this.install===!0?"latest":null;return r!==null?await this.executeProxy(e,r):await this.executeRegular(e)}async executeProxy(e,r){if(e.projectCwd!==null&&e.projectCwd!==this.context.cwd)throw new me("Cannot use the --install flag from within a project subdirectory");M.existsSync(this.context.cwd)||await M.mkdirPromise(this.context.cwd,{recursive:!0});let i=B.join(this.context.cwd,e.get("lockfileFilename"));M.existsSync(i)||await M.writeFilePromise(i,"");let n=await this.cli.run(["set","version",r],{quiet:!0});if(n!==0)return n;this.context.stdout.write(` +`);let s=[];return this.private&&s.push("-p"),this.workspace&&s.push("-w"),this.yes&&s.push("-y"),await M.mktempPromise(async o=>{let{code:a}=await Nr.pipevp("yarn",["init",...s],{cwd:this.context.cwd,stdin:this.context.stdin,stdout:this.context.stdout,stderr:this.context.stderr,env:await bt.makeScriptEnv({binFolder:o})});return a})}async executeRegular(e){var l;let r=null;try{r=(await Fe.find(e,this.context.cwd)).project}catch{r=null}M.existsSync(this.context.cwd)||await M.mkdirPromise(this.context.cwd,{recursive:!0});let i=await We.tryFind(this.context.cwd)||new We,n=Object.fromEntries(e.get("initFields").entries());i.load(n),i.name=(l=i.name)!=null?l:Q.makeIdent(e.get("initScope"),B.basename(this.context.cwd)),i.packageManager=yr&&de.isTaggedYarnVersion(yr)?`yarn@${yr}`:null,typeof i.raw.private=="undefined"&&(this.private||this.workspace&&i.workspaceDefinitions.length===0)&&(i.private=!0),this.workspace&&i.workspaceDefinitions.length===0&&(await M.mkdirPromise(B.join(this.context.cwd,"packages"),{recursive:!0}),i.workspaceDefinitions=[{pattern:"packages/*"}]);let s={};i.exportTo(s),hF.inspect.styles.name="cyan",this.context.stdout.write(`${(0,hF.inspect)(s,{depth:Infinity,colors:!0,compact:!1})} +`);let o=B.join(this.context.cwd,We.fileName);await M.changeFilePromise(o,`${JSON.stringify(s,null,2)} +`,{automaticNewlines:!0});let a=B.join(this.context.cwd,"README.md");if(M.existsSync(a)||await M.writeFilePromise(a,`# ${Q.stringifyIdent(i.name)} +`),!r||r.cwd===this.context.cwd){let c=B.join(this.context.cwd,mt.lockfile);M.existsSync(c)||await M.writeFilePromise(c,"");let g=["/.yarn/*","!/.yarn/patches","!/.yarn/plugins","!/.yarn/releases","!/.yarn/sdks","","# Swap the comments on the following lines if you don't wish to use zero-installs","# Documentation here: https://yarnpkg.com/features/zero-installs","!/.yarn/cache","#/.pnp.*"].map(I=>`${I} +`).join(""),h=B.join(this.context.cwd,".gitignore");M.existsSync(h)||await M.writeFilePromise(h,g);let f={["*"]:{endOfLine:"lf",insertFinalNewline:!0},["*.{js,json,yml}"]:{charset:"utf-8",indentStyle:"space",indentSize:2}};(0,Aie.default)(f,e.get("initEditorConfig"));let p=`root = true +`;for(let[I,y]of Object.entries(f)){p+=` +[${I}] +`;for(let[w,x]of Object.entries(y))p+=`${w.replace(/[A-Z]/g,N=>`_${N.toLowerCase()}`)} = ${x} +`}let m=B.join(this.context.cwd,".editorconfig");M.existsSync(m)||await M.writeFilePromise(m,p),M.existsSync(B.join(this.context.cwd,".git"))||await Nr.execvp("git",["init"],{cwd:this.context.cwd})}}};id.paths=[["init"]],id.usage=fe.Usage({description:"create a new package",details:"\n This command will setup a new package in your local directory.\n\n If the `-p,--private` or `-w,--workspace` options are set, the package will be private by default.\n\n If the `-w,--workspace` option is set, the package will be configured to accept a set of workspaces in the `packages/` directory.\n\n If the `-i,--install` option is given a value, Yarn will first download it using `yarn set version` and only then forward the init call to the newly downloaded bundle. Without arguments, the downloaded bundle will be `latest`.\n\n The initial settings of the manifest can be changed by using the `initScope` and `initFields` configuration values. Additionally, Yarn will generate an EditorConfig file whose rules can be altered via `initEditorConfig`, and will initialize a Git repository in the current directory.\n ",examples:[["Create a new package in the local directory","yarn init"],["Create a new private package in the local directory","yarn init -p"],["Create a new package and store the Yarn release inside","yarn init -i=latest"],["Create a new private package and defines it as a workspace root","yarn init -w"]]});var lie=id;var WYe={configuration:{initScope:{description:"Scope used when creating packages via the init command",type:ge.STRING,default:null},initFields:{description:"Additional fields to set when creating packages via the init command",type:ge.MAP,valueDefinition:{description:"",type:ge.ANY}},initEditorConfig:{description:"Extra rules to define in the generator editorconfig",type:ge.MAP,valueDefinition:{description:"",type:ge.ANY}}},commands:[lie]},zYe=WYe;var IF={};$e(IF,{default:()=>XYe});var Io="portal:",Eo="link:";var pF=class{supports(e,r){return!!e.reference.startsWith(Io)}getLocalPath(e,r){let{parentLocator:i,path:n}=Q.parseFileStyleRange(e.reference,{protocol:Io});if(B.isAbsolute(n))return n;let s=r.fetcher.getLocalPath(i,r);return s===null?null:B.resolve(s,n)}async fetch(e,r){let{parentLocator:i,path:n}=Q.parseFileStyleRange(e.reference,{protocol:Io}),s=B.isAbsolute(n)?{packageFs:new yt(Ee.root),prefixPath:Ee.dot,localPath:Ee.root}:await r.fetcher.fetch(i,r),o=s.localPath?{packageFs:new yt(Ee.root),prefixPath:B.relative(Ee.root,s.localPath)}:s;s!==o&&s.releaseFs&&s.releaseFs();let a=o.packageFs,l=B.join(o.prefixPath,n);return s.localPath?{packageFs:new yt(l,{baseFs:a}),releaseFs:o.releaseFs,prefixPath:Ee.dot,localPath:l}:{packageFs:new Ns(l,{baseFs:a}),releaseFs:o.releaseFs,prefixPath:Ee.dot}}};var dF=class{supportsDescriptor(e,r){return!!e.range.startsWith(Io)}supportsLocator(e,r){return!!e.reference.startsWith(Io)}shouldPersistResolution(e,r){return!1}bindDescriptor(e,r,i){return Q.bindDescriptor(e,{locator:Q.stringifyLocator(r)})}getResolutionDependencies(e,r){return[]}async getCandidates(e,r,i){let n=e.range.slice(Io.length);return[Q.makeLocator(e,`${Io}${L.toPortablePath(n)}`)]}async getSatisfying(e,r,i){return null}async resolve(e,r){if(!r.fetchOptions)throw new Error("Assertion failed: This resolver cannot be used unless a fetcher is configured");let i=await r.fetchOptions.fetcher.fetch(e,r.fetchOptions),n=await de.releaseAfterUseAsync(async()=>await We.find(i.prefixPath,{baseFs:i.packageFs}),i.releaseFs);return V(k({},e),{version:n.version||"0.0.0",languageName:n.languageName||r.project.configuration.get("defaultLanguageName"),linkType:At.SOFT,dependencies:new Map([...n.dependencies]),peerDependencies:n.peerDependencies,dependenciesMeta:n.dependenciesMeta,peerDependenciesMeta:n.peerDependenciesMeta,bin:n.bin})}};var CF=class{supports(e,r){return!!e.reference.startsWith(Eo)}getLocalPath(e,r){let{parentLocator:i,path:n}=Q.parseFileStyleRange(e.reference,{protocol:Eo});if(B.isAbsolute(n))return n;let s=r.fetcher.getLocalPath(i,r);return s===null?null:B.resolve(s,n)}async fetch(e,r){let{parentLocator:i,path:n}=Q.parseFileStyleRange(e.reference,{protocol:Eo}),s=B.isAbsolute(n)?{packageFs:new yt(Ee.root),prefixPath:Ee.dot,localPath:Ee.root}:await r.fetcher.fetch(i,r),o=s.localPath?{packageFs:new yt(Ee.root),prefixPath:B.relative(Ee.root,s.localPath)}:s;s!==o&&s.releaseFs&&s.releaseFs();let a=o.packageFs,l=B.join(o.prefixPath,n);return s.localPath?{packageFs:new yt(l,{baseFs:a}),releaseFs:o.releaseFs,prefixPath:Ee.dot,discardFromLookup:!0,localPath:l}:{packageFs:new Ns(l,{baseFs:a}),releaseFs:o.releaseFs,prefixPath:Ee.dot,discardFromLookup:!0}}};var mF=class{supportsDescriptor(e,r){return!!e.range.startsWith(Eo)}supportsLocator(e,r){return!!e.reference.startsWith(Eo)}shouldPersistResolution(e,r){return!1}bindDescriptor(e,r,i){return Q.bindDescriptor(e,{locator:Q.stringifyLocator(r)})}getResolutionDependencies(e,r){return[]}async getCandidates(e,r,i){let n=e.range.slice(Eo.length);return[Q.makeLocator(e,`${Eo}${L.toPortablePath(n)}`)]}async getSatisfying(e,r,i){return null}async resolve(e,r){return V(k({},e),{version:"0.0.0",languageName:r.project.configuration.get("defaultLanguageName"),linkType:At.SOFT,dependencies:new Map,peerDependencies:new Map,dependenciesMeta:new Map,peerDependenciesMeta:new Map,bin:new Map})}};var VYe={fetchers:[CF,pF],resolvers:[mF,dF]},XYe=VYe;var _F={};$e(_F,{default:()=>tje});var PF=te(require("fs"));var Eie=te(require("fs"));var EF=te(require("events")),cie=class extends EF.EventEmitter{constructor(e,r,i){super();this.dirWatchers=e,this.watchPath=r,this.watcherId=i}close(){let e=this.dirWatchers.get(this.watchPath);e.eventEmitters.delete(this.watcherId),e.eventEmitters.size===0&&this.dirWatchers.delete(this.watchPath)}},yF=class extends EF.EventEmitter{constructor(){super(...arguments);this.dirWatchers=new Map;this.lastWatcherId=0}registerWatcher(e,r,i){let n=this.dirWatchers.get(e);n||(n={eventEmitters:new Map,dirEntries:r},this.dirWatchers.set(e,n));let s=this.lastWatcherId++,o=new cie(this.dirWatchers,e,s);return n.eventEmitters.set(s,o),o.on("rename",a=>i("rename",a)),o}notifyWatchers(e){for(let[r,i]of this.dirWatchers){let n=e(r).dirList||new Set,s=new Set;for(let o of n)i.dirEntries.has(o)||s.add(o);for(let o of i.dirEntries)n.has(o)||s.add(o);for(let o of s)for(let a of i.eventEmitters.values())a.emit("rename",o);i.dirEntries=n}}};var yo;(function(i){i[i.YES=0]="YES",i[i.NO=1]="NO",i[i.DEPENDS=2]="DEPENDS"})(yo||(yo={}));var BF=(t,e)=>`${t}@${e}`,uie=(t,e)=>{let r=e.indexOf("#"),i=r>=0?e.substring(r+1):e;return BF(t,i)},Xi;(function(s){s[s.NONE=-1]="NONE",s[s.PERF=0]="PERF",s[s.CHECK=1]="CHECK",s[s.REASONS=2]="REASONS",s[s.INTENSIVE_CHECK=9]="INTENSIVE_CHECK"})(Xi||(Xi={}));var hie=(t,e={})=>{let r=e.debugLevel||Number(process.env.NM_DEBUG_LEVEL||-1),i=e.check||r>=9,n=e.hoistingLimits||new Map,s={check:i,debugLevel:r,hoistingLimits:n,fastLookupPossible:!0},o;s.debugLevel>=0&&(o=Date.now());let a=ZYe(t,s),l=!1,c=0;do l=wF(a,[a],new Set([a.locator]),new Map,s).anotherRoundNeeded,s.fastLookupPossible=!1,c++;while(l);if(s.debugLevel>=0&&console.log(`hoist time: ${Date.now()-o}ms, rounds: ${c}`),s.debugLevel>=1){let u=nd(a);if(wF(a,[a],new Set([a.locator]),new Map,s).isGraphChanged)throw new Error(`The hoisting result is not terminal, prev tree: ${u}, next tree: -${yp(a)}`);let h=Fte(a);if(h)throw new Error(`${h}, after hoisting finished: -${yp(a)}`)}return s.debugLevel>=2&&console.log(yp(a)),aHe(a)},AHe=t=>{let e=t[t.length-1],r=new Map,i=new Set,n=s=>{if(!i.has(s)){i.add(s);for(let o of s.hoistedDependencies.values())r.set(o.name,o);for(let o of s.dependencies.values())s.peerNames.has(o.name)||n(o)}};return n(e),r},lHe=t=>{let e=t[t.length-1],r=new Map,i=new Set,n=new Map;for(let a of t)for(let l of a.dependencies.values())n.set(l.name,l);let s=new Set,o=(a,l)=>{if(i.has(a))return;i.add(a);for(let u of a.hoistedDependencies.values())if(!l.has(u.name)){let g=n.get(u.name);g&&r.set(g.name,g)}let c=new Set;for(let u of a.dependencies.values())c.add(u.name);for(let u of a.dependencies.values())a.peerNames.has(u.name)||o(u,c)};return o(e,s),r},Lte=(t,e)=>{if(e.decoupled)return e;let{name:r,references:i,ident:n,locator:s,dependencies:o,originalDependencies:a,hoistedDependencies:l,peerNames:c,reasons:u,isHoistBorder:g}=e,h={name:r,references:new Set(i),ident:n,locator:s,dependencies:new Map(o),originalDependencies:new Map(a),hoistedDependencies:new Map(l),peerNames:new Set(c),reasons:new Map(u),decoupled:!0,isHoistBorder:g,hoistedFrom:[]},f=h.dependencies.get(r);return f&&f.ident==h.ident&&h.dependencies.set(r,h),t.dependencies.set(h.name,h),h},cHe=(t,e)=>{let r=new Map([[t.name,[t.ident]]]);for(let n of t.dependencies.values())t.peerNames.has(n.name)||r.set(n.name,[n.ident]);let i=Array.from(e.keys());i.sort((n,s)=>{let o=e.get(n),a=e.get(s);return a.peerDependents.size!==o.peerDependents.size?a.peerDependents.size-o.peerDependents.size:a.dependents.size-o.dependents.size});for(let n of i){let s=n.substring(0,n.indexOf("@",1)),o=n.substring(s.length+1);if(!t.peerNames.has(s)){let a=r.get(s);a||(a=[],r.set(s,a)),a.indexOf(o)<0&&a.push(o)}}return r},gv=t=>{let e=new Set,r=(i,n=new Set)=>{if(!n.has(i)){n.add(i);for(let s of i.peerNames)if(!t.peerNames.has(s)){let o=t.dependencies.get(s);o&&!e.has(o)&&r(o,n)}e.add(i)}};for(let i of t.dependencies.values())t.peerNames.has(i.name)||r(i);return e},uv=(t,e,r,i,n,s=new Set)=>{let o=e[e.length-1];if(s.has(o))return{anotherRoundNeeded:!1,isGraphChanged:!1};s.add(o);let a=gHe(o),l=cHe(o,a),c=t==o?new Map:n.fastLookupPossible?AHe(e):lHe(e),u,g=!1,h=!1,f=new Map(Array.from(l.entries()).map(([m,I])=>[m,I[0]])),p=new Map;do{let m=uHe(t,e,r,c,f,l,i,p,n);m.isGraphChanged&&(h=!0),m.anotherRoundNeeded&&(g=!0),u=!1;for(let[I,y]of l)y.length>1&&!o.dependencies.has(I)&&(f.delete(I),y.shift(),f.set(I,y[0]),u=!0)}while(u);for(let m of o.dependencies.values())if(!o.peerNames.has(m.name)&&!r.has(m.locator)){r.add(m.locator);let I=uv(t,[...e,m],r,p,n);I.isGraphChanged&&(h=!0),I.anotherRoundNeeded&&(g=!0),r.delete(m.locator)}return{anotherRoundNeeded:g,isGraphChanged:h}},hHe=(t,e,r,i,n,s,o,a,{outputReason:l})=>{let c,u=null,g=new Set;l&&(c=`${Array.from(e).map(m=>bi(m)).join("\u2192")}`);let h=r[r.length-1],p=!(i.ident===h.ident);if(l&&!p&&(u="- self-reference"),p&&(p=!t.peerNames.has(i.name),l&&!p&&(u=`- cannot shadow peer: ${bi(t.originalDependencies.get(i.name).locator)} at ${c}`)),p){let m=!1,I=n.get(i.name);if(m=!I||I.ident===i.ident,l&&!m&&(u=`- filled by: ${bi(I.locator)} at ${c}`),m)for(let y=r.length-1;y>=1;y--){let P=r[y].dependencies.get(i.name);if(P&&P.ident!==i.ident){m=!1;let k=a.get(h);k||(k=new Set,a.set(h,k)),k.add(i.name),l&&(u=`- filled by ${bi(P.locator)} at ${r.slice(0,y).map(N=>bi(N.locator)).join("\u2192")}`);break}}p=m}if(p&&(p=s.get(i.name)===i.ident,l&&!p&&(u=`- filled by: ${bi(o.get(i.name)[0])} at ${c}`)),p){let m=!0,I=new Set(i.peerNames);for(let y=r.length-1;y>=1;y--){let B=r[y];for(let P of I){if(B.peerNames.has(P)&&B.originalDependencies.has(P))continue;let k=B.dependencies.get(P);k&&t.dependencies.get(P)!==k&&(y===r.length-1?g.add(k):(g=null,m=!1,l&&(u=`- peer dependency ${bi(k.locator)} from parent ${bi(B.locator)} was not hoisted to ${c}`))),I.delete(P)}if(!m)break}p=m}return g!==null&&g.size>0?{isHoistable:2,dependsOn:g,reason:u}:{isHoistable:p?0:1,reason:u}},uHe=(t,e,r,i,n,s,o,a,l)=>{let c=e[e.length-1],u=new Set,g=!1,h=!1,f=(I,y,B,P)=>{if(u.has(B))return;let k=[...y,B.locator],N=new Map,O=new Map;for(let F of gv(B)){let A=hHe(c,r,[c,...I,B],F,i,n,s,a,{outputReason:l.debugLevel>=2});if(O.set(F,A),A.isHoistable===2)for(let q of A.dependsOn){let Z=N.get(q.name)||new Set;Z.add(F.name),N.set(q.name,Z)}}let v=new Set,U=(F,A,q)=>{if(!v.has(F)){v.add(F),O.set(F,{isHoistable:1,reason:q});for(let Z of N.get(F.name)||[])U(B.dependencies.get(Z),A,l.debugLevel>=2?`- peer dependency ${bi(F.locator)} from parent ${bi(B.locator)} was not hoisted`:"")}};for(let[F,A]of O)A.isHoistable===1&&U(F,A,A.reason);for(let F of O.keys())if(!v.has(F)){h=!0;let A=o.get(B);A&&A.has(F.name)&&(g=!0),B.dependencies.delete(F.name),B.hoistedDependencies.set(F.name,F),B.reasons.delete(F.name);let q=c.dependencies.get(F.name),Z=null;if(l.debugLevel>=2&&(Z=Array.from(y).concat([B.locator]).map($=>bi($)).join("\u2192")),!q)c.ident!==F.ident&&(c.dependencies.set(F.name,F),l.debugLevel>=2&&F.hoistedFrom.push(Z),P.add(F));else for(let $ of F.references)q.references.add($),l.debugLevel>=2&&q.hoistedFrom.push(Z)}if(l.check){let F=Fte(t);if(F)throw new Error(`${F}, after hoisting dependencies of ${[c,...I,B].map(A=>bi(A.locator)).join("\u2192")}: -${yp(t)}`)}let re=gv(B);for(let F of re)if(v.has(F)){let A=O.get(F);if((n.get(F.name)===F.ident||!B.reasons.has(F.name))&&A.isHoistable!==0&&B.reasons.set(F.name,A.reason),!F.isHoistBorder&&k.indexOf(F.locator)<0){u.add(B);let Z=Lte(B,F);f([...I,B],[...y,B.locator],Z,m),u.delete(B)}}},p,m=new Set(gv(c));do{p=m,m=new Set;for(let I of p){if(I.locator===c.locator||I.isHoistBorder)continue;let y=Lte(c,I);f([],Array.from(r),y,m)}}while(m.size>0);return{anotherRoundNeeded:g,isGraphChanged:h}},Fte=t=>{let e=[],r=new Set,i=new Set,n=(s,o)=>{if(r.has(s)||(r.add(s),i.has(s)))return;let a=new Map(o);for(let l of s.dependencies.values())s.peerNames.has(l.name)||a.set(l.name,l);for(let l of s.originalDependencies.values()){let c=a.get(l.name),u=()=>`${Array.from(i).concat([s]).map(g=>bi(g.locator)).join("\u2192")}`;if(s.peerNames.has(l.name)){let g=o.get(l.name);(g!==c||!g||g.ident!==l.ident)&&e.push(`${u()} - broken peer promise: expected ${l.ident} but found ${g&&g.ident}`)}else c?c.ident!==l.ident&&e.push(`${u()} - broken require promise for ${l.name}: expected ${l.ident}, but found: ${c.ident}`):e.push(`${u()} - broken require promise: no required dependency ${l.locator} found`)}i.add(s);for(let l of s.dependencies.values())s.peerNames.has(l.name)||n(l,a);i.delete(s)};return n(t,t.dependencies),e.join(` -`)},oHe=(t,e)=>{let{identName:r,name:i,reference:n,peerNames:s}=t,o={name:i,references:new Set([n]),locator:cv(r,n),ident:vte(r,n),dependencies:new Map,originalDependencies:new Map,hoistedDependencies:new Map,peerNames:new Set(s),reasons:new Map,decoupled:!0,isHoistBorder:!0,hoistedFrom:[]},a=new Map([[t,o]]),l=(c,u)=>{let g=a.get(c),h=!!g;if(!g){let{name:f,identName:p,reference:m,peerNames:I}=c,y=e.hoistingLimits.get(u.locator);g={name:f,references:new Set([m]),locator:cv(p,m),ident:vte(p,m),dependencies:new Map,originalDependencies:new Map,hoistedDependencies:new Map,peerNames:new Set(I),reasons:new Map,decoupled:!0,isHoistBorder:y?y.has(f):!1,hoistedFrom:[]},a.set(c,g)}if(u.dependencies.set(c.name,g),u.originalDependencies.set(c.name,g),h){let f=new Set,p=m=>{if(!f.has(m)){f.add(m),m.decoupled=!1;for(let I of m.dependencies.values())m.peerNames.has(I.name)||p(I)}};p(g)}else for(let f of c.dependencies)l(f,g)};for(let c of t.dependencies)l(c,o);return o},hv=t=>t.substring(0,t.indexOf("@",1)),aHe=t=>{let e={name:t.name,identName:hv(t.locator),references:new Set(t.references),dependencies:new Set},r=new Set([t]),i=(n,s,o)=>{let a=r.has(n),l;if(s===n)l=o;else{let{name:c,references:u,locator:g}=n;l={name:c,identName:hv(g),references:u,dependencies:new Set}}if(o.dependencies.add(l),!a){r.add(n);for(let c of n.dependencies.values())n.peerNames.has(c.name)||i(c,n,l);r.delete(n)}};for(let n of t.dependencies.values())i(n,t,e);return e},gHe=t=>{let e=new Map,r=new Set([t]),i=o=>`${o.name}@${o.ident}`,n=o=>{let a=i(o),l=e.get(a);return l||(l={dependents:new Set,peerDependents:new Set},e.set(a,l)),l},s=(o,a)=>{let l=!!r.has(a);if(n(a).dependents.add(o.ident),!l){r.add(a);for(let u of a.dependencies.values())a.peerNames.has(u.name)?n(u).peerDependents.add(a.ident):s(a,u)}};for(let o of t.dependencies.values())t.peerNames.has(o.name)||s(t,o);return e},bi=t=>{let e=t.indexOf("@",1),r=t.substring(0,e);r.endsWith("$wsroot$")&&(r=`wh:${r.replace("$wsroot$","")}`);let i=t.substring(e+1);if(i==="workspace:.")return".";if(i){let n=(i.indexOf("#")>0?i.split("#")[1]:i).replace("npm:","");return i.startsWith("virtual")&&(r=`v:${r}`),n.startsWith("workspace")&&(r=`w:${r}`,n=""),`${r}${n?`@${n}`:""}`}else return`${r}`},Mte=5e4,yp=t=>{let e=0,r=(n,s,o="")=>{if(e>Mte||s.has(n))return"";e++;let a=Array.from(n.dependencies.values()).sort((c,u)=>c.name.localeCompare(u.name)),l="";s.add(n);for(let c=0;c":"")+(h!==u.name?`a:${u.name}:`:"")+bi(u.locator)+(g?` ${g}`:"")+(u!==n&&u.hoistedFrom.length>0?`, hoisted from: ${u.hoistedFrom.join(", ")}`:"")} -`,l+=r(u,s,`${o}${cMte?` +${nd(a)}`);let h=gie(a);if(h)throw new Error(`${h}, after hoisting finished: +${nd(a)}`)}return s.debugLevel>=2&&console.log(nd(a)),_Ye(a)},$Ye=t=>{let e=t[t.length-1],r=new Map,i=new Set,n=s=>{if(!i.has(s)){i.add(s);for(let o of s.hoistedDependencies.values())r.set(o.name,o);for(let o of s.dependencies.values())s.peerNames.has(o.name)||n(o)}};return n(e),r},eGe=t=>{let e=t[t.length-1],r=new Map,i=new Set,n=new Map;for(let a of t)for(let l of a.dependencies.values())n.set(l.name,l);let s=new Set,o=(a,l)=>{if(i.has(a))return;i.add(a);for(let u of a.hoistedDependencies.values())if(!l.has(u.name)){let g=n.get(u.name);g&&r.set(g.name,g)}let c=new Set;for(let u of a.dependencies.values())c.add(u.name);for(let u of a.dependencies.values())a.peerNames.has(u.name)||o(u,c)};return o(e,s),r},fie=(t,e)=>{if(e.decoupled)return e;let{name:r,references:i,ident:n,locator:s,dependencies:o,originalDependencies:a,hoistedDependencies:l,peerNames:c,reasons:u,isHoistBorder:g}=e,h={name:r,references:new Set(i),ident:n,locator:s,dependencies:new Map(o),originalDependencies:new Map(a),hoistedDependencies:new Map(l),peerNames:new Set(c),reasons:new Map(u),decoupled:!0,isHoistBorder:g,hoistedFrom:[]},f=h.dependencies.get(r);return f&&f.ident==h.ident&&h.dependencies.set(r,h),t.dependencies.set(h.name,h),h},tGe=(t,e)=>{let r=new Map([[t.name,[t.ident]]]);for(let n of t.dependencies.values())t.peerNames.has(n.name)||r.set(n.name,[n.ident]);let i=Array.from(e.keys());i.sort((n,s)=>{let o=e.get(n),a=e.get(s);return a.peerDependents.size!==o.peerDependents.size?a.peerDependents.size-o.peerDependents.size:a.dependents.size-o.dependents.size});for(let n of i){let s=n.substring(0,n.indexOf("@",1)),o=n.substring(s.length+1);if(!t.peerNames.has(s)){let a=r.get(s);a||(a=[],r.set(s,a)),a.indexOf(o)<0&&a.push(o)}}return r},QF=t=>{let e=new Set,r=(i,n=new Set)=>{if(!n.has(i)){n.add(i);for(let s of i.peerNames)if(!t.peerNames.has(s)){let o=t.dependencies.get(s);o&&!e.has(o)&&r(o,n)}e.add(i)}};for(let i of t.dependencies.values())t.peerNames.has(i.name)||r(i);return e},wF=(t,e,r,i,n,s=new Set)=>{let o=e[e.length-1];if(s.has(o))return{anotherRoundNeeded:!1,isGraphChanged:!1};s.add(o);let a=iGe(o),l=tGe(o,a),c=t==o?new Map:n.fastLookupPossible?$Ye(e):eGe(e),u,g=!1,h=!1,f=new Map(Array.from(l.entries()).map(([m,I])=>[m,I[0]])),p=new Map;do{let m=rGe(t,e,r,c,f,l,i,p,n);m.isGraphChanged&&(h=!0),m.anotherRoundNeeded&&(g=!0),u=!1;for(let[I,y]of l)y.length>1&&!o.dependencies.has(I)&&(f.delete(I),y.shift(),f.set(I,y[0]),u=!0)}while(u);for(let m of o.dependencies.values())if(!o.peerNames.has(m.name)&&!r.has(m.locator)){r.add(m.locator);let I=wF(t,[...e,m],r,p,n);I.isGraphChanged&&(h=!0),I.anotherRoundNeeded&&(g=!0),r.delete(m.locator)}return{anotherRoundNeeded:g,isGraphChanged:h}},nGe=(t,e,r,i,n,s,o,a,{outputReason:l})=>{let c,u=null,g=new Set;l&&(c=`${Array.from(e).map(m=>Ni(m)).join("\u2192")}`);let h=r[r.length-1],p=!(i.ident===h.ident);if(l&&!p&&(u="- self-reference"),p&&(p=!t.peerNames.has(i.name),l&&!p&&(u=`- cannot shadow peer: ${Ni(t.originalDependencies.get(i.name).locator)} at ${c}`)),p){let m=!1,I=n.get(i.name);if(m=!I||I.ident===i.ident,l&&!m&&(u=`- filled by: ${Ni(I.locator)} at ${c}`),m)for(let y=r.length-1;y>=1;y--){let x=r[y].dependencies.get(i.name);if(x&&x.ident!==i.ident){m=!1;let F=a.get(h);F||(F=new Set,a.set(h,F)),F.add(i.name),l&&(u=`- filled by ${Ni(x.locator)} at ${r.slice(0,y).map(N=>Ni(N.locator)).join("\u2192")}`);break}}p=m}if(p&&(p=s.get(i.name)===i.ident,l&&!p&&(u=`- filled by: ${Ni(o.get(i.name)[0])} at ${c}`)),p){let m=!0,I=new Set(i.peerNames);for(let y=r.length-1;y>=1;y--){let w=r[y];for(let x of I){if(w.peerNames.has(x)&&w.originalDependencies.has(x))continue;let F=w.dependencies.get(x);F&&t.dependencies.get(x)!==F&&(y===r.length-1?g.add(F):(g=null,m=!1,l&&(u=`- peer dependency ${Ni(F.locator)} from parent ${Ni(w.locator)} was not hoisted to ${c}`))),I.delete(x)}if(!m)break}p=m}return g!==null&&g.size>0?{isHoistable:2,dependsOn:g,reason:u}:{isHoistable:p?0:1,reason:u}},rGe=(t,e,r,i,n,s,o,a,l)=>{let c=e[e.length-1],u=new Set,g=!1,h=!1,f=(I,y,w,x)=>{if(u.has(w))return;let F=[...y,w.locator],N=new Map,K=new Map;for(let T of QF(w)){let A=nGe(c,r,[c,...I,w],T,i,n,s,a,{outputReason:l.debugLevel>=2});if(K.set(T,A),A.isHoistable===2)for(let W of A.dependsOn){let ee=N.get(W.name)||new Set;ee.add(T.name),N.set(W.name,ee)}}let v=new Set,J=(T,A,W)=>{if(!v.has(T)){v.add(T),K.set(T,{isHoistable:1,reason:W});for(let ee of N.get(T.name)||[])J(w.dependencies.get(ee),A,l.debugLevel>=2?`- peer dependency ${Ni(T.locator)} from parent ${Ni(w.locator)} was not hoisted`:"")}};for(let[T,A]of K)A.isHoistable===1&&J(T,A,A.reason);for(let T of K.keys())if(!v.has(T)){h=!0;let A=o.get(w);A&&A.has(T.name)&&(g=!0),w.dependencies.delete(T.name),w.hoistedDependencies.set(T.name,T),w.reasons.delete(T.name);let W=c.dependencies.get(T.name),ee=null;if(l.debugLevel>=2&&(ee=Array.from(y).concat([w.locator]).map(re=>Ni(re)).join("\u2192")),!W)c.ident!==T.ident&&(c.dependencies.set(T.name,T),l.debugLevel>=2&&T.hoistedFrom.push(ee),x.add(T));else for(let re of T.references)W.references.add(re),l.debugLevel>=2&&W.hoistedFrom.push(ee)}if(l.check){let T=gie(t);if(T)throw new Error(`${T}, after hoisting dependencies of ${[c,...I,w].map(A=>Ni(A.locator)).join("\u2192")}: +${nd(t)}`)}let oe=QF(w);for(let T of oe)if(v.has(T)){let A=K.get(T);if((n.get(T.name)===T.ident||!w.reasons.has(T.name))&&A.isHoistable!==0&&w.reasons.set(T.name,A.reason),!T.isHoistBorder&&F.indexOf(T.locator)<0){u.add(w);let ee=fie(w,T);f([...I,w],[...y,w.locator],ee,m),u.delete(w)}}},p,m=new Set(QF(c));do{p=m,m=new Set;for(let I of p){if(I.locator===c.locator||I.isHoistBorder)continue;let y=fie(c,I);f([],Array.from(r),y,m)}}while(m.size>0);return{anotherRoundNeeded:g,isGraphChanged:h}},gie=t=>{let e=[],r=new Set,i=new Set,n=(s,o)=>{if(r.has(s)||(r.add(s),i.has(s)))return;let a=new Map(o);for(let l of s.dependencies.values())s.peerNames.has(l.name)||a.set(l.name,l);for(let l of s.originalDependencies.values()){let c=a.get(l.name),u=()=>`${Array.from(i).concat([s]).map(g=>Ni(g.locator)).join("\u2192")}`;if(s.peerNames.has(l.name)){let g=o.get(l.name);(g!==c||!g||g.ident!==l.ident)&&e.push(`${u()} - broken peer promise: expected ${l.ident} but found ${g&&g.ident}`)}else c?c.ident!==l.ident&&e.push(`${u()} - broken require promise for ${l.name}: expected ${l.ident}, but found: ${c.ident}`):e.push(`${u()} - broken require promise: no required dependency ${l.locator} found`)}i.add(s);for(let l of s.dependencies.values())s.peerNames.has(l.name)||n(l,a);i.delete(s)};return n(t,t.dependencies),e.join(` +`)},ZYe=(t,e)=>{let{identName:r,name:i,reference:n,peerNames:s}=t,o={name:i,references:new Set([n]),locator:BF(r,n),ident:uie(r,n),dependencies:new Map,originalDependencies:new Map,hoistedDependencies:new Map,peerNames:new Set(s),reasons:new Map,decoupled:!0,isHoistBorder:!0,hoistedFrom:[]},a=new Map([[t,o]]),l=(c,u)=>{let g=a.get(c),h=!!g;if(!g){let{name:f,identName:p,reference:m,peerNames:I}=c,y=e.hoistingLimits.get(u.locator);g={name:f,references:new Set([m]),locator:BF(p,m),ident:uie(p,m),dependencies:new Map,originalDependencies:new Map,hoistedDependencies:new Map,peerNames:new Set(I),reasons:new Map,decoupled:!0,isHoistBorder:y?y.has(f):!1,hoistedFrom:[]},a.set(c,g)}if(u.dependencies.set(c.name,g),u.originalDependencies.set(c.name,g),h){let f=new Set,p=m=>{if(!f.has(m)){f.add(m),m.decoupled=!1;for(let I of m.dependencies.values())m.peerNames.has(I.name)||p(I)}};p(g)}else for(let f of c.dependencies)l(f,g)};for(let c of t.dependencies)l(c,o);return o},bF=t=>t.substring(0,t.indexOf("@",1)),_Ye=t=>{let e={name:t.name,identName:bF(t.locator),references:new Set(t.references),dependencies:new Set},r=new Set([t]),i=(n,s,o)=>{let a=r.has(n),l;if(s===n)l=o;else{let{name:c,references:u,locator:g}=n;l={name:c,identName:bF(g),references:u,dependencies:new Set}}if(o.dependencies.add(l),!a){r.add(n);for(let c of n.dependencies.values())n.peerNames.has(c.name)||i(c,n,l);r.delete(n)}};for(let n of t.dependencies.values())i(n,t,e);return e},iGe=t=>{let e=new Map,r=new Set([t]),i=o=>`${o.name}@${o.ident}`,n=o=>{let a=i(o),l=e.get(a);return l||(l={dependents:new Set,peerDependents:new Set},e.set(a,l)),l},s=(o,a)=>{let l=!!r.has(a);if(n(a).dependents.add(o.ident),!l){r.add(a);for(let u of a.dependencies.values())a.peerNames.has(u.name)?n(u).peerDependents.add(a.ident):s(a,u)}};for(let o of t.dependencies.values())t.peerNames.has(o.name)||s(t,o);return e},Ni=t=>{let e=t.indexOf("@",1),r=t.substring(0,e);r.endsWith("$wsroot$")&&(r=`wh:${r.replace("$wsroot$","")}`);let i=t.substring(e+1);if(i==="workspace:.")return".";if(i){let n=(i.indexOf("#")>0?i.split("#")[1]:i).replace("npm:","");return i.startsWith("virtual")&&(r=`v:${r}`),n.startsWith("workspace")&&(r=`w:${r}`,n=""),`${r}${n?`@${n}`:""}`}else return`${r}`},pie=5e4,nd=t=>{let e=0,r=(n,s,o="")=>{if(e>pie||s.has(n))return"";e++;let a=Array.from(n.dependencies.values()).sort((c,u)=>c.name.localeCompare(u.name)),l="";s.add(n);for(let c=0;c":"")+(h!==u.name?`a:${u.name}:`:"")+Ni(u.locator)+(g?` ${g}`:"")+(u!==n&&u.hoistedFrom.length>0?`, hoisted from: ${u.hoistedFrom.join(", ")}`:"")} +`,l+=r(u,s,`${o}${cpie?` Tree is too large, part of the tree has been dunped -`:"")};var ia;(function(t){t.HARD="HARD",t.SOFT="SOFT"})(ia||(ia={}));var Di;(function(t){t.WORKSPACES="workspaces",t.DEPENDENCIES="dependencies",t.NONE="none"})(Di||(Di={}));var Nte="node_modules",Cy="$wsroot$";var na=(t,e)=>{let{packageTree:r,hoistingLimits:i,errors:n,preserveSymlinksRequired:s}=fHe(t,e),o=null;if(n.length===0){let a=Rte(r,{hoistingLimits:i});o=pHe(t,a,e)}return{tree:o,errors:n,preserveSymlinksRequired:s}},cs=t=>`${t.name}@${t.reference}`,fv=t=>{let e=new Map;for(let[r,i]of t.entries())if(!i.dirList){let n=e.get(i.locator);n||(n={target:i.target,linkType:i.linkType,locations:[],aliases:i.aliases},e.set(i.locator,n)),n.locations.push(r)}for(let r of e.values())r.locations=r.locations.sort((i,n)=>{let s=i.split(w.delimiter).length,o=n.split(w.delimiter).length;return s!==o?o-s:n.localeCompare(i)});return e},Ote=(t,e)=>{let r=b.isVirtualLocator(t)?b.devirtualizeLocator(t):t,i=b.isVirtualLocator(e)?b.devirtualizeLocator(e):e;return b.areLocatorsEqual(r,i)},fHe=(t,e)=>{let r=t.getDependencyTreeRoots(),i=[],n=!1,s=new Map,o=new Map,a=t.getPackageInformation(t.topLevel);if(a===null)throw new Error("Assertion failed: Expected the top-level package to have been registered");let l=t.findPackageLocator(a.packageLocation);if(l===null)throw new Error("Assertion failed: Expected the top-level package to have a physical locator");let c=npath.toPortablePath(a.packageLocation),u=cs(l);if(e.project){let I={children:new Map},y=e.project.cwd.split(w.sep);for(let[P,k]of e.project.workspacesByCwd){let N=P.split(w.sep).slice(y.length),O=I;for(let v of N){let U=O.children.get(v);U||(U={children:new Map},O.children.set(v,U)),O=U}O.workspaceLocator={name:b.stringifyIdent(k.anchoredLocator),reference:k.anchoredLocator.reference}}let B=(P,k)=>{if(P.workspaceLocator){let N=cs(k),O=o.get(N);O||(O=new Set,o.set(N,O)),O.add(P.workspaceLocator)}for(let N of P.children.values())B(N,P.workspaceLocator||k)};for(let P of I.children.values())B(P,I.workspaceLocator)}else for(let I of r)if(I.name!==l.name||I.reference!==l.reference){let y=o.get(u);y||(y=new Set,o.set(u,y)),y.add(I)}let g={name:l.name,identName:l.name,reference:l.reference,peerNames:a.packagePeers,dependencies:new Set},h=new Map,f=(I,y)=>`${cs(y)}:${I}`,p=(I,y)=>{if(I.linkType!==ia.SOFT||!e.project)return!1;let B=npath.toPortablePath(t.resolveVirtual&&y.reference&&y.reference.startsWith("virtual:")?t.resolveVirtual(I.packageLocation):I.packageLocation);return w.contains(e.project.cwd,B)===null},m=(I,y,B,P,k,N,O)=>{var Z,$;let v=f(I,B),U=h.get(v),re=!!U;if(!re&&B.name===l.name&&B.reference===l.reference&&(U=g,h.set(v,g)),U||(U={name:I,identName:B.name,reference:B.reference,dependencies:new Set,peerNames:y.packagePeers},h.set(v,U)),O&&!p(y,B)){let T=cs({name:P.identName,reference:P.reference}),G=s.get(T)||new Set;s.set(T,G),G.add(U.name)}let F=new Map(y.packageDependencies);if(e.project){let T=e.project.workspacesByCwd.get(npath.toPortablePath(y.packageLocation.slice(0,-1)));if(T){let G=new Set([...Array.from(T.manifest.peerDependencies.values(),Qe=>b.stringifyIdent(Qe)),...Array.from(T.manifest.peerDependenciesMeta.keys())]);for(let Qe of G)F.has(Qe)||(F.set(Qe,k.get(Qe)||null),U.peerNames.add(Qe))}}let A=cs(B),q=o.get(A);if(q)for(let T of q)F.set(`${T.name}${Cy}`,T.reference);if(P.dependencies.add(U),!re){let T=new Map;for(let[G,Qe]of F)if(Qe!==null){let Pe=t.getLocator(G,Qe),He=t.getLocator(G.replace(Cy,""),Qe),Re=t.getPackageInformation(He);if(Re===null)throw new Error("Assertion failed: Expected the package to have been registered");let ee=p(Re,Pe);if(e.validateExternalSoftLinks&&e.project&&ee){Re.packageDependencies.size>0&&(n=!0);for(let[ue,De]of Re.packageDependencies){let z=b.parseLocator(Array.isArray(De)?`${De[0]}@${De[1]}`:`${ue}@${De}`);if(cs(z)!==cs(Pe)){let W=F.get(ue);if(W){let ie=b.parseLocator(Array.isArray(W)?`${W[0]}@${W[1]}`:`${ue}@${W}`);Ote(ie,z)||i.push({messageName:J.NM_CANT_INSTALL_EXTERNAL_SOFT_LINK,text:`Cannot link ${b.prettyIdent(e.project.configuration,b.parseIdent(Pe.name))} into ${b.prettyLocator(e.project.configuration,b.parseLocator(`${B.name}@${B.reference}`))} dependency ${b.prettyLocator(e.project.configuration,z)} conflicts with parent dependency ${b.prettyLocator(e.project.configuration,ie)}`})}else{let ie=T.get(ue);if(ie){let ae=ie.target,me=b.parseLocator(Array.isArray(ae)?`${ae[0]}@${ae[1]}`:`${ue}@${ae}`);Ote(me,z)||i.push({messageName:J.NM_CANT_INSTALL_EXTERNAL_SOFT_LINK,text:`Cannot link ${b.prettyIdent(e.project.configuration,b.parseIdent(Pe.name))} into ${b.prettyLocator(e.project.configuration,b.parseLocator(`${B.name}@${B.reference}`))} dependency ${b.prettyLocator(e.project.configuration,z)} conflicts with dependency ${b.prettyLocator(e.project.configuration,me)} from sibling portal ${b.prettyIdent(e.project.configuration,b.parseIdent(ie.portal.name))}`})}else T.set(ue,{target:z.reference,portal:Pe})}}}}let ne=(Z=e.hoistingLimitsByCwd)==null?void 0:Z.get(N),Ee=ee?N:w.relative(c,npath.toPortablePath(Re.packageLocation))||pe.dot,le=($=e.hoistingLimitsByCwd)==null?void 0:$.get(Ee),fe=ne===Di.DEPENDENCIES||le===Di.DEPENDENCIES||le===Di.WORKSPACES;m(cs(Pe)===cs(B)?I:G,Re,Pe,U,F,Ee,fe)}}};return m(l.name,a,l,g,a.packageDependencies,pe.dot,!1),{packageTree:g,hoistingLimits:s,errors:i,preserveSymlinksRequired:n}};function dHe(t,e,r){let i=e.getLocator(t.name.replace(Cy,""),t.reference),n=e.getPackageInformation(i);if(n===null)throw new Error("Assertion failed: Expected the package to be registered");let s,o;if(r.pnpifyFs)o=npath.toPortablePath(n.packageLocation),s=ia.SOFT;else{let a=e.resolveVirtual&&t.reference&&t.reference.startsWith("virtual:")?e.resolveVirtual(n.packageLocation):n.packageLocation;o=npath.toPortablePath(a||n.packageLocation),s=n.linkType}return{linkType:s,target:o}}var pHe=(t,e,r)=>{let i=new Map,n=(u,g,h)=>{let{linkType:f,target:p}=dHe(u,t,r);return{locator:cs(u),nodePath:g,target:p,linkType:f,aliases:h}},s=u=>{let[g,h]=u.split("/");return h?{scope:Ut(g),name:Ut(h)}:{scope:null,name:Ut(g)}},o=new Set,a=(u,g,h)=>{if(!o.has(u)){o.add(u);for(let f of u.dependencies){if(f===u)continue;let p=Array.from(f.references).sort(),m={name:f.identName,reference:p[0]},{name:I,scope:y}=s(f.name),B=y?[y,I]:[I],P=w.join(g,Nte),k=w.join(P,...B),N=`${h}/${m.name}`,O=n(m,h,p.slice(1));if(!f.name.endsWith(Cy)){let v=i.get(k);if(v){if(v.dirList)throw new Error(`Assertion failed: ${k} cannot merge dir node with leaf node`);{let A=b.parseLocator(v.locator),q=b.parseLocator(O.locator);if(v.linkType!==O.linkType)throw new Error(`Assertion failed: ${k} cannot merge nodes with different link types ${v.nodePath}/${b.stringifyLocator(A)} and ${h}/${b.stringifyLocator(q)}`);if(A.identHash!==q.identHash)throw new Error(`Assertion failed: ${k} cannot merge nodes with different idents ${v.nodePath}/${b.stringifyLocator(A)} and ${h}/s${b.stringifyLocator(q)}`);O.aliases=[...O.aliases,...v.aliases,b.parseLocator(v.locator).reference]}}i.set(k,O);let U=k.split("/"),re=U.indexOf(Nte),F=U.length-1;for(;re>=0&&F>re;){let A=npath.toPortablePath(U.slice(0,F).join(w.sep)),q=Ut(U[F]),Z=i.get(A);if(!Z)i.set(A,{dirList:new Set([q])});else if(Z.dirList){if(Z.dirList.has(q))break;Z.dirList.add(q)}F--}}a(f,O.linkType===ia.SOFT?O.target:k,N)}}},l=n({name:e.name,reference:Array.from(e.references)[0]},"",[]),c=l.target;return i.set(c,l),a(e,c,""),i};var Ute=X(pv());var Tte="node_modules",dv=(t,e)=>{let r={resolvedPath:t},i=t.split(w.sep),n=i.indexOf(Tte);if(n<0)return r;let s=i.lastIndexOf(Tte);typeof i[s+1]!="undefined"&&s++,i[s][0]==="@"&&typeof i[s+1]!="undefined"&&s++;let o=npath.toPortablePath(i.slice(0,n).join(w.sep)),a,l,c,u=n,g=pe.dot;for(;u<=s;){let h=Ut(i[u]);o=w.join(o,h),a=e.get(o),a?(a.linkType===ia.SOFT&&(o=a.target),l=a,g=pe.dot,c=a.dirList?o:a.target):g=w.join(g,h),u++}return g=w.join(g,...i.slice(s+1).map(h=>Ut(h))),l&&(!l.dirList||g!==pe.dot?(r.resolvedPath=w.join(c,g),r.isSymlink=l&&l.linkType===ia.SOFT&&g===pe.dot):g===pe.dot&&(r.dirList=l.dirList,r.forwardedDirPath=npath.toPortablePath(i.slice(0,n).join(w.sep)),r.forwardedDirPath.endsWith(".zip")&&(r.forwardedDirPath=w.dirname(r.forwardedDirPath)))),r};var Cv=class extends cr{constructor(e,{realFs:r=Kte.default,pnpifyFs:i=!0}={}){super(npath);this.baseFs=new Bp(e,{baseFs:new It(r),pnpifyFs:i})}mapFromBase(e){return npath.fromPortablePath(e)}mapToBase(e){return npath.toPortablePath(e)}},Hte=/[+wa]/,Bp=class extends yn{constructor(e,{baseFs:r=new It,pnpifyFs:i=!0}={}){super(w);if(!e.getDependencyTreeRoots)throw new Error("NodeModulesFS supports PnP API versions 3+, please upgrade your PnP API provider");this.options={baseFs:r,pnpifyFs:i},this.baseFs=r;let{tree:n,errors:s}=na(e,this.options);if(!n)throw new Error(`Assertion failed. Have got non-persistable node_modules graph, errors: -${JSON.stringify(s)}`);this.nodeModulesTree=n,this.watchManager=new lv;let o=npath.toPortablePath(e.getPackageInformation(e.topLevel).packageLocation);this.pnpFilePath=w.join(o,ft.pnpCjs),this.watchPnpFile(o)}watchPnpFile(e){this.baseFs.watch(e,{persistent:!1},(r,i)=>{if(i===ft.pnpCjs){let n=Ute.dynamicRequireNoCache(this.pnpFilePath);if(!na(n,this.options))throw new Error("Assertion failed. Have got non-persistable node_modules graph");this.watchManager.notifyWatchers(o=>dv(o,this.nodeModulesTree))}})}persistPath(e){let r=[],i=e;for(;!this.baseFs.existsSync(i);)r.push(i),i=w.dirname(i);for(let n of r.reverse())this.baseFs.mkdirSync(n)}persistVirtualParentFolder(e){if(typeof e!="number"){let r=this.resolvePath(w.dirname(e));r.dirList&&this.persistPath(r.resolvedPath)}}getExtractHint(e){return this.baseFs.getExtractHint(e)}resolve(e){return this.baseFs.resolve(this.resolvePath(e).resolvedPath)}getBaseFs(){return this.baseFs}resolvePath(e){if(typeof e=="number")return{resolvedPath:e,fullOriginalPath:e};{let r=this.pathUtils.resolve(e);return{...dv(r,this.nodeModulesTree),fullOriginalPath:r}}}resolveFilePath(e){return typeof e=="number"?e:this.resolvePath(e).resolvedPath}resolveDirOrFilePath(e){if(typeof e=="number")return e;let r=this.resolvePath(e);return r.forwardedDirPath||r.resolvedPath}resolveLink(e){let{p:r,onSymlink:i,onRealPath:n,statOptions:s}=e,o=this.resolvePath(r);if(o.isSymlink){let a;try{a=this.baseFs.lstatSync(o.resolvedPath,s)}catch(l){}if(a)return i(a,this.pathUtils.relative(this.pathUtils.dirname(o.fullOriginalPath),o.resolvedPath))}return n(o.forwardedDirPath||o.resolvedPath)}static makeSymlinkStats(e){return Object.assign(e,{isFile:()=>!1,isDirectory:()=>!1,isSymbolicLink:()=>!0})}getRealPath(){return this.baseFs.getRealPath()}async openPromise(e,r,i){return Hte.test(r)&&this.persistVirtualParentFolder(e),await this.baseFs.openPromise(this.resolveFilePath(e),r,i)}openSync(e,r,i){return Hte.test(r)&&this.persistVirtualParentFolder(e),this.baseFs.openSync(this.resolveFilePath(e),r,i)}async opendirPromise(e,r){let i=this.resolvePath(e);if(i.dirList||this.resolvePath(w.join(e,"node_modules")).dirList){let n=[];try{n=await this.baseFs.readdirPromise(i.resolvedPath)}catch(o){}let s=Array.from(i.dirList||["node_modules"]).concat(n).sort();return Qa(this,e,s)}else return await this.baseFs.opendirPromise(i.resolvedPath,r)}opendirSync(e,r){let i=this.resolvePath(e);if(i.dirList||this.resolvePath(w.join(e,"node_modules")).dirList){let n=[];try{n=this.baseFs.readdirSync(i.resolvedPath)}catch(o){}let s=Array.from(i.dirList||["node_modules"]).concat(n).sort();return Qa(this,e,s)}else return this.baseFs.opendirSync(i.resolvedPath,r)}async readPromise(e,r,i,n,s){return await this.baseFs.readPromise(e,r,i,n,s)}readSync(e,r,i,n,s){return this.baseFs.readSync(e,r,i,n,s)}async writePromise(e,r,i,n,s){return typeof r=="string"?await this.baseFs.writePromise(e,r,i):await this.baseFs.writePromise(e,r,i,n,s)}writeSync(e,r,i,n,s){return typeof r=="string"?this.baseFs.writeSync(e,r,i):this.baseFs.writeSync(e,r,i,n,s)}async closePromise(e){await this.baseFs.closePromise(e)}closeSync(e){this.baseFs.closeSync(e)}createReadStream(e,r){return this.baseFs.createReadStream(e!==null?this.resolveFilePath(e):e,r)}createWriteStream(e,r){return this.baseFs.createWriteStream(e!==null?this.resolveDirOrFilePath(e):e,r)}async realpathPromise(e){let r=this.resolvePath(e);return r.dirList?r.resolvedPath:this.baseFs.realpathPromise(r.resolvedPath)}realpathSync(e){let r=this.resolvePath(e);return r.dirList?r.resolvedPath:this.baseFs.realpathSync(r.resolvedPath)}async existsPromise(e){let r=this.resolvePath(e);return r.dirList?!0:await this.baseFs.existsPromise(r.resolvedPath)}existsSync(e){let r=this.resolvePath(e);return r.dirList?!0:this.baseFs.existsSync(r.resolvedPath)}async accessPromise(e,r){return await this.baseFs.accessPromise(this.resolveDirOrFilePath(e),r)}accessSync(e,r){return this.baseFs.accessSync(this.resolveDirOrFilePath(e),r)}async statPromise(e,r){return await this.baseFs.statPromise(this.resolveDirOrFilePath(e),r)}statSync(e,r){return this.baseFs.statSync(this.resolveDirOrFilePath(e),r)}async fstatPromise(e,r){return await this.baseFs.fstatPromise(e,r)}fstatSync(e,r){return this.baseFs.fstatSync(e,r)}async lstatPromise(e,r){return this.resolveLink({p:e,op:"lstat",onSymlink:i=>Bp.makeSymlinkStats(i),onRealPath:async i=>await this.baseFs.lstatPromise(i,r),statOptions:r})}lstatSync(e,r){return this.resolveLink({p:e,op:"lstat",onSymlink:i=>Bp.makeSymlinkStats(i),onRealPath:i=>this.baseFs.lstatSync(i,r),statOptions:r})}async chmodPromise(e,r){return await this.baseFs.chmodPromise(this.resolveDirOrFilePath(e),r)}chmodSync(e,r){return this.baseFs.chmodSync(this.resolveDirOrFilePath(e),r)}async chownPromise(e,r,i){return await this.baseFs.chownPromise(this.resolveDirOrFilePath(e),r,i)}chownSync(e,r,i){return this.baseFs.chownSync(this.resolveDirOrFilePath(e),r,i)}async renamePromise(e,r){return await this.baseFs.renamePromise(this.resolveDirOrFilePath(e),this.resolveDirOrFilePath(r))}renameSync(e,r){return this.baseFs.renameSync(this.resolveDirOrFilePath(e),this.resolveDirOrFilePath(r))}async copyFilePromise(e,r,i){return await this.baseFs.copyFilePromise(this.resolveFilePath(e),this.resolveDirOrFilePath(r),i)}copyFileSync(e,r,i){return this.baseFs.copyFileSync(this.resolveFilePath(e),this.resolveDirOrFilePath(r),i)}async appendFilePromise(e,r,i){return await this.baseFs.appendFilePromise(this.resolveDirOrFilePath(e),r,i)}appendFileSync(e,r,i){return this.baseFs.appendFileSync(this.resolveDirOrFilePath(e),r,i)}async writeFilePromise(e,r,i){return await this.baseFs.writeFilePromise(this.resolveDirOrFilePath(e),r,i)}writeFileSync(e,r,i){return this.baseFs.writeFileSync(this.resolveDirOrFilePath(e),r,i)}async unlinkPromise(e){return await this.baseFs.unlinkPromise(this.resolveDirOrFilePath(e))}unlinkSync(e){return this.baseFs.unlinkSync(this.resolveDirOrFilePath(e))}async utimesPromise(e,r,i){return await this.baseFs.utimesPromise(this.resolveDirOrFilePath(e),r,i)}utimesSync(e,r,i){return this.baseFs.utimesSync(this.resolveDirOrFilePath(e),r,i)}async mkdirPromise(e,r){let i=this.resolvePath(e);return this.persistVirtualParentFolder(e),this.baseFs.mkdirPromise(i.resolvedPath,r)}mkdirSync(e,r){let i=this.resolvePath(e);return this.persistVirtualParentFolder(e),this.baseFs.mkdirSync(i.resolvedPath,r)}async rmdirPromise(e,r){return await this.baseFs.rmdirPromise(this.resolveDirOrFilePath(e),r)}rmdirSync(e,r){return this.baseFs.rmdirSync(this.resolveDirOrFilePath(e),r)}async linkPromise(e,r){return await this.baseFs.linkPromise(this.resolveDirOrFilePath(e),this.resolveDirOrFilePath(r))}linkSync(e,r){return this.baseFs.linkSync(this.resolveDirOrFilePath(e),this.resolveDirOrFilePath(r))}async symlinkPromise(e,r){return await this.baseFs.symlinkPromise(this.resolveDirOrFilePath(e),this.resolveDirOrFilePath(r))}symlinkSync(e,r){return this.baseFs.symlinkSync(this.resolveDirOrFilePath(e),this.resolveDirOrFilePath(r))}async readFilePromise(e,r){switch(r){case"utf8":return await this.baseFs.readFilePromise(this.resolveFilePath(e),r);default:return await this.baseFs.readFilePromise(this.resolveFilePath(e),r)}}readFileSync(e,r){switch(r){case"utf8":return this.baseFs.readFileSync(this.resolveFilePath(e),r);default:return this.baseFs.readFileSync(this.resolveFilePath(e),r)}}async readdirPromise(e,{withFileTypes:r}={}){let i=this.resolvePath(e);if(i.dirList||this.resolvePath(w.join(e,"node_modules")).dirList){let n=[];try{n=await this.baseFs.readdirPromise(i.resolvedPath)}catch(o){}let s=Array.from(i.dirList||["node_modules"]).concat(n).sort();return r?s.map(o=>Object.assign(this.lstatSync(w.join(e,o)),{name:o})):s}else return await this.baseFs.readdirPromise(i.resolvedPath,{withFileTypes:r})}readdirSync(e,{withFileTypes:r}={}){let i=this.resolvePath(e);if(i.dirList||this.resolvePath(w.join(e,"node_modules")).dirList){let n=[];try{n=this.baseFs.readdirSync(i.resolvedPath)}catch(o){}let s=Array.from(i.dirList||["node_modules"]).concat(n).sort();return r?s.map(o=>Object.assign(this.lstatSync(w.join(e,o)),{name:o})):s}else return this.baseFs.readdirSync(i.resolvedPath,{withFileTypes:r})}async readlinkPromise(e){return this.resolveLink({p:e,op:"readlink",onSymlink:(r,i)=>i,onRealPath:async r=>await this.baseFs.readlinkPromise(this.resolveDirOrFilePath(r))})}readlinkSync(e){return this.resolveLink({p:e,op:"readlink",onSymlink:(r,i)=>i,onRealPath:r=>this.baseFs.readlinkSync(this.resolveDirOrFilePath(r))})}async truncatePromise(e,r){return await this.baseFs.truncatePromise(this.resolveDirOrFilePath(e),r)}truncateSync(e,r){return this.baseFs.truncateSync(this.resolveDirOrFilePath(e),r)}watch(e,r,i){let n=this.resolvePath(e),s=n.resolvedPath;if(s&&n.dirList){let o=typeof r=="function"?r:typeof i=="function"?i:()=>{};return this.watchManager.registerWatcher(s,n.dirList,o)}else return this.baseFs.watch(this.resolveDirOrFilePath(e),r,i)}watchFile(e,r,i){return this.baseFs.watchFile(this.resolveDirOrFilePath(e),r,i)}unwatchFile(e,r){return this.baseFs.unwatchFile(this.resolveDirOrFilePath(e),r)}};var Yte=X(pv()),jte=!1,Iv;try{Iv=Yte.dynamicRequire("pnpapi")}catch(t){}var CHe=()=>{if(Iv&&!jte){let t={...mv.default},e=new Cv(Iv,{realFs:t});eg(mv.default,e),jte=!0}};process.mainModule||CHe();var xv={};We(xv,{PnpInstaller:()=>cu,PnpLinker:()=>VA,default:()=>THe,getPnpPath:()=>XA,jsInstallUtils:()=>sa,pnpUtils:()=>Sv,quotePathIfNeeded:()=>cre});var lre=X(hr());var Gte;(function(t){t.HARD="HARD",t.SOFT="SOFT"})(Gte||(Gte={}));var Bt;(function(t){t.DEFAULT="DEFAULT",t.TOP_LEVEL="TOP_LEVEL",t.FALLBACK_EXCLUSION_LIST="FALLBACK_EXCLUSION_LIST",t.FALLBACK_EXCLUSION_ENTRIES="FALLBACK_EXCLUSION_ENTRIES",t.FALLBACK_EXCLUSION_DATA="FALLBACK_EXCLUSION_DATA",t.PACKAGE_REGISTRY_DATA="PACKAGE_REGISTRY_DATA",t.PACKAGE_REGISTRY_ENTRIES="PACKAGE_REGISTRY_ENTRIES",t.PACKAGE_STORE_DATA="PACKAGE_STORE_DATA",t.PACKAGE_STORE_ENTRIES="PACKAGE_STORE_ENTRIES",t.PACKAGE_INFORMATION_DATA="PACKAGE_INFORMATION_DATA",t.PACKAGE_DEPENDENCIES="PACKAGE_DEPENDENCIES",t.PACKAGE_DEPENDENCY="PACKAGE_DEPENDENCY"})(Bt||(Bt={}));var qte={[Bt.DEFAULT]:{collapsed:!1,next:{["*"]:Bt.DEFAULT}},[Bt.TOP_LEVEL]:{collapsed:!1,next:{fallbackExclusionList:Bt.FALLBACK_EXCLUSION_LIST,packageRegistryData:Bt.PACKAGE_REGISTRY_DATA,["*"]:Bt.DEFAULT}},[Bt.FALLBACK_EXCLUSION_LIST]:{collapsed:!1,next:{["*"]:Bt.FALLBACK_EXCLUSION_ENTRIES}},[Bt.FALLBACK_EXCLUSION_ENTRIES]:{collapsed:!0,next:{["*"]:Bt.FALLBACK_EXCLUSION_DATA}},[Bt.FALLBACK_EXCLUSION_DATA]:{collapsed:!0,next:{["*"]:Bt.DEFAULT}},[Bt.PACKAGE_REGISTRY_DATA]:{collapsed:!1,next:{["*"]:Bt.PACKAGE_REGISTRY_ENTRIES}},[Bt.PACKAGE_REGISTRY_ENTRIES]:{collapsed:!0,next:{["*"]:Bt.PACKAGE_STORE_DATA}},[Bt.PACKAGE_STORE_DATA]:{collapsed:!1,next:{["*"]:Bt.PACKAGE_STORE_ENTRIES}},[Bt.PACKAGE_STORE_ENTRIES]:{collapsed:!0,next:{["*"]:Bt.PACKAGE_INFORMATION_DATA}},[Bt.PACKAGE_INFORMATION_DATA]:{collapsed:!1,next:{packageDependencies:Bt.PACKAGE_DEPENDENCIES,["*"]:Bt.DEFAULT}},[Bt.PACKAGE_DEPENDENCIES]:{collapsed:!1,next:{["*"]:Bt.PACKAGE_DEPENDENCY}},[Bt.PACKAGE_DEPENDENCY]:{collapsed:!0,next:{["*"]:Bt.DEFAULT}}};function mHe(t,e,r){let i="";i+="[";for(let n=0,s=t.length;ns(o)));let n=r.map((s,o)=>o);return n.sort((s,o)=>{for(let a of i){let l=a[s]a[o]?1:0;if(l!==0)return l}return 0}),n.map(s=>r[s])}function BHe(t){let e=new Map,r=wp(t.fallbackExclusionList||[],[({name:i,reference:n})=>i,({name:i,reference:n})=>n]);for(let{name:i,reference:n}of r){let s=e.get(i);typeof s=="undefined"&&e.set(i,s=new Set),s.add(n)}return Array.from(e).map(([i,n])=>[i,Array.from(n)])}function wHe(t){return wp(t.fallbackPool||[],([e])=>e)}function QHe(t){let e=[];for(let[r,i]of wp(t.packageRegistry,([n])=>n===null?"0":`1${n}`)){let n=[];e.push([r,n]);for(let[s,{packageLocation:o,packageDependencies:a,packagePeers:l,linkType:c,discardFromLookup:u}]of wp(i,([g])=>g===null?"0":`1${g}`)){let g=[];r!==null&&s!==null&&!a.has(r)&&g.push([r,s]);for(let[p,m]of wp(a.entries(),([I])=>I))g.push([p,m]);let h=l&&l.size>0?Array.from(l):void 0,f=u||void 0;n.push([s,{packageLocation:o,packageDependencies:g,packagePeers:h,linkType:c,discardFromLookup:f}])}}return e}function Qp(t){return{__info:["This file is automatically generated. Do not touch it, or risk","your modifications being lost. We also recommend you not to read","it either without using the @yarnpkg/pnp package, as the data layout","is entirely unspecified and WILL change from a version to another."],dependencyTreeRoots:t.dependencyTreeRoots,enableTopLevelFallback:t.enableTopLevelFallback||!1,ignorePatternData:t.ignorePattern||null,fallbackExclusionList:BHe(t),fallbackPool:wHe(t),packageRegistryData:QHe(t)}}var Vte=X(Xte());function Zte(t,e){return[t?`${t} +`:"")};var Ba;(function(r){r.HARD="HARD",r.SOFT="SOFT"})(Ba||(Ba={}));var Mi;(function(i){i.WORKSPACES="workspaces",i.DEPENDENCIES="dependencies",i.NONE="none"})(Mi||(Mi={}));var die="node_modules",lB="$wsroot$";var wa=(t,e)=>{let{packageTree:r,hoistingLimits:i,errors:n,preserveSymlinksRequired:s}=sGe(t,e),o=null;if(n.length===0){let a=hie(r,{hoistingLimits:i});o=oGe(t,a,e)}return{tree:o,errors:n,preserveSymlinksRequired:s}},ws=t=>`${t.name}@${t.reference}`,DF=t=>{let e=new Map;for(let[r,i]of t.entries())if(!i.dirList){let n=e.get(i.locator);n||(n={target:i.target,linkType:i.linkType,locations:[],aliases:i.aliases},e.set(i.locator,n)),n.locations.push(r)}for(let r of e.values())r.locations=r.locations.sort((i,n)=>{let s=i.split(B.delimiter).length,o=n.split(B.delimiter).length;return s!==o?o-s:n.localeCompare(i)});return e},Cie=(t,e)=>{let r=Q.isVirtualLocator(t)?Q.devirtualizeLocator(t):t,i=Q.isVirtualLocator(e)?Q.devirtualizeLocator(e):e;return Q.areLocatorsEqual(r,i)},sGe=(t,e)=>{let r=t.getDependencyTreeRoots(),i=[],n=!1,s=new Map,o=new Map,a=t.getPackageInformation(t.topLevel);if(a===null)throw new Error("Assertion failed: Expected the top-level package to have been registered");let l=t.findPackageLocator(a.packageLocation);if(l===null)throw new Error("Assertion failed: Expected the top-level package to have a physical locator");let c=L.toPortablePath(a.packageLocation),u=ws(l);if(e.project){let I={children:new Map},y=e.project.cwd.split(B.sep);for(let[x,F]of e.project.workspacesByCwd){let N=x.split(B.sep).slice(y.length),K=I;for(let v of N){let J=K.children.get(v);J||(J={children:new Map},K.children.set(v,J)),K=J}K.workspaceLocator={name:Q.stringifyIdent(F.anchoredLocator),reference:F.anchoredLocator.reference}}let w=(x,F)=>{if(x.workspaceLocator){let N=ws(F),K=o.get(N);K||(K=new Set,o.set(N,K)),K.add(x.workspaceLocator)}for(let N of x.children.values())w(N,x.workspaceLocator||F)};for(let x of I.children.values())w(x,I.workspaceLocator)}else for(let I of r)if(I.name!==l.name||I.reference!==l.reference){let y=o.get(u);y||(y=new Set,o.set(u,y)),y.add(I)}let g={name:l.name,identName:l.name,reference:l.reference,peerNames:a.packagePeers,dependencies:new Set},h=new Map,f=(I,y)=>`${ws(y)}:${I}`,p=(I,y)=>{if(I.linkType!==Ba.SOFT||!e.project)return!1;let w=L.toPortablePath(t.resolveVirtual&&y.reference&&y.reference.startsWith("virtual:")?t.resolveVirtual(I.packageLocation):I.packageLocation);return B.contains(e.project.cwd,w)===null},m=(I,y,w,x,F,N,K)=>{var ee,re;let v=f(I,w),J=h.get(v),oe=!!J;if(!oe&&w.name===l.name&&w.reference===l.reference&&(J=g,h.set(v,g)),J||(J={name:I,identName:w.name,reference:w.reference,dependencies:new Set,peerNames:y.packagePeers},h.set(v,J)),K&&!p(y,w)){let H=ws({name:x.identName,reference:x.reference}),R=s.get(H)||new Set;s.set(H,R),R.add(J.name)}let T=new Map(y.packageDependencies);if(e.project){let H=e.project.workspacesByCwd.get(L.toPortablePath(y.packageLocation.slice(0,-1)));if(H){let R=new Set([...Array.from(H.manifest.peerDependencies.values(),ke=>Q.stringifyIdent(ke)),...Array.from(H.manifest.peerDependenciesMeta.keys())]);for(let ke of R)T.has(ke)||(T.set(ke,F.get(ke)||null),J.peerNames.add(ke))}}let A=ws(w),W=o.get(A);if(W)for(let H of W)T.set(`${H.name}${lB}`,H.reference);if(x.dependencies.add(J),!oe){let H=new Map;for(let[R,ke]of T)if(ke!==null){let Le=t.getLocator(R,ke),qe=t.getLocator(R.replace(lB,""),ke),Ke=t.getPackageInformation(qe);if(Ke===null)throw new Error("Assertion failed: Expected the package to have been registered");let ie=p(Ke,Le);if(e.validateExternalSoftLinks&&e.project&&ie){Ke.packageDependencies.size>0&&(n=!0);for(let[pe,Qe]of Ke.packageDependencies)if(Qe!==null){let Z=Q.parseLocator(Array.isArray(Qe)?`${Qe[0]}@${Qe[1]}`:`${pe}@${Qe}`);if(ws(Z)!==ws(Le)){let X=T.get(pe);if(X){let ae=Q.parseLocator(Array.isArray(X)?`${X[0]}@${X[1]}`:`${pe}@${X}`);Cie(ae,Z)||i.push({messageName:z.NM_CANT_INSTALL_EXTERNAL_SOFT_LINK,text:`Cannot link ${Q.prettyIdent(e.project.configuration,Q.parseIdent(Le.name))} into ${Q.prettyLocator(e.project.configuration,Q.parseLocator(`${w.name}@${w.reference}`))} dependency ${Q.prettyLocator(e.project.configuration,Z)} conflicts with parent dependency ${Q.prettyLocator(e.project.configuration,ae)}`})}else{let ae=H.get(pe);if(ae){let ue=ae.target,we=Q.parseLocator(Array.isArray(ue)?`${ue[0]}@${ue[1]}`:`${pe}@${ue}`);Cie(we,Z)||i.push({messageName:z.NM_CANT_INSTALL_EXTERNAL_SOFT_LINK,text:`Cannot link ${Q.prettyIdent(e.project.configuration,Q.parseIdent(Le.name))} into ${Q.prettyLocator(e.project.configuration,Q.parseLocator(`${w.name}@${w.reference}`))} dependency ${Q.prettyLocator(e.project.configuration,Z)} conflicts with dependency ${Q.prettyLocator(e.project.configuration,we)} from sibling portal ${Q.prettyIdent(e.project.configuration,Q.parseIdent(ae.portal.name))}`})}else H.set(pe,{target:Z.reference,portal:Le})}}}}let ce=(ee=e.hoistingLimitsByCwd)==null?void 0:ee.get(N),Se=ie?N:B.relative(c,L.toPortablePath(Ke.packageLocation))||Ee.dot,he=(re=e.hoistingLimitsByCwd)==null?void 0:re.get(Se),Ie=ce===Mi.DEPENDENCIES||he===Mi.DEPENDENCIES||he===Mi.WORKSPACES;m(ws(Le)===ws(w)?I:R,Ke,Le,J,T,Se,Ie)}}};return m(l.name,a,l,g,a.packageDependencies,Ee.dot,!1),{packageTree:g,hoistingLimits:s,errors:i,preserveSymlinksRequired:n}};function aGe(t,e,r){let i=e.getLocator(t.name.replace(lB,""),t.reference),n=e.getPackageInformation(i);if(n===null)throw new Error("Assertion failed: Expected the package to be registered");let s,o;if(r.pnpifyFs)o=L.toPortablePath(n.packageLocation),s=Ba.SOFT;else{let a=e.resolveVirtual&&t.reference&&t.reference.startsWith("virtual:")?e.resolveVirtual(n.packageLocation):n.packageLocation;o=L.toPortablePath(a||n.packageLocation),s=n.linkType}return{linkType:s,target:o}}var oGe=(t,e,r)=>{let i=new Map,n=(u,g,h)=>{let{linkType:f,target:p}=aGe(u,t,r);return{locator:ws(u),nodePath:g,target:p,linkType:f,aliases:h}},s=u=>{let[g,h]=u.split("/");return h?{scope:Jt(g),name:Jt(h)}:{scope:null,name:Jt(g)}},o=new Set,a=(u,g,h)=>{if(!o.has(u)){o.add(u);for(let f of u.dependencies){if(f===u)continue;let p=Array.from(f.references).sort(),m={name:f.identName,reference:p[0]},{name:I,scope:y}=s(f.name),w=y?[y,I]:[I],x=B.join(g,die),F=B.join(x,...w),N=`${h}/${m.name}`,K=n(m,h,p.slice(1));if(!f.name.endsWith(lB)){let v=i.get(F);if(v){if(v.dirList)throw new Error(`Assertion failed: ${F} cannot merge dir node with leaf node`);{let A=Q.parseLocator(v.locator),W=Q.parseLocator(K.locator);if(v.linkType!==K.linkType)throw new Error(`Assertion failed: ${F} cannot merge nodes with different link types ${v.nodePath}/${Q.stringifyLocator(A)} and ${h}/${Q.stringifyLocator(W)}`);if(A.identHash!==W.identHash)throw new Error(`Assertion failed: ${F} cannot merge nodes with different idents ${v.nodePath}/${Q.stringifyLocator(A)} and ${h}/s${Q.stringifyLocator(W)}`);K.aliases=[...K.aliases,...v.aliases,Q.parseLocator(v.locator).reference]}}i.set(F,K);let J=F.split("/"),oe=J.indexOf(die),T=J.length-1;for(;oe>=0&&T>oe;){let A=L.toPortablePath(J.slice(0,T).join(B.sep)),W=Jt(J[T]),ee=i.get(A);if(!ee)i.set(A,{dirList:new Set([W])});else if(ee.dirList){if(ee.dirList.has(W))break;ee.dirList.add(W)}T--}}a(f,K.linkType===Ba.SOFT?K.target:F,N)}}},l=n({name:e.name,reference:Array.from(e.references)[0]},"",[]),c=l.target;return i.set(c,l),a(e,c,""),i};var fl=eval("require");function mie(path){let physicalPath=L.fromPortablePath(path),currentCacheEntry=fl.cache[physicalPath];delete fl.cache[physicalPath];let result;try{result=fl(physicalPath);let freshCacheEntry=fl.cache[physicalPath],dynamicModule=eval("module"),freshCacheIndex=dynamicModule.children.indexOf(freshCacheEntry);freshCacheIndex!==-1&&dynamicModule.children.splice(freshCacheIndex,1)}finally{fl.cache[physicalPath]=currentCacheEntry}return result}var Iie="node_modules",SF=(t,e)=>{let r={resolvedPath:t},i=t.split(B.sep),n=i.indexOf(Iie);if(n<0)return r;let s=i.lastIndexOf(Iie);typeof i[s+1]!="undefined"&&s++,i[s][0]==="@"&&typeof i[s+1]!="undefined"&&s++;let o=L.toPortablePath(i.slice(0,n).join(B.sep)),a,l,c,u=n,g=Ee.dot;for(;u<=s;){let h=Jt(i[u]);o=B.join(o,h),a=e.get(o),a?(a.linkType===Ba.SOFT&&(o=a.target),l=a,g=Ee.dot,c=a.dirList?o:a.target):g=B.join(g,h),u++}return g=B.join(g,...i.slice(s+1).map(h=>Jt(h))),l&&(!l.dirList||g!==Ee.dot?(r.resolvedPath=B.join(c,g),r.isSymlink=l&&l.linkType===Ba.SOFT&&g===Ee.dot):g===Ee.dot&&(r.dirList=l.dirList,r.forwardedDirPath=L.toPortablePath(i.slice(0,n).join(B.sep)),r.forwardedDirPath.endsWith(".zip")&&(r.forwardedDirPath=B.dirname(r.forwardedDirPath)))),r};var xF=class extends pr{constructor(e,{realFs:r=Eie.default,pnpifyFs:i=!0}={}){super(L);this.baseFs=new sd(e,{baseFs:new wt(r),pnpifyFs:i})}mapFromBase(e){return L.fromPortablePath(e)}mapToBase(e){return L.toPortablePath(e)}},yie=/[+wa]/,sd=class extends kn{constructor(e,{baseFs:r=new wt,pnpifyFs:i=!0}={}){super(B);if(!e.getDependencyTreeRoots)throw new Error("NodeModulesFS supports PnP API versions 3+, please upgrade your PnP API provider");this.options={baseFs:r,pnpifyFs:i},this.baseFs=r;let{tree:n,errors:s}=wa(e,this.options);if(!n)throw new Error(`Assertion failed. Have got non-persistable node_modules graph, errors: +${JSON.stringify(s)}`);this.nodeModulesTree=n,this.watchManager=new yF;let o=L.toPortablePath(e.getPackageInformation(e.topLevel).packageLocation);this.pnpFilePath=B.join(o,mt.pnpCjs),this.watchPnpFile(o)}watchPnpFile(e){this.baseFs.watch(e,{persistent:!1},(r,i)=>{if(i===mt.pnpCjs){let n=mie(this.pnpFilePath);if(!wa(n,this.options))throw new Error("Assertion failed. Have got non-persistable node_modules graph");this.watchManager.notifyWatchers(o=>SF(o,this.nodeModulesTree))}})}persistPath(e){let r=[],i=e;for(;!this.baseFs.existsSync(i);)r.push(i),i=B.dirname(i);for(let n of r.reverse())this.baseFs.mkdirSync(n)}persistVirtualParentFolder(e){if(typeof e!="number"){let r=this.resolvePath(B.dirname(e));r.dirList&&this.persistPath(r.resolvedPath)}}getExtractHint(e){return this.baseFs.getExtractHint(e)}resolve(e){return this.baseFs.resolve(this.resolvePath(e).resolvedPath)}getBaseFs(){return this.baseFs}resolvePath(e){if(typeof e=="number")return{resolvedPath:e,fullOriginalPath:e};{let r=this.pathUtils.resolve(e);return V(k({},SF(r,this.nodeModulesTree)),{fullOriginalPath:r})}}resolveFilePath(e){return typeof e=="number"?e:this.resolvePath(e).resolvedPath}resolveDirOrFilePath(e){if(typeof e=="number")return e;let r=this.resolvePath(e);return r.forwardedDirPath||r.resolvedPath}resolveLink(e){let{p:r,onSymlink:i,onRealPath:n,statOptions:s}=e,o=this.resolvePath(r);if(o.isSymlink){let a;try{a=this.baseFs.lstatSync(o.resolvedPath,s)}catch(l){}if(a)return i(a,this.pathUtils.relative(this.pathUtils.dirname(o.fullOriginalPath),o.resolvedPath))}return n(o.forwardedDirPath||o.resolvedPath)}static makeSymlinkStats(e){return Object.assign(e,{isFile:()=>!1,isDirectory:()=>!1,isSymbolicLink:()=>!0})}getRealPath(){return this.baseFs.getRealPath()}async openPromise(e,r,i){return yie.test(r)&&this.persistVirtualParentFolder(e),await this.baseFs.openPromise(this.resolveFilePath(e),r,i)}openSync(e,r,i){return yie.test(r)&&this.persistVirtualParentFolder(e),this.baseFs.openSync(this.resolveFilePath(e),r,i)}async opendirPromise(e,r){let i=this.resolvePath(e);if(i.dirList||this.resolvePath(B.join(e,"node_modules")).dirList){let n=[];try{n=await this.baseFs.readdirPromise(i.resolvedPath)}catch(o){}let s=Array.from(i.dirList||["node_modules"]).concat(n).sort();return Ga(this,e,s)}else return await this.baseFs.opendirPromise(i.resolvedPath,r)}opendirSync(e,r){let i=this.resolvePath(e);if(i.dirList||this.resolvePath(B.join(e,"node_modules")).dirList){let n=[];try{n=this.baseFs.readdirSync(i.resolvedPath)}catch(o){}let s=Array.from(i.dirList||["node_modules"]).concat(n).sort();return Ga(this,e,s)}else return this.baseFs.opendirSync(i.resolvedPath,r)}async readPromise(e,r,i,n,s){return await this.baseFs.readPromise(e,r,i,n,s)}readSync(e,r,i,n,s){return this.baseFs.readSync(e,r,i,n,s)}async writePromise(e,r,i,n,s){return typeof r=="string"?await this.baseFs.writePromise(e,r,i):await this.baseFs.writePromise(e,r,i,n,s)}writeSync(e,r,i,n,s){return typeof r=="string"?this.baseFs.writeSync(e,r,i):this.baseFs.writeSync(e,r,i,n,s)}async closePromise(e){await this.baseFs.closePromise(e)}closeSync(e){this.baseFs.closeSync(e)}createReadStream(e,r){return this.baseFs.createReadStream(e!==null?this.resolveFilePath(e):e,r)}createWriteStream(e,r){return this.baseFs.createWriteStream(e!==null?this.resolveDirOrFilePath(e):e,r)}async realpathPromise(e){let r=this.resolvePath(e);return r.dirList?r.resolvedPath:this.baseFs.realpathPromise(r.resolvedPath)}realpathSync(e){let r=this.resolvePath(e);return r.dirList?r.resolvedPath:this.baseFs.realpathSync(r.resolvedPath)}async existsPromise(e){let r=this.resolvePath(e);return r.dirList?!0:await this.baseFs.existsPromise(r.resolvedPath)}existsSync(e){let r=this.resolvePath(e);return r.dirList?!0:this.baseFs.existsSync(r.resolvedPath)}async accessPromise(e,r){return await this.baseFs.accessPromise(this.resolveDirOrFilePath(e),r)}accessSync(e,r){return this.baseFs.accessSync(this.resolveDirOrFilePath(e),r)}async statPromise(e,r){return await this.baseFs.statPromise(this.resolveDirOrFilePath(e),r)}statSync(e,r){return this.baseFs.statSync(this.resolveDirOrFilePath(e),r)}async fstatPromise(e,r){return await this.baseFs.fstatPromise(e,r)}fstatSync(e,r){return this.baseFs.fstatSync(e,r)}async lstatPromise(e,r){return this.resolveLink({p:e,op:"lstat",onSymlink:i=>sd.makeSymlinkStats(i),onRealPath:async i=>await this.baseFs.lstatPromise(i,r),statOptions:r})}lstatSync(e,r){return this.resolveLink({p:e,op:"lstat",onSymlink:i=>sd.makeSymlinkStats(i),onRealPath:i=>this.baseFs.lstatSync(i,r),statOptions:r})}async chmodPromise(e,r){return await this.baseFs.chmodPromise(this.resolveDirOrFilePath(e),r)}chmodSync(e,r){return this.baseFs.chmodSync(this.resolveDirOrFilePath(e),r)}async chownPromise(e,r,i){return await this.baseFs.chownPromise(this.resolveDirOrFilePath(e),r,i)}chownSync(e,r,i){return this.baseFs.chownSync(this.resolveDirOrFilePath(e),r,i)}async renamePromise(e,r){return await this.baseFs.renamePromise(this.resolveDirOrFilePath(e),this.resolveDirOrFilePath(r))}renameSync(e,r){return this.baseFs.renameSync(this.resolveDirOrFilePath(e),this.resolveDirOrFilePath(r))}async copyFilePromise(e,r,i){return await this.baseFs.copyFilePromise(this.resolveFilePath(e),this.resolveDirOrFilePath(r),i)}copyFileSync(e,r,i){return this.baseFs.copyFileSync(this.resolveFilePath(e),this.resolveDirOrFilePath(r),i)}async appendFilePromise(e,r,i){return await this.baseFs.appendFilePromise(this.resolveDirOrFilePath(e),r,i)}appendFileSync(e,r,i){return this.baseFs.appendFileSync(this.resolveDirOrFilePath(e),r,i)}async writeFilePromise(e,r,i){return await this.baseFs.writeFilePromise(this.resolveDirOrFilePath(e),r,i)}writeFileSync(e,r,i){return this.baseFs.writeFileSync(this.resolveDirOrFilePath(e),r,i)}async unlinkPromise(e){return await this.baseFs.unlinkPromise(this.resolveDirOrFilePath(e))}unlinkSync(e){return this.baseFs.unlinkSync(this.resolveDirOrFilePath(e))}async utimesPromise(e,r,i){return await this.baseFs.utimesPromise(this.resolveDirOrFilePath(e),r,i)}utimesSync(e,r,i){return this.baseFs.utimesSync(this.resolveDirOrFilePath(e),r,i)}async mkdirPromise(e,r){let i=this.resolvePath(e);return this.persistVirtualParentFolder(e),this.baseFs.mkdirPromise(i.resolvedPath,r)}mkdirSync(e,r){let i=this.resolvePath(e);return this.persistVirtualParentFolder(e),this.baseFs.mkdirSync(i.resolvedPath,r)}async rmdirPromise(e,r){return await this.baseFs.rmdirPromise(this.resolveDirOrFilePath(e),r)}rmdirSync(e,r){return this.baseFs.rmdirSync(this.resolveDirOrFilePath(e),r)}async linkPromise(e,r){return await this.baseFs.linkPromise(this.resolveDirOrFilePath(e),this.resolveDirOrFilePath(r))}linkSync(e,r){return this.baseFs.linkSync(this.resolveDirOrFilePath(e),this.resolveDirOrFilePath(r))}async symlinkPromise(e,r){return await this.baseFs.symlinkPromise(this.resolveDirOrFilePath(e),this.resolveDirOrFilePath(r))}symlinkSync(e,r){return this.baseFs.symlinkSync(this.resolveDirOrFilePath(e),this.resolveDirOrFilePath(r))}async readFilePromise(e,r){switch(r){case"utf8":return await this.baseFs.readFilePromise(this.resolveFilePath(e),r);default:return await this.baseFs.readFilePromise(this.resolveFilePath(e),r)}}readFileSync(e,r){switch(r){case"utf8":return this.baseFs.readFileSync(this.resolveFilePath(e),r);default:return this.baseFs.readFileSync(this.resolveFilePath(e),r)}}async readdirPromise(e,{withFileTypes:r}={}){let i=this.resolvePath(e);if(i.dirList||this.resolvePath(B.join(e,"node_modules")).dirList){let n=[];try{n=await this.baseFs.readdirPromise(i.resolvedPath)}catch(o){}let s=Array.from(i.dirList||["node_modules"]).concat(n).sort();return r?s.map(o=>Object.assign(this.lstatSync(B.join(e,o)),{name:o})):s}else return await this.baseFs.readdirPromise(i.resolvedPath,{withFileTypes:r})}readdirSync(e,{withFileTypes:r}={}){let i=this.resolvePath(e);if(i.dirList||this.resolvePath(B.join(e,"node_modules")).dirList){let n=[];try{n=this.baseFs.readdirSync(i.resolvedPath)}catch(o){}let s=Array.from(i.dirList||["node_modules"]).concat(n).sort();return r?s.map(o=>Object.assign(this.lstatSync(B.join(e,o)),{name:o})):s}else return this.baseFs.readdirSync(i.resolvedPath,{withFileTypes:r})}async readlinkPromise(e){return this.resolveLink({p:e,op:"readlink",onSymlink:(r,i)=>i,onRealPath:async r=>await this.baseFs.readlinkPromise(this.resolveDirOrFilePath(r))})}readlinkSync(e){return this.resolveLink({p:e,op:"readlink",onSymlink:(r,i)=>i,onRealPath:r=>this.baseFs.readlinkSync(this.resolveDirOrFilePath(r))})}async truncatePromise(e,r){return await this.baseFs.truncatePromise(this.resolveDirOrFilePath(e),r)}truncateSync(e,r){return this.baseFs.truncateSync(this.resolveDirOrFilePath(e),r)}watch(e,r,i){let n=this.resolvePath(e),s=n.resolvedPath;if(s&&n.dirList){let o=typeof r=="function"?r:typeof i=="function"?i:()=>{};return this.watchManager.registerWatcher(s,n.dirList,o)}else return this.baseFs.watch(this.resolveDirOrFilePath(e),r,i)}watchFile(e,r,i){return this.baseFs.watchFile(this.resolveDirOrFilePath(e),r,i)}unwatchFile(e,r){return this.baseFs.unwatchFile(this.resolveDirOrFilePath(e),r)}};var Bie=!1,kF;try{kF=fl("pnpapi")}catch(t){}var AGe=()=>{if(kF&&!Bie){let t=k({},PF.default),e=new xF(kF,{realFs:t});Rg(PF.default,e),Bie=!0}};process.mainModule||AGe();var UF={};$e(UF,{PnpInstaller:()=>Ku,PnpLinker:()=>Cl,default:()=>PGe,getPnpPath:()=>ba,jsInstallUtils:()=>Qa,pnpUtils:()=>KF,quotePathIfNeeded:()=>Gie});var Yie=te(Cr());var wie;(function(r){r.HARD="HARD",r.SOFT="SOFT"})(wie||(wie={}));var St;(function(h){h.DEFAULT="DEFAULT",h.TOP_LEVEL="TOP_LEVEL",h.FALLBACK_EXCLUSION_LIST="FALLBACK_EXCLUSION_LIST",h.FALLBACK_EXCLUSION_ENTRIES="FALLBACK_EXCLUSION_ENTRIES",h.FALLBACK_EXCLUSION_DATA="FALLBACK_EXCLUSION_DATA",h.PACKAGE_REGISTRY_DATA="PACKAGE_REGISTRY_DATA",h.PACKAGE_REGISTRY_ENTRIES="PACKAGE_REGISTRY_ENTRIES",h.PACKAGE_STORE_DATA="PACKAGE_STORE_DATA",h.PACKAGE_STORE_ENTRIES="PACKAGE_STORE_ENTRIES",h.PACKAGE_INFORMATION_DATA="PACKAGE_INFORMATION_DATA",h.PACKAGE_DEPENDENCIES="PACKAGE_DEPENDENCIES",h.PACKAGE_DEPENDENCY="PACKAGE_DEPENDENCY"})(St||(St={}));var Qie={[St.DEFAULT]:{collapsed:!1,next:{["*"]:St.DEFAULT}},[St.TOP_LEVEL]:{collapsed:!1,next:{fallbackExclusionList:St.FALLBACK_EXCLUSION_LIST,packageRegistryData:St.PACKAGE_REGISTRY_DATA,["*"]:St.DEFAULT}},[St.FALLBACK_EXCLUSION_LIST]:{collapsed:!1,next:{["*"]:St.FALLBACK_EXCLUSION_ENTRIES}},[St.FALLBACK_EXCLUSION_ENTRIES]:{collapsed:!0,next:{["*"]:St.FALLBACK_EXCLUSION_DATA}},[St.FALLBACK_EXCLUSION_DATA]:{collapsed:!0,next:{["*"]:St.DEFAULT}},[St.PACKAGE_REGISTRY_DATA]:{collapsed:!1,next:{["*"]:St.PACKAGE_REGISTRY_ENTRIES}},[St.PACKAGE_REGISTRY_ENTRIES]:{collapsed:!0,next:{["*"]:St.PACKAGE_STORE_DATA}},[St.PACKAGE_STORE_DATA]:{collapsed:!1,next:{["*"]:St.PACKAGE_STORE_ENTRIES}},[St.PACKAGE_STORE_ENTRIES]:{collapsed:!0,next:{["*"]:St.PACKAGE_INFORMATION_DATA}},[St.PACKAGE_INFORMATION_DATA]:{collapsed:!1,next:{packageDependencies:St.PACKAGE_DEPENDENCIES,["*"]:St.DEFAULT}},[St.PACKAGE_DEPENDENCIES]:{collapsed:!1,next:{["*"]:St.PACKAGE_DEPENDENCY}},[St.PACKAGE_DEPENDENCY]:{collapsed:!0,next:{["*"]:St.DEFAULT}}};function lGe(t,e,r){let i="";i+="[";for(let n=0,s=t.length;ns(o)));let n=r.map((s,o)=>o);return n.sort((s,o)=>{for(let a of i){let l=a[s]a[o]?1:0;if(l!==0)return l}return 0}),n.map(s=>r[s])}function hGe(t){let e=new Map,r=od(t.fallbackExclusionList||[],[({name:i,reference:n})=>i,({name:i,reference:n})=>n]);for(let{name:i,reference:n}of r){let s=e.get(i);typeof s=="undefined"&&e.set(i,s=new Set),s.add(n)}return Array.from(e).map(([i,n])=>[i,Array.from(n)])}function fGe(t){return od(t.fallbackPool||[],([e])=>e)}function pGe(t){let e=[];for(let[r,i]of od(t.packageRegistry,([n])=>n===null?"0":`1${n}`)){let n=[];e.push([r,n]);for(let[s,{packageLocation:o,packageDependencies:a,packagePeers:l,linkType:c,discardFromLookup:u}]of od(i,([g])=>g===null?"0":`1${g}`)){let g=[];r!==null&&s!==null&&!a.has(r)&&g.push([r,s]);for(let[p,m]of od(a.entries(),([I])=>I))g.push([p,m]);let h=l&&l.size>0?Array.from(l):void 0,f=u||void 0;n.push([s,{packageLocation:o,packageDependencies:g,packagePeers:h,linkType:c,discardFromLookup:f}])}}return e}function ad(t){return{__info:["This file is automatically generated. Do not touch it, or risk","your modifications being lost. We also recommend you not to read","it either without using the @yarnpkg/pnp package, as the data layout","is entirely unspecified and WILL change from a version to another."],dependencyTreeRoots:t.dependencyTreeRoots,enableTopLevelFallback:t.enableTopLevelFallback||!1,ignorePatternData:t.ignorePattern||null,fallbackExclusionList:hGe(t),fallbackPool:fGe(t),packageRegistryData:pGe(t)}}var Pie=te(xie());function kie(t,e){return[t?`${t} `:"",`/* eslint-disable */ `,`try { @@ -463,103 +484,107 @@ ${JSON.stringify(s)}`);this.nodeModulesTree=n,this.watchManager=new lv;let o=npa `,`function $$SETUP_STATE(hydrateRuntimeState, basePath) { `,e.replace(/^/gm," "),`} `,` -`,Vte.default()].join("")}function bHe(t){return JSON.stringify(t,null,2)}function DHe(t){return[`return hydrateRuntimeState(${Wte(t)}, {basePath: basePath || __dirname}); -`].join("")}function SHe(t){return[`var path = require('path'); +`,(0,Pie.default)()].join("")}function dGe(t){return JSON.stringify(t,null,2)}function CGe(t){return[`return hydrateRuntimeState(${Die(t)}, {basePath: basePath || __dirname}); +`].join("")}function mGe(t){return[`var path = require('path'); `,`var dataLocation = path.resolve(__dirname, ${JSON.stringify(t)}); `,`return hydrateRuntimeState(require(dataLocation), {basePath: basePath || path.dirname(dataLocation)}); -`].join("")}function _te(t){let e=Qp(t),r=DHe(e);return Zte(t.shebang,r)}function $te(t){let e=Qp(t),r=SHe(t.dataLocation),i=Zte(t.shebang,r);return{dataFile:bHe(e),loaderFile:i}}var ire=X(require("fs")),vHe=X(require("path")),nre=X(require("util"));function yv(t,{basePath:e}){let r=npath.toPortablePath(e),i=w.resolve(r),n=t.ignorePatternData!==null?new RegExp(t.ignorePatternData):null,s=new Map,o=new Map(t.packageRegistryData.map(([g,h])=>[g,new Map(h.map(([f,p])=>{var P;if(g===null!=(f===null))throw new Error("Assertion failed: The name and reference should be null, or neither should");let m=(P=p.discardFromLookup)!=null?P:!1,I={name:g,reference:f},y=s.get(p.packageLocation);y?(y.discardFromLookup=y.discardFromLookup&&m,m||(y.locator=I)):s.set(p.packageLocation,{locator:I,discardFromLookup:m});let B=null;return[f,{packageDependencies:new Map(p.packageDependencies),packagePeers:new Set(p.packagePeers),linkType:p.linkType,discardFromLookup:m,get packageLocation(){return B||(B=w.join(i,p.packageLocation))}}]}))])),a=new Map(t.fallbackExclusionList.map(([g,h])=>[g,new Set(h)])),l=new Map(t.fallbackPool),c=t.dependencyTreeRoots,u=t.enableTopLevelFallback;return{basePath:r,dependencyTreeRoots:c,enableTopLevelFallback:u,fallbackExclusionList:a,fallbackPool:l,ignorePattern:n,packageLocatorsByLocations:s,packageRegistry:o}}var lu=X(require("module")),rre=X(tre()),wv=X(require("util"));var Gt;(function(t){t.API_ERROR="API_ERROR",t.BUILTIN_NODE_RESOLUTION_FAILED="BUILTIN_NODE_RESOLUTION_FAILED",t.MISSING_DEPENDENCY="MISSING_DEPENDENCY",t.MISSING_PEER_DEPENDENCY="MISSING_PEER_DEPENDENCY",t.QUALIFIED_PATH_RESOLUTION_FAILED="QUALIFIED_PATH_RESOLUTION_FAILED",t.INTERNAL="INTERNAL",t.UNDECLARED_DEPENDENCY="UNDECLARED_DEPENDENCY",t.UNSUPPORTED="UNSUPPORTED"})(Gt||(Gt={}));var kHe=new Set([Gt.BUILTIN_NODE_RESOLUTION_FAILED,Gt.MISSING_DEPENDENCY,Gt.MISSING_PEER_DEPENDENCY,Gt.QUALIFIED_PATH_RESOLUTION_FAILED,Gt.UNDECLARED_DEPENDENCY]);function Fr(t,e,r={}){let i=kHe.has(t)?"MODULE_NOT_FOUND":t,n={configurable:!0,writable:!0,enumerable:!1};return Object.defineProperties(new Error(e),{code:{...n,value:i},pnpCode:{...n,value:t},data:{...n,value:r}})}function zA(t){return npath.normalize(npath.fromPortablePath(t))}function Qv(t,e){let r=Number(process.env.PNP_ALWAYS_WARN_ON_FALLBACK)>0,i=Number(process.env.PNP_DEBUG_LEVEL),n=new Set(lu.Module.builtinModules||Object.keys(process.binding("natives"))),s=ee=>n.has(ee)||ee.startsWith("node:"),o=/^(?![a-zA-Z]:[\\/]|\\\\|\.{0,2}(?:\/|$))((?:node:)?(?:@[^/]+\/)?[^/]+)\/*(.*|)$/,a=/^(\/|\.{1,2}(\/|$))/,l=/\/$/,c=/^\.{0,2}\//,u={name:null,reference:null},g=[],h=new Set;if(t.enableTopLevelFallback===!0&&g.push(u),e.compatibilityMode!==!1)for(let ee of["react-scripts","gatsby"]){let ne=t.packageRegistry.get(ee);if(ne)for(let Ee of ne.keys()){if(Ee===null)throw new Error("Assertion failed: This reference shouldn't be null");g.push({name:ee,reference:Ee})}}let{ignorePattern:f,packageRegistry:p,packageLocatorsByLocations:m}=t;function I(ee,ne){return{fn:ee,args:ne,error:null,result:null}}function y(ee){var ue,De,z,W,ie,ae;let ne=(z=(De=(ue=process.stderr)==null?void 0:ue.hasColors)==null?void 0:De.call(ue))!=null?z:process.stdout.isTTY,Ee=(me,ot)=>`[${me}m${ot}`;ee.error?console.error(Ee("31;1",`\u2716 ${(W=ee.error)==null?void 0:W.message.replace(/\n.*/s,"")}`)):console.error(Ee("33;1","\u203C Resolution")),ee.args.length>0&&console.error();for(let me of ee.args)console.error(` ${Ee("37;1","In \u2190")} ${wv.inspect(me,{colors:ne,compact:!0})}`);ee.result&&(console.error(),console.error(` ${Ee("37;1","Out \u2192")} ${wv.inspect(ee.result,{colors:ne,compact:!0})}`));let fe=(ae=(ie=new Error().stack.match(/(?<=^ +)at.*/gm))==null?void 0:ie.slice(2))!=null?ae:[];if(fe.length>0){console.error();for(let me of fe)console.error(` ${Ee("38;5;244",me)}`)}console.error()}function B(ee,ne){if(e.allowDebug===!1)return ne;if(Number.isFinite(i)){if(i>=2)return(...Ee)=>{let le=I(ee,Ee);try{return le.result=ne(...Ee)}catch(fe){throw le.error=fe}finally{y(le)}};if(i>=1)return(...Ee)=>{try{return ne(...Ee)}catch(le){let fe=I(ee,Ee);throw fe.error=le,y(fe),le}}}return ne}function P(ee){let ne=q(ee);if(!ne)throw Fr(Gt.INTERNAL,"Couldn't find a matching entry in the dependency tree for the specified parent (this is probably an internal error)");return ne}function k(ee){if(ee.name===null)return!0;for(let ne of t.dependencyTreeRoots)if(ne.name===ee.name&&ne.reference===ee.reference)return!0;return!1}function N(ee){let ne=T(w.join(ee,"internal.js"),{resolveIgnored:!0,includeDiscardFromLookup:!0});if(ne===null)throw Fr(Gt.INTERNAL,`The locator that owns the "${ee}" path can't be found inside the dependency tree (this is probably an internal error)`);let{packageLocation:Ee}=P(ne),le=w.join(Ee,ft.manifest);if(!e.fakeFs.existsSync(le))return null;let fe=JSON.parse(e.fakeFs.readFileSync(le,"utf8")),ue=w.contains(Ee,ee);if(ue===null)throw Fr(Gt.INTERNAL,"unqualifiedPath doesn't contain the packageLocation (this is probably an internal error)");c.test(ue)||(ue=`./${ue}`);let De=rre.resolve(fe,w.normalize(ue),{browser:!1,require:!0,conditions:[]});return typeof De=="string"?w.join(Ee,De):null}function O(ee,ne,{extensions:Ee}){let le;try{ne.push(ee),le=e.fakeFs.statSync(ee)}catch(fe){}if(le&&!le.isDirectory())return e.fakeFs.realpathSync(ee);if(le&&le.isDirectory()){let fe;try{fe=JSON.parse(e.fakeFs.readFileSync(w.join(ee,ft.manifest),"utf8"))}catch(De){}let ue;if(fe&&fe.main&&(ue=w.resolve(ee,fe.main)),ue&&ue!==ee){let De=O(ue,ne,{extensions:Ee});if(De!==null)return De}}for(let fe=0,ue=Ee.length;fe{let z=JSON.stringify(De.name);if(le.has(z))return;le.add(z);let W=Z(De);for(let ie of W)if(P(ie).packagePeers.has(ee))fe(ie);else{let me=Ee.get(ie.name);typeof me=="undefined"&&Ee.set(ie.name,me=new Set),me.add(ie.reference)}};fe(ne);let ue=[];for(let De of[...Ee.keys()].sort())for(let z of[...Ee.get(De)].sort())ue.push({name:De,reference:z});return ue}function T(ee,{resolveIgnored:ne=!1,includeDiscardFromLookup:Ee=!1}={}){if(re(ee)&&!ne)return null;let le=w.relative(t.basePath,ee);le.match(a)||(le=`./${le}`),le.endsWith("/")||(le=`${le}/`);do{let fe=m.get(le);if(typeof fe=="undefined"||fe.discardFromLookup&&!Ee){le=le.substring(0,le.lastIndexOf("/",le.length-2)+1);continue}return fe.locator}while(le!=="");return null}function G(ee,ne,{considerBuiltins:Ee=!0}={}){if(ee==="pnpapi")return npath.toPortablePath(e.pnpapiResolution);if(Ee&&s(ee))return null;let le=zA(ee),fe=ne&&zA(ne);if(ne&&re(ne)&&(!w.isAbsolute(ee)||T(ee)===null)){let z=U(ee,ne);if(z===!1)throw Fr(Gt.BUILTIN_NODE_RESOLUTION_FAILED,`The builtin node resolution algorithm was unable to resolve the requested module (it didn't go through the pnp resolver because the issuer was explicitely ignored by the regexp) +`].join("")}function vie(t){let e=ad(t),r=CGe(e);return kie(t.shebang,r)}function Fie(t){let e=ad(t),r=mGe(t.dataLocation),i=kie(t.shebang,r);return{dataFile:dGe(e),loaderFile:i}}var Mie=te(require("fs")),BGe=te(require("path")),Oie=te(require("util"));function FF(t,{basePath:e}){let r=L.toPortablePath(e),i=B.resolve(r),n=t.ignorePatternData!==null?new RegExp(t.ignorePatternData):null,s=new Map,o=new Map(t.packageRegistryData.map(([g,h])=>[g,new Map(h.map(([f,p])=>{var x;if(g===null!=(f===null))throw new Error("Assertion failed: The name and reference should be null, or neither should");let m=(x=p.discardFromLookup)!=null?x:!1,I={name:g,reference:f},y=s.get(p.packageLocation);y?(y.discardFromLookup=y.discardFromLookup&&m,m||(y.locator=I)):s.set(p.packageLocation,{locator:I,discardFromLookup:m});let w=null;return[f,{packageDependencies:new Map(p.packageDependencies),packagePeers:new Set(p.packagePeers),linkType:p.linkType,discardFromLookup:m,get packageLocation(){return w||(w=B.join(i,p.packageLocation))}}]}))])),a=new Map(t.fallbackExclusionList.map(([g,h])=>[g,new Set(h)])),l=new Map(t.fallbackPool),c=t.dependencyTreeRoots,u=t.enableTopLevelFallback;return{basePath:r,dependencyTreeRoots:c,enableTopLevelFallback:u,fallbackExclusionList:a,fallbackPool:l,ignorePattern:n,packageLocatorsByLocations:s,packageRegistry:o}}var Ou=te(require("module")),Nie=te(Lie()),LF=te(require("util"));var jt;(function(l){l.API_ERROR="API_ERROR",l.BUILTIN_NODE_RESOLUTION_FAILED="BUILTIN_NODE_RESOLUTION_FAILED",l.MISSING_DEPENDENCY="MISSING_DEPENDENCY",l.MISSING_PEER_DEPENDENCY="MISSING_PEER_DEPENDENCY",l.QUALIFIED_PATH_RESOLUTION_FAILED="QUALIFIED_PATH_RESOLUTION_FAILED",l.INTERNAL="INTERNAL",l.UNDECLARED_DEPENDENCY="UNDECLARED_DEPENDENCY",l.UNSUPPORTED="UNSUPPORTED"})(jt||(jt={}));var yGe=new Set([jt.BUILTIN_NODE_RESOLUTION_FAILED,jt.MISSING_DEPENDENCY,jt.MISSING_PEER_DEPENDENCY,jt.QUALIFIED_PATH_RESOLUTION_FAILED,jt.UNDECLARED_DEPENDENCY]);function Fr(t,e,r={}){let i=yGe.has(t)?"MODULE_NOT_FOUND":t,n={configurable:!0,writable:!0,enumerable:!1};return Object.defineProperties(new Error(e),{code:V(k({},n),{value:i}),pnpCode:V(k({},n),{value:t}),data:V(k({},n),{value:r})})}function dl(t){return L.normalize(L.fromPortablePath(t))}function NF(t,e){let r=Number(process.env.PNP_ALWAYS_WARN_ON_FALLBACK)>0,i=Number(process.env.PNP_DEBUG_LEVEL),n=new Set(Ou.Module.builtinModules||Object.keys(process.binding("natives"))),s=ie=>n.has(ie)||ie.startsWith("node:"),o=/^(?![a-zA-Z]:[\\/]|\\\\|\.{0,2}(?:\/|$))((?:node:)?(?:@[^/]+\/)?[^/]+)\/*(.*|)$/,a=/^(\/|\.{1,2}(\/|$))/,l=/\/$/,c=/^\.{0,2}\//,u={name:null,reference:null},g=[],h=new Set;if(t.enableTopLevelFallback===!0&&g.push(u),e.compatibilityMode!==!1)for(let ie of["react-scripts","gatsby"]){let ce=t.packageRegistry.get(ie);if(ce)for(let Se of ce.keys()){if(Se===null)throw new Error("Assertion failed: This reference shouldn't be null");g.push({name:ie,reference:Se})}}let{ignorePattern:f,packageRegistry:p,packageLocatorsByLocations:m}=t;function I(ie,ce){return{fn:ie,args:ce,error:null,result:null}}function y(ie){var pe,Qe,Z,X,ae,ue;let ce=(Z=(Qe=(pe=process.stderr)==null?void 0:pe.hasColors)==null?void 0:Qe.call(pe))!=null?Z:process.stdout.isTTY,Se=(we,lt)=>`[${we}m${lt}`,he=ie.error;console.error(he?Se("31;1",`\u2716 ${(X=ie.error)==null?void 0:X.message.replace(/\n.*/s,"")}`):Se("33;1","\u203C Resolution")),ie.args.length>0&&console.error();for(let we of ie.args)console.error(` ${Se("37;1","In \u2190")} ${(0,LF.inspect)(we,{colors:ce,compact:!0})}`);ie.result&&(console.error(),console.error(` ${Se("37;1","Out \u2192")} ${(0,LF.inspect)(ie.result,{colors:ce,compact:!0})}`));let Ie=(ue=(ae=new Error().stack.match(/(?<=^ +)at.*/gm))==null?void 0:ae.slice(2))!=null?ue:[];if(Ie.length>0){console.error();for(let we of Ie)console.error(` ${Se("38;5;244",we)}`)}console.error()}function w(ie,ce){if(e.allowDebug===!1)return ce;if(Number.isFinite(i)){if(i>=2)return(...Se)=>{let he=I(ie,Se);try{return he.result=ce(...Se)}catch(Ie){throw he.error=Ie}finally{y(he)}};if(i>=1)return(...Se)=>{try{return ce(...Se)}catch(he){let Ie=I(ie,Se);throw Ie.error=he,y(Ie),he}}}return ce}function x(ie){let ce=W(ie);if(!ce)throw Fr(jt.INTERNAL,"Couldn't find a matching entry in the dependency tree for the specified parent (this is probably an internal error)");return ce}function F(ie){if(ie.name===null)return!0;for(let ce of t.dependencyTreeRoots)if(ce.name===ie.name&&ce.reference===ie.reference)return!0;return!1}function N(ie){let ce=H(B.join(ie,"internal.js"),{resolveIgnored:!0,includeDiscardFromLookup:!0});if(ce===null)throw Fr(jt.INTERNAL,`The locator that owns the "${ie}" path can't be found inside the dependency tree (this is probably an internal error)`);let{packageLocation:Se}=x(ce),he=B.join(Se,mt.manifest);if(!e.fakeFs.existsSync(he))return null;let Ie=JSON.parse(e.fakeFs.readFileSync(he,"utf8")),pe=B.contains(Se,ie);if(pe===null)throw Fr(jt.INTERNAL,"unqualifiedPath doesn't contain the packageLocation (this is probably an internal error)");c.test(pe)||(pe=`./${pe}`);let Qe=(0,Nie.resolve)(Ie,B.normalize(pe),{browser:!1,require:!0,conditions:[]});return typeof Qe=="string"?B.join(Se,Qe):null}function K(ie,ce,{extensions:Se}){let he;try{ce.push(ie),he=e.fakeFs.statSync(ie)}catch(Ie){}if(he&&!he.isDirectory())return e.fakeFs.realpathSync(ie);if(he&&he.isDirectory()){let Ie;try{Ie=JSON.parse(e.fakeFs.readFileSync(B.join(ie,mt.manifest),"utf8"))}catch(Qe){}let pe;if(Ie&&Ie.main&&(pe=B.resolve(ie,Ie.main)),pe&&pe!==ie){let Qe=K(pe,ce,{extensions:Se});if(Qe!==null)return Qe}}for(let Ie=0,pe=Se.length;Ie{let Z=JSON.stringify(Qe.name);if(he.has(Z))return;he.add(Z);let X=ee(Qe);for(let ae of X)if(x(ae).packagePeers.has(ie))Ie(ae);else{let we=Se.get(ae.name);typeof we=="undefined"&&Se.set(ae.name,we=new Set),we.add(ae.reference)}};Ie(ce);let pe=[];for(let Qe of[...Se.keys()].sort())for(let Z of[...Se.get(Qe)].sort())pe.push({name:Qe,reference:Z});return pe}function H(ie,{resolveIgnored:ce=!1,includeDiscardFromLookup:Se=!1}={}){if(oe(ie)&&!ce)return null;let he=B.relative(t.basePath,ie);he.match(a)||(he=`./${he}`),he.endsWith("/")||(he=`${he}/`);do{let Ie=m.get(he);if(typeof Ie=="undefined"||Ie.discardFromLookup&&!Se){he=he.substring(0,he.lastIndexOf("/",he.length-2)+1);continue}return Ie.locator}while(he!=="");return null}function R(ie,ce,{considerBuiltins:Se=!0}={}){if(ie==="pnpapi")return L.toPortablePath(e.pnpapiResolution);if(Se&&s(ie))return null;let he=dl(ie),Ie=ce&&dl(ce);if(ce&&oe(ce)&&(!B.isAbsolute(ie)||H(ie)===null)){let Z=J(ie,ce);if(Z===!1)throw Fr(jt.BUILTIN_NODE_RESOLUTION_FAILED,`The builtin node resolution algorithm was unable to resolve the requested module (it didn't go through the pnp resolver because the issuer was explicitely ignored by the regexp) -Require request: "${le}" -Required by: ${fe} -`,{request:le,issuer:fe});return npath.toPortablePath(z)}let ue,De=ee.match(o);if(De){if(!ne)throw Fr(Gt.API_ERROR,"The resolveToUnqualified function must be called with a valid issuer when the path isn't a builtin nor absolute",{request:le,issuer:fe});let[,z,W]=De,ie=T(ne);if(!ie){let Jt=U(ee,ne);if(Jt===!1)throw Fr(Gt.BUILTIN_NODE_RESOLUTION_FAILED,`The builtin node resolution algorithm was unable to resolve the requested module (it didn't go through the pnp resolver because the issuer doesn't seem to be part of the Yarn-managed dependency tree). +Require request: "${he}" +Required by: ${Ie} +`,{request:he,issuer:Ie});return L.toPortablePath(Z)}let pe,Qe=ie.match(o);if(Qe){if(!ce)throw Fr(jt.API_ERROR,"The resolveToUnqualified function must be called with a valid issuer when the path isn't a builtin nor absolute",{request:he,issuer:Ie});let[,Z,X]=Qe,ae=H(ce);if(!ae){let Xt=J(ie,ce);if(Xt===!1)throw Fr(jt.BUILTIN_NODE_RESOLUTION_FAILED,`The builtin node resolution algorithm was unable to resolve the requested module (it didn't go through the pnp resolver because the issuer doesn't seem to be part of the Yarn-managed dependency tree). -Require path: "${le}" -Required by: ${fe} -`,{request:le,issuer:fe});return npath.toPortablePath(Jt)}let me=P(ie).packageDependencies.get(z),ot=null;if(me==null&&ie.name!==null){let Jt=t.fallbackExclusionList.get(ie.name);if(!Jt||!Jt.has(ie.reference)){for(let Tn=0,Ca=g.length;Tnk(Yi))?ct=Fr(Gt.MISSING_PEER_DEPENDENCY,`${ie.name} tried to access ${z} (a peer dependency) but it isn't provided by your application; this makes the require call ambiguous and unsound. +Required package: ${Z}${Z!==he?` (via "${he}")`:""} +Required by: ${Ie} +`,{request:he,issuer:Ie,dependencyName:Z});else{let Xt=re(Z,ae);Xt.every(_i=>F(_i))?Ct=Fr(jt.MISSING_PEER_DEPENDENCY,`${ae.name} tried to access ${Z} (a peer dependency) but it isn't provided by your application; this makes the require call ambiguous and unsound. -Required package: ${z}${z!==le?` (via "${le}")`:""} -Required by: ${ie.name}@${ie.reference} (via ${fe}) -${Jt.map(Yi=>`Ancestor breaking the chain: ${Yi.name}@${Yi.reference} +Required package: ${Z}${Z!==he?` (via "${he}")`:""} +Required by: ${ae.name}@${ae.reference} (via ${Ie}) +${Xt.map(_i=>`Ancestor breaking the chain: ${_i.name}@${_i.reference} `).join("")} -`,{request:le,issuer:fe,issuerLocator:Object.assign({},ie),dependencyName:z,brokenAncestors:Jt}):ct=Fr(Gt.MISSING_PEER_DEPENDENCY,`${ie.name} tried to access ${z} (a peer dependency) but it isn't provided by its ancestors; this makes the require call ambiguous and unsound. +`,{request:he,issuer:Ie,issuerLocator:Object.assign({},ae),dependencyName:Z,brokenAncestors:Xt}):Ct=Fr(jt.MISSING_PEER_DEPENDENCY,`${ae.name} tried to access ${Z} (a peer dependency) but it isn't provided by its ancestors; this makes the require call ambiguous and unsound. -Required package: ${z}${z!==le?` (via "${le}")`:""} -Required by: ${ie.name}@${ie.reference} (via ${fe}) +Required package: ${Z}${Z!==he?` (via "${he}")`:""} +Required by: ${ae.name}@${ae.reference} (via ${Ie}) -${Jt.map(Yi=>`Ancestor breaking the chain: ${Yi.name}@${Yi.reference} +${Xt.map(_i=>`Ancestor breaking the chain: ${_i.name}@${_i.reference} `).join("")} -`,{request:le,issuer:fe,issuerLocator:Object.assign({},ie),dependencyName:z,brokenAncestors:Jt})}else me===void 0&&(!Ee&&s(ee)?k(ie)?ct=Fr(Gt.UNDECLARED_DEPENDENCY,`Your application tried to access ${z}. While this module is usually interpreted as a Node builtin, your resolver is running inside a non-Node resolution context where such builtins are ignored. Since ${z} isn't otherwise declared in your dependencies, this makes the require call ambiguous and unsound. +`,{request:he,issuer:Ie,issuerLocator:Object.assign({},ae),dependencyName:Z,brokenAncestors:Xt})}else we===void 0&&(!Se&&s(ie)?F(ae)?Ct=Fr(jt.UNDECLARED_DEPENDENCY,`Your application tried to access ${Z}. While this module is usually interpreted as a Node builtin, your resolver is running inside a non-Node resolution context where such builtins are ignored. Since ${Z} isn't otherwise declared in your dependencies, this makes the require call ambiguous and unsound. + +Required package: ${Z}${Z!==he?` (via "${he}")`:""} +Required by: ${Ie} +`,{request:he,issuer:Ie,dependencyName:Z}):Ct=Fr(jt.UNDECLARED_DEPENDENCY,`${ae.name} tried to access ${Z}. While this module is usually interpreted as a Node builtin, your resolver is running inside a non-Node resolution context where such builtins are ignored. Since ${Z} isn't otherwise declared in ${ae.name}'s dependencies, this makes the require call ambiguous and unsound. -Required package: ${z}${z!==le?` (via "${le}")`:""} -Required by: ${fe} -`,{request:le,issuer:fe,dependencyName:z}):ct=Fr(Gt.UNDECLARED_DEPENDENCY,`${ie.name} tried to access ${z}. While this module is usually interpreted as a Node builtin, your resolver is running inside a non-Node resolution context where such builtins are ignored. Since ${z} isn't otherwise declared in ${ie.name}'s dependencies, this makes the require call ambiguous and unsound. +Required package: ${Z}${Z!==he?` (via "${he}")`:""} +Required by: ${Ie} +`,{request:he,issuer:Ie,issuerLocator:Object.assign({},ae),dependencyName:Z}):F(ae)?Ct=Fr(jt.UNDECLARED_DEPENDENCY,`Your application tried to access ${Z}, but it isn't declared in your dependencies; this makes the require call ambiguous and unsound. -Required package: ${z}${z!==le?` (via "${le}")`:""} -Required by: ${fe} -`,{request:le,issuer:fe,issuerLocator:Object.assign({},ie),dependencyName:z}):k(ie)?ct=Fr(Gt.UNDECLARED_DEPENDENCY,`Your application tried to access ${z}, but it isn't declared in your dependencies; this makes the require call ambiguous and unsound. +Required package: ${Z}${Z!==he?` (via "${he}")`:""} +Required by: ${Ie} +`,{request:he,issuer:Ie,dependencyName:Z}):Ct=Fr(jt.UNDECLARED_DEPENDENCY,`${ae.name} tried to access ${Z}, but it isn't declared in its dependencies; this makes the require call ambiguous and unsound. -Required package: ${z}${z!==le?` (via "${le}")`:""} -Required by: ${fe} -`,{request:le,issuer:fe,dependencyName:z}):ct=Fr(Gt.UNDECLARED_DEPENDENCY,`${ie.name} tried to access ${z}, but it isn't declared in its dependencies; this makes the require call ambiguous and unsound. +Required package: ${Z}${Z!==he?` (via "${he}")`:""} +Required by: ${ae.name}@${ae.reference} (via ${Ie}) +`,{request:he,issuer:Ie,issuerLocator:Object.assign({},ae),dependencyName:Z}));if(we==null){if(lt===null||Ct===null)throw Ct||new Error("Assertion failed: Expected an error to have been set");we=lt;let Xt=Ct.message.replace(/\n.*/g,"");Ct.message=Xt,!h.has(Xt)&&i!==0&&(h.add(Xt),process.emitWarning(Ct))}let xt=Array.isArray(we)?{name:we[0],reference:we[1]}:{name:Z,reference:we},xn=x(xt);if(!xn.packageLocation)throw Fr(jt.MISSING_DEPENDENCY,`A dependency seems valid but didn't get installed for some reason. This might be caused by a partial install, such as dev vs prod. -Required package: ${z}${z!==le?` (via "${le}")`:""} -Required by: ${ie.name}@${ie.reference} (via ${fe}) -`,{request:le,issuer:fe,issuerLocator:Object.assign({},ie),dependencyName:z}));if(me==null){if(ot===null||ct===null)throw ct||new Error("Assertion failed: Expected an error to have been set");me=ot;let Jt=ct.message.replace(/\n.*/g,"");ct.message=Jt,!h.has(Jt)&&i!==0&&(h.add(Jt),process.emitWarning(ct))}let wt=Array.isArray(me)?{name:me[0],reference:me[1]}:{name:z,reference:me},In=P(wt);if(!In.packageLocation)throw Fr(Gt.MISSING_DEPENDENCY,`A dependency seems valid but didn't get installed for some reason. This might be caused by a partial install, such as dev vs prod. +Required package: ${xt.name}@${xt.reference}${xt.name!==he?` (via "${he}")`:""} +Required by: ${ae.name}@${ae.reference} (via ${Ie}) +`,{request:he,issuer:Ie,dependencyLocator:Object.assign({},xt)});let Ii=xn.packageLocation;X?pe=B.join(Ii,X):pe=Ii}else if(B.isAbsolute(ie))pe=B.normalize(ie);else{if(!ce)throw Fr(jt.API_ERROR,"The resolveToUnqualified function must be called with a valid issuer when the path isn't a builtin nor absolute",{request:he,issuer:Ie});let Z=B.resolve(ce);ce.match(l)?pe=B.normalize(B.join(Z,ie)):pe=B.normalize(B.join(B.dirname(Z),ie))}return B.normalize(pe)}function ke(ie,ce){if(a.test(ie))return ce;let Se=N(ce);return Se?B.normalize(Se):ce}function Le(ie,{extensions:ce=Object.keys(Ou.Module._extensions)}={}){let Se=[],he=K(ie,Se,{extensions:ce});if(he)return B.normalize(he);{let Ie=dl(ie),pe=H(ie);if(pe){let{packageLocation:Qe}=x(pe);if(!e.fakeFs.existsSync(Qe)){let Z=Qe.includes("/unplugged/")?"Required unplugged package missing from disk. This may happen when switching branches without running installs (unplugged packages must be fully materialized on disk to work).":"Required package missing from disk. If you keep your packages inside your repository then restarting the Node process may be enough. Otherwise, try to run an install first.";throw Fr(jt.QUALIFIED_PATH_RESOLUTION_FAILED,`${Z} -Required package: ${wt.name}@${wt.reference}${wt.name!==le?` (via "${le}")`:""} -Required by: ${ie.name}@${ie.reference} (via ${fe}) -`,{request:le,issuer:fe,dependencyLocator:Object.assign({},wt)});let li=In.packageLocation;W?ue=w.join(li,W):ue=li}else if(w.isAbsolute(ee))ue=w.normalize(ee);else{if(!ne)throw Fr(Gt.API_ERROR,"The resolveToUnqualified function must be called with a valid issuer when the path isn't a builtin nor absolute",{request:le,issuer:fe});let z=w.resolve(ne);ne.match(l)?ue=w.normalize(w.join(z,ee)):ue=w.normalize(w.join(w.dirname(z),ee))}return w.normalize(ue)}function Qe(ee,ne){if(a.test(ee))return ne;let Ee=N(ne);return Ee?w.normalize(Ee):ne}function Pe(ee,{extensions:ne=Object.keys(lu.Module._extensions)}={}){let Ee=[],le=O(ee,Ee,{extensions:ne});if(le)return w.normalize(le);{let fe=zA(ee);throw Fr(Gt.QUALIFIED_PATH_RESOLUTION_FAILED,`Qualified path resolution failed - none of those files can be found on the disk. +Missing package: ${pe.name}@${pe.reference} +Expected package location: ${Qe} +`,{unqualifiedPath:Ie})}}throw Fr(jt.QUALIFIED_PATH_RESOLUTION_FAILED,`Qualified path resolution failed - none of those files can be found on the disk. -Source path: ${fe} -${Ee.map(ue=>`Not found: ${zA(ue)} -`).join("")}`,{unqualifiedPath:fe})}}function He(ee,ne,{considerBuiltins:Ee,extensions:le}={}){let fe=G(ee,ne,{considerBuiltins:Ee});if(fe===null)return null;let ue=()=>ne!==null?re(ne):!1,De=(!Ee||!s(ee))&&!ue()?Qe(ee,fe):fe;try{return Pe(De,{extensions:le})}catch(z){throw z.pnpCode==="QUALIFIED_PATH_RESOLUTION_FAILED"&&Object.assign(z.data,{request:zA(ee),issuer:ne&&zA(ne)}),z}}function Re(ee){let ne=w.normalize(ee),Ee=_t.resolveVirtual(ne);return Ee!==ne?Ee:null}return{VERSIONS:F,topLevel:A,getLocator:(ee,ne)=>Array.isArray(ne)?{name:ne[0],reference:ne[1]}:{name:ee,reference:ne},getDependencyTreeRoots:()=>[...t.dependencyTreeRoots],getAllLocators(){let ee=[];for(let[ne,Ee]of p)for(let le of Ee.keys())ne!==null&&le!==null&&ee.push({name:ne,reference:le});return ee},getPackageInformation:ee=>{let ne=q(ee);if(ne===null)return null;let Ee=npath.fromPortablePath(ne.packageLocation);return{...ne,packageLocation:Ee}},findPackageLocator:ee=>T(npath.toPortablePath(ee)),resolveToUnqualified:B("resolveToUnqualified",(ee,ne,Ee)=>{let le=ne!==null?npath.toPortablePath(ne):null,fe=G(npath.toPortablePath(ee),le,Ee);return fe===null?null:npath.fromPortablePath(fe)}),resolveUnqualified:B("resolveUnqualified",(ee,ne)=>npath.fromPortablePath(Pe(npath.toPortablePath(ee),ne))),resolveRequest:B("resolveRequest",(ee,ne,Ee)=>{let le=ne!==null?npath.toPortablePath(ne):null,fe=He(npath.toPortablePath(ee),le,Ee);return fe===null?null:npath.fromPortablePath(fe)}),resolveVirtual:B("resolveVirtual",ee=>{let ne=Re(npath.toPortablePath(ee));return ne!==null?npath.fromPortablePath(ne):null})}}var vpt=nre.promisify(ire.readFile);var sre=(t,e,r)=>{let i=Qp(t),n=yv(i,{basePath:e}),s=npath.join(e,ft.pnpCjs);return Qv(n,{fakeFs:r,pnpapiResolution:s})};var sa={};We(sa,{checkAndReportManifestCompatibility:()=>ore,extractBuildScripts:()=>Iy,getExtractHint:()=>bv,hasBindingGyp:()=>Dv});function ore(t,e,r,{configuration:i,report:n}){return je.isManifestFieldCompatible(e.manifest.os,process.platform)?je.isManifestFieldCompatible(e.manifest.cpu,process.arch)?!0:(n==null||n.reportWarningOnce(J.INCOMPATIBLE_CPU,`${b.prettyLocator(i,t)} The CPU architecture ${process.arch} is incompatible with this module, ${r} skipped.`),!1):(n==null||n.reportWarningOnce(J.INCOMPATIBLE_OS,`${b.prettyLocator(i,t)} The platform ${process.platform} is incompatible with this module, ${r} skipped.`),!1)}function Iy(t,e,r,{configuration:i,report:n}){let s=[];for(let a of["preinstall","install","postinstall"])e.manifest.scripts.has(a)&&s.push([Ki.SCRIPT,a]);return!e.manifest.scripts.has("install")&&e.misc.hasBindingGyp&&s.push([Ki.SHELLCODE,"node-gyp rebuild"]),s.length===0?[]:t.linkType!==nt.HARD?(n==null||n.reportWarningOnce(J.SOFT_LINK_BUILD,`${b.prettyLocator(i,t)} lists build scripts, but is referenced through a soft link. Soft links don't support build scripts, so they'll be ignored.`),[]):r&&r.built===!1?(n==null||n.reportInfoOnce(J.BUILD_DISABLED,`${b.prettyLocator(i,t)} lists build scripts, but its build has been explicitly disabled through configuration.`),[]):!i.get("enableScripts")&&!r.built?(n==null||n.reportWarningOnce(J.DISABLED_BUILD_SCRIPTS,`${b.prettyLocator(i,t)} lists build scripts, but all build scripts have been disabled.`),[]):ore(t,e,"build",{configuration:i,report:n})?s:[]}var FHe=new Set([".exe",".h",".hh",".hpp",".c",".cc",".cpp",".java",".jar",".node"]);function bv(t){return t.packageFs.getExtractHint({relevantExtensions:FHe})}function Dv(t){let e=w.join(t.prefixPath,"binding.gyp");return t.packageFs.existsSync(e)}var Sv={};We(Sv,{getUnpluggedPath:()=>bp});function bp(t,{configuration:e}){return w.resolve(e.get("pnpUnpluggedFolder"),b.slugifyLocator(t))}var RHe=new Set([b.makeIdent(null,"nan").identHash,b.makeIdent(null,"node-gyp").identHash,b.makeIdent(null,"node-pre-gyp").identHash,b.makeIdent(null,"node-addon-api").identHash,b.makeIdent(null,"fsevents").identHash]),VA=class{constructor(){this.mode="strict";this.pnpCache=new Map}supportsPackage(e,r){return!(r.project.configuration.get("nodeLinker")!=="pnp"||r.project.configuration.get("pnpMode")!==this.mode)}async findPackageLocation(e,r){let i=XA(r.project).cjs;if(!R.existsSync(i))throw new UsageError(`The project in ${se.pretty(r.project.configuration,`${r.project.cwd}/package.json`,se.Type.PATH)} doesn't seem to have been installed - running an install there might help`);let n=he.getFactoryWithDefault(this.pnpCache,i,()=>he.dynamicRequireNoCache(i)),s={name:b.stringifyIdent(e),reference:e.reference},o=n.getPackageInformation(s);if(!o)throw new UsageError(`Couldn't find ${b.prettyLocator(r.project.configuration,e)} in the currently installed PnP map - running an install might help`);return npath.toPortablePath(o.packageLocation)}async findPackageLocator(e,r){let i=XA(r.project).cjs;if(!R.existsSync(i))return null;let s=he.getFactoryWithDefault(this.pnpCache,i,()=>he.dynamicRequireNoCache(i)).findPackageLocator(npath.fromPortablePath(e));return s?b.makeLocator(b.parseIdent(s.name),s.reference):null}makeInstaller(e){return new cu(e)}},cu=class{constructor(e){this.opts=e;this.mode="strict";this.packageRegistry=new Map;this.virtualTemplates=new Map;this.customData={store:new Map};this.unpluggedPaths=new Set;this.opts=e}getCustomDataKey(){return JSON.stringify({name:"PnpInstaller",version:1})}attachCustomData(e){this.customData=e}async installPackage(e,r){let i=b.stringifyIdent(e),n=e.reference,s=!!this.opts.project.tryWorkspaceByLocator(e),o=e.peerDependencies.size>0&&!b.isVirtualLocator(e),a=!o&&!s,l=!o&&e.linkType!==nt.SOFT,c=this.customData.store.get(e.locatorHash);typeof c=="undefined"&&(c=await LHe(e,r),e.linkType===nt.HARD&&this.customData.store.set(e.locatorHash,c));let u=this.opts.project.getDependencyMeta(e,e.version),g=a?Iy(e,c,u,{configuration:this.opts.project.configuration,report:this.opts.report}):[],h=l?await this.unplugPackageIfNeeded(e,c,r,u):r.packageFs;if(w.isAbsolute(r.prefixPath))throw new Error(`Assertion failed: Expected the prefix path (${r.prefixPath}) to be relative to the parent`);let f=w.resolve(h.getRealPath(),r.prefixPath),p=Pv(this.opts.project.cwd,f),m=new Map,I=new Set;if(b.isVirtualLocator(e)){for(let y of e.peerDependencies.values())m.set(b.stringifyIdent(y),null),I.add(b.stringifyIdent(y));if(!this.opts.project.tryWorkspaceByLocator(e)){let y=b.devirtualizeLocator(e);this.virtualTemplates.set(y.locatorHash,{location:Pv(this.opts.project.cwd,_t.resolveVirtual(f)),locator:y})}}return he.getMapWithDefault(this.packageRegistry,i).set(n,{packageLocation:p,packageDependencies:m,packagePeers:I,linkType:e.linkType,discardFromLookup:r.discardFromLookup||!1}),{packageLocation:f,buildDirective:g.length>0?g:null}}async attachInternalDependencies(e,r){let i=this.getPackageInformation(e);for(let[n,s]of r){let o=b.areIdentsEqual(n,s)?s.reference:[b.stringifyIdent(s),s.reference];i.packageDependencies.set(b.stringifyIdent(n),o)}}async attachExternalDependents(e,r){for(let i of r)this.getDiskInformation(i).packageDependencies.set(b.stringifyIdent(e),e.reference)}async finalizeInstall(){for(let{locator:c,location:u}of this.virtualTemplates.values())he.getMapWithDefault(this.packageRegistry,b.stringifyIdent(c)).set(c.reference,{packageLocation:u,packageDependencies:new Map,packagePeers:new Set,linkType:nt.SOFT,discardFromLookup:!1});this.packageRegistry.set(null,new Map([[null,this.getPackageInformation(this.opts.project.topLevelWorkspace.anchoredLocator)]]));let e=this.opts.project.configuration.get("pnpFallbackMode"),r=this.opts.project.workspaces.map(({anchoredLocator:c})=>({name:b.stringifyIdent(c),reference:c.reference})),i=e!=="none",n=[],s=new Map,o=he.buildIgnorePattern([".yarn/sdks/**",...this.opts.project.configuration.get("pnpIgnorePatterns")]),a=this.packageRegistry,l=this.opts.project.configuration.get("pnpShebang");if(e==="dependencies-only")for(let c of this.opts.project.storedPackages.values())this.opts.project.tryWorkspaceByLocator(c)&&n.push({name:b.stringifyIdent(c),reference:c.reference});return await this.finalizeInstallWithPnp({dependencyTreeRoots:r,enableTopLevelFallback:i,fallbackExclusionList:n,fallbackPool:s,ignorePattern:o,packageRegistry:a,shebang:l}),{customData:this.customData}}async transformPnpSettings(e){}async finalizeInstallWithPnp(e){if(this.opts.project.configuration.get("pnpMode")!==this.mode)return;let r=XA(this.opts.project),i=this.opts.project.configuration.get("pnpDataPath");if(R.existsSync(r.cjsLegacy)&&(this.opts.report.reportWarning(J.UNNAMED,`Removing the old ${se.pretty(this.opts.project.configuration,ft.pnpJs,se.Type.PATH)} file. You might need to manually update existing references to reference the new ${se.pretty(this.opts.project.configuration,ft.pnpCjs,se.Type.PATH)} file. If you use PnPify SDKs, you'll have to rerun ${se.pretty(this.opts.project.configuration,"yarn pnpify --sdk",se.Type.CODE)}.`),await R.removePromise(r.cjsLegacy)),this.opts.project.configuration.get("nodeLinker")!=="pnp"){await R.removePromise(r.cjs),await R.removePromise(i);return}let n=await this.locateNodeModules(e.ignorePattern);if(n.length>0){this.opts.report.reportWarning(J.DANGEROUS_NODE_MODULES,"One or more node_modules have been detected and will be removed. This operation may take some time.");for(let o of n)await R.removePromise(o)}if(await this.transformPnpSettings(e),this.opts.project.configuration.get("pnpEnableInlining")){let o=_te(e);await R.changeFilePromise(r.cjs,o,{automaticNewlines:!0}),await R.chmodPromise(r.cjs,493),await R.removePromise(i)}else{let o=w.relative(w.dirname(r.cjs),i),{dataFile:a,loaderFile:l}=$te({...e,dataLocation:o});await R.changeFilePromise(r.cjs,l,{automaticNewlines:!0}),await R.chmodPromise(r.cjs,493),await R.changeFilePromise(i,a,{automaticNewlines:!0}),await R.chmodPromise(i,420)}let s=this.opts.project.configuration.get("pnpUnpluggedFolder");if(this.unpluggedPaths.size===0)await R.removePromise(s);else for(let o of await R.readdirPromise(s)){let a=w.resolve(s,o);this.unpluggedPaths.has(a)||await R.removePromise(a)}}async locateNodeModules(e){let r=[],i=e?new RegExp(e):null;for(let n of this.opts.project.workspaces){let s=w.join(n.cwd,"node_modules");if(i&&i.test(w.relative(this.opts.project.cwd,n.cwd))||!R.existsSync(s))continue;let o=await R.readdirPromise(s,{withFileTypes:!0}),a=o.filter(l=>!l.isDirectory()||l.name===".bin"||!l.name.startsWith("."));if(a.length===o.length)r.push(s);else for(let l of a)r.push(w.join(s,l.name))}return r}async unplugPackageIfNeeded(e,r,i,n){return this.shouldBeUnplugged(e,r,n)?this.unplugPackage(e,i):i.packageFs}shouldBeUnplugged(e,r,i){return typeof i.unplugged!="undefined"?i.unplugged:RHe.has(e.identHash)?!0:r.manifest.preferUnplugged!==null?r.manifest.preferUnplugged:!!(Iy(e,r,i,{configuration:this.opts.project.configuration}).length>0||r.misc.extractHint)}async unplugPackage(e,r){let i=bp(e,{configuration:this.opts.project.configuration});this.unpluggedPaths.add(i);let n=w.join(i,r.prefixPath,".ready");return await R.existsPromise(n)?new Ct(i):(this.opts.project.storedBuildState.delete(e.locatorHash),await R.mkdirPromise(i,{recursive:!0}),await R.copyPromise(i,pe.dot,{baseFs:r.packageFs,overwrite:!1}),await R.writeFilePromise(n,""),new Ct(i))}getPackageInformation(e){let r=b.stringifyIdent(e),i=e.reference,n=this.packageRegistry.get(r);if(!n)throw new Error(`Assertion failed: The package information store should have been available (for ${b.prettyIdent(this.opts.project.configuration,e)})`);let s=n.get(i);if(!s)throw new Error(`Assertion failed: The package information should have been available (for ${b.prettyLocator(this.opts.project.configuration,e)})`);return s}getDiskInformation(e){let r=he.getMapWithDefault(this.packageRegistry,"@@disk"),i=Pv(this.opts.project.cwd,e);return he.getFactoryWithDefault(r,i,()=>({packageLocation:i,packageDependencies:new Map,packagePeers:new Set,linkType:nt.SOFT,discardFromLookup:!1}))}};function Pv(t,e){let r=w.relative(t,e);return r.match(/^\.{0,2}\//)||(r=`./${r}`),r.replace(/\/?$/,"/")}async function LHe(t,e){var n;let r=(n=await je.tryFind(e.prefixPath,{baseFs:e.packageFs}))!=null?n:new je,i=new Set(["preinstall","install","postinstall"]);for(let s of r.scripts.keys())i.has(s)||r.scripts.delete(s);return{manifest:{os:r.os,cpu:r.cpu,scripts:r.scripts,preferUnplugged:r.preferUnplugged},misc:{extractHint:bv(e),hasBindingGyp:Dv(e)}}}var are=X(Qn());var Dp=class extends Ce{constructor(){super(...arguments);this.all=j.Boolean("-A,--all",!1,{description:"Unplug direct dependencies from the entire project"});this.recursive=j.Boolean("-R,--recursive",!1,{description:"Unplug both direct and transitive dependencies"});this.json=j.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"});this.patterns=j.Rest()}async execute(){let e=await oe.find(this.context.cwd,this.context.plugins),{project:r,workspace:i}=await ke.find(e,this.context.cwd),n=await lt.find(e);if(!i)throw new Xe(r.cwd,this.context.cwd);if(e.get("nodeLinker")!=="pnp")throw new UsageError("This command can only be used if the `nodeLinker` option is set to `pnp`");await r.restoreInstallState();let s=new Set(this.patterns),o=this.patterns.map(h=>{let f=b.parseDescriptor(h),p=f.range!=="unknown"?f:b.makeDescriptor(f,"*");if(!St.validRange(p.range))throw new UsageError(`The range of the descriptor patterns must be a valid semver range (${b.prettyDescriptor(e,p)})`);return m=>{let I=b.stringifyIdent(m);return!are.default.isMatch(I,b.stringifyIdent(p))||m.version&&!St.satisfiesWithPrereleases(m.version,p.range)?!1:(s.delete(h),!0)}}),a=()=>{let h=[];for(let f of r.storedPackages.values())!r.tryWorkspaceByLocator(f)&&!b.isVirtualLocator(f)&&o.some(p=>p(f))&&h.push(f);return h},l=h=>{let f=new Set,p=[],m=(I,y)=>{if(!f.has(I.locatorHash)&&(f.add(I.locatorHash),!r.tryWorkspaceByLocator(I)&&o.some(B=>B(I))&&p.push(I),!(y>0&&!this.recursive)))for(let B of I.dependencies.values()){let P=r.storedResolutions.get(B.descriptorHash);if(!P)throw new Error("Assertion failed: The resolution should have been registered");let k=r.storedPackages.get(P);if(!k)throw new Error("Assertion failed: The package should have been registered");m(k,y+1)}};for(let I of h){let y=r.storedPackages.get(I.anchoredLocator.locatorHash);if(!y)throw new Error("Assertion failed: The package should have been registered");m(y,0)}return p},c,u;if(this.all&&this.recursive?(c=a(),u="the project"):this.all?(c=l(r.workspaces),u="any workspace"):(c=l([i]),u="this workspace"),s.size>1)throw new UsageError(`Patterns ${se.prettyList(e,s,se.Type.CODE)} don't match any packages referenced by ${u}`);if(s.size>0)throw new UsageError(`Pattern ${se.prettyList(e,s,se.Type.CODE)} doesn't match any packages referenced by ${u}`);return c=he.sortMap(c,h=>b.stringifyLocator(h)),(await we.start({configuration:e,stdout:this.context.stdout,json:this.json},async h=>{var f;for(let p of c){let m=(f=p.version)!=null?f:"unknown",I=r.topLevelWorkspace.manifest.ensureDependencyMeta(b.makeDescriptor(p,m));I.unplugged=!0,h.reportInfo(J.UNNAMED,`Will unpack ${b.prettyLocator(e,p)} to ${se.pretty(e,bp(p,{configuration:e}),se.Type.PATH)}`),h.reportJson({locator:b.stringifyLocator(p),version:m})}await r.topLevelWorkspace.persistManifest(),h.reportSeparator(),await r.install({cache:n,report:h})})).exitCode()}};Dp.paths=[["unplug"]],Dp.usage=ce.Usage({description:"force the unpacking of a list of packages",details:"\n This command will add the selectors matching the specified patterns to the list of packages that must be unplugged when installed.\n\n A package being unplugged means that instead of being referenced directly through its archive, it will be unpacked at install time in the directory configured via `pnpUnpluggedFolder`. Note that unpacking packages this way is generally not recommended because it'll make it harder to store your packages within the repository. However, it's a good approach to quickly and safely debug some packages, and can even sometimes be required depending on the context (for example when the package contains shellscripts).\n\n Running the command will set a persistent flag inside your top-level `package.json`, in the `dependenciesMeta` field. As such, to undo its effects, you'll need to revert the changes made to the manifest and run `yarn install` to apply the modification.\n\n By default, only direct dependencies from the current workspace are affected. If `-A,--all` is set, direct dependencies from the entire project are affected. Using the `-R,--recursive` flag will affect transitive dependencies as well as direct ones.\n\n This command accepts glob patterns inside the scope and name components (not the range). Make sure to escape the patterns to prevent your own shell from trying to expand them.\n ",examples:[["Unplug the lodash dependency from the active workspace","yarn unplug lodash"],["Unplug all instances of lodash referenced by any workspace","yarn unplug lodash -A"],["Unplug all instances of lodash referenced by the active workspace and its dependencies","yarn unplug lodash -R"],["Unplug all instances of lodash, anywhere","yarn unplug lodash -AR"],["Unplug one specific version of lodash","yarn unplug lodash@1.2.3"],["Unplug all packages with the `@babel` scope","yarn unplug '@babel/*'"],["Unplug all packages (only for testing, not recommended)","yarn unplug -R '*'"]]});var Are=Dp;var XA=t=>({cjs:w.join(t.cwd,ft.pnpCjs),cjsLegacy:w.join(t.cwd,ft.pnpJs)}),cre=t=>/\s/.test(t)?JSON.stringify(t):t;async function MHe(t,e,r){let i=XA(t).cjs,n=`--require ${cre(npath.fromPortablePath(i))}`;if(i.includes(" ")&&lre.default.lt(process.versions.node,"12.0.0"))throw new Error(`Expected the build location to not include spaces when using Node < 12.0.0 (${process.versions.node})`);if(R.existsSync(i)){let s=e.NODE_OPTIONS||"",o=/\s*--require\s+\S*\.pnp\.c?js\s*/g;s=s.replace(o," ").trim(),s=s?`${n} ${s}`:n,e.NODE_OPTIONS=s}}async function NHe(t,e){e(XA(t).cjs),e(t.configuration.get("pnpDataPath")),e(t.configuration.get("pnpUnpluggedFolder"))}var OHe={hooks:{populateYarnPaths:NHe,setupScriptEnvironment:MHe},configuration:{nodeLinker:{description:'The linker used for installing Node packages, one of: "pnp", "node-modules"',type:Ae.STRING,default:"pnp"},pnpMode:{description:"If 'strict', generates standard PnP maps. If 'loose', merges them with the n_m resolution.",type:Ae.STRING,default:"strict"},pnpShebang:{description:"String to prepend to the generated PnP script",type:Ae.STRING,default:"#!/usr/bin/env node"},pnpIgnorePatterns:{description:"Array of glob patterns; files matching them will use the classic resolution",type:Ae.STRING,default:[],isArray:!0},pnpEnableInlining:{description:"If true, the PnP data will be inlined along with the generated loader",type:Ae.BOOLEAN,default:!0},pnpFallbackMode:{description:"If true, the generated PnP loader will follow the top-level fallback rule",type:Ae.STRING,default:"dependencies-only"},pnpUnpluggedFolder:{description:"Folder where the unplugged packages must be stored",type:Ae.ABSOLUTE_PATH,default:"./.yarn/unplugged"},pnpDataPath:{description:"Path of the file where the PnP data (used by the loader) must be written",type:Ae.ABSOLUTE_PATH,default:"./.pnp.data.json"}},linkers:[VA],commands:[Are]},THe=OHe;var dre=X(pre());var Lv=X(require("crypto")),Cre=X(require("fs")),mre=1,br="node_modules",Mv=".bin",Ire=".yarn-state.yml",Si;(function(t){t.CLASSIC="classic",t.HARDLINKS_LOCAL="hardlinks-local",t.HARDLINKS_GLOBAL="hardlinks-global"})(Si||(Si={}));var Nv=class{constructor(){this.installStateCache=new Map}supportsPackage(e,r){return r.project.configuration.get("nodeLinker")==="node-modules"}async findPackageLocation(e,r){let i=r.project.tryWorkspaceByLocator(e);if(i)return i.cwd;let n=await he.getFactoryWithDefault(this.installStateCache,r.project.cwd,async()=>await Ov(r.project,{unrollAliases:!0}));if(n===null)throw new UsageError("Couldn't find the node_modules state file - running an install might help (findPackageLocation)");let s=n.locatorMap.get(b.stringifyLocator(e));if(!s){let a=new UsageError(`Couldn't find ${b.prettyLocator(r.project.configuration,e)} in the currently installed node_modules map - running an install might help`);throw a.code="LOCATOR_NOT_INSTALLED",a}let o=r.project.configuration.startingCwd;return s.locations.find(a=>w.contains(o,a))||s.locations[0]}async findPackageLocator(e,r){let i=await he.getFactoryWithDefault(this.installStateCache,r.project.cwd,async()=>await Ov(r.project,{unrollAliases:!0}));if(i===null)return null;let{locationRoot:n,segments:s}=Ey(w.resolve(e),{skipPrefix:r.project.cwd}),o=i.locationTree.get(n);if(!o)return null;let a=o.locator;for(let l of s){if(o=o.children.get(l),!o)break;a=o.locator||a}return b.parseLocator(a)}makeInstaller(e){return new Ere(e)}},Ere=class{constructor(e){this.opts=e;this.localStore=new Map;this.realLocatorChecksums=new Map;this.customData={store:new Map}}getCustomDataKey(){return JSON.stringify({name:"NodeModulesInstaller",version:1})}attachCustomData(e){this.customData=e}async installPackage(e,r){var u;let i=w.resolve(r.packageFs.getRealPath(),r.prefixPath),n=this.customData.store.get(e.locatorHash);if(typeof n=="undefined"&&(n=await tYe(e,r),e.linkType===nt.HARD&&this.customData.store.set(e.locatorHash,n)),!sa.checkAndReportManifestCompatibility(e,n,"link",{configuration:this.opts.project.configuration,report:this.opts.report}))return{packageLocation:null,buildDirective:null};let s=new Map,o=new Set;s.has(b.stringifyIdent(e))||s.set(b.stringifyIdent(e),e.reference);let a=e;if(b.isVirtualLocator(e)){a=b.devirtualizeLocator(e);for(let g of e.peerDependencies.values())s.set(b.stringifyIdent(g),null),o.add(b.stringifyIdent(g))}let l={packageLocation:`${npath.fromPortablePath(i)}/`,packageDependencies:s,packagePeers:o,linkType:e.linkType,discardFromLookup:(u=r.discardFromLookup)!=null?u:!1};this.localStore.set(e.locatorHash,{pkg:e,customPackageData:n,dependencyMeta:this.opts.project.getDependencyMeta(e,e.version),pnpNode:l});let c=r.checksum?r.checksum.substring(r.checksum.indexOf("/")+1):null;return this.realLocatorChecksums.set(a.locatorHash,c),{packageLocation:i,buildDirective:null}}async attachInternalDependencies(e,r){let i=this.localStore.get(e.locatorHash);if(typeof i=="undefined")throw new Error("Assertion failed: Expected information object to have been registered");for(let[n,s]of r){let o=b.areIdentsEqual(n,s)?s.reference:[b.stringifyIdent(s),s.reference];i.pnpNode.packageDependencies.set(b.stringifyIdent(n),o)}}async attachExternalDependents(e,r){throw new Error("External dependencies haven't been implemented for the node-modules linker")}async finalizeInstall(){if(this.opts.project.configuration.get("nodeLinker")!=="node-modules")return;let e=new _t({baseFs:new Ji({libzip:await ri(),maxOpenFiles:80,readOnlyArchives:!0})}),r=await Ov(this.opts.project),i=this.opts.project.configuration.get("nmMode");(r===null||i!==r.nmMode)&&(this.opts.project.storedBuildState.clear(),r={locatorMap:new Map,binSymlinks:new Map,locationTree:new Map,nmMode:i});let n=new Map(this.opts.project.workspaces.map(g=>{var f,p;let h=this.opts.project.configuration.get("nmHoistingLimits");try{h=he.validateEnum(Di,(p=(f=g.manifest.installConfig)==null?void 0:f.hoistingLimits)!=null?p:h)}catch(m){let I=b.prettyWorkspace(this.opts.project.configuration,g);this.opts.report.reportWarning(J.INVALID_MANIFEST,`${I}: Invalid 'installConfig.hoistingLimits' value. Expected one of ${Object.values(Di).join(", ")}, using default: "${h}"`)}return[g.relativeCwd,h]})),s={VERSIONS:{std:1},topLevel:{name:null,reference:null},getLocator:(g,h)=>Array.isArray(h)?{name:h[0],reference:h[1]}:{name:g,reference:h},getDependencyTreeRoots:()=>this.opts.project.workspaces.map(g=>{let h=g.anchoredLocator;return{name:b.stringifyIdent(g.locator),reference:h.reference}}),getPackageInformation:g=>{let h=g.reference===null?this.opts.project.topLevelWorkspace.anchoredLocator:b.makeLocator(b.parseIdent(g.name),g.reference),f=this.localStore.get(h.locatorHash);if(typeof f=="undefined")throw new Error("Assertion failed: Expected the package reference to have been registered");return f.pnpNode},findPackageLocator:g=>{let h=this.opts.project.tryWorkspaceByCwd(npath.toPortablePath(g));if(h!==null){let f=h.anchoredLocator;return{name:b.stringifyIdent(f),reference:f.reference}}throw new Error("Assertion failed: Unimplemented")},resolveToUnqualified:()=>{throw new Error("Assertion failed: Unimplemented")},resolveUnqualified:()=>{throw new Error("Assertion failed: Unimplemented")},resolveRequest:()=>{throw new Error("Assertion failed: Unimplemented")},resolveVirtual:g=>npath.fromPortablePath(_t.resolveVirtual(npath.toPortablePath(g)))},{tree:o,errors:a,preserveSymlinksRequired:l}=na(s,{pnpifyFs:!1,validateExternalSoftLinks:!0,hoistingLimitsByCwd:n,project:this.opts.project});if(!o){for(let{messageName:g,text:h}of a)this.opts.report.reportError(g,h);return}let c=fv(o);await rYe(r,c,{baseFs:e,project:this.opts.project,report:this.opts.report,realLocatorChecksums:this.realLocatorChecksums,loadManifest:async g=>{let h=b.parseLocator(g),f=this.localStore.get(h.locatorHash);if(typeof f=="undefined")throw new Error("Assertion failed: Expected the slot to exist");return f.customPackageData.manifest}});let u=[];for(let[g,h]of c.entries()){if(yre(g))continue;let f=b.parseLocator(g),p=this.localStore.get(f.locatorHash);if(typeof p=="undefined")throw new Error("Assertion failed: Expected the slot to exist");if(this.opts.project.tryWorkspaceByLocator(p.pkg))continue;let m=sa.extractBuildScripts(p.pkg,p.customPackageData,p.dependencyMeta,{configuration:this.opts.project.configuration,report:this.opts.report});m.length!==0&&u.push({buildLocations:h.locations,locatorHash:f.locatorHash,buildDirective:m})}return l&&this.opts.report.reportWarning(J.NM_PRESERVE_SYMLINKS_REQUIRED,`The application uses portals and that's why ${se.pretty(this.opts.project.configuration,"--preserve-symlinks",se.Type.CODE)} Node option is required for launching it`),{customData:this.customData,records:u}}};async function tYe(t,e){var n;let r=(n=await je.tryFind(e.prefixPath,{baseFs:e.packageFs}))!=null?n:new je,i=new Set(["preinstall","install","postinstall"]);for(let s of r.scripts.keys())i.has(s)||r.scripts.delete(s);return{manifest:{bin:r.bin,os:r.os,cpu:r.cpu,scripts:r.scripts},misc:{extractHint:sa.getExtractHint(e),hasBindingGyp:sa.hasBindingGyp(e)}}}async function iYe(t,e,r,i){let n="";n+=`# Warning: This file is automatically generated. Removing it is fine, but will +Source path: ${Ie} +${Se.map(Qe=>`Not found: ${dl(Qe)} +`).join("")}`,{unqualifiedPath:Ie})}}function qe(ie,ce,{considerBuiltins:Se,extensions:he}={}){let Ie=R(ie,ce,{considerBuiltins:Se});if(Ie===null)return null;let pe=()=>ce!==null?oe(ce):!1,Qe=(!Se||!s(ie))&&!pe()?ke(ie,Ie):Ie;try{return Le(Qe,{extensions:he})}catch(Z){throw Z.pnpCode==="QUALIFIED_PATH_RESOLUTION_FAILED"&&Object.assign(Z.data,{request:dl(ie),issuer:ce&&dl(ce)}),Z}}function Ke(ie){let ce=B.normalize(ie),Se=rr.resolveVirtual(ce);return Se!==ce?Se:null}return{VERSIONS:T,topLevel:A,getLocator:(ie,ce)=>Array.isArray(ce)?{name:ce[0],reference:ce[1]}:{name:ie,reference:ce},getDependencyTreeRoots:()=>[...t.dependencyTreeRoots],getAllLocators(){let ie=[];for(let[ce,Se]of p)for(let he of Se.keys())ce!==null&&he!==null&&ie.push({name:ce,reference:he});return ie},getPackageInformation:ie=>{let ce=W(ie);if(ce===null)return null;let Se=L.fromPortablePath(ce.packageLocation);return V(k({},ce),{packageLocation:Se})},findPackageLocator:ie=>H(L.toPortablePath(ie)),resolveToUnqualified:w("resolveToUnqualified",(ie,ce,Se)=>{let he=ce!==null?L.toPortablePath(ce):null,Ie=R(L.toPortablePath(ie),he,Se);return Ie===null?null:L.fromPortablePath(Ie)}),resolveUnqualified:w("resolveUnqualified",(ie,ce)=>L.fromPortablePath(Le(L.toPortablePath(ie),ce))),resolveRequest:w("resolveRequest",(ie,ce,Se)=>{let he=ce!==null?L.toPortablePath(ce):null,Ie=qe(L.toPortablePath(ie),he,Se);return Ie===null?null:L.fromPortablePath(Ie)}),resolveVirtual:w("resolveVirtual",ie=>{let ce=Ke(L.toPortablePath(ie));return ce!==null?L.fromPortablePath(ce):null})}}var umt=(0,Oie.promisify)(Mie.readFile);var Kie=(t,e,r)=>{let i=ad(t),n=FF(i,{basePath:e}),s=L.join(e,mt.pnpCjs);return NF(n,{fakeFs:r,pnpapiResolution:s})};var Qa={};$e(Qa,{checkAndReportManifestCompatibility:()=>Tie,extractBuildScripts:()=>uB,getExtractHint:()=>MF,hasBindingGyp:()=>OF});function Tie(t,e,r,{configuration:i,report:n}){return We.isManifestFieldCompatible(e.manifest.os,process.platform)?We.isManifestFieldCompatible(e.manifest.cpu,process.arch)?!0:(n==null||n.reportWarningOnce(z.INCOMPATIBLE_CPU,`${Q.prettyLocator(i,t)} The CPU architecture ${process.arch} is incompatible with this module, ${r} skipped.`),!1):(n==null||n.reportWarningOnce(z.INCOMPATIBLE_OS,`${Q.prettyLocator(i,t)} The platform ${process.platform} is incompatible with this module, ${r} skipped.`),!1)}function uB(t,e,r,{configuration:i,report:n}){let s=[];for(let a of["preinstall","install","postinstall"])e.manifest.scripts.has(a)&&s.push([Vi.SCRIPT,a]);return!e.manifest.scripts.has("install")&&e.misc.hasBindingGyp&&s.push([Vi.SHELLCODE,"node-gyp rebuild"]),s.length===0?[]:t.linkType!==At.HARD?(n==null||n.reportWarningOnce(z.SOFT_LINK_BUILD,`${Q.prettyLocator(i,t)} lists build scripts, but is referenced through a soft link. Soft links don't support build scripts, so they'll be ignored.`),[]):r&&r.built===!1?(n==null||n.reportInfoOnce(z.BUILD_DISABLED,`${Q.prettyLocator(i,t)} lists build scripts, but its build has been explicitly disabled through configuration.`),[]):!i.get("enableScripts")&&!r.built?(n==null||n.reportWarningOnce(z.DISABLED_BUILD_SCRIPTS,`${Q.prettyLocator(i,t)} lists build scripts, but all build scripts have been disabled.`),[]):Tie(t,e,"build",{configuration:i,report:n})?s:[]}var wGe=new Set([".exe",".h",".hh",".hpp",".c",".cc",".cpp",".java",".jar",".node"]);function MF(t){return t.packageFs.getExtractHint({relevantExtensions:wGe})}function OF(t){let e=B.join(t.prefixPath,"binding.gyp");return t.packageFs.existsSync(e)}var KF={};$e(KF,{getUnpluggedPath:()=>Ad});function Ad(t,{configuration:e}){return B.resolve(e.get("pnpUnpluggedFolder"),Q.slugifyLocator(t))}var QGe=new Set([Q.makeIdent(null,"nan").identHash,Q.makeIdent(null,"node-gyp").identHash,Q.makeIdent(null,"node-pre-gyp").identHash,Q.makeIdent(null,"node-addon-api").identHash,Q.makeIdent(null,"fsevents").identHash]),Cl=class{constructor(){this.mode="strict";this.pnpCache=new Map}supportsPackage(e,r){return!(r.project.configuration.get("nodeLinker")!=="pnp"||r.project.configuration.get("pnpMode")!==this.mode)}async findPackageLocation(e,r){let i=ba(r.project).cjs;if(!M.existsSync(i))throw new me(`The project in ${Ae.pretty(r.project.configuration,`${r.project.cwd}/package.json`,Ae.Type.PATH)} doesn't seem to have been installed - running an install there might help`);let n=de.getFactoryWithDefault(this.pnpCache,i,()=>de.dynamicRequire(i,{cachingStrategy:de.CachingStrategy.FsTime})),s={name:Q.stringifyIdent(e),reference:e.reference},o=n.getPackageInformation(s);if(!o)throw new me(`Couldn't find ${Q.prettyLocator(r.project.configuration,e)} in the currently installed PnP map - running an install might help`);return L.toPortablePath(o.packageLocation)}async findPackageLocator(e,r){let i=ba(r.project).cjs;if(!M.existsSync(i))return null;let s=de.getFactoryWithDefault(this.pnpCache,i,()=>de.dynamicRequire(i,{cachingStrategy:de.CachingStrategy.FsTime})).findPackageLocator(L.fromPortablePath(e));return s?Q.makeLocator(Q.parseIdent(s.name),s.reference):null}makeInstaller(e){return new Ku(e)}},Ku=class{constructor(e){this.opts=e;this.mode="strict";this.packageRegistry=new Map;this.virtualTemplates=new Map;this.customData={store:new Map};this.unpluggedPaths=new Set;this.opts=e}getCustomDataKey(){return JSON.stringify({name:"PnpInstaller",version:1})}attachCustomData(e){this.customData=e}async installPackage(e,r){let i=Q.stringifyIdent(e),n=e.reference,s=!!this.opts.project.tryWorkspaceByLocator(e),o=e.peerDependencies.size>0&&!Q.isVirtualLocator(e),a=!o&&!s,l=!o&&e.linkType!==At.SOFT,c,u;(a||l)&&(c=this.customData.store.get(e.locatorHash),typeof c=="undefined"&&(c=await bGe(e,r),e.linkType===At.HARD&&this.customData.store.set(e.locatorHash,c)),u=this.opts.project.getDependencyMeta(e,e.version));let g=a?uB(e,c,u,{configuration:this.opts.project.configuration,report:this.opts.report}):[],h=l?await this.unplugPackageIfNeeded(e,c,r,u):r.packageFs;if(B.isAbsolute(r.prefixPath))throw new Error(`Assertion failed: Expected the prefix path (${r.prefixPath}) to be relative to the parent`);let f=B.resolve(h.getRealPath(),r.prefixPath),p=TF(this.opts.project.cwd,f),m=new Map,I=new Set;if(Q.isVirtualLocator(e)){for(let y of e.peerDependencies.values())m.set(Q.stringifyIdent(y),null),I.add(Q.stringifyIdent(y));if(!this.opts.project.tryWorkspaceByLocator(e)){let y=Q.devirtualizeLocator(e);this.virtualTemplates.set(y.locatorHash,{location:TF(this.opts.project.cwd,rr.resolveVirtual(f)),locator:y})}}return de.getMapWithDefault(this.packageRegistry,i).set(n,{packageLocation:p,packageDependencies:m,packagePeers:I,linkType:e.linkType,discardFromLookup:r.discardFromLookup||!1}),{packageLocation:f,buildDirective:g.length>0?g:null}}async attachInternalDependencies(e,r){let i=this.getPackageInformation(e);for(let[n,s]of r){let o=Q.areIdentsEqual(n,s)?s.reference:[Q.stringifyIdent(s),s.reference];i.packageDependencies.set(Q.stringifyIdent(n),o)}}async attachExternalDependents(e,r){for(let i of r)this.getDiskInformation(i).packageDependencies.set(Q.stringifyIdent(e),e.reference)}async finalizeInstall(){if(this.opts.project.configuration.get("pnpMode")!==this.mode)return;let e=ba(this.opts.project);if(M.existsSync(e.cjsLegacy)&&(this.opts.report.reportWarning(z.UNNAMED,`Removing the old ${Ae.pretty(this.opts.project.configuration,mt.pnpJs,Ae.Type.PATH)} file. You might need to manually update existing references to reference the new ${Ae.pretty(this.opts.project.configuration,mt.pnpCjs,Ae.Type.PATH)} file. If you use PnPify SDKs, you'll have to rerun ${Ae.pretty(this.opts.project.configuration,"yarn pnpify --sdk",Ae.Type.CODE)}.`),await M.removePromise(e.cjsLegacy)),this.opts.project.configuration.get("nodeLinker")!=="pnp"){await M.removePromise(e.cjs),await M.removePromise(this.opts.project.configuration.get("pnpDataPath"));return}for(let{locator:u,location:g}of this.virtualTemplates.values())de.getMapWithDefault(this.packageRegistry,Q.stringifyIdent(u)).set(u.reference,{packageLocation:g,packageDependencies:new Map,packagePeers:new Set,linkType:At.SOFT,discardFromLookup:!1});this.packageRegistry.set(null,new Map([[null,this.getPackageInformation(this.opts.project.topLevelWorkspace.anchoredLocator)]]));let r=this.opts.project.configuration.get("pnpFallbackMode"),i=this.opts.project.workspaces.map(({anchoredLocator:u})=>({name:Q.stringifyIdent(u),reference:u.reference})),n=r!=="none",s=[],o=new Map,a=de.buildIgnorePattern([".yarn/sdks/**",...this.opts.project.configuration.get("pnpIgnorePatterns")]),l=this.packageRegistry,c=this.opts.project.configuration.get("pnpShebang");if(r==="dependencies-only")for(let u of this.opts.project.storedPackages.values())this.opts.project.tryWorkspaceByLocator(u)&&s.push({name:Q.stringifyIdent(u),reference:u.reference});return await this.finalizeInstallWithPnp({dependencyTreeRoots:i,enableTopLevelFallback:n,fallbackExclusionList:s,fallbackPool:o,ignorePattern:a,packageRegistry:l,shebang:c}),{customData:this.customData}}async transformPnpSettings(e){}async finalizeInstallWithPnp(e){let r=ba(this.opts.project),i=this.opts.project.configuration.get("pnpDataPath"),n=await this.locateNodeModules(e.ignorePattern);if(n.length>0){this.opts.report.reportWarning(z.DANGEROUS_NODE_MODULES,"One or more node_modules have been detected and will be removed. This operation may take some time.");for(let o of n)await M.removePromise(o)}if(await this.transformPnpSettings(e),this.opts.project.configuration.get("pnpEnableInlining")){let o=vie(e);await M.changeFilePromise(r.cjs,o,{automaticNewlines:!0}),await M.chmodPromise(r.cjs,493),await M.removePromise(i)}else{let o=B.relative(B.dirname(r.cjs),i),{dataFile:a,loaderFile:l}=Fie(V(k({},e),{dataLocation:o}));await M.changeFilePromise(r.cjs,l,{automaticNewlines:!0}),await M.chmodPromise(r.cjs,493),await M.changeFilePromise(i,a,{automaticNewlines:!0}),await M.chmodPromise(i,420)}let s=this.opts.project.configuration.get("pnpUnpluggedFolder");if(this.unpluggedPaths.size===0)await M.removePromise(s);else for(let o of await M.readdirPromise(s)){let a=B.resolve(s,o);this.unpluggedPaths.has(a)||await M.removePromise(a)}}async locateNodeModules(e){let r=[],i=e?new RegExp(e):null;for(let n of this.opts.project.workspaces){let s=B.join(n.cwd,"node_modules");if(i&&i.test(B.relative(this.opts.project.cwd,n.cwd))||!M.existsSync(s))continue;let o=await M.readdirPromise(s,{withFileTypes:!0}),a=o.filter(l=>!l.isDirectory()||l.name===".bin"||!l.name.startsWith("."));if(a.length===o.length)r.push(s);else for(let l of a)r.push(B.join(s,l.name))}return r}async unplugPackageIfNeeded(e,r,i,n){return this.shouldBeUnplugged(e,r,n)?this.unplugPackage(e,i):i.packageFs}shouldBeUnplugged(e,r,i){return typeof i.unplugged!="undefined"?i.unplugged:QGe.has(e.identHash)?!0:r.manifest.preferUnplugged!==null?r.manifest.preferUnplugged:!!(uB(e,r,i,{configuration:this.opts.project.configuration}).length>0||r.misc.extractHint)}async unplugPackage(e,r){let i=Ad(e,{configuration:this.opts.project.configuration});this.unpluggedPaths.add(i);let n=B.join(i,r.prefixPath,".ready");return await M.existsPromise(n)?new yt(i):(this.opts.project.storedBuildState.delete(e.locatorHash),await M.mkdirPromise(i,{recursive:!0}),await M.copyPromise(i,Ee.dot,{baseFs:r.packageFs,overwrite:!1}),await M.writeFilePromise(n,""),new yt(i))}getPackageInformation(e){let r=Q.stringifyIdent(e),i=e.reference,n=this.packageRegistry.get(r);if(!n)throw new Error(`Assertion failed: The package information store should have been available (for ${Q.prettyIdent(this.opts.project.configuration,e)})`);let s=n.get(i);if(!s)throw new Error(`Assertion failed: The package information should have been available (for ${Q.prettyLocator(this.opts.project.configuration,e)})`);return s}getDiskInformation(e){let r=de.getMapWithDefault(this.packageRegistry,"@@disk"),i=TF(this.opts.project.cwd,e);return de.getFactoryWithDefault(r,i,()=>({packageLocation:i,packageDependencies:new Map,packagePeers:new Set,linkType:At.SOFT,discardFromLookup:!1}))}};function TF(t,e){let r=B.relative(t,e);return r.match(/^\.{0,2}\//)||(r=`./${r}`),r.replace(/\/?$/,"/")}async function bGe(t,e){var n;let r=(n=await We.tryFind(e.prefixPath,{baseFs:e.packageFs}))!=null?n:new We,i=new Set(["preinstall","install","postinstall"]);for(let s of r.scripts.keys())i.has(s)||r.scripts.delete(s);return{manifest:{os:r.os,cpu:r.cpu,scripts:r.scripts,preferUnplugged:r.preferUnplugged},misc:{extractHint:MF(e),hasBindingGyp:OF(e)}}}var Uie=te(Yi());var ld=class extends Be{constructor(){super(...arguments);this.all=G.Boolean("-A,--all",!1,{description:"Unplug direct dependencies from the entire project"});this.recursive=G.Boolean("-R,--recursive",!1,{description:"Unplug both direct and transitive dependencies"});this.json=G.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"});this.patterns=G.Rest()}async execute(){let e=await le.find(this.context.cwd,this.context.plugins),{project:r,workspace:i}=await Fe.find(e,this.context.cwd),n=await gt.find(e);if(!i)throw new Xe(r.cwd,this.context.cwd);if(e.get("nodeLinker")!=="pnp")throw new me("This command can only be used if the `nodeLinker` option is set to `pnp`");await r.restoreInstallState();let s=new Set(this.patterns),o=this.patterns.map(h=>{let f=Q.parseDescriptor(h),p=f.range!=="unknown"?f:Q.makeDescriptor(f,"*");if(!kt.validRange(p.range))throw new me(`The range of the descriptor patterns must be a valid semver range (${Q.prettyDescriptor(e,p)})`);return m=>{let I=Q.stringifyIdent(m);return!Uie.default.isMatch(I,Q.stringifyIdent(p))||m.version&&!kt.satisfiesWithPrereleases(m.version,p.range)?!1:(s.delete(h),!0)}}),a=()=>{let h=[];for(let f of r.storedPackages.values())!r.tryWorkspaceByLocator(f)&&!Q.isVirtualLocator(f)&&o.some(p=>p(f))&&h.push(f);return h},l=h=>{let f=new Set,p=[],m=(I,y)=>{if(!f.has(I.locatorHash)&&(f.add(I.locatorHash),!r.tryWorkspaceByLocator(I)&&o.some(w=>w(I))&&p.push(I),!(y>0&&!this.recursive)))for(let w of I.dependencies.values()){let x=r.storedResolutions.get(w.descriptorHash);if(!x)throw new Error("Assertion failed: The resolution should have been registered");let F=r.storedPackages.get(x);if(!F)throw new Error("Assertion failed: The package should have been registered");m(F,y+1)}};for(let I of h){let y=r.storedPackages.get(I.anchoredLocator.locatorHash);if(!y)throw new Error("Assertion failed: The package should have been registered");m(y,0)}return p},c,u;if(this.all&&this.recursive?(c=a(),u="the project"):this.all?(c=l(r.workspaces),u="any workspace"):(c=l([i]),u="this workspace"),s.size>1)throw new me(`Patterns ${Ae.prettyList(e,s,Ae.Type.CODE)} don't match any packages referenced by ${u}`);if(s.size>0)throw new me(`Pattern ${Ae.prettyList(e,s,Ae.Type.CODE)} doesn't match any packages referenced by ${u}`);return c=de.sortMap(c,h=>Q.stringifyLocator(h)),(await xe.start({configuration:e,stdout:this.context.stdout,json:this.json},async h=>{var f;for(let p of c){let m=(f=p.version)!=null?f:"unknown",I=r.topLevelWorkspace.manifest.ensureDependencyMeta(Q.makeDescriptor(p,m));I.unplugged=!0,h.reportInfo(z.UNNAMED,`Will unpack ${Q.prettyLocator(e,p)} to ${Ae.pretty(e,Ad(p,{configuration:e}),Ae.Type.PATH)}`),h.reportJson({locator:Q.stringifyLocator(p),version:m})}await r.topLevelWorkspace.persistManifest(),h.reportSeparator(),await r.install({cache:n,report:h})})).exitCode()}};ld.paths=[["unplug"]],ld.usage=fe.Usage({description:"force the unpacking of a list of packages",details:"\n This command will add the selectors matching the specified patterns to the list of packages that must be unplugged when installed.\n\n A package being unplugged means that instead of being referenced directly through its archive, it will be unpacked at install time in the directory configured via `pnpUnpluggedFolder`. Note that unpacking packages this way is generally not recommended because it'll make it harder to store your packages within the repository. However, it's a good approach to quickly and safely debug some packages, and can even sometimes be required depending on the context (for example when the package contains shellscripts).\n\n Running the command will set a persistent flag inside your top-level `package.json`, in the `dependenciesMeta` field. As such, to undo its effects, you'll need to revert the changes made to the manifest and run `yarn install` to apply the modification.\n\n By default, only direct dependencies from the current workspace are affected. If `-A,--all` is set, direct dependencies from the entire project are affected. Using the `-R,--recursive` flag will affect transitive dependencies as well as direct ones.\n\n This command accepts glob patterns inside the scope and name components (not the range). Make sure to escape the patterns to prevent your own shell from trying to expand them.\n ",examples:[["Unplug the lodash dependency from the active workspace","yarn unplug lodash"],["Unplug all instances of lodash referenced by any workspace","yarn unplug lodash -A"],["Unplug all instances of lodash referenced by the active workspace and its dependencies","yarn unplug lodash -R"],["Unplug all instances of lodash, anywhere","yarn unplug lodash -AR"],["Unplug one specific version of lodash","yarn unplug lodash@1.2.3"],["Unplug all packages with the `@babel` scope","yarn unplug '@babel/*'"],["Unplug all packages (only for testing, not recommended)","yarn unplug -R '*'"]]});var Hie=ld;var ba=t=>({cjs:B.join(t.cwd,mt.pnpCjs),cjsLegacy:B.join(t.cwd,mt.pnpJs)}),Gie=t=>/\s/.test(t)?JSON.stringify(t):t;async function DGe(t,e,r){let i=ba(t).cjs,n=`--require ${Gie(L.fromPortablePath(i))}`;if(i.includes(" ")&&Yie.default.lt(process.versions.node,"12.0.0"))throw new Error(`Expected the build location to not include spaces when using Node < 12.0.0 (${process.versions.node})`);if(M.existsSync(i)){let s=e.NODE_OPTIONS||"",o=/\s*--require\s+\S*\.pnp\.c?js\s*/g;s=s.replace(o," ").trim(),s=s?`${n} ${s}`:n,e.NODE_OPTIONS=s}}async function SGe(t,e){e(ba(t).cjs),e(t.configuration.get("pnpDataPath")),e(t.configuration.get("pnpUnpluggedFolder"))}var xGe={hooks:{populateYarnPaths:SGe,setupScriptEnvironment:DGe},configuration:{nodeLinker:{description:'The linker used for installing Node packages, one of: "pnp", "node-modules"',type:ge.STRING,default:"pnp"},pnpMode:{description:"If 'strict', generates standard PnP maps. If 'loose', merges them with the n_m resolution.",type:ge.STRING,default:"strict"},pnpShebang:{description:"String to prepend to the generated PnP script",type:ge.STRING,default:"#!/usr/bin/env node"},pnpIgnorePatterns:{description:"Array of glob patterns; files matching them will use the classic resolution",type:ge.STRING,default:[],isArray:!0},pnpEnableInlining:{description:"If true, the PnP data will be inlined along with the generated loader",type:ge.BOOLEAN,default:!0},pnpFallbackMode:{description:"If true, the generated PnP loader will follow the top-level fallback rule",type:ge.STRING,default:"dependencies-only"},pnpUnpluggedFolder:{description:"Folder where the unplugged packages must be stored",type:ge.ABSOLUTE_PATH,default:"./.yarn/unplugged"},pnpDataPath:{description:"Path of the file where the PnP data (used by the loader) must be written",type:ge.ABSOLUTE_PATH,default:"./.pnp.data.json"}},linkers:[Cl],commands:[Hie]},PGe=xGe;var Vie=te(zie());var qF=te(require("crypto")),Xie=te(require("fs")),Zie=1,Rr="node_modules",JF=".bin",_ie=".yarn-state.yml",Oi;(function(i){i.CLASSIC="classic",i.HARDLINKS_LOCAL="hardlinks-local",i.HARDLINKS_GLOBAL="hardlinks-global"})(Oi||(Oi={}));var WF=class{constructor(){this.installStateCache=new Map}supportsPackage(e,r){return r.project.configuration.get("nodeLinker")==="node-modules"}async findPackageLocation(e,r){let i=r.project.tryWorkspaceByLocator(e);if(i)return i.cwd;let n=await de.getFactoryWithDefault(this.installStateCache,r.project.cwd,async()=>await zF(r.project,{unrollAliases:!0}));if(n===null)throw new me("Couldn't find the node_modules state file - running an install might help (findPackageLocation)");let s=n.locatorMap.get(Q.stringifyLocator(e));if(!s){let a=new me(`Couldn't find ${Q.prettyLocator(r.project.configuration,e)} in the currently installed node_modules map - running an install might help`);throw a.code="LOCATOR_NOT_INSTALLED",a}let o=r.project.configuration.startingCwd;return s.locations.find(a=>B.contains(o,a))||s.locations[0]}async findPackageLocator(e,r){let i=await de.getFactoryWithDefault(this.installStateCache,r.project.cwd,async()=>await zF(r.project,{unrollAliases:!0}));if(i===null)return null;let{locationRoot:n,segments:s}=gB(B.resolve(e),{skipPrefix:r.project.cwd}),o=i.locationTree.get(n);if(!o)return null;let a=o.locator;for(let l of s){if(o=o.children.get(l),!o)break;a=o.locator||a}return Q.parseLocator(a)}makeInstaller(e){return new $ie(e)}},$ie=class{constructor(e){this.opts=e;this.localStore=new Map;this.realLocatorChecksums=new Map;this.customData={store:new Map}}getCustomDataKey(){return JSON.stringify({name:"NodeModulesInstaller",version:1})}attachCustomData(e){this.customData=e}async installPackage(e,r){var u;let i=B.resolve(r.packageFs.getRealPath(),r.prefixPath),n=this.customData.store.get(e.locatorHash);if(typeof n=="undefined"&&(n=await JGe(e,r),e.linkType===At.HARD&&this.customData.store.set(e.locatorHash,n)),!Qa.checkAndReportManifestCompatibility(e,n,"link",{configuration:this.opts.project.configuration,report:this.opts.report}))return{packageLocation:null,buildDirective:null};let s=new Map,o=new Set;s.has(Q.stringifyIdent(e))||s.set(Q.stringifyIdent(e),e.reference);let a=e;if(Q.isVirtualLocator(e)){a=Q.devirtualizeLocator(e);for(let g of e.peerDependencies.values())s.set(Q.stringifyIdent(g),null),o.add(Q.stringifyIdent(g))}let l={packageLocation:`${L.fromPortablePath(i)}/`,packageDependencies:s,packagePeers:o,linkType:e.linkType,discardFromLookup:(u=r.discardFromLookup)!=null?u:!1};this.localStore.set(e.locatorHash,{pkg:e,customPackageData:n,dependencyMeta:this.opts.project.getDependencyMeta(e,e.version),pnpNode:l});let c=r.checksum?r.checksum.substring(r.checksum.indexOf("/")+1):null;return this.realLocatorChecksums.set(a.locatorHash,c),{packageLocation:i,buildDirective:null}}async attachInternalDependencies(e,r){let i=this.localStore.get(e.locatorHash);if(typeof i=="undefined")throw new Error("Assertion failed: Expected information object to have been registered");for(let[n,s]of r){let o=Q.areIdentsEqual(n,s)?s.reference:[Q.stringifyIdent(s),s.reference];i.pnpNode.packageDependencies.set(Q.stringifyIdent(n),o)}}async attachExternalDependents(e,r){throw new Error("External dependencies haven't been implemented for the node-modules linker")}async finalizeInstall(){if(this.opts.project.configuration.get("nodeLinker")!=="node-modules")return;let e=new rr({baseFs:new nn({libzip:await gi(),maxOpenFiles:80,readOnlyArchives:!0})}),r=await zF(this.opts.project),i=this.opts.project.configuration.get("nmMode");(r===null||i!==r.nmMode)&&(this.opts.project.storedBuildState.clear(),r={locatorMap:new Map,binSymlinks:new Map,locationTree:new Map,nmMode:i});let n=new Map(this.opts.project.workspaces.map(g=>{var f,p;let h=this.opts.project.configuration.get("nmHoistingLimits");try{h=de.validateEnum(Mi,(p=(f=g.manifest.installConfig)==null?void 0:f.hoistingLimits)!=null?p:h)}catch(m){let I=Q.prettyWorkspace(this.opts.project.configuration,g);this.opts.report.reportWarning(z.INVALID_MANIFEST,`${I}: Invalid 'installConfig.hoistingLimits' value. Expected one of ${Object.values(Mi).join(", ")}, using default: "${h}"`)}return[g.relativeCwd,h]})),s={VERSIONS:{std:1},topLevel:{name:null,reference:null},getLocator:(g,h)=>Array.isArray(h)?{name:h[0],reference:h[1]}:{name:g,reference:h},getDependencyTreeRoots:()=>this.opts.project.workspaces.map(g=>{let h=g.anchoredLocator;return{name:Q.stringifyIdent(g.locator),reference:h.reference}}),getPackageInformation:g=>{let h=g.reference===null?this.opts.project.topLevelWorkspace.anchoredLocator:Q.makeLocator(Q.parseIdent(g.name),g.reference),f=this.localStore.get(h.locatorHash);if(typeof f=="undefined")throw new Error("Assertion failed: Expected the package reference to have been registered");return f.pnpNode},findPackageLocator:g=>{let h=this.opts.project.tryWorkspaceByCwd(L.toPortablePath(g));if(h!==null){let f=h.anchoredLocator;return{name:Q.stringifyIdent(f),reference:f.reference}}throw new Error("Assertion failed: Unimplemented")},resolveToUnqualified:()=>{throw new Error("Assertion failed: Unimplemented")},resolveUnqualified:()=>{throw new Error("Assertion failed: Unimplemented")},resolveRequest:()=>{throw new Error("Assertion failed: Unimplemented")},resolveVirtual:g=>L.fromPortablePath(rr.resolveVirtual(L.toPortablePath(g)))},{tree:o,errors:a,preserveSymlinksRequired:l}=wa(s,{pnpifyFs:!1,validateExternalSoftLinks:!0,hoistingLimitsByCwd:n,project:this.opts.project});if(!o){for(let{messageName:g,text:h}of a)this.opts.report.reportError(g,h);return}let c=DF(o);await WGe(r,c,{baseFs:e,project:this.opts.project,report:this.opts.report,realLocatorChecksums:this.realLocatorChecksums,loadManifest:async g=>{let h=Q.parseLocator(g),f=this.localStore.get(h.locatorHash);if(typeof f=="undefined")throw new Error("Assertion failed: Expected the slot to exist");return f.customPackageData.manifest}});let u=[];for(let[g,h]of c.entries()){if(ene(g))continue;let f=Q.parseLocator(g),p=this.localStore.get(f.locatorHash);if(typeof p=="undefined")throw new Error("Assertion failed: Expected the slot to exist");if(this.opts.project.tryWorkspaceByLocator(p.pkg))continue;let m=Qa.extractBuildScripts(p.pkg,p.customPackageData,p.dependencyMeta,{configuration:this.opts.project.configuration,report:this.opts.report});m.length!==0&&u.push({buildLocations:h.locations,locatorHash:f.locatorHash,buildDirective:m})}return l&&this.opts.report.reportWarning(z.NM_PRESERVE_SYMLINKS_REQUIRED,`The application uses portals and that's why ${Ae.pretty(this.opts.project.configuration,"--preserve-symlinks",Ae.Type.CODE)} Node option is required for launching it`),{customData:this.customData,records:u}}};async function JGe(t,e){var n;let r=(n=await We.tryFind(e.prefixPath,{baseFs:e.packageFs}))!=null?n:new We,i=new Set(["preinstall","install","postinstall"]);for(let s of r.scripts.keys())i.has(s)||r.scripts.delete(s);return{manifest:{bin:r.bin,os:r.os,cpu:r.cpu,scripts:r.scripts},misc:{extractHint:Qa.getExtractHint(e),hasBindingGyp:Qa.hasBindingGyp(e)}}}async function zGe(t,e,r,i){let n="";n+=`# Warning: This file is automatically generated. Removing it is fine, but will `,n+=`# cause your node_modules installation to become invalidated. `,n+=` `,n+=`__metadata: -`,n+=` version: ${mre} +`,n+=` version: ${Zie} `,n+=` nmMode: ${i} -`;let s=Array.from(e.keys()).sort(),o=b.stringifyLocator(t.topLevelWorkspace.anchoredLocator);for(let c of s){let u=e.get(c);n+=` +`;let s=Array.from(e.keys()).sort(),o=Q.stringifyLocator(t.topLevelWorkspace.anchoredLocator);for(let c of s){let u=e.get(c);n+=` `,n+=`${JSON.stringify(c)}: `,n+=` locations: -`;for(let g of u.locations){let h=w.contains(t.cwd,g);if(h===null)throw new Error(`Assertion failed: Expected the path to be within the project (${g})`);n+=` - ${JSON.stringify(h)} +`;for(let g of u.locations){let h=B.contains(t.cwd,g);if(h===null)throw new Error(`Assertion failed: Expected the path to be within the project (${g})`);n+=` - ${JSON.stringify(h)} `}if(u.aliases.length>0){n+=` aliases: `;for(let g of u.aliases)n+=` - ${JSON.stringify(g)} `}if(c===o&&r.size>0){n+=` bin: -`;for(let[g,h]of r){let f=w.contains(t.cwd,g);if(f===null)throw new Error(`Assertion failed: Expected the path to be within the project (${g})`);n+=` ${JSON.stringify(f)}: -`;for(let[p,m]of h){let I=w.relative(w.join(g,br),m);n+=` ${JSON.stringify(p)}: ${JSON.stringify(I)} -`}}}}let a=t.cwd,l=w.join(a,br,Ire);await R.changeFilePromise(l,n,{automaticNewlines:!0})}async function Ov(t,{unrollAliases:e=!1}={}){let r=t.cwd,i=w.join(r,br,Ire);if(!R.existsSync(i))return null;let n=kr(await R.readFilePromise(i,"utf8"));if(n.__metadata.version>mre)return null;let s=n.__metadata.nmMode||Si.CLASSIC,o=new Map,a=new Map;delete n.__metadata;for(let[l,c]of Object.entries(n)){let u=c.locations.map(h=>w.join(r,h)),g=c.bin;if(g)for(let[h,f]of Object.entries(g)){let p=w.join(r,npath.toPortablePath(h)),m=he.getMapWithDefault(a,p);for(let[I,y]of Object.entries(f))m.set(Ut(I),npath.toPortablePath([p,br,y].join(w.delimiter)))}if(o.set(l,{target:pe.dot,linkType:nt.HARD,locations:u,aliases:c.aliases||[]}),e&&c.aliases)for(let h of c.aliases){let{scope:f,name:p}=b.parseLocator(l),m=b.makeLocator(b.makeIdent(f,p),h),I=b.stringifyLocator(m);o.set(I,{target:pe.dot,linkType:nt.HARD,locations:u,aliases:[]})}}return{locatorMap:o,binSymlinks:a,locationTree:Bre(o,{skipPrefix:t.cwd}),nmMode:s}}var gu=async(t,e)=>{if(t.split(w.sep).indexOf(br)<0)throw new Error(`Assertion failed: trying to remove dir that doesn't contain node_modules: ${t}`);try{if(!e.innerLoop&&(await R.lstatPromise(t)).isSymbolicLink()){await R.unlinkPromise(t);return}let r=await R.readdirPromise(t,{withFileTypes:!0});for(let i of r){let n=w.join(t,Ut(i.name));i.isDirectory()?(i.name!==br||e&&e.innerLoop)&&await gu(n,{innerLoop:!0,contentsOnly:!1}):await R.unlinkPromise(n)}e.contentsOnly||await R.rmdirPromise(t)}catch(r){if(r.code!=="ENOENT"&&r.code!=="ENOTEMPTY")throw r}},wre=4,Ey=(t,{skipPrefix:e})=>{let r=w.contains(e,t);if(r===null)throw new Error(`Assertion failed: Writing attempt prevented to ${t} which is outside project root: ${e}`);let i=r.split(w.sep).filter(l=>l!==""),n=i.indexOf(br),s=i.slice(0,n).join(w.sep),o=w.join(e,s),a=i.slice(n);return{locationRoot:o,segments:a}},Bre=(t,{skipPrefix:e})=>{let r=new Map;if(t===null)return r;let i=()=>({children:new Map,linkType:nt.HARD});for(let[n,s]of t.entries()){if(s.linkType===nt.SOFT&&w.contains(e,s.target)!==null){let a=he.getFactoryWithDefault(r,s.target,i);a.locator=n,a.linkType=s.linkType}for(let o of s.locations){let{locationRoot:a,segments:l}=Ey(o,{skipPrefix:e}),c=he.getFactoryWithDefault(r,a,i);for(let u=0;u{let r;try{process.platform==="win32"&&(r=await R.lstatPromise(t))}catch(i){}process.platform=="win32"&&(!r||r.isDirectory())?await R.symlinkPromise(t,e,"junction"):await R.symlinkPromise(w.relative(w.dirname(e),t),e)};async function Qre(t,e,r){let i=w.join(t,Ut(`${Lv.default.randomBytes(16).toString("hex")}.tmp`));try{await R.writeFilePromise(i,r);try{await R.linkPromise(i,e)}catch(n){}}finally{await R.unlinkPromise(i)}}async function nYe({srcPath:t,dstPath:e,srcMode:r,globalHardlinksStore:i,baseFs:n,nmMode:s,digest:o}){if(s===Si.HARDLINKS_GLOBAL&&i&&o){let l=w.join(i,o.substring(0,2),`${o.substring(2)}.dat`),c;try{if(await pi.checksumFile(l,{baseFs:R,algorithm:"sha1"})!==o){let g=w.join(i,Ut(`${Lv.default.randomBytes(16).toString("hex")}.tmp`));await R.renamePromise(l,g);let h=await n.readFilePromise(t);await R.writeFilePromise(g,h);try{await R.linkPromise(g,l),await R.unlinkPromise(g)}catch(f){}}await R.linkPromise(l,e),c=!0}catch(u){c=!1}if(!c){let u=await n.readFilePromise(t);await Qre(i,l,u),await R.linkPromise(l,e)}}else await n.copyFilePromise(t,e);let a=r&511;a!==420&&await R.chmodPromise(e,a)}var oa;(function(t){t.FILE="file",t.DIRECTORY="directory",t.SYMLINK="symlink"})(oa||(oa={}));var sYe=async(t,e,{baseFs:r,globalHardlinksStore:i,nmMode:n,packageChecksum:s})=>{await R.mkdirPromise(t,{recursive:!0});let o=async(l=pe.dot)=>{let c=w.join(e,l),u=await r.readdirPromise(c,{withFileTypes:!0}),g=new Map;for(let h of u){let f=w.join(l,h.name),p,m=w.join(c,h.name);if(h.isFile()){if(p={kind:oa.FILE,mode:(await r.lstatPromise(m)).mode},n===Si.HARDLINKS_GLOBAL){let I=await pi.checksumFile(m,{baseFs:r,algorithm:"sha1"});p.digest=I}}else if(h.isDirectory())p={kind:oa.DIRECTORY};else if(h.isSymbolicLink())p={kind:oa.SYMLINK,symlinkTo:await r.readlinkPromise(m)};else throw new Error(`Unsupported file type (file: ${m}, mode: 0o${await r.statSync(m).mode.toString(8).padStart(6,"0")})`);if(g.set(f,p),h.isDirectory()&&f!==br){let I=await o(f);for(let[y,B]of I)g.set(y,B)}}return g},a;if(n===Si.HARDLINKS_GLOBAL&&i&&s){let l=w.join(i,s.substring(0,2),`${s.substring(2)}.json`);try{a=new Map(Object.entries(JSON.parse(await R.readFilePromise(l,"utf8"))))}catch(c){a=await o(),await Qre(i,l,Buffer.from(JSON.stringify(Object.fromEntries(a))))}}else a=await o();for(let[l,c]of a){let u=w.join(e,l),g=w.join(t,l);c.kind===oa.DIRECTORY?await R.mkdirPromise(g,{recursive:!0}):c.kind===oa.FILE?await nYe({srcPath:u,dstPath:g,srcMode:c.mode,digest:c.digest,nmMode:n,baseFs:r,globalHardlinksStore:i}):c.kind===oa.SYMLINK&&await Tv(w.resolve(w.dirname(g),c.symlinkTo),g)}};function oYe(t,e){let r=new Map([...t]),i=new Map([...e]);for(let[n,s]of t){let o=w.join(n,br);if(!R.existsSync(o)){s.children.delete(br);for(let a of i.keys())w.contains(o,a)!==null&&i.delete(a)}}return{locationTree:r,binSymlinks:i}}function yre(t){let e=b.parseDescriptor(t);return b.isVirtualDescriptor(e)&&(e=b.devirtualizeDescriptor(e)),e.range.startsWith("link:")}async function aYe(t,e,r,{loadManifest:i}){let n=new Map;for(let[a,{locations:l}]of t){let c=yre(a)?null:await i(a,l[0]),u=new Map;if(c)for(let[g,h]of c.bin){let f=w.join(l[0],h);h!==""&&R.existsSync(f)&&u.set(g,h)}n.set(a,u)}let s=new Map,o=(a,l,c)=>{let u=new Map,g=w.contains(r,a);if(c.locator&&g!==null){let h=n.get(c.locator);for(let[f,p]of h){let m=w.join(a,npath.toPortablePath(p));u.set(Ut(f),m)}for(let[f,p]of c.children){let m=w.join(a,f),I=o(m,m,p);I.size>0&&s.set(a,new Map([...s.get(a)||new Map,...I]))}}else for(let[h,f]of c.children){let p=o(w.join(a,h),l,f);for(let[m,I]of p)u.set(m,I)}return u};for(let[a,l]of e){let c=o(a,a,l);c.size>0&&s.set(a,new Map([...s.get(a)||new Map,...c]))}return s}var bre=(t,e)=>{if(!t||!e)return t===e;let r=b.parseLocator(t);b.isVirtualLocator(r)&&(r=b.devirtualizeLocator(r));let i=b.parseLocator(e);return b.isVirtualLocator(i)&&(i=b.devirtualizeLocator(i)),b.areLocatorsEqual(r,i)};function Kv(t){return w.join(t.get("globalFolder"),"store")}async function rYe(t,e,{baseFs:r,project:i,report:n,loadManifest:s,realLocatorChecksums:o}){let a=w.join(i.cwd,br),{locationTree:l,binSymlinks:c}=oYe(t.locationTree,t.binSymlinks),u=Bre(e,{skipPrefix:i.cwd}),g=[],h=async({srcDir:N,dstDir:O,linkType:v,globalHardlinksStore:U,nmMode:re,packageChecksum:F})=>{let A=(async()=>{try{v===nt.SOFT?(await R.mkdirPromise(w.dirname(O),{recursive:!0}),await Tv(w.resolve(N),O)):await sYe(O,N,{baseFs:r,globalHardlinksStore:U,nmMode:re,packageChecksum:F})}catch(q){throw q.message=`While persisting ${N} -> ${O} ${q.message}`,q}finally{B.tick()}})().then(()=>g.splice(g.indexOf(A),1));g.push(A),g.length>wre&&await Promise.race(g)},f=async(N,O,v)=>{let U=(async()=>{let re=async(F,A,q)=>{try{q.innerLoop||await R.mkdirPromise(A,{recursive:!0});let Z=await R.readdirPromise(F,{withFileTypes:!0});for(let $ of Z){if(!q.innerLoop&&$.name===Mv)continue;let T=w.join(F,$.name),G=w.join(A,$.name);$.isDirectory()?($.name!==br||q&&q.innerLoop)&&(await R.mkdirPromise(G,{recursive:!0}),await re(T,G,{...q,innerLoop:!0})):k===Si.HARDLINKS_LOCAL||k===Si.HARDLINKS_GLOBAL?await R.linkPromise(T,G):await R.copyFilePromise(T,G,Cre.default.constants.COPYFILE_FICLONE)}}catch(Z){throw q.innerLoop||(Z.message=`While cloning ${F} -> ${A} ${Z.message}`),Z}finally{q.innerLoop||B.tick()}};await re(N,O,v)})().then(()=>g.splice(g.indexOf(U),1));g.push(U),g.length>wre&&await Promise.race(g)},p=async(N,O,v)=>{if(!v)O.children.has(br)&&await gu(w.join(N,br),{contentsOnly:!1}),await gu(N,{contentsOnly:N===a});else for(let[U,re]of O.children){let F=v.children.get(U);await p(w.join(N,U),re,F)}};for(let[N,O]of l){let v=u.get(N);for(let[U,re]of O.children){if(U===".")continue;let F=v&&v.children.get(U);await p(w.join(N,U),re,F)}}let m=async(N,O,v)=>{if(!v)O.children.has(br)&&await gu(w.join(N,br),{contentsOnly:!0}),await gu(N,{contentsOnly:O.linkType===nt.HARD});else{bre(O.locator,v.locator)||await gu(N,{contentsOnly:O.linkType===nt.HARD});for(let[U,re]of O.children){let F=v.children.get(U);await m(w.join(N,U),re,F)}}};for(let[N,O]of u){let v=l.get(N);for(let[U,re]of O.children){if(U===".")continue;let F=v&&v.children.get(U);await m(w.join(N,U),re,F)}}let I=new Map,y=[];for(let[N,{locations:O}]of t.locatorMap.entries())for(let v of O){let{locationRoot:U,segments:re}=Ey(v,{skipPrefix:i.cwd}),F=u.get(U),A=U;if(F){for(let q of re)if(A=w.join(A,q),F=F.children.get(q),!F)break;if(F){let q=bre(F.locator,N),Z=e.get(F.locator),$=Z.target,T=A,G=Z.linkType;if(q)I.has($)||I.set($,T);else if($!==T){let Qe=b.parseLocator(F.locator);b.isVirtualLocator(Qe)&&(Qe=b.devirtualizeLocator(Qe)),y.push({srcDir:$,dstDir:T,linkType:G,realLocatorHash:Qe.locatorHash})}}}}for(let[N,{locations:O}]of e.entries())for(let v of O){let{locationRoot:U,segments:re}=Ey(v,{skipPrefix:i.cwd}),F=l.get(U),A=u.get(U),q=U,Z=e.get(N),$=b.parseLocator(N);b.isVirtualLocator($)&&($=b.devirtualizeLocator($));let T=$.locatorHash,G=Z.target,Qe=v;if(G===Qe)continue;let Pe=Z.linkType;for(let He of re)A=A.children.get(He);if(!F)y.push({srcDir:G,dstDir:Qe,linkType:Pe,realLocatorHash:T});else for(let He of re)if(q=w.join(q,He),F=F.children.get(He),!F){y.push({srcDir:G,dstDir:Qe,linkType:Pe,realLocatorHash:T});break}}let B=ti.progressViaCounter(y.length),P=n.reportProgress(B),k=i.configuration.get("nmMode");try{let N=k===Si.HARDLINKS_GLOBAL?`${Kv(i.configuration)}/v1`:null;if(N&&!await R.existsPromise(N)){await R.mkdirpPromise(N);for(let v=0;v<256;v++)await R.mkdirPromise(w.join(N,v.toString(16).padStart(2,"0")))}for(let v of y)(v.linkType===nt.SOFT||!I.has(v.srcDir))&&(I.set(v.srcDir,v.dstDir),await h({...v,globalHardlinksStore:N,nmMode:k,packageChecksum:o.get(v.realLocatorHash)||null}));await Promise.all(g),g.length=0;for(let v of y){let U=I.get(v.srcDir);v.linkType!==nt.SOFT&&v.dstDir!==U&&await f(U,v.dstDir,{nmMode:k})}await Promise.all(g),await R.mkdirPromise(a,{recursive:!0});let O=await aYe(e,u,i.cwd,{loadManifest:s});await AYe(c,O,i.cwd),await iYe(i,e,O,k)}finally{P.stop()}}async function AYe(t,e,r){for(let i of t.keys()){if(w.contains(r,i)===null)throw new Error(`Assertion failed. Excepted bin symlink location to be inside project dir, instead it was at ${i}`);if(!e.has(i)){let n=w.join(i,br,Mv);await R.removePromise(n)}}for(let[i,n]of e){if(w.contains(r,i)===null)throw new Error(`Assertion failed. Excepted bin symlink location to be inside project dir, instead it was at ${i}`);let s=w.join(i,br,Mv),o=t.get(i)||new Map;await R.mkdirPromise(s,{recursive:!0});for(let a of o.keys())n.has(a)||(await R.removePromise(w.join(s,a)),process.platform==="win32"&&await R.removePromise(w.join(s,Ut(`${a}.cmd`))));for(let[a,l]of n){let c=o.get(a),u=w.join(s,a);c!==l&&(process.platform==="win32"?await dre.default(npath.fromPortablePath(l),npath.fromPortablePath(u),{createPwshFile:!1}):(await R.removePromise(u),await Tv(l,u),w.contains(r,await R.realpathPromise(l))!==null&&await R.chmodPromise(l,493)))}}}var Uv=class extends VA{constructor(){super(...arguments);this.mode="loose"}makeInstaller(e){return new Dre(e)}},Dre=class extends cu{constructor(){super(...arguments);this.mode="loose"}async transformPnpSettings(e){let r=new _t({baseFs:new Ji({libzip:await ri(),maxOpenFiles:80,readOnlyArchives:!0})}),i=sre(e,this.opts.project.cwd,r),{tree:n,errors:s}=na(i,{pnpifyFs:!1,project:this.opts.project});if(!n){for(let{messageName:u,text:g}of s)this.opts.report.reportError(u,g);return}let o=new Map;e.fallbackPool=o;let a=(u,g)=>{let h=b.parseLocator(g.locator),f=b.stringifyIdent(h);f===u?o.set(u,h.reference):o.set(u,[f,h.reference])},l=w.join(this.opts.project.cwd,ft.nodeModules),c=n.get(l);if(typeof c=="undefined")throw new Error("Assertion failed: Expected a root junction point");if("target"in c)throw new Error("Assertion failed: Expected the root junction point to be a directory");for(let u of c.dirList){let g=w.join(l,u),h=n.get(g);if(typeof h=="undefined")throw new Error("Assertion failed: Expected the child to have been registered");if("target"in h)a(u,h);else for(let f of h.dirList){let p=w.join(g,f),m=n.get(p);if(typeof m=="undefined")throw new Error("Assertion failed: Expected the subchild to have been registered");if("target"in m)a(`${u}/${f}`,m);else throw new Error("Assertion failed: Expected the leaf junction to be a package")}}}};var lYe={hooks:{cleanGlobalArtifacts:async t=>{let e=Kv(t);await R.removePromise(e)}},configuration:{nmHoistingLimits:{description:"Prevent packages to be hoisted past specific levels",type:Ae.STRING,values:[Di.WORKSPACES,Di.DEPENDENCIES,Di.NONE],default:Di.NONE},nmMode:{description:'If set to "hardlinks-local" Yarn will utilize hardlinks to reduce disk space consumption inside "node_modules" directories. With "hardlinks-global" Yarn will use global content addressable storage to reduce "node_modules" size across all the projects using this option.',type:Ae.STRING,values:[Si.CLASSIC,Si.HARDLINKS_LOCAL,Si.HARDLINKS_GLOBAL],default:Si.CLASSIC}},linkers:[Nv,Uv]},cYe=lYe;var GF={};We(GF,{default:()=>pqe,npmConfigUtils:()=>Kt,npmHttpUtils:()=>mt,npmPublishUtils:()=>Hp});var xre=X(hr());var kt="npm:";var mt={};We(mt,{AuthType:()=>Hi,customPackageError:()=>hYe,del:()=>dYe,get:()=>Mn,getIdentUrl:()=>la,handleInvalidAuthenticationError:()=>Aa,post:()=>fYe,put:()=>pYe});var Pre=X(Lf()),By=X(require("url"));var Kt={};We(Kt,{RegistryType:()=>aa,getAuthConfiguration:()=>jv,getDefaultRegistry:()=>yy,getPublishRegistry:()=>uYe,getRegistryConfiguration:()=>Sre,getScopeConfiguration:()=>Yv,getScopeRegistry:()=>no,normalizeRegistry:()=>hu});var aa;(function(t){t.FETCH_REGISTRY="npmRegistryServer",t.PUBLISH_REGISTRY="npmPublishRegistry"})(aa||(aa={}));function hu(t){return t.replace(/\/$/,"")}function uYe(t,{configuration:e}){return t.publishConfig&&t.publishConfig.registry?hu(t.publishConfig.registry):t.name?no(t.name.scope,{configuration:e,type:aa.PUBLISH_REGISTRY}):yy({configuration:e,type:aa.PUBLISH_REGISTRY})}function no(t,{configuration:e,type:r=aa.FETCH_REGISTRY}){let i=Yv(t,{configuration:e});if(i===null)return yy({configuration:e,type:r});let n=i.get(r);return n===null?yy({configuration:e,type:r}):hu(n)}function yy({configuration:t,type:e=aa.FETCH_REGISTRY}){let r=t.get(e);return hu(r!==null?r:t.get(aa.FETCH_REGISTRY))}function Sre(t,{configuration:e}){let r=e.get("npmRegistries"),i=r.get(t);if(typeof i!="undefined")return i;let n=r.get(t.replace(/^[a-z]+:/,""));return typeof n!="undefined"?n:null}function Yv(t,{configuration:e}){if(t===null)return null;let i=e.get("npmScopes").get(t);return i||null}function jv(t,{configuration:e,ident:r}){let i=r&&Yv(r.scope,{configuration:e});return(i==null?void 0:i.get("npmAuthIdent"))||(i==null?void 0:i.get("npmAuthToken"))?i:Sre(t,{configuration:e})||e}var Hi;(function(t){t[t.NO_AUTH=0]="NO_AUTH",t[t.BEST_EFFORT=1]="BEST_EFFORT",t[t.CONFIGURATION=2]="CONFIGURATION",t[t.ALWAYS_AUTH=3]="ALWAYS_AUTH"})(Hi||(Hi={}));async function Aa(t,{attemptedAs:e,registry:r,headers:i,configuration:n}){var s,o;if(((s=t.originalError)==null?void 0:s.name)==="HTTPError"&&((o=t.originalError)==null?void 0:o.response.statusCode)===401)throw new Ge(J.AUTHENTICATION_INVALID,`Invalid authentication (${typeof e!="string"?`as ${await gYe(r,i,{configuration:n})}`:`attempted as ${e}`})`)}function hYe(t){var e;return((e=t.response)==null?void 0:e.statusCode)===404?"Package not found":null}function la(t){return t.scope?`/@${t.scope}%2f${t.name}`:`/${t.name}`}async function Mn(t,{configuration:e,headers:r,ident:i,authType:n,registry:s,...o}){if(i&&typeof s=="undefined"&&(s=no(i.scope,{configuration:e})),i&&i.scope&&typeof n=="undefined"&&(n=1),typeof s!="string")throw new Error("Assertion failed: The registry should be a string");let a=await wy(s,{authType:n,configuration:e,ident:i});a&&(r={...r,authorization:a});let l;try{l=new By.URL(t)}catch(c){l=new By.URL(s+t)}try{return await Mt.get(l.href,{configuration:e,headers:r,...o})}catch(c){throw await Aa(c,{registry:s,configuration:e,headers:r}),c}}async function fYe(t,e,{attemptedAs:r,configuration:i,headers:n,ident:s,authType:o=3,registry:a,...l}){if(s&&typeof a=="undefined"&&(a=no(s.scope,{configuration:i})),typeof a!="string")throw new Error("Assertion failed: The registry should be a string");let c=await wy(a,{authType:o,configuration:i,ident:s});c&&(n={...n,authorization:c});try{return await Mt.post(a+t,e,{configuration:i,headers:n,...l})}catch(u){if(!qv(u))throw await Aa(u,{attemptedAs:r,registry:a,configuration:i,headers:n}),u;let g=await Gv(),h={...n,...Jv(g)};try{return await Mt.post(`${a}${t}`,e,{configuration:i,headers:h,...l})}catch(f){throw await Aa(f,{attemptedAs:r,registry:a,configuration:i,headers:n}),f}}}async function pYe(t,e,{attemptedAs:r,configuration:i,headers:n,ident:s,authType:o=3,registry:a,...l}){if(s&&typeof a=="undefined"&&(a=no(s.scope,{configuration:i})),typeof a!="string")throw new Error("Assertion failed: The registry should be a string");let c=await wy(a,{authType:o,configuration:i,ident:s});c&&(n={...n,authorization:c});try{return await Mt.put(a+t,e,{configuration:i,headers:n,...l})}catch(u){if(!qv(u))throw await Aa(u,{attemptedAs:r,registry:a,configuration:i,headers:n}),u;let g=await Gv(),h={...n,...Jv(g)};try{return await Mt.put(`${a}${t}`,e,{configuration:i,headers:h,...l})}catch(f){throw await Aa(f,{attemptedAs:r,registry:a,configuration:i,headers:n}),f}}}async function dYe(t,{attemptedAs:e,configuration:r,headers:i,ident:n,authType:s=3,registry:o,...a}){if(n&&typeof o=="undefined"&&(o=no(n.scope,{configuration:r})),typeof o!="string")throw new Error("Assertion failed: The registry should be a string");let l=await wy(o,{authType:s,configuration:r,ident:n});l&&(i={...i,authorization:l});try{return await Mt.del(o+t,{configuration:r,headers:i,...a})}catch(c){if(!qv(c))throw await Aa(c,{attemptedAs:e,registry:o,configuration:r,headers:i}),c;let u=await Gv(),g={...i,...Jv(u)};try{return await Mt.del(`${o}${t}`,{configuration:r,headers:g,...a})}catch(h){throw await Aa(h,{attemptedAs:e,registry:o,configuration:r,headers:i}),h}}}async function wy(t,{authType:e=2,configuration:r,ident:i}){let n=jv(t,{configuration:r,ident:i}),s=CYe(n,e);if(!s)return null;let o=await r.reduceHook(a=>a.getNpmAuthenticationHeader,void 0,t,{configuration:r,ident:i});if(o)return o;if(n.get("npmAuthToken"))return`Bearer ${n.get("npmAuthToken")}`;if(n.get("npmAuthIdent"))return`Basic ${n.get("npmAuthIdent")}`;if(s&&e!==1)throw new Ge(J.AUTHENTICATION_NOT_FOUND,"No authentication configured for request");return null}function CYe(t,e){switch(e){case 2:return t.get("npmAlwaysAuth");case 1:case 3:return!0;case 0:return!1;default:throw new Error("Unreachable")}}async function gYe(t,e,{configuration:r}){var i;if(typeof e=="undefined"||typeof e.authorization=="undefined")return"an anonymous user";try{return(i=(await Mt.get(new By.URL(`${t}/-/whoami`).href,{configuration:r,headers:e,jsonResponse:!0})).username)!=null?i:"an unknown user"}catch{return"an unknown user"}}async function Gv(){if(process.env.TEST_ENV)return process.env.TEST_NPM_2FA_TOKEN||"";let{otp:t}=await Pre.prompt({type:"password",name:"otp",message:"One-time password:",required:!0,onCancel:()=>process.exit(130)});return t}function qv(t){var e,r;if(((e=t.originalError)==null?void 0:e.name)!=="HTTPError")return!1;try{return((r=t.originalError)==null?void 0:r.response.headers["www-authenticate"].split(/,\s*/).map(n=>n.toLowerCase())).includes("otp")}catch(i){return!1}}function Jv(t){return{["npm-otp"]:t}}var Wv=class{supports(e,r){if(!e.reference.startsWith(kt))return!1;let{selector:i,params:n}=b.parseRange(e.reference);return!(!xre.default.valid(i)||n===null||typeof n.__archiveUrl!="string")}getLocalPath(e,r){return null}async fetch(e,r){let i=r.checksums.get(e.locatorHash)||null,[n,s,o]=await r.cache.fetchPackageFromCache(e,i,{onHit:()=>r.report.reportCacheHit(e),onMiss:()=>r.report.reportCacheMiss(e,`${b.prettyLocator(r.project.configuration,e)} can't be found in the cache and will be fetched from the remote server`),loader:()=>this.fetchFromNetwork(e,r),skipIntegrityCheck:r.skipIntegrityCheck});return{packageFs:n,releaseFs:s,prefixPath:b.getIdentVendorPath(e),checksum:o}}async fetchFromNetwork(e,r){let{params:i}=b.parseRange(e.reference);if(i===null||typeof i.__archiveUrl!="string")throw new Error("Assertion failed: The archiveUrl querystring parameter should have been available");let n=await Mn(i.__archiveUrl,{configuration:r.project.configuration,ident:e});return await Ar.convertToZip(n,{compressionLevel:r.project.configuration.get("compressionLevel"),prefixPath:b.getIdentVendorPath(e),stripComponents:1})}};var zv=class{supportsDescriptor(e,r){return!(!e.range.startsWith(kt)||!b.tryParseDescriptor(e.range.slice(kt.length),!0))}supportsLocator(e,r){return!1}shouldPersistResolution(e,r){throw new Error("Unreachable")}bindDescriptor(e,r,i){return e}getResolutionDependencies(e,r){let i=b.parseDescriptor(e.range.slice(kt.length),!0);return r.resolver.getResolutionDependencies(i,r)}async getCandidates(e,r,i){let n=b.parseDescriptor(e.range.slice(kt.length),!0);return await i.resolver.getCandidates(n,r,i)}async getSatisfying(e,r,i){let n=b.parseDescriptor(e.range.slice(kt.length),!0);return i.resolver.getSatisfying(n,r,i)}resolve(e,r){throw new Error("Unreachable")}};var Xv=X(hr()),kre=X(require("url"));var Nn=class{supports(e,r){if(!e.reference.startsWith(kt))return!1;let i=new kre.URL(e.reference);return!(!Xv.default.valid(i.pathname)||i.searchParams.has("__archiveUrl"))}getLocalPath(e,r){return null}async fetch(e,r){let i=r.checksums.get(e.locatorHash)||null,[n,s,o]=await r.cache.fetchPackageFromCache(e,i,{onHit:()=>r.report.reportCacheHit(e),onMiss:()=>r.report.reportCacheMiss(e,`${b.prettyLocator(r.project.configuration,e)} can't be found in the cache and will be fetched from the remote registry`),loader:()=>this.fetchFromNetwork(e,r),skipIntegrityCheck:r.skipIntegrityCheck});return{packageFs:n,releaseFs:s,prefixPath:b.getIdentVendorPath(e),checksum:o}}async fetchFromNetwork(e,r){let i;try{i=await Mn(Nn.getLocatorUrl(e),{configuration:r.project.configuration,ident:e})}catch(n){i=await Mn(Nn.getLocatorUrl(e).replace(/%2f/g,"/"),{configuration:r.project.configuration,ident:e})}return await Ar.convertToZip(i,{compressionLevel:r.project.configuration.get("compressionLevel"),prefixPath:b.getIdentVendorPath(e),stripComponents:1})}static isConventionalTarballUrl(e,r,{configuration:i}){let n=no(e.scope,{configuration:i}),s=Nn.getLocatorUrl(e);return r=r.replace(/^https?:(\/\/(?:[^/]+\.)?npmjs.org(?:$|\/))/,"https:$1"),n=n.replace(/^https:\/\/registry\.npmjs\.org($|\/)/,"https://registry.yarnpkg.com$1"),r=r.replace(/^https:\/\/registry\.npmjs\.org($|\/)/,"https://registry.yarnpkg.com$1"),r===n+s||r===n+s.replace(/%2f/g,"/")}static getLocatorUrl(e){let r=Xv.default.clean(e.reference.slice(kt.length));if(r===null)throw new Ge(J.RESOLVER_NOT_FOUND,"The npm semver resolver got selected, but the version isn't semver");return`${la(e)}/-/${e.name}-${r}.tgz`}};var Vv=X(hr());var Qy=b.makeIdent(null,"node-gyp"),mYe=/\b(node-gyp|prebuild-install)\b/,Zv=class{supportsDescriptor(e,r){return e.range.startsWith(kt)?!!St.validRange(e.range.slice(kt.length)):!1}supportsLocator(e,r){if(!e.reference.startsWith(kt))return!1;let{selector:i}=b.parseRange(e.reference);return!!Vv.default.valid(i)}shouldPersistResolution(e,r){return!0}bindDescriptor(e,r,i){return e}getResolutionDependencies(e,r){return[]}async getCandidates(e,r,i){let n=St.validRange(e.range.slice(kt.length));if(n===null)throw new Error(`Expected a valid range, got ${e.range.slice(kt.length)}`);let s=await Mn(la(e),{configuration:i.project.configuration,ident:e,jsonResponse:!0}),o=he.mapAndFilter(Object.keys(s.versions),c=>{try{let u=new St.SemVer(c);if(n.test(u))return u}catch{}return he.mapAndFilter.skip}),a=o.filter(c=>!s.versions[c.raw].deprecated),l=a.length>0?a:o;return l.sort((c,u)=>-c.compare(u)),l.map(c=>{let u=b.makeLocator(e,`${kt}${c.raw}`),g=s.versions[c.raw].dist.tarball;return Nn.isConventionalTarballUrl(u,g,{configuration:i.project.configuration})?u:b.bindLocator(u,{__archiveUrl:g})})}async getSatisfying(e,r,i){let n=St.validRange(e.range.slice(kt.length));if(n===null)throw new Error(`Expected a valid range, got ${e.range.slice(kt.length)}`);return he.mapAndFilter(r,s=>{try{let{selector:o}=b.parseRange(s,{requireProtocol:kt}),a=new St.SemVer(o);if(n.test(a))return{reference:s,version:a}}catch{}return he.mapAndFilter.skip}).sort((s,o)=>-s.version.compare(o.version)).map(({reference:s})=>b.makeLocator(e,s))}async resolve(e,r){let{selector:i}=b.parseRange(e.reference),n=Vv.default.clean(i);if(n===null)throw new Ge(J.RESOLVER_NOT_FOUND,"The npm semver resolver got selected, but the version isn't semver");let s=await Mn(la(e),{configuration:r.project.configuration,ident:e,jsonResponse:!0});if(!Object.prototype.hasOwnProperty.call(s,"versions"))throw new Ge(J.REMOTE_INVALID,'Registry returned invalid data for - missing "versions" field');if(!Object.prototype.hasOwnProperty.call(s.versions,n))throw new Ge(J.REMOTE_NOT_FOUND,`Registry failed to return reference "${n}"`);let o=new je;if(o.load(s.versions[n]),!o.dependencies.has(Qy.identHash)&&!o.peerDependencies.has(Qy.identHash)){for(let a of o.scripts.values())if(a.match(mYe)){o.dependencies.set(Qy.identHash,b.makeDescriptor(Qy,"latest")),r.report.reportWarning(J.NODE_GYP_INJECTED,`${b.prettyLocator(r.project.configuration,e)}: Implicit dependencies on node-gyp are discouraged`);break}}return typeof o.raw.deprecated=="string"&&r.report.reportWarningOnce(J.DEPRECATED_PACKAGE,`${b.prettyLocator(r.project.configuration,e)} is deprecated: ${o.raw.deprecated}`),{...e,version:n,languageName:"node",linkType:nt.HARD,dependencies:o.dependencies,peerDependencies:o.peerDependencies,dependenciesMeta:o.dependenciesMeta,peerDependenciesMeta:o.peerDependenciesMeta,bin:o.bin}}};var _v=class{supportsDescriptor(e,r){return!(!e.range.startsWith(kt)||!bc.test(e.range.slice(kt.length)))}supportsLocator(e,r){return!1}shouldPersistResolution(e,r){throw new Error("Unreachable")}bindDescriptor(e,r,i){return e}getResolutionDependencies(e,r){return[]}async getCandidates(e,r,i){let n=e.range.slice(kt.length),s=await Mn(la(e),{configuration:i.project.configuration,ident:e,jsonResponse:!0});if(!Object.prototype.hasOwnProperty.call(s,"dist-tags"))throw new Ge(J.REMOTE_INVALID,'Registry returned invalid data - missing "dist-tags" field');let o=s["dist-tags"];if(!Object.prototype.hasOwnProperty.call(o,n))throw new Ge(J.REMOTE_NOT_FOUND,`Registry failed to return tag "${n}"`);let a=o[n],l=b.makeLocator(e,`${kt}${a}`),c=s.versions[a].dist.tarball;return Nn.isConventionalTarballUrl(l,c,{configuration:i.project.configuration})?[l]:[b.bindLocator(l,{__archiveUrl:c})]}async getSatisfying(e,r,i){return null}async resolve(e,r){throw new Error("Unreachable")}};var Hp={};We(Hp,{makePublishBody:()=>hqe});var UF={};We(UF,{default:()=>XGe,packUtils:()=>Ao});var Ao={};We(Ao,{genPackList:()=>Gy,genPackStream:()=>KF,genPackageManifest:()=>tne,hasPackScripts:()=>OF,prepareForPack:()=>TF});var NF=X(Qn()),$ie=X(_ie()),ene=X(require("zlib")),TGe=["/package.json","/readme","/readme.*","/license","/license.*","/licence","/licence.*","/changelog","/changelog.*"],KGe=["/package.tgz",".github",".git",".hg","node_modules",".npmignore",".gitignore",".#*",".DS_Store"];async function OF(t){return!!(Et.hasWorkspaceScript(t,"prepack")||Et.hasWorkspaceScript(t,"postpack"))}async function TF(t,{report:e},r){await Et.maybeExecuteWorkspaceLifecycleScript(t,"prepack",{report:e});try{await r()}finally{await Et.maybeExecuteWorkspaceLifecycleScript(t,"postpack",{report:e})}}async function KF(t,e){var s,o;typeof e=="undefined"&&(e=await Gy(t));let r=new Set;for(let a of(o=(s=t.manifest.publishConfig)==null?void 0:s.executableFiles)!=null?o:new Set)r.add(w.normalize(a));for(let a of t.manifest.bin.values())r.add(w.normalize(a));let i=$ie.default.pack();process.nextTick(async()=>{for(let a of e){let l=w.normalize(a),c=w.resolve(t.cwd,l),u=w.join("package",l),g=await R.lstatPromise(c),h={name:u,mtime:new Date(Ar.safeTime*1e3)},f=r.has(l)?493:420,p,m,I=new Promise((B,P)=>{p=B,m=P}),y=B=>{B?m(B):p()};if(g.isFile()){let B;l==="package.json"?B=Buffer.from(JSON.stringify(await tne(t),null,2)):B=await R.readFilePromise(c),i.entry({...h,mode:f,type:"file"},B,y)}else g.isSymbolicLink()?i.entry({...h,mode:f,type:"symlink",linkname:await R.readlinkPromise(c)},y):y(new Error(`Unsupported file type ${g.mode} for ${npath.fromPortablePath(l)}`));await I}i.finalize()});let n=ene.createGzip();return i.pipe(n),n}async function tne(t){let e=JSON.parse(JSON.stringify(t.manifest.raw));return await t.project.configuration.triggerHook(r=>r.beforeWorkspacePacking,t,e),e}async function Gy(t){var g,h,f,p,m,I,y,B;let e=t.project,r=e.configuration,i={accept:[],reject:[]};for(let P of KGe)i.reject.push(P);for(let P of TGe)i.accept.push(P);i.reject.push(r.get("rcFilename"));let n=P=>{if(P===null||!P.startsWith(`${t.cwd}/`))return;let k=w.relative(t.cwd,P),N=w.resolve(pe.root,k);i.reject.push(N)};n(w.resolve(e.cwd,r.get("lockfileFilename"))),n(r.get("cacheFolder")),n(r.get("globalFolder")),n(r.get("installStatePath")),n(r.get("virtualFolder")),n(r.get("yarnPath")),await r.triggerHook(P=>P.populateYarnPaths,e,P=>{n(P)});for(let P of e.workspaces){let k=w.relative(t.cwd,P.cwd);k!==""&&!k.match(/^(\.\.)?\//)&&i.reject.push(`/${k}`)}let s={accept:[],reject:[]},o=(h=(g=t.manifest.publishConfig)==null?void 0:g.main)!=null?h:t.manifest.main,a=(p=(f=t.manifest.publishConfig)==null?void 0:f.module)!=null?p:t.manifest.module,l=(I=(m=t.manifest.publishConfig)==null?void 0:m.browser)!=null?I:t.manifest.browser,c=(B=(y=t.manifest.publishConfig)==null?void 0:y.bin)!=null?B:t.manifest.bin;o!=null&&s.accept.push(w.resolve(pe.root,o)),a!=null&&s.accept.push(w.resolve(pe.root,a)),typeof l=="string"&&s.accept.push(w.resolve(pe.root,l));for(let P of c.values())s.accept.push(w.resolve(pe.root,P));if(l instanceof Map)for(let[P,k]of l.entries())s.accept.push(w.resolve(pe.root,P)),typeof k=="string"&&s.accept.push(w.resolve(pe.root,k));let u=t.manifest.files!==null;if(u){s.reject.push("/*");for(let P of t.manifest.files)rne(s.accept,P,{cwd:pe.root})}return await UGe(t.cwd,{hasExplicitFileList:u,globalList:i,ignoreList:s})}async function UGe(t,{hasExplicitFileList:e,globalList:r,ignoreList:i}){let n=[],s=new ys(t),o=[[pe.root,[i]]];for(;o.length>0;){let[a,l]=o.pop(),c=await s.lstatPromise(a);if(!nne(a,{globalList:r,ignoreLists:c.isDirectory()?null:l}))if(c.isDirectory()){let u=await s.readdirPromise(a),g=!1,h=!1;if(!e||a!==pe.root)for(let m of u)g=g||m===".gitignore",h=h||m===".npmignore";let f=h?await ine(s,a,".npmignore"):g?await ine(s,a,".gitignore"):null,p=f!==null?[f].concat(l):l;nne(a,{globalList:r,ignoreLists:l})&&(p=[...l,{accept:[],reject:["**/*"]}]);for(let m of u)o.push([w.resolve(a,m),p])}else(c.isFile()||c.isSymbolicLink())&&n.push(w.relative(pe.root,a))}return n.sort()}async function ine(t,e,r){let i={accept:[],reject:[]},n=await t.readFilePromise(w.join(e,r),"utf8");for(let s of n.split(/\n/g))rne(i.reject,s,{cwd:e});return i}function HGe(t,{cwd:e}){let r=t[0]==="!";return r&&(t=t.slice(1)),t.match(/\.{0,1}\//)&&(t=w.resolve(e,t)),r&&(t=`!${t}`),t}function rne(t,e,{cwd:r}){let i=e.trim();i===""||i[0]==="#"||t.push(HGe(i,{cwd:r}))}function nne(t,{globalList:e,ignoreLists:r}){if(qy(t,e.accept))return!1;if(qy(t,e.reject))return!0;if(r!==null)for(let i of r){if(qy(t,i.accept))return!1;if(qy(t,i.reject))return!0}return!1}function qy(t,e){let r=e,i=[];for(let n=0;n{await TF(i,{report:l},async()=>{l.reportJson({base:i.cwd});let c=await Gy(i);for(let u of c)l.reportInfo(null,u),l.reportJson({location:u});if(!this.dryRun){let u=await KF(i,c),g=R.createWriteStream(s);u.pipe(g),await new Promise(h=>{g.on("finish",h)})}}),this.dryRun||(l.reportInfo(J.UNNAMED,`Package archive generated in ${se.pretty(e,s,se.Type.PATH)}`),l.reportJson({output:s}))})).exitCode()}};Tp.paths=[["pack"]],Tp.usage=ce.Usage({description:"generate a tarball from the active workspace",details:"\n This command will turn the active workspace into a compressed archive suitable for publishing. The archive will by default be stored at the root of the workspace (`package.tgz`).\n\n If the `-o,---out` is set the archive will be created at the specified path. The `%s` and `%v` variables can be used within the path and will be respectively replaced by the package name and version.\n ",examples:[["Create an archive from the active workspace","yarn pack"],["List the files that would be made part of the workspace's archive","yarn pack --dry-run"],["Name and output the archive in a dedicated folder","yarn pack --out /artifacts/%s-%v.tgz"]]});var one=Tp;function YGe(t,{workspace:e}){let r=t.replace("%s",jGe(e)).replace("%v",GGe(e));return npath.toPortablePath(r)}function jGe(t){return t.manifest.name!==null?b.slugifyIdent(t.manifest.name):"package"}function GGe(t){return t.manifest.version!==null?t.manifest.version:"unknown"}var qGe=["dependencies","devDependencies","peerDependencies"],JGe="workspace:",WGe=(t,e)=>{var i;e.publishConfig&&(e.publishConfig.main&&(e.main=e.publishConfig.main),e.publishConfig.browser&&(e.browser=e.publishConfig.browser),e.publishConfig.module&&(e.module=e.publishConfig.module),e.publishConfig.browser&&(e.browser=e.publishConfig.browser),e.publishConfig.exports&&(e.exports=e.publishConfig.exports),e.publishConfig.bin&&(e.bin=e.publishConfig.bin));let r=t.project;for(let n of qGe)for(let s of t.manifest.getForScope(n).values()){let o=r.tryWorkspaceByDescriptor(s),a=b.parseRange(s.range);if(a.protocol===JGe)if(o===null){if(r.tryWorkspaceByIdent(s)===null)throw new Ge(J.WORKSPACE_NOT_FOUND,`${b.prettyDescriptor(r.configuration,s)}: No local workspace found for this range`)}else{let l;b.areDescriptorsEqual(s,o.anchoredDescriptor)||a.selector==="*"?l=(i=o.manifest.version)!=null?i:"0.0.0":l=a.selector,e[n][b.stringifyIdent(s)]=l}}},zGe={hooks:{beforeWorkspacePacking:WGe},commands:[one]},XGe=zGe;var pne=X(require("crypto")),dne=X(fne()),Cne=X(require("url"));async function hqe(t,e,{access:r,tag:i,registry:n}){let s=t.project.configuration,o=t.manifest.name,a=t.manifest.version,l=b.stringifyIdent(o),c=pne.createHash("sha1").update(e).digest("hex"),u=dne.default.fromData(e).toString();typeof r=="undefined"&&(t.manifest.publishConfig&&typeof t.manifest.publishConfig.access=="string"?r=t.manifest.publishConfig.access:s.get("npmPublishAccess")!==null?r=s.get("npmPublishAccess"):o.scope?r="restricted":r="public");let g=await Ao.genPackageManifest(t),h=`${l}-${a}.tgz`,f=new Cne.URL(`${l}/-/${h}`,n);return{_id:l,_attachments:{[h]:{content_type:"application/octet-stream",data:e.toString("base64"),length:e.length}},name:l,access:r,["dist-tags"]:{[i]:a},versions:{[a]:{...g,_id:`${l}@${a}`,name:l,version:a,dist:{shasum:c,integrity:u,tarball:f.toString()}}}}}var qF={npmAlwaysAuth:{description:"URL of the selected npm registry (note: npm enterprise isn't supported)",type:Ae.BOOLEAN,default:!1},npmAuthIdent:{description:"Authentication identity for the npm registry (_auth in npm and yarn v1)",type:Ae.SECRET,default:null},npmAuthToken:{description:"Authentication token for the npm registry (_authToken in npm and yarn v1)",type:Ae.SECRET,default:null}},mne={npmPublishRegistry:{description:"Registry to push packages to",type:Ae.STRING,default:null},npmRegistryServer:{description:"URL of the selected npm registry (note: npm enterprise isn't supported)",type:Ae.STRING,default:"https://registry.yarnpkg.com"}},fqe={configuration:{...qF,...mne,npmScopes:{description:"Settings per package scope",type:Ae.MAP,valueDefinition:{description:"",type:Ae.SHAPE,properties:{...qF,...mne}}},npmRegistries:{description:"Settings per registry",type:Ae.MAP,normalizeKeys:hu,valueDefinition:{description:"",type:Ae.SHAPE,properties:{...qF}}}},fetchers:[Wv,Nn],resolvers:[zv,Zv,_v]},pqe=fqe;var VF={};We(VF,{default:()=>Qqe});var JF=X(Qo());var ps;(function(t){t.All="all",t.Production="production",t.Development="development"})(ps||(ps={}));var On;(function(t){t.Info="info",t.Low="low",t.Moderate="moderate",t.High="high",t.Critical="critical"})(On||(On={}));var Jy=[On.Info,On.Low,On.Moderate,On.High,On.Critical];function Ine(t,e){let r=[],i=new Set,n=o=>{i.has(o)||(i.add(o),r.push(o))};for(let o of e)n(o);let s=new Set;for(;r.length>0;){let o=r.shift(),a=t.storedResolutions.get(o);if(typeof a=="undefined")throw new Error("Assertion failed: Expected the resolution to have been registered");let l=t.storedPackages.get(a);if(!!l){s.add(o);for(let c of l.dependencies.values())n(c.descriptorHash)}}return s}function dqe(t,e){return new Set([...t].filter(r=>!e.has(r)))}function Cqe(t,e,{all:r}){let i=r?t.workspaces:[e],n=i.map(h=>h.manifest),s=new Set(n.map(h=>[...h.dependencies].map(([f,p])=>f)).flat()),o=new Set(n.map(h=>[...h.devDependencies].map(([f,p])=>f)).flat()),a=i.map(h=>[...h.dependencies.values()]).flat(),l=a.filter(h=>s.has(h.identHash)).map(h=>h.descriptorHash),c=a.filter(h=>o.has(h.identHash)).map(h=>h.descriptorHash),u=Ine(t,l),g=Ine(t,c);return dqe(g,u)}function Ene(t){let e={};for(let r of t)e[b.stringifyIdent(r)]=b.parseRange(r.range).selector;return e}function yne(t){if(typeof t=="undefined")return new Set;let e=Jy.indexOf(t),r=Jy.slice(e);return new Set(r)}function mqe(t,e){let r=yne(e),i={};for(let n of r)i[n]=t[n];return i}function Bne(t,e){var i;let r=mqe(t,e);for(let n of Object.keys(r))if((i=r[n])!=null?i:0>0)return!0;return!1}function wne(t,e){let r={},i={children:r},n=Object.values(t.advisories);if(e!=null){let s=yne(e);n=n.filter(o=>s.has(o.severity))}for(let s of he.sortMap(n,o=>o.module_name))r[s.module_name]={label:s.module_name,value:se.tuple(se.Type.RANGE,s.findings.map(o=>o.version).join(", ")),children:{Issue:{label:"Issue",value:se.tuple(se.Type.NO_HINT,s.title)},URL:{label:"URL",value:se.tuple(se.Type.URL,s.url)},Severity:{label:"Severity",value:se.tuple(se.Type.NO_HINT,s.severity)},["Vulnerable Versions"]:{label:"Vulnerable Versions",value:se.tuple(se.Type.RANGE,s.vulnerable_versions)},["Patched Versions"]:{label:"Patched Versions",value:se.tuple(se.Type.RANGE,s.patched_versions)},Via:{label:"Via",value:se.tuple(se.Type.NO_HINT,Array.from(new Set(s.findings.map(o=>o.paths).flat().map(o=>o.split(">")[0]))).join(", "))},Recommendation:{label:"Recommendation",value:se.tuple(se.Type.NO_HINT,s.recommendation.replace(/\n/g," "))}}};return i}function Qne(t,e,{all:r,environment:i}){let n=r?t.workspaces:[e],s=[ps.All,ps.Production].includes(i),o=[];if(s)for(let c of n)for(let u of c.manifest.dependencies.values())o.push(u);let a=[ps.All,ps.Development].includes(i),l=[];if(a)for(let c of n)for(let u of c.manifest.devDependencies.values())l.push(u);return Ene([...o,...l].filter(c=>b.parseRange(c.range).protocol===null))}function bne(t,e,{all:r}){var s;let i=Cqe(t,e,{all:r}),n={};for(let o of t.storedPackages.values())n[b.stringifyIdent(o)]={version:(s=o.version)!=null?s:"0.0.0",integrity:o.identHash,requires:Ene(o.dependencies.values()),dev:i.has(b.convertLocatorToDescriptor(o).descriptorHash)};return n}var Yp=class extends Ce{constructor(){super(...arguments);this.all=j.Boolean("-A,--all",!1,{description:"Audit dependencies from all workspaces"});this.recursive=j.Boolean("-R,--recursive",!1,{description:"Audit transitive dependencies as well"});this.environment=j.String("--environment",ps.All,{description:"Which environments to cover",validator:JF.isEnum(ps)});this.json=j.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"});this.severity=j.String("--severity",On.Info,{description:"Minimal severity requested for packages to be displayed",validator:JF.isEnum(On)})}async execute(){let e=await oe.find(this.context.cwd,this.context.plugins),{project:r,workspace:i}=await ke.find(e,this.context.cwd);if(!i)throw new Xe(r.cwd,this.context.cwd);await r.restoreInstallState();let n=Qne(r,i,{all:this.all,environment:this.environment}),s=bne(r,i,{all:this.all});if(!this.recursive)for(let h of Object.keys(s))Object.prototype.hasOwnProperty.call(n,h)?s[h].requires={}:delete s[h];let o={requires:n,dependencies:s},a=Kt.getPublishRegistry(i.manifest,{configuration:e}),l,c=await zs.start({configuration:e,stdout:this.context.stdout},async()=>{l=await mt.post("/-/npm/v1/security/audits/quick",o,{authType:mt.AuthType.NO_AUTH,configuration:e,jsonResponse:!0,registry:a})});if(c.hasErrors())return c.exitCode();let u=Bne(l.metadata.vulnerabilities,this.severity);return!this.json&&u?(vn.emitTree(wne(l,this.severity),{configuration:e,json:this.json,stdout:this.context.stdout,separators:2}),1):(await we.start({configuration:e,includeFooter:!1,json:this.json,stdout:this.context.stdout},async h=>{h.reportJson(l),u||h.reportInfo(J.EXCEPTION,"No audit suggestions")})).exitCode()}};Yp.paths=[["npm","audit"]],Yp.usage=ce.Usage({description:"perform a vulnerability audit against the installed packages",details:` +`;for(let[g,h]of r){let f=B.contains(t.cwd,g);if(f===null)throw new Error(`Assertion failed: Expected the path to be within the project (${g})`);n+=` ${JSON.stringify(f)}: +`;for(let[p,m]of h){let I=B.relative(B.join(g,Rr),m);n+=` ${JSON.stringify(p)}: ${JSON.stringify(I)} +`}}}}let a=t.cwd,l=B.join(a,Rr,_ie);await M.changeFilePromise(l,n,{automaticNewlines:!0})}async function zF(t,{unrollAliases:e=!1}={}){let r=t.cwd,i=B.join(r,Rr,_ie);if(!M.existsSync(i))return null;let n=Tr(await M.readFilePromise(i,"utf8"));if(n.__metadata.version>Zie)return null;let s=n.__metadata.nmMode||Oi.CLASSIC,o=new Map,a=new Map;delete n.__metadata;for(let[l,c]of Object.entries(n)){let u=c.locations.map(h=>B.join(r,h)),g=c.bin;if(g)for(let[h,f]of Object.entries(g)){let p=B.join(r,L.toPortablePath(h)),m=de.getMapWithDefault(a,p);for(let[I,y]of Object.entries(f))m.set(Jt(I),L.toPortablePath([p,Rr,y].join(B.delimiter)))}if(o.set(l,{target:Ee.dot,linkType:At.HARD,locations:u,aliases:c.aliases||[]}),e&&c.aliases)for(let h of c.aliases){let{scope:f,name:p}=Q.parseLocator(l),m=Q.makeLocator(Q.makeIdent(f,p),h),I=Q.stringifyLocator(m);o.set(I,{target:Ee.dot,linkType:At.HARD,locations:u,aliases:[]})}}return{locatorMap:o,binSymlinks:a,locationTree:tne(o,{skipPrefix:t.cwd}),nmMode:s}}var Uu=async(t,e)=>{if(t.split(B.sep).indexOf(Rr)<0)throw new Error(`Assertion failed: trying to remove dir that doesn't contain node_modules: ${t}`);try{if(!e.innerLoop&&(await M.lstatPromise(t)).isSymbolicLink()){await M.unlinkPromise(t);return}let r=await M.readdirPromise(t,{withFileTypes:!0});for(let i of r){let n=B.join(t,Jt(i.name));i.isDirectory()?(i.name!==Rr||e&&e.innerLoop)&&await Uu(n,{innerLoop:!0,contentsOnly:!1}):await M.unlinkPromise(n)}e.contentsOnly||await M.rmdirPromise(t)}catch(r){if(r.code!=="ENOENT"&&r.code!=="ENOTEMPTY")throw r}},rne=4,gB=(t,{skipPrefix:e})=>{let r=B.contains(e,t);if(r===null)throw new Error(`Assertion failed: Writing attempt prevented to ${t} which is outside project root: ${e}`);let i=r.split(B.sep).filter(l=>l!==""),n=i.indexOf(Rr),s=i.slice(0,n).join(B.sep),o=B.join(e,s),a=i.slice(n);return{locationRoot:o,segments:a}},tne=(t,{skipPrefix:e})=>{let r=new Map;if(t===null)return r;let i=()=>({children:new Map,linkType:At.HARD});for(let[n,s]of t.entries()){if(s.linkType===At.SOFT&&B.contains(e,s.target)!==null){let a=de.getFactoryWithDefault(r,s.target,i);a.locator=n,a.linkType=s.linkType}for(let o of s.locations){let{locationRoot:a,segments:l}=gB(o,{skipPrefix:e}),c=de.getFactoryWithDefault(r,a,i);for(let u=0;u{let r;try{process.platform==="win32"&&(r=await M.lstatPromise(t))}catch(i){}process.platform=="win32"&&(!r||r.isDirectory())?await M.symlinkPromise(t,e,"junction"):await M.symlinkPromise(B.relative(B.dirname(e),t),e)};async function ine(t,e,r){let i=B.join(t,Jt(`${qF.default.randomBytes(16).toString("hex")}.tmp`));try{await M.writeFilePromise(i,r);try{await M.linkPromise(i,e)}catch(n){}}finally{await M.unlinkPromise(i)}}async function VGe({srcPath:t,dstPath:e,srcMode:r,globalHardlinksStore:i,baseFs:n,nmMode:s,digest:o}){if(s===Oi.HARDLINKS_GLOBAL&&i&&o){let l=B.join(i,o.substring(0,2),`${o.substring(2)}.dat`),c;try{if(await Di.checksumFile(l,{baseFs:M,algorithm:"sha1"})!==o){let g=B.join(i,Jt(`${qF.default.randomBytes(16).toString("hex")}.tmp`));await M.renamePromise(l,g);let h=await n.readFilePromise(t);await M.writeFilePromise(g,h);try{await M.linkPromise(g,l),await M.unlinkPromise(g)}catch(f){}}await M.linkPromise(l,e),c=!0}catch(u){c=!1}if(!c){let u=await n.readFilePromise(t);await ine(i,l,u),await M.linkPromise(l,e)}}else await n.copyFilePromise(t,e);let a=r&511;a!==420&&await M.chmodPromise(e,a)}var Da;(function(i){i.FILE="file",i.DIRECTORY="directory",i.SYMLINK="symlink"})(Da||(Da={}));var XGe=async(t,e,{baseFs:r,globalHardlinksStore:i,nmMode:n,packageChecksum:s})=>{await M.mkdirPromise(t,{recursive:!0});let o=async(l=Ee.dot)=>{let c=B.join(e,l),u=await r.readdirPromise(c,{withFileTypes:!0}),g=new Map;for(let h of u){let f=B.join(l,h.name),p,m=B.join(c,h.name);if(h.isFile()){if(p={kind:Da.FILE,mode:(await r.lstatPromise(m)).mode},n===Oi.HARDLINKS_GLOBAL){let I=await Di.checksumFile(m,{baseFs:r,algorithm:"sha1"});p.digest=I}}else if(h.isDirectory())p={kind:Da.DIRECTORY};else if(h.isSymbolicLink())p={kind:Da.SYMLINK,symlinkTo:await r.readlinkPromise(m)};else throw new Error(`Unsupported file type (file: ${m}, mode: 0o${await r.statSync(m).mode.toString(8).padStart(6,"0")})`);if(g.set(f,p),h.isDirectory()&&f!==Rr){let I=await o(f);for(let[y,w]of I)g.set(y,w)}}return g},a;if(n===Oi.HARDLINKS_GLOBAL&&i&&s){let l=B.join(i,s.substring(0,2),`${s.substring(2)}.json`);try{a=new Map(Object.entries(JSON.parse(await M.readFilePromise(l,"utf8"))))}catch(c){a=await o(),await ine(i,l,Buffer.from(JSON.stringify(Object.fromEntries(a))))}}else a=await o();for(let[l,c]of a){let u=B.join(e,l),g=B.join(t,l);c.kind===Da.DIRECTORY?await M.mkdirPromise(g,{recursive:!0}):c.kind===Da.FILE?await VGe({srcPath:u,dstPath:g,srcMode:c.mode,digest:c.digest,nmMode:n,baseFs:r,globalHardlinksStore:i}):c.kind===Da.SYMLINK&&await VF(B.resolve(B.dirname(g),c.symlinkTo),g)}};function ZGe(t,e){let r=new Map([...t]),i=new Map([...e]);for(let[n,s]of t){let o=B.join(n,Rr);if(!M.existsSync(o)){s.children.delete(Rr);for(let a of i.keys())B.contains(o,a)!==null&&i.delete(a)}}return{locationTree:r,binSymlinks:i}}function ene(t){let e=Q.parseDescriptor(t);return Q.isVirtualDescriptor(e)&&(e=Q.devirtualizeDescriptor(e)),e.range.startsWith("link:")}async function _Ge(t,e,r,{loadManifest:i}){let n=new Map;for(let[a,{locations:l}]of t){let c=ene(a)?null:await i(a,l[0]),u=new Map;if(c)for(let[g,h]of c.bin){let f=B.join(l[0],h);h!==""&&M.existsSync(f)&&u.set(g,h)}n.set(a,u)}let s=new Map,o=(a,l,c)=>{let u=new Map,g=B.contains(r,a);if(c.locator&&g!==null){let h=n.get(c.locator);for(let[f,p]of h){let m=B.join(a,L.toPortablePath(p));u.set(Jt(f),m)}for(let[f,p]of c.children){let m=B.join(a,f),I=o(m,m,p);I.size>0&&s.set(a,new Map([...s.get(a)||new Map,...I]))}}else for(let[h,f]of c.children){let p=o(B.join(a,h),l,f);for(let[m,I]of p)u.set(m,I)}return u};for(let[a,l]of e){let c=o(a,a,l);c.size>0&&s.set(a,new Map([...s.get(a)||new Map,...c]))}return s}var nne=(t,e)=>{if(!t||!e)return t===e;let r=Q.parseLocator(t);Q.isVirtualLocator(r)&&(r=Q.devirtualizeLocator(r));let i=Q.parseLocator(e);return Q.isVirtualLocator(i)&&(i=Q.devirtualizeLocator(i)),Q.areLocatorsEqual(r,i)};function XF(t){return B.join(t.get("globalFolder"),"store")}async function WGe(t,e,{baseFs:r,project:i,report:n,loadManifest:s,realLocatorChecksums:o}){let a=B.join(i.cwd,Rr),{locationTree:l,binSymlinks:c}=ZGe(t.locationTree,t.binSymlinks),u=tne(e,{skipPrefix:i.cwd}),g=[],h=async({srcDir:N,dstDir:K,linkType:v,globalHardlinksStore:J,nmMode:oe,packageChecksum:T})=>{let A=(async()=>{try{v===At.SOFT?(await M.mkdirPromise(B.dirname(K),{recursive:!0}),await VF(B.resolve(N),K)):await XGe(K,N,{baseFs:r,globalHardlinksStore:J,nmMode:oe,packageChecksum:T})}catch(W){throw W.message=`While persisting ${N} -> ${K} ${W.message}`,W}finally{w.tick()}})().then(()=>g.splice(g.indexOf(A),1));g.push(A),g.length>rne&&await Promise.race(g)},f=async(N,K,v)=>{let J=(async()=>{let oe=async(T,A,W)=>{try{W.innerLoop||await M.mkdirPromise(A,{recursive:!0});let ee=await M.readdirPromise(T,{withFileTypes:!0});for(let re of ee){if(!W.innerLoop&&re.name===JF)continue;let H=B.join(T,re.name),R=B.join(A,re.name);re.isDirectory()?(re.name!==Rr||W&&W.innerLoop)&&(await M.mkdirPromise(R,{recursive:!0}),await oe(H,R,V(k({},W),{innerLoop:!0}))):F===Oi.HARDLINKS_LOCAL||F===Oi.HARDLINKS_GLOBAL?await M.linkPromise(H,R):await M.copyFilePromise(H,R,Xie.default.constants.COPYFILE_FICLONE)}}catch(ee){throw W.innerLoop||(ee.message=`While cloning ${T} -> ${A} ${ee.message}`),ee}finally{W.innerLoop||w.tick()}};await oe(N,K,v)})().then(()=>g.splice(g.indexOf(J),1));g.push(J),g.length>rne&&await Promise.race(g)},p=async(N,K,v)=>{if(!v)K.children.has(Rr)&&await Uu(B.join(N,Rr),{contentsOnly:!1}),await Uu(N,{contentsOnly:N===a});else for(let[J,oe]of K.children){let T=v.children.get(J);await p(B.join(N,J),oe,T)}};for(let[N,K]of l){let v=u.get(N);for(let[J,oe]of K.children){if(J===".")continue;let T=v&&v.children.get(J);await p(B.join(N,J),oe,T)}}let m=async(N,K,v)=>{if(!v)K.children.has(Rr)&&await Uu(B.join(N,Rr),{contentsOnly:!0}),await Uu(N,{contentsOnly:K.linkType===At.HARD});else{nne(K.locator,v.locator)||await Uu(N,{contentsOnly:K.linkType===At.HARD});for(let[J,oe]of K.children){let T=v.children.get(J);await m(B.join(N,J),oe,T)}}};for(let[N,K]of u){let v=l.get(N);for(let[J,oe]of K.children){if(J===".")continue;let T=v&&v.children.get(J);await m(B.join(N,J),oe,T)}}let I=new Map,y=[];for(let[N,{locations:K}]of t.locatorMap.entries())for(let v of K){let{locationRoot:J,segments:oe}=gB(v,{skipPrefix:i.cwd}),T=u.get(J),A=J;if(T){for(let W of oe)if(A=B.join(A,W),T=T.children.get(W),!T)break;if(T){let W=nne(T.locator,N),ee=e.get(T.locator),re=ee.target,H=A,R=ee.linkType;if(W)I.has(re)||I.set(re,H);else if(re!==H){let ke=Q.parseLocator(T.locator);Q.isVirtualLocator(ke)&&(ke=Q.devirtualizeLocator(ke)),y.push({srcDir:re,dstDir:H,linkType:R,realLocatorHash:ke.locatorHash})}}}}for(let[N,{locations:K}]of e.entries())for(let v of K){let{locationRoot:J,segments:oe}=gB(v,{skipPrefix:i.cwd}),T=l.get(J),A=u.get(J),W=J,ee=e.get(N),re=Q.parseLocator(N);Q.isVirtualLocator(re)&&(re=Q.devirtualizeLocator(re));let H=re.locatorHash,R=ee.target,ke=v;if(R===ke)continue;let Le=ee.linkType;for(let qe of oe)A=A.children.get(qe);if(!T)y.push({srcDir:R,dstDir:ke,linkType:Le,realLocatorHash:H});else for(let qe of oe)if(W=B.join(W,qe),T=T.children.get(qe),!T){y.push({srcDir:R,dstDir:ke,linkType:Le,realLocatorHash:H});break}}let w=ci.progressViaCounter(y.length),x=n.reportProgress(w),F=i.configuration.get("nmMode");try{let N=F===Oi.HARDLINKS_GLOBAL?`${XF(i.configuration)}/v1`:null;if(N&&!await M.existsPromise(N)){await M.mkdirpPromise(N);for(let v=0;v<256;v++)await M.mkdirPromise(B.join(N,v.toString(16).padStart(2,"0")))}for(let v of y)(v.linkType===At.SOFT||!I.has(v.srcDir))&&(I.set(v.srcDir,v.dstDir),await h(V(k({},v),{globalHardlinksStore:N,nmMode:F,packageChecksum:o.get(v.realLocatorHash)||null})));await Promise.all(g),g.length=0;for(let v of y){let J=I.get(v.srcDir);v.linkType!==At.SOFT&&v.dstDir!==J&&await f(J,v.dstDir,{nmMode:F})}await Promise.all(g),await M.mkdirPromise(a,{recursive:!0});let K=await _Ge(e,u,i.cwd,{loadManifest:s});await $Ge(c,K,i.cwd),await zGe(i,e,K,F)}finally{x.stop()}}async function $Ge(t,e,r){for(let i of t.keys()){if(B.contains(r,i)===null)throw new Error(`Assertion failed. Excepted bin symlink location to be inside project dir, instead it was at ${i}`);if(!e.has(i)){let n=B.join(i,Rr,JF);await M.removePromise(n)}}for(let[i,n]of e){if(B.contains(r,i)===null)throw new Error(`Assertion failed. Excepted bin symlink location to be inside project dir, instead it was at ${i}`);let s=B.join(i,Rr,JF),o=t.get(i)||new Map;await M.mkdirPromise(s,{recursive:!0});for(let a of o.keys())n.has(a)||(await M.removePromise(B.join(s,a)),process.platform==="win32"&&await M.removePromise(B.join(s,Jt(`${a}.cmd`))));for(let[a,l]of n){let c=o.get(a),u=B.join(s,a);c!==l&&(process.platform==="win32"?await(0,Vie.default)(L.fromPortablePath(l),L.fromPortablePath(u),{createPwshFile:!1}):(await M.removePromise(u),await VF(l,u),B.contains(r,await M.realpathPromise(l))!==null&&await M.chmodPromise(l,493)))}}}var ZF=class extends Cl{constructor(){super(...arguments);this.mode="loose"}makeInstaller(e){return new sne(e)}},sne=class extends Ku{constructor(){super(...arguments);this.mode="loose"}async transformPnpSettings(e){let r=new rr({baseFs:new nn({libzip:await gi(),maxOpenFiles:80,readOnlyArchives:!0})}),i=Kie(e,this.opts.project.cwd,r),{tree:n,errors:s}=wa(i,{pnpifyFs:!1,project:this.opts.project});if(!n){for(let{messageName:u,text:g}of s)this.opts.report.reportError(u,g);return}let o=new Map;e.fallbackPool=o;let a=(u,g)=>{let h=Q.parseLocator(g.locator),f=Q.stringifyIdent(h);f===u?o.set(u,h.reference):o.set(u,[f,h.reference])},l=B.join(this.opts.project.cwd,mt.nodeModules),c=n.get(l);if(typeof c=="undefined")throw new Error("Assertion failed: Expected a root junction point");if("target"in c)throw new Error("Assertion failed: Expected the root junction point to be a directory");for(let u of c.dirList){let g=B.join(l,u),h=n.get(g);if(typeof h=="undefined")throw new Error("Assertion failed: Expected the child to have been registered");if("target"in h)a(u,h);else for(let f of h.dirList){let p=B.join(g,f),m=n.get(p);if(typeof m=="undefined")throw new Error("Assertion failed: Expected the subchild to have been registered");if("target"in m)a(`${u}/${f}`,m);else throw new Error("Assertion failed: Expected the leaf junction to be a package")}}}};var eje={hooks:{cleanGlobalArtifacts:async t=>{let e=XF(t);await M.removePromise(e)}},configuration:{nmHoistingLimits:{description:"Prevent packages to be hoisted past specific levels",type:ge.STRING,values:[Mi.WORKSPACES,Mi.DEPENDENCIES,Mi.NONE],default:Mi.NONE},nmMode:{description:'If set to "hardlinks-local" Yarn will utilize hardlinks to reduce disk space consumption inside "node_modules" directories. With "hardlinks-global" Yarn will use global content addressable storage to reduce "node_modules" size across all the projects using this option.',type:ge.STRING,values:[Oi.CLASSIC,Oi.HARDLINKS_LOCAL,Oi.HARDLINKS_GLOBAL],default:Oi.CLASSIC}},linkers:[WF,ZF]},tje=eje;var tL={};$e(tL,{default:()=>AWe,npmConfigUtils:()=>qt,npmHttpUtils:()=>Bt,npmPublishUtils:()=>Dd});var lne=te(Cr());var Nt="npm:";var Bt={};$e(Bt,{AuthType:()=>Zi,customPackageError:()=>nje,del:()=>aje,get:()=>qn,getIdentUrl:()=>Pa,handleInvalidAuthenticationError:()=>xa,post:()=>sje,put:()=>oje});var ane=te(dp()),Ane=te(require("url"));var qt={};$e(qt,{RegistryType:()=>Sa,getAuthConfiguration:()=>eR,getDefaultRegistry:()=>hB,getPublishRegistry:()=>rje,getRegistryConfiguration:()=>one,getScopeConfiguration:()=>$F,getScopeRegistry:()=>Bo,normalizeRegistry:()=>ml});var Sa;(function(r){r.FETCH_REGISTRY="npmRegistryServer",r.PUBLISH_REGISTRY="npmPublishRegistry"})(Sa||(Sa={}));function ml(t){return t.replace(/\/$/,"")}function rje(t,{configuration:e}){return t.publishConfig&&t.publishConfig.registry?ml(t.publishConfig.registry):t.name?Bo(t.name.scope,{configuration:e,type:Sa.PUBLISH_REGISTRY}):hB({configuration:e,type:Sa.PUBLISH_REGISTRY})}function Bo(t,{configuration:e,type:r=Sa.FETCH_REGISTRY}){let i=$F(t,{configuration:e});if(i===null)return hB({configuration:e,type:r});let n=i.get(r);return n===null?hB({configuration:e,type:r}):ml(n)}function hB({configuration:t,type:e=Sa.FETCH_REGISTRY}){let r=t.get(e);return ml(r!==null?r:t.get(Sa.FETCH_REGISTRY))}function one(t,{configuration:e}){let r=e.get("npmRegistries"),i=ml(t),n=r.get(i);if(typeof n!="undefined")return n;let s=r.get(i.replace(/^[a-z]+:/,""));return typeof s!="undefined"?s:null}function $F(t,{configuration:e}){if(t===null)return null;let i=e.get("npmScopes").get(t);return i||null}function eR(t,{configuration:e,ident:r}){let i=r&&$F(r.scope,{configuration:e});return(i==null?void 0:i.get("npmAuthIdent"))||(i==null?void 0:i.get("npmAuthToken"))?i:one(t,{configuration:e})||e}var Zi;(function(n){n[n.NO_AUTH=0]="NO_AUTH",n[n.BEST_EFFORT=1]="BEST_EFFORT",n[n.CONFIGURATION=2]="CONFIGURATION",n[n.ALWAYS_AUTH=3]="ALWAYS_AUTH"})(Zi||(Zi={}));async function xa(t,{attemptedAs:e,registry:r,headers:i,configuration:n}){var s,o;if(((s=t.originalError)==null?void 0:s.name)==="HTTPError"&&((o=t.originalError)==null?void 0:o.response.statusCode)===401)throw new Ze(z.AUTHENTICATION_INVALID,`Invalid authentication (${typeof e!="string"?`as ${await ije(r,i,{configuration:n})}`:`attempted as ${e}`})`)}function nje(t){var e;return((e=t.response)==null?void 0:e.statusCode)===404?"Package not found":null}function Pa(t){return t.scope?`/@${t.scope}%2f${t.name}`:`/${t.name}`}async function qn(t,a){var l=a,{configuration:e,headers:r,ident:i,authType:n,registry:s}=l,o=Lr(l,["configuration","headers","ident","authType","registry"]);if(i&&typeof s=="undefined"&&(s=Bo(i.scope,{configuration:e})),i&&i.scope&&typeof n=="undefined"&&(n=1),typeof s!="string")throw new Error("Assertion failed: The registry should be a string");let c=await fB(s,{authType:n,configuration:e,ident:i});c&&(r=V(k({},r),{authorization:c}));try{return await Ft.get(t.charAt(0)==="/"?`${s}${t}`:t,k({configuration:e,headers:r},o))}catch(u){throw await xa(u,{registry:s,configuration:e,headers:r}),u}}async function sje(t,e,c){var u=c,{attemptedAs:r,configuration:i,headers:n,ident:s,authType:o=3,registry:a}=u,l=Lr(u,["attemptedAs","configuration","headers","ident","authType","registry"]);if(s&&typeof a=="undefined"&&(a=Bo(s.scope,{configuration:i})),typeof a!="string")throw new Error("Assertion failed: The registry should be a string");let g=await fB(a,{authType:o,configuration:i,ident:s});g&&(n=V(k({},n),{authorization:g}));try{return await Ft.post(a+t,e,k({configuration:i,headers:n},l))}catch(h){if(!rR(h))throw await xa(h,{attemptedAs:r,registry:a,configuration:i,headers:n}),h;let f=await tR(),p=k(k({},n),iR(f));try{return await Ft.post(`${a}${t}`,e,k({configuration:i,headers:p},l))}catch(m){throw await xa(m,{attemptedAs:r,registry:a,configuration:i,headers:n}),m}}}async function oje(t,e,c){var u=c,{attemptedAs:r,configuration:i,headers:n,ident:s,authType:o=3,registry:a}=u,l=Lr(u,["attemptedAs","configuration","headers","ident","authType","registry"]);if(s&&typeof a=="undefined"&&(a=Bo(s.scope,{configuration:i})),typeof a!="string")throw new Error("Assertion failed: The registry should be a string");let g=await fB(a,{authType:o,configuration:i,ident:s});g&&(n=V(k({},n),{authorization:g}));try{return await Ft.put(a+t,e,k({configuration:i,headers:n},l))}catch(h){if(!rR(h))throw await xa(h,{attemptedAs:r,registry:a,configuration:i,headers:n}),h;let f=await tR(),p=k(k({},n),iR(f));try{return await Ft.put(`${a}${t}`,e,k({configuration:i,headers:p},l))}catch(m){throw await xa(m,{attemptedAs:r,registry:a,configuration:i,headers:n}),m}}}async function aje(t,l){var c=l,{attemptedAs:e,configuration:r,headers:i,ident:n,authType:s=3,registry:o}=c,a=Lr(c,["attemptedAs","configuration","headers","ident","authType","registry"]);if(n&&typeof o=="undefined"&&(o=Bo(n.scope,{configuration:r})),typeof o!="string")throw new Error("Assertion failed: The registry should be a string");let u=await fB(o,{authType:s,configuration:r,ident:n});u&&(i=V(k({},i),{authorization:u}));try{return await Ft.del(o+t,k({configuration:r,headers:i},a))}catch(g){if(!rR(g))throw await xa(g,{attemptedAs:e,registry:o,configuration:r,headers:i}),g;let h=await tR(),f=k(k({},i),iR(h));try{return await Ft.del(`${o}${t}`,k({configuration:r,headers:f},a))}catch(p){throw await xa(p,{attemptedAs:e,registry:o,configuration:r,headers:i}),p}}}async function fB(t,{authType:e=2,configuration:r,ident:i}){let n=eR(t,{configuration:r,ident:i}),s=Aje(n,e);if(!s)return null;let o=await r.reduceHook(a=>a.getNpmAuthenticationHeader,void 0,t,{configuration:r,ident:i});if(o)return o;if(n.get("npmAuthToken"))return`Bearer ${n.get("npmAuthToken")}`;if(n.get("npmAuthIdent")){let a=n.get("npmAuthIdent");return a.includes(":")?`Basic ${Buffer.from(a).toString("base64")}`:`Basic ${a}`}if(s&&e!==1)throw new Ze(z.AUTHENTICATION_NOT_FOUND,"No authentication configured for request");return null}function Aje(t,e){switch(e){case 2:return t.get("npmAlwaysAuth");case 1:case 3:return!0;case 0:return!1;default:throw new Error("Unreachable")}}async function ije(t,e,{configuration:r}){var i;if(typeof e=="undefined"||typeof e.authorization=="undefined")return"an anonymous user";try{return(i=(await Ft.get(new Ane.URL(`${t}/-/whoami`).href,{configuration:r,headers:e,jsonResponse:!0})).username)!=null?i:"an unknown user"}catch{return"an unknown user"}}async function tR(){if(process.env.TEST_ENV)return process.env.TEST_NPM_2FA_TOKEN||"";let{otp:t}=await(0,ane.prompt)({type:"password",name:"otp",message:"One-time password:",required:!0,onCancel:()=>process.exit(130)});return t}function rR(t){var e,r;if(((e=t.originalError)==null?void 0:e.name)!=="HTTPError")return!1;try{return((r=t.originalError)==null?void 0:r.response.headers["www-authenticate"].split(/,\s*/).map(n=>n.toLowerCase())).includes("otp")}catch(i){return!1}}function iR(t){return{["npm-otp"]:t}}var nR=class{supports(e,r){if(!e.reference.startsWith(Nt))return!1;let{selector:i,params:n}=Q.parseRange(e.reference);return!(!lne.default.valid(i)||n===null||typeof n.__archiveUrl!="string")}getLocalPath(e,r){return null}async fetch(e,r){let i=r.checksums.get(e.locatorHash)||null,[n,s,o]=await r.cache.fetchPackageFromCache(e,i,{onHit:()=>r.report.reportCacheHit(e),onMiss:()=>r.report.reportCacheMiss(e,`${Q.prettyLocator(r.project.configuration,e)} can't be found in the cache and will be fetched from the remote server`),loader:()=>this.fetchFromNetwork(e,r),skipIntegrityCheck:r.skipIntegrityCheck});return{packageFs:n,releaseFs:s,prefixPath:Q.getIdentVendorPath(e),checksum:o}}async fetchFromNetwork(e,r){let{params:i}=Q.parseRange(e.reference);if(i===null||typeof i.__archiveUrl!="string")throw new Error("Assertion failed: The archiveUrl querystring parameter should have been available");let n=await qn(i.__archiveUrl,{configuration:r.project.configuration,ident:e});return await hr.convertToZip(n,{compressionLevel:r.project.configuration.get("compressionLevel"),prefixPath:Q.getIdentVendorPath(e),stripComponents:1})}};var sR=class{supportsDescriptor(e,r){return!(!e.range.startsWith(Nt)||!Q.tryParseDescriptor(e.range.slice(Nt.length),!0))}supportsLocator(e,r){return!1}shouldPersistResolution(e,r){throw new Error("Unreachable")}bindDescriptor(e,r,i){return e}getResolutionDependencies(e,r){let i=Q.parseDescriptor(e.range.slice(Nt.length),!0);return r.resolver.getResolutionDependencies(i,r)}async getCandidates(e,r,i){let n=Q.parseDescriptor(e.range.slice(Nt.length),!0);return await i.resolver.getCandidates(n,r,i)}async getSatisfying(e,r,i){let n=Q.parseDescriptor(e.range.slice(Nt.length),!0);return i.resolver.getSatisfying(n,r,i)}resolve(e,r){throw new Error("Unreachable")}};var oR=te(Cr()),cne=te(require("url"));var Jn=class{supports(e,r){if(!e.reference.startsWith(Nt))return!1;let i=new cne.URL(e.reference);return!(!oR.default.valid(i.pathname)||i.searchParams.has("__archiveUrl"))}getLocalPath(e,r){return null}async fetch(e,r){let i=r.checksums.get(e.locatorHash)||null,[n,s,o]=await r.cache.fetchPackageFromCache(e,i,{onHit:()=>r.report.reportCacheHit(e),onMiss:()=>r.report.reportCacheMiss(e,`${Q.prettyLocator(r.project.configuration,e)} can't be found in the cache and will be fetched from the remote registry`),loader:()=>this.fetchFromNetwork(e,r),skipIntegrityCheck:r.skipIntegrityCheck});return{packageFs:n,releaseFs:s,prefixPath:Q.getIdentVendorPath(e),checksum:o}}async fetchFromNetwork(e,r){let i;try{i=await qn(Jn.getLocatorUrl(e),{configuration:r.project.configuration,ident:e})}catch(n){i=await qn(Jn.getLocatorUrl(e).replace(/%2f/g,"/"),{configuration:r.project.configuration,ident:e})}return await hr.convertToZip(i,{compressionLevel:r.project.configuration.get("compressionLevel"),prefixPath:Q.getIdentVendorPath(e),stripComponents:1})}static isConventionalTarballUrl(e,r,{configuration:i}){let n=Bo(e.scope,{configuration:i}),s=Jn.getLocatorUrl(e);return r=r.replace(/^https?:(\/\/(?:[^/]+\.)?npmjs.org(?:$|\/))/,"https:$1"),n=n.replace(/^https:\/\/registry\.npmjs\.org($|\/)/,"https://registry.yarnpkg.com$1"),r=r.replace(/^https:\/\/registry\.npmjs\.org($|\/)/,"https://registry.yarnpkg.com$1"),r===n+s||r===n+s.replace(/%2f/g,"/")}static getLocatorUrl(e){let r=oR.default.clean(e.reference.slice(Nt.length));if(r===null)throw new Ze(z.RESOLVER_NOT_FOUND,"The npm semver resolver got selected, but the version isn't semver");return`${Pa(e)}/-/${e.name}-${r}.tgz`}};var aR=te(Cr());var pB=Q.makeIdent(null,"node-gyp"),lje=/\b(node-gyp|prebuild-install)\b/,AR=class{supportsDescriptor(e,r){return e.range.startsWith(Nt)?!!kt.validRange(e.range.slice(Nt.length)):!1}supportsLocator(e,r){if(!e.reference.startsWith(Nt))return!1;let{selector:i}=Q.parseRange(e.reference);return!!aR.default.valid(i)}shouldPersistResolution(e,r){return!0}bindDescriptor(e,r,i){return e}getResolutionDependencies(e,r){return[]}async getCandidates(e,r,i){let n=kt.validRange(e.range.slice(Nt.length));if(n===null)throw new Error(`Expected a valid range, got ${e.range.slice(Nt.length)}`);let s=await qn(Pa(e),{configuration:i.project.configuration,ident:e,jsonResponse:!0}),o=de.mapAndFilter(Object.keys(s.versions),c=>{try{let u=new kt.SemVer(c);if(n.test(u))return u}catch{}return de.mapAndFilter.skip}),a=o.filter(c=>!s.versions[c.raw].deprecated),l=a.length>0?a:o;return l.sort((c,u)=>-c.compare(u)),l.map(c=>{let u=Q.makeLocator(e,`${Nt}${c.raw}`),g=s.versions[c.raw].dist.tarball;return Jn.isConventionalTarballUrl(u,g,{configuration:i.project.configuration})?u:Q.bindLocator(u,{__archiveUrl:g})})}async getSatisfying(e,r,i){let n=kt.validRange(e.range.slice(Nt.length));if(n===null)throw new Error(`Expected a valid range, got ${e.range.slice(Nt.length)}`);return de.mapAndFilter(r,s=>{try{let{selector:o}=Q.parseRange(s,{requireProtocol:Nt}),a=new kt.SemVer(o);if(n.test(a))return{reference:s,version:a}}catch{}return de.mapAndFilter.skip}).sort((s,o)=>-s.version.compare(o.version)).map(({reference:s})=>Q.makeLocator(e,s))}async resolve(e,r){let{selector:i}=Q.parseRange(e.reference),n=aR.default.clean(i);if(n===null)throw new Ze(z.RESOLVER_NOT_FOUND,"The npm semver resolver got selected, but the version isn't semver");let s=await qn(Pa(e),{configuration:r.project.configuration,ident:e,jsonResponse:!0});if(!Object.prototype.hasOwnProperty.call(s,"versions"))throw new Ze(z.REMOTE_INVALID,'Registry returned invalid data for - missing "versions" field');if(!Object.prototype.hasOwnProperty.call(s.versions,n))throw new Ze(z.REMOTE_NOT_FOUND,`Registry failed to return reference "${n}"`);let o=new We;if(o.load(s.versions[n]),!o.dependencies.has(pB.identHash)&&!o.peerDependencies.has(pB.identHash)){for(let a of o.scripts.values())if(a.match(lje)){o.dependencies.set(pB.identHash,Q.makeDescriptor(pB,"latest")),r.report.reportWarning(z.NODE_GYP_INJECTED,`${Q.prettyLocator(r.project.configuration,e)}: Implicit dependencies on node-gyp are discouraged`);break}}return typeof o.raw.deprecated=="string"&&r.report.reportWarningOnce(z.DEPRECATED_PACKAGE,`${Q.prettyLocator(r.project.configuration,e)} is deprecated: ${o.raw.deprecated}`),V(k({},e),{version:n,languageName:"node",linkType:At.HARD,dependencies:o.dependencies,peerDependencies:o.peerDependencies,dependenciesMeta:o.dependenciesMeta,peerDependenciesMeta:o.peerDependenciesMeta,bin:o.bin})}};var lR=class{supportsDescriptor(e,r){return!(!e.range.startsWith(Nt)||!tu.test(e.range.slice(Nt.length)))}supportsLocator(e,r){return!1}shouldPersistResolution(e,r){throw new Error("Unreachable")}bindDescriptor(e,r,i){return e}getResolutionDependencies(e,r){return[]}async getCandidates(e,r,i){let n=e.range.slice(Nt.length),s=await qn(Pa(e),{configuration:i.project.configuration,ident:e,jsonResponse:!0});if(!Object.prototype.hasOwnProperty.call(s,"dist-tags"))throw new Ze(z.REMOTE_INVALID,'Registry returned invalid data - missing "dist-tags" field');let o=s["dist-tags"];if(!Object.prototype.hasOwnProperty.call(o,n))throw new Ze(z.REMOTE_NOT_FOUND,`Registry failed to return tag "${n}"`);let a=o[n],l=Q.makeLocator(e,`${Nt}${a}`),c=s.versions[a].dist.tarball;return Jn.isConventionalTarballUrl(l,c,{configuration:i.project.configuration})?[l]:[Q.bindLocator(l,{__archiveUrl:c})]}async getSatisfying(e,r,i){return null}async resolve(e,r){throw new Error("Unreachable")}};var Dd={};$e(Dd,{makePublishBody:()=>oWe});var ZR={};$e(ZR,{default:()=>YJe,packUtils:()=>Do});var Do={};$e(Do,{genPackList:()=>OB,genPackStream:()=>XR,genPackageManifest:()=>Kse,hasPackScripts:()=>zR,prepareForPack:()=>VR});var WR=te(Yi()),Mse=te(Nse()),Ose=te(require("zlib")),vJe=["/package.json","/readme","/readme.*","/license","/license.*","/licence","/licence.*","/changelog","/changelog.*"],FJe=["/package.tgz",".github",".git",".hg","node_modules",".npmignore",".gitignore",".#*",".DS_Store"];async function zR(t){return!!(bt.hasWorkspaceScript(t,"prepack")||bt.hasWorkspaceScript(t,"postpack"))}async function VR(t,{report:e},r){await bt.maybeExecuteWorkspaceLifecycleScript(t,"prepack",{report:e});try{await r()}finally{await bt.maybeExecuteWorkspaceLifecycleScript(t,"postpack",{report:e})}}async function XR(t,e){var s,o;typeof e=="undefined"&&(e=await OB(t));let r=new Set;for(let a of(o=(s=t.manifest.publishConfig)==null?void 0:s.executableFiles)!=null?o:new Set)r.add(B.normalize(a));for(let a of t.manifest.bin.values())r.add(B.normalize(a));let i=Mse.default.pack();process.nextTick(async()=>{for(let a of e){let l=B.normalize(a),c=B.resolve(t.cwd,l),u=B.join("package",l),g=await M.lstatPromise(c),h={name:u,mtime:new Date(hr.safeTime*1e3)},f=r.has(l)?493:420,p,m,I=new Promise((w,x)=>{p=w,m=x}),y=w=>{w?m(w):p()};if(g.isFile()){let w;l==="package.json"?w=Buffer.from(JSON.stringify(await Kse(t),null,2)):w=await M.readFilePromise(c),i.entry(V(k({},h),{mode:f,type:"file"}),w,y)}else g.isSymbolicLink()?i.entry(V(k({},h),{mode:f,type:"symlink",linkname:await M.readlinkPromise(c)}),y):y(new Error(`Unsupported file type ${g.mode} for ${L.fromPortablePath(l)}`));await I}i.finalize()});let n=(0,Ose.createGzip)();return i.pipe(n),n}async function Kse(t){let e=JSON.parse(JSON.stringify(t.manifest.raw));return await t.project.configuration.triggerHook(r=>r.beforeWorkspacePacking,t,e),e}async function OB(t){var g,h,f,p,m,I,y,w;let e=t.project,r=e.configuration,i={accept:[],reject:[]};for(let x of FJe)i.reject.push(x);for(let x of vJe)i.accept.push(x);i.reject.push(r.get("rcFilename"));let n=x=>{if(x===null||!x.startsWith(`${t.cwd}/`))return;let F=B.relative(t.cwd,x),N=B.resolve(Ee.root,F);i.reject.push(N)};n(B.resolve(e.cwd,r.get("lockfileFilename"))),n(r.get("cacheFolder")),n(r.get("globalFolder")),n(r.get("installStatePath")),n(r.get("virtualFolder")),n(r.get("yarnPath")),await r.triggerHook(x=>x.populateYarnPaths,e,x=>{n(x)});for(let x of e.workspaces){let F=B.relative(t.cwd,x.cwd);F!==""&&!F.match(/^(\.\.)?\//)&&i.reject.push(`/${F}`)}let s={accept:[],reject:[]},o=(h=(g=t.manifest.publishConfig)==null?void 0:g.main)!=null?h:t.manifest.main,a=(p=(f=t.manifest.publishConfig)==null?void 0:f.module)!=null?p:t.manifest.module,l=(I=(m=t.manifest.publishConfig)==null?void 0:m.browser)!=null?I:t.manifest.browser,c=(w=(y=t.manifest.publishConfig)==null?void 0:y.bin)!=null?w:t.manifest.bin;o!=null&&s.accept.push(B.resolve(Ee.root,o)),a!=null&&s.accept.push(B.resolve(Ee.root,a)),typeof l=="string"&&s.accept.push(B.resolve(Ee.root,l));for(let x of c.values())s.accept.push(B.resolve(Ee.root,x));if(l instanceof Map)for(let[x,F]of l.entries())s.accept.push(B.resolve(Ee.root,x)),typeof F=="string"&&s.accept.push(B.resolve(Ee.root,F));let u=t.manifest.files!==null;if(u){s.reject.push("/*");for(let x of t.manifest.files)Tse(s.accept,x,{cwd:Ee.root})}return await RJe(t.cwd,{hasExplicitFileList:u,globalList:i,ignoreList:s})}async function RJe(t,{hasExplicitFileList:e,globalList:r,ignoreList:i}){let n=[],s=new Ns(t),o=[[Ee.root,[i]]];for(;o.length>0;){let[a,l]=o.pop(),c=await s.lstatPromise(a);if(!Hse(a,{globalList:r,ignoreLists:c.isDirectory()?null:l}))if(c.isDirectory()){let u=await s.readdirPromise(a),g=!1,h=!1;if(!e||a!==Ee.root)for(let m of u)g=g||m===".gitignore",h=h||m===".npmignore";let f=h?await Use(s,a,".npmignore"):g?await Use(s,a,".gitignore"):null,p=f!==null?[f].concat(l):l;Hse(a,{globalList:r,ignoreLists:l})&&(p=[...l,{accept:[],reject:["**/*"]}]);for(let m of u)o.push([B.resolve(a,m),p])}else(c.isFile()||c.isSymbolicLink())&&n.push(B.relative(Ee.root,a))}return n.sort()}async function Use(t,e,r){let i={accept:[],reject:[]},n=await t.readFilePromise(B.join(e,r),"utf8");for(let s of n.split(/\n/g))Tse(i.reject,s,{cwd:e});return i}function LJe(t,{cwd:e}){let r=t[0]==="!";return r&&(t=t.slice(1)),t.match(/\.{0,1}\//)&&(t=B.resolve(e,t)),r&&(t=`!${t}`),t}function Tse(t,e,{cwd:r}){let i=e.trim();i===""||i[0]==="#"||t.push(LJe(i,{cwd:r}))}function Hse(t,{globalList:e,ignoreLists:r}){if(KB(t,e.accept))return!1;if(KB(t,e.reject))return!0;if(r!==null)for(let i of r){if(KB(t,i.accept))return!1;if(KB(t,i.reject))return!0}return!1}function KB(t,e){let r=e,i=[];for(let n=0;n{await VR(i,{report:l},async()=>{l.reportJson({base:i.cwd});let c=await OB(i);for(let u of c)l.reportInfo(null,u),l.reportJson({location:u});if(!this.dryRun){let u=await XR(i,c),g=M.createWriteStream(s);u.pipe(g),await new Promise(h=>{g.on("finish",h)})}}),this.dryRun||(l.reportInfo(z.UNNAMED,`Package archive generated in ${Ae.pretty(e,s,Ae.Type.PATH)}`),l.reportJson({output:s}))})).exitCode()}};wd.paths=[["pack"]],wd.usage=fe.Usage({description:"generate a tarball from the active workspace",details:"\n This command will turn the active workspace into a compressed archive suitable for publishing. The archive will by default be stored at the root of the workspace (`package.tgz`).\n\n If the `-o,---out` is set the archive will be created at the specified path. The `%s` and `%v` variables can be used within the path and will be respectively replaced by the package name and version.\n ",examples:[["Create an archive from the active workspace","yarn pack"],["List the files that would be made part of the workspace's archive","yarn pack --dry-run"],["Name and output the archive in a dedicated folder","yarn pack --out /artifacts/%s-%v.tgz"]]});var Gse=wd;function NJe(t,{workspace:e}){let r=t.replace("%s",MJe(e)).replace("%v",OJe(e));return L.toPortablePath(r)}function MJe(t){return t.manifest.name!==null?Q.slugifyIdent(t.manifest.name):"package"}function OJe(t){return t.manifest.version!==null?t.manifest.version:"unknown"}var KJe=["dependencies","devDependencies","peerDependencies"],TJe="workspace:",UJe=(t,e)=>{var i;e.publishConfig&&(e.publishConfig.main&&(e.main=e.publishConfig.main),e.publishConfig.browser&&(e.browser=e.publishConfig.browser),e.publishConfig.module&&(e.module=e.publishConfig.module),e.publishConfig.browser&&(e.browser=e.publishConfig.browser),e.publishConfig.exports&&(e.exports=e.publishConfig.exports),e.publishConfig.bin&&(e.bin=e.publishConfig.bin));let r=t.project;for(let n of KJe)for(let s of t.manifest.getForScope(n).values()){let o=r.tryWorkspaceByDescriptor(s),a=Q.parseRange(s.range);if(a.protocol===TJe)if(o===null){if(r.tryWorkspaceByIdent(s)===null)throw new Ze(z.WORKSPACE_NOT_FOUND,`${Q.prettyDescriptor(r.configuration,s)}: No local workspace found for this range`)}else{let l;Q.areDescriptorsEqual(s,o.anchoredDescriptor)||a.selector==="*"?l=(i=o.manifest.version)!=null?i:"0.0.0":l=a.selector,e[n][Q.stringifyIdent(s)]=l}}},HJe={hooks:{beforeWorkspacePacking:UJe},commands:[Gse]},YJe=HJe;var _se=te(require("crypto")),$se=te(Zse()),eoe=te(require("url"));async function oWe(t,e,{access:r,tag:i,registry:n}){let s=t.project.configuration,o=t.manifest.name,a=t.manifest.version,l=Q.stringifyIdent(o),c=(0,_se.createHash)("sha1").update(e).digest("hex"),u=$se.default.fromData(e).toString();typeof r=="undefined"&&(t.manifest.publishConfig&&typeof t.manifest.publishConfig.access=="string"?r=t.manifest.publishConfig.access:s.get("npmPublishAccess")!==null?r=s.get("npmPublishAccess"):o.scope?r="restricted":r="public");let g=await Do.genPackageManifest(t),h=`${l}-${a}.tgz`,f=new eoe.URL(`${l}/-/${h}`,n);return{_id:l,_attachments:{[h]:{content_type:"application/octet-stream",data:e.toString("base64"),length:e.length}},name:l,access:r,["dist-tags"]:{[i]:a},versions:{[a]:V(k({},g),{_id:`${l}@${a}`,name:l,version:a,dist:{shasum:c,integrity:u,tarball:f.toString()}})}}}var rL={npmAlwaysAuth:{description:"URL of the selected npm registry (note: npm enterprise isn't supported)",type:ge.BOOLEAN,default:!1},npmAuthIdent:{description:"Authentication identity for the npm registry (_auth in npm and yarn v1)",type:ge.SECRET,default:null},npmAuthToken:{description:"Authentication token for the npm registry (_authToken in npm and yarn v1)",type:ge.SECRET,default:null}},toe={npmPublishRegistry:{description:"Registry to push packages to",type:ge.STRING,default:null},npmRegistryServer:{description:"URL of the selected npm registry (note: npm enterprise isn't supported)",type:ge.STRING,default:"https://registry.yarnpkg.com"}},aWe={configuration:V(k(k({},rL),toe),{npmScopes:{description:"Settings per package scope",type:ge.MAP,valueDefinition:{description:"",type:ge.SHAPE,properties:k(k({},rL),toe)}},npmRegistries:{description:"Settings per registry",type:ge.MAP,normalizeKeys:ml,valueDefinition:{description:"",type:ge.SHAPE,properties:k({},rL)}}}),fetchers:[nR,Jn],resolvers:[sR,AR,lR]},AWe=aWe;var oL={};$e(oL,{default:()=>CWe});Fn();var xs;(function(i){i.All="all",i.Production="production",i.Development="development"})(xs||(xs={}));var zn;(function(s){s.Info="info",s.Low="low",s.Moderate="moderate",s.High="high",s.Critical="critical"})(zn||(zn={}));var TB=[zn.Info,zn.Low,zn.Moderate,zn.High,zn.Critical];function roe(t,e){let r=[],i=new Set,n=o=>{i.has(o)||(i.add(o),r.push(o))};for(let o of e)n(o);let s=new Set;for(;r.length>0;){let o=r.shift(),a=t.storedResolutions.get(o);if(typeof a=="undefined")throw new Error("Assertion failed: Expected the resolution to have been registered");let l=t.storedPackages.get(a);if(!!l){s.add(o);for(let c of l.dependencies.values())n(c.descriptorHash)}}return s}function lWe(t,e){return new Set([...t].filter(r=>!e.has(r)))}function cWe(t,e,{all:r}){let i=r?t.workspaces:[e],n=i.map(h=>h.manifest),s=new Set(n.map(h=>[...h.dependencies].map(([f,p])=>f)).flat()),o=new Set(n.map(h=>[...h.devDependencies].map(([f,p])=>f)).flat()),a=i.map(h=>[...h.dependencies.values()]).flat(),l=a.filter(h=>s.has(h.identHash)).map(h=>h.descriptorHash),c=a.filter(h=>o.has(h.identHash)).map(h=>h.descriptorHash),u=roe(t,l),g=roe(t,c);return lWe(g,u)}function ioe(t){let e={};for(let r of t)e[Q.stringifyIdent(r)]=Q.parseRange(r.range).selector;return e}function noe(t){if(typeof t=="undefined")return new Set;let e=TB.indexOf(t),r=TB.slice(e);return new Set(r)}function uWe(t,e){let r=noe(e),i={};for(let n of r)i[n]=t[n];return i}function soe(t,e){var i;let r=uWe(t,e);for(let n of Object.keys(r))if((i=r[n])!=null?i:0>0)return!0;return!1}function ooe(t,e){let r={},i={children:r},n=Object.values(t.advisories);if(e!=null){let s=noe(e);n=n.filter(o=>s.has(o.severity))}for(let s of de.sortMap(n,o=>o.module_name))r[s.module_name]={label:s.module_name,value:Ae.tuple(Ae.Type.RANGE,s.findings.map(o=>o.version).join(", ")),children:{Issue:{label:"Issue",value:Ae.tuple(Ae.Type.NO_HINT,s.title)},URL:{label:"URL",value:Ae.tuple(Ae.Type.URL,s.url)},Severity:{label:"Severity",value:Ae.tuple(Ae.Type.NO_HINT,s.severity)},["Vulnerable Versions"]:{label:"Vulnerable Versions",value:Ae.tuple(Ae.Type.RANGE,s.vulnerable_versions)},["Patched Versions"]:{label:"Patched Versions",value:Ae.tuple(Ae.Type.RANGE,s.patched_versions)},Via:{label:"Via",value:Ae.tuple(Ae.Type.NO_HINT,Array.from(new Set(s.findings.map(o=>o.paths).flat().map(o=>o.split(">")[0]))).join(", "))},Recommendation:{label:"Recommendation",value:Ae.tuple(Ae.Type.NO_HINT,s.recommendation.replace(/\n/g," "))}}};return i}function aoe(t,e,{all:r,environment:i}){let n=r?t.workspaces:[e],s=[xs.All,xs.Production].includes(i),o=[];if(s)for(let c of n)for(let u of c.manifest.dependencies.values())o.push(u);let a=[xs.All,xs.Development].includes(i),l=[];if(a)for(let c of n)for(let u of c.manifest.devDependencies.values())l.push(u);return ioe([...o,...l].filter(c=>Q.parseRange(c.range).protocol===null))}function Aoe(t,e,{all:r}){var s;let i=cWe(t,e,{all:r}),n={};for(let o of t.storedPackages.values())n[Q.stringifyIdent(o)]={version:(s=o.version)!=null?s:"0.0.0",integrity:o.identHash,requires:ioe(o.dependencies.values()),dev:i.has(Q.convertLocatorToDescriptor(o).descriptorHash)};return n}var Sd=class extends Be{constructor(){super(...arguments);this.all=G.Boolean("-A,--all",!1,{description:"Audit dependencies from all workspaces"});this.recursive=G.Boolean("-R,--recursive",!1,{description:"Audit transitive dependencies as well"});this.environment=G.String("--environment",xs.All,{description:"Which environments to cover",validator:ni(xs)});this.json=G.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"});this.severity=G.String("--severity",zn.Info,{description:"Minimal severity requested for packages to be displayed",validator:ni(zn)})}async execute(){let e=await le.find(this.context.cwd,this.context.plugins),{project:r,workspace:i}=await Fe.find(e,this.context.cwd);if(!i)throw new Xe(r.cwd,this.context.cwd);await r.restoreInstallState();let n=aoe(r,i,{all:this.all,environment:this.environment}),s=Aoe(r,i,{all:this.all});if(!this.recursive)for(let h of Object.keys(s))Object.prototype.hasOwnProperty.call(n,h)?s[h].requires={}:delete s[h];let o={requires:n,dependencies:s},a=qt.getPublishRegistry(i.manifest,{configuration:e}),l,c=await uo.start({configuration:e,stdout:this.context.stdout},async()=>{l=await Bt.post("/-/npm/v1/security/audits/quick",o,{authType:Bt.AuthType.NO_AUTH,configuration:e,jsonResponse:!0,registry:a})});if(c.hasErrors())return c.exitCode();let u=soe(l.metadata.vulnerabilities,this.severity);return!this.json&&u?(Hn.emitTree(ooe(l,this.severity),{configuration:e,json:this.json,stdout:this.context.stdout,separators:2}),1):(await xe.start({configuration:e,includeFooter:!1,json:this.json,stdout:this.context.stdout},async h=>{h.reportJson(l),u||h.reportInfo(z.EXCEPTION,"No audit suggestions")})).exitCode()}};Sd.paths=[["npm","audit"]],Sd.usage=fe.Usage({description:"perform a vulnerability audit against the installed packages",details:` This command checks for known security reports on the packages you use. The reports are by default extracted from the npm registry, and may or may not be relevant to your actual program (not all vulnerabilities affect all code paths). For consistency with our other commands the default is to only check the direct dependencies for the active workspace. To extend this search to all workspaces, use \`-A,--all\`. To extend this search to both direct and transitive dependencies, use \`-R,--recursive\`. - Applying the \`--severity\` flag will limit the audit table to vulnerabilities of the corresponding severity and above. Valid values are ${Jy.map(e=>`\`${e}\``).join(", ")}. + Applying the \`--severity\` flag will limit the audit table to vulnerabilities of the corresponding severity and above. Valid values are ${TB.map(e=>`\`${e}\``).join(", ")}. If the \`--json\` flag is set, Yarn will print the output exactly as received from the registry. Regardless of this flag, the process will exit with a non-zero exit code if a report is found for the selected packages. To understand the dependency tree requiring vulnerable packages, check the raw report with the \`--json\` flag or use \`yarn why \` to get more information as to who depends on them. - `,examples:[["Checks for known security issues with the installed packages. The output is a list of known issues.","yarn npm audit"],["Audit dependencies in all workspaces","yarn npm audit --all"],["Limit auditing to `dependencies` (excludes `devDependencies`)","yarn npm audit --environment production"],["Show audit report as valid JSON","yarn npm audit --json"],["Audit all direct and transitive dependencies","yarn npm audit --recursive"],["Output moderate (or more severe) vulnerabilities","yarn npm audit --severity moderate"]]});var Dne=Yp;var Sne=X(require("path")),WF=X(hr()),zF=X(require("util")),jp=class extends Ce{constructor(){super(...arguments);this.fields=j.String("-f,--fields",{description:"A comma-separated list of manifest fields that should be displayed"});this.json=j.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"});this.packages=j.Rest()}async execute(){let e=await oe.find(this.context.cwd,this.context.plugins),{project:r}=await ke.find(e,this.context.cwd),i=typeof this.fields!="undefined"?new Set(["name",...this.fields.split(/\s*,\s*/)]):null,n=[],s=!1,o=await we.start({configuration:e,includeFooter:!1,json:this.json,stdout:this.context.stdout},async a=>{for(let l of this.packages){let c;if(l==="."){let P=r.topLevelWorkspace;if(!P.manifest.name)throw new UsageError(`Missing 'name' field in ${Sne.default.join(P.cwd,"package.json")}`);c=b.makeDescriptor(P.manifest.name,"unknown")}else c=b.parseDescriptor(l);let u=mt.getIdentUrl(c),g=XF(await mt.get(u,{configuration:e,ident:c,jsonResponse:!0,customErrorMessage:mt.customPackageError})),h=Object.keys(g.versions).sort(WF.default.compareLoose),p=g["dist-tags"].latest||h[h.length-1],m=St.validRange(c.range);if(m){let P=WF.default.maxSatisfying(h,m);P!==null?p=P:(a.reportWarning(J.UNNAMED,`Unmet range ${b.prettyRange(e,c.range)}; falling back to the latest version`),s=!0)}else c.range!=="unknown"&&(a.reportWarning(J.UNNAMED,`Invalid range ${b.prettyRange(e,c.range)}; falling back to the latest version`),s=!0);let I=g.versions[p],y={...g,...I,version:p,versions:h},B;if(i!==null){B={};for(let P of i){let k=y[P];if(typeof k!="undefined")B[P]=k;else{a.reportWarning(J.EXCEPTION,`The '${P}' field doesn't exist inside ${b.prettyIdent(e,c)}'s informations`),s=!0;continue}}}else this.json||(delete y.dist,delete y.readme,delete y.users),B=y;a.reportJson(B),this.json||n.push(B)}});zF.inspect.styles.name="cyan";for(let a of n)(a!==n[0]||s)&&this.context.stdout.write(` -`),this.context.stdout.write(`${zF.inspect(a,{depth:Infinity,colors:!0,compact:!1})} -`);return o.exitCode()}};jp.paths=[["npm","info"]],jp.usage=ce.Usage({category:"Npm-related commands",description:"show information about a package",details:"\n This command will fetch information about a package from the npm registry, and prints it in a tree format.\n\n The package does not have to be installed locally, but needs to have been published (in particular, local changes will be ignored even for workspaces).\n\n Append `@` to the package argument to provide information specific to the latest version that satisfies the range. If the range is invalid or if there is no version satisfying the range, the command will print a warning and fall back to the latest version.\n\n If the `-f,--fields` option is set, it's a comma-separated list of fields which will be used to only display part of the package informations.\n\n By default, this command won't return the `dist`, `readme`, and `users` fields, since they are often very long. To explicitly request those fields, explicitly list them with the `--fields` flag or request the output in JSON mode.\n ",examples:[["Show all available information about react (except the `dist`, `readme`, and `users` fields)","yarn npm info react"],["Show all available information about react as valid JSON (including the `dist`, `readme`, and `users` fields)","yarn npm info react --json"],["Show all available information about react 16.12.0","yarn npm info react@16.12.0"],["Show the description of react","yarn npm info react --fields description"],["Show all available versions of react","yarn npm info react --fields versions"],["Show the readme of react","yarn npm info react --fields readme"],["Show a few fields of react","yarn npm info react --fields homepage,repository"]]});var Pne=jp;function XF(t){if(Array.isArray(t)){let e=[];for(let r of t)r=XF(r),r&&e.push(r);return e}else if(typeof t=="object"&&t!==null){let e={};for(let r of Object.keys(t)){if(r.startsWith("_"))continue;let i=XF(t[r]);i&&(e[r]=i)}return e}else return t||null}var xne=X(Lf()),Gp=class extends Ce{constructor(){super(...arguments);this.scope=j.String("-s,--scope",{description:"Login to the registry configured for a given scope"});this.publish=j.Boolean("--publish",!1,{description:"Login to the publish registry"})}async execute(){let e=await oe.find(this.context.cwd,this.context.plugins),r=await Wy({configuration:e,cwd:this.context.cwd,publish:this.publish,scope:this.scope});return(await we.start({configuration:e,stdout:this.context.stdout},async n=>{let s=await Eqe({registry:r,report:n,stdin:this.context.stdin,stdout:this.context.stdout}),o=`/-/user/org.couchdb.user:${encodeURIComponent(s.name)}`,a=await mt.put(o,s,{attemptedAs:s.name,configuration:e,registry:r,jsonResponse:!0,authType:mt.AuthType.NO_AUTH});return await Iqe(r,a.token,{configuration:e,scope:this.scope}),n.reportInfo(J.UNNAMED,"Successfully logged in")})).exitCode()}};Gp.paths=[["npm","login"]],Gp.usage=ce.Usage({category:"Npm-related commands",description:"store new login info to access the npm registry",details:"\n This command will ask you for your username, password, and 2FA One-Time-Password (when it applies). It will then modify your local configuration (in your home folder, never in the project itself) to reference the new tokens thus generated.\n\n Adding the `-s,--scope` flag will cause the authentication to be done against whatever registry is configured for the associated scope (see also `npmScopes`).\n\n Adding the `--publish` flag will cause the authentication to be done against the registry used when publishing the package (see also `publishConfig.registry` and `npmPublishRegistry`).\n ",examples:[["Login to the default registry","yarn npm login"],["Login to the registry linked to the @my-scope registry","yarn npm login --scope my-scope"],["Login to the publish registry for the current package","yarn npm login --publish"]]});var kne=Gp;async function Wy({scope:t,publish:e,configuration:r,cwd:i}){return t&&e?Kt.getScopeRegistry(t,{configuration:r,type:Kt.RegistryType.PUBLISH_REGISTRY}):t?Kt.getScopeRegistry(t,{configuration:r}):e?Kt.getPublishRegistry((await Xc(r,i)).manifest,{configuration:r}):Kt.getDefaultRegistry({configuration:r})}async function Iqe(t,e,{configuration:r,scope:i}){let n=o=>a=>{let l=he.isIndexableObject(a)?a:{},c=l[o],u=he.isIndexableObject(c)?c:{};return{...l,[o]:{...u,npmAuthToken:e}}},s=i?{npmScopes:n(i)}:{npmRegistries:n(t)};return await oe.updateHomeConfiguration(s)}async function Eqe({registry:t,report:e,stdin:r,stdout:i}){if(process.env.TEST_ENV)return{name:process.env.TEST_NPM_USER||"",password:process.env.TEST_NPM_PASSWORD||""};e.reportInfo(J.UNNAMED,`Logging in to ${t}`);let n=!1;t.match(/^https:\/\/npm\.pkg\.github\.com(\/|$)/)&&(e.reportInfo(J.UNNAMED,"You seem to be using the GitHub Package Registry. Tokens must be generated with the 'repo', 'write:packages', and 'read:packages' permissions."),n=!0),e.reportSeparator();let{username:s,password:o}=await xne.prompt([{type:"input",name:"username",message:"Username:",required:!0,onCancel:()=>process.exit(130),stdin:r,stdout:i},{type:"password",name:"password",message:n?"Token:":"Password:",required:!0,onCancel:()=>process.exit(130),stdin:r,stdout:i}]);return e.reportSeparator(),{name:s,password:o}}var Du=new Set(["npmAuthIdent","npmAuthToken"]),qp=class extends Ce{constructor(){super(...arguments);this.scope=j.String("-s,--scope",{description:"Logout of the registry configured for a given scope"});this.publish=j.Boolean("--publish",!1,{description:"Logout of the publish registry"});this.all=j.Boolean("-A,--all",!1,{description:"Logout of all registries"})}async execute(){let e=await oe.find(this.context.cwd,this.context.plugins),r=async()=>{var l;let n=await Wy({configuration:e,cwd:this.context.cwd,publish:this.publish,scope:this.scope}),s=await oe.find(this.context.cwd,this.context.plugins),o=b.makeIdent((l=this.scope)!=null?l:null,"pkg");return!Kt.getAuthConfiguration(n,{configuration:s,ident:o}).get("npmAuthToken")};return(await we.start({configuration:e,stdout:this.context.stdout},async n=>{if(this.all&&(await yqe(),n.reportInfo(J.UNNAMED,"Successfully logged out from everything")),this.scope){await vne("npmScopes",this.scope),await r()?n.reportInfo(J.UNNAMED,`Successfully logged out from ${this.scope}`):n.reportWarning(J.UNNAMED,"Scope authentication settings removed, but some other ones settings still apply to it");return}let s=await Wy({configuration:e,cwd:this.context.cwd,publish:this.publish});await vne("npmRegistries",s),await r()?n.reportInfo(J.UNNAMED,`Successfully logged out from ${s}`):n.reportWarning(J.UNNAMED,"Registry authentication settings removed, but some other ones settings still apply to it")})).exitCode()}};qp.paths=[["npm","logout"]],qp.usage=ce.Usage({category:"Npm-related commands",description:"logout of the npm registry",details:"\n This command will log you out by modifying your local configuration (in your home folder, never in the project itself) to delete all credentials linked to a registry.\n\n Adding the `-s,--scope` flag will cause the deletion to be done against whatever registry is configured for the associated scope (see also `npmScopes`).\n\n Adding the `--publish` flag will cause the deletion to be done against the registry used when publishing the package (see also `publishConfig.registry` and `npmPublishRegistry`).\n\n Adding the `-A,--all` flag will cause the deletion to be done against all registries and scopes.\n ",examples:[["Logout of the default registry","yarn npm logout"],["Logout of the @my-scope scope","yarn npm logout --scope my-scope"],["Logout of the publish registry for the current package","yarn npm logout --publish"],["Logout of all registries","yarn npm logout --all"]]});var Fne=qp;function Bqe(t,e){let r=t[e];if(!he.isIndexableObject(r))return!1;let i=new Set(Object.keys(r));if([...Du].every(s=>!i.has(s)))return!1;for(let s of Du)i.delete(s);if(i.size===0)return t[e]=void 0,!0;let n={...r};for(let s of Du)delete n[s];return t[e]=n,!0}async function yqe(){let t=e=>{let r=!1,i=he.isIndexableObject(e)?{...e}:{};i.npmAuthToken&&(delete i.npmAuthToken,r=!0);for(let n of Object.keys(i))Bqe(i,n)&&(r=!0);if(Object.keys(i).length!==0)return r?i:e};return await oe.updateHomeConfiguration({npmRegistries:t,npmScopes:t})}async function vne(t,e){return await oe.updateHomeConfiguration({[t]:r=>{let i=he.isIndexableObject(r)?r:{};if(!Object.prototype.hasOwnProperty.call(i,e))return r;let n=i[e],s=he.isIndexableObject(n)?n:{},o=new Set(Object.keys(s));if([...Du].every(l=>!o.has(l)))return r;for(let l of Du)o.delete(l);if(o.size===0)return Object.keys(i).length===1?void 0:{...i,[e]:void 0};let a={};for(let l of Du)a[l]=void 0;return{...i,[e]:{...s,...a}}}})}var Jp=class extends Ce{constructor(){super(...arguments);this.access=j.String("--access",{description:"The access for the published package (public or restricted)"});this.tag=j.String("--tag","latest",{description:"The tag on the registry that the package should be attached to"});this.tolerateRepublish=j.Boolean("--tolerate-republish",!1,{description:"Warn and exit when republishing an already existing version of a package"})}async execute(){let e=await oe.find(this.context.cwd,this.context.plugins),{project:r,workspace:i}=await ke.find(e,this.context.cwd);if(!i)throw new Xe(r.cwd,this.context.cwd);if(i.manifest.private)throw new UsageError("Private workspaces cannot be published");if(i.manifest.name===null||i.manifest.version===null)throw new UsageError("Workspaces must have valid names and versions to be published on an external registry");await r.restoreInstallState();let n=i.manifest.name,s=i.manifest.version,o=Kt.getPublishRegistry(i.manifest,{configuration:e});return(await we.start({configuration:e,stdout:this.context.stdout},async l=>{var c,u;if(this.tolerateRepublish)try{let g=await mt.get(mt.getIdentUrl(n),{configuration:e,registry:o,ident:n,jsonResponse:!0});if(!Object.prototype.hasOwnProperty.call(g,"versions"))throw new Ge(J.REMOTE_INVALID,'Registry returned invalid data for - missing "versions" field');if(Object.prototype.hasOwnProperty.call(g.versions,s)){l.reportWarning(J.UNNAMED,`Registry already knows about version ${s}; skipping.`);return}}catch(g){if(((u=(c=g.originalError)==null?void 0:c.response)==null?void 0:u.statusCode)!==404)throw g}await Et.maybeExecuteWorkspaceLifecycleScript(i,"prepublish",{report:l}),await Ao.prepareForPack(i,{report:l},async()=>{let g=await Ao.genPackList(i);for(let m of g)l.reportInfo(null,m);let h=await Ao.genPackStream(i,g),f=await he.bufferStream(h),p=await Hp.makePublishBody(i,f,{access:this.access,tag:this.tag,registry:o});await mt.put(mt.getIdentUrl(n),p,{configuration:e,registry:o,ident:n,jsonResponse:!0})}),l.reportInfo(J.UNNAMED,"Package archive published")})).exitCode()}};Jp.paths=[["npm","publish"]],Jp.usage=ce.Usage({category:"Npm-related commands",description:"publish the active workspace to the npm registry",details:'\n This command will pack the active workspace into a fresh archive and upload it to the npm registry.\n\n The package will by default be attached to the `latest` tag on the registry, but this behavior can be overriden by using the `--tag` option.\n\n Note that for legacy reasons scoped packages are by default published with an access set to `restricted` (aka "private packages"). This requires you to register for a paid npm plan. In case you simply wish to publish a public scoped package to the registry (for free), just add the `--access public` flag. This behavior can be enabled by default through the `npmPublishAccess` settings.\n ',examples:[["Publish the active workspace","yarn npm publish"]]});var Rne=Jp;var Mne=X(hr());var Wp=class extends Ce{constructor(){super(...arguments);this.json=j.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"});this.package=j.String({required:!1})}async execute(){let e=await oe.find(this.context.cwd,this.context.plugins),{project:r,workspace:i}=await ke.find(e,this.context.cwd),n;if(typeof this.package!="undefined")n=b.parseIdent(this.package);else{if(!i)throw new Xe(r.cwd,this.context.cwd);if(!i.manifest.name)throw new UsageError(`Missing 'name' field in ${w.join(i.cwd,ft.manifest)}`);n=i.manifest.name}let s=await zp(n,e),a={children:he.sortMap(Object.entries(s),([l])=>l).map(([l,c])=>({value:se.tuple(se.Type.RESOLUTION,{descriptor:b.makeDescriptor(n,l),locator:b.makeLocator(n,c)})}))};return vn.emitTree(a,{configuration:e,json:this.json,stdout:this.context.stdout})}};Wp.paths=[["npm","tag","list"]],Wp.usage=ce.Usage({category:"Npm-related commands",description:"list all dist-tags of a package",details:` + `,examples:[["Checks for known security issues with the installed packages. The output is a list of known issues.","yarn npm audit"],["Audit dependencies in all workspaces","yarn npm audit --all"],["Limit auditing to `dependencies` (excludes `devDependencies`)","yarn npm audit --environment production"],["Show audit report as valid JSON","yarn npm audit --json"],["Audit all direct and transitive dependencies","yarn npm audit --recursive"],["Output moderate (or more severe) vulnerabilities","yarn npm audit --severity moderate"]]});var loe=Sd;var coe=te(require("path")),iL=te(Cr()),nL=te(require("util")),xd=class extends Be{constructor(){super(...arguments);this.fields=G.String("-f,--fields",{description:"A comma-separated list of manifest fields that should be displayed"});this.json=G.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"});this.packages=G.Rest()}async execute(){let e=await le.find(this.context.cwd,this.context.plugins),{project:r}=await Fe.find(e,this.context.cwd),i=typeof this.fields!="undefined"?new Set(["name",...this.fields.split(/\s*,\s*/)]):null,n=[],s=!1,o=await xe.start({configuration:e,includeFooter:!1,json:this.json,stdout:this.context.stdout},async a=>{for(let l of this.packages){let c;if(l==="."){let x=r.topLevelWorkspace;if(!x.manifest.name)throw new me(`Missing 'name' field in ${coe.default.join(x.cwd,"package.json")}`);c=Q.makeDescriptor(x.manifest.name,"unknown")}else c=Q.parseDescriptor(l);let u=Bt.getIdentUrl(c),g=sL(await Bt.get(u,{configuration:e,ident:c,jsonResponse:!0,customErrorMessage:Bt.customPackageError})),h=Object.keys(g.versions).sort(iL.default.compareLoose),p=g["dist-tags"].latest||h[h.length-1],m=kt.validRange(c.range);if(m){let x=iL.default.maxSatisfying(h,m);x!==null?p=x:(a.reportWarning(z.UNNAMED,`Unmet range ${Q.prettyRange(e,c.range)}; falling back to the latest version`),s=!0)}else c.range!=="unknown"&&(a.reportWarning(z.UNNAMED,`Invalid range ${Q.prettyRange(e,c.range)}; falling back to the latest version`),s=!0);let I=g.versions[p],y=V(k(k({},g),I),{version:p,versions:h}),w;if(i!==null){w={};for(let x of i){let F=y[x];if(typeof F!="undefined")w[x]=F;else{a.reportWarning(z.EXCEPTION,`The '${x}' field doesn't exist inside ${Q.prettyIdent(e,c)}'s informations`),s=!0;continue}}}else this.json||(delete y.dist,delete y.readme,delete y.users),w=y;a.reportJson(w),this.json||n.push(w)}});nL.inspect.styles.name="cyan";for(let a of n)(a!==n[0]||s)&&this.context.stdout.write(` +`),this.context.stdout.write(`${(0,nL.inspect)(a,{depth:Infinity,colors:!0,compact:!1})} +`);return o.exitCode()}};xd.paths=[["npm","info"]],xd.usage=fe.Usage({category:"Npm-related commands",description:"show information about a package",details:"\n This command will fetch information about a package from the npm registry, and prints it in a tree format.\n\n The package does not have to be installed locally, but needs to have been published (in particular, local changes will be ignored even for workspaces).\n\n Append `@` to the package argument to provide information specific to the latest version that satisfies the range. If the range is invalid or if there is no version satisfying the range, the command will print a warning and fall back to the latest version.\n\n If the `-f,--fields` option is set, it's a comma-separated list of fields which will be used to only display part of the package informations.\n\n By default, this command won't return the `dist`, `readme`, and `users` fields, since they are often very long. To explicitly request those fields, explicitly list them with the `--fields` flag or request the output in JSON mode.\n ",examples:[["Show all available information about react (except the `dist`, `readme`, and `users` fields)","yarn npm info react"],["Show all available information about react as valid JSON (including the `dist`, `readme`, and `users` fields)","yarn npm info react --json"],["Show all available information about react 16.12.0","yarn npm info react@16.12.0"],["Show the description of react","yarn npm info react --fields description"],["Show all available versions of react","yarn npm info react --fields versions"],["Show the readme of react","yarn npm info react --fields readme"],["Show a few fields of react","yarn npm info react --fields homepage,repository"]]});var uoe=xd;function sL(t){if(Array.isArray(t)){let e=[];for(let r of t)r=sL(r),r&&e.push(r);return e}else if(typeof t=="object"&&t!==null){let e={};for(let r of Object.keys(t)){if(r.startsWith("_"))continue;let i=sL(t[r]);i&&(e[r]=i)}return e}else return t||null}var goe=te(dp()),Pd=class extends Be{constructor(){super(...arguments);this.scope=G.String("-s,--scope",{description:"Login to the registry configured for a given scope"});this.publish=G.Boolean("--publish",!1,{description:"Login to the publish registry"})}async execute(){let e=await le.find(this.context.cwd,this.context.plugins),r=await UB({configuration:e,cwd:this.context.cwd,publish:this.publish,scope:this.scope});return(await xe.start({configuration:e,stdout:this.context.stdout},async n=>{let s=await hWe({registry:r,report:n,stdin:this.context.stdin,stdout:this.context.stdout}),o=`/-/user/org.couchdb.user:${encodeURIComponent(s.name)}`,a=await Bt.put(o,s,{attemptedAs:s.name,configuration:e,registry:r,jsonResponse:!0,authType:Bt.AuthType.NO_AUTH});return await gWe(r,a.token,{configuration:e,scope:this.scope}),n.reportInfo(z.UNNAMED,"Successfully logged in")})).exitCode()}};Pd.paths=[["npm","login"]],Pd.usage=fe.Usage({category:"Npm-related commands",description:"store new login info to access the npm registry",details:"\n This command will ask you for your username, password, and 2FA One-Time-Password (when it applies). It will then modify your local configuration (in your home folder, never in the project itself) to reference the new tokens thus generated.\n\n Adding the `-s,--scope` flag will cause the authentication to be done against whatever registry is configured for the associated scope (see also `npmScopes`).\n\n Adding the `--publish` flag will cause the authentication to be done against the registry used when publishing the package (see also `publishConfig.registry` and `npmPublishRegistry`).\n ",examples:[["Login to the default registry","yarn npm login"],["Login to the registry linked to the @my-scope registry","yarn npm login --scope my-scope"],["Login to the publish registry for the current package","yarn npm login --publish"]]});var hoe=Pd;async function UB({scope:t,publish:e,configuration:r,cwd:i}){return t&&e?qt.getScopeRegistry(t,{configuration:r,type:qt.RegistryType.PUBLISH_REGISTRY}):t?qt.getScopeRegistry(t,{configuration:r}):e?qt.getPublishRegistry((await bu(r,i)).manifest,{configuration:r}):qt.getDefaultRegistry({configuration:r})}async function gWe(t,e,{configuration:r,scope:i}){let n=o=>a=>{let l=de.isIndexableObject(a)?a:{},c=l[o],u=de.isIndexableObject(c)?c:{};return V(k({},l),{[o]:V(k({},u),{npmAuthToken:e})})},s=i?{npmScopes:n(i)}:{npmRegistries:n(t)};return await le.updateHomeConfiguration(s)}async function hWe({registry:t,report:e,stdin:r,stdout:i}){if(process.env.TEST_ENV)return{name:process.env.TEST_NPM_USER||"",password:process.env.TEST_NPM_PASSWORD||""};e.reportInfo(z.UNNAMED,`Logging in to ${t}`);let n=!1;t.match(/^https:\/\/npm\.pkg\.github\.com(\/|$)/)&&(e.reportInfo(z.UNNAMED,"You seem to be using the GitHub Package Registry. Tokens must be generated with the 'repo', 'write:packages', and 'read:packages' permissions."),n=!0),e.reportSeparator();let{username:s,password:o}=await(0,goe.prompt)([{type:"input",name:"username",message:"Username:",required:!0,onCancel:()=>process.exit(130),stdin:r,stdout:i},{type:"password",name:"password",message:n?"Token:":"Password:",required:!0,onCancel:()=>process.exit(130),stdin:r,stdout:i}]);return e.reportSeparator(),{name:s,password:o}}var $u=new Set(["npmAuthIdent","npmAuthToken"]),kd=class extends Be{constructor(){super(...arguments);this.scope=G.String("-s,--scope",{description:"Logout of the registry configured for a given scope"});this.publish=G.Boolean("--publish",!1,{description:"Logout of the publish registry"});this.all=G.Boolean("-A,--all",!1,{description:"Logout of all registries"})}async execute(){let e=await le.find(this.context.cwd,this.context.plugins),r=async()=>{var l;let n=await UB({configuration:e,cwd:this.context.cwd,publish:this.publish,scope:this.scope}),s=await le.find(this.context.cwd,this.context.plugins),o=Q.makeIdent((l=this.scope)!=null?l:null,"pkg");return!qt.getAuthConfiguration(n,{configuration:s,ident:o}).get("npmAuthToken")};return(await xe.start({configuration:e,stdout:this.context.stdout},async n=>{if(this.all&&(await fWe(),n.reportInfo(z.UNNAMED,"Successfully logged out from everything")),this.scope){await foe("npmScopes",this.scope),await r()?n.reportInfo(z.UNNAMED,`Successfully logged out from ${this.scope}`):n.reportWarning(z.UNNAMED,"Scope authentication settings removed, but some other ones settings still apply to it");return}let s=await UB({configuration:e,cwd:this.context.cwd,publish:this.publish});await foe("npmRegistries",s),await r()?n.reportInfo(z.UNNAMED,`Successfully logged out from ${s}`):n.reportWarning(z.UNNAMED,"Registry authentication settings removed, but some other ones settings still apply to it")})).exitCode()}};kd.paths=[["npm","logout"]],kd.usage=fe.Usage({category:"Npm-related commands",description:"logout of the npm registry",details:"\n This command will log you out by modifying your local configuration (in your home folder, never in the project itself) to delete all credentials linked to a registry.\n\n Adding the `-s,--scope` flag will cause the deletion to be done against whatever registry is configured for the associated scope (see also `npmScopes`).\n\n Adding the `--publish` flag will cause the deletion to be done against the registry used when publishing the package (see also `publishConfig.registry` and `npmPublishRegistry`).\n\n Adding the `-A,--all` flag will cause the deletion to be done against all registries and scopes.\n ",examples:[["Logout of the default registry","yarn npm logout"],["Logout of the @my-scope scope","yarn npm logout --scope my-scope"],["Logout of the publish registry for the current package","yarn npm logout --publish"],["Logout of all registries","yarn npm logout --all"]]});var poe=kd;function pWe(t,e){let r=t[e];if(!de.isIndexableObject(r))return!1;let i=new Set(Object.keys(r));if([...$u].every(s=>!i.has(s)))return!1;for(let s of $u)i.delete(s);if(i.size===0)return t[e]=void 0,!0;let n=k({},r);for(let s of $u)delete n[s];return t[e]=n,!0}async function fWe(){let t=e=>{let r=!1,i=de.isIndexableObject(e)?k({},e):{};i.npmAuthToken&&(delete i.npmAuthToken,r=!0);for(let n of Object.keys(i))pWe(i,n)&&(r=!0);if(Object.keys(i).length!==0)return r?i:e};return await le.updateHomeConfiguration({npmRegistries:t,npmScopes:t})}async function foe(t,e){return await le.updateHomeConfiguration({[t]:r=>{let i=de.isIndexableObject(r)?r:{};if(!Object.prototype.hasOwnProperty.call(i,e))return r;let n=i[e],s=de.isIndexableObject(n)?n:{},o=new Set(Object.keys(s));if([...$u].every(l=>!o.has(l)))return r;for(let l of $u)o.delete(l);if(o.size===0)return Object.keys(i).length===1?void 0:V(k({},i),{[e]:void 0});let a={};for(let l of $u)a[l]=void 0;return V(k({},i),{[e]:k(k({},s),a)})}})}var vd=class extends Be{constructor(){super(...arguments);this.access=G.String("--access",{description:"The access for the published package (public or restricted)"});this.tag=G.String("--tag","latest",{description:"The tag on the registry that the package should be attached to"});this.tolerateRepublish=G.Boolean("--tolerate-republish",!1,{description:"Warn and exit when republishing an already existing version of a package"})}async execute(){let e=await le.find(this.context.cwd,this.context.plugins),{project:r,workspace:i}=await Fe.find(e,this.context.cwd);if(!i)throw new Xe(r.cwd,this.context.cwd);if(i.manifest.private)throw new me("Private workspaces cannot be published");if(i.manifest.name===null||i.manifest.version===null)throw new me("Workspaces must have valid names and versions to be published on an external registry");await r.restoreInstallState();let n=i.manifest.name,s=i.manifest.version,o=qt.getPublishRegistry(i.manifest,{configuration:e});return(await xe.start({configuration:e,stdout:this.context.stdout},async l=>{var c,u;if(this.tolerateRepublish)try{let g=await Bt.get(Bt.getIdentUrl(n),{configuration:e,registry:o,ident:n,jsonResponse:!0});if(!Object.prototype.hasOwnProperty.call(g,"versions"))throw new Ze(z.REMOTE_INVALID,'Registry returned invalid data for - missing "versions" field');if(Object.prototype.hasOwnProperty.call(g.versions,s)){l.reportWarning(z.UNNAMED,`Registry already knows about version ${s}; skipping.`);return}}catch(g){if(((u=(c=g.originalError)==null?void 0:c.response)==null?void 0:u.statusCode)!==404)throw g}await bt.maybeExecuteWorkspaceLifecycleScript(i,"prepublish",{report:l}),await Do.prepareForPack(i,{report:l},async()=>{let g=await Do.genPackList(i);for(let m of g)l.reportInfo(null,m);let h=await Do.genPackStream(i,g),f=await de.bufferStream(h),p=await Dd.makePublishBody(i,f,{access:this.access,tag:this.tag,registry:o});await Bt.put(Bt.getIdentUrl(n),p,{configuration:e,registry:o,ident:n,jsonResponse:!0})}),l.reportInfo(z.UNNAMED,"Package archive published")})).exitCode()}};vd.paths=[["npm","publish"]],vd.usage=fe.Usage({category:"Npm-related commands",description:"publish the active workspace to the npm registry",details:'\n This command will pack the active workspace into a fresh archive and upload it to the npm registry.\n\n The package will by default be attached to the `latest` tag on the registry, but this behavior can be overriden by using the `--tag` option.\n\n Note that for legacy reasons scoped packages are by default published with an access set to `restricted` (aka "private packages"). This requires you to register for a paid npm plan. In case you simply wish to publish a public scoped package to the registry (for free), just add the `--access public` flag. This behavior can be enabled by default through the `npmPublishAccess` settings.\n ',examples:[["Publish the active workspace","yarn npm publish"]]});var doe=vd;var moe=te(Cr());var Fd=class extends Be{constructor(){super(...arguments);this.json=G.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"});this.package=G.String({required:!1})}async execute(){let e=await le.find(this.context.cwd,this.context.plugins),{project:r,workspace:i}=await Fe.find(e,this.context.cwd),n;if(typeof this.package!="undefined")n=Q.parseIdent(this.package);else{if(!i)throw new Xe(r.cwd,this.context.cwd);if(!i.manifest.name)throw new me(`Missing 'name' field in ${B.join(i.cwd,mt.manifest)}`);n=i.manifest.name}let s=await Rd(n,e),a={children:de.sortMap(Object.entries(s),([l])=>l).map(([l,c])=>({value:Ae.tuple(Ae.Type.RESOLUTION,{descriptor:Q.makeDescriptor(n,l),locator:Q.makeLocator(n,c)})}))};return Hn.emitTree(a,{configuration:e,json:this.json,stdout:this.context.stdout})}};Fd.paths=[["npm","tag","list"]],Fd.usage=fe.Usage({category:"Npm-related commands",description:"list all dist-tags of a package",details:` This command will list all tags of a package from the npm registry. If the package is not specified, Yarn will default to the current workspace. - `,examples:[["List all tags of package `my-pkg`","yarn npm tag list my-pkg"]]});var Lne=Wp;async function zp(t,e){let r=`/-/package${mt.getIdentUrl(t)}/dist-tags`;return mt.get(r,{configuration:e,ident:t,jsonResponse:!0,customErrorMessage:mt.customPackageError})}var Xp=class extends Ce{constructor(){super(...arguments);this.package=j.String();this.tag=j.String()}async execute(){let e=await oe.find(this.context.cwd,this.context.plugins),{project:r,workspace:i}=await ke.find(e,this.context.cwd);if(!i)throw new Xe(r.cwd,this.context.cwd);let n=b.parseDescriptor(this.package,!0),s=n.range;if(!Mne.default.valid(s))throw new UsageError(`The range ${se.pretty(e,n.range,se.Type.RANGE)} must be a valid semver version`);let o=Kt.getPublishRegistry(i.manifest,{configuration:e}),a=se.pretty(e,n,se.Type.IDENT),l=se.pretty(e,s,se.Type.RANGE),c=se.pretty(e,this.tag,se.Type.CODE);return(await we.start({configuration:e,stdout:this.context.stdout},async g=>{let h=await zp(n,e);Object.prototype.hasOwnProperty.call(h,this.tag)&&h[this.tag]===s&&g.reportWarning(J.UNNAMED,`Tag ${c} is already set to version ${l}`);let f=`/-/package${mt.getIdentUrl(n)}/dist-tags/${encodeURIComponent(this.tag)}`;await mt.put(f,s,{configuration:e,registry:o,ident:n,jsonRequest:!0,jsonResponse:!0}),g.reportInfo(J.UNNAMED,`Tag ${c} added to version ${l} of package ${a}`)})).exitCode()}};Xp.paths=[["npm","tag","add"]],Xp.usage=ce.Usage({category:"Npm-related commands",description:"add a tag for a specific version of a package",details:` + `,examples:[["List all tags of package `my-pkg`","yarn npm tag list my-pkg"]]});var Coe=Fd;async function Rd(t,e){let r=`/-/package${Bt.getIdentUrl(t)}/dist-tags`;return Bt.get(r,{configuration:e,ident:t,jsonResponse:!0,customErrorMessage:Bt.customPackageError})}var Ld=class extends Be{constructor(){super(...arguments);this.package=G.String();this.tag=G.String()}async execute(){let e=await le.find(this.context.cwd,this.context.plugins),{project:r,workspace:i}=await Fe.find(e,this.context.cwd);if(!i)throw new Xe(r.cwd,this.context.cwd);let n=Q.parseDescriptor(this.package,!0),s=n.range;if(!moe.default.valid(s))throw new me(`The range ${Ae.pretty(e,n.range,Ae.Type.RANGE)} must be a valid semver version`);let o=qt.getPublishRegistry(i.manifest,{configuration:e}),a=Ae.pretty(e,n,Ae.Type.IDENT),l=Ae.pretty(e,s,Ae.Type.RANGE),c=Ae.pretty(e,this.tag,Ae.Type.CODE);return(await xe.start({configuration:e,stdout:this.context.stdout},async g=>{let h=await Rd(n,e);Object.prototype.hasOwnProperty.call(h,this.tag)&&h[this.tag]===s&&g.reportWarning(z.UNNAMED,`Tag ${c} is already set to version ${l}`);let f=`/-/package${Bt.getIdentUrl(n)}/dist-tags/${encodeURIComponent(this.tag)}`;await Bt.put(f,s,{configuration:e,registry:o,ident:n,jsonRequest:!0,jsonResponse:!0}),g.reportInfo(z.UNNAMED,`Tag ${c} added to version ${l} of package ${a}`)})).exitCode()}};Ld.paths=[["npm","tag","add"]],Ld.usage=fe.Usage({category:"Npm-related commands",description:"add a tag for a specific version of a package",details:` This command will add a tag to the npm registry for a specific version of a package. If the tag already exists, it will be overwritten. - `,examples:[["Add a `beta` tag for version `2.3.4-beta.4` of package `my-pkg`","yarn npm tag add my-pkg@2.3.4-beta.4 beta"]]});var Nne=Xp;var Vp=class extends Ce{constructor(){super(...arguments);this.package=j.String();this.tag=j.String()}async execute(){if(this.tag==="latest")throw new UsageError("The 'latest' tag cannot be removed.");let e=await oe.find(this.context.cwd,this.context.plugins),{project:r,workspace:i}=await ke.find(e,this.context.cwd);if(!i)throw new Xe(r.cwd,this.context.cwd);let n=b.parseIdent(this.package),s=Kt.getPublishRegistry(i.manifest,{configuration:e}),o=se.pretty(e,this.tag,se.Type.CODE),a=se.pretty(e,n,se.Type.IDENT),l=await zp(n,e);if(!Object.prototype.hasOwnProperty.call(l,this.tag))throw new UsageError(`${o} is not a tag of package ${a}`);return(await we.start({configuration:e,stdout:this.context.stdout},async u=>{let g=`/-/package${mt.getIdentUrl(n)}/dist-tags/${encodeURIComponent(this.tag)}`;await mt.del(g,{configuration:e,registry:s,ident:n,jsonResponse:!0}),u.reportInfo(J.UNNAMED,`Tag ${o} removed from package ${a}`)})).exitCode()}};Vp.paths=[["npm","tag","remove"]],Vp.usage=ce.Usage({category:"Npm-related commands",description:"remove a tag from a package",details:` + `,examples:[["Add a `beta` tag for version `2.3.4-beta.4` of package `my-pkg`","yarn npm tag add my-pkg@2.3.4-beta.4 beta"]]});var Ioe=Ld;var Nd=class extends Be{constructor(){super(...arguments);this.package=G.String();this.tag=G.String()}async execute(){if(this.tag==="latest")throw new me("The 'latest' tag cannot be removed.");let e=await le.find(this.context.cwd,this.context.plugins),{project:r,workspace:i}=await Fe.find(e,this.context.cwd);if(!i)throw new Xe(r.cwd,this.context.cwd);let n=Q.parseIdent(this.package),s=qt.getPublishRegistry(i.manifest,{configuration:e}),o=Ae.pretty(e,this.tag,Ae.Type.CODE),a=Ae.pretty(e,n,Ae.Type.IDENT),l=await Rd(n,e);if(!Object.prototype.hasOwnProperty.call(l,this.tag))throw new me(`${o} is not a tag of package ${a}`);return(await xe.start({configuration:e,stdout:this.context.stdout},async u=>{let g=`/-/package${Bt.getIdentUrl(n)}/dist-tags/${encodeURIComponent(this.tag)}`;await Bt.del(g,{configuration:e,registry:s,ident:n,jsonResponse:!0}),u.reportInfo(z.UNNAMED,`Tag ${o} removed from package ${a}`)})).exitCode()}};Nd.paths=[["npm","tag","remove"]],Nd.usage=fe.Usage({category:"Npm-related commands",description:"remove a tag from a package",details:` This command will remove a tag from a package from the npm registry. - `,examples:[["Remove the `beta` tag from package `my-pkg`","yarn npm tag remove my-pkg beta"]]});var One=Vp;var Zp=class extends Ce{constructor(){super(...arguments);this.scope=j.String("-s,--scope",{description:"Print username for the registry configured for a given scope"});this.publish=j.Boolean("--publish",!1,{description:"Print username for the publish registry"})}async execute(){let e=await oe.find(this.context.cwd,this.context.plugins),r;return this.scope&&this.publish?r=Kt.getScopeRegistry(this.scope,{configuration:e,type:Kt.RegistryType.PUBLISH_REGISTRY}):this.scope?r=Kt.getScopeRegistry(this.scope,{configuration:e}):this.publish?r=Kt.getPublishRegistry((await Xc(e,this.context.cwd)).manifest,{configuration:e}):r=Kt.getDefaultRegistry({configuration:e}),(await we.start({configuration:e,stdout:this.context.stdout},async n=>{var o,a;let s;try{s=await mt.get("/-/whoami",{configuration:e,registry:r,authType:mt.AuthType.ALWAYS_AUTH,jsonResponse:!0,ident:this.scope?b.makeIdent(this.scope,""):void 0})}catch(l){if(((o=l.response)==null?void 0:o.statusCode)===401||((a=l.response)==null?void 0:a.statusCode)===403){n.reportError(J.AUTHENTICATION_INVALID,"Authentication failed - your credentials may have expired");return}else throw l}n.reportInfo(J.UNNAMED,s.username)})).exitCode()}};Zp.paths=[["npm","whoami"]],Zp.usage=ce.Usage({category:"Npm-related commands",description:"display the name of the authenticated user",details:"\n Print the username associated with the current authentication settings to the standard output.\n\n When using `-s,--scope`, the username printed will be the one that matches the authentication settings of the registry associated with the given scope (those settings can be overriden using the `npmRegistries` map, and the registry associated with the scope is configured via the `npmScopes` map).\n\n When using `--publish`, the registry we'll select will by default be the one used when publishing packages (`publishConfig.registry` or `npmPublishRegistry` if available, otherwise we'll fallback to the regular `npmRegistryServer`).\n ",examples:[["Print username for the default registry","yarn npm whoami"],["Print username for the registry on a given scope","yarn npm whoami --scope company"]]});var Tne=Zp;var wqe={configuration:{npmPublishAccess:{description:"Default access of the published packages",type:Ae.STRING,default:null}},commands:[Dne,Pne,kne,Fne,Rne,Nne,Lne,One,Tne]},Qqe=wqe;var nR={};We(nR,{default:()=>Uqe,patchUtils:()=>ZF});var ZF={};We(ZF,{applyPatchFile:()=>Zy,diffFolders:()=>tR,extractPackageToDisk:()=>eR,extractPatchFlags:()=>Jne,isParentRequired:()=>$F,loadPatchFiles:()=>td,makeDescriptor:()=>Oqe,makeLocator:()=>_F,parseDescriptor:()=>$p,parseLocator:()=>ed,parsePatchFile:()=>Xy});var _p=class extends Error{constructor(e,r){super(`Cannot apply hunk #${e+1}`);this.hunk=r}};var bqe=/^@@ -(\d+)(,(\d+))? \+(\d+)(,(\d+))? @@.*/;function Su(t){return w.relative(pe.root,w.resolve(pe.root,npath.toPortablePath(t)))}function Dqe(t){let e=t.trim().match(bqe);if(!e)throw new Error(`Bad header line: '${t}'`);return{original:{start:Math.max(Number(e[1]),1),length:Number(e[3]||1)},patched:{start:Math.max(Number(e[4]),1),length:Number(e[6]||1)}}}var Sqe=420,Pqe=493,ir;(function(t){t.Context="context",t.Insertion="insertion",t.Deletion="deletion"})(ir||(ir={}));var Kne=()=>({semverExclusivity:null,diffLineFromPath:null,diffLineToPath:null,oldMode:null,newMode:null,deletedFileMode:null,newFileMode:null,renameFrom:null,renameTo:null,beforeHash:null,afterHash:null,fromPath:null,toPath:null,hunks:null}),xqe=t=>({header:Dqe(t),parts:[]}),kqe={["@"]:"header",["-"]:ir.Deletion,["+"]:ir.Insertion,[" "]:ir.Context,["\\"]:"pragma",undefined:ir.Context};function Fqe(t){let e=[],r=Kne(),i="parsing header",n=null,s=null;function o(){n&&(s&&(n.parts.push(s),s=null),r.hunks.push(n),n=null)}function a(){o(),e.push(r),r=Kne()}for(let l=0;l0?"patch":"mode change",B=null;switch(y){case"rename":{if(!u||!g)throw new Error("Bad parser state: rename from & to not given");e.push({type:"rename",semverExclusivity:i,fromPath:Su(u),toPath:Su(g)}),B=g}break;case"file deletion":{let P=n||p;if(!P)throw new Error("Bad parse state: no path given for file deletion");e.push({type:"file deletion",semverExclusivity:i,hunk:I&&I[0]||null,path:Su(P),mode:zy(l),hash:h})}break;case"file creation":{let P=s||m;if(!P)throw new Error("Bad parse state: no path given for file creation");e.push({type:"file creation",semverExclusivity:i,hunk:I&&I[0]||null,path:Su(P),mode:zy(c),hash:f})}break;case"patch":case"mode change":B=m||s;break;default:he.assertNever(y);break}B&&o&&a&&o!==a&&e.push({type:"mode change",semverExclusivity:i,path:Su(B),oldMode:zy(o),newMode:zy(a)}),B&&I&&I.length&&e.push({type:"patch",semverExclusivity:i,path:Su(B),hunks:I,beforeHash:h,afterHash:f})}if(e.length===0)throw new Error("Unable to parse patch file: No changes found. Make sure the patch is a valid UTF8 encoded string");return e}function zy(t){let e=parseInt(t,8)&511;if(e!==Sqe&&e!==Pqe)throw new Error(`Unexpected file mode string: ${t}`);return e}function Xy(t){let e=t.split(/\n/g);return e[e.length-1]===""&&e.pop(),Rqe(Fqe(e))}function vqe(t){let e=0,r=0;for(let{type:i,lines:n}of t.parts)switch(i){case ir.Context:r+=n.length,e+=n.length;break;case ir.Deletion:e+=n.length;break;case ir.Insertion:r+=n.length;break;default:he.assertNever(i);break}if(e!==t.header.original.length||r!==t.header.patched.length){let i=n=>n<0?n:`+${n}`;throw new Error(`hunk header integrity check failed (expected @@ ${i(t.header.original.length)} ${i(t.header.patched.length)} @@, got @@ ${i(e)} ${i(r)} @@)`)}}var Vy=315532800;async function Pu(t,e,r){let i=await t.lstatPromise(e),n=await r();if(typeof n!="undefined"&&(e=n),t.lutimesPromise)await t.lutimesPromise(e,i.atime,i.mtime);else if(!i.isSymbolicLink())await t.utimesPromise(e,i.atime,i.mtime);else throw new Error("Cannot preserve the time values of a symlink")}async function Zy(t,{baseFs:e=new It,dryRun:r=!1,version:i=null}={}){for(let n of t)if(!(n.semverExclusivity!==null&&i!==null&&!St.satisfiesWithPrereleases(i,n.semverExclusivity)))switch(n.type){case"file deletion":if(r){if(!e.existsSync(n.path))throw new Error(`Trying to delete a file that doesn't exist: ${n.path}`)}else await Pu(e,w.dirname(n.path),async()=>{await e.unlinkPromise(n.path)});break;case"rename":if(r){if(!e.existsSync(n.fromPath))throw new Error(`Trying to move a file that doesn't exist: ${n.fromPath}`)}else await Pu(e,w.dirname(n.fromPath),async()=>{await Pu(e,w.dirname(n.toPath),async()=>{await Pu(e,n.fromPath,async()=>(await e.movePromise(n.fromPath,n.toPath),n.toPath))})});break;case"file creation":if(r){if(e.existsSync(n.path))throw new Error(`Trying to create a file that already exists: ${n.path}`)}else{let s=n.hunk?n.hunk.parts[0].lines.join(` + `,examples:[["Remove the `beta` tag from package `my-pkg`","yarn npm tag remove my-pkg beta"]]});var Eoe=Nd;var Md=class extends Be{constructor(){super(...arguments);this.scope=G.String("-s,--scope",{description:"Print username for the registry configured for a given scope"});this.publish=G.Boolean("--publish",!1,{description:"Print username for the publish registry"})}async execute(){let e=await le.find(this.context.cwd,this.context.plugins),r;return this.scope&&this.publish?r=qt.getScopeRegistry(this.scope,{configuration:e,type:qt.RegistryType.PUBLISH_REGISTRY}):this.scope?r=qt.getScopeRegistry(this.scope,{configuration:e}):this.publish?r=qt.getPublishRegistry((await bu(e,this.context.cwd)).manifest,{configuration:e}):r=qt.getDefaultRegistry({configuration:e}),(await xe.start({configuration:e,stdout:this.context.stdout},async n=>{var o,a;let s;try{s=await Bt.get("/-/whoami",{configuration:e,registry:r,authType:Bt.AuthType.ALWAYS_AUTH,jsonResponse:!0,ident:this.scope?Q.makeIdent(this.scope,""):void 0})}catch(l){if(((o=l.response)==null?void 0:o.statusCode)===401||((a=l.response)==null?void 0:a.statusCode)===403){n.reportError(z.AUTHENTICATION_INVALID,"Authentication failed - your credentials may have expired");return}else throw l}n.reportInfo(z.UNNAMED,s.username)})).exitCode()}};Md.paths=[["npm","whoami"]],Md.usage=fe.Usage({category:"Npm-related commands",description:"display the name of the authenticated user",details:"\n Print the username associated with the current authentication settings to the standard output.\n\n When using `-s,--scope`, the username printed will be the one that matches the authentication settings of the registry associated with the given scope (those settings can be overriden using the `npmRegistries` map, and the registry associated with the scope is configured via the `npmScopes` map).\n\n When using `--publish`, the registry we'll select will by default be the one used when publishing packages (`publishConfig.registry` or `npmPublishRegistry` if available, otherwise we'll fallback to the regular `npmRegistryServer`).\n ",examples:[["Print username for the default registry","yarn npm whoami"],["Print username for the registry on a given scope","yarn npm whoami --scope company"]]});var yoe=Md;var dWe={configuration:{npmPublishAccess:{description:"Default access of the published packages",type:ge.STRING,default:null}},commands:[loe,uoe,hoe,poe,doe,Ioe,Coe,Eoe,yoe]},CWe=dWe;var fL={};$e(fL,{default:()=>RWe,patchUtils:()=>aL});var aL={};$e(aL,{applyPatchFile:()=>jB,diffFolders:()=>uL,extractPackageToDisk:()=>cL,extractPatchFlags:()=>Poe,isParentRequired:()=>lL,loadPatchFiles:()=>Ud,makeDescriptor:()=>kWe,makeLocator:()=>AL,parseDescriptor:()=>Kd,parseLocator:()=>Td,parsePatchFile:()=>YB});var Od=class extends Error{constructor(e,r){super(`Cannot apply hunk #${e+1}`);this.hunk=r}};var mWe=/^@@ -(\d+)(,(\d+))? \+(\d+)(,(\d+))? @@.*/;function eg(t){return B.relative(Ee.root,B.resolve(Ee.root,L.toPortablePath(t)))}function IWe(t){let e=t.trim().match(mWe);if(!e)throw new Error(`Bad header line: '${t}'`);return{original:{start:Math.max(Number(e[1]),1),length:Number(e[3]||1)},patched:{start:Math.max(Number(e[4]),1),length:Number(e[6]||1)}}}var EWe=420,yWe=493,Ar;(function(i){i.Context="context",i.Insertion="insertion",i.Deletion="deletion"})(Ar||(Ar={}));var Boe=()=>({semverExclusivity:null,diffLineFromPath:null,diffLineToPath:null,oldMode:null,newMode:null,deletedFileMode:null,newFileMode:null,renameFrom:null,renameTo:null,beforeHash:null,afterHash:null,fromPath:null,toPath:null,hunks:null}),BWe=t=>({header:IWe(t),parts:[]}),wWe={["@"]:"header",["-"]:Ar.Deletion,["+"]:Ar.Insertion,[" "]:Ar.Context,["\\"]:"pragma",undefined:Ar.Context};function bWe(t){let e=[],r=Boe(),i="parsing header",n=null,s=null;function o(){n&&(s&&(n.parts.push(s),s=null),r.hunks.push(n),n=null)}function a(){o(),e.push(r),r=Boe()}for(let l=0;l0?"patch":"mode change",w=null;switch(y){case"rename":{if(!u||!g)throw new Error("Bad parser state: rename from & to not given");e.push({type:"rename",semverExclusivity:i,fromPath:eg(u),toPath:eg(g)}),w=g}break;case"file deletion":{let x=n||p;if(!x)throw new Error("Bad parse state: no path given for file deletion");e.push({type:"file deletion",semverExclusivity:i,hunk:I&&I[0]||null,path:eg(x),mode:HB(l),hash:h})}break;case"file creation":{let x=s||m;if(!x)throw new Error("Bad parse state: no path given for file creation");e.push({type:"file creation",semverExclusivity:i,hunk:I&&I[0]||null,path:eg(x),mode:HB(c),hash:f})}break;case"patch":case"mode change":w=m||s;break;default:de.assertNever(y);break}w&&o&&a&&o!==a&&e.push({type:"mode change",semverExclusivity:i,path:eg(w),oldMode:HB(o),newMode:HB(a)}),w&&I&&I.length&&e.push({type:"patch",semverExclusivity:i,path:eg(w),hunks:I,beforeHash:h,afterHash:f})}if(e.length===0)throw new Error("Unable to parse patch file: No changes found. Make sure the patch is a valid UTF8 encoded string");return e}function HB(t){let e=parseInt(t,8)&511;if(e!==EWe&&e!==yWe)throw new Error(`Unexpected file mode string: ${t}`);return e}function YB(t){let e=t.split(/\n/g);return e[e.length-1]===""&&e.pop(),DWe(bWe(e))}function QWe(t){let e=0,r=0;for(let{type:i,lines:n}of t.parts)switch(i){case Ar.Context:r+=n.length,e+=n.length;break;case Ar.Deletion:e+=n.length;break;case Ar.Insertion:r+=n.length;break;default:de.assertNever(i);break}if(e!==t.header.original.length||r!==t.header.patched.length){let i=n=>n<0?n:`+${n}`;throw new Error(`hunk header integrity check failed (expected @@ ${i(t.header.original.length)} ${i(t.header.patched.length)} @@, got @@ ${i(e)} ${i(r)} @@)`)}}var GB=315532800;async function tg(t,e,r){let i=await t.lstatPromise(e),n=await r();if(typeof n!="undefined"&&(e=n),t.lutimesPromise)await t.lutimesPromise(e,i.atime,i.mtime);else if(!i.isSymbolicLink())await t.utimesPromise(e,i.atime,i.mtime);else throw new Error("Cannot preserve the time values of a symlink")}async function jB(t,{baseFs:e=new wt,dryRun:r=!1,version:i=null}={}){for(let n of t)if(!(n.semverExclusivity!==null&&i!==null&&!kt.satisfiesWithPrereleases(i,n.semverExclusivity)))switch(n.type){case"file deletion":if(r){if(!e.existsSync(n.path))throw new Error(`Trying to delete a file that doesn't exist: ${n.path}`)}else await tg(e,B.dirname(n.path),async()=>{await e.unlinkPromise(n.path)});break;case"rename":if(r){if(!e.existsSync(n.fromPath))throw new Error(`Trying to move a file that doesn't exist: ${n.fromPath}`)}else await tg(e,B.dirname(n.fromPath),async()=>{await tg(e,B.dirname(n.toPath),async()=>{await tg(e,n.fromPath,async()=>(await e.movePromise(n.fromPath,n.toPath),n.toPath))})});break;case"file creation":if(r){if(e.existsSync(n.path))throw new Error(`Trying to create a file that already exists: ${n.path}`)}else{let s=n.hunk?n.hunk.parts[0].lines.join(` `)+(n.hunk.parts[0].noNewlineAtEndOfFile?"":` -`):"";await e.mkdirpPromise(w.dirname(n.path),{chmod:493,utimes:[Vy,Vy]}),await e.writeFilePromise(n.path,s,{mode:n.mode}),await e.utimesPromise(n.path,Vy,Vy)}break;case"patch":await Pu(e,n.path,async()=>{await Lqe(n,{baseFs:e,dryRun:r})});break;case"mode change":{let o=(await e.statPromise(n.path)).mode;if(Une(n.newMode)!==Une(o))continue;await Pu(e,n.path,async()=>{await e.chmodPromise(n.path,n.newMode)})}break;default:he.assertNever(n);break}}function Une(t){return(t&64)>0}function Hne(t){return t.replace(/\s+$/,"")}function Mqe(t,e){return Hne(t)===Hne(e)}async function Lqe({hunks:t,path:e},{baseFs:r,dryRun:i=!1}){let n=await r.statSync(e).mode,o=(await r.readFileSync(e,"utf8")).split(/\n/),a=[],l=0,c=0;for(let g of t){let h=Math.max(c,g.header.patched.start+l),f=Math.max(0,h-c),p=Math.max(0,o.length-h-g.header.original.length),m=Math.max(f,p),I=0,y=0,B=null;for(;I<=m;){if(I<=f&&(y=h-I,B=Yne(g,o,y),B!==null)){I=-I;break}if(I<=p&&(y=h+I,B=Yne(g,o,y),B!==null))break;I+=1}if(B===null)throw new _p(t.indexOf(g),g);a.push(B),l+=I,c=y+g.header.original.length}if(i)return;let u=0;for(let g of a)for(let h of g)switch(h.type){case"splice":{let f=h.index+u;o.splice(f,h.numToDelete,...h.linesToInsert),u+=h.linesToInsert.length-h.numToDelete}break;case"pop":o.pop();break;case"push":o.push(h.line);break;default:he.assertNever(h);break}await r.writeFilePromise(e,o.join(` -`),{mode:n})}function Yne(t,e,r){let i=[];for(let n of t.parts)switch(n.type){case ir.Context:case ir.Deletion:{for(let s of n.lines){let o=e[r];if(o==null||!Mqe(o,s))return null;r+=1}n.type===ir.Deletion&&(i.push({type:"splice",index:r-n.lines.length,numToDelete:n.lines.length,linesToInsert:[]}),n.noNewlineAtEndOfFile&&i.push({type:"push",line:""}))}break;case ir.Insertion:i.push({type:"splice",index:r,numToDelete:0,linesToInsert:n.lines}),n.noNewlineAtEndOfFile&&i.push({type:"pop"});break;default:he.assertNever(n.type);break}return i}var Nqe=/^builtin<([^>]+)>$/;function jne(t,e){let{source:r,selector:i,params:n}=b.parseRange(t);if(r===null)throw new Error("Patch locators must explicitly define their source");let s=i?i.split(/&/).map(c=>npath.toPortablePath(c)):[],o=n&&typeof n.locator=="string"?b.parseLocator(n.locator):null,a=n&&typeof n.version=="string"?n.version:null,l=e(r);return{parentLocator:o,sourceItem:l,patchPaths:s,sourceVersion:a}}function $p(t){let{sourceItem:e,...r}=jne(t.range,b.parseDescriptor);return{...r,sourceDescriptor:e}}function ed(t){let{sourceItem:e,...r}=jne(t.reference,b.parseLocator);return{...r,sourceLocator:e}}function Gne({parentLocator:t,sourceItem:e,patchPaths:r,sourceVersion:i,patchHash:n},s){let o=t!==null?{locator:b.stringifyLocator(t)}:{},a=typeof i!="undefined"?{version:i}:{},l=typeof n!="undefined"?{hash:n}:{};return b.makeRange({protocol:"patch:",source:s(e),selector:r.join("&"),params:{...a,...l,...o}})}function Oqe(t,{parentLocator:e,sourceDescriptor:r,patchPaths:i}){return b.makeLocator(t,Gne({parentLocator:e,sourceItem:r,patchPaths:i},b.stringifyDescriptor))}function _F(t,{parentLocator:e,sourcePackage:r,patchPaths:i,patchHash:n}){return b.makeLocator(t,Gne({parentLocator:e,sourceItem:r,sourceVersion:r.version,patchPaths:i,patchHash:n},b.stringifyLocator))}function qne({onAbsolute:t,onRelative:e,onBuiltin:r},i){i.startsWith("~")&&(i=i.slice(1));let s=i.match(Nqe);return s!==null?r(s[1]):w.isAbsolute(i)?t(i):e(i)}function Jne(t){let e=t.startsWith("~");return e&&(t=t.slice(1)),{optional:e}}function $F(t){return qne({onAbsolute:()=>!1,onRelative:()=>!0,onBuiltin:()=>!1},t)}async function td(t,e,r){let i=t!==null?await r.fetcher.fetch(t,r):null,n=i&&i.localPath?{packageFs:new Ct(pe.root),prefixPath:w.relative(pe.root,i.localPath)}:i;i&&i!==n&&i.releaseFs&&i.releaseFs();let s=await he.releaseAfterUseAsync(async()=>await Promise.all(e.map(async o=>{let a=Jne(o),l=await qne({onAbsolute:async()=>await R.readFilePromise(o,"utf8"),onRelative:async()=>{if(n===null)throw new Error("Assertion failed: The parent locator should have been fetched");return await n.packageFs.readFilePromise(w.join(n.prefixPath,o),"utf8")},onBuiltin:async c=>await r.project.configuration.firstHook(u=>u.getBuiltinPatch,r.project,c)},o);return{...a,source:l}})));for(let o of s)typeof o.source=="string"&&(o.source=o.source.replace(/\r\n?/g,` -`));return s}async function eR(t,{cache:e,project:r}){let i=r.storedPackages.get(t.locatorHash);if(typeof i=="undefined")throw new Error("Assertion failed: Expected the package to be registered");let n=r.storedChecksums,s=new mr,o=r.configuration.makeFetcher(),a=await o.fetch(t,{cache:e,project:r,fetcher:o,checksums:n,report:s}),l=await R.mktempPromise(),c=w.join(l,"source"),u=w.join(l,"user"),g=w.join(l,".yarn-patch.json");return await Promise.all([R.copyPromise(c,a.prefixPath,{baseFs:a.packageFs}),R.copyPromise(u,a.prefixPath,{baseFs:a.packageFs}),R.writeJsonPromise(g,{locator:b.stringifyLocator(t),version:i.version})]),R.detachTemp(l),u}async function tR(t,e){let r=npath.fromPortablePath(t).replace(/\\/g,"/"),i=npath.fromPortablePath(e).replace(/\\/g,"/"),{stdout:n,stderr:s}=await ur.execvp("git",["-c","core.safecrlf=false","diff","--src-prefix=a/","--dst-prefix=b/","--ignore-cr-at-eol","--full-index","--no-index","--text",r,i],{cwd:npath.toPortablePath(process.cwd()),env:{...process.env,GIT_CONFIG_NOSYSTEM:"1",HOME:"",XDG_CONFIG_HOME:"",USERPROFILE:""}});if(s.length>0)throw new Error(`Unable to diff directories. Make sure you have a recent version of 'git' available in PATH. +`):"";await e.mkdirpPromise(B.dirname(n.path),{chmod:493,utimes:[GB,GB]}),await e.writeFilePromise(n.path,s,{mode:n.mode}),await e.utimesPromise(n.path,GB,GB)}break;case"patch":await tg(e,n.path,async()=>{await SWe(n,{baseFs:e,dryRun:r})});break;case"mode change":{let o=(await e.statPromise(n.path)).mode;if(woe(n.newMode)!==woe(o))continue;await tg(e,n.path,async()=>{await e.chmodPromise(n.path,n.newMode)})}break;default:de.assertNever(n);break}}function woe(t){return(t&64)>0}function Qoe(t){return t.replace(/\s+$/,"")}function xWe(t,e){return Qoe(t)===Qoe(e)}async function SWe({hunks:t,path:e},{baseFs:r,dryRun:i=!1}){let n=await r.statSync(e).mode,o=(await r.readFileSync(e,"utf8")).split(/\n/),a=[],l=0,c=0;for(let g of t){let h=Math.max(c,g.header.patched.start+l),f=Math.max(0,h-c),p=Math.max(0,o.length-h-g.header.original.length),m=Math.max(f,p),I=0,y=0,w=null;for(;I<=m;){if(I<=f&&(y=h-I,w=boe(g,o,y),w!==null)){I=-I;break}if(I<=p&&(y=h+I,w=boe(g,o,y),w!==null))break;I+=1}if(w===null)throw new Od(t.indexOf(g),g);a.push(w),l+=I,c=y+g.header.original.length}if(i)return;let u=0;for(let g of a)for(let h of g)switch(h.type){case"splice":{let f=h.index+u;o.splice(f,h.numToDelete,...h.linesToInsert),u+=h.linesToInsert.length-h.numToDelete}break;case"pop":o.pop();break;case"push":o.push(h.line);break;default:de.assertNever(h);break}await r.writeFilePromise(e,o.join(` +`),{mode:n})}function boe(t,e,r){let i=[];for(let n of t.parts)switch(n.type){case Ar.Context:case Ar.Deletion:{for(let s of n.lines){let o=e[r];if(o==null||!xWe(o,s))return null;r+=1}n.type===Ar.Deletion&&(i.push({type:"splice",index:r-n.lines.length,numToDelete:n.lines.length,linesToInsert:[]}),n.noNewlineAtEndOfFile&&i.push({type:"push",line:""}))}break;case Ar.Insertion:i.push({type:"splice",index:r,numToDelete:0,linesToInsert:n.lines}),n.noNewlineAtEndOfFile&&i.push({type:"pop"});break;default:de.assertNever(n.type);break}return i}var PWe=/^builtin<([^>]+)>$/;function Doe(t,e){let{source:r,selector:i,params:n}=Q.parseRange(t);if(r===null)throw new Error("Patch locators must explicitly define their source");let s=i?i.split(/&/).map(c=>L.toPortablePath(c)):[],o=n&&typeof n.locator=="string"?Q.parseLocator(n.locator):null,a=n&&typeof n.version=="string"?n.version:null,l=e(r);return{parentLocator:o,sourceItem:l,patchPaths:s,sourceVersion:a}}function Kd(t){let i=Doe(t.range,Q.parseDescriptor),{sourceItem:e}=i,r=Lr(i,["sourceItem"]);return V(k({},r),{sourceDescriptor:e})}function Td(t){let i=Doe(t.reference,Q.parseLocator),{sourceItem:e}=i,r=Lr(i,["sourceItem"]);return V(k({},r),{sourceLocator:e})}function Soe({parentLocator:t,sourceItem:e,patchPaths:r,sourceVersion:i,patchHash:n},s){let o=t!==null?{locator:Q.stringifyLocator(t)}:{},a=typeof i!="undefined"?{version:i}:{},l=typeof n!="undefined"?{hash:n}:{};return Q.makeRange({protocol:"patch:",source:s(e),selector:r.join("&"),params:k(k(k({},a),l),o)})}function kWe(t,{parentLocator:e,sourceDescriptor:r,patchPaths:i}){return Q.makeLocator(t,Soe({parentLocator:e,sourceItem:r,patchPaths:i},Q.stringifyDescriptor))}function AL(t,{parentLocator:e,sourcePackage:r,patchPaths:i,patchHash:n}){return Q.makeLocator(t,Soe({parentLocator:e,sourceItem:r,sourceVersion:r.version,patchPaths:i,patchHash:n},Q.stringifyLocator))}function xoe({onAbsolute:t,onRelative:e,onBuiltin:r},i){i.startsWith("~")&&(i=i.slice(1));let s=i.match(PWe);return s!==null?r(s[1]):B.isAbsolute(i)?t(i):e(i)}function Poe(t){let e=t.startsWith("~");return e&&(t=t.slice(1)),{optional:e}}function lL(t){return xoe({onAbsolute:()=>!1,onRelative:()=>!0,onBuiltin:()=>!1},t)}async function Ud(t,e,r){let i=t!==null?await r.fetcher.fetch(t,r):null,n=i&&i.localPath?{packageFs:new yt(Ee.root),prefixPath:B.relative(Ee.root,i.localPath)}:i;i&&i!==n&&i.releaseFs&&i.releaseFs();let s=await de.releaseAfterUseAsync(async()=>await Promise.all(e.map(async o=>{let a=Poe(o),l=await xoe({onAbsolute:async()=>await M.readFilePromise(o,"utf8"),onRelative:async()=>{if(n===null)throw new Error("Assertion failed: The parent locator should have been fetched");return await n.packageFs.readFilePromise(B.join(n.prefixPath,o),"utf8")},onBuiltin:async c=>await r.project.configuration.firstHook(u=>u.getBuiltinPatch,r.project,c)},o);return V(k({},a),{source:l})})));for(let o of s)typeof o.source=="string"&&(o.source=o.source.replace(/\r\n?/g,` +`));return s}async function cL(t,{cache:e,project:r}){let i=r.storedPackages.get(t.locatorHash);if(typeof i=="undefined")throw new Error("Assertion failed: Expected the package to be registered");let n=r.storedChecksums,s=new wr,o=r.configuration.makeFetcher(),a=await o.fetch(t,{cache:e,project:r,fetcher:o,checksums:n,report:s}),l=await M.mktempPromise(),c=B.join(l,"source"),u=B.join(l,"user"),g=B.join(l,".yarn-patch.json");return await Promise.all([M.copyPromise(c,a.prefixPath,{baseFs:a.packageFs}),M.copyPromise(u,a.prefixPath,{baseFs:a.packageFs}),M.writeJsonPromise(g,{locator:Q.stringifyLocator(t),version:i.version})]),M.detachTemp(l),u}async function uL(t,e){let r=L.fromPortablePath(t).replace(/\\/g,"/"),i=L.fromPortablePath(e).replace(/\\/g,"/"),{stdout:n,stderr:s}=await Nr.execvp("git",["-c","core.safecrlf=false","diff","--src-prefix=a/","--dst-prefix=b/","--ignore-cr-at-eol","--full-index","--no-index","--text",r,i],{cwd:L.toPortablePath(process.cwd()),env:V(k({},process.env),{GIT_CONFIG_NOSYSTEM:"1",HOME:"",XDG_CONFIG_HOME:"",USERPROFILE:""})});if(s.length>0)throw new Error(`Unable to diff directories. Make sure you have a recent version of 'git' available in PATH. The following error was reported by 'git': -${s}`);let o=r.startsWith("/")?a=>a.slice(1):a=>a;return n.replace(new RegExp(`(a|b)(${he.escapeRegExp(`/${o(r)}/`)})`,"g"),"$1/").replace(new RegExp(`(a|b)${he.escapeRegExp(`/${o(i)}/`)}`,"g"),"$1/").replace(new RegExp(he.escapeRegExp(`${r}/`),"g"),"").replace(new RegExp(he.escapeRegExp(`${i}/`),"g"),"")}function Wne(t,{configuration:e,report:r}){for(let i of t.parts)for(let n of i.lines)switch(i.type){case ir.Context:r.reportInfo(null,` ${se.pretty(e,n,"grey")}`);break;case ir.Deletion:r.reportError(J.FROZEN_LOCKFILE_EXCEPTION,`- ${se.pretty(e,n,se.Type.REMOVED)}`);break;case ir.Insertion:r.reportError(J.FROZEN_LOCKFILE_EXCEPTION,`+ ${se.pretty(e,n,se.Type.ADDED)}`);break;default:he.assertNever(i.type)}}var rR=class{supports(e,r){return!!e.reference.startsWith("patch:")}getLocalPath(e,r){return null}async fetch(e,r){let i=r.checksums.get(e.locatorHash)||null,[n,s,o]=await r.cache.fetchPackageFromCache(e,i,{onHit:()=>r.report.reportCacheHit(e),onMiss:()=>r.report.reportCacheMiss(e,`${b.prettyLocator(r.project.configuration,e)} can't be found in the cache and will be fetched from the disk`),loader:()=>this.patchPackage(e,r),skipIntegrityCheck:r.skipIntegrityCheck});return{packageFs:n,releaseFs:s,prefixPath:b.getIdentVendorPath(e),localPath:this.getLocalPath(e,r),checksum:o}}async patchPackage(e,r){let{parentLocator:i,sourceLocator:n,sourceVersion:s,patchPaths:o}=ed(e),a=await td(i,o,r),l=await R.mktempPromise(),c=w.join(l,"current.zip"),u=await r.fetcher.fetch(n,r),g=b.getIdentVendorPath(e),h=await ri(),f=new Er(c,{libzip:h,create:!0,level:r.project.configuration.get("compressionLevel")});await f.mkdirpPromise(g),await he.releaseAfterUseAsync(async()=>{await f.copyPromise(g,u.prefixPath,{baseFs:u.packageFs,stableSort:!0})},u.releaseFs),f.saveAndClose();for(let{source:p,optional:m}of a){if(p===null)continue;let I=new Er(c,{libzip:h,level:r.project.configuration.get("compressionLevel")}),y=new Ct(w.resolve(pe.root,g),{baseFs:I});try{await Zy(Xy(p),{baseFs:y,version:s})}catch(B){if(!(B instanceof _p))throw B;let P=r.project.configuration.get("enableInlineHunks"),k=!P&&!m?" (set enableInlineHunks for details)":"",N=`${b.prettyLocator(r.project.configuration,e)}: ${B.message}${k}`,O=v=>{!P||Wne(B.hunk,{configuration:r.project.configuration,report:v})};if(I.discardAndClose(),m){r.report.reportWarningOnce(J.PATCH_HUNK_FAILED,N,{reportExtra:O});continue}else throw new Ge(J.PATCH_HUNK_FAILED,N,O)}I.saveAndClose()}return new Er(c,{libzip:h,level:r.project.configuration.get("compressionLevel")})}};var Tqe=2,iR=class{supportsDescriptor(e,r){return!!e.range.startsWith("patch:")}supportsLocator(e,r){return!!e.reference.startsWith("patch:")}shouldPersistResolution(e,r){return!1}bindDescriptor(e,r,i){let{patchPaths:n}=$p(e);return n.every(s=>!$F(s))?e:b.bindDescriptor(e,{locator:b.stringifyLocator(r)})}getResolutionDependencies(e,r){let{sourceDescriptor:i}=$p(e);return[i]}async getCandidates(e,r,i){if(!i.fetchOptions)throw new Error("Assertion failed: This resolver cannot be used unless a fetcher is configured");let{parentLocator:n,sourceDescriptor:s,patchPaths:o}=$p(e),a=await td(n,o,i.fetchOptions),l=r.get(s.descriptorHash);if(typeof l=="undefined")throw new Error("Assertion failed: The dependency should have been resolved");let c=pi.makeHash(`${Tqe}`,...a.map(u=>JSON.stringify(u))).slice(0,6);return[_F(e,{parentLocator:n,sourcePackage:l,patchPaths:o,patchHash:c})]}async getSatisfying(e,r,i){return null}async resolve(e,r){let{sourceLocator:i}=ed(e);return{...await r.resolver.resolve(i,r),...e}}};var rd=class extends Ce{constructor(){super(...arguments);this.save=j.Boolean("-s,--save",!1,{description:"Add the patch to your resolution entries"});this.patchFolder=j.String()}async execute(){let e=await oe.find(this.context.cwd,this.context.plugins),{project:r,workspace:i}=await ke.find(e,this.context.cwd);if(!i)throw new Xe(r.cwd,this.context.cwd);await r.restoreInstallState();let n=w.resolve(this.context.cwd,npath.toPortablePath(this.patchFolder)),s=w.join(n,"../source"),o=w.join(n,"../.yarn-patch.json");if(!R.existsSync(s))throw new UsageError("The argument folder didn't get created by 'yarn patch'");let a=await tR(s,n),l=await R.readJsonPromise(o),c=b.parseLocator(l.locator,!0);if(!r.storedPackages.has(c.locatorHash))throw new UsageError("No package found in the project for the given locator");if(!this.save){this.context.stdout.write(a);return}let u=e.get("patchFolder"),g=w.join(u,b.slugifyLocator(c));await R.mkdirPromise(u,{recursive:!0}),await R.writeFilePromise(g,a);let h=w.relative(r.cwd,g);r.topLevelWorkspace.manifest.resolutions.push({pattern:{descriptor:{fullName:b.stringifyIdent(c),description:l.version}},reference:`patch:${b.stringifyLocator(c)}#${h}`}),await r.persist()}};rd.paths=[["patch-commit"]],rd.usage=ce.Usage({description:"generate a patch out of a directory",details:"\n This will print a patchfile on stdout based on the diff between the folder passed in and the original version of the package. Such file is suitable for consumption with the `patch:` protocol.\n\n Only folders generated by `yarn patch` are accepted as valid input for `yarn patch-commit`.\n "});var zne=rd;var id=class extends Ce{constructor(){super(...arguments);this.json=j.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"});this.package=j.String()}async execute(){let e=await oe.find(this.context.cwd,this.context.plugins),{project:r,workspace:i}=await ke.find(e,this.context.cwd),n=await lt.find(e);if(!i)throw new Xe(r.cwd,this.context.cwd);await r.restoreInstallState();let s=b.parseLocator(this.package);if(s.reference==="unknown"){let o=he.mapAndFilter([...r.storedPackages.values()],a=>a.identHash!==s.identHash?he.mapAndFilter.skip:b.isVirtualLocator(a)?he.mapAndFilter.skip:a);if(o.length===0)throw new UsageError("No package found in the project for the given locator");if(o.length>1)throw new UsageError(`Multiple candidate packages found; explicitly choose one of them (use \`yarn why \` to get more information as to who depends on them): +${s}`);let o=r.startsWith("/")?a=>a.slice(1):a=>a;return n.replace(new RegExp(`(a|b)(${de.escapeRegExp(`/${o(r)}/`)})`,"g"),"$1/").replace(new RegExp(`(a|b)${de.escapeRegExp(`/${o(i)}/`)}`,"g"),"$1/").replace(new RegExp(de.escapeRegExp(`${r}/`),"g"),"").replace(new RegExp(de.escapeRegExp(`${i}/`),"g"),"")}function koe(t,{configuration:e,report:r}){for(let i of t.parts)for(let n of i.lines)switch(i.type){case Ar.Context:r.reportInfo(null,` ${Ae.pretty(e,n,"grey")}`);break;case Ar.Deletion:r.reportError(z.FROZEN_LOCKFILE_EXCEPTION,`- ${Ae.pretty(e,n,Ae.Type.REMOVED)}`);break;case Ar.Insertion:r.reportError(z.FROZEN_LOCKFILE_EXCEPTION,`+ ${Ae.pretty(e,n,Ae.Type.ADDED)}`);break;default:de.assertNever(i.type)}}var gL=class{supports(e,r){return!!e.reference.startsWith("patch:")}getLocalPath(e,r){return null}async fetch(e,r){let i=r.checksums.get(e.locatorHash)||null,[n,s,o]=await r.cache.fetchPackageFromCache(e,i,{onHit:()=>r.report.reportCacheHit(e),onMiss:()=>r.report.reportCacheMiss(e,`${Q.prettyLocator(r.project.configuration,e)} can't be found in the cache and will be fetched from the disk`),loader:()=>this.patchPackage(e,r),skipIntegrityCheck:r.skipIntegrityCheck});return{packageFs:n,releaseFs:s,prefixPath:Q.getIdentVendorPath(e),localPath:this.getLocalPath(e,r),checksum:o}}async patchPackage(e,r){let{parentLocator:i,sourceLocator:n,sourceVersion:s,patchPaths:o}=Td(e),a=await Ud(i,o,r),l=await M.mktempPromise(),c=B.join(l,"current.zip"),u=await r.fetcher.fetch(n,r),g=Q.getIdentVendorPath(e),h=await gi(),f=new br(c,{libzip:h,create:!0,level:r.project.configuration.get("compressionLevel")});await f.mkdirpPromise(g),await de.releaseAfterUseAsync(async()=>{await f.copyPromise(g,u.prefixPath,{baseFs:u.packageFs,stableSort:!0})},u.releaseFs),f.saveAndClose();for(let{source:p,optional:m}of a){if(p===null)continue;let I=new br(c,{libzip:h,level:r.project.configuration.get("compressionLevel")}),y=new yt(B.resolve(Ee.root,g),{baseFs:I});try{await jB(YB(p),{baseFs:y,version:s})}catch(w){if(!(w instanceof Od))throw w;let x=r.project.configuration.get("enableInlineHunks"),F=!x&&!m?" (set enableInlineHunks for details)":"",N=`${Q.prettyLocator(r.project.configuration,e)}: ${w.message}${F}`,K=v=>{!x||koe(w.hunk,{configuration:r.project.configuration,report:v})};if(I.discardAndClose(),m){r.report.reportWarningOnce(z.PATCH_HUNK_FAILED,N,{reportExtra:K});continue}else throw new Ze(z.PATCH_HUNK_FAILED,N,K)}I.saveAndClose()}return new br(c,{libzip:h,level:r.project.configuration.get("compressionLevel")})}};var vWe=2,hL=class{supportsDescriptor(e,r){return!!e.range.startsWith("patch:")}supportsLocator(e,r){return!!e.reference.startsWith("patch:")}shouldPersistResolution(e,r){return!1}bindDescriptor(e,r,i){let{patchPaths:n}=Kd(e);return n.every(s=>!lL(s))?e:Q.bindDescriptor(e,{locator:Q.stringifyLocator(r)})}getResolutionDependencies(e,r){let{sourceDescriptor:i}=Kd(e);return[i]}async getCandidates(e,r,i){if(!i.fetchOptions)throw new Error("Assertion failed: This resolver cannot be used unless a fetcher is configured");let{parentLocator:n,sourceDescriptor:s,patchPaths:o}=Kd(e),a=await Ud(n,o,i.fetchOptions),l=r.get(s.descriptorHash);if(typeof l=="undefined")throw new Error("Assertion failed: The dependency should have been resolved");let c=Di.makeHash(`${vWe}`,...a.map(u=>JSON.stringify(u))).slice(0,6);return[AL(e,{parentLocator:n,sourcePackage:l,patchPaths:o,patchHash:c})]}async getSatisfying(e,r,i){return null}async resolve(e,r){let{sourceLocator:i}=Td(e),n=await r.resolver.resolve(i,r);return k(k({},n),e)}};var Hd=class extends Be{constructor(){super(...arguments);this.save=G.Boolean("-s,--save",!1,{description:"Add the patch to your resolution entries"});this.patchFolder=G.String()}async execute(){let e=await le.find(this.context.cwd,this.context.plugins),{project:r,workspace:i}=await Fe.find(e,this.context.cwd);if(!i)throw new Xe(r.cwd,this.context.cwd);await r.restoreInstallState();let n=B.resolve(this.context.cwd,L.toPortablePath(this.patchFolder)),s=B.join(n,"../source"),o=B.join(n,"../.yarn-patch.json");if(!M.existsSync(s))throw new me("The argument folder didn't get created by 'yarn patch'");let a=await uL(s,n),l=await M.readJsonPromise(o),c=Q.parseLocator(l.locator,!0);if(!r.storedPackages.has(c.locatorHash))throw new me("No package found in the project for the given locator");if(!this.save){this.context.stdout.write(a);return}let u=e.get("patchFolder"),g=B.join(u,Q.slugifyLocator(c));await M.mkdirPromise(u,{recursive:!0}),await M.writeFilePromise(g,a);let h=B.relative(r.cwd,g);r.topLevelWorkspace.manifest.resolutions.push({pattern:{descriptor:{fullName:Q.stringifyIdent(c),description:l.version}},reference:`patch:${Q.stringifyLocator(c)}#${h}`}),await r.persist()}};Hd.paths=[["patch-commit"]],Hd.usage=fe.Usage({description:"generate a patch out of a directory",details:"\n This will print a patchfile on stdout based on the diff between the folder passed in and the original version of the package. Such file is suitable for consumption with the `patch:` protocol.\n\n Only folders generated by `yarn patch` are accepted as valid input for `yarn patch-commit`.\n "});var voe=Hd;var Yd=class extends Be{constructor(){super(...arguments);this.json=G.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"});this.package=G.String()}async execute(){let e=await le.find(this.context.cwd,this.context.plugins),{project:r,workspace:i}=await Fe.find(e,this.context.cwd),n=await gt.find(e);if(!i)throw new Xe(r.cwd,this.context.cwd);await r.restoreInstallState();let s=Q.parseLocator(this.package);if(s.reference==="unknown"){let o=de.mapAndFilter([...r.storedPackages.values()],a=>a.identHash!==s.identHash?de.mapAndFilter.skip:Q.isVirtualLocator(a)?de.mapAndFilter.skip:a);if(o.length===0)throw new me("No package found in the project for the given locator");if(o.length>1)throw new me(`Multiple candidate packages found; explicitly choose one of them (use \`yarn why \` to get more information as to who depends on them): ${o.map(a=>` -- ${b.prettyLocator(e,a)}`).join("")}`);s=o[0]}if(!r.storedPackages.has(s.locatorHash))throw new UsageError("No package found in the project for the given locator");await we.start({configuration:e,json:this.json,stdout:this.context.stdout},async o=>{let a=await eR(s,{cache:n,project:r});o.reportJson({locator:b.stringifyLocator(s),path:npath.fromPortablePath(a)}),o.reportInfo(J.UNNAMED,`Package ${b.prettyLocator(e,s)} got extracted with success!`),o.reportInfo(J.UNNAMED,`You can now edit the following folder: ${se.pretty(e,npath.fromPortablePath(a),"magenta")}`),o.reportInfo(J.UNNAMED,`Once you are done run ${se.pretty(e,`yarn patch-commit ${process.platform==="win32"?'"':""}${npath.fromPortablePath(a)}${process.platform==="win32"?'"':""}`,"cyan")} and Yarn will store a patchfile based on your changes.`)})}};id.paths=[["patch"]],id.usage=ce.Usage({description:"prepare a package for patching",details:'\n This command will cause a package to be extracted in a temporary directory (under a folder named "patch-workdir"). This folder will be editable at will; running `yarn patch` inside it will then cause Yarn to generate a patchfile and register it into your top-level manifest (cf the `patch:` protocol).\n '});var Xne=id;var Kqe={configuration:{enableInlineHunks:{description:"If true, the installs will print unmatched patch hunks",type:Ae.BOOLEAN,default:!1},patchFolder:{description:"Folder where the patch files must be written",type:Ae.ABSOLUTE_PATH,default:"./.yarn/patches"}},commands:[zne,Xne],fetchers:[rR],resolvers:[iR]},Uqe=Kqe;var _E=()=>({modules:new Map([["@yarnpkg/cli",kf],["@yarnpkg/core",af],["@yarnpkg/fslib",tg],["@yarnpkg/libzip",Ah],["@yarnpkg/parsers",ph],["@yarnpkg/shell",Ch],["clipanion",O5(fg)],["semver",Hqe],["typanion",Yqe],["yup",jqe],["@yarnpkg/plugin-essentials",Bk],["@yarnpkg/plugin-compat",Dk],["@yarnpkg/plugin-dlx",Sk],["@yarnpkg/plugin-file",Nk],["@yarnpkg/plugin-git",Wk],["@yarnpkg/plugin-github",Xk],["@yarnpkg/plugin-http",_k],["@yarnpkg/plugin-init",rv],["@yarnpkg/plugin-link",av],["@yarnpkg/plugin-node-modules",Hv],["@yarnpkg/plugin-npm",GF],["@yarnpkg/plugin-npm-cli",VF],["@yarnpkg/plugin-pack",UF],["@yarnpkg/plugin-patch",nR],["@yarnpkg/plugin-pnp",xv]]),plugins:new Set(["@yarnpkg/plugin-essentials","@yarnpkg/plugin-compat","@yarnpkg/plugin-dlx","@yarnpkg/plugin-file","@yarnpkg/plugin-git","@yarnpkg/plugin-github","@yarnpkg/plugin-http","@yarnpkg/plugin-init","@yarnpkg/plugin-link","@yarnpkg/plugin-node-modules","@yarnpkg/plugin-npm","@yarnpkg/plugin-npm-cli","@yarnpkg/plugin-pack","@yarnpkg/plugin-patch","@yarnpkg/plugin-pnp"])});yE({binaryVersion:Mi||"",pluginConfiguration:_E()});})(); +- ${Q.prettyLocator(e,a)}`).join("")}`);s=o[0]}if(!r.storedPackages.has(s.locatorHash))throw new me("No package found in the project for the given locator");await xe.start({configuration:e,json:this.json,stdout:this.context.stdout},async o=>{let a=await cL(s,{cache:n,project:r});o.reportJson({locator:Q.stringifyLocator(s),path:L.fromPortablePath(a)}),o.reportInfo(z.UNNAMED,`Package ${Q.prettyLocator(e,s)} got extracted with success!`),o.reportInfo(z.UNNAMED,`You can now edit the following folder: ${Ae.pretty(e,L.fromPortablePath(a),"magenta")}`),o.reportInfo(z.UNNAMED,`Once you are done run ${Ae.pretty(e,`yarn patch-commit ${process.platform==="win32"?'"':""}${L.fromPortablePath(a)}${process.platform==="win32"?'"':""}`,"cyan")} and Yarn will store a patchfile based on your changes.`)})}};Yd.paths=[["patch"]],Yd.usage=fe.Usage({description:"prepare a package for patching",details:'\n This command will cause a package to be extracted in a temporary directory (under a folder named "patch-workdir"). This folder will be editable at will; running `yarn patch` inside it will then cause Yarn to generate a patchfile and register it into your top-level manifest (cf the `patch:` protocol).\n '});var Foe=Yd;var FWe={configuration:{enableInlineHunks:{description:"If true, the installs will print unmatched patch hunks",type:ge.BOOLEAN,default:!1},patchFolder:{description:"Folder where the patch files must be written",type:ge.ABSOLUTE_PATH,default:"./.yarn/patches"}},commands:[voe,Foe],fetchers:[gL],resolvers:[hL]},RWe=FWe;var Jy=()=>({modules:new Map([["@yarnpkg/cli",gp],["@yarnpkg/core",Yf],["@yarnpkg/fslib",Lg],["@yarnpkg/libzip",Yh],["@yarnpkg/parsers",Xh],["@yarnpkg/shell",_h],["clipanion",fV(Zg)],["semver",LWe],["typanion",Hl],["yup",NWe],["@yarnpkg/plugin-essentials",Lv],["@yarnpkg/plugin-compat",Kv],["@yarnpkg/plugin-dlx",Tv],["@yarnpkg/plugin-file",zv],["@yarnpkg/plugin-git",sF],["@yarnpkg/plugin-github",aF],["@yarnpkg/plugin-http",cF],["@yarnpkg/plugin-init",fF],["@yarnpkg/plugin-link",IF],["@yarnpkg/plugin-node-modules",_F],["@yarnpkg/plugin-npm",tL],["@yarnpkg/plugin-npm-cli",oL],["@yarnpkg/plugin-pack",ZR],["@yarnpkg/plugin-patch",fL],["@yarnpkg/plugin-pnp",UF]]),plugins:new Set(["@yarnpkg/plugin-essentials","@yarnpkg/plugin-compat","@yarnpkg/plugin-dlx","@yarnpkg/plugin-file","@yarnpkg/plugin-git","@yarnpkg/plugin-github","@yarnpkg/plugin-http","@yarnpkg/plugin-init","@yarnpkg/plugin-link","@yarnpkg/plugin-node-modules","@yarnpkg/plugin-npm","@yarnpkg/plugin-npm-cli","@yarnpkg/plugin-pack","@yarnpkg/plugin-patch","@yarnpkg/plugin-pnp"])});dy({binaryVersion:yr||"",pluginConfiguration:Jy()});})(); /*! * buildToken * Builds OAuth token prefix (helper function) diff --git a/.yarnrc.yml b/.yarnrc.yml index e26322334..0ff06e2b6 100644 --- a/.yarnrc.yml +++ b/.yarnrc.yml @@ -3,5 +3,10 @@ nodeLinker: node-modules plugins: - path: .yarn/plugins/@yarnpkg/plugin-interactive-tools.cjs spec: "@yarnpkg/plugin-interactive-tools" + - .yarn/plugins/plugin-requirements.check.cjs + - path: .yarn/plugins/@yarnpkg/plugin-typescript.cjs + spec: "@yarnpkg/plugin-typescript" + +progressBarStyle: rats yarnPath: .yarn/releases/yarn-sources.cjs diff --git a/CHANGELOG.md b/CHANGELOG.md index b029f059a..a34926c1c 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -11,9 +11,11 @@ For detailed rules of this file, see [Changelog Rules](#changelog-rules) ### ✨ Added * + ### ⚡ Changed * + ### 🐛 Fixed * @@ -21,8 +23,55 @@ For detailed rules of this file, see [Changelog Rules](#changelog-rules) ### ⚙ Tasks * +[Unreleased]: https://github.com/FuelRats/fuelrats.com/compare/v2.14.0...HEAD + + + + + +## [2.14.0][] - 2021-10-17 + +### ✨ Added +* A new page to assist with editing QMS locale files has been added. - [#370][] +* A general purpose JSON object editor has been implemented. this should come in handy at some point! - [#370][] +* User avatars are now customizable through our new Avatar uploader! - [#332][], [#375][] + + +### ⚡ Changed +* Error readout for unknown API Errors has been improved. - [#328][] +* Reworded `Owns Odyssey` to `Using Odyssey` on rat cards to better convey the toggle's meaning. - [#328][] +* Canceled donations will now return you to the donation form. - [#328][] +* Optimized image loading and accessibility for images site-wide. - [#328][] +* Further optimized font loading. - [#328][] +* Moved raw version information to an API route (`/api/version`), and reworked version page to draw information from that route. - [#328][] +* Moved all custom server functions into suitable replacements provided by our site framework. - [#329][] + * This move has let us drop our entire custom backend. +* Updated `` with an improved loading state animation. - [#330][] +* Open rescues may no longer be edited by normal users while the rescue is open - [#373] +* Other smaller changes to sreamline development. - [#328][], [#329][], [#370][] + + +### 🐛 Fixed +* Failure to load password evaluation will no longer prevent forms that use it from being submitted. - [#328][] +* Authorization page no longer displays an `Invalid Authorize Request` error when redirecting users after login. - [#328][] +* `Using Odyssey` switch now properly enters a loading state while waiting on it's event handler to resolve. - [#330][] +* Profile page will no longer crash when deleting a rat. - [#333][] + + +### ⚙ Tasks +* Update lint configs +* Add `@next/eslint-plugin-next` into linting config. + -[Unreleased]: https://github.com/FuelRats/fuelrats.com/compare/v2.13.0...HEAD +[#328]: https://github.com/FuelRats/fuelrats.com/pull/328 +[#329]: https://github.com/FuelRats/fuelrats.com/pull/329 +[#330]: https://github.com/FuelRats/fuelrats.com/pull/330 +[#332]: https://github.com/FuelRats/fuelrats.com/pull/332 +[#333]: https://github.com/FuelRats/fuelrats.com/pull/333 +[#370]: https://github.com/FuelRats/fuelrats.com/pull/370 +[#373]: https://github.com/FuelRats/fuelrats.com/pull/373 +[#375]: https://github.com/FuelRats/fuelrats.com/pull/375 +[2.14.0]: https://github.com/FuelRats/fuelrats.com/compare/v2.13.1...v2.14.0 @@ -39,7 +88,7 @@ For detailed rules of this file, see [Changelog Rules](#changelog-rules) * Improved queue information endpoint response times via better routing and caching. - [#326][] -[#326]: https://github.com/fuelRats/fuelrats.com/pull/326 +[#326]: https://github.com/FuelRats/fuelrats.com/pull/326 [2.13.1]: https://github.com/FuelRats/fuelrats.com/compare/v2.13.0...v2.13.1 @@ -66,11 +115,11 @@ For detailed rules of this file, see [Changelog Rules](#changelog-rules) * Add @Delota as a contributor! 🥳 - [#317][] -[#316]: https://github.com/fuelRats/fuelrats.com/pull/316 -[#317]: https://github.com/fuelRats/fuelrats.com/pull/317 -[#320]: https://github.com/fuelRats/fuelrats.com/pull/320 -[#323]: https://github.com/fuelRats/fuelrats.com/pull/323 -[#324]: https://github.com/fuelRats/fuelrats.com/pull/324 +[#316]: https://github.com/FuelRats/fuelrats.com/pull/316 +[#317]: https://github.com/FuelRats/fuelrats.com/pull/317 +[#320]: https://github.com/FuelRats/fuelrats.com/pull/320 +[#323]: https://github.com/FuelRats/fuelrats.com/pull/323 +[#324]: https://github.com/FuelRats/fuelrats.com/pull/324 [2.13.0]: https://github.com/FuelRats/fuelrats.com/compare/v2.12.10...v2.13.0 @@ -91,8 +140,8 @@ For detailed rules of this file, see [Changelog Rules](#changelog-rules) * Resolved a crash on the paperwork page which would occur when changing the platform in certain situations. - [#315][] -[#314]: https://github.com/fuelRats/fuelrats.com/pull/314 -[#315]: https://github.com/fuelRats/fuelrats.com/pull/315 +[#314]: https://github.com/FuelRats/fuelrats.com/pull/314 +[#315]: https://github.com/FuelRats/fuelrats.com/pull/315 [2.12.10]: https://github.com/FuelRats/fuelrats.com/compare/v2.12.9...v2.12.10 @@ -107,7 +156,7 @@ For detailed rules of this file, see [Changelog Rules](#changelog-rules) * Move fuelrats API routes to `/api/fr` to free up the api directory for other things. - [#312][] -[#312]: https://github.com/fuelRats/fuelrats.com/pull/312 +[#312]: https://github.com/FuelRats/fuelrats.com/pull/312 [2.12.9]: https://github.com/FuelRats/fuelrats.com/compare/v2.12.8...v2.12.9 @@ -120,7 +169,7 @@ For detailed rules of this file, see [Changelog Rules](#changelog-rules) * Fix multiple issues with redeeming decals - [#309][] -[#309]: https://github.com/fuelRats/fuelrats.com/pull/309 +[#309]: https://github.com/FuelRats/fuelrats.com/pull/309 [2.12.8]: https://github.com/FuelRats/fuelrats.com/compare/v2.12.7...v2.12.8 @@ -152,11 +201,11 @@ For detailed rules of this file, see [Changelog Rules](#changelog-rules) * Add @Master-Guy as a contributor! 🥳 - [#304][] -[#302]: https://github.com/fuelRats/fuelrats.com/pull/302 -[#304]: https://github.com/fuelRats/fuelrats.com/pull/304 -[#305]: https://github.com/fuelRats/fuelrats.com/pull/305 -[#306]: https://github.com/fuelRats/fuelrats.com/pull/306 -[#307]: https://github.com/fuelRats/fuelrats.com/pull/307 +[#302]: https://github.com/FuelRats/fuelrats.com/pull/302 +[#304]: https://github.com/FuelRats/fuelrats.com/pull/304 +[#305]: https://github.com/FuelRats/fuelrats.com/pull/305 +[#306]: https://github.com/FuelRats/fuelrats.com/pull/306 +[#307]: https://github.com/FuelRats/fuelrats.com/pull/307 [2.12.7]: https://github.com/FuelRats/fuelrats.com/compare/v2.12.6...v2.12.7 @@ -177,9 +226,9 @@ For detailed rules of this file, see [Changelog Rules](#changelog-rules) * Add @diraven as a contributor! 🎊 - [#299][] -[#297]: https://github.com/fuelrats/fuelrats.com/pull/297 -[#298]: https://github.com/fuelRats/fuelrats.com/pull/298 -[#299]: https://github.com/fuelRats/fuelrats.com/pull/299] +[#297]: https://github.com/FuelRats/fuelrats.com/pull/297 +[#298]: https://github.com/FuelRats/fuelrats.com/pull/298 +[#299]: https://github.com/FuelRats/fuelrats.com/pull/299] [2.12.6]: https://github.com/FuelRats/fuelrats.com/compare/v2.12.5...v2.12.6 @@ -197,7 +246,7 @@ For detailed rules of this file, see [Changelog Rules](#changelog-rules) * Fix race condition that would allow certain requests to be made as someone other than the user making the request. - [#295][] -[#295]: https://github.com/fuelrats/fuelrats.com/pull/295 +[#295]: https://github.com/FuelRats/fuelrats.com/pull/295 [2.12.5]: https://github.com/FuelRats/fuelrats.com/compare/v2.12.4...v2.12.5 @@ -226,10 +275,10 @@ For detailed rules of this file, see [Changelog Rules](#changelog-rules) * Upgrade to React 17. - [#293][] -[#290]: https://github.com/fuelrats/fuelrats.com/pull/290 -[#291]: https://github.com/fuelrats/fuelrats.com/pull/291 -[#292]: https://github.com/fuelrats/fuelrats.com/pull/292 -[#293]: https://github.com/fuelrats/fuelrats.com/pull/293 +[#290]: https://github.com/FuelRats/fuelrats.com/pull/290 +[#291]: https://github.com/FuelRats/fuelrats.com/pull/291 +[#292]: https://github.com/FuelRats/fuelrats.com/pull/292 +[#293]: https://github.com/FuelRats/fuelrats.com/pull/293 [2.12.4]: https://github.com/FuelRats/fuelrats.com/compare/v2.12.3...v2.12.4 @@ -255,9 +304,9 @@ For detailed rules of this file, see [Changelog Rules](#changelog-rules) * Remove unused React imports and clean up import formatting. - [#287][] -[#286]: https://github.com/fuelrats/fuelrats.com/pull/286 -[#287]: https://github.com/fuelrats/fuelrats.com/pull/287 -[#288]: https://github.com/fuelrats/fuelrats.com/pull/288 +[#286]: https://github.com/FuelRats/fuelrats.com/pull/286 +[#287]: https://github.com/FuelRats/fuelrats.com/pull/287 +[#288]: https://github.com/FuelRats/fuelrats.com/pull/288 [2.12.3]: https://github.com/FuelRats/fuelrats.com/compare/v2.12.2...v2.12.3 @@ -349,32 +398,32 @@ This is the first recovery patch from APIv3 release. Changes were committed dire [2.12.0]: https://github.com/FuelRats/fuelrats.com/compare/v2.11.5...v2.12.0 -[#191]: https://github.com/fuelrats/fuelrats.com/pull/191 -[#220]: https://github.com/fuelrats/fuelrats.com/pull/220 -[#238]: https://github.com/fuelrats/fuelrats.com/pull/238 -[#240]: https://github.com/fuelrats/fuelrats.com/pull/240 -[#241]: https://github.com/fuelrats/fuelrats.com/pull/241 -[#243]: https://github.com/fuelrats/fuelrats.com/pull/243 -[#245]: https://github.com/fuelrats/fuelrats.com/pull/245 -[#247]: https://github.com/fuelrats/fuelrats.com/pull/247 -[#248]: https://github.com/fuelrats/fuelrats.com/pull/248 -[#251]: https://github.com/fuelrats/fuelrats.com/pull/251 -[#253]: https://github.com/fuelrats/fuelrats.com/pull/253 -[#254]: https://github.com/fuelrats/fuelrats.com/pull/254 -[#255]: https://github.com/fuelrats/fuelrats.com/pull/255 -[#256]: https://github.com/fuelrats/fuelrats.com/pull/256 -[#258]: https://github.com/fuelrats/fuelrats.com/pull/258 -[#260]: https://github.com/fuelrats/fuelrats.com/pull/260 -[#262]: https://github.com/fuelrats/fuelrats.com/pull/262 -[#263]: https://github.com/fuelrats/fuelrats.com/pull/263 -[#264]: https://github.com/fuelrats/fuelrats.com/pull/264 -[#265]: https://github.com/fuelrats/fuelrats.com/pull/265 -[#266]: https://github.com/fuelrats/fuelrats.com/pull/266 -[#267]: https://github.com/fuelrats/fuelrats.com/pull/267 -[#268]: https://github.com/fuelrats/fuelrats.com/pull/268 -[#269]: https://github.com/fuelrats/fuelrats.com/pull/269 -[#270]: https://github.com/fuelrats/fuelrats.com/pull/270 -[#271]: https://github.com/fuelrats/fuelrats.com/pull/271 +[#191]: https://github.com/FuelRats/fuelrats.com/pull/191 +[#220]: https://github.com/FuelRats/fuelrats.com/pull/220 +[#238]: https://github.com/FuelRats/fuelrats.com/pull/238 +[#240]: https://github.com/FuelRats/fuelrats.com/pull/240 +[#241]: https://github.com/FuelRats/fuelrats.com/pull/241 +[#243]: https://github.com/FuelRats/fuelrats.com/pull/243 +[#245]: https://github.com/FuelRats/fuelrats.com/pull/245 +[#247]: https://github.com/FuelRats/fuelrats.com/pull/247 +[#248]: https://github.com/FuelRats/fuelrats.com/pull/248 +[#251]: https://github.com/FuelRats/fuelrats.com/pull/251 +[#253]: https://github.com/FuelRats/fuelrats.com/pull/253 +[#254]: https://github.com/FuelRats/fuelrats.com/pull/254 +[#255]: https://github.com/FuelRats/fuelrats.com/pull/255 +[#256]: https://github.com/FuelRats/fuelrats.com/pull/256 +[#258]: https://github.com/FuelRats/fuelrats.com/pull/258 +[#260]: https://github.com/FuelRats/fuelrats.com/pull/260 +[#262]: https://github.com/FuelRats/fuelrats.com/pull/262 +[#263]: https://github.com/FuelRats/fuelrats.com/pull/263 +[#264]: https://github.com/FuelRats/fuelrats.com/pull/264 +[#265]: https://github.com/FuelRats/fuelrats.com/pull/265 +[#266]: https://github.com/FuelRats/fuelrats.com/pull/266 +[#267]: https://github.com/FuelRats/fuelrats.com/pull/267 +[#268]: https://github.com/FuelRats/fuelrats.com/pull/268 +[#269]: https://github.com/FuelRats/fuelrats.com/pull/269 +[#270]: https://github.com/FuelRats/fuelrats.com/pull/270 +[#271]: https://github.com/FuelRats/fuelrats.com/pull/271 @@ -386,7 +435,7 @@ This is the first recovery patch from APIv3 release. Changes were committed dire * Resolved issues with our CSS processing config. - [#242][] [2.11.5]: https://github.com/FuelRats/fuelrats.com/compare/v2.11.4...v2.11.5 -[#242]: https://github.com/fuelrats/fuelrats.com/pull/242 +[#242]: https://github.com/FuelRats/fuelrats.com/pull/242 @@ -409,7 +458,7 @@ This is the first recovery patch from APIv3 release. Changes were committed dire * Switch to new SVG implementation. - [#249][] [2.11.4]: https://github.com/FuelRats/fuelrats.com/compare/v2.11.3...v2.11.4 -[#249]: https://github.com/fuelrats/fuelrats.com/pull/249 +[#249]: https://github.com/FuelRats/fuelrats.com/pull/249 @@ -422,7 +471,7 @@ This is the first recovery patch from APIv3 release. Changes were committed dire [2.11.3]: https://github.com/FuelRats/fuelrats.com/compare/v2.11.2...v2.11.3 -[#242]: https://github.com/fuelrats/fuelrats.com/pull/242 +[#242]: https://github.com/FuelRats/fuelrats.com/pull/242 @@ -435,7 +484,7 @@ This is the first recovery patch from APIv3 release. Changes were committed dire [2.11.2]: https://github.com/FuelRats/fuelrats.com/compare/v2.11.1...v2.11.2 -[#236]: https://github.com/fuelrats/fuelrats.com/pull/236 +[#236]: https://github.com/FuelRats/fuelrats.com/pull/236 @@ -450,7 +499,7 @@ This is the first recovery patch from APIv3 release. Changes were committed dire [2.11.1]: https://github.com/FuelRats/fuelrats.com/compare/v2.11.0...v2.11.1 -[#233]: https://github.com/fuelRats/fuelrats.com/pull/233 +[#233]: https://github.com/FuelRats/fuelrats.com/pull/233 @@ -499,10 +548,10 @@ This is the first recovery patch from APIv3 release. Changes were committed dire [#223]: https://github.com/FuelRats/fuelrats.com/pull/223 [#224]: https://github.com/FuelRats/fuelrats.com/pull/224 [#226]: https://github.com/FuelRats/fuelrats.com/pull/226 -[#228]: https://github.com/fuelRats/fuelrats.com/pull/228 -[#230]: https://github.com/fuelRats/fuelrats.com/pull/230 -[#231]: https://github.com/fuelRats/fuelrats.com/pull/231 -[#232]: https://github.com/fuelRats/fuelrats.com/pull/232 +[#228]: https://github.com/FuelRats/fuelrats.com/pull/228 +[#230]: https://github.com/FuelRats/fuelrats.com/pull/230 +[#231]: https://github.com/FuelRats/fuelrats.com/pull/231 +[#232]: https://github.com/FuelRats/fuelrats.com/pull/232 diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 4291fce4e..83e91d7d1 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -1,44 +1,45 @@ # Contributing -You want to contribute to the project? Awesome! +You want to contribute to fuelrats.com? Awesome! -## Things to know +## Some things to know By contributing to this repository, you are expected to know and follow the rules of general conduct outlined in our [Terms of Service][fuelrats-tos]. While not all rules are applicable in the context of github, we still expect the same level of professional behavior detailed by our ToS. **Working on your first Pull Request?** [How to Contribute to an Open Source Project on GitHub][egghead] -## How do +## How do I... -* Project setup? - [We've got you covered!](#project-setup) +* Request a feature? + [Submit it!][fr-issues-new] + +* Report a bug? + [Let us know!][fr-issues-new] -* Found a bug? - [Let us know!][bugs] +* Setup a development enviornment? + [We've got you covered!](#project-setup) -* Patched a bug? - [Make a PR!][new-pr] +* Submit a PR? + [Learn more here!](#code-contributions) -* Adding a new feature? - Please, *please*, ***please*** get some feedback from the tech rats and/or the ops team before you write any code. Don't waste your time building a feature that's already been struck down. ## Project setup 1. Install Node.js and `npm` (if you haven't already). * [`nvm`](#nvm-install) is recommended for Linux/WSL/macOS. * Node for Windows is available [here](#node-install), but you should probably be using WSL or some other linux-based CLI alternative. - * Current version requirement is: `^14.0.0`. + * Current version requirement is: `^16.0.0`. 1. Install Yarn (if you haven't already). * Run: `npm i -g yarn` 1. Fork and clone the repo * Hit "Fork" in the upper left corner of the github page. * Run: `git clone https://github.com//fuelrats.com` -1. Setup environment variables (detailed in ["Dev environment setup"](#dev-environment-setup)) +1. Setup environment variables (detailed in ["Dev environment configuration"](#dev-environment-configuration)) 1. In the project directory, run `yarn install` to install dependencies. 1. Run `yarn dev` to start the dev server. -> Use of `npm` as a package manager is **NOT** supported by this repository. +> Warning: Use of `npm` as a package manager is **NOT** supported. > Tip: Keep your `develop` branch pointing at the original repository and make > pull requests from branches on your fork. To do this, run: @@ -56,106 +57,179 @@ By contributing to this repository, you are expected to know and follow the rule > branch. Whenever you want to update your version of `develop`, do a regular > `git pull`. -### Dev environment setup +### Dev environment configuration -You'll need to set a few environment variables to get the website running properly. `Next.js` loads environment variables automaitcally for us from a file called `.env.local`. Follow these steps to set that file up: +You'll need to set a few environment variables to get the website running properly. In development, environment variables are automatically loaded through the `.env.local` file. Follow these steps to setup this file: -1. Duplicate the `.env.local.template` enviornment file located in the root directory. -1. Rename it to `.env.local`. +1. Duplicate the `.env.local.template` file located in the root directory, and rename it to `.env.local`. 1. Replace the following variables with the values provided to you by a project maintainer. Don't have any values to set? Contact the TechRats over IRC! - * FRDC_API_KEY - * FRDC_API_SECRET - * FRDC_STRIPE_API_PK - * FRDC_STRIPE_API_SK -1. Optionally, you can also set `REACT_EDITOR` to the editor of your choice so the website's error overlay can link you directly to erroring code. By default this is set to `code` for VSCode. + * FR_API_KEY + * FR_API_SECRET + * FR_STRIPE_API_PK + * FR_STRIPE_API_SK +1. Optionally, you may also set `REACT_EDITOR` to the editor of your choice so the website's error overlay can link you directly to code. By default this is set to `code` for VSCode. -## Being added as a contributor -When you create your first PR we will add you as a contributor as per [All Contributors][all-contributors] convention. -If you have made a bug report, you will be added along with the PR that fixes the bug. (Assuming you have a GitHub account!) +## Code Contributions -If you do not wish to be added, please let us know. +Please, *please*, ***please*** get some feedback from the TechRats and/or the ops team before you write any code. Don't waste your time building a feature that's already been struck down. Search our existing [issues][fr-issues] for a related issue, or [create a new one][fr-issues-new] if none exists. +Before beginning work on your first contribution, you should read through this document to make the process as straightforward as possible. -## Contributing as an Organization member -Below are steps which **MUST** be followed by all Fuel Rats org members. External collaborators only have to follow the above guidelines, but encouraged to adopt these same practices for consistency. +### Development flow -### Steps for development +Once you have an issue to work on, follow these steps to get you off the ground. -1. Branch from `develop` using the formatting rules below. -1. Do the work required to satisfy the Ticket or objective. If work unrelated to the objective needs to be done, make a separate branch. -1. Document the changes introduced from the previous release in `CHANGELOG.md`. +1. If this is your first contribution, follow ["Project Setup"](#project-setup) above. +1. Create a new working branch off of `develop` on your own fork. +1. Do the work required to satisfy the issue. If work unrelated to the objective needs to be done, discuss it in the issue before proceeding. +1. Commit your changes following our [Commit Conventions](#commit-conventions). +1. Before creating your PR, ensure you have followed the [ PR Checklist](#submitting-a-pr) below. 1. Submit PR to merge back into `develop`. - * Any change which would affect current development should be documented in the description. - * PRs for a ticket should be tagged in the title with the ticket. IE: `[WEB-##] Fix bug` - * Assign the PR to yourself. (If you cannot, leave it for someone who can) - * The PR should be labeled with the label most fitting to the type of work. If the PR is a bugfix which must be merged to fix a major problem, it should be labeled `Urgent`. - * When the PR is ready to be merged, A review should be requested from the `FuelRats/web` team. -1. Once the PR is approved, it is the responsibility of the **assignee** to merge the changes to the branch. -1. After the build has been deployed, test the changes on the [staging preview website][testsite]. -1. Once the change is confirmed working, delete the working branch. If further changes need to be made, change them **on the same branch** and submit a new PR. + * When ready, A review should be requested from the `FuelRats/web` team. +1. After the PR has been merged and deployed, double check your work on the [staging preview website][testsite]. +### Submitting a PR +So you've got a working branch all ready to go? great! Before submitting, make sure you've followed this checklist. +- This PR was created to resolve an existing issue or set of issues. +- This PR satisfies any and all acceptance criteria laid out by issue(s) it resolves. +- I have discussed creating this PR with the maintainers in the issue(s) beforehand. +- I have thoroughly tested the changes this PR introduces in a local development enviornment. +- I have linted the entire codebase using `yarn lint` and confirmed there are no errors or warnings. +- I have followed the commit conventions laid out by the [Commit Conventions](#commit-conventions) section below. -### Branch naming conventions -Work branches on the **main repo** are expected to follow this branch format: +### Being added as a contributor -``` -type/WEB-###/objective -``` -* **type** - The type of work being done. See below for types. -* **WEB-###** - Used when the working branch was created to satisfy a ticket on [JIRA][jira]. This should only be included if there is an associated ticket. -* **objective** - a simple and breif descriptor of the work being done. words should be hyphen-delimited. e.g. `fix-paperwork`, `redesign-profiles`, `add-avatars` +When you create your first pull request we will add you as a contributor as per [All Contributors][all-contributors] convention. +If you have created an issue but not a PR, you will be added along with the PR that closes your issue. +If you do not wish to be added to the contributors list, Please specify in the pull request or GitHub issue. +The pull request template contains a section specifically for this. -### Commit conventions -We use an interpretation of the angular commit conventions in this project. Generally squeaking, all commits should follow this pattern: +## Commit conventions + +Commits should be as small as possible, with exceptions for large sweeping changes required by lint rule changes, package updates, etc. + +Please follow the gitmoji commit format when submitting code. + ``` -type(component): commit message +<😎...> [(scope):] + +[detailed message] ``` -* **type** - The type of work done in the commit. See below for types. -* **component** - Should follow these rules: - * If the file is a react component (in the Components directory), no suffix is needed. Just use the file name. - * If the file is a helper file (in the helpers directory), just simply using `helpers` as the component will suffice. - * If the file is documentation, no suffix is needed, however docs should **ALWAYS** have a commit type of `docs`. - * All other files should generally follow the format of `filename-<best-describing-parentdir>` IE: `rescue-actions`, `index-page`, or `badge-scss`. - * Remain as consistent in naming as possible. Use git history as precedence for the component name given to a file. -* **commit message** - should quickly summarize changes made. If there are multiple changes, multiline commit messages are allowed to fully summarize changes made. +* `<😎...>` - gitmoji(s) that best represent this change. [See below for more info](#gitmoji). + * You're not limited to a single emoji! Use as many as neccessary, but keep in mind that commits should remain simple enough to only require one. +* `[(scope):]` - Optional, but helpful. When used the scope should follow [these rules](#commit-scopes). + * Remain as consistent in naming as possible. Use git history as precedence for the scope given to a file. + * If the commit makes changes to two or more **completely unrelated** files, the component scope should not be included. +* `<title>` - A quick summary of changes made. If there are multiple changes, Use the detailed message section to fully explain the commit. + * Please use the present tense and imperative mood. (e.g. "rewrite `someFunction()` to improve performance") +* `[detailed message]` - An optional more in depth explaination of the commit. + +### gitmoji + +gitmoji is a standard list of emoji to represent the different types of changes we make to our project. [Check out the full list!](https://gitmoji.dev/). + +Using the website as a cheatsheet is fine, but if you're unfamiliar with gitmoji, try using [gitmoji-cli](https://github.com/carloscuesta/gitmoji-cli). This tool will help you construct commit messages in the format detailed above using `gitmoji -c`. + +Be sure to run `gitmoji -g` to configure the tool. We recommend the following options: + +* **Enable automatic "git add ."**: No +* **Select how emojis should be used in commits**: 😄 (direct emoji chars, not text.) +* **Enable signed commits**: (Dependant on if you use gpg) +* **Enable scope prompt**: Yes + +### Commit Scopes + +Scopes help give commit messages further context in a concise way, and are helpful when navigating commit history. + +If in doubt about scoping, try to dive into the commit history for the file in question. Ultimately ask if you're still confused. Use your best judgement, but prefer consistency over enforcing the rules set by this document. the point of these rules is to make searching through commits easier, and consistency helps the most. + +#### Files not requiring a scope suffix -If in doubt about component naming, try to dive into the commit history for the file in question. Ultimately ask if you're still confused. Use your best judgement, but prefer consistency over enforcing the rules set by this document. the point of these rules is to make searching through commits easier, and consistency helps the most. +* Any React `<Component />` (e.g. `✨ (MyComponent): ...`) +* Any React hook (e.g. `♻️ (useSelectorWithProps): ...`) +* Any documentation file, however use `.md` in the scope name. (e.g. `📝 (CONTRIBUTING.md): ...`) -Commits should be as samll as possible, with exceptions for large sweeping changes required by lint rule changes, package updates, etc. +#### Scope Suffixes -If the commit **must** make changes to two or more **completely unrelated** files, the component name and parentheses are not required. +Scopes with a type suffix will generally follow the name of the directory that contains them. The following list should be exhaustive, but if one may be missing, please ask the maintainers. +> `~` = `projectRoot/src` -### Commit types +* `-data` - Modules found in `~/data`. These files, intuitively, contain data objects. +* `-page` - Page components found in `~/pages`, with the exception of `~/pages/api`. +* `-route` - API page routes found in `~/pages/api`. +* `-service` - "Service" modules found in `~/services`. +* `-actions` - Redux store actions found in `~/store/actions`. +* `-selectors` - Redux store selectors found in `~/store/selectors`. +* `-reducer` - Redux store reducer functions found in `~/store/reducers`. +* `-util` - General purpose utility modules found in `~/util`. +* `-worker` - WebWorker modules found in `~/workers`. +* `-types` - `.d.ts` Typing files found in `/typings`. +* `-scss` - any `.scss` file anywhere in the project. + * Styles found in component directories **MAY** be committed under the related component scope, however. +* `-static-<fileType>` - static assets found in `/public`. file type may be generic descriptor or specific extension. (i.e. `favicon-static-image`, `sitemap-static-xml`) +* `-conf` - Any project config file. Either on the top level, or in `/.config`. (i.e. `eslint-conf`, `next-conf`, `postcss-conf`) + + + +## Primary Repo Development + +These rules pertain to development on the main `FuelRats/fuelrats.com` repository, and do not need to be followed by forks. + +### Development flow + +1. Branch from `develop` using the [branch conventions below](#branch-convensions). +1. Do the work required to satisfy the Ticket or objective. If work unrelated to the objective needs to be done, make a separate branch. +1. Document the changes introduced from the previous release in `CHANGELOG.md`. +1. Submit PR to merge back into `develop`. + * Any change which would affect current development should be documented in the description. + * Assign the PR to yourself. + * The PR should be labeled with the label most fitting to the type of work. If the PR is a bugfix which must be merged to fix a major problem, it should be labeled `Urgent`. + * When the PR is ready to be merged, A review should be requested from the `FuelRats/web` team. +1. Once the PR is approved, it is the responsibility of the **assignee** to merge the changes to the branch. +1. After the build has been deployed, double check your changes on the [staging preview website][testsite]. + +### Branch Conventions + +Work branches on the **main repo** are expected to follow this branch format: + +``` +type/objective +``` +* **type** - The type of work being done. See below for types. +* **objective** - a simple and breif descriptor of the work being done. words should be hyphen-delimited. e.g. `fix-paperwork`, `redesign-profiles`, `add-avatars` + +#### Branch types * `feat` - New feature. * `fix` - Bug fix. * `refactor` - A change in behavior of existing code. * `docs` - A change in project documentation. -* `style` - Fixes which **only** fix code style and not behavior. +* `style` - A change which **only** fixes code style and not behavior. * `chore` - Maintenance tasks such as updating dependencies. +* `experiment` - A new feature idea or major structural change which has a questionable outcome. + + -There is also 1 additional type allowed for branches **only** -* `experiment` - A new feature idea or major structural change which has a questionable outcome. [fuelrats-tos]: https://fuelrats.com/terms-of-service [all-contributors]: https://github.com/kentcdodds/all-contributors -[testsite]: https://dev.fuelrats.com/ -[bugs]: https://jira.fuelrats.com/servicedesk/customer/portal/2/create/4 +[testsite]: https://fuelrats.dev/ [egghead]: https://egghead.io/series/how-to-contribute-to-an-open-source-project-on-github -[jira]: https://jira.fuelrats.com/browse/WEB [new-pr]: https://github.com/FuelRats/fuelrats.com/compare [ops-email]: mailto:ops@fuelrats.com [nvm-install]: https://github.com/nvm-sh/nvm#installing-and-updating [node-install]: https://nodejs.org/en/ +[fr-issues]: https://github.com/FuelRats/fuelrats.com/issues +[fr-issues-new]: https://github.com/FuelRats/fuelrats.com/issues/new/choose diff --git a/docs/using_jsonApiRoute.md b/docs/using_jsonApiRoute.md new file mode 100644 index 000000000..8c0574592 --- /dev/null +++ b/docs/using_jsonApiRoute.md @@ -0,0 +1,404 @@ +# Using jsonApiRoute framework + +[`jsonApiRoute()`][json-api-route] is an abstraction layer for [Next.js API Routes][njs-api-route] that is both a middleware framework, and [JSON:API][] document builder. + +<!-- START doctoc generated TOC please keep comment here to allow auto update --> +<!-- DON'T EDIT THIS SECTION, INSTEAD RE-RUN doctoc TO UPDATE --> +## Table of Contents + +- [Basic Usage](#basic-usage) +- [Middleware](#middleware) +- [Error Handling](#error-handling) + - [APIError](#apierror) +- [Context](#context) + - [`context.req`](#contextreq) + - [`context.res`](#contextres) + - [`context.state`](#contextstate) + - [`context.data`](#contextdata) + - [`context.included`](#contextincluded) + - [`context.errors`](#contexterrors) + - [`context.meta`](#contextmeta) + - [`context.status(code)`](#contextstatuscode) + - [`context.send(data)`](#contextsenddata) + - [`context.include(data)`](#contextincludedata) + - [`context.fetch(options)`](#contextfetchoptions) + - [`context.error(error[, first])`](#contexterrorerror-first) + - [`context.createResource(data)`](#contextcreateresourcedata) +- [Request](#request) + - [`request.query`](#requestquery) + - [`request.cookies`](#requestcookies) + - [`request.body`](#requestbody) + - [`request.preview`](#requestpreview) + - [`request.previewData`](#requestpreviewdata) + - [`request.date`](#requestdate) + - [`request.ips`](#requestips) + - [`request.ip`](#requestip) + - [`request.fingerprint`](#requestfingerprint) + - [`request.getHeader(name)`](#requestgetheadername) +- [Response](#response) + - [`response.send(body)`](#responsesendbody) + - [`response.json(body)`](#responsejsonbody) + - [`response.status(code)`](#responsestatuscode) + - [`response.setPreviewData(data[, options])`](#responsesetpreviewdatadata-options) + - [`response.clearPreviewData()`](#responseclearpreviewdata) + - [`response.redirect([status,] path)`](#responseredirectstatus-path) + +<!-- END doctoc generated TOC please keep comment here to allow auto update --> + + + + + +## Basic Usage + +``` js +// /pages/api/hello-world.js +export default jsonApiRoute((ctx) => { + ctx.send({ + id: '123456', + type: 'hello-world' + attributes: { + hello: 'world!' + } + }) +}) +``` + +```JSON +// GET /api/hello-world +{ + "data": { + "id": "123456", + "type": "hello-world", + "attributes": { + "hello": "world!" + } + }, + "included": [], + "meta": {}, + "jsonapi": { + "version": '1.0', + }, +} +``` + + + + + +## Middleware + +Middleware follow Koa.js' model of async middleware. Since this framework is built on top of `koa-compose`, the same basic concepts of control flow apply. More information can be found [here][koa-cascading]. + +For a basic example, lets build a middleware which gets the user object for a given authorization key + +``` js +import getUser from 'magic-example-package' +import jsonApiRoute from '~/util/server/middleware/jsonApiRoute' +import { UnauthorizedAPIError } from '~/util/server/errors' + + +// It's recommended to use a generator function like this even if you don't require configuration. +// This way all middleware are consistent, and adding configuration in the future does not have to be a breaking change. +async function requireUser () { + return (ctx, next) => { + const user = await getUser(Request.getHeader('Authorization')) // Gets the user matching the given auth token. + + if (!user) { + // We throw here to immediately break the chain and have the route framework respond with the error. + // If we wanted to continue execution, we could send this error to ctx.error(error) instead of throwing. + throw new UnauthorizedAPIError() + } + + ctx.state.user = user // Add the user object to state. Note that this does NOT mean it will be sent with the response. + + await next() // wait for the other middleware deeper in the chain. + + if (ctx.state.includeUser) { + // If the endpoint requests it, include, the user object to the response. + ctx.include(user) + } + } +} + +export default jsonApiRoute( + requireUser(), + (ctx) => { + /* Do some work */ + ctx.state.includeUser = true + ctx.send(/* some data */) + } +) +``` + + + + + +## Error Handling + +There are two methods of responding with an error. +The primary method, `throw new Error()`, will immediately halt execution of the endpoint and will be caught by the top level middleware. +Calling `ctx.error(new Error())` is a secondary option which will **NOT** halt execution, but the error will be included when another error is thrown or the endpoint is resolved. + +Both methods treat errors in the same way. +**Any** error which does not extend `APIError` will be wrapped by `InternalServerAPIError`, with the original error assigned to the `internalError` property of the `meta` field. +Errors which _do_ extend `APIError` will be appended to the response as-is. + + +### APIError + +`APIError` is an extension of `Error` which is serialized to a [JSON:API][] compliant [error object](https://jsonapi.org/format/#error-objects). +There are a number of standard errors available in the main `errors.js` util module which **SHOULD** be used when possible. + + + + + +## Context + +The context object is a single object which contains: +* The request's `req` and `res` objects, +* The top level elements of a [JSON:API][] response document, +* and helper functions to simplify forming a response. + +### `context.req` + +A modified instance of [`http.IncomingMessage`][http-incoming-message]. This has been extended with various utilities by both Next.js and this framework. + +Read more about the Request object [below](#request) + + +### `context.res` + +A modified instance of [`http.ServerResponse`][http-server-response] provided by Next.js. + +Since the response of a request is handled by `jsonApiRoute()`, there is usually no need for endpoints to interface with `ctx.res` directly. +Nevertheless it is available here for reference. + +Read more about the Response object [below](#response) + + +### `context.state` + +* {object} + +A namespace provided for passing information though middleware and your routes. + + +### `context.data` + +* {Resource|Resource[]} read-only resource or collection of resources. + +The response document's `data` field. + +Use [`context.send(data)`](#contextsenddata) to modify this field + + +### `context.included` + +* {`Resource[]`} read-only collection of JSON:API compliant resource objects. + +The response document's `included` field. + +Use [`context.include(data)`](#contextincludedata) to append to includes. + + +### `context.errors` + +* {APIError[]} + +A read-only collection of errors attached to the response, but not not neccessarily thrown. + +Use [`context.error(error[], first])`](#contexterrorerror-first) to append to errors. + + +### `context.meta` + +* {object} + +The response document's `meta` field. This field is freely editable. + +### `context.status(code)` +* `code` {number} Numerical HTTP status code +* **Returns:** {Context} + +Alias for [`Response.status(code)`][#responsestatuscode]. Manually sets the response status code. +`status()` cannot override an error code. To force a specific error, use [`context.error(error, true)`](#contexterrorerror-first), or throw an instance of `APIError`. + + +### `context.send(data)` +* `data` {object} + * **MUST** be JSON:API compliant resource object. + * All unknown top-level properties will be made a property of `attributes`. + * An array of resources **MUST** share the same `type` value. +* **Returns:** {Context} + +Sets a resource or collection of resources to the response document's primary `data` field. + + +### `context.include(data)` +* `data` {object|object[]} + * **MUST** be JSON:API compliant resource object. + * All unknown top-level properties will be made a property of `attributes`. +* **Returns:** {Context} + +Appends a resource or collection of resources to the response document's `included` field. + + +### `context.fetch(options)` +* `options` {[AxiosRequestConfig](https://github.com/axios/axios#request-config)} + * Also accepts an object named `cache` with the following properties: + * `key`: A cache key to store a successful response under. + * `maxAge`: The maximum age to store the cached response. +* **Returns:** {[AxiosResponse](https://github.com/axios/axios#response-schema)} + +An axios request wrapper which simplifies data fetching in API routes. An optional `cache` config lets responses be cached for later-reuse, lowering 3rd party API load. If an error is encountered, it is automatically thrown with a valid `APIError` for the request. + +### `context.error(error[, first])` +* `error` {APIError|Error} Any instance of `Error`. + * Preferably an error extending `APIError` + * Errors not extending `APIError` will be wrapped by `InternalServerAPIError` with the message of the error included in it's `meta` property. +* `first` {boolean} Optional boolean to determine if the error should be forcefully added to the top of the error stack. +* **Returns:** {Context} + +Appends an error to the response document's `errors` field. Adding an error will also prevent `data` and `included` from being sent as per [JSON:API][] spec. +Useful for including additional errors before throwing the primary error preventing a successful response. Calling this method will **NOT** halt endpoint execution. + + +### `context.createResource(data)` +* `data` {object} **Any** object containing at least an `id` and `type` property. +* **Returns:** {Resource} + +Convenience function to transform an object into a valid [JSON:API][] Resource object. +This function is used by [`context.send(data)`](#contextsenddata) and [`context.include(data)`](#contextincludedata) to process data and ensure spec compliance. + +All unknown top-level properties of the provided object will be made a property of `attributes`. + +Known top-level properties include `id`, `type`, `attributes`, `relationships`, `links`, and `meta`. + + + + + +## Request + +The request object (`context.req`) is an extension of the [`http.IncomingMessage`][http-incoming-message] object. The following additional properties are available: + +### `request.query` +* {object} + +Object of parsed `query` values from URL. Values may be `string` or `string[]`. + +### `request.cookies` +* {object} + +Object of parsed cookies from headers. Values will be `string`. + +### `request.body` +* {any} + +Parsed body data of the request + +### `request.preview` +* {Boolean} + +Boolean representing if Next.js [preview mode](https://nextjs.org/docs/advanced-features/preview-mode) is enabled or not + +### `request.previewData` +* {Object} + +Preview mode data for the request. + +### `request.date` +* {number} + +Numeric timestamp representing the datetime the request was officially acknowleged at. + +### `request.ips` +* {string[]} + +Parsed list of `X-Forwarded-For` entries. Only populated if `process.env.APP_PROXIED` is `true` + +### `request.ip` +* {string} + +Public IP of the remote client making the request. + +### `request.fingerprint` +* {string} + +Fingerprint value sent with the request via the `X-Fingerprint` header. + +### `request.getHeader(name)` +* `name` {string} case-insensitive name of a request header. +* **Returns:** {string|undefined} + +Convenience function to retrieve a request header. + + + + + +## Response + +The response object (`context.res`) is an extension of the [`http.ServerResponse`][http-server-response] object. The following additional properties are available: + + +### `response.send(body)` +> DISCOURAGED. Use [`context.send(data)`](#contextsenddata) instead. + +* `body` {string|object|Buffer} + +Sends the HTTP response. Infers `Content-Type` from body. + + +### `response.json(body)` +> DISCOURAGED. Use [`context.send(data)`](#contextsenddata) instead. + +* `body` {object} Serializable JSON data + +Sends a JSON Response. Automatically sets `Content-Type` header to `application/json`. + + +### `response.status(code)` +> DISCOURAGED. Use [`context.status(code)`](#contextstatuscode) instead. + +* `code` {number} Numerical HTTP status code +**Returns:** {Response} + +Sets [`response.statusCode`](https://nodejs.org/dist/latest/docs/api/http.html#http_response_statuscode) to the provided status code. + + +### `response.setPreviewData(data[, options])` +* `data` {object|string} +* `options` {object} +* **Returns:** {Response} + +See [Next.js Docs][njs-preview-mode] + + +### `response.clearPreviewData()` +* **Returns:** {Response} + +See [Next.js Docs][njs-clear-preview-data] + + +### `response.redirect([status,] path)` +* `status` {number} a valid HTTP status code. (**Default:** `307`) +* `path` {string} Path or URL to redirect to. +* **Returns:** {Response} + +Redirects to a specified path or URL. + + + +[JSON:API]: https://jsonapi.org/format/ +[json-api-route]: ../src/util/server/middleware/jsonApiRoute.js +[njs-api-route]: https://nextjs.org/docs/api-routes/introduction +[njs-req-helpers]: https://nextjs.org/docs/api-routes/api-middlewares +[njs-preview-mode]: https://nextjs.org/docs/advanced-features/preview-mode +[njs-clear-preview-data]: https://nextjs.org/docs/advanced-features/preview-mode#clear-the-preview-mode-cookies +[koa-cascading]: https://koajs.com/#cascading +[http-incoming-message]: https://nodejs.org/api/http.html#http_class_http_incomingmessage +[http-server-response]: https://nodejs.org/api/http.html#http_class_http_serverresponse diff --git a/jsconfig.json b/jsconfig.json index ef3317cbc..58d5fb625 100644 --- a/jsconfig.json +++ b/jsconfig.json @@ -1,15 +1,23 @@ { "compilerOptions": { - "baseUrl": ".", - "paths": { - "~/*": ["src/*"] - }, - "experimentalDecorators": true, + // based on with-typescript example https://github.com/vercel/next.js/blob/canary/examples/with-typescript/tsconfig.json + "target": "es6", + "lib": ["dom", "dom.iterable", "esnext"], + "skipLibCheck": true, + "strict": true, + "forceConsistentCasingInFileNames": true, + "noEmit": true, + "esModuleInterop": true, "module": "esnext", - "target": "esnext", "moduleResolution": "node", "resolveJsonModule": true, - "jsx": "react" + "isolatedModules": true, + "jsx": "preserve", + "experimentalDecorators": true, + "baseUrl": ".", + "paths": { + "~/*": ["src/*"] + } }, "include": [ "src/**/*", diff --git a/next.config.js b/next.config.js index 1e0de7ee1..b773f14a2 100644 --- a/next.config.js +++ b/next.config.js @@ -1,103 +1,52 @@ -/* eslint-disable import/no-extraneous-dependencies -- required dev dependencies are only loaded in development context */ -/* eslint-disable no-param-reassign -- reassign is intended for changing configs */ - /* eslint-env node */ const crypto = require('crypto') -const path = require('path') -const { DefinePlugin } = require('webpack') +const ciEnv = require('./.config/ciEnv') +const env = require('./.config/env') +const headersConfig = require('./.config/headers.config') +const publicRuntimeConfig = require('./.config/publicRuntime.config') +const redirectsConfig = require('./.config/redirects.config') +const rewritesConfig = require('./.config/rewrites.config') +const webpackConfig = require('./.config/webpack.config') +// Constants +const DEV_BUILD_ID_LENGTH = 16 -// Constants -const { - APP_URL, - FR_API_URL, - FR_CLIENT_IRC_URL, - FR_RAT_IRC_URL, - FR_SOCKET_URL, - FR_STRIPE_API_PK, - GITHUB_REF, - GITHUB_RUN_ID, - GITHUB_SERVER_URL = 'https://github.com', - GITHUB_SHA, - CI, -} = process.env -const COMMIT_HASH_LENGTH = 10 -const DEV_BUILD_ID_LENGTH = 16 -const GIT_BRANCH = (GITHUB_REF || 'develop').replace(/^refs\/heads\//u, '').replace(/\//gu, '-') -const generateBuildId = () => { - const buildId = CI - ? GITHUB_SHA.toLowerCase() - : crypto.randomBytes(DEV_BUILD_ID_LENGTH).toString('hex').toLowerCase() - return `${GIT_BRANCH}_${buildId}` -} +module.exports = () => { + return { + distDir: 'dist', -module.exports = { - distDir: path.join('dist', 'next'), - generateBuildId, - images: { - domains: ['static-cdn.jtvnw.net'], - }, - publicRuntimeConfig: { - local: { - publicUrl: APP_URL, - }, - irc: { - client: FR_CLIENT_IRC_URL ?? 'https://qms.fuelrats.dev', - rat: FR_RAT_IRC_URL ?? 'https://kiwi.fuelrats.com', + images: { + disableStaticImages: true, + domains: [ + 'wordpress.fuelrats.com', + 'static-cdn.jtvnw.net', + ], }, - apis: { - fuelRats: { - local: `${APP_URL}/api/fr`, - server: FR_API_URL ?? 'https://dev.api.fuelrats.com', - socket: FR_SOCKET_URL ?? 'wss://dev.api.fuelrats.com', - }, - wordpress: { - url: `${APP_URL}/api/wp`, - }, - stripe: { - url: `${APP_URL}/api/stripe`, - public: FR_STRIPE_API_PK, - }, + + eslint: { + // Ignore ESLint in builds as our CI Takes care of this for us. + ignoreDuringBuilds: true, }, - }, - future: { - webpack5: true, - }, - webpack: (config, opt) => { - /* Define Plugin */ - config.plugins.push(new DefinePlugin({ - $IS_DEVELOPMENT: JSON.stringify(opt.dev), - $IS_STAGING: JSON.stringify(['develop', 'beta'].includes(GIT_BRANCH)), - $BUILD_BRANCH: JSON.stringify(GIT_BRANCH), - $BUILD_COMMIT: JSON.stringify(GITHUB_SHA || null), - $BUILD_COMMIT_SHORT: JSON.stringify((GITHUB_SHA && GITHUB_SHA.slice(0, COMMIT_HASH_LENGTH)) || GIT_BRANCH), - $BUILD_DATE: JSON.stringify((new Date()).toISOString()), - $BUILD_URL: JSON.stringify(`${GITHUB_SERVER_URL}/fuelrats/fuelrats.com/actions/runs/${GITHUB_RUN_ID}` || null), - $NEXT_BUILD_ID: JSON.stringify(opt.buildId), - $NODE_VERSION: JSON.stringify(process.version), - })) - // Workaround to fix dev warning: https://github.com/vercel/next.js/issues/19865 - config.output.hotUpdateMainFilename = 'static/webpack/[fullhash].[runtime].hot-update.json' + headers: headersConfig(env), + publicRuntimeConfig: publicRuntimeConfig(env), + redirects: redirectsConfig(env), + rewrites: rewritesConfig(env), + webpack: webpackConfig(env), - // Workaround to fix production builds with workers: https://github.com/vercel/next.js/issues/22813 - config.output.chunkFilename = opt.isServer - ? `${opt.dev ? '[name]' : '[name].[fullhash]'}.js` - : `static/chunks/${opt.dev ? '[name]' : '[name].[fullhash]'}.js` + generateBuildId: () => { + const buildId = ciEnv.isCi + ? ciEnv.commit + : crypto.randomBytes(DEV_BUILD_ID_LENGTH).toString('hex').toLowerCase() - /* SVGR */ - config.module.rules.push({ - exclude: /node_modules/u, - test: /\.svg$/u, - loader: require.resolve('@svgr/webpack'), - }) + return `${ciEnv.branch}_${buildId}` + }, - return config - }, + } } diff --git a/package.json b/package.json index d00312ef1..bd753290e 100644 --- a/package.json +++ b/package.json @@ -1,140 +1,128 @@ { "name": "fuelrats.com", - "version": "2.13.1", + "version": "2.14.0", "description": "The primary website of The Fuel Rats!", - "main": "dist/server.js", + "homepage": "https://fuelrats.com/", + "bugs": { + "email": "support@fuelrats.com" + }, "license": "BSD-3-Clause", - "engines": { - "node": "^14.0.0" + "main": "dist/server.js", + "repository": { + "type": "git", + "url": "https://github.com/fuelrats/fuelrats.com" }, - "engineStrict": true, "scripts": { "add-contributor": "all-contributors add", - "build:next": "next build", - "build:server": "rollup --config", - "build": "yarn build:server && yarn build:next", - "start": "yarn node --inspect --harmony --trace-warnings dist/server.js", - "dev": "yarn build:server && yarn start", + "build": "next build", + "start": "NODE_OPTIONS='-r dotenv/config' next start", + "dev:start": "DOTENV_CONFIG_PATH=.env.local node --inspect=15268 --trace-warnings -r dotenv/config ./node_modules/.bin/next dev", + "dev": "yarn install && yarn dev:start", "utoc": "doctoc $(grep --include=\\*.md --exclude-dir=node_modules -Rwl . -e 'START doctoc')", - "eslint": "eslint .", - "stylelint": "stylelint \"src/**/*.scss\"" - }, - "devDependencies": { - "@babel/core": "^7.14.3", - "@babel/eslint-parser": "^7.14.3", - "@babel/eslint-plugin": "^7.13.16", - "@babel/plugin-proposal-class-properties": "^7.13.0", - "@babel/plugin-proposal-decorators": "^7.14.2", - "@babel/plugin-proposal-export-default-from": "^7.12.13", - "@babel/plugin-proposal-export-namespace-from": "^7.14.2", - "@babel/plugin-proposal-function-bind": "^7.12.13", - "@babel/plugin-proposal-function-sent": "^7.12.13", - "@babel/plugin-proposal-logical-assignment-operators": "^7.14.2", - "@babel/plugin-proposal-numeric-separator": "^7.14.2", - "@babel/plugin-proposal-optional-catch-binding": "^7.14.2", - "@babel/plugin-proposal-throw-expressions": "^7.12.13", - "@babel/plugin-transform-strict-mode": "^7.12.13", - "@babel/preset-env": "^7.14.2", - "@babel/runtime": "^7.14.0", - "@fuelrats/babel-plugin-classnames": "^0.3.0", - "@fuelrats/eslint-config": "^2.3.0", - "@fuelrats/eslint-config-react": "^2.3.0", - "@fuelrats/eslint-plugin": "^2.3.0", - "@fuelrats/stylelint-config": "^1.2.3", - "@rollup/plugin-babel": "^5.3.0", - "@rollup/plugin-commonjs": "^19.0.0", - "@rollup/plugin-node-resolve": "^13.0.0", - "@svgr/webpack": "^5.5.0", - "@types/hoist-non-react-statics": "^3.3.1", - "@types/ip6addr": "^0.2.2", - "@types/js-cookie": "^2.2.6", - "@types/jsonfile": "^6.0.0", - "@types/koa": "^2.13.1", - "@types/koa-compress": "^4.0.1", - "@types/koa-logger": "^3.1.1", - "@types/koa__router": "^8.0.4", - "@types/lodash": "^4.14.169", - "@types/react": "^17.0.5", - "@types/react-dom": "^17.0.5", - "@types/react-redux": "^7.1.16", - "@types/ua-parser-js": "^0.7.36", - "@types/webpack": "^5.28.0", - "@types/zxcvbn": "^4.4.1", - "babel-loader": "8.2.2", - "builtin-modules": "^3.2.0", - "doctoc": "^2.0.0", - "eslint": "^7.26.0", - "eslint-import-resolver-alias": "^1.1.2", - "eslint-import-resolver-node": "^0.3.4", - "eslint-plugin-import": "^2.23.2", - "eslint-plugin-jsdoc": "30.5.2", - "eslint-plugin-jsx-a11y": "^6.4.1", - "eslint-plugin-react": "^7.23.2", - "eslint-plugin-react-hooks": "^4.2.0", - "rollup": "^2.48.0", - "rollup-plugin-cleaner": "^1.0.0", - "rollup-plugin-node-externals": "^2.2.0", - "sass": "^1.32.13", - "stylelint": "^13.13.1", - "stylelint-order": "^4.1.0", - "stylelint-scss": "^3.19.0", - "webpack": "^5.37.0", - "worker-loader": "^3.0.8" + "lint:js": "eslint .", + "lint:css": "stylelint \"src/**/*.scss\"", + "lint": "yarn lint:js; yarn lint:css" }, "dependencies": { - "@fingerprintjs/fingerprintjs": "^3.1.2", - "@fortawesome/fontawesome-svg-core": "^1.2.35", - "@fortawesome/free-brands-svg-icons": "^5.15.3", - "@fortawesome/free-solid-svg-icons": "^5.15.3", - "@fortawesome/react-fontawesome": "^0.1.14", - "@fuelrats/koa-adorable-avatars": "^0.1.2", + "@fingerprintjs/fingerprintjs": "^3.3.0", + "@fortawesome/fontawesome-svg-core": "^1.2.36", + "@fortawesome/free-brands-svg-icons": "^5.15.4", + "@fortawesome/free-solid-svg-icons": "^5.15.4", + "@fortawesome/react-fontawesome": "^0.1.15", + "@fuelrats/next-adorable-avatars": "^0.3.0", "@fuelrats/validation-util": "^1.2.0", - "@fuelrats/web-util": "^0.3.2", - "@koa/router": "^10.0.0", - "axios": "^0.21.1", + "@fuelrats/web-util": "^0.3.3", + "@next/eslint-plugin-next": "^11.1.2", + "axios": "^0.23.0", "clsx": "^1.1.1", - "content-security-policy-builder": "^2.1.0", - "date-fns": "^2.21.3", - "date-fns-tz": "^1.1.4", - "dotenv": "^9.0.2", - "flux-standard-action": "^2.1.1", + "date-fns": "^2.25.0", + "date-fns-tz": "^1.1.6", + "dotenv": "^10.0.0", + "flux-standard-action": "^2.1.2", "framer-motion": "^4.1.17", "hoist-non-react-statics": "^3.3.2", - "immer": "^9.0.2", + "http-proxy-middleware": "^2.0.1", + "immer": "^9.0.6", "ip6addr": "^0.2.3", - "js-cookie": "^2.2.1", + "js-cookie": "^3.0.1", "jsonfile": "^6.1.0", - "koa": "^2.13.1", - "koa-body": "^4.2.0", - "koa-compress": "^5.0.1", - "koa-logger": "^3.2.1", - "koa-proxies": "0.12.1", + "koa-compose": "^4.1.0", "lodash": "^4.17.21", - "next": "^10.2.0", + "next": "^11.1.2", "next-cookies": "^2.0.3", "next-redux-wrapper": "5.0.0", + "next-safe": "^3.1.0", "nprogress": "^0.2.0", - "postcss": "^8.2.15", + "postcss": "^8.3.9", "postcss-easy-import": "^3.0.0", "postcss-flexbugs-fixes": "^5.0.2", "postcss-preset-env": "^6.7.0", "prop-types": "^15.7.2", "pure-uuid": "^1.6.2", "qs": "^6.10.1", + "rc-slider": "^9.7.4", "re-reselect": "^4.0.0", "react": "^17.0.2", - "react-copy-to-clipboard": "^5.0.3", + "react-copy-to-clipboard": "^5.0.4", "react-dom": "^17.0.2", - "react-redux": "^7.2.4", + "react-easy-crop": "^3.5.3", + "react-is": "^17.0.2", + "react-redux": "^7.2.5", "react-table-6": "^6.11.0", - "redux": "^4.1.0", + "redux": "^4.1.1", "redux-devtools-extension": "^2.13.9", "redux-immutable-state-invariant": "^2.1.0", "redux-thunk": "^2.3.0", "reselect": "^4.0.0", - "stripe": "^8.148.0", + "stripe": "^8.183.0", "ua-parser-js": "^0.7.28", - "use-immer": "^0.5.2", + "use-immer": "^0.6.0", "zxcvbn": "^4.4.2" + }, + "devDependencies": { + "@babel/core": "^7.15.8", + "@babel/eslint-parser": "^7.15.8", + "@babel/eslint-plugin": "^7.14.5", + "@babel/plugin-proposal-decorators": "^7.15.8", + "@fuelrats/babel-plugin-classnames": "^0.3.0", + "@fuelrats/eslint-config": "^2.4.0-canary.19", + "@fuelrats/eslint-config-react": "^2.4.0-canary.19", + "@fuelrats/eslint-plugin": "^2.4.0-canary.11", + "@fuelrats/stylelint-config": "^1.2.3", + "@svgr/webpack": "^5.5.0", + "@types/hoist-non-react-statics": "^3.3.1", + "@types/ip6addr": "^0.2.3", + "@types/js-cookie": "^3.0.0", + "@types/jsonfile": "^6.0.1", + "@types/lodash": "^4.14.175", + "@types/qs": "^6.9.7", + "@types/react": "^17.0.30", + "@types/react-dom": "^17.0.9", + "@types/react-is": "^17.0.2", + "@types/react-redux": "^7.1.19", + "@types/ua-parser-js": "^0.7.36", + "@types/webpack": "^5.28.0", + "@types/zxcvbn": "^4.4.1", + "babel-loader": "8.2.2", + "builtin-modules": "^3.2.0", + "doctoc": "^2.1.0", + "eslint": "^7.32.0", + "eslint-import-resolver-alias": "^1.1.2", + "eslint-import-resolver-node": "^0.3.6", + "eslint-plugin-import": "^2.25.2", + "eslint-plugin-jsdoc": "^36.1.1", + "eslint-plugin-jsx-a11y": "^6.4.1", + "eslint-plugin-react": "^7.26.1", + "eslint-plugin-react-hooks": "^4.2.0", + "sass": "^1.43.2", + "semver": "^7.3.5", + "stylelint": "^13.13.1", + "stylelint-order": "^4.1.0", + "stylelint-scss": "^3.21.0", + "webpack": "^5.58.2", + "worker-loader": "^3.0.8" + }, + "engines": { + "node": "^16.0.0" } } diff --git a/rollup.config.js b/rollup.config.js deleted file mode 100644 index a0fbd5193..000000000 --- a/rollup.config.js +++ /dev/null @@ -1,77 +0,0 @@ -/* eslint-env node */ -import babel from '@rollup/plugin-babel' -import commonjs from '@rollup/plugin-commonjs' -import node from '@rollup/plugin-node-resolve' -import path from 'path' -import externals from 'rollup-plugin-node-externals' - - - - - -const isDev = process.env.NODE_ENV !== 'production' - - - - - -const babelConfig = { - babelrc: false, - babelHelpers: 'bundled', - presets: [ - [ - '@babel/env', - { - targets: { - node: '13', - }, - bugfixes: true, - shippedProposals: true, - loose: true, - }, - ], - ], - env: { - development: { - sourceMaps: true, - }, - production: { - sourceMaps: false, - }, - }, - plugins: [ - ['@babel/proposal-decorators', { legacy: true }], - ['@babel/proposal-class-properties', { loose: true }], - '@babel/proposal-export-default-from', - '@babel/proposal-export-namespace-from', - '@babel/proposal-function-bind', - '@babel/proposal-function-sent', - '@babel/proposal-logical-assignment-operators', - '@babel/proposal-numeric-separator', - '@babel/proposal-optional-catch-binding', - '@babel/proposal-throw-expressions', - '@babel/transform-strict-mode', - ], -} - - - - -const config = { - input: path.resolve(__dirname, 'src', 'server', 'server.mjs'), - output: { - file: path.resolve(__dirname, 'dist', 'server.js'), - format: 'cjs', - sourcemap: isDev, - }, - plugins: [ - externals({ - deps: true, - }), - node(), - commonjs(), - babel(babelConfig), - ], -} - -export default config diff --git a/scripts/deploy.sh b/scripts/deploy.sh index 04e5ba64f..2608d2a01 100644 --- a/scripts/deploy.sh +++ b/scripts/deploy.sh @@ -8,7 +8,7 @@ SERVICE_NAME="" # Find deploy target and service name case $GITHUB_REF in "refs/heads/develop") - DEPLOY_DIR="dev.fuelrats.com" + DEPLOY_DIR="fuelrats.dev" SERVICE_NAME="fr-web_dev" ;; diff --git a/src/components/AddNicknameForm/AddNicknameForm.js b/src/components/AddNicknameForm/AddNicknameForm.js deleted file mode 100644 index 99a357252..000000000 --- a/src/components/AddNicknameForm/AddNicknameForm.js +++ /dev/null @@ -1,156 +0,0 @@ -import { FontAwesomeIcon } from '@fortawesome/react-fontawesome' -import { HttpStatus } from '@fuelrats/web-util/http' -import { isError } from 'flux-standard-action' -import React from 'react' - -import { ircNickPattern } from '~/data/RegExpr' -import { connect } from '~/store' -import { selectUserById, withCurrentUserId } from '~/store/selectors' - -import InfoBubble from '../infoBubble' -import ValidatedFormInput from '../ValidatedFormInput' -import styles from './AddNicknameForm.module.scss' - - - - - -@connect -class AddNicknameForm extends React.Component { - /***************************************************************************\ - Class Properties - \***************************************************************************/ - - state = { - error: null, - nickname: '', - submitting: false, - } - - - - - - /***************************************************************************\ - Private Methods - \***************************************************************************/ - - _handleSubmit = async (event) => { - const { - addNickname, - user, - } = this.props - const { - nickname, - } = this.state - event.preventDefault() - - this.setState({ submitting: true }) - - const response = await addNickname(user, { attributes: { nick: nickname } }) - - if (isError(response)) { - const { meta, payload } = response - let errorMessage = 'Unknown error occured.' - - if (HttpStatus.isClientError(meta.response.status)) { - errorMessage = payload.errors && payload.errors.length ? payload.errors[0].title : 'Client communication error' - } - - if (HttpStatus.isServerError(meta.response.status)) { - errorMessage = 'Server communication error' - } - - if (meta.response.status === HttpStatus.CONFLICT) { - errorMessage = 'Nickname already registered' - } - - if (meta.response.status === HttpStatus.UNPROCESSABLE_ENTITY) { - errorMessage = 'Nickname invalid' - } - - this.setState({ - error: errorMessage, - }) - } - - this.setState({ - nickname: '', - submitting: false, - }) - } - - _handleChange = (event) => { - this.setState({ [event.target.name]: event.target.value }) - } - - - - - - /***************************************************************************\ - Public Methods - \***************************************************************************/ - - render () { - const { - error, - nickname, - submitting, - } = this.state - - return ( - <form - className={styles.addNicknameForm} - onSubmit={this._handleSubmit}> - <ValidatedFormInput - className={[styles.thinInput, error && styles.error]} - disabled={this.props.disabled} - id="AddNickname" - label="Nickname" - name="nickname" - pattern={ircNickPattern} - patternMessage="Nickname must start with a letter, contain no spaces, and be between 2-30 characters" - placeholder={error || 'Add a nickname...'} - title={this.props.title} - type="text" - value={nickname} - onChange={this._handleChange}> - <InfoBubble className={styles.nicknamesInfo} header="reminder" id="NickRegisterReminder"> - {"You cannot register a nick that's in use on IRC. Switch to a temporary one before registering!"} - </InfoBubble> - </ValidatedFormInput> - - <button - aria-label="submit new nickname" - className="green compact" - disabled={!nickname || submitting} - type="submit"> - <FontAwesomeIcon fixedWidth icon="check" /> - </button> - </form> - ) - } - - - - - - /***************************************************************************\ - Redux Properties - \***************************************************************************/ - - static mapDispatchToProps = ['addNickname'] - - static mapStateToProps = (state) => { - return { - user: withCurrentUserId(selectUserById)(state), - } - } -} - - - - - -export default AddNicknameForm diff --git a/src/components/AddRatForm.js b/src/components/AddRatForm.js deleted file mode 100644 index 6d7c6e437..000000000 --- a/src/components/AddRatForm.js +++ /dev/null @@ -1,229 +0,0 @@ -import { FontAwesomeIcon } from '@fortawesome/react-fontawesome' -import { produce } from 'immer' -import React from 'react' - -import { connect } from '~/store' -import { selectCurrentUserId } from '~/store/selectors' - -import ValidatedFormInput from './ValidatedFormInput' -import ValidatedFormSelect from './ValidatedFormSelect' - - - - - -// Component Constants -const INVALID_NAME_MESSAGE = 'CMDR Name is Required' -const INVALID_PLATFORM_MESSAGE = 'Platform is Required' -const initialState = { - formOpen: false, - name: '', - platform: '', - validity: { - name: INVALID_NAME_MESSAGE, - platform: INVALID_PLATFORM_MESSAGE, - }, - submitting: false, -} - -const platformSelectOptions = { - pc: 'PC', - xb: 'XB1', - ps: 'PS4', -} - - - - - -@connect -class AddRatForm extends React.Component { - /***************************************************************************\ - Class Properties - \***************************************************************************/ - - state = { - ...initialState, - } - - - - - - /***************************************************************************\ - Private Methods - \***************************************************************************/ - - _handleSubmit = async (event) => { - const { - createRat, - userId, - } = this.props - const { - name, - platform, - } = this.state - - event.preventDefault() - - this.setState({ submitting: true }) - - await createRat({ - attributes: { - name: name.trim(), - platform, - }, - relationships: { - user: { - data: { - type: 'users', - id: userId, - }, - }, - }, - }) - - this.setState({ ...initialState }) - } - - _handleToggle = () => { - this.setState((state) => { - return { - ...initialState, - formOpen: !state.formOpen, - } - }) - } - - _handleFieldChange = ({ target, valid, message }) => { - this.setState(produce((draftState) => { - const { name, value } = target - - draftState[name] = value - - if (typeof draftState.validity[name] !== 'undefined') { - draftState.validity[name] = valid || message - } - })) - } - - - - - - /***************************************************************************\ - Public Methods - \***************************************************************************/ - - render () { - const { - name, - platform, - submitting, - formOpen, - } = this.state - - return ( - <form className={['add-rat compact', { 'form-open': formOpen }]}> - { - formOpen && ( - <div className="form-row submit-row flex align-center"> - <ValidatedFormInput - required - aria-label="Commander Name" - className="cmdr-input" - disabled={submitting} - id="newRatName" - invalidMessage={INVALID_NAME_MESSAGE} - label="CMDR Name" - maxLength={22} - minLength={1} - name="name" - placeholder="CMDR Name" - value={name} - onChange={this._handleFieldChange} /> - - <ValidatedFormSelect - required - className="platform-input" - disabled={submitting} - id="newRatPlatform" - invalidMessage={INVALID_PLATFORM_MESSAGE} - label="Platform" - name="platform" - options={platformSelectOptions} - value={platform} - onChange={this._handleFieldChange} /> - </div> - ) - } - <div className="form-control"> - { - formOpen && ( - <button - aria-label="submit new commander" - className="green compact square" - disabled={!this.canSubmit} - type="button" - onClick={this._handleSubmit}> - <FontAwesomeIcon fixedWidth icon="check" /> - </button> - ) - } - <button - aria-label={formOpen ? 'cancel new commander creation' : 'add commander'} - className={['compact square', { green: !formOpen }]} - title={formOpen ? 'Cancel' : 'Add new commander'} - type="button" - onClick={this._handleToggle}> - <FontAwesomeIcon fixedWidth icon={formOpen ? 'times' : 'plus'} /> - </button> - </div> - </form> - ) - } - - - - - - /***************************************************************************\ - Getters - \***************************************************************************/ - - get canSubmit () { - const { - name, - platform, - validity, - } = this.state - - const isValid = Object.values(validity).filter((validityMember) => { - return validityMember - }).length - - return name && platform && isValid - } - - - - - - /***************************************************************************\ - Redux Properties - \***************************************************************************/ - - static mapDispatchToProps = ['createRat'] - - static mapStateToProps = (state, ownProps) => { - return { - userId: ownProps.userId || selectCurrentUserId(state), - } - } -} - - - - - -export default AddRatForm diff --git a/src/components/Alert.js b/src/components/Alert.js deleted file mode 100644 index fbc9f3c84..000000000 --- a/src/components/Alert.js +++ /dev/null @@ -1,44 +0,0 @@ -import React from 'react' -import ReactDOM from 'react-dom' - - - - - -// Component constants -const canUseDOM = Boolean(typeof window !== 'undefined' && window.document && window.document.createElement) - - - - - -class Alert extends React.Component { - constructor (props) { - super(props) - - this.canUseDOM = canUseDOM - - if (this.canUseDOM) { - this.el = document.querySelector('#alert-container') - } - } - - render () { - const { - children, - open, - } = this.props - - if (this.canUseDOM && open) { - return ReactDOM.createPortal(children, this.el) - } - - return null - } -} - - - - - -export default Alert diff --git a/src/components/AppLayout/AuthenticatedPage.js b/src/components/AppLayout/authenticated.js similarity index 70% rename from src/components/AppLayout/AuthenticatedPage.js rename to src/components/AppLayout/authenticated.js index ce9a09d6e..d9ce9bb05 100644 --- a/src/components/AppLayout/AuthenticatedPage.js +++ b/src/components/AppLayout/authenticated.js @@ -1,17 +1,15 @@ import { HttpStatus } from '@fuelrats/web-util/http' import hoistNonReactStatics from 'hoist-non-react-statics' +import { selectSession, selectCurrentUserHasScope } from '~/store/selectors' +import pageRedirect from '~/util/getInitialProps/pageRedirect' +import setError from '~/util/getInitialProps/setError' -import { pageRedirect, setError } from '~/helpers/gIPTools' -import userHasPermission from '~/helpers/userHasPermission' -import { selectSession, selectCurrentUserScopes } from '~/store/selectors' - - -const wrapPage = (PageComponent, scopes, message) => { +const wrapPage = (scope, message, PageComponent) => { function AuthenticatedPage (props) { return (<PageComponent {...props} />) } @@ -32,8 +30,8 @@ const wrapPage = (PageComponent, scopes, message) => { // Now that we know the user is logged in, lets check if they require any permission scopes to view the page. // If they do, check scopes against their groups. - if (scopes) { - if (!userHasPermission(selectCurrentUserScopes(state), scopes)) { + if (scope) { + if (!selectCurrentUserHasScope(state, { scope })) { setError(ctx, HttpStatus.UNAUTHORIZED, message) } } @@ -47,16 +45,12 @@ const wrapPage = (PageComponent, scopes, message) => { const authenticated = (scope, message) => { - // Check if `opt` is a permission scope or lsit of scopes. - // If it is then we need to return a function to get the component before passing to wrapPage if (typeof scope === 'string' || Array.isArray(scope)) { - return (PageComponent) => { - return wrapPage(PageComponent, scope, message) - } + return wrapPage.bind(null, scope, message) } // opt is not a scope so we know it's the page component we're wrapping. - return wrapPage(scope) + return wrapPage(undefined, undefined, scope) } diff --git a/src/components/AppLayout/index.js b/src/components/AppLayout/index.js index 4755dc23d..c14052209 100644 --- a/src/components/AppLayout/index.js +++ b/src/components/AppLayout/index.js @@ -1,2 +1,2 @@ export { default as withStripe } from './withStripe' -export { default as authenticated } from './AuthenticatedPage' +export { default as authenticated } from './authenticated' diff --git a/src/components/AppLayout/withStripe.js b/src/components/AppLayout/withStripe.js index fa9057022..02e09b28a 100644 --- a/src/components/AppLayout/withStripe.js +++ b/src/components/AppLayout/withStripe.js @@ -8,7 +8,7 @@ import React from 'react' // Component Constants const { publicRuntimeConfig } = getConfig() -const STRIPE_API_PK = publicRuntimeConfig.apis.stripe.public +const STRIPE_API_PK = publicRuntimeConfig.stripe.public diff --git a/src/components/Blog/ArticleCard.js b/src/components/Blog/ArticleCard.js index 9dec0c5ed..daa38b7ac 100644 --- a/src/components/Blog/ArticleCard.js +++ b/src/components/Blog/ArticleCard.js @@ -1,10 +1,10 @@ import { FontAwesomeIcon } from '@fortawesome/react-fontawesome' import Link from 'next/link' -import { formatAsEliteDateTime } from '~/helpers/formatTime' -import { makeBlogRoute } from '~/helpers/routeGen' -import { connect } from '~/store' +import useSelectorWithProps from '~/hooks/useSelectorWithProps' import { selectAuthorByBlogId, selectBlogById, selectCategoriesByBlogId } from '~/store/selectors' +import formatAsEliteDateTime from '~/util/date/formatAsEliteDateTime' +import makeBlogRoute from '~/util/router/makeBlogRoute' import TextPlaceholder from '../TextPlaceholder' @@ -13,13 +13,11 @@ import TextPlaceholder from '../TextPlaceholder' function ArticleCard (props) { - const { - author, - blog, - categories, - className, - renderMode = 'excerpt', - } = props + const { className, renderMode = 'excerpt' } = props + + const author = useSelectorWithProps(props, selectAuthorByBlogId) + const blog = useSelectorWithProps(props, selectBlogById) + const categories = useSelectorWithProps(props, selectCategoriesByBlogId) if (!blog) { if (renderMode === 'article') { @@ -110,16 +108,4 @@ function ArticleCard (props) { -ArticleCard.mapStateToProps = (state, ownProps) => { - return { - author: selectAuthorByBlogId(state, ownProps), - blog: selectBlogById(state, ownProps), - categories: selectCategoriesByBlogId(state, ownProps), - } -} - - - - - -export default connect(ArticleCard) +export default ArticleCard diff --git a/src/components/Blog/BlogMenu.js b/src/components/Blog/BlogMenu.js new file mode 100644 index 000000000..796c4b70b --- /dev/null +++ b/src/components/Blog/BlogMenu.js @@ -0,0 +1,49 @@ +import Link from 'next/link' +import PropTypes from 'prop-types' + +import makeBlogRoute from '~/util/router/makeBlogRoute' + +function BlogMenu (props) { + const { + author, + category, + page, + totalPages, + } = props + + return ( + <menu + type="toolbar"> + <div className="secondary"> + { + (page > 1) && ( + <Link href={makeBlogRoute({ author, category, page: Math.max(1, page - 1) })}> + <a className="button">{'Previous Page'}</a> + </Link> + ) + } + </div> + + <div className="primary"> + { + (page < totalPages) && ( + <Link href={makeBlogRoute({ author, category, page: Math.min(page + 1, totalPages) })}> + <a className="button">{'Next Page'}</a> + </Link> + ) + } + </div> + </menu> + ) +} +BlogMenu.propTypes = { + author: PropTypes.string, + category: PropTypes.string, + page: PropTypes.number, + totalPages: PropTypes.number, +} + + + + +export default BlogMenu diff --git a/src/components/Carousel.js b/src/components/Carousel.js index 3f64396dd..8d057d362 100644 --- a/src/components/Carousel.js +++ b/src/components/Carousel.js @@ -1,10 +1,13 @@ import { AnimatePresence, m } from 'framer-motion' import getConfig from 'next/config' import PropTypes from 'prop-types' -import React from 'react' -import { createSelector, createStructuredSelector } from 'reselect' +import { useCallback, useEffect, useRef, useState } from 'react' +import { useDispatch } from 'react-redux' +import { createSelector } from 'reselect' -import { connect } from '~/store' + +import useSelectorWithProps from '~/hooks/useSelectorWithProps' +import { getImage } from '~/store/actions/images' import { selectImages } from '~/store/selectors' @@ -13,29 +16,36 @@ import { selectImages } from '~/store/selectors' // Component constants const { publicRuntimeConfig } = getConfig() -const { publicUrl } = publicRuntimeConfig.local +const { appUrl } = publicRuntimeConfig const getSlides = (_, props) => { return props.slides } + const getId = (_, props) => { return props.id } -const selectConnectedSlides = createSelector( +const selectSlides = createSelector( + [getSlides, getId], + (slides, compId) => { + return Object.entries(slides).reduce((acc, [key, slide]) => { + return { + ...acc, + [`${compId}-${key}`]: slide, + } + }, {}) + }, +) + +const selectSlideImages = createSelector( [selectImages, getSlides, getId], (images, slides, compId) => { - return Object.entries(slides).reduce((acc, [key, slide]) => { + return Object.keys(slides).reduce((acc, key) => { const slideId = `${compId}-${key}` - return { ...acc, - [slideId]: { - ...slide, - id: slideId, - url: `${publicUrl}/static/images/${slide.filename || `slide_${key}.jpg`}`, - image: images[slideId], - }, + [slideId]: images[slideId], } }, {}) }, @@ -62,173 +72,126 @@ const slideTextMotionConfig = { +function Carousel (props) { + const { + id, + className, + interval = 10000, + } = props + const slides = useSelectorWithProps(props, selectSlides) + const images = useSelectorWithProps(props, selectSlideImages) + const [curSlideId, setCurSlide] = useState(Object.keys(slides)[0]) -@connect -class Carousel extends React.Component { - /***************************************************************************\ - Class Properties - \***************************************************************************/ + const curSlide = slides[curSlideId] + const curSlideUrl = images[curSlideId] - state = { - curSlide: Object.keys(this.props.slides)[0], - } + const timerRef = useRef(null) + const dispatch = useDispatch() - timer = null - - - - - - /***************************************************************************\ - Private Methods - \***************************************************************************/ - - _handleSlideButtonClick = (event) => { - this._setSlide(event.target.name) - } - - _setSlide = (slideId) => { - clearTimeout(this.timer) - this.timer = setTimeout(this._setSlide, this.props.interval) + const handleSlideButtonClick = useCallback((event) => { + window.clearTimeout(timerRef.current) + setCurSlide(event.target.name) + }, []) + const setSlide = useCallback((nextSlide) => { if (document.visibilityState === 'hidden') { + timerRef.current = window.setTimeout(setSlide, interval) return } - const slideKeys = Object.keys(this.props.slides) + const slideKeys = Object.keys(slides) - this.setState((state) => { - return { - curSlide: typeof slideId === 'undefined' - ? slideKeys[(slideKeys.indexOf(state.curSlide) + 1) % slideKeys.length] - : slideId, + setCurSlide((slideId) => { + return typeof nextSlide === 'undefined' + ? slideKeys[(slideKeys.indexOf(slideId) + 1) % slideKeys.length] + : nextSlide + }) + }, [slides, interval]) + + useEffect(() => { + Object.entries(slides).forEach(([key, slide]) => { + if (!images[key]) { + dispatch(getImage({ + id: key, + url: `${appUrl}/static/images/${slide.filename}`, + })) } }) - } - - - + // eslint-disable-next-line react-hooks/exhaustive-deps -- Only perform this on mount since this is a fetch operation. + }, []) - - /***************************************************************************\ - Public Methods - \***************************************************************************/ - - componentDidMount () { - this.timer = setTimeout(this._setSlide, this.props.interval) - - Object.values(this.props.slides).forEach((slide) => { - if (!slide.image) { - this.props.getImage(slide) + useEffect(() => { + if (curSlideUrl) { + timerRef.current = window.setTimeout(setSlide, interval) + } + return () => { + if (timerRef.current) { + window.clearTimeout(timerRef.current) + } + } + // eslint-disable-next-line react-hooks/exhaustive-deps -- only set a timeout if curSlideUrl changes + }, [curSlideUrl]) + + return ( + <div className={['carousel', className]} id={id}> + <AnimatePresence> + { + Boolean(curSlideUrl) && ( + <m.div + key={`${curSlideId}-img`} + {...slideMotionConfig} + className="carousel-slide" + src={curSlideUrl} + style={ + { + backgroundImage: `url(${curSlideUrl})`, + backgroundPosition: curSlide.position ?? 'center', + } + } /> + ) + } + { + Boolean(curSlideUrl && curSlide.text) && ( + <m.span + key={`${curSlideId}-text`} + {...slideTextMotionConfig} + className="carousel-slide-text"> + {curSlide.text} + </m.span> + ) + } + </AnimatePresence> + <div className="carousel-slide-picker"> + { + Object.keys(images).map((slideId) => { + return ( + <button + key={slideId} + aria-label={`Image carousel slide ${slideId}`} + className={['circle-button', { active: curSlideId === slideId }]} + name={slideId} + type="button" + onClick={handleSlideButtonClick} /> + ) + }) } - }) - } - - componentWillUnmount () { - clearTimeout(this.timer) - } - - render () { - const { - className, - slides, - id, - } = this.props - - const { - curSlide, - } = this.state - - const slide = this.props.slides[curSlide] - - return ( - <div className={['carousel', className]} id={id}> - <AnimatePresence> - { - Boolean(slide.image) && ( - <m.div - {...slideMotionConfig} - key={`${curSlide}-img`} - className="carousel-slide" - src={slide.image} - style={ - { - backgroundImage: `url(${slide.image})`, - backgroundPosition: slide.position || 'center', - } - } /> - ) - } - { - Boolean(slide.image && slide.text) && ( - <m.span - {...slideTextMotionConfig} - key={`${curSlide}-text`} - className="carousel-slide-text"> - {slide.text} - </m.span> - ) - } - </AnimatePresence> - <div className="carousel-slide-picker"> - { - Object.keys(slides).map((slideId) => { - return ( - <button - key={slideId} - aria-label={`Image carousel slide ${slideId}`} - className={['circle-button', { active: curSlide === slideId }]} - name={slideId} - type="button" - onClick={this._handleSlideButtonClick} /> - ) - }) - } - </div> </div> - ) - } - - - - - - /***************************************************************************\ - Redux Properties - \***************************************************************************/ - - static mapDispatchToProps = ['getImage'] - - static mapStateToProps = createStructuredSelector({ - slides: selectConnectedSlides, - }) - - - - - - /***************************************************************************\ - Prop Definitions - \***************************************************************************/ - - static defaultProps = { - className: '', - interval: 10000, - } + </div> + ) +} - static propTypes = { - className: PropTypes.string, - getImage: PropTypes.func, - id: PropTypes.string.isRequired, - interval: PropTypes.number, - slides: PropTypes.objectOf(PropTypes.shape({ - filename: PropTypes.string, - image: PropTypes.string, - position: PropTypes.string, - text: PropTypes.any, - })).isRequired, - } +Carousel.propTypes = { + className: PropTypes.string, + getImage: PropTypes.func, + id: PropTypes.string.isRequired, + interval: PropTypes.number, + slides: PropTypes.objectOf(PropTypes.shape({ + filename: PropTypes.string, + image: PropTypes.string, + position: PropTypes.string, + text: PropTypes.any, + })).isRequired, } diff --git a/src/components/ChangePasswordModal/ChangePasswordModal.js b/src/components/ChangePasswordModal/ChangePasswordModal.js index 609d98986..69ad581b8 100644 --- a/src/components/ChangePasswordModal/ChangePasswordModal.js +++ b/src/components/ChangePasswordModal/ChangePasswordModal.js @@ -2,29 +2,22 @@ import PropTypes from 'prop-types' import { useCallback, useMemo, useState } from 'react' import { useDispatch, useSelector } from 'react-redux' -import getResponseError from '~/helpers/getResponseError' +import asModal, { ModalContent, ModalFooter } from '~/components/asModal' +import NewPasswordFieldset from '~/components/Fieldsets/NewPasswordFieldset' +import PasswordFieldset from '~/components/Fieldsets/PasswordFieldset' import useForm from '~/hooks/useForm' import { changePassword } from '~/store/actions/authentication' import { selectCurrentUserId } from '~/store/selectors' +import getResponseError from '~/util/getResponseError' + -import dynamicNewPasswordFieldset from '../Fieldsets/NewPasswordFieldset' -import PasswordFieldset from '../Fieldsets/PasswordFieldset' -import asModal, { ModalContent, ModalFooter } from '../Modal' import ChangePasswordMessageBox from './ChangePasswordMessageBox' // Component Constants const SUBMIT_AUTO_CLOSE_DELAY_TIME = 3000 -const passwordFieldProps = { - dark: true, - required: true, - 'aria-label': 'New Password', - id: 'NewPassword', - name: 'attributes.newPassword', - placeholder: 'New Password', -} -const NewPasswordFieldset = dynamicNewPasswordFieldset(passwordFieldProps) + function ChangePasswordModal (props) { @@ -95,7 +88,13 @@ function ChangePasswordModal (props) { name="attributes.password" placeholder="Current Password" /> - <NewPasswordFieldset {...passwordFieldProps} /> + <NewPasswordFieldset + dark + required + aria-label="New Password" + id="NewPassword" + name="attributes.newPassword" + placeholder="New Password" /> <ModalFooter> <div className="secondary" /> diff --git a/src/components/Clock/Clock.js b/src/components/Clock/Clock.js index 6a968e57c..5a88d9723 100644 --- a/src/components/Clock/Clock.js +++ b/src/components/Clock/Clock.js @@ -1,7 +1,7 @@ import PropTypes from 'prop-types' import { useEffect, useState } from 'react' -import { formatAsEliteDateTime } from '~/helpers/formatTime' +import formatAsEliteDateTime from '~/util/date/formatAsEliteDateTime' import styles from './Clock.module.scss' diff --git a/src/components/ConfirmActionButton.js b/src/components/ConfirmActionButton.js index f914c3431..c7d729950 100644 --- a/src/components/ConfirmActionButton.js +++ b/src/components/ConfirmActionButton.js @@ -7,23 +7,11 @@ import React from 'react' class ConfirmActionButton extends React.Component { - /***************************************************************************\ - Class Properties - \***************************************************************************/ - state = { confirmingAction: false, performingAction: false, } - - - - - /***************************************************************************\ - Private Methods - \***************************************************************************/ - _handleClick = async (event) => { const { onConfirm, @@ -53,14 +41,6 @@ class ConfirmActionButton extends React.Component { } } - - - - - /***************************************************************************\ - Public Methods - \***************************************************************************/ - render () { const { children, @@ -129,12 +109,6 @@ class ConfirmActionButton extends React.Component { return newProps } - - - /***************************************************************************\ - Prop Properties - \***************************************************************************/ - static defaultProps = { confirmButtonText: 'Yes', confirmSubText: 'Are you sure?', diff --git a/src/components/DeveloperPanel/ClientSubmitMessageBox.js b/src/components/DeveloperPanel/ClientSubmitMessageBox.js index c0cd77129..d0244c8b2 100644 --- a/src/components/DeveloperPanel/ClientSubmitMessageBox.js +++ b/src/components/DeveloperPanel/ClientSubmitMessageBox.js @@ -1,6 +1,6 @@ import PropTypes from 'prop-types' -import getResponseError from '~/helpers/getResponseError' +import getResponseError from '~/util/getResponseError' import MessageBox from '../MessageBox' import ApiErrorBox from '../MessageBox/ApiErrorBox' diff --git a/src/components/DisableProfileModal/DisableProfileModal.js b/src/components/DisableProfileModal/DisableProfileModal.js index 09f74dfc8..01328157c 100644 --- a/src/components/DisableProfileModal/DisableProfileModal.js +++ b/src/components/DisableProfileModal/DisableProfileModal.js @@ -2,14 +2,14 @@ import Router from 'next/router' import { useCallback, useMemo, useState } from 'react' import { useDispatch, useSelector } from 'react-redux' -import getResponseError from '~/helpers/getResponseError' +import asModal, { FooterPrimary, ModalContent, ModalFooter } from '~/components/asModal' +import PasswordFieldset from '~/components/Fieldsets/PasswordFieldset' import useForm from '~/hooks/useForm' import { logout } from '~/store/actions/session' import { updateUser } from '~/store/actions/user' import { selectCurrentUserId } from '~/store/selectors' +import getResponseError from '~/util/getResponseError' -import PasswordFieldset from '../Fieldsets/PasswordFieldset' -import asModal, { FooterPrimary, ModalContent, ModalFooter } from '../Modal' import DisableProfileErrorBox from './DisableProfileErrorBox' diff --git a/src/components/DispatchTable/RescueRow.js b/src/components/DispatchTable/RescueRow.js index 378b15508..a685ee800 100644 --- a/src/components/DispatchTable/RescueRow.js +++ b/src/components/DispatchTable/RescueRow.js @@ -4,11 +4,11 @@ import { useRouter } from 'next/router' import PropTypes from 'prop-types' import { useCallback, useState } from 'react' -import { makeRoute } from '~/helpers/routeGen' import { useQuoteString, useLanguageData, usePlatformData } from '~/hooks/rescueHooks' import useSelectorWithProps from '~/hooks/useSelectorWithProps' import useStoreEffect from '~/hooks/useStoreEffect' import { selectRescueById, createSelectRenderedRatList } from '~/store/selectors' +import makeRoute from '~/util/router/makeRoute' import CopyToClipboard from '../CopyToClipboard' import styles from './DispatchTable.module.scss' diff --git a/src/components/DonateForm.js b/src/components/DonateForm.js deleted file mode 100644 index 7081d1cd4..000000000 --- a/src/components/DonateForm.js +++ /dev/null @@ -1,363 +0,0 @@ -import { HttpStatus } from '@fuelrats/web-util/http' -import { isError } from 'flux-standard-action' -import { produce } from 'immer' -import PropTypes from 'prop-types' -import React from 'react' -import { createStructuredSelector } from 'reselect' - -import getFingerprint from '~/helpers/getFingerprint' -import getMoney from '~/helpers/getMoney' -import { connect } from '~/store' -import { withCurrentUserId, selectUserById } from '~/store/selectors' - -import RadioInput from './RadioInput' -import StripeBadge from './StripeBadge' - - - - - -const presetAmounts = { - one: 1.00, - five: 5.00, - ten: 10.00, - twenty: 20.00, - custom: '', -} - -const currencyValidator = /^[0-9]{0,6}(\.[0-9]{0,2})?$/u - -const currencyOptions = [ - { - value: 'eur', - label: '€ EUR', - title: 'Euro', - }, - { - value: 'gbp', - label: '£ GBP', - title: 'Great British Pounds', - }, - { - value: 'usd', - label: '$ USD', - title: 'United States Dollars', - }, -] - -const amountOptions = (prefix) => { - return [ - { - value: 'one', - label: `${prefix}1.00`, - }, - { - value: 'five', - label: `${prefix}5.00`, - }, - { - value: 'ten', - label: `${prefix}10.00`, - }, - { - value: 'twenty', - label: `${prefix}20.00`, - }, - { - value: 'custom', - label: 'Custom Amount', - }, - ] -} - - - - - -@connect -class DonateForm extends React.Component { - /***************************************************************************\ - Class Properties - \***************************************************************************/ - - state = { - amount: 0, - amountType: '', - currency: '', - error: null, - submitting: false, - } - - - - - - /***************************************************************************\ - Private Methods - \***************************************************************************/ - - _handleFieldChange = ({ target }) => { - this.setState(produce((draftState) => { - const { name } = target - const { value } = target - - if (name === 'amount' && !value.match(currencyValidator)) { - return - } - - if (name === 'amountType') { - draftState.amount = presetAmounts[value] - } - - draftState[name] = value.replace(/^0+/u, '') - })) - } - - _handleSubmit = async (event) => { - event.preventDefault() - if (!this.canSubmit) { - return - } - - this.setState({ error: false, submitting: true }) - - const { - createDonationSession, - stripe, - user, - } = this.props - - const { - currency, - } = this.state - - const fingerprint = await getFingerprint() - - const sessionData = { - amount: this.stripeAmount, - currency, - fingerprint, - } - - if (user) { - const { email, stripeId } = user.attributes - - if (stripeId) { - sessionData.customer = stripeId - } else { - sessionData.email = email - } - } - - const response = await createDonationSession(sessionData) - - if (isError(response)) { - this.setState({ - error: response.payload?.errors?.[0] ?? true, - submitting: false, - }) - return - } - - try { - await stripe.redirectToCheckout({ sessionId: response.payload.data.id }) - } catch (error) { - this.setState({ - error: { - detail: error.message, - }, - submitting: false, - }) - } - - this.setState({ submitting: false }) - } - - - - - - /***************************************************************************\ - Public Methods - \***************************************************************************/ - - renderError () { - const { error } = this.state - return ( - <div className="store-errors"> - <div className="store-error"> - <h5 className="title">{error.title ?? 'Unknown Error'}</h5> - <span className="detail">{error.detail}</span> - <br /> - <small className="footer"> - { - error.code === HttpStatus.UNAUTHORIZED - ? ( - <> - {'If you believe this is an error, Please appeal via email: '} - <a href="mailto:ops@fuelrats.com">{'ops@fuelrats.com'}</a> - </> - ) - : ( - <> - {'If the problem persists, please contact a techrat via email: '} - <a href="mailto:support@fuelrats.com">{'support@fuelrats.com'}</a> - </> - ) - } - </small> - - </div> - </div> - ) - } - - - render () { - const { - amount, - amountType, - currency, - error, - submitting, - } = this.state - - const { currencySymbol } = this - - return ( - <> - {!submitting && error && this.renderError()} - <form className="donate-form compact" onSubmit={this._handleSubmit}> - <fieldset> - <label htmlFor="currency">{'Select your currency'}</label> - - <RadioInput - disabled={submitting} - id="currency" - name="currency" - options={currencyOptions} - value={currency} - onChange={this._handleFieldChange} /> - </fieldset> - - <fieldset> - <label htmlFor="amountType">{'Select your amount'}</label> - - <RadioInput - disabled={submitting || !currency} - id="amountType" - name="amountType" - options={amountOptions(currencySymbol)} - value={amountType} - onChange={this._handleFieldChange} /> - </fieldset> - - { - amountType === 'custom' && ( - <fieldset> - <label htmlFor="amount">{'Input your custom amount'}</label> - - <input - aria-label="Custom amount" - disabled={submitting || amountType !== 'custom'} - id="DonateAmount" - name="amount" - type="text" - value={amount} - onChange={this._handleFieldChange} /> - </fieldset> - ) - } - - <div className="fieldset"> - <button - className="green" - disabled={submitting || !this.canSubmit} - type="submit"> - {'Donate '} - {Boolean(this.canSubmit) && getMoney(this.stripeAmount, currency)} - </button> - </div> - <StripeBadge className="donation-info-badge" /> - </form> - </> - ) - } - - - - - - /***************************************************************************\ - Getters - \***************************************************************************/ - - get canSubmit () { - const { stripe } = this.props - const { - amount, - currency, - } = this.state - - return Boolean( - stripe - && amount - && amount >= 1 - && currency, - ) - } - - get stripeAmount () { - return this.state.amount * 100 - } - - get currencySymbol () { - switch (this.state.currency) { - case 'gbp': - return '£' - - case 'usd': - return '$' - - default: - return '€' - } - } - - - - - /***************************************************************************\ - Redux Properties - \***************************************************************************/ - - static mapDispatchToProps = ['createDonationSession'] - - static mapStateToProps = createStructuredSelector({ - user: withCurrentUserId(selectUserById), - }) - - - - - - /***************************************************************************\ - Prop Definitions - \***************************************************************************/ - - static defaultProps = { - stripe: null, - } - - static propTypes = { - createDonationSession: PropTypes.func, - stripe: PropTypes.object, - user: PropTypes.object, - } -} - - - - - -export default DonateForm diff --git a/src/components/ElapsedTimer.js b/src/components/ElapsedTimer.js index 5b77ffcc0..b619ab301 100644 --- a/src/components/ElapsedTimer.js +++ b/src/components/ElapsedTimer.js @@ -1,7 +1,7 @@ import PropTypes from 'prop-types' import { useState, useEffect } from 'react' -import { formatTimeElapsed } from '~/helpers/formatTime' +import formatTimeElapsed from '~/util/date/formatTimeElapsed' diff --git a/src/components/Fieldsets/BooleanRadioFieldset.js b/src/components/Fieldsets/BooleanRadioFieldset.js index 3c0171752..bd0f7c856 100644 --- a/src/components/Fieldsets/BooleanRadioFieldset.js +++ b/src/components/Fieldsets/BooleanRadioFieldset.js @@ -2,8 +2,8 @@ import PropTypes from 'prop-types' import { useCallback } from 'react' import RadioInput from '~/components/RadioInput' -import stringToStrictBoolean from '~/helpers/stringToStrictBoolean' import { useField, fieldPropTypes } from '~/hooks/useForm' +import stringToStrictBoolean from '~/util/string/stringToStrictBoolean' const booleanRadioOptions = [ { diff --git a/src/components/Fieldsets/IRCNickFieldset.js b/src/components/Fieldsets/IRCNickFieldset.js index dc6195254..381d80886 100644 --- a/src/components/Fieldsets/IRCNickFieldset.js +++ b/src/components/Fieldsets/IRCNickFieldset.js @@ -29,7 +29,7 @@ export default function IRCNickFieldset (props) { if (!value.match(ircNickRegExp)) { messages.errors.push( - 'IRC Nicks can only be single words made up of letters, numbers, and certain formatting characters. Underscores ("_") are usually used in place of spaces', + 'IRC Nicks must begin with a letter, and may only contain letters, numbers, and certain formatting characters. Underscores ("_") are usually used in place of spaces', ) } diff --git a/src/components/Fieldsets/InputFieldset/InputFieldset.js b/src/components/Fieldsets/InputFieldset/InputFieldset.js index 606417c8c..08c9a0511 100644 --- a/src/components/Fieldsets/InputFieldset/InputFieldset.js +++ b/src/components/Fieldsets/InputFieldset/InputFieldset.js @@ -2,11 +2,11 @@ import PropTypes from 'prop-types' import React, { useCallback, useState } from 'react' import InputSuggestions from '~/components/InputMessages' -import extPropType from '~/helpers/extPropTypes' -import getValidityErrors from '~/helpers/getValidityErrors' import useFocusState from '~/hooks/useFocusState' import { useField, fieldPropTypes } from '~/hooks/useForm' import useSharedForwardRef from '~/hooks/useSharedForwardRef' +import getValidityErrors from '~/util/getValidityErrors' +import extPropTypes from '~/util/propTypes/extPropTypes' import styles from './InputFieldset.module.scss' import ValidityIcon from './ValidityIcon' @@ -21,6 +21,7 @@ const InputFieldset = React.forwardRef((props, forwardRef) => { className, dark, displayName = 'Input', + fieldsetClassName, skipWarnings = false, inputClassName, label, @@ -89,7 +90,7 @@ const InputFieldset = React.forwardRef((props, forwardRef) => { const hideMessages = !messages?.validatedValue?.length || !messages?.hasMessages || validating || !isFocused return ( - <fieldset> + <fieldset className={fieldsetClassName}> { Boolean(label) && ( @@ -126,7 +127,7 @@ const InputFieldset = React.forwardRef((props, forwardRef) => { InputFieldset.displayName = 'InputFieldset' InputFieldset.propTypes = { - 'aria-label': extPropType(PropTypes.string).isRequiredIf('label', 'undefined'), + 'aria-label': extPropTypes(PropTypes.string).isRequiredIf('label', 'undefined'), dark: PropTypes.bool, displayName: PropTypes.string, id: PropTypes.string.isRequired, @@ -140,9 +141,11 @@ InputFieldset.propTypes = { /** * Returns a memoized version of a callback which can accept the following arguments: * - * * `messages` - an object containing two arrays of messages called `errors` and `warnings` - * * `value` - The input value to validate against - * * `target?` - the underlying input element + * `messages` - an object containing two arrays of messages called `errors` and `warnings` + * + * `value` - The input value to validate against + * + * `target?` - the underlying input element * * `messages` can be mutated or an updated object can be returned by the callback. * @@ -159,9 +162,9 @@ function useValidationCallback (callback, deps = [], parent) { async (...args) => { const { errors = [], warnings = [] } = (await parent?.(...args)) ?? {} return (await _callback({ errors, warnings }, ...args)) ?? { errors, warnings } - + }, // eslint-disable-next-line react-hooks/exhaustive-deps - }, [parent, _callback, ...deps], + [parent, _callback, ...deps], ) } diff --git a/src/components/Fieldsets/NewPasswordFieldset/NewPasswordFieldset.js b/src/components/Fieldsets/NewPasswordFieldset/NewPasswordFieldset.js index a6ef60da3..cda219c79 100644 --- a/src/components/Fieldsets/NewPasswordFieldset/NewPasswordFieldset.js +++ b/src/components/Fieldsets/NewPasswordFieldset/NewPasswordFieldset.js @@ -1,18 +1,21 @@ +import _get from 'lodash/get' import PropTypes from 'prop-types' -import { useState } from 'react' -import zxcvbn from 'zxcvbn' +import { useEffect, useRef, useState } from 'react' -import { useValidationCallback } from '../InputFieldset' -import PasswordFieldset from '../PasswordFieldset' -import styles from './NewPasswordFieldset.module.scss' +import { useValidationCallback } from '~/components/Fieldsets/InputFieldset' +import PasswordFieldset from '~/components/Fieldsets/PasswordFieldset' +import { fieldPropTypes } from '~/hooks/useForm' +import { useFormContext } from '~/hooks/useForm/useFormComponent' +import useZxcvbn from '~/hooks/useZxcvbn' +import styles from './NewPasswordFieldset.module.scss' -const DEFAULT_MAX_LENGTH = 42 +const DEFAULT_MAX_LENGTH = 42 @@ -21,42 +24,62 @@ function NewPasswordFieldset (props) { onValidate: parentValidate, displayName = 'Password', maxLength = DEFAULT_MAX_LENGTH, + name, ...inputProps } = props + const nameRef = useRef(name) + + const ctxRef = useRef(null) + ctxRef.current = useFormContext() + const [passwordStrength, setPasswordStrength] = useState(0) + const [zxcvbn, zxcvbnLoading] = useZxcvbn() const handleValidate = useValidationCallback( (messages, value) => { - if (value.match(/[@&+%~\s]/gu)) { - messages.errors.push(`${displayName} must not contain "@", "$", "+", "%", "+", or spaces due to limitations in IRC.`) + if (value.match(/[~@$%&+\s]/gu)) { + messages.errors.push(`${displayName} must not contain "~", "@", "$", "%", "&', "+", or spaces due to limitations in IRC.`) } if (value.length > maxLength) { messages.errors.push(`${displayName} must be no more than ${maxLength} characters long due to limitations in IRC.`) } - const evaluation = zxcvbn(value) + if (zxcvbn) { + const evaluation = zxcvbn(value) - if (evaluation.feedback.warning) { - messages.errors.push(evaluation.feedback.warning) - } + if (evaluation.feedback.warning) { + messages.errors.push(evaluation.feedback.warning) + } - messages.warnings.push(...evaluation.feedback.suggestions) + messages.warnings.push(...evaluation.feedback.suggestions) - setPasswordStrength(evaluation.score) + setPasswordStrength(evaluation.score) + } else if (zxcvbnLoading) { + messages.errors.push('Password evaluation is loading...') + } }, - [displayName, maxLength], + [displayName, maxLength, zxcvbn, zxcvbnLoading], parentValidate, ) + useEffect(() => { + if (zxcvbn) { + ctxRef.current?.validateField( + nameRef.current, + _get(ctxRef.current?.ctx.state, nameRef.current), + ) + } + }, [zxcvbn]) + return ( <PasswordFieldset autoComplete="new-password" className={styles.newPasswordInput} displayName={displayName} minLength={12} - placeholder="Sup3r-S3cur3-P4ssw0rd" + name={name} {...inputProps} onValidate={handleValidate}> @@ -75,7 +98,7 @@ function NewPasswordFieldset (props) { NewPasswordFieldset.propTypes = { displayName: PropTypes.string, maxLength: PropTypes.number, - onValidate: PropTypes.func, + ...fieldPropTypes, } diff --git a/src/components/Fieldsets/NewPasswordFieldset/NewPasswordPlaceholder.js b/src/components/Fieldsets/NewPasswordFieldset/NewPasswordPlaceholder.js deleted file mode 100644 index 744118232..000000000 --- a/src/components/Fieldsets/NewPasswordFieldset/NewPasswordPlaceholder.js +++ /dev/null @@ -1,47 +0,0 @@ -import PropTypes from 'prop-types' - -import { useValidationCallback } from '../InputFieldset' -import PasswordFieldset from '../PasswordFieldset' -import styles from './NewPasswordFieldset.module.scss' - - - - - -function NewPasswordPlaceholder (props) { - const { - onValidate: parentValidate, - displayName = 'Password', - ...inputProps - } = props - - const handleValidate = useValidationCallback( - (messages) => { - messages.errors.push('Loading password checker...') - }, - [], - parentValidate, - ) - - return ( - <PasswordFieldset - autoComplete="new-password" - className={styles.newPasswordInput} - displayName={displayName} - minLength={12} - placeholder="Sup3r-S3cur3-P4ssw0rd" - {...inputProps} - onValidate={handleValidate} /> - ) -} - -NewPasswordPlaceholder.propTypes = { - displayName: PropTypes.string, - onValidate: PropTypes.func, -} - - - - - -export default NewPasswordPlaceholder diff --git a/src/components/Fieldsets/NewPasswordFieldset/index.js b/src/components/Fieldsets/NewPasswordFieldset/index.js index ff8644dba..72390eaf6 100644 --- a/src/components/Fieldsets/NewPasswordFieldset/index.js +++ b/src/components/Fieldsets/NewPasswordFieldset/index.js @@ -1,20 +1 @@ -import dynamic from 'next/dynamic' - -import NewPasswordPlaceholder from './NewPasswordPlaceholder' - - - - - -export default function dynamicNewPasswordFieldset (props = {}) { - return dynamic({ - loader: () => { - return import('./NewPasswordFieldset') - }, - loading: () => { - return ( - <NewPasswordPlaceholder {...props} /> - ) - }, - }) -} +export { default } from './NewPasswordFieldset' diff --git a/src/components/Fieldsets/RegistrationEmailFieldset.js b/src/components/Fieldsets/RegistrationEmailFieldset.js index d2bd9ab5e..84d23d85e 100644 --- a/src/components/Fieldsets/RegistrationEmailFieldset.js +++ b/src/components/Fieldsets/RegistrationEmailFieldset.js @@ -1,12 +1,10 @@ -/* global $IS_DEVELOPMENT, $IS_STAGING */ - import { forwardRef } from 'react' import EmailFieldset from './EmailFieldset' import { useValidationCallback } from './InputFieldset' -const isProduction = !$IS_DEVELOPMENT && !$IS_STAGING + const RegistrationEmailFieldset = forwardRef((props, ref) => { @@ -21,7 +19,7 @@ const RegistrationEmailFieldset = forwardRef((props, ref) => { const compareValue = value.toLowerCase().trim() if (compareValue === 'surly_badger@fuelrats.com') { messages.errors.push('While we appreciate your admiration for our founder, this email is most surely not your own.') - } else if (isProduction && compareValue.includes('@fuelrats')) { + } else if ($$BUILD.isProduction && compareValue.includes('@fuelrats')) { messages.errors.push('Fuel rats email accounts cannot be used to register a brand new account, goofball.') } }, diff --git a/src/components/Fieldsets/RescueIdFieldset.js b/src/components/Fieldsets/RescueIdFieldset.js index 844fc2399..557e22a89 100644 --- a/src/components/Fieldsets/RescueIdFieldset.js +++ b/src/components/Fieldsets/RescueIdFieldset.js @@ -1,4 +1,4 @@ -import { isValidUuidV4 } from '~/helpers/uuidValidator' +import { isValidUuidV4 } from '~/util/string/uuidValidator' import InputFieldset, { useValidationCallback } from './InputFieldset' diff --git a/src/components/Fieldsets/SelectFieldset/SelectFieldset.js b/src/components/Fieldsets/SelectFieldset/SelectFieldset.js index 79dd2d215..9ff427c59 100644 --- a/src/components/Fieldsets/SelectFieldset/SelectFieldset.js +++ b/src/components/Fieldsets/SelectFieldset/SelectFieldset.js @@ -2,11 +2,10 @@ import { FontAwesomeIcon } from '@fortawesome/react-fontawesome' import PropTypes from 'prop-types' import { useCallback, useRef } from 'react' -import extPropType from '~/helpers/extPropTypes' import { useField, fieldPropTypes } from '~/hooks/useForm' +import extPropTypes from '~/util/propTypes/extPropTypes' import inputStyles from '../InputFieldset/InputFieldset.module.scss' -import ValidityIcon from '../InputFieldset/ValidityIcon' import styles from './SelectFieldset.module.scss' @@ -19,12 +18,14 @@ function SelectFieldset (props) { className, dark, disabled, + fieldsetClassName, inputClassName, label, noEmpty, onChange, onValidate: parentValidate, required, + placeholder, validateOpts, ...inputProps } = props @@ -47,13 +48,12 @@ function SelectFieldset (props) { const { value = '', - validating, submitting, handleChange, } = useField(props.name, { onValidate, onChange, validateOpts }) return ( - <fieldset> + <fieldset className={fieldsetClassName}> { Boolean(label) && ( <label htmlFor={props.id}>{label}</label> @@ -62,7 +62,7 @@ function SelectFieldset (props) { <div className={[inputStyles.inputGroup, styles.select, className]}> <select - className={[inputClassName, { dark, required, valid: validityRef.current }]} + className={[inputClassName, { dark, required, valid: validityRef.current, [styles.empty]: !value.length }]} disabled={submitting || disabled} type="text" {...inputProps} @@ -70,7 +70,7 @@ function SelectFieldset (props) { onChange={handleChange}> { !noEmpty && ( - <option aria-label="Empty" value="" /> + <option disabled aria-label="Empty" value="">{placeholder}</option> ) } {children} @@ -78,19 +78,15 @@ function SelectFieldset (props) { <div className={styles.arrow}> <FontAwesomeIcon fixedWidth icon="angle-down" size="lg" /> </div> - <ValidityIcon - className={{ [inputStyles.hidden]: !value.length }} - valid={validityRef.current} - validating={validating} /> </div> </fieldset> ) } -SelectFieldset.displayName = 'InputFieldset' +SelectFieldset.displayName = 'SelectFieldset' SelectFieldset.propTypes = { - 'aria-label': extPropType(PropTypes.string).isRequiredIf('label', 'undefined'), + 'aria-label': extPropTypes(PropTypes.string).isRequiredIf('label', 'undefined'), dark: PropTypes.bool, id: PropTypes.string.isRequired, inputClassName: PropTypes.string, diff --git a/src/components/Fieldsets/SelectFieldset/SelectFieldset.module.scss b/src/components/Fieldsets/SelectFieldset/SelectFieldset.module.scss index ac757f198..6ef214a77 100644 --- a/src/components/Fieldsets/SelectFieldset/SelectFieldset.module.scss +++ b/src/components/Fieldsets/SelectFieldset/SelectFieldset.module.scss @@ -1,3 +1,5 @@ +@use 'sass:math'; + @import '../../../scss/colors'; @@ -7,12 +9,16 @@ } } +.empty { + color: $placeholder-grey; +} + .arrow { position: absolute; top: 1px; right: 1px; - padding: 1rem #{(2 / 3) * 1rem}; + padding: 1rem #{math.div(2, 3) * 1rem}; border: none; diff --git a/src/components/Fieldsets/TermsFieldset.js b/src/components/Fieldsets/TermsFieldset.js index 01cee88f6..0e254ad63 100644 --- a/src/components/Fieldsets/TermsFieldset.js +++ b/src/components/Fieldsets/TermsFieldset.js @@ -2,12 +2,11 @@ import Link from 'next/link' import { useState, useCallback, useEffect } from 'react' import { useStore } from 'react-redux' +import WordpressTermsModal from '~/components/TermsModal' import { useField } from '~/hooks/useForm' import { getWordpressPage } from '~/store/actions/wordpress' import { selectWordpressPageBySlug } from '~/store/selectors' -import WordpressTermsModal from '../TermsModal/TermsModal' - diff --git a/src/components/FirstLoginModal.js b/src/components/FirstLoginModal.js index 43fc30d4d..ff0e27ddb 100644 --- a/src/components/FirstLoginModal.js +++ b/src/components/FirstLoginModal.js @@ -1,4 +1,4 @@ -import asModal, { ModalContent, ModalFooter } from './Modal' +import asModal, { ModalContent, ModalFooter } from './asModal' diff --git a/src/components/Forms/AddNicknameForm/AddNicknameForm.js b/src/components/Forms/AddNicknameForm/AddNicknameForm.js new file mode 100644 index 000000000..8e4ec7966 --- /dev/null +++ b/src/components/Forms/AddNicknameForm/AddNicknameForm.js @@ -0,0 +1,84 @@ +import { FontAwesomeIcon } from '@fortawesome/react-fontawesome' +import { HttpStatus } from '@fuelrats/web-util/http' +import { isError } from 'flux-standard-action' +import { useCallback, useState } from 'react' +import { useDispatch, useSelector } from 'react-redux' + +import IRCNickFieldset from '~/components/Fieldsets/IRCNickFieldset' +import InfoBubble from '~/components/InfoBubble' +import useForm from '~/hooks/useForm' +import { addNickname } from '~/store/actions/user' +import { selectUserById, withCurrentUserId } from '~/store/selectors' + +import styles from './AddNicknameForm.module.scss' + + +const initialState = { + attributes: { + nick: '', + }, +} + + +function AddNicknameForm (props) { + const user = useSelector(withCurrentUserId(selectUserById)) + const [error, setSubmitError] = useState(null) + const dispatch = useDispatch() + + const onSubmit = useCallback(async (data, _, reset) => { + const response = await dispatch(addNickname(user, data)) + + if (isError(response)) { + const { meta, payload } = response + let errorMessage = 'Unknown error occured.' + + if (meta.response.status === HttpStatus.UNPROCESSABLE_ENTITY) { + errorMessage = 'Nickname invalid' + } else if (meta.response.status === HttpStatus.CONFLICT) { + errorMessage = 'Nickname already registered' + } else if (HttpStatus.isClientError(meta.response.status)) { + errorMessage = payload?.errors?.[0]?.title ?? 'Client communication error' + } else if (HttpStatus.isServerError(meta.response.status)) { + errorMessage = 'Server communication error' + } + + setSubmitError(errorMessage) + } + + reset() + }, [dispatch, user]) + + const { Form, canSubmit } = useForm({ onSubmit, data: initialState }) + + return ( + <Form className={styles.addNicknameForm}> + <IRCNickFieldset + required + aria-label="Nickname" + className={[styles.thinInput, error && styles.error]} + disabled={props.disabled} + id="AddNickname" + name="attributes.nick" + placeholder={error ?? 'Add a nickname...'} + title={props.title}> + <InfoBubble className={styles.nicknamesInfo} header="reminder" id="NickRegisterReminder"> + {"You cannot register a nick that's in use on IRC. Switch to a temporary one before registering!"} + </InfoBubble> + </IRCNickFieldset> + + <button + aria-label="submit new nickname" + className="green compact" + disabled={!canSubmit || props.disabled} + type="submit"> + <FontAwesomeIcon fixedWidth icon="arrow-right" /> + </button> + </Form> + ) +} + + + + + +export default AddNicknameForm diff --git a/src/components/AddNicknameForm/AddNicknameForm.module.scss b/src/components/Forms/AddNicknameForm/AddNicknameForm.module.scss similarity index 59% rename from src/components/AddNicknameForm/AddNicknameForm.module.scss rename to src/components/Forms/AddNicknameForm/AddNicknameForm.module.scss index 8a665d5e3..96f261d49 100644 --- a/src/components/AddNicknameForm/AddNicknameForm.module.scss +++ b/src/components/Forms/AddNicknameForm/AddNicknameForm.module.scss @@ -1,4 +1,5 @@ -@import '../../scss/colors'; +@import '../../../scss/animations/toast-fade'; +@import '../../../scss/colors'; .addNicknameForm { display: flex; @@ -25,7 +26,13 @@ } .thinInput { - padding: 0.6rem 1rem; + :global(.validityIconGroup) { + padding: 0.625rem 1rem; /* extra .025 for centering. */ + } + + > input { + padding: 0.6rem 1rem; + } } .error, @@ -42,12 +49,12 @@ pointer-events: none; position: absolute; - top: 5rem; + top: -8rem; opacity: 0; - transition: opacity 0.2s; + will-change: opacity; } -input:focus ~ .nicknamesInfo { - opacity: 1; +input:placeholder-shown:focus ~ .nicknamesInfo { + animation: toast-fade 3s linear; } diff --git a/src/components/AddNicknameForm/index.js b/src/components/Forms/AddNicknameForm/index.js similarity index 100% rename from src/components/AddNicknameForm/index.js rename to src/components/Forms/AddNicknameForm/index.js diff --git a/src/components/Forms/AddRatForm/AddRatForm.js b/src/components/Forms/AddRatForm/AddRatForm.js new file mode 100644 index 000000000..ebc7fe2be --- /dev/null +++ b/src/components/Forms/AddRatForm/AddRatForm.js @@ -0,0 +1,115 @@ +import { FontAwesomeIcon } from '@fortawesome/react-fontawesome' +import { useCallback, useState } from 'react' +import { useDispatch, useSelector } from 'react-redux' + +import CMDRFieldset from '~/components/Fieldsets/CMDRFieldset' +import SelectFieldset from '~/components/Fieldsets/SelectFieldset' +import useForm from '~/hooks/useForm' +import { createRat } from '~/store/actions/rats' +import { selectCurrentUserId } from '~/store/selectors' + +import styles from './AddRatForm.module.scss' + + + +// Component Constants +const initialState = { + name: '', + platform: '', +} + + + + + +function AddRatForm () { + const dispatch = useDispatch() + const userId = useSelector(selectCurrentUserId) + const [formOpen, setFormOpen] = useState(false) + const handleToggleForm = useCallback(() => { + setFormOpen((state) => { + return !state + }) + }, []) + + + const onSubmit = async ({ name, platform }) => { + await dispatch(createRat({ + attributes: { + name: name.trim(), + platform, + }, + relationships: { + user: { + data: { + type: 'users', + id: userId, + }, + }, + }, + })) + setFormOpen(false) + } + + + const { Form, canSubmit, submitting } = useForm({ onSubmit, data: initialState }) + + return ( + <Form className={['compact', styles.addRatForm, { [styles.formOpen]: formOpen }]}> + { + formOpen && ( + <div className="form-row"> + <CMDRFieldset + required + aria-label="Commander Name" + fieldsetClassName={styles.cmdrField} + id="NewRatName" + maxLength={22} + minLength={1} + name="name" + placeholder="CMDR Name" /> + + <SelectFieldset + required + aria-label="Platform" + fieldsetClassName={styles.platformField} + id="NewRatPlatform" + name="platform" + placeholder="Platform"> + <option value="pc">{'PC'}</option> + <option value="xb">{'XB1'}</option> + <option value="ps">{'PS4'}</option> + </SelectFieldset> + </div> + ) + } + <div className={styles.formControl}> + { + formOpen && ( + <button + aria-label="submit new commander" + className="green compact square" + disabled={!canSubmit} + type="submit"> + <FontAwesomeIcon fixedWidth icon={submitting ? 'sync' : 'arrow-right'} rotate={submitting} /> + </button> + ) + } + <button + aria-label={formOpen ? 'cancel new commander creation' : 'add commander'} + className={['compact square', { green: !formOpen }]} + title={formOpen ? 'Cancel' : 'Add new commander'} + type="button" + onClick={handleToggleForm}> + <FontAwesomeIcon fixedWidth icon={formOpen ? 'times' : 'plus'} /> + </button> + </div> + </Form> + ) +} + + + + + +export default AddRatForm diff --git a/src/scss/components/_add-rat-form.scss b/src/components/Forms/AddRatForm/AddRatForm.module.scss similarity index 62% rename from src/scss/components/_add-rat-form.scss rename to src/components/Forms/AddRatForm/AddRatForm.module.scss index 388270246..d4d9df623 100644 --- a/src/scss/components/_add-rat-form.scss +++ b/src/components/Forms/AddRatForm/AddRatForm.module.scss @@ -1,11 +1,17 @@ -form.add-rat { +.platformField { + flex-shrink: 1.75; +} + +.addRatForm { display: flex; align-items: center; + justify-content: flex-end; transition: padding 0.2s ease; - &.form-open { + &.formOpen { + min-width: 500px; padding: 0.5rem; border: 1px solid rgba(26, 26, 26, 0.2); @@ -14,34 +20,34 @@ form.add-rat { box-shadow: 0 0 1rem rgba(26, 26, 26, 0.1); } - .form-control { + /* stylelint-disable-next-line selector-class-pattern */ + :global(.form-row) { + flex-grow: 1; + } + + .formControl { button { margin: 1rem 0.25rem; } } - @media only screen and (min-width: 769px) { - .cmdr-input { - width: 200px; - } - .platform-input { - width: 100px; - } - } + + + @media only screen and (max-width: 768px) { flex-direction: column; align-items: flex-end; - &.form-open { + &.formOpen { align-items: stretch; } - .form-control { + .formControl { display: flex; flex-direction: row; - justify-content: center; + justify-content: flex-end; button { flex-grow: 1; diff --git a/src/components/Forms/AddRatForm/index.js b/src/components/Forms/AddRatForm/index.js new file mode 100644 index 000000000..bb8a0e6f8 --- /dev/null +++ b/src/components/Forms/AddRatForm/index.js @@ -0,0 +1 @@ +export { default } from './AddRatForm' diff --git a/src/components/Forms/DonationForm/AmountPresetRadioFieldset.js b/src/components/Forms/DonationForm/AmountPresetRadioFieldset.js new file mode 100644 index 000000000..314709f9e --- /dev/null +++ b/src/components/Forms/DonationForm/AmountPresetRadioFieldset.js @@ -0,0 +1,41 @@ +import { useMemo } from 'react' + +import RadioFieldset from '~/components/Fieldsets/RadioFieldset' + + + + + +export default function AmountPresetRadioFieldset ({ currency, ...restProps }) { + const amountOptions = useMemo(() => { + const [prefix] = (0).toLocaleString('en-US', { style: 'currency', currency }) + return [ + { + value: 'one', + label: `${prefix}1.00`, + }, + { + value: 'five', + label: `${prefix}5.00`, + }, + { + value: 'ten', + label: `${prefix}10.00`, + }, + { + value: 'twenty', + label: `${prefix}20.00`, + }, + { + value: 'custom', + label: 'Custom Amount', + }, + ] + }, [currency]) ?? [] + + return ( + <RadioFieldset + {...restProps} + options={amountOptions} /> + ) +} diff --git a/src/components/Forms/DonationForm/CurrencyFieldset.js b/src/components/Forms/DonationForm/CurrencyFieldset.js new file mode 100644 index 000000000..a1c0d6396 --- /dev/null +++ b/src/components/Forms/DonationForm/CurrencyFieldset.js @@ -0,0 +1,39 @@ +import { useCallback } from 'react' + +import InputFieldset from '~/components/Fieldsets/InputFieldset' + + + + + +const currencyValidator = /^[0-9]{0,6}(\.[0-9]{0,2})?$/u + + + + + +export default function CurrencyFieldset (props) { + const { + onChange: parentChange, + ...inputProps + } = props + + const onChange = useCallback( + (event, value) => { + if (!value.match(currencyValidator)) { + event.preventDefault() + } + + parentChange?.(event, value) + }, + [parentChange], + ) + + return ( + <InputFieldset + placeholder="0.00" + {...inputProps} + type="text" + onChange={onChange} /> + ) +} diff --git a/src/components/Forms/DonationForm/CurrencyRadioFieldset.js b/src/components/Forms/DonationForm/CurrencyRadioFieldset.js new file mode 100644 index 000000000..2ee482bb7 --- /dev/null +++ b/src/components/Forms/DonationForm/CurrencyRadioFieldset.js @@ -0,0 +1,35 @@ +import RadioFieldset from '~/components/Fieldsets/RadioFieldset' + + + + + +const currencyOptions = [ + { + value: 'EUR', + label: '€ EUR', + title: 'Euro', + }, + { + value: 'GBP', + label: '£ GBP', + title: 'Great British Pounds', + }, + { + value: 'USD', + label: '$ USD', + title: 'United States Dollars', + }, +] + + + + + +export default function CurrencyRadioFieldset (props) { + return ( + <RadioFieldset + {...props} + options={currencyOptions} /> + ) +} diff --git a/src/components/Forms/DonationForm/DonationErrorBox.js b/src/components/Forms/DonationForm/DonationErrorBox.js new file mode 100644 index 000000000..a205cfad3 --- /dev/null +++ b/src/components/Forms/DonationForm/DonationErrorBox.js @@ -0,0 +1,61 @@ +import { HttpStatus } from '@fuelrats/web-util/http' +import PropTypes from 'prop-types' + +import ApiErrorBox from '~/components/MessageBox/ApiErrorBox' + + + + + +const renderError = (error) => { + switch (error.code) { + case HttpStatus.UNAUTHORIZED: + return 'You have been restricted from this service due to suspected fraud.' + + default: + return error.detail + } +} + + + + + +function DonationErrorBox (props) { + const { error } = props + + if (!error) { + return null + } + + return ( + <ApiErrorBox + error={error} + footer={ + error.code === HttpStatus.UNAUTHORIZED + ? ( + <> + {'If you believe this is an error, Please appeal via email: '} + <a href="mailto:ops@fuelrats.com">{'ops@fuelrats.com'}</a> + </> + ) + : ( + <> + {'If the problem persists, please contact a techrat via email: '} + <a href="mailto:support@fuelrats.com">{'support@fuelrats.com'}</a> + </> + ) + } + renderError={renderError} /> + ) +} + +DonationErrorBox.propTypes = { + error: PropTypes.object, +} + + + + + +export default DonationErrorBox diff --git a/src/components/Forms/DonationForm/DonationForm.js b/src/components/Forms/DonationForm/DonationForm.js new file mode 100644 index 000000000..5c32f139f --- /dev/null +++ b/src/components/Forms/DonationForm/DonationForm.js @@ -0,0 +1,167 @@ +import PropTypes from 'prop-types' +import { useCallback, useState } from 'react' +import { useDispatch, useSelector } from 'react-redux' + +import StripeBadge from '~/components/StripeBadge' +import useForm from '~/hooks/useForm' +import { createDonationSession } from '~/store/actions/stripe' +import { selectUserById, withCurrentUserId } from '~/store/selectors' +import getFingerprint from '~/util/getFingerprint' +import getResponseError from '~/util/getResponseError' +import getMoney from '~/util/string/getMoney' + +import AmountPresetRadioFieldset from './AmountPresetRadioFieldset' +import CurrencyFieldset from './CurrencyFieldset' +import CurrencyRadioFieldset from './CurrencyRadioFieldset' +import DonationErrorBox from './DonationErrorBox' + + + + + +// Component Constants +const formData = { + currency: '', + amountPreset: 0, + amount: undefined, +} + +const presetAmounts = { + one: 100, + five: 500, + ten: 1000, + twenty: 2000, +} + + + + + +const getAmount = (amountPreset, amount) => { + return presetAmounts[amountPreset] ?? (amount * 100) +} + +const preparePayload = async (data, user) => { + const fingerprint = await getFingerprint() + + const { + currency, + amount, + amountPreset, + } = data + + const sessionData = { + currency, + amount: getAmount(amountPreset, amount), + fingerprint, + } + + if (user) { + const { email, stripeId } = user.attributes + + if (stripeId) { + sessionData.customer = stripeId + } else { + sessionData.email = email + } + } + + return sessionData +} + + + + + +function DonationForm (props) { + const { + className, + stripe, + } = props + + const [errorState, setErrorState] = useState() + const currentUser = useSelector(withCurrentUserId(selectUserById)) + + const dispatch = useDispatch() + + const onSubmit = useCallback(async (data) => { + const sessionData = await preparePayload(data, currentUser) + + const response = await dispatch(createDonationSession(sessionData)) + const resError = getResponseError(response) + if (resError) { + setErrorState(resError) + return + } + + try { + await stripe.redirectToCheckout({ sessionId: response.payload.data.id }) + } catch (redirectError) { + setErrorState({ + detail: redirectError.message, + }) + } + }, [currentUser, dispatch, stripe]) + + const { Form, canSubmit, state } = useForm({ data: formData, onSubmit }) + + + + const finalAmount = canSubmit && getMoney(getAmount(state.amountPreset, state.amount), state.currency) + + return ( + <> + <DonationErrorBox error={errorState} /> + <Form className={['donate-form compact', className]}> + <CurrencyRadioFieldset + required + id="DonationCurrency" + label="Select your currency" + name="currency" /> + + { + state.currency !== '' && ( + <AmountPresetRadioFieldset + required + currency={state.currency} + id="DonationAmountPreset" + label="Select your amount" + name="amountPreset" /> + ) + } + { + state.amountPreset === 'custom' && ( + <CurrencyFieldset + required + id="DonationAmount" + label="Input your custom amount" + name="amount" /> + ) + } + + <div className="fieldset"> + <button + className="green" + disabled={!canSubmit} + type="submit"> + {'Donate'} + {Boolean(canSubmit) && ` ${finalAmount}`} + </button> + </div> + + <StripeBadge className="donation-info-badge" /> + </Form> + </> + ) +} + +DonationForm.propTypes = { + className: PropTypes.string, + stripe: PropTypes.object, +} + + + + + +export default DonationForm diff --git a/src/components/Forms/DonationForm/index.js b/src/components/Forms/DonationForm/index.js new file mode 100644 index 000000000..59b408d13 --- /dev/null +++ b/src/components/Forms/DonationForm/index.js @@ -0,0 +1,2 @@ +export { default } from './DonationForm' +export { default as DonationErrorBox } from './DonationErrorBox' diff --git a/src/components/Forms/EpicNominationForm/NominateRatForm.js b/src/components/Forms/EpicNominationForm/NominateRatForm.js index b18ea5ecd..c70d21a15 100644 --- a/src/components/Forms/EpicNominationForm/NominateRatForm.js +++ b/src/components/Forms/EpicNominationForm/NominateRatForm.js @@ -2,10 +2,10 @@ import { useCallback, useEffect, useState } from 'react' import InputFieldset from '~/components/Fieldsets/InputFieldset' import RatTagsInput from '~/components/RatTagsInput' -import getRatTag from '~/helpers/getRatTag' -import { isValidUuidV4 } from '~/helpers/uuidValidator' import useCreateEpicApi from '~/hooks/frapi/useCreateEpicApi' import useForm from '~/hooks/useForm' +import getRatTag from '~/util/getRatTag' +import { isValidUuidV4 } from '~/util/string/uuidValidator' import styles from './NominateRatForm.module.scss' diff --git a/src/components/Forms/EpicNominationForm/NominateRescueForm.js b/src/components/Forms/EpicNominationForm/NominateRescueForm.js index cce1730a3..038b86053 100644 --- a/src/components/Forms/EpicNominationForm/NominateRescueForm.js +++ b/src/components/Forms/EpicNominationForm/NominateRescueForm.js @@ -3,12 +3,12 @@ import { useEffect, useCallback } from 'react' import InputFieldset from '~/components/Fieldsets/InputFieldset' import RescueIdFieldset from '~/components/Fieldsets/RescueIdFieldset' import RescueDetail from '~/components/Forms/EpicNominationForm/RescueDetail' -import getValidityErrors from '~/helpers/getValidityErrors' import useCreateEpicApi from '~/hooks/frapi/useCreateEpicApi' import useSearchRescueApi from '~/hooks/frapi/useSearchRescueApi' import useForm from '~/hooks/useForm' import useSelectorWithProps from '~/hooks/useSelectorWithProps' import { selectRatsByRescueId, selectRescueById } from '~/store/selectors' +import getValidityErrors from '~/util/getValidityErrors' import styles from './NominateRescueForm.module.scss' diff --git a/src/components/Forms/EpicNominationForm/RescueDetail.js b/src/components/Forms/EpicNominationForm/RescueDetail.js index 60d025e15..4e7804806 100644 --- a/src/components/Forms/EpicNominationForm/RescueDetail.js +++ b/src/components/Forms/EpicNominationForm/RescueDetail.js @@ -1,8 +1,8 @@ import Link from 'next/link' -import { makePaperworkRoute } from '~/helpers/routeGen' import useSelectorWithProps from '~/hooks/useSelectorWithProps' import { selectRatsByRescueId } from '~/store/selectors' +import makePaperworkRoute from '~/util/router/makePaperworkRoute' import styles from './RescueDetail.module.scss' diff --git a/src/components/Forms/OAuthClientForm.js b/src/components/Forms/OAuthClientForm.js index 084054ec4..510dbb956 100644 --- a/src/components/Forms/OAuthClientForm.js +++ b/src/components/Forms/OAuthClientForm.js @@ -1,21 +1,20 @@ import PropTypes from 'prop-types' +import InputFieldset from '~/components/Fieldsets/InputFieldset' import useForm from '~/hooks/useForm' -import InputFieldset from '../Fieldsets/InputFieldset' - // Component Constants -const data = Object.freeze({ +const data = { type: 'clients', attributes: { name: '', redirectUri: '', }, -}) +} diff --git a/src/components/Forms/PasswordResetForm.js b/src/components/Forms/PasswordResetForm.js index 3315876fd..1a33f2791 100644 --- a/src/components/Forms/PasswordResetForm.js +++ b/src/components/Forms/PasswordResetForm.js @@ -1,35 +1,38 @@ +import NewPasswordFieldset from '~/components/Fieldsets/NewPasswordFieldset' import useForm from '~/hooks/useForm' -import dynamicNewPasswordFieldset from '../Fieldsets/NewPasswordFieldset' -const passwordFieldProps = { - required: true, - id: 'Password', - label: (<>{'New Password '}<small>{'This password will be used for both fuelrats.com and our IRC chat.'}</small></>), - name: 'attributes.password', -} - +const passwordLabel = ( + <> + {'New Password '} + <small> + {'This password will be used for both fuelrats.com and our IRC chat.'} + </small> + </> +) -const NewPasswordFieldset = dynamicNewPasswordFieldset(passwordFieldProps) - -const data = Object.freeze({ +const data = { type: 'resets', attributes: { password: '', }, -}) +} function PasswordResetForm ({ onSubmit }) { const { Form, canSubmit, submitting } = useForm({ data, onSubmit }) return ( <Form> - <NewPasswordFieldset {...passwordFieldProps} /> + <NewPasswordFieldset + required + id="Password" + label={passwordLabel} + name="attributes.password" /> <menu type="toolbar"> <div className="primary position-vertical"> diff --git a/src/components/Forms/RegistrationForm/RegistrationForm.js b/src/components/Forms/RegistrationForm/RegistrationForm.js index e5a289050..c77c6afc7 100644 --- a/src/components/Forms/RegistrationForm/RegistrationForm.js +++ b/src/components/Forms/RegistrationForm/RegistrationForm.js @@ -1,7 +1,7 @@ import BooleanRadioFieldset from '~/components/Fieldsets/BooleanRadioFieldset' import CMDRFieldset from '~/components/Fieldsets/CMDRFieldset' import IRCNickFieldset from '~/components/Fieldsets/IRCNickFieldset' -import dynamicNewPasswordFieldset from '~/components/Fieldsets/NewPasswordFieldset' +import NewPasswordFieldset from '~/components/Fieldsets/NewPasswordFieldset/NewPasswordFieldset' import PlatformFieldset from '~/components/Fieldsets/PlatformFieldset' import NewEmailFieldset from '~/components/Fieldsets/RegistrationEmailFieldset' import TermsFieldset from '~/components/Fieldsets/TermsFieldset' @@ -11,13 +11,13 @@ import useForm from '~/hooks/useForm' -const data = Object.freeze({ +const data = { type: 'registrations', attributes: {}, meta: { termsApproved: false, }, -}) +} const labels = { email: 'Email', @@ -49,16 +49,6 @@ const labels = { platform: 'What platform is your CMDR on?', } -const passwordFieldProps = { - required: true, - id: 'Password', - label: labels.password, - name: 'attributes.password', -} - -const NewPasswordFieldset = dynamicNewPasswordFieldset(passwordFieldProps) - - function RegistrationForm ({ onSubmit }) { const { Form, canSubmit, submitting, state } = useForm({ data, onSubmit }) @@ -72,7 +62,11 @@ function RegistrationForm ({ onSubmit }) { label={labels.email} name="attributes.email" /> - <NewPasswordFieldset {...passwordFieldProps} /> + <NewPasswordFieldset + required + id="Password" + label={labels.password} + name="attributes.password" /> <IRCNickFieldset required diff --git a/src/components/FrontPageNotice/FrontPageNotice.js b/src/components/FrontPageNotice/FrontPageNotice.js index 3ed39f2a8..f41fd3345 100644 --- a/src/components/FrontPageNotice/FrontPageNotice.js +++ b/src/components/FrontPageNotice/FrontPageNotice.js @@ -1,7 +1,8 @@ import Image from 'next/image' import PropTypes from 'prop-types' -import { makePaperworkRoute } from '~/helpers/routeGen' +import makePaperworkRoute from '~/util/router/makePaperworkRoute' + import AuthDependantLink from '../AuthDependantLink' import styles from './FrontPageNotice.module.scss' diff --git a/src/components/Header/Header.js b/src/components/Header/Header.js index b1b677700..f9023f786 100644 --- a/src/components/Header/Header.js +++ b/src/components/Header/Header.js @@ -1,13 +1,11 @@ -/* globals $IS_DEVELOPMENT:false, $IS_STAGING:false, $BUILD_COMMIT_SHORT:false */ - import { FontAwesomeIcon } from '@fortawesome/react-fontawesome' import Link from 'next/link' import { useCallback, useRef } from 'react' import { useSelector } from 'react-redux' -import { makeBlogRoute } from '~/helpers/routeGen' import useSelectorWithProps from '~/hooks/useSelectorWithProps' import { selectCurrentUserHasScope, selectSession } from '~/store/selectors' +import makeBlogRoute from '~/util/router/makeBlogRoute' import Brand from '../../../public/static/svg/brand.svg' import { Nav, NavUl, NavLink, SubNav } from '../Nav' @@ -18,8 +16,6 @@ import SocialIcon from './SocialIcon' // Component constants -const IS_DEV_OR_STAGING = $IS_DEVELOPMENT || $IS_STAGING -const BUILD_COMMIT_SHORT = $BUILD_COMMIT_SHORT @@ -131,10 +127,10 @@ function Header () { </NavLink> { - IS_DEV_OR_STAGING && ( + (!$$BUILD.isProduction) && ( <NavLink className="button link" href="/version"> <FontAwesomeIcon fixedWidth icon="code-branch" /> - {BUILD_COMMIT_SHORT} + {$$BUILD.commitShort} </NavLink> ) } diff --git a/src/components/infoBubble/InfoBubble.js b/src/components/InfoBubble/InfoBubble.js similarity index 100% rename from src/components/infoBubble/InfoBubble.js rename to src/components/InfoBubble/InfoBubble.js diff --git a/src/components/infoBubble/InfoBubble.module.scss b/src/components/InfoBubble/InfoBubble.module.scss similarity index 100% rename from src/components/infoBubble/InfoBubble.module.scss rename to src/components/InfoBubble/InfoBubble.module.scss diff --git a/src/components/infoBubble/index.js b/src/components/InfoBubble/index.js similarity index 100% rename from src/components/infoBubble/index.js rename to src/components/InfoBubble/index.js diff --git a/src/components/InlineEditSpan.js b/src/components/InlineEditSpan.js index a84d87464..1f1597dcc 100644 --- a/src/components/InlineEditSpan.js +++ b/src/components/InlineEditSpan.js @@ -1,4 +1,4 @@ -function InlineEditor ({ +function InlineEditSpan ({ canEdit, className, inputClassName, @@ -24,4 +24,4 @@ function InlineEditor ({ -export default InlineEditor +export default InlineEditSpan diff --git a/src/components/JsonEditor/JsonEditor.js b/src/components/JsonEditor/JsonEditor.js new file mode 100644 index 000000000..81ed06f01 --- /dev/null +++ b/src/components/JsonEditor/JsonEditor.js @@ -0,0 +1,47 @@ +import PropTypes from 'prop-types' + +import JsonObject from '~/components/JsonEditor/JsonObject' +import useForm from '~/hooks/useForm' + +import styles from './JsonEditor.module.scss' + + + + +// Component Constants + + + + + +function JsonEditor (props) { + const { + className, + data, + } = props + + const { Form, state } = useForm({ data }) + + return ( + <> + <Form className={[styles.jsonEditor, className]}> + <JsonObject name="object" node={data} /> + </Form> + <br /> + <pre> + {JSON.stringify(state, null, ' ')} + </pre> + </> + ) +} + +JsonEditor.propTypes = { + className: PropTypes.string, + data: PropTypes.object.isRequired, +} + + + + + +export default JsonEditor diff --git a/src/components/JsonEditor/JsonEditor.module.scss b/src/components/JsonEditor/JsonEditor.module.scss new file mode 100644 index 000000000..f2cb0fadf --- /dev/null +++ b/src/components/JsonEditor/JsonEditor.module.scss @@ -0,0 +1,42 @@ +@import '../../scss/fonts'; +@import '../../scss/colors'; + +.jsonEditor { + padding: 0.5rem 1rem; + + border: 1px solid $black; + + background: rgba($grey, 0.25); +} + +.jsonObject { + padding: 0.5rem 0; +} + +.hasDepth { + padding-left: 2rem; +} + +.jsonField { + display: flex; + + flex-direction: row; + align-items: center; + + padding: 0.5rem 0 0.5rem 2rem; +} + +.fieldInput { + display: inline-block; +} + + +.fieldLabel { + display: inline-block; + position: relative; + + + padding-right: 0.75rem; + + font-family: $monospace-fonts; +} diff --git a/src/components/JsonEditor/JsonField.js b/src/components/JsonEditor/JsonField.js new file mode 100644 index 000000000..ad7cd4f81 --- /dev/null +++ b/src/components/JsonEditor/JsonField.js @@ -0,0 +1,43 @@ +import { useCallback } from 'react' + +import { useField } from '~/hooks/useForm' + +import styles from './JsonEditor.module.scss' + + + +export default function JsonField (props) { + const { + node, + name, + path, + depth, + } = props + const labelId = `${path}-label` + const inputId = `${path}-input` + + const { + value = '', + handleChange, + } = useField(path) + + const onChange = useCallback((event) => { + handleChange(event, event.target.value === '' ? node : undefined) + }, [handleChange, node]) + + return ( + <div className={['jsonField', styles.jsonField, { [styles.hasDepth]: depth > 0 }]}> + <label className={styles.fieldLabel} htmlFor={inputId} id={labelId} title={node}> + {`"${name}":`} + </label> + + <input + aria-labelledby={labelId} + className={styles.fieldInput} + id={inputId} + type="text" + value={value === node ? '' : value} + onChange={onChange} /> + </div> + ) +} diff --git a/src/components/JsonEditor/JsonObject.js b/src/components/JsonEditor/JsonObject.js new file mode 100644 index 000000000..6bb85c6c0 --- /dev/null +++ b/src/components/JsonEditor/JsonObject.js @@ -0,0 +1,47 @@ +import _isPlainObject from 'lodash/isPlainObject' + +import JsonField from '~/components/JsonEditor/JsonField' + +import styles from './JsonEditor.module.scss' + +function getComponent (value) { + if (_isPlainObject(value)) { + return JsonObject + } + + return JsonField +} + +export default function JsonObject (props) { + const { + node, + name, + depth = 0, + path, + hasNext, + } = props + const propDepth = depth + 1 + const nodeLength = Object.keys(node).length + return ( + <div className={['jsonObject', styles.jsonObject, { [styles.hasDepth]: depth > 0 }]}> + <span className={styles.fieldLabel}>{`${depth ? `"${name}": ` : ''}{`}</span> + { + Object.entries(node).map(([propName, propNode], idx) => { + const Component = getComponent(propNode) + const propPath = depth ? `${path}.${propName}` : propName + + return ( + <Component + key={propPath} + depth={propDepth} + hasNext={idx < nodeLength} + name={propName} + node={propNode} + path={propPath} /> + ) + }) + } + <span className={styles.fieldLabel}>{`}${hasNext ? ',' : ''}`}</span> + </div> + ) +} diff --git a/src/components/JsonEditor/index.js b/src/components/JsonEditor/index.js new file mode 100644 index 000000000..bb29dfa76 --- /dev/null +++ b/src/components/JsonEditor/index.js @@ -0,0 +1 @@ +export { default } from './JsonEditor' diff --git a/src/components/LoginModal/LoginModal.js b/src/components/LoginModal/LoginModal.js index bda70c81d..c4f26ff96 100644 --- a/src/components/LoginModal/LoginModal.js +++ b/src/components/LoginModal/LoginModal.js @@ -1,9 +1,11 @@ -import { connect } from '~/store' +import { useCallback } from 'react' + +import asModal, { ModalContent, useModalContext } from '~/components/asModal' +import useSelectorWithProps from '~/hooks/useSelectorWithProps' +import { connectState } from '~/store' import { setFlag } from '~/store/actions/flags' import { selectFlagByName } from '~/store/selectors' -import asModal, { ModalContent } from '../Modal' -import { useModalContext } from '../Modal/Modal' import styles from './LoginModal.module.scss' import LoginModalErrorBox from './LoginModalErrorBox' import LoginView from './LoginView' @@ -25,26 +27,21 @@ function LoginModal () { ) } -/* we're binding these via connect so they get passed to the modal wrapper */ -LoginModal.mapDispatchToProps = { - onClose: () => { - return setFlag('showLoginDialog', false) - }, -} -LoginModal.mapStateToProps = (state) => { - return { - isOpen: selectFlagByName(state, { name: 'showLoginDialog' }), - } -} -export default connect( - asModal( - { - className: 'login-dialog', - title: 'Login', - initialState: { view: 'login' }, - }, - )(LoginModal), -) + +export default connectState((_, dispatch) => { + return { + onClose: useCallback(() => { + return dispatch(setFlag('showLoginDialog', false)) + }, [dispatch]), + isOpen: useSelectorWithProps({ name: 'showLoginDialog' }, selectFlagByName), + } +})(asModal( + { + className: 'login-dialog', + title: 'Login', + initialState: { view: 'login' }, + }, +)(LoginModal)) diff --git a/src/components/LoginModal/LoginModalErrorBox.js b/src/components/LoginModal/LoginModalErrorBox.js index 6a9565573..390dc844c 100644 --- a/src/components/LoginModal/LoginModalErrorBox.js +++ b/src/components/LoginModal/LoginModalErrorBox.js @@ -5,12 +5,18 @@ import ApiErrorBox from '~/components/MessageBox/ApiErrorBox' function getErrorText (error) { // Bad verification tokens are returned as oauth errors, which is weird but okay. if (error.error_description === 'verify') { - return 'That verification token was incorrect. Please try again.' + return { + title: 'Invalid Token', + detail: 'That verification token was incorrect. Please try again.', + } } switch (error.status) { case 'verification_required': - return 'It appears you\'re logging in from a new device.\nA verification code has been sent to your email.' + return { + title: 'Verification Required', + detail: 'It appears you\'re logging in from a new device.\nA verification code has been sent to your email.', + } case 'unauthorized': return 'Invalid Username or Password' diff --git a/src/components/LoginModal/LoginView.js b/src/components/LoginModal/LoginView.js index 4cbe0ee6b..9359e5fdc 100644 --- a/src/components/LoginModal/LoginView.js +++ b/src/components/LoginModal/LoginView.js @@ -2,28 +2,29 @@ import Router from 'next/router' import { useCallback } from 'react' import { useDispatch } from 'react-redux' -import getResponseError from '~/helpers/getResponseError' +import { FooterPrimary, FooterSecondary, ModalFooter, useModalContext } from '~/components/asModal' +import EmailFieldset from '~/components/Fieldsets/EmailFieldset' +import PasswordFieldset from '~/components/Fieldsets/PasswordFieldset' +import SwitchFieldset from '~/components/Fieldsets/SwitchFieldset' import useForm from '~/hooks/useForm' import { login } from '~/store/actions/authentication' import { getUserProfile } from '~/store/actions/user' +import getResponseError from '~/util/getResponseError' -import EmailFieldset from '../Fieldsets/EmailFieldset' -import PasswordFieldset from '../Fieldsets/PasswordFieldset' -import SwitchFieldset from '../Fieldsets/SwitchFieldset' -import { FooterPrimary, FooterSecondary, ModalFooter } from '../Modal' -import { useModalContext } from '../Modal/Modal' import styles from './LoginModal.module.scss' + + // Component Constants -const initialData = Object.freeze({ +const initialData = { remember: false, data: { password: '', username: '', }, -}) +} function LoginView () { const [{ formData: data, onClose }, setModalState] = useModalContext() diff --git a/src/components/LoginModal/ResetView.js b/src/components/LoginModal/ResetView.js index 84fef395c..d1abb21fc 100644 --- a/src/components/LoginModal/ResetView.js +++ b/src/components/LoginModal/ResetView.js @@ -2,26 +2,25 @@ import PropTypes from 'prop-types' import { useCallback } from 'react' import { useDispatch } from 'react-redux' -import getResponseError from '~/helpers/getResponseError' +import { FooterPrimary, FooterSecondary, ModalFooter, useModalContext } from '~/components/asModal' +import EmailFieldset from '~/components/Fieldsets/EmailFieldset' +import MessageBox from '~/components/MessageBox' import useForm from '~/hooks/useForm' import useMountedState from '~/hooks/useMountedState' import { sendPasswordResetEmail } from '~/store/actions/authentication' +import getResponseError from '~/util/getResponseError' -import EmailFieldset from '../Fieldsets/EmailFieldset' -import MessageBox from '../MessageBox' -import { FooterPrimary, FooterSecondary, ModalFooter } from '../Modal' -import { useModalContext } from '../Modal/Modal' import styles from './LoginModal.module.scss' // Component Constants -const data = Object.freeze({ +const data = { type: 'resets', attributes: { email: '', }, -}) +} diff --git a/src/components/LoginModal/VerifyView.js b/src/components/LoginModal/VerifyView.js index 4b1497a50..a8594cd94 100644 --- a/src/components/LoginModal/VerifyView.js +++ b/src/components/LoginModal/VerifyView.js @@ -2,16 +2,15 @@ import PropTypes from 'prop-types' import { useCallback } from 'react' import { useDispatch } from 'react-redux' -import getResponseError from '~/helpers/getResponseError' +import { FooterPrimary, FooterSecondary, ModalFooter, useModalContext } from '~/components/asModal' +import LoginTokenFieldset from '~/components/Fieldsets/LoginTokenFieldset' import useForm from '~/hooks/useForm' import useMountedState from '~/hooks/useMountedState' import useUnloadConfirmation from '~/hooks/useUnloadConfirmation' import { login } from '~/store/actions/authentication' import { getUserProfile } from '~/store/actions/user' +import getResponseError from '~/util/getResponseError' -import LoginTokenFieldset from '../Fieldsets/LoginTokenFieldset' -import { FooterPrimary, FooterSecondary, ModalFooter } from '../Modal' -import { useModalContext } from '../Modal/Modal' import styles from './LoginModal.module.scss' diff --git a/src/components/MessageBox/ApiErrorBox.js b/src/components/MessageBox/ApiErrorBox.js index 36340ed74..bb9fe2bed 100644 --- a/src/components/MessageBox/ApiErrorBox.js +++ b/src/components/MessageBox/ApiErrorBox.js @@ -1,4 +1,6 @@ import PropTypes from 'prop-types' +import { useMemo } from 'react' +import { isValidElementType } from 'react-is' import MessageBox from './MessageBox' @@ -8,27 +10,60 @@ import MessageBox from './MessageBox' function ApiErrorBox (props) { const { - error, + error: rawError, renderError, ...messageProps } = props - if (!error) { + const error = useMemo( + () => { + if (!rawError) { + return undefined + } + + const renderedError = renderError?.(rawError) + + if (isValidElementType(renderedError)) { + // If rendered error is a valid renderable element, use it as the error detail with the base error's title. + // This includes all strings, functions, class components, and other react-specific objects. + // If a function is encountered here we also need to call it as a component. + return { + title: rawError.title, + detail: typeof renderedError === 'function' + ? (<renderedError />) + : renderedError, + } + } + + // Ensure return is never null here so we render the error box itself, even if the render function returned null. + return renderedError ?? { title: rawError.title } + }, + [ + renderError, + rawError, + ], + ) + + if (!error || error.ignore) { return null } return ( - <MessageBox {...messageProps}> + <MessageBox title={error.title} {...messageProps}> { - renderError?.(error) ?? ( + error.detail ?? ( <> {'An unknown error occurred while processing your request. \n Please contact us at '} <a href="mailto:support@fuelrats.com">{'support@fuelrats.com'}</a> { - error.id && ( + rawError.id && ( <> - {', and include this error ID in your email: \n'} - <code>{error.id}</code> + {', and include this error information in your email: \n'} + <pre> + {`"id": "${rawError.id}",\n`} + {`"error": "${rawError.status}",\n`} + {`"source": ${JSON.stringify(rawError.source, undefined, 2)}`} + </pre> </> ) } diff --git a/src/components/MessageBox/MessageBox.js b/src/components/MessageBox/MessageBox.js index 409bdbbee..7cbdd24ac 100644 --- a/src/components/MessageBox/MessageBox.js +++ b/src/components/MessageBox/MessageBox.js @@ -31,7 +31,7 @@ function MessageBox (props) { } return ( - <div className={[styles.message, styles[type], 'message', className]}> + <div className={[styles.message, styles[type], className]}> <FontAwesomeIcon className={styles.icon} icon={icon} @@ -46,9 +46,9 @@ function MessageBox (props) { </div> { footer && ( - <span className={styles.footer}> + <small className={styles.footer}> {footer} - </span> + </small> ) } </div> diff --git a/src/components/MessageBox/MessageBox.module.scss b/src/components/MessageBox/MessageBox.module.scss index a6208bc6d..e0fbd7bc7 100644 --- a/src/components/MessageBox/MessageBox.module.scss +++ b/src/components/MessageBox/MessageBox.module.scss @@ -2,6 +2,7 @@ .message { --message-color: #{$red}; + composes: message from global; position: relative; @@ -12,31 +13,40 @@ border: 1px solid var(--message-color); background: rgba($red, 0.15); +} + +.error { + --message-color: #{$red}; + composes: error from global; + + background: rgba($red, 0.15); +} + +.success { + --message-color: #{$green}; + composes: success from global; + + background: rgba($green, 0.15); +} + +.info { + --message-color: #{$blue}; + composes: info from global; + + background: rgba($blue, 0.15); +} + +.warn { + --message-color: #{$yellow}; + + composes: warn from global; - &.error { - --message-color: #{$red}; - background: rgba($red, 0.15); - } - - &.success { - --message-color: #{$green}; - background: rgba($green, 0.15); - } - - &.info { - --message-color: #{$blue}; - background: rgba($blue, 0.15); - } - - &.warn { - --message-color: #{$yellow}; - background: rgba($yellow, 0.15); - } + background: rgba($yellow, 0.15); } .icon { display: block; - position: fixed; + position: absolute; margin: 0.5rem 0 0 1rem; diff --git a/src/components/NProgress.js b/src/components/NProgress.js index c418d9795..538caaf25 100644 --- a/src/components/NProgress.js +++ b/src/components/NProgress.js @@ -1,5 +1,5 @@ import Router from 'next/router' -import NProgress from 'nprogress' +import NProgressLib from 'nprogress' import React from 'react' @@ -13,41 +13,21 @@ const minimumChangeTime = 250 -class NProgressReact extends React.Component { - /***************************************************************************\ - Class Properties - \***************************************************************************/ - +class NProgress extends React.Component { timer = null - - - - - /***************************************************************************\ - Private Methods - \***************************************************************************/ - _handleRouteChangeStart = () => { clearTimeout(this.timer) - this.timer = setTimeout(NProgress.start, minimumChangeTime) + this.timer = setTimeout(NProgressLib.start, minimumChangeTime) } _handleRouteChangeDone = () => { clearTimeout(this.timer) - NProgress.done() + NProgressLib.done() } - - - - - /***************************************************************************\ - Public Methods - \***************************************************************************/ - componentDidMount () { - NProgress.configure(this.props) + NProgressLib.configure(this.props) Router.events.on('routeChangeStart', this._handleRouteChangeStart) Router.events.on('routeChangeComplete', this._handleRouteChangeDone) @@ -64,11 +44,6 @@ class NProgressReact extends React.Component { return null } - - /***************************************************************************\ - Prop Properties - \***************************************************************************/ - static defaultProps = { minimum: 0.15, showSpinner: false, @@ -79,4 +54,4 @@ class NProgressReact extends React.Component { -export default NProgressReact +export default NProgress diff --git a/src/components/ProfileHeader/ProfileHeader.js b/src/components/ProfileHeader/ProfileHeader.js index cfe6c09c0..d6871be2e 100644 --- a/src/components/ProfileHeader/ProfileHeader.js +++ b/src/components/ProfileHeader/ProfileHeader.js @@ -1,160 +1,102 @@ -import React from 'react' +import { useCallback, useState } from 'react' +import { useSelector } from 'react-redux' -import { formatAsEliteDateTime } from '~/helpers/formatTime' -import { connect } from '~/store' +import useSelectorWithProps from '~/hooks/useSelectorWithProps' import { selectGroupsByUserId, selectUserById, selectDisplayRatByUserId, - selectAvatarByUserId, withCurrentUserId, selectCurrentUserHasScope, } from '~/store/selectors' +import formatAsEliteDateTime from '~/util/date/formatAsEliteDateTime' import ChangePasswordModal from '../ChangePasswordModal' import DisableProfileModal from '../DisableProfileModal' +import ProfileUserAvatar from '../ProfileUserAvatar' import UnverifiedUserBanner from './UnverifiedUserBanner' -@connect -class ProfileHeader extends React.Component { - /***************************************************************************\ - Class Properties - \***************************************************************************/ +function ProfileHeader () { + const [showChangePassword, setShowChangePassword] = useState(false) + const [showDisableProfile, setShowDisableProfile] = useState(false) - state = { - showChangePassword: false, - showDisableProfile: false, - } - - - - - - /***************************************************************************\ - Private Methods - \***************************************************************************/ - - _renderUserGroups = () => { - return ( - this.props.groups && ( - this.props.groups.map((group) => { - return ( - <li key={group.id} className={['badge info', group.attributes.name]}> - {group.attributes.name} - </li> - ) - }))) - } - - _handleToggleChangePassword = () => { - this.setState((state) => { - return { showChangePassword: !state.showChangePassword } + const handleToggleChangePassword = useCallback(() => { + setShowChangePassword((state) => { + return !state }) - } + }, []) - _handleToggleDisableProfile = () => { - this.setState((state) => { - return { showDisableProfile: !state.showDisableProfile } + const handleToggleDisableProfile = useCallback(() => { + setShowDisableProfile((state) => { + return !state }) - } - - - - /***************************************************************************\ - Public Methods - \***************************************************************************/ - - render () { - const { - showChangePassword, - showDisableProfile, - } = this.state - const { - displayRat, - userAvatar, - userIsVerified, - } = this.props - - const attributes = this.props.user.attributes || {} - - const { - createdAt, - email, - } = attributes - - return ( - <> - <div className="profile-header"> - { - !userIsVerified && ( - <UnverifiedUserBanner /> - ) - } - <div className="user-avatar"> - <div className="avatar xl"><img alt="User's avatar" src={userAvatar} /></div> - </div> - <div className="profile-basic-info"> - <div className="rat-name"> - {displayRat.attributes.name} - </div> - <div className="email"> - <span className="label">{'E-Mail: '}</span> - <span>{email}</span> - </div> - <div className="member-since"> - <span className="label">{'Date joined: '}</span> - <span>{formatAsEliteDateTime(createdAt)}</span> - </div> + }, []) + + const groups = useSelector(withCurrentUserId(selectGroupsByUserId)) + const displayRat = useSelector(withCurrentUserId(selectDisplayRatByUserId)) + const userIsVerified = useSelectorWithProps({ scope: 'users.verified' }, selectCurrentUserHasScope) + const { createdAt, email } = useSelector(withCurrentUserId(selectUserById))?.attributes ?? {} + + return ( + <> + <div className="profile-header"> + { + !userIsVerified && ( + <UnverifiedUserBanner /> + ) + } + <ProfileUserAvatar canEdit /> + <div className="profile-basic-info"> + <div className="rat-name"> + {displayRat?.attributes?.name ?? email.split('@')[0]} </div> - <div className="profile-user-badges"> - <ul> - {this._renderUserGroups()} - </ul> + <div className="email"> + <span className="label">{'E-Mail: '}</span> + <span>{email}</span> </div> - <div className="profile-controls"> - <button - type="button" - onClick={this._handleToggleChangePassword}> - {'Change Password'} - </button> - <button - type="button" - onClick={this._handleToggleDisableProfile}> - {'Disable Profile'} - </button> + <div className="member-since"> + <span className="label">{'Date joined: '}</span> + <span>{formatAsEliteDateTime(createdAt)}</span> </div> </div> - <ChangePasswordModal - isOpen={showChangePassword} - onClose={this._handleToggleChangePassword} /> - <DisableProfileModal - isOpen={showDisableProfile} - onClose={this._handleToggleDisableProfile} /> - </> - ) - } - - - - - - /***************************************************************************\ - Redux Properties - \***************************************************************************/ - - static mapStateToProps = (state) => { - return { - groups: withCurrentUserId(selectGroupsByUserId)(state), - user: withCurrentUserId(selectUserById)(state), - userAvatar: withCurrentUserId(selectAvatarByUserId)(state, { size: 170 }), - displayRat: withCurrentUserId(selectDisplayRatByUserId)(state), - userIsVerified: selectCurrentUserHasScope(state, { scope: 'users.verified' }), - } - } + <div className="profile-user-badges"> + <ul> + { + groups?.map((group) => { + return ( + <li key={group.id} className={['badge info', group.attributes.name]}> + {group.attributes.name} + </li> + ) + }) + } + </ul> + </div> + <div className="profile-controls"> + <button + type="button" + onClick={handleToggleChangePassword}> + {'Change Password'} + </button> + <button + type="button" + onClick={handleToggleDisableProfile}> + {'Disable Profile'} + </button> + </div> + </div> + <ChangePasswordModal + isOpen={showChangePassword} + onClose={handleToggleChangePassword} /> + <DisableProfileModal + isOpen={showDisableProfile} + onClose={handleToggleDisableProfile} /> + </> + ) } diff --git a/src/components/ProfileHeader/UnverifiedUserBanner.js b/src/components/ProfileHeader/UnverifiedUserBanner.js index 6a1a4fc03..51b7b1f70 100644 --- a/src/components/ProfileHeader/UnverifiedUserBanner.js +++ b/src/components/ProfileHeader/UnverifiedUserBanner.js @@ -2,9 +2,9 @@ import { FontAwesomeIcon } from '@fortawesome/react-fontawesome' import { useCallback, useState } from 'react' import { useDispatch, useSelector } from 'react-redux' -import getResponseError from '~/helpers/getResponseError' import { resendVerificationEmail } from '~/store/actions/verify' import { selectUserById, withCurrentUserId } from '~/store/selectors' +import getResponseError from '~/util/getResponseError' import MessageBox from '../MessageBox' import ApiErrorBox from '../MessageBox/ApiErrorBox' diff --git a/src/components/ProfileUserAvatar/ProfileUserAvatar.js b/src/components/ProfileUserAvatar/ProfileUserAvatar.js new file mode 100644 index 000000000..0e92212f7 --- /dev/null +++ b/src/components/ProfileUserAvatar/ProfileUserAvatar.js @@ -0,0 +1,86 @@ +import { FontAwesomeIcon } from '@fortawesome/react-fontawesome' +import Image from 'next/image' +import PropTypes from 'prop-types' +import { useState, useCallback, useMemo } from 'react' + +import useSelectorWithProps from '~/hooks/useSelectorWithProps' +import { selectAvatarUrlByUserId, withCurrentUserId } from '~/store/selectors' + +import UploadAvatarModal from '../UploadAvatarModal' +import styles from './ProfileUserAvatar.module.scss' + +const faIconLgSize = 100 +const faIconMdSize = 64 + +function ProfileUserAvatar ({ + canEdit, + size = 170, +}) { + const userAvatarUrl = useSelectorWithProps({ size }, withCurrentUserId(selectAvatarUrlByUserId)) + + const [showUploadAvatar, setShowUploadAvatar] = useState(false) + + const handleToggleUploadAvatar = useCallback(() => { + setShowUploadAvatar((prevState) => { + return !prevState + }) + }, []) + + const handleAvatarModalClose = useCallback(() => { + return setShowUploadAvatar(false) + }, []) + + const sizeMeta = useMemo(() => { + let icon = undefined + + if (size >= faIconLgSize) { + icon = '3x' + } else if (size >= faIconMdSize) { + icon = '2x' + } + + return { + style: { + width: `${size}px`, + height: `${size}px`, + }, + icon, + } + }, [size]) + + return ( + <> + <div className={styles.userAvatar}> + <div className="avatar" style={sizeMeta.style}> + <Image + unoptimized + alt="User's avatar" + height={size} + src={userAvatarUrl} + width={size} /> + { + canEdit && ( + <button + aria-label="Edit your avatar" + className={[styles.userAvatarEdit, styles.editFace]} + type="button" + onClick={handleToggleUploadAvatar}> + <FontAwesomeIcon icon="upload" size={sizeMeta.icon} /> + </button> + ) + } + </div> + </div> + <UploadAvatarModal + isOpen={showUploadAvatar} + onClose={handleAvatarModalClose} /> + </> + ) +} + +ProfileUserAvatar.propTypes = { + canEdit: PropTypes.bool, + size: PropTypes.number, +} + +export default ProfileUserAvatar diff --git a/src/components/ProfileUserAvatar/ProfileUserAvatar.module.scss b/src/components/ProfileUserAvatar/ProfileUserAvatar.module.scss new file mode 100644 index 000000000..fda9c053c --- /dev/null +++ b/src/components/ProfileUserAvatar/ProfileUserAvatar.module.scss @@ -0,0 +1,41 @@ +@import '../../scss/colors'; + +.userAvatar { + grid-area: avatar; + + :global(.avatar) { + position: relative; + } +} + +.userAvatarEdit { + --background-color: #{rgba($black, 0.7)}; + --background-color-hover: var(--background-color); + backdrop-filter: blur(5px); + + position: absolute; + top: 0; + left: 0; + z-index: 1; + + width: 100%; + height: 100%; + margin: 0; + padding: 0; + + border: 0.2rem solid $red; + border-radius: 50%; + + opacity: 0; + transition: opacity 0.2s; + + cursor: pointer; + + &:hover { + opacity: 1; + } +} + +.editFace svg { + color: $red; +} diff --git a/src/components/ProfileUserAvatar/index.js b/src/components/ProfileUserAvatar/index.js new file mode 100644 index 000000000..4b760aec5 --- /dev/null +++ b/src/components/ProfileUserAvatar/index.js @@ -0,0 +1 @@ +export { default } from './ProfileUserAvatar' diff --git a/src/components/RadioInput/RadioInput.js b/src/components/RadioInput/RadioInput.js index bcb8b3b05..b137459e3 100644 --- a/src/components/RadioInput/RadioInput.js +++ b/src/components/RadioInput/RadioInput.js @@ -36,9 +36,9 @@ function RadioInput (props) { options.map((option) => { return ( <OptionElement - {...option} key={option.value} - checked={option.value === value ?? option.checked} + {...option} + checked={option.value === (value ?? option.checked)} disabled={disabled ?? option.disabled} name={name} onChange={handleOptionClick} /> diff --git a/src/components/RatCard/DefaultRatButton.js b/src/components/RatCard/DefaultRatButton.js index cb5ed3573..d57d05ece 100644 --- a/src/components/RatCard/DefaultRatButton.js +++ b/src/components/RatCard/DefaultRatButton.js @@ -1,8 +1,9 @@ import { FontAwesomeIcon } from '@fortawesome/react-fontawesome' import PropTypes from 'prop-types' -import React from 'react' +import { useCallback } from 'react' +import { useDispatch, useSelector } from 'react-redux' -import { connect } from '~/store' +import { updateUser } from '~/store/actions/user' import { selectCurrentUserId, selectDisplayRatIdByUserId, @@ -13,36 +14,20 @@ import { -@connect -class DefaultRatButton extends React.Component { - /***************************************************************************\ - Class Properties - \***************************************************************************/ +function DefaultRatButton (props) { + const { + ratId, + onClick, + onUpdate, + } = props + const dispatch = useDispatch() + const userId = useSelector(selectCurrentUserId) + const isDefaultRat = useSelector(withCurrentUserId(selectDisplayRatIdByUserId)) === ratId - state = {} + const handleClick = useCallback(async (event) => { + await onClick?.(event) - - - - - /***************************************************************************\ - Private Methods - \***************************************************************************/ - - _handleClick = async (event) => { - const { - updateUser, - userId, - ratId, - onClick, - onUpdate, - } = this.props - - if (onClick) { - await onClick(event) - } - - const response = await updateUser({ + const response = await dispatch(updateUser({ id: userId, attributes: {}, relationships: { @@ -53,87 +38,29 @@ class DefaultRatButton extends React.Component { }, }, }, - }) + })) if (onUpdate) { onUpdate(response) } - } - - - - - - /***************************************************************************\ - Public Methods - \***************************************************************************/ - - render () { - const { - isDefaultRat, - } = this - return ( - <button - className="inline display-rat-button" - disabled={isDefaultRat} - title={isDefaultRat ? 'This rat represents you.' : 'Use this rat to represent you. (Display Rat)'} - type="button" - onClick={this._handleClick}> - <FontAwesomeIcon fixedWidth icon="id-card-alt" size="lg" /> - </button> - ) - } - - - - - - /***************************************************************************\ - Getters - \***************************************************************************/ - - get isDefaultRat () { - const { - displayRatId, - ratId, - } = this.props - - return displayRatId === ratId - } - - - - /***************************************************************************\ - Redux Properties - \***************************************************************************/ - - static mapDispatchToProps = ['updateUser'] - - static mapStateToProps = (state) => { - return { - userId: selectCurrentUserId(state), - displayRatId: withCurrentUserId(selectDisplayRatIdByUserId)(state), - } - } - - - - - - /***************************************************************************\ - Prop Definitions - \***************************************************************************/ - - static defaultProps = {} + }, [dispatch, onClick, onUpdate, ratId, userId]) + + return ( + <button + className="inline display-rat-button" + disabled={isDefaultRat} + title={isDefaultRat ? 'This rat represents you.' : 'Use this rat to represent you. (Display Rat)'} + type="button" + onClick={handleClick}> + <FontAwesomeIcon fixedWidth icon="id-card-alt" size="lg" /> + </button> + ) +} - static propTypes = { - displayRatId: PropTypes.string, - onClick: PropTypes.func, - onUpdate: PropTypes.func, - ratId: PropTypes.string.isRequired, - updateUser: PropTypes.func, - userId: PropTypes.string, - } +DefaultRatButton.propTypes = { + onClick: PropTypes.func, + onUpdate: PropTypes.func, + ratId: PropTypes.string.isRequired, } diff --git a/src/components/RatCard/RatCard.js b/src/components/RatCard/RatCard.js index 6f480b88e..4c9bfacda 100644 --- a/src/components/RatCard/RatCard.js +++ b/src/components/RatCard/RatCard.js @@ -1,10 +1,12 @@ import { isError } from 'flux-standard-action' import PropTypes from 'prop-types' import React from 'react' +import { useSelector } from 'react-redux' // import { FontAwesomeIcon } from '@fortawesome/react-fontawesome' -import { formatAsEliteDate } from '~/helpers/formatTime' -import { connect } from '~/store' +import useSelectorWithProps from '~/hooks/useSelectorWithProps' +import { connectState } from '~/store' +import { deleteRat, updateRat } from '~/store/actions/rats' import { selectRatById, selectUserById, @@ -12,6 +14,7 @@ import { withCurrentUserId, selectRatStatisticsById, } from '~/store/selectors' +import formatAsEliteDate from '~/util/date/formatAsEliteDate' import CardControls from '../CardControls' import InlineEditSpan from '../InlineEditSpan' @@ -22,15 +25,9 @@ import DefaultRatButton from './DefaultRatButton' -@connect class RatCard extends React.Component { - /***************************************************************************\ - Class Properties - \***************************************************************************/ - state = { deleteConfirm: false, - shipsExpanded: false, changes: {}, validity: { name: false, @@ -42,23 +39,10 @@ class RatCard extends React.Component { - - /***************************************************************************\ - Private Methods - \***************************************************************************/ - _handleDelete = () => { this.setState({ deleteConfirm: true }) } - _handleExpandShips = () => { - this.setState(({ shipsExpanded }) => { - return { - shipsExpanded: !shipsExpanded, - } - }) - } - _handleNameChange = ({ target: { value } }) => { this.setChanges( (_, props) => { @@ -77,9 +61,9 @@ class RatCard extends React.Component { } = this.state const { - updateRat, - deleteRat, + dispatch, rat, + user, } = this.props if (deleteConfirm) { @@ -88,16 +72,16 @@ class RatCard extends React.Component { submitting: 'delete', }) - deleteRat(rat) + dispatch(deleteRat(user, rat)) return } this.setState({ submitting: true }) - await updateRat({ + await dispatch(updateRat({ id: rat.id, attributes: changes, - }) + })) this.setState({ changes: {}, @@ -147,20 +131,17 @@ class RatCard extends React.Component { } } - _handleOdysseySwitch = async () => { - await this.props.updateRat({ + _handleOdysseySwitch = () => { + return this.props.dispatch(updateRat({ id: this.props.rat.id, attributes: { odyssey: !this.props.rat.attributes.odyssey, }, - }) + })) } - /***************************************************************************\ - Public Methods - \***************************************************************************/ render () { const { @@ -171,7 +152,6 @@ class RatCard extends React.Component { const { className, rat, - // ships, statistics, } = this.props @@ -179,7 +159,6 @@ class RatCard extends React.Component { deleteConfirm, editing, changes, - shipsExpanded, submitting, } = this.state @@ -194,7 +173,7 @@ class RatCard extends React.Component { return ( <div - className={['panel rat-panel', { expanded: shipsExpanded, editing, submitting }, className]} + className={['panel rat-panel', { editing, submitting }, className]} data-loader-text={submitting ? submitText : null}> <header> <div> @@ -224,10 +203,10 @@ class RatCard extends React.Component { rat.attributes.platform === 'pc' && ( <div className="panel-content"> <Switch - async checked={rat.attributes.odyssey} - label="Owns Odyssey" - onClick={this._handleOdysseySwitch} /> + id={`OdysseySwitch-${rat.id}`} + label="Using Odyssey" + onChange={this._handleOdysseySwitch} /> </div> ) } @@ -242,16 +221,6 @@ class RatCard extends React.Component { {createdAt} </small> </div> - {/* Disabled until ships are fully implemented - <div className="rat-ships-expander"> - <button - className="inline ship-expand-button" - type="button" - onClick={this._handleExpandShips}> - <FontAwesomeIcon icon="angle-down" fixedWidth /> - </button> - </div> - */} <CardControls canDelete={userHasMultipleRats && !ratIsDisplayRat && (statistics && !statistics?.attributes.firstLimpet)} canSubmit={this.canSubmit} @@ -284,12 +253,6 @@ class RatCard extends React.Component { - - - /***************************************************************************\ - Getters - \***************************************************************************/ - get ratIsDisplayRat () { return this.props.userDisplayRatId === this.props.rat.id } @@ -315,43 +278,13 @@ class RatCard extends React.Component { return hasChanges && isValid } - - - /***************************************************************************\ - Redux Properties - \***************************************************************************/ - - static mapDispatchToProps = [ - 'deleteRat', - 'updateRat', - ] - - - static mapStateToProps = (state, props) => { - return { - user: withCurrentUserId(selectUserById)(state), - userDisplayRatId: withCurrentUserId(selectDisplayRatIdByUserId)(state), - rat: selectRatById(state, props), - statistics: selectRatStatisticsById(state, props), - } - } - - - - - - /***************************************************************************\ - Prop Definitions - \***************************************************************************/ - static propTypes = { className: PropTypes.string, - deleteRat: PropTypes.func, + dispatch: PropTypes.func.isRequired, rat: PropTypes.object, // eslint-disable-next-line react/no-unused-prop-types -- ratId is used in state mapping ratId: PropTypes.string.isRequired, statistics: PropTypes.object, - updateRat: PropTypes.func, user: PropTypes.object, userDisplayRatId: PropTypes.string, } @@ -361,4 +294,11 @@ class RatCard extends React.Component { -export default RatCard +export default connectState((props) => { + return { + rat: useSelectorWithProps(props, selectRatById), + statistics: useSelectorWithProps(props, selectRatStatisticsById), + user: useSelector(withCurrentUserId(selectUserById)), + userDisplayRatId: useSelector(withCurrentUserId(selectDisplayRatIdByUserId)), + } +})(RatCard) diff --git a/src/components/RatCard/RatShipLine.js b/src/components/RatCard/RatShipLine.js deleted file mode 100644 index 543eda191..000000000 --- a/src/components/RatCard/RatShipLine.js +++ /dev/null @@ -1,83 +0,0 @@ -import React from 'react' - -import { connect } from '~/store' - - - - - -// Component Constants - - - - - -@connect -class RatShipLine extends React.Component { - /***************************************************************************\ - Class Properties - \***************************************************************************/ - - // state = { - // editMode: false, - // changes: {}, - // } - - - - - - /***************************************************************************\ - Private Methods - \***************************************************************************/ - - - - - - /***************************************************************************\ - Public Methods - \***************************************************************************/ - - render () { - return ( - <div /> - ) - } - - - - - - /***************************************************************************\ - Getters - \***************************************************************************/ - - - - - - /***************************************************************************\ - Redux Properties - \***************************************************************************/ - - static mapDispatchToProps = ['updateShip', 'deleteShip'] - - - - - - /***************************************************************************\ - Prop Definitions - \***************************************************************************/ - - // static propTypes = { - // ship: PropTypes.object.isRequired, - // } -} - - - - - -export default RatShipLine diff --git a/src/components/RatLeaderboardTable.js b/src/components/RatLeaderboardTable.js index b512b4598..420bb48dc 100644 --- a/src/components/RatLeaderboardTable.js +++ b/src/components/RatLeaderboardTable.js @@ -1,9 +1,10 @@ import _debounce from 'lodash/debounce' import React from 'react' +import { useSelector } from 'react-redux' import ReactTable from 'react-table-6' -import { createStructuredSelector } from 'reselect' -import { connect } from '~/store' +import { connectState } from '~/store' +import { getLeaderboard } from '~/store/actions/statistics' import { selectLeaderboard, selectLeaderboardStatistics, @@ -21,23 +22,71 @@ import RescueAchievementIcon from './Leaderboard/RescueAchievementIcon' const FETCH_DATA_DEBOUNCE = 500 const DEFAULT_PAGE_SIZE = 25 - - - - -@connect +const columns = [ + { + accessor: 'attributes.preferredName', + className: 'name', + Header: 'Name', + headerClassName: 'name-header', + id: 'name', + minWidth: 125, + }, + { + accessor: 'attributes.rescueCount', + className: 'rescues', + Header: 'Rescues', + headerClassName: 'rescues-header', + id: 'rescues', + filterable: false, + minWidth: 60, + maxWidth: 80, + }, + { + accessor: (datum) => { + return datum + }, + className: 'badges', + Header: 'Badges', + headerClassName: 'badges-header', + id: 'badges', + minWidth: 150, + maxWidth: 200, + filterable: false, + Cell: ({ value }) => { + const { + codeRedCount, + joinedAt, + rescueCount, + } = value.attributes + + return ( + <div className="badge-list"> + <RescueAchievementIcon className="size-32 fixed" rescueCount={rescueCount} /> + <CodeRedIcon className="size-32 fixed" codeRedCount={codeRedCount} /> + <FirstYearIcon className="size-32 fixed" createdAt={joinedAt} /> + </div> + ) + }, + }, +] + + + + +@connectState(() => { + return { + statistics: useSelector(selectLeaderboardStatistics), + entries: useSelector(selectLeaderboard), + } +}) class RatLeaderboardTable extends React.Component { - /***************************************************************************\ - Class Properties - \***************************************************************************/ - state = { loading: true, } _fetchData = async (state) => { - await this.props.getLeaderboard({ + await this.props.dispatch(getLeaderboard({ filter: { name: state.filtered.length > 0 ? `%${state.filtered[0]?.value}%` : undefined, }, @@ -45,7 +94,7 @@ class RatLeaderboardTable extends React.Component { offset: state.page * state.pageSize, limit: state.pageSize, }, - }) + })) this.setState({ loading: false }) } @@ -60,18 +109,13 @@ class RatLeaderboardTable extends React.Component { this._queueFetchData(state) } - - /***************************************************************************\ - Public Methods - \***************************************************************************/ - async componentDidMount () { if (!this.props.statistics?.page) { // page would be undefined if we haven't grabbed the leaderboard yet. - await this.props.getLeaderboard({ + await this.props.dispatch(getLeaderboard({ page: { limit: DEFAULT_PAGE_SIZE, }, - }) + })) } this.setState({ loading: false }) @@ -93,7 +137,7 @@ class RatLeaderboardTable extends React.Component { filterable manual className="rat-leaderboard -striped" - columns={this.columns} + columns={columns} data={entries ?? []} loading={loading} pages={statistics.lastPage} @@ -103,75 +147,6 @@ class RatLeaderboardTable extends React.Component { </section> ) } - - - - - - /***************************************************************************\ - Getters - \***************************************************************************/ - - get columns () { - if (!this._columns) { - this._columns = [ - { - accessor: 'attributes.preferredName', - className: 'name', - Header: 'Name', - headerClassName: 'name-header', - id: 'name', - minWidth: 125, - }, - { - accessor: 'attributes.rescueCount', - className: 'rescues', - Header: 'Rescues', - headerClassName: 'rescues-header', - id: 'rescues', - filterable: false, - minWidth: 60, - maxWidth: 80, - }, - { - accessor: (datum) => { - return datum - }, - className: 'badges', - Header: 'Badges', - headerClassName: 'badges-header', - id: 'badges', - minWidth: 150, - maxWidth: 200, - filterable: false, - Cell: ({ value }) => { - const { - codeRedCount, - joinedAt, - rescueCount, - } = value.attributes - - return ( - <div className="badge-list"> - <RescueAchievementIcon className="size-32 fixed" rescueCount={rescueCount} /> - <CodeRedIcon className="size-32 fixed" codeRedCount={codeRedCount} /> - <FirstYearIcon className="size-32 fixed" createdAt={joinedAt} /> - </div> - ) - }, - }, - ] - } - - return this._columns - } - - static mapDispatchToProps = ['getLeaderboard'] - - static mapStateToProps = createStructuredSelector({ - statistics: selectLeaderboardStatistics, - entries: selectLeaderboard, - }) } diff --git a/src/components/Reminders.js b/src/components/Reminders.js deleted file mode 100644 index 448de3228..000000000 --- a/src/components/Reminders.js +++ /dev/null @@ -1,9 +0,0 @@ -function Reminders () { - return <div className="panel reminders minimize" /> -} - - - - - -export default Reminders diff --git a/src/components/RescueDetails/RescueDetailsContent.js b/src/components/RescueDetails/RescueDetailsContent.js index a0def8687..675cffbec 100644 --- a/src/components/RescueDetails/RescueDetailsContent.js +++ b/src/components/RescueDetails/RescueDetailsContent.js @@ -5,11 +5,11 @@ import Link from 'next/link' import PropTypes from 'prop-types' // import { useCallback } from 'react' -import { formatAsEliteDateTime } from '~/helpers/formatTime' -import { makePaperworkRoute } from '~/helpers/routeGen' import { usePlatformData, useLanguageData } from '~/hooks/rescueHooks' import useSelectorWithProps from '~/hooks/useSelectorWithProps' import { createSelectRenderedRatList } from '~/store/selectors' +import formatAsEliteDateTime from '~/util/date/formatAsEliteDateTime' +import makePaperworkRoute from '~/util/router/makePaperworkRoute' import CopyToClipboard from '../CopyToClipboard' import ElapsedTimer from '../ElapsedTimer' diff --git a/src/components/ScopeView/NamespaceDetails.js b/src/components/ScopeView/NamespaceDetails.js index 8a052aa3d..dbe2ebd1d 100644 --- a/src/components/ScopeView/NamespaceDetails.js +++ b/src/components/ScopeView/NamespaceDetails.js @@ -1,4 +1,7 @@ import { FontAwesomeIcon } from '@fortawesome/react-fontawesome' +import PropTypes from 'prop-types' +import { useMemo } from 'react' + import permissionNamespaces from '~/data/permissionNamespaces' @@ -10,36 +13,41 @@ import styles from './ScopeView.module.scss' function NamespaceDetails (props) { const namespace = permissionNamespaces[props.namespace] - const { actions = {} } = props - - if (!namespace || !Object.keys(actions).length) { + const { actions } = props + + const actionElements = useMemo(() => { + if (!namespace || !actions || !Object.keys(actions).length) { + return null + } + + return Object.entries(actions).map(([actionName, action]) => { + const accessible = action.all || action.self + const isSelf = action.self && (!action.all || (!action.all && action.self)) + return ( + <li key={actionName} className={[styles.permission, { [styles.inaccessible]: accessible }]}> + <span> + {namespace.actionText[actionName]?.[isSelf ? 'self' : 'all'] ?? 'Read'} + {' '} + {isSelf ? 'your own' : (<b>{'ALL'}</b>)} + {' '} + {namespace.text} + {!isSelf && namespace.selfSingular && 's'} + {'.'} + </span> + </li> + ) + }) + }, [actions, namespace]) + + if (!actionElements) { return null } - const actionElements = Object.entries(actions).map(([actionName, action]) => { - const accessible = action.all?.accessible || action.self?.accessible - const isSelf = action.self && (!action.all || (!action.all.accessible && action.self.accessible)) - - return ( - <li key={actionName} className={[styles.permission, { [styles.inaccessible]: !accessible }]}> - <span> - {namespace.actionText[actionName]?.[isSelf ? 'self' : 'all'] ?? 'Read'} - {' '} - {isSelf ? 'your own' : (<b>{'ALL'}</b>)} - {' '} - {namespace.text} - {!isSelf && namespace.selfSingular && 's'} - {'.'} - </span> - </li> - ) - }) - return ( <details open className={styles.namespace}> <summary className={styles.title}> <FontAwesomeIcon fixedWidth icon={namespace.icon} size="lg" /> - <span> <b>{namespace.text}</b></span> + <span><b>{namespace.text}</b></span> </summary> <ul className={styles.content}> {actionElements} @@ -48,7 +56,10 @@ function NamespaceDetails (props) { ) } - +NamespaceDetails.propTypes = { + actions: PropTypes.object.isRequired, + namespace: PropTypes.string.isRequired, +} diff --git a/src/components/ScopeView/ScopeView.js b/src/components/ScopeView/ScopeView.js index 36473d3e4..2cb369af4 100644 --- a/src/components/ScopeView/ScopeView.js +++ b/src/components/ScopeView/ScopeView.js @@ -1,8 +1,7 @@ import PropTypes from 'prop-types' -import React from 'react' -import { createStructuredSelector } from 'reselect' +import { createSelector } from 'reselect' -import { connect } from '~/store' +import useSelectorWithProps from '~/hooks/useSelectorWithProps' import { selectCurrentUserScopes } from '~/store/selectors' import NamespaceDetails from './NamespaceDetails' @@ -12,68 +11,43 @@ import styles from './ScopeView.module.scss' -// Component Constants - -const groupScopes = (scopes, accessibleScopes = []) => { - return scopes.reduce((acc, scopeStr) => { - const [namespace, action, isSelf] = scopeStr.split('.') - - if (!acc[namespace]) { - acc[namespace] = { [action]: {} } - } else if (!acc[namespace][action]) { - acc[namespace][action] = {} - } - - acc[namespace][action][isSelf ? 'self' : 'all'] = { - accessible: accessibleScopes.includes(scopeStr) - || (isSelf && accessibleScopes.includes(`${namespace}.${action}`)) - || accessibleScopes.includes('*'), - } - - return acc - }, {}) +const selectScopesProp = (_, props = {}) => { + return props.scopes } +const selectGroupedScopes = createSelector( + [selectScopesProp, selectCurrentUserScopes], + (scopes = [], accessibleScopes = []) => { + return scopes.reduce((acc, scopeStr) => { + const [namespace, action, isSelf] = scopeStr.split('.') + if (!acc[namespace]) { + acc[namespace] = { [action]: {} } + } else if (!acc[namespace][action]) { + acc[namespace][action] = {} + } + acc[namespace][action][isSelf ? 'self' : 'all'] = Boolean( + accessibleScopes.includes(scopeStr) + || (isSelf && accessibleScopes.includes(`${namespace}.${action}`)) + || accessibleScopes.includes('*') + || accessibleScopes.includes(`${namespace}.*`), + ) - -@connect -class ScopeView extends React.PureComponent { - /***************************************************************************\ - Class Properties - \***************************************************************************/ - - state = {} - - - + return acc + }, {}) + }, +) - /***************************************************************************\ - Private Methods - \***************************************************************************/ - - - /***************************************************************************\ - Public Methods - \***************************************************************************/ - - render () { - const { - accessibleScopes, - className, - scopes, - } = this.props - - const groupedScopes = groupScopes(scopes, accessibleScopes) - - return ( - <div className={[styles.scopeView, className]}> - { +function ScopeView ({ scopes, className }) { + const groupedScopes = useSelectorWithProps({ scopes }, selectGroupedScopes) + return ( + <div className={[styles.scopeView, className]}> + { Object.entries(groupedScopes).map( ([namespace, actions]) => { return ( @@ -85,50 +59,14 @@ class ScopeView extends React.PureComponent { }, ) } - </div> - ) - } - - - - - - /***************************************************************************\ - Getters - \***************************************************************************/ - - - - - - /***************************************************************************\ - Redux Properties - \***************************************************************************/ - - static mapStateToProps = createStructuredSelector({ - accessibleScopes: selectCurrentUserScopes, - }) - - - - - - /***************************************************************************\ - Prop Definitions - \***************************************************************************/ - - static defaultProps = { - className: undefined, - } - - static propTypes = { - accessibleScopes: PropTypes.arrayOf(PropTypes.string).isRequired, - className: PropTypes.string, - scopes: PropTypes.arrayOf(PropTypes.string).isRequired, - } + </div> + ) } - +ScopeView.propTypes = { + className: PropTypes.string, + scopes: PropTypes.arrayOf(PropTypes.string).isRequired, +} diff --git a/src/components/Slider/Slider.js b/src/components/Slider/Slider.js new file mode 100644 index 000000000..1739c7d71 --- /dev/null +++ b/src/components/Slider/Slider.js @@ -0,0 +1,74 @@ +/*** + * The renderHandle function within the following component is based on the default handle prop value located here: + * https://github.com/react-component/slider/blob/af77a4c7fb/src/common/createSlider.tsx#L32 + * + * It is licensed under the MIT License below. + * + * The MIT License (MIT) + * Copyright (c) 2015-present Alipay.com, https://www.alipay.com/ + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS + * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF + * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. + * IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY + * CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, + * TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE + * SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + */ + + + +import { FontAwesomeIcon } from '@fortawesome/react-fontawesome' +import RCSlider, { Handle } from 'rc-slider' +import { useCallback } from 'react' + + + + + +export default function Slider (props) { + const { + Component = RCSlider, + handleIcon: iconId, + iconProps = {}, + ...restProps + } = props + + const renderHandle = useCallback((sliderProps) => { + const { index, ...restSliderProps } = sliderProps + delete restSliderProps.dragging + if (restSliderProps.value === null) { + return null + } + + return ( + <Handle key={index} {...restSliderProps}> + { + iconId && ( + <FontAwesomeIcon + fixedWidth + className="rc-slider-handle-icon" + {...iconProps} + icon={iconId} /> + ) + } + </Handle> + ) + }, [iconProps, iconId]) + + return ( + <Component + handle={renderHandle} + {...restProps} /> + ) +} diff --git a/src/components/Slider/index.js b/src/components/Slider/index.js new file mode 100644 index 000000000..19a6da94b --- /dev/null +++ b/src/components/Slider/index.js @@ -0,0 +1 @@ +export { default } from './Slider' diff --git a/src/components/Switch/Switch.js b/src/components/Switch/Switch.js index d97827ed6..7356a21c8 100644 --- a/src/components/Switch/Switch.js +++ b/src/components/Switch/Switch.js @@ -2,6 +2,8 @@ import { FontAwesomeIcon } from '@fortawesome/react-fontawesome' import PropTypes from 'prop-types' import { useCallback, useState } from 'react' +import isPromise from '~/util/isPromise' + import styles from './Switch.module.scss' @@ -10,7 +12,6 @@ import styles from './Switch.module.scss' function Switch (props) { const { - async: isAsync, containerProps, className, disabled, @@ -23,19 +24,17 @@ function Switch (props) { const [loading, setLoading] = useState(false) const handleChange = useCallback(async (event) => { - if (!isAsync) { - onChange?.(event) - return + const result = onChange?.(event) + if (isPromise(result)) { + setLoading(true) + await result + setLoading(false) } - - setLoading(true) - await onChange?.(event) - setLoading(false) - }, [isAsync, onChange]) + }, [onChange]) let icon = 'times' if (loading) { - icon = 'circle' + icon = 'sync' } else if (props.checked) { icon = 'check' } @@ -71,7 +70,6 @@ function Switch (props) { } Switch.propTypes = { - async: PropTypes.bool, checked: PropTypes.bool, className: PropTypes.string, containerProps: PropTypes.object, diff --git a/src/components/Switch/Switch.module.scss b/src/components/Switch/Switch.module.scss index 20b3221ab..af9e6bbde 100644 --- a/src/components/Switch/Switch.module.scss +++ b/src/components/Switch/Switch.module.scss @@ -1,5 +1,15 @@ @import '../../scss/colors'; +@keyframes loader-spin { + 0% { + transform: rotate(0deg); + } + + 100% { + transform: rotate(360deg); + } +} + .switch { display: inline-block; position: relative; @@ -23,6 +33,11 @@ background: $grey; transform: translateX(50%); + + > path { + animation: loader-spin 2s infinite linear; + transform-origin: center; + } } } @@ -60,6 +75,8 @@ border-radius: 50%; + color: $black; + will-change: transform; background: $red; diff --git a/src/components/TabbedPanel.js b/src/components/TabbedPanel.js index 68aac3ad4..f912b6be9 100644 --- a/src/components/TabbedPanel.js +++ b/src/components/TabbedPanel.js @@ -54,10 +54,6 @@ function TabPanel (props) { } class TabbedPanel extends React.Component { - /***************************************************************************\ - Private Methods - \***************************************************************************/ - _handleTabClick = (event) => { this.props.onTabClick(event.target.getAttribute('name')) } @@ -100,14 +96,6 @@ class TabbedPanel extends React.Component { ) } - - - - - /***************************************************************************\ - Public Methods - \***************************************************************************/ - render () { return ( <div className="tabbed-panel"> diff --git a/src/components/TagsInput.js b/src/components/TagsInput.js index 044a5be50..5c47e49ea 100644 --- a/src/components/TagsInput.js +++ b/src/components/TagsInput.js @@ -2,9 +2,8 @@ /* eslint-disable no-magic-numbers, no-negated-condition, - no-restricted-syntax, no-return-assign, - react/jsx-no-bind, + react/no-unsafe, react/state-in-constructor, arrow-body-style, */ @@ -18,7 +17,7 @@ import Key from './Key' -export default class TagsInputComponent extends React.Component { +export default class TagsInput extends React.Component { _bindMethods (methods) { methods.forEach((method) => this[method] = this[method].bind(this)) } @@ -26,7 +25,7 @@ export default class TagsInputComponent extends React.Component { static _renderLoader () { return ( <div className="loader"> - {TagsInputComponent.renderLoader()} + {TagsInput.renderLoader()} </div> ) } @@ -34,7 +33,7 @@ export default class TagsInputComponent extends React.Component { static _renderNoResults () { return ( <div className="no-results"> - {TagsInputComponent.renderNoResults()} + {TagsInput.renderNoResults()} </div> ) } @@ -112,7 +111,7 @@ export default class TagsInputComponent extends React.Component { const newNextState = { ...nextState } if (this.state.tags !== nextState.tags) { - newNextState.tags = nextState.tags.map((tag) => TagsInputComponent.parseOption(tag)) + newNextState.tags = nextState.tags.map((tag) => TagsInput.parseOption(tag)) } } @@ -139,7 +138,7 @@ export default class TagsInputComponent extends React.Component { tags = [tags] } - tags = tags.map((tag) => TagsInputComponent.parseOption(tag)) + tags = tags.map((tag) => TagsInput.parseOption(tag)) this.state = { allowDuplicates: props['data-allowduplicates'], @@ -431,15 +430,15 @@ export default class TagsInputComponent extends React.Component { placeholder={placeholder} type="search" onBlur={this.onBlur} - onFocus={TagsInputComponent.onFocus} + onFocus={TagsInput.onFocus} onInput={this.onInput} onKeyDown={this.onKeyDown} /> {Boolean(allowNew) && this.renderReturnPrompt()} - {loading && TagsInputComponent._renderLoader()} + {loading && TagsInput._renderLoader()} - {(!loading && !newFocus && Boolean(currentValue) && !options.length) && TagsInputComponent._renderNoResults()} + {(!loading && !newFocus && Boolean(currentValue) && !options.length) && TagsInput._renderNoResults()} { (!loading && Boolean(options.length)) && ( @@ -471,10 +470,10 @@ export default class TagsInputComponent extends React.Component { <li key={index} className={['option', { focus: selectedOption === index }]} - onBlur={TagsInputComponent.handleOptionMouseOut} + onBlur={TagsInput.handleOptionMouseOut} onFocus={(event) => this.handleOptionMouseOver(event, index)} onMouseDown={() => this.addTag(option)} - onMouseOut={TagsInputComponent.handleOptionMouseOut} + onMouseOut={TagsInput.handleOptionMouseOut} onMouseOver={(event) => this.handleOptionMouseOver(event, index)}> {this.renderValue(option)} </li> @@ -552,7 +551,7 @@ export default class TagsInputComponent extends React.Component { } options.forEach((optionValue) => { - const option = TagsInputComponent.parseOption(optionValue) + const option = TagsInput.parseOption(optionValue) if (merge && this.findOption(option)) { return diff --git a/src/components/TermsModal/TermsModal.js b/src/components/TermsModal/TermsModal.js index d50903ba6..8236574ed 100644 --- a/src/components/TermsModal/TermsModal.js +++ b/src/components/TermsModal/TermsModal.js @@ -1,82 +1,40 @@ -import React from 'react' +import { useCallback } from 'react' -import { connect } from '~/store' -import { selectWordpressPageBySlug } from '~/store/selectors' +import useToggleState from '~/hooks/useToggleState' -import asModal, { ModalContent, ModalFooter } from '../Modal' +import asModal, { ModalContent, ModalFooter } from '../asModal' +import WordpressPage from '../WordpressPage' import styles from './TermsModal.module.scss' +function TermsModal (props) { + const { + checkboxLabel, + onAccept, + slug, + title, + } = props -@asModal({ className: 'terms-dialog' }) -@connect -class WordpressTermsModal extends React.Component { - /***************************************************************************\ - Class Properties - \***************************************************************************/ + const [termsAccepted, toggleTermsAccepted] = useToggleState(false) + const handleTermsToggle = useCallback(() => { + toggleTermsAccepted() + }, [toggleTermsAccepted]) - state = { - termsAccepted: false, - loading: true, - } - - - - - - /***************************************************************************\ - Private Methods - \***************************************************************************/ - - _handleCheckboxChange = ({ target }) => { - return this.setState({ termsAccepted: target.checked }) - } - - _handleAccept = () => { - if (this.state.termsAccepted) { - this.props.onAccept?.() - } - } - - - - - - /***************************************************************************\ - Public Methods - \***************************************************************************/ - - async componentDidMount () { - const { - getWordpressPage, - page, - slug, - } = this.props - - if (!page) { - await getWordpressPage(slug) + const handleAcceptTerms = useCallback(() => { + if (termsAccepted) { + onAccept?.() } + }, [onAccept, termsAccepted]) - this.setState({ - loading: false, - }) - } - - renderFooter () { - const { - checkboxLabel, - title, - } = this.props + const checkboxId = `TermsDialog-${title.replace(/\s/gu, '')}-checkbox` - const { - termsAccepted, - } = this.state - - const checkboxId = `termsDialog-${title.replace(/\s/gu, '')}-checkbox` - - return ( + return ( + <> + <ModalContent as="article" className={[styles.content]}> + <WordpressPage className="loader-dark" slug={slug} /> + </ModalContent> <ModalFooter> <div className="secondary" /> <div className="primary"> @@ -87,69 +45,26 @@ class WordpressTermsModal extends React.Component { className="large" id={checkboxId} type="checkbox" - onChange={this._handleCheckboxChange} /> + onChange={handleTermsToggle} /> <label htmlFor={checkboxId}>{checkboxLabel}</label> </span> <button key="NextButton" disabled={!termsAccepted} type="button" - onClick={this._handleAccept}> + onClick={handleAcceptTerms}> {'Next'} </button> </div> </ModalFooter> - ) - } - - /* eslint-disable react/no-danger */ - renderWordpressPage () { - const { page } = this.props - - return Boolean(page) && ( - <div dangerouslySetInnerHTML={page && { __html: page.content.rendered.replace(/<ul>/giu, '<ul class="bulleted">').replace(/<ol>/giu, '<ol class="numbered">') }} /> - ) - } - /* eslint-enable react/no-danger */ - - render () { - const { - loading, - } = this.state - - const { - page, - } = this.props - - return ( - <> - <ModalContent className={[styles.content, { error: !loading && !page }]}> - {this.renderWordpressPage(page)} - </ModalContent> - {this.renderFooter()} - </> - ) - } - - - - - - /***************************************************************************\ - Redux Properties - \***************************************************************************/ - - static mapDispatchToProps = ['getWordpressPage'] - - static mapStateToProps = (state, ownProps) => { - return { - page: selectWordpressPageBySlug(state, ownProps), - } - } + </> + ) } -export default WordpressTermsModal +export default asModal({ + className: 'terms-dialog', +})(TermsModal) diff --git a/src/components/TermsModal/TermsModal.module.scss b/src/components/TermsModal/TermsModal.module.scss index 5c6ddd43c..b84633cc5 100644 --- a/src/components/TermsModal/TermsModal.module.scss +++ b/src/components/TermsModal/TermsModal.module.scss @@ -1,6 +1,3 @@ .content { - composes: loading from global; - composes: loader-dark from global; - min-height: 250px; } diff --git a/src/components/UploadAvatarModal/UploadAvatarMessageBox.js b/src/components/UploadAvatarModal/UploadAvatarMessageBox.js new file mode 100644 index 000000000..c3496dbf8 --- /dev/null +++ b/src/components/UploadAvatarModal/UploadAvatarMessageBox.js @@ -0,0 +1,45 @@ +import PropTypes from 'prop-types' + +import ApiErrorBox from '~/components/MessageBox/ApiErrorBox' + +import MessageBox from '../MessageBox' + + +function getErrorText (error) { + switch (error.status) { + case 'unauthorized': + return 'Invalid User' + case 'toobig': + return 'Avatar is too large; please try on a reduced size image' + case 'internal': + return 'An internal error occured' + default: + return undefined + } +} + +function UploadAvatarMessageBox (props) { + const { result, className } = props + + return result.success + ? ( + <MessageBox className={className} title="Success!" type="success"> + {'You avatar has been updated!'} + <br /> + {'This window will now automatically close...'} + </MessageBox> + ) + : ( + <ApiErrorBox + className={className} + error={result.error} + renderError={getErrorText} /> + ) +} + +UploadAvatarMessageBox.propTypes = { + className: PropTypes.string, + result: PropTypes.object.isRequired, +} + +export default UploadAvatarMessageBox diff --git a/src/components/UploadAvatarModal/UploadAvatarModal.js b/src/components/UploadAvatarModal/UploadAvatarModal.js new file mode 100644 index 000000000..e62888376 --- /dev/null +++ b/src/components/UploadAvatarModal/UploadAvatarModal.js @@ -0,0 +1,318 @@ +import { FontAwesomeIcon } from '@fortawesome/react-fontawesome' +import PropTypes from 'prop-types' +import { useState, useCallback } from 'react' +import Cropper from 'react-easy-crop' +import { useDispatch } from 'react-redux' + +import asModal, { ModalContent, ModalFooter } from '~/components/asModal' +import ProfileUserAvatar from '~/components/ProfileUserAvatar' +import Slider from '~/components/Slider' +import { updateAvatar } from '~/store/actions/user' +import getResponseError from '~/util/getResponseError' + +import UploadAvatarMessageBox from './UploadAvatarMessageBox' +import styles from './UploadAvatarModal.module.scss' + +// Component Constants +const MAX_FILE_SIZE = 26214400 // Server upload max is 25M +const SUBMIT_AUTO_CLOSE_DELAY_TIME = 3000 +const HALF_CIRCLE = 180 // Conversion of rat to deg + +// eslint-disable-next-line no-magic-numbers -- Numbers correspond to degree marks to be placed +const rotationMarks = [0, 45, 90, 135, 180].reduce((acc, value) => { + acc[0 - value] = {} + acc[value] = {} + return acc +}, {}) + +// eslint-disable-next-line no-magic-numbers -- Numbers correspond to zoom marks +const zoomMarks = [1, 1.5, 2, 2.5, 3].reduce((acc, value) => { + acc[value] = {} + return acc +}, {}) + + +function UploadAvatarModal (props) { + const { + onClose, + isOpen, + } = props + + const [result, setResult] = useState({ }) + + const [inputDragActive, setInputDragActive] = useState(false) + const [upImg, setUpImg] = useState() + // eslint-disable-next-line id-length -- Required by react-easy-crop + const [crop, handleSetCrop] = useState({ x: 0, y: 0 }) + const [zoom, handleSetZoom] = useState(1) + const [rotation, handleSetRotation] = useState(0) + const [croppedAreaPixels, setCroppedAreaPixels] = useState(null) + const [submitReady, setSubmitReady] = useState(false) + const [submitting, setSubmitting] = useState(false) + + const onCropChange = useCallback((croppedArea) => { + if (!submitting) { + setSubmitReady(false) + handleSetCrop(croppedArea) + } + }, [submitting]) + + const onCropComplete = useCallback((croppedArea, cap) => { + setCroppedAreaPixels(cap) + setSubmitReady(true) + }, []) + + const onSelectFile = useCallback((event) => { + if (event.target.files && event.target.files.length > 0) { + const reader = new FileReader() + reader.addEventListener('load', () => { + // eslint-disable-next-line id-length -- Required by react-easy-crop + handleSetCrop({ x: 0, y: 0 }) + handleSetZoom(1) + handleSetRotation(0) + setUpImg(reader.result) + }) + reader.readAsDataURL(event.target.files[0]) + } + }, []) + + const dispatch = useDispatch() + + const submit = useCallback(async (img) => { + setSubmitting(true) + const response = await dispatch(updateAvatar(img)) + const error = getResponseError(response) + + setResult({ + error, + success: !error, + submitted: true, + }) + + if (error) { + setSubmitting(false) + } else { + setTimeout(() => { + if (isOpen) { + onClose() + } + }, SUBMIT_AUTO_CLOSE_DELAY_TIME) + } + }, [dispatch, isOpen, onClose]) + + const onBack = useCallback(() => { + setUpImg(null) + }, []) + + const onSubmit = useCallback(() => { + try { + const image = new Image() + image.addEventListener('load', () => { + const canvas = document.createElement('canvas') + const ctx = canvas.getContext('2d') + + const maxSize = Math.max(image.width, image.height) + const safeArea = 2 * ((maxSize / 2) * Math.sqrt(2)) + + // set each dimensions to double largest dimension to allow for a safe area for the + // image to rotate in without being clipped by canvas context + canvas.width = safeArea + canvas.height = safeArea + + // translate canvas context to a central location on image to allow rotating around the center. + ctx.translate(safeArea / 2, safeArea / 2) + ctx.rotate((rotation * Math.PI) / HALF_CIRCLE) + ctx.translate(-safeArea / 2, -safeArea / 2) + + // draw rotated image and store data. + ctx.drawImage( + image, + safeArea / 2 - image.width / 2, + safeArea / 2 - image.height / 2, + ) + const data = ctx.getImageData(0, 0, safeArea, safeArea) + + // set canvas width to final desired crop size - this will clear existing context + canvas.width = croppedAreaPixels.width + canvas.height = croppedAreaPixels.height + + // paste generated rotate image with correct offsets for x,y crop values. + ctx.putImageData( + data, + Math.round(0 - safeArea / 2 + image.width / 2 - croppedAreaPixels.x), + Math.round(0 - safeArea / 2 + image.height / 2 - croppedAreaPixels.y), + ) + + // Convert the contents of the canvas blob to an image + const reader = new FileReader() + canvas.toBlob((blob) => { + reader.readAsDataURL(blob) + reader.onloadend = () => { + const [, b64data] = reader.result.split(',') + const bstr = atob(b64data) + let datalength = bstr.length + const u8arr = new Uint8Array(datalength) + + while (datalength > 0) { + datalength -= 1 + u8arr[datalength] = bstr.charCodeAt(datalength) + } + const croppedImage = new File([u8arr], 'avatar.png', { type: 'image/png' }) + + if (croppedImage.size > MAX_FILE_SIZE) { + setResult({ + error: { status: 'toobig' }, + success: false, + submitted: false, + }) + } else { + submit(croppedImage) + } + } + }) + }) + image.src = upImg + } catch (exception) { + console.error(exception) + setResult({ + error: { status: 'internal' }, + success: false, + submitted: false, + }) + } + }, [croppedAreaPixels, rotation, submit, upImg]) + + const onInputDragEnter = useCallback(() => { + setInputDragActive(true) + }, []) + const onInputDragLeave = useCallback(() => { + setInputDragActive(false) + }, []) + + const cropClasses = { + containerClassName: submitting ? 'disabled' : '', + } + + return ( + <ModalContent className="dialog no-pad"> + { + result.success && ( + <div className={styles.avatarPreview}> + <ProfileUserAvatar /> + </div> + ) + } + <UploadAvatarMessageBox className={styles.message} result={result} /> + <div className={styles.body}> + { + Boolean(!upImg && !result.success) && ( + <label className={['file-dropzone', { active: inputDragActive }]} htmlFor="avatarInput" id="avatarInputLabel"> + <FontAwesomeIcon fixedWidth icon="file-upload" /> + {' Drop image here'} + <br /> + <small> + {'or click me to select an image!'} + </small> + <input + accept="image/png,image/jpeg,image/webp" + aria-labelledby="avatarInputLabel" + id="avatarInput" + type="file" + onChange={onSelectFile} + onDragEnter={onInputDragEnter} + onDragLeave={onInputDragLeave} + onDrop={onInputDragLeave} /> + </label> + ) + } + { + Boolean(upImg && !result.success) && ( + <div className={styles.zoomAndCrop}> + <div className={styles.zoomSliderBox}> + <Slider + vertical + aria-labelledby="Zoom" + disabled={submitting} + handleIcon="search" + marks={zoomMarks} + max={5} + min={1} + step={0.1} + value={zoom} + onChange={handleSetZoom} /> + </div> + <div className={styles.rotateAndCrop}> + <div className={styles.cropContainer}> + <Cropper + aspect={1 / 1} + classes={cropClasses} + crop={crop} + cropShape="round" + image={upImg} + rotation={rotation} + zoom={zoom} + onCropChange={onCropChange} + onCropComplete={onCropComplete} + onZoomChange={handleSetZoom} /> + </div> + <div className={styles.rotateSliderBox}> + <Slider + aria-labelledby="Rotation" + disabled={submitting} + handleIcon="sync" + marks={rotationMarks} + max={180} + min={-180} + startPoint={0} + step={5} + value={rotation} + onChange={handleSetRotation} /> + + </div> + </div> + </div> + ) + } + </div> + + { + !result.success && ( + <ModalFooter> + <div className="secondary"> + { + upImg && ( + <button + className="secondary" + disabled={submitting} + type="button" + onClick={onBack}> + {'Back'} + </button> + ) + } + </div> + <div className="primary"> + <button + className="green" + disabled={submitting || !submitReady} + type="submit" + onClick={onSubmit}> + {submitting ? 'Uploading' : 'Upload'} + </button> + </div> + </ModalFooter> + ) + } + </ModalContent> + ) +} + +UploadAvatarModal.propTypes = { + isOpen: PropTypes.any, + onClose: PropTypes.func.isRequired, +} + +export default asModal({ + className: 'upload-avatar-dialog', + title: 'Upload New Avatar', +})(UploadAvatarModal) diff --git a/src/components/UploadAvatarModal/UploadAvatarModal.module.scss b/src/components/UploadAvatarModal/UploadAvatarModal.module.scss new file mode 100644 index 000000000..a3c660bb3 --- /dev/null +++ b/src/components/UploadAvatarModal/UploadAvatarModal.module.scss @@ -0,0 +1,51 @@ +// Specificity assurance +:global(.message).message { + margin: 2rem auto; +} + +.avatarPreview { + display: flex; + + justify-content: center; + + width: 100%; + margin: 2rem 0 0; +} + +.body { + .zoomAndCrop { + display: flex; + + margin: 0 3.4rem 0 0; + } + + .zoomSliderBox { + display: flex; + + flex-direction: column; + + width: 3.4rem; + margin-bottom: 3.2rem; + } + + .sliderControl { + flex-grow: 1; + } + + .cropContainer { + position: relative; + + width: 100%; + padding-top: 100%; + } + + .rotateSliderBox { + display: flex; + + padding-top: 1.8rem; + } + + .rotateAndCrop { + flex-grow: 1; + } +} diff --git a/src/components/UploadAvatarModal/index.js b/src/components/UploadAvatarModal/index.js new file mode 100644 index 000000000..54afb73a5 --- /dev/null +++ b/src/components/UploadAvatarModal/index.js @@ -0,0 +1 @@ +export { default } from './UploadAvatarModal' diff --git a/src/components/UserDecalPanel/DecalRow.js b/src/components/UserDecalPanel/DecalRow.js index cb39b3021..027b2c26c 100644 --- a/src/components/UserDecalPanel/DecalRow.js +++ b/src/components/UserDecalPanel/DecalRow.js @@ -1,8 +1,8 @@ import { FontAwesomeIcon } from '@fortawesome/react-fontawesome' import { useReducer } from 'react' -import { formatAsEliteDate } from '~/helpers/formatTime' import reduceToggle from '~/hooks/reducers/reduceToggle' +import formatAsEliteDate from '~/util/date/formatAsEliteDate' import styles from './UserDecalPanel.module.scss' diff --git a/src/components/UserDecalPanel/UserDecalPanel.js b/src/components/UserDecalPanel/UserDecalPanel.js index c57bed32d..f00f52d22 100644 --- a/src/components/UserDecalPanel/UserDecalPanel.js +++ b/src/components/UserDecalPanel/UserDecalPanel.js @@ -13,7 +13,7 @@ import DecalRow from './DecalRow' import styles from './UserDecalPanel.module.scss' -function UserDetailsPanel () { +function UserDecalPanel () { const [redeeming, setRedeeming] = useState(false) const decals = useSelector(withCurrentUserId(selectDecalsByUserId)) @@ -75,4 +75,4 @@ function UserDetailsPanel () { -export default UserDetailsPanel +export default UserDecalPanel diff --git a/src/components/UserDecalPanel/UserDecalPanel.module.scss b/src/components/UserDecalPanel/UserDecalPanel.module.scss index ff850eba9..b8f132e3f 100644 --- a/src/components/UserDecalPanel/UserDecalPanel.module.scss +++ b/src/components/UserDecalPanel/UserDecalPanel.module.scss @@ -1,3 +1,4 @@ +@import '../../scss/fonts'; @import '../../scss/colors'; .panelContent { @@ -29,7 +30,7 @@ .decalCode { flex: 1 0 auto; - font-family: monospace; + font-family: $monospace-fonts; } .decalClaimedAt { diff --git a/src/components/UserMenu/UserMenu.js b/src/components/UserMenu/UserMenu.js index 6a0ff824a..356afc1de 100644 --- a/src/components/UserMenu/UserMenu.js +++ b/src/components/UserMenu/UserMenu.js @@ -1,12 +1,14 @@ +import Image from 'next/image' import { useCallback, useRef } from 'react' import { useDispatch, useSelector } from 'react-redux' +import useSelectorWithProps from '~/hooks/useSelectorWithProps' import { setFlag } from '~/store/actions/flags' import { logout } from '~/store/actions/session' import { selectSession, selectUserById, - selectAvatarByUserId, + selectAvatarUrlByUserId, withCurrentUserId, selectCurrentUserCanEditAllRescues, } from '~/store/selectors' @@ -24,7 +26,7 @@ function UserMenu () { const { loggedIn } = useSelector(selectSession) const userCanSeeRescueAdmin = useSelector(selectCurrentUserCanEditAllRescues) const user = useSelector(withCurrentUserId(selectUserById)) - const userAvatar = useSelector(withCurrentUserId(selectAvatarByUserId)) + const userAvatarUrl = useSelectorWithProps({ size: 64 }, withCurrentUserId(selectAvatarUrlByUserId)) const dispatch = useDispatch() @@ -56,7 +58,12 @@ function UserMenu () { <label className={[styles.avatar, styles.navHandle]} htmlFor="UserMenuControl" id="UserMenuToggle"> { Boolean(user) && ( - <img alt="Your avatar" src={userAvatar} /> + <Image + unoptimized + alt="User's avatar" + height={64} + src={userAvatarUrl} + width={64} /> ) } </label> diff --git a/src/components/UserMenu/UserMenu.module.scss b/src/components/UserMenu/UserMenu.module.scss index e7d76572f..e151606d3 100644 --- a/src/components/UserMenu/UserMenu.module.scss +++ b/src/components/UserMenu/UserMenu.module.scss @@ -1,3 +1,5 @@ +@use 'sass:math'; + @import '../../scss/colors'; @@ -58,8 +60,8 @@ $user-menu-width-mobile: 21rem; } @media not screen and (max-width: $mobile-max-width) { - top: #{$avatar-top-margin + (($avatar-size - 4rem) / 2)}; - right: #{$avatar-right-margin + (($avatar-size - 4rem) / 2)}; + top: #{$avatar-top-margin + math.div(($avatar-size - 4rem), 2)}; + right: #{$avatar-right-margin + math.div(($avatar-size - 4rem), 2)}; max-width: 4rem; max-height: 4rem; @@ -136,8 +138,8 @@ $user-menu-width-mobile: 21rem; @media not screen and (max-width: $mobile-max-width) { &:checked { ~ .nav { - top: #{($avatar-size / 2) + 1rem}; - right: #{($avatar-size / 2) + 2.5rem}; + top: #{math.div($avatar-size, 2) + 1rem}; + right: #{math.div($avatar-size, 2) + 2.5rem}; max-width: 16rem; max-height: 35rem; @@ -154,7 +156,7 @@ $user-menu-width-mobile: 21rem; $umt-mobile-translate: translateX( #{ - -1 * (($user-menu-width-mobile / 2) - ($avatar-size / 2) - $avatar-right-margin - ($user-menu-border-width-mobile / 2)) + -1 * (math.div($user-menu-width-mobile, 2) - math.div($avatar-size, 2) - $avatar-right-margin - math.div($user-menu-border-width-mobile, 2)) } ); diff --git a/src/components/UserNicknamesPanel/UserNicknamesPanel.js b/src/components/UserNicknamesPanel/UserNicknamesPanel.js index 4e1724e55..d79d33920 100644 --- a/src/components/UserNicknamesPanel/UserNicknamesPanel.js +++ b/src/components/UserNicknamesPanel/UserNicknamesPanel.js @@ -1,18 +1,19 @@ import { FontAwesomeIcon } from '@fortawesome/react-fontawesome' import { HttpStatus } from '@fuelrats/web-util/http' import { isError } from 'flux-standard-action' -import React from 'react' +import { useCallback, useState } from 'react' +import { useDispatch, useSelector } from 'react-redux' -import { connect } from '~/store' +import ConfirmActionButton from '~/components/ConfirmActionButton' +import AddNicknameForm from '~/components/Forms/AddNicknameForm/AddNicknameForm' +import MessageBox from '~/components/MessageBox' +import { deleteNickname } from '~/store/actions/user' import { selectUserById, withCurrentUserId, selectNicknamesByUserId, } from '~/store/selectors' -import AddNicknameForm from '../AddNicknameForm/AddNicknameForm' -import ConfirmActionButton from '../ConfirmActionButton' -import MessageBox from '../MessageBox' import styles from './UserNicknamesPanel.module.scss' @@ -25,145 +26,95 @@ const MAX_NICKS = 16 // Maximum IRC Nicknames allowed +function UserNicknamesPanel () { + const [error, setError] = useState(null) -@connect -class UserNicknamesPanel extends React.Component { - /***************************************************************************\ - Class Properties - \***************************************************************************/ + const dispatch = useDispatch() + const nicknames = useSelector(withCurrentUserId(selectNicknamesByUserId)) + const user = useSelector(withCurrentUserId(selectUserById)) - state = { - error: null, - formOpen: false, - } - - - - - - /***************************************************************************\ - Private Methods - \***************************************************************************/ - - _handleFormVisibilityToggle = () => { - this.setState((state) => { - return { formOpen: !state.formOpen } - }) - } - - _handleDeleteNickname = async (event) => { - const response = await this.props.deleteNickname(this.props.user, this.props.nicknames.find((nick) => { + const handleDeleteNickname = useCallback(async (event) => { + const response = await dispatch(deleteNickname(user, nicknames.find((nick) => { return nick.id === event.target.name - })) + }))) if (isError(response)) { const { meta, payload } = response let errorMessage = 'Unknown error occurred.' if (HttpStatus.isClientError(meta.response.status)) { - errorMessage = payload.errors && payload.errors.length ? payload.errors[0].detail : 'Client communication error' + errorMessage = payload.errors?.length ? payload.errors[0].detail : 'Client communication error' } if (HttpStatus.isServerError(meta.response.status)) { errorMessage = 'Server communication error' } - this.setState({ - error: errorMessage, - }) + setError(errorMessage) return errorMessage } return undefined - } - - - - - - /***************************************************************************\ - Public Methods - \***************************************************************************/ - - render () { - const { - nicknames, - } = this.props - - const { error } = this.state + }, [dispatch, nicknames, user]) - const nickCount = nicknames?.length - const maxNicksReached = (nickCount >= MAX_NICKS) + const nickCount = nicknames?.length + const maxNicksReached = (nickCount >= MAX_NICKS) - return ( - <div className="panel"> - <header> - {'IRC Nicknames'} - - <div className="controls"> - <span className="nickname-count">{`${nickCount}/${MAX_NICKS}`}</span> - </div> - </header> - - <div className={styles.userNicknames}> + return ( + <div className="panel"> + <header> + {'IRC Nicknames'} + <div className="controls"> + <span className="nickname-count">{`${nickCount}/${MAX_NICKS}`}</span> + </div> + </header> + + <div className={styles.userNicknames}> + { + error && ( + <MessageBox>{error}</MessageBox> + ) + } + <ul className={styles.nickList}> { - error && ( - <MessageBox>{error}</MessageBox> + (nickCount <= 0) && ( + <li className="text-center">{'You do not have any nicknames registered yet.'}</li> ) } - <ul> - {(nickCount <= 0) && (<li className="text-center">{'You do not have any nicknames registered yet.'}</li>)} - { - nicknames?.map((nickname) => { - return ( - <li key={nickname.id}> - <span>{nickname.attributes?.nick}</span> - { - // Only render for additional nicks, prevent for display nick. - nickname.attributes?.display !== nickname.attributes?.nick && ( - <ConfirmActionButton - className="icon" - confirmButtonText={`Delete nickname '${nickname.attributes?.nick}'`} - confirmSubText="" - denyButtonText="Cancel" - name={nickname.id} - onConfirm={this._handleDeleteNickname} - onConfirmText=""> - <FontAwesomeIcon fixedWidth icon="trash" /> - </ConfirmActionButton> - ) - } - </li> - ) - }) ?? null - } - </ul> - - <div className={styles.addNicknameFloat}> - <AddNicknameForm - disabled={maxNicksReached} - title={maxNicksReached ? 'You\'ve used all your nicknames' : 'Add new nickname'} /> - </div> + { + nicknames?.map((nickname) => { + return ( + <li key={nickname.id}> + <span>{nickname.attributes?.nick}</span> + { + // Only render for additional nicks, prevent for display nick. + nickname.attributes?.display !== nickname.attributes?.nick && ( + <ConfirmActionButton + className="icon" + confirmButtonText={`Delete nickname '${nickname.attributes?.nick}'`} + confirmSubText="" + denyButtonText="Cancel" + name={nickname.id} + onConfirm={handleDeleteNickname} + onConfirmText=""> + <FontAwesomeIcon fixedWidth icon="trash" /> + </ConfirmActionButton> + ) + } + </li> + ) + }) ?? null + } + </ul> + + <div className={styles.addNicknameFloat}> + <AddNicknameForm + disabled={maxNicksReached} + title={maxNicksReached ? 'You\'ve used all your nicknames' : 'Add new nickname'} /> </div> </div> - ) - } - - - - - /***************************************************************************\ - Redux Properties - \***************************************************************************/ - - static mapDispatchToProps = ['deleteNickname'] - - static mapStateToProps = (state) => { - return { - nicknames: withCurrentUserId(selectNicknamesByUserId)(state), - user: withCurrentUserId(selectUserById)(state), - } - } + </div> + ) } diff --git a/src/components/UserNicknamesPanel/UserNicknamesPanel.module.scss b/src/components/UserNicknamesPanel/UserNicknamesPanel.module.scss index 0e8c9976c..05d302c15 100644 --- a/src/components/UserNicknamesPanel/UserNicknamesPanel.module.scss +++ b/src/components/UserNicknamesPanel/UserNicknamesPanel.module.scss @@ -5,22 +5,21 @@ padding: 0.5rem 0 0; overflow: visible; +} +.nickList > li { + display: flex; - ul > li { - display: flex; - - justify-content: space-between; + justify-content: space-between; - padding: 0.5rem 1rem; + padding: 0.5rem 1rem; - &:nth-child(even) { - background-color: $light-grey; - } + &:nth-child(even) { + background-color: $light-grey; + } - span { - word-break: break-word; - } + span { + word-break: break-word; } } diff --git a/src/components/UserRatsPanel.js b/src/components/UserRatsPanel.js index e56d4f068..e8bad0c2d 100644 --- a/src/components/UserRatsPanel.js +++ b/src/components/UserRatsPanel.js @@ -1,8 +1,9 @@ import { useEffect } from 'react' -import { useDispatch } from 'react-redux' +import { useDispatch, useSelector } from 'react-redux' +import AddRatForm from '~/components/Forms/AddRatForm' +import RatCard from '~/components/RatCard' import useSelectorWithProps from '~/hooks/useSelectorWithProps' -import { connect } from '~/store' import { getUserStatistics } from '~/store/actions/statistics' import { selectUserById, @@ -10,14 +11,12 @@ import { selectRatStatisticsById, } from '~/store/selectors' -import AddRatForm from './AddRatForm' -import RatCard from './RatCard' - -function UserRatsPanel ({ user }) { +function UserRatsPanel () { + const user = useSelector(withCurrentUserId(selectUserById)) const { rats } = user.relationships const dispatch = useDispatch() @@ -27,7 +26,7 @@ function UserRatsPanel ({ user }) { if (!ratStatistics) { dispatch(getUserStatistics(user.id)) } - // eslint-disable-next-line react-hooks/exhaustive-deps + // eslint-disable-next-line react-hooks/exhaustive-deps }, []) return ( @@ -54,14 +53,4 @@ function UserRatsPanel ({ user }) { -UserRatsPanel.mapStateToProps = (state) => { - return { - user: withCurrentUserId(selectUserById)(state), - } -} - - - - - -export default connect(UserRatsPanel) +export default UserRatsPanel diff --git a/src/components/ValidatedFormInput.js b/src/components/ValidatedFormInput.js index 7afeacaff..e12c4b923 100644 --- a/src/components/ValidatedFormInput.js +++ b/src/components/ValidatedFormInput.js @@ -6,23 +6,10 @@ import React from 'react' class ValidatedFormInput extends React.Component { - /***************************************************************************\ - Class Propreties - \***************************************************************************/ - state = { errorMessage: '', } - - - - - /***************************************************************************\ - Private Methods - \***************************************************************************/ - - _checkValidity = (target) => { const { invalidMessage, @@ -78,12 +65,6 @@ class ValidatedFormInput extends React.Component { - - - /***************************************************************************\ - Public Methods - \***************************************************************************/ - render () { const { errorMessage, diff --git a/src/components/ValidatedFormSelect.js b/src/components/ValidatedFormSelect.js index a374e714e..c23b55bb5 100644 --- a/src/components/ValidatedFormSelect.js +++ b/src/components/ValidatedFormSelect.js @@ -6,10 +6,6 @@ import React from 'react' class ValidatedFormSelect extends React.Component { - /***************************************************************************\ - Private Methods - \***************************************************************************/ - _handleChange = ({ target }) => { const { invalidMessage, @@ -36,14 +32,6 @@ class ValidatedFormSelect extends React.Component { }) } - - - - - /***************************************************************************\ - Public Methods - \***************************************************************************/ - render () { const { className, diff --git a/src/components/WordpressPage.js b/src/components/WordpressPage.js new file mode 100644 index 000000000..66c7e0de8 --- /dev/null +++ b/src/components/WordpressPage.js @@ -0,0 +1,66 @@ +import PropTypes from 'prop-types' +import { useEffect, useMemo } from 'react' +import { useDispatch } from 'react-redux' + +import useSelectorWithProps from '~/hooks/useSelectorWithProps' +import useToggleState from '~/hooks/useToggleState' +import { getWordpressPage } from '~/store/actions/wordpress' +import { selectWordpressPageBySlug } from '~/store/selectors' + + + + + +// Component Constants + + + + + +function WordpressPage ({ className, slug }) { + const page = useSelectorWithProps({ slug }, selectWordpressPageBySlug) + const [loading, toggleLoading] = useToggleState(true) + + const dispatch = useDispatch() + + useEffect(() => { + const checkPageExistance = async () => { + if (!page) { + toggleLoading(true) + await dispatch(getWordpressPage(slug)) + } + toggleLoading(false) + } + checkPageExistance() + // eslint-disable-next-line react-hooks/exhaustive-deps -- only run on slug change. + }, [slug]) + + const renderedContent = useMemo(() => { + if (!page?.content?.rendered) { + return undefined + } + + return page.content.rendered + .replace(/<ul>/giu, '<ul class="bulleted">') + .replace(/<ol>/giu, '<ol class="numbered">') + }, [page?.content?.rendered]) + + /* eslint-disable react/no-danger */ + return ( + <div + className={['article-content loading', { error: !renderedContent && !loading }, className]} + dangerouslySetInnerHTML={{ __html: renderedContent }} /> + ) + /* eslint-enable */ +} + +WordpressPage.propTypes = { + className: PropTypes.string, + slug: PropTypes.string.isRequired, +} + + + + + +export default WordpressPage diff --git a/src/components/Modal/ModalContent.js b/src/components/asModal/ModalContent.js similarity index 100% rename from src/components/Modal/ModalContent.js rename to src/components/asModal/ModalContent.js diff --git a/src/components/Modal/ModalFooter.js b/src/components/asModal/ModalFooter.js similarity index 100% rename from src/components/Modal/ModalFooter.js rename to src/components/asModal/ModalFooter.js diff --git a/src/components/Modal/ModalHeader.js b/src/components/asModal/ModalHeader.js similarity index 100% rename from src/components/Modal/ModalHeader.js rename to src/components/asModal/ModalHeader.js diff --git a/src/components/Modal/ModalPortal.js b/src/components/asModal/ModalPortal.js similarity index 100% rename from src/components/Modal/ModalPortal.js rename to src/components/asModal/ModalPortal.js diff --git a/src/components/Modal/Modal.js b/src/components/asModal/asModal.js similarity index 100% rename from src/components/Modal/Modal.js rename to src/components/asModal/asModal.js index 6e1c322db..081944d4c 100644 --- a/src/components/Modal/Modal.js +++ b/src/components/asModal/asModal.js @@ -68,8 +68,8 @@ function ModalComponent (props) { return ( <ModalContext.Provider value={sharedContext}> <RootElement - {...modalMotionConfig} key="modal" + {...modalMotionConfig} className={['modal', className]} role="dialog"> diff --git a/src/components/Modal/index.js b/src/components/asModal/index.js similarity index 73% rename from src/components/Modal/index.js rename to src/components/asModal/index.js index 925df282b..8450ffad7 100644 --- a/src/components/Modal/index.js +++ b/src/components/asModal/index.js @@ -1,4 +1,4 @@ -export { default } from './Modal' +export { default, useModalContext } from './asModal' export { default as ModalContent } from './ModalContent' export { default as ModalFooter, FooterPrimary, FooterSecondary } from './ModalFooter' diff --git a/src/data/CountryList.js b/src/data/CountryList.js deleted file mode 100644 index 31b2785c2..000000000 --- a/src/data/CountryList.js +++ /dev/null @@ -1,255 +0,0 @@ -// Country data from https://www.freeformatter.com/iso-country-list-html-select.html -const countryList = [ - 'Afghanistan', - 'Åland Islands', - 'Albania', - 'Algeria', - 'American Samoa', - 'Andorra', - 'Angola', - 'Anguilla', - 'Antarctica', - 'Antigua and Barbuda', - 'Argentina', - 'Armenia', - 'Aruba', - 'Australia', - 'Austria', - 'Azerbaijan', - 'Bahamas', - 'Bahrain', - 'Bangladesh', - 'Barbados', - 'Belarus', - 'Belgium', - 'Belize', - 'Benin', - 'Bermuda', - 'Bhutan', - 'Bolivia, Plurinational State of', - 'Bonaire, Sint Eustatius and Saba', - 'Bosnia and Herzegovina', - 'Botswana', - 'Bouvet Island', - 'Brazil', - 'British Indian Ocean Territory', - 'Brunei Darussalam', - 'Bulgaria', - 'Burkina Faso', - 'Burundi', - 'Cambodia', - 'Cameroon', - 'Canada', - 'Cape Verde', - 'Cayman Islands', - 'Central African Republic', - 'Chad', - 'Chile', - 'China', - 'Christmas Island', - 'Cocos (Keeling) Islands', - 'Colombia', - 'Comoros', - 'Congo', - 'Congo, the Democratic Republic of the', - 'Cook Islands', - 'Costa Rica', - "Côte d'Ivoire", - 'Croatia', - 'Cuba', - 'Curaçao', - 'Cyprus', - 'Czech Republic', - 'Denmark', - 'Djibouti', - 'Dominica', - 'Dominican Republic', - 'Ecuador', - 'Egypt', - 'El Salvador', - 'Equatorial Guinea', - 'Eritrea', - 'Estonia', - 'Ethiopia', - 'Falkland Islands (Malvinas)', - 'Faroe Islands', - 'Fiji', - 'Finland', - 'France', - 'French Guiana', - 'French Polynesia', - 'French Southern Territories', - 'Gabon', - 'Gambia', - 'Georgia', - 'Germany', - 'Ghana', - 'Gibraltar', - 'Greece', - 'Greenland', - 'Grenada', - 'Guadeloupe', - 'Guam', - 'Guatemala', - 'Guernsey', - 'Guinea', - 'Guinea-Bissau', - 'Guyana', - 'Haiti', - 'Heard Island and McDonald Islands', - 'Holy See (Vatican City State)', - 'Honduras', - 'Hong Kong', - 'Hungary', - 'Iceland', - 'India', - 'Indonesia', - 'Iran, Islamic Republic of', - 'Iraq', - 'Ireland', - 'Isle of Man', - 'Israel', - 'Italy', - 'Jamaica', - 'Japan', - 'Jersey', - 'Jordan', - 'Kazakhstan', - 'Kenya', - 'Kiribati', - "Korea, Democratic People's Republic of", - 'Korea, Republic of', - 'Kuwait', - 'Kyrgyzstan', - "Lao People's Democratic Republic", - 'Latvia', - 'Lebanon', - 'Lesotho', - 'Liberia', - 'Libya', - 'Liechtenstein', - 'Lithuania', - 'Luxembourg', - 'Macao', - 'Macedonia, the former Yugoslav Republic of', - 'Madagascar', - 'Malawi', - 'Malaysia', - 'Maldives', - 'Mali', - 'Malta', - 'Marshall Islands', - 'Martinique', - 'Mauritania', - 'Mauritius', - 'Mayotte', - 'Mexico', - 'Micronesia, Federated States of', - 'Moldova, Republic of', - 'Monaco', - 'Mongolia', - 'Montenegro', - 'Montserrat', - 'Morocco', - 'Mozambique', - 'Myanmar', - 'Namibia', - 'Nauru', - 'Nepal', - 'Netherlands', - 'New Caledonia', - 'New Zealand', - 'Nicaragua', - 'Niger', - 'Nigeria', - 'Niue', - 'Norfolk Island', - 'Northern Mariana Islands', - 'Norway', - 'Oman', - 'Pakistan', - 'Palau', - 'Palestinian Territory, Occupied', - 'Panama', - 'Papua New Guinea', - 'Paraguay', - 'Peru', - 'Philippines', - 'Pitcairn', - 'Poland', - 'Portugal', - 'Puerto Rico', - 'Qatar', - 'Réunion', - 'Romania', - 'Russian Federation', - 'Rwanda', - 'Saint Barthélemy', - 'Saint Helena, Ascension and Tristan da Cunha', - 'Saint Kitts and Nevis', - 'Saint Lucia', - 'Saint Martin (French part)', - 'Saint Pierre and Miquelon', - 'Saint Vincent and the Grenadines', - 'Samoa', - 'San Marino', - 'Sao Tome and Principe', - 'Saudi Arabia', - 'Senegal', - 'Serbia', - 'Seychelles', - 'Sierra Leone', - 'Singapore', - 'Sint Maarten (Dutch part)', - 'Slovakia', - 'Slovenia', - 'Solomon Islands', - 'Somalia', - 'South Africa', - 'South Georgia and the South Sandwich Islands', - 'South Sudan', - 'Spain', - 'Sri Lanka', - 'Sudan', - 'Suriname', - 'Svalbard and Jan Mayen', - 'Swaziland', - 'Sweden', - 'Switzerland', - 'Syrian Arab Republic', - 'Taiwan, Province of China', - 'Tajikistan', - 'Tanzania, United Republic of', - 'Thailand', - 'Timor-Leste', - 'Togo', - 'Tokelau', - 'Tonga', - 'Trinidad and Tobago', - 'Tunisia', - 'Turkey', - 'Turkmenistan', - 'Turks and Caicos Islands', - 'Tuvalu', - 'Uganda', - 'Ukraine', - 'United Arab Emirates', - 'United Kingdom', - 'United States', - 'United States Minor Outlying Islands', - 'Uruguay', - 'Uzbekistan', - 'Vanuatu', - 'Venezuela, Bolivarian Republic of', - 'Viet Nam', - 'Virgin Islands, British', - 'Virgin Islands, U.S.', - 'Wallis and Futuna', - 'Western Sahara', - 'Yemen', - 'Zambia', - 'Zimbabwe', -] - - -export default countryList diff --git a/src/data/apiErrorLocalisations.js b/src/data/apiErrorLocalisations.js new file mode 100644 index 000000000..c1d5bf5fd --- /dev/null +++ b/src/data/apiErrorLocalisations.js @@ -0,0 +1,43 @@ +const apiErrorLocalisations = { + bad_request: { + title: 'Bad Request', + detail: 'The server cannot or will not process the request due to something that is perceived to be a client error', + }, + + unauthorized: { + title: 'Unauthorized', + detail: 'You lack valid authentication credentials to perform this action.', + }, + + method_not_allowed: { + title: 'Method Not Allowed', + detail: 'The method received in the request-line is known by the origin server but not supported by the target resource.', + }, + + too_many_requests: { + title: 'Too Many Requests', + detail: 'The user has sent too many requests in a given amount of time and has been rate limited.', + }, + + internal_server: { + title: 'Internal Server Error', + detail: 'The server encountered an unexpected condition that prevented it from fulfilling the request.', + }, + + not_implemented: { + title: 'Not Implemented', + detail: 'The server does not support the functionality required to fulfill the request.', + }, + + internal_server_error: { + title: 'Internal Server Error', + detail: 'The server encountered an unexpected condition that prevented it from fulfilling the request.', + }, + + not_found: { + title: 'Not Found', + detail: 'The origin server did not find a current representation for the target resource or is not willing to disclose that one exists.', + }, +} + +export default apiErrorLocalisations diff --git a/src/data/LanguageList.js b/src/data/languageList.js similarity index 94% rename from src/data/LanguageList.js rename to src/data/languageList.js index ab4c0862e..e15ea1b9f 100644 --- a/src/data/LanguageList.js +++ b/src/data/languageList.js @@ -1,4 +1,4 @@ -const languages = { +const languageList = { bg: { short: 'BG', long: 'Bulgarian', @@ -142,15 +142,15 @@ const languages = { } -export default languages +export default languageList export function getLanguage (lang) { if (!lang) { - return languages.unknown + return languageList.unknown } const [langCode] = lang.split('-') - const langData = languages[langCode] + const langData = languageList[langCode] if (!langData) { return { diff --git a/src/data/PlatformList.js b/src/data/platformList.js similarity index 71% rename from src/data/PlatformList.js rename to src/data/platformList.js index 8308acce0..5d907b2bf 100644 --- a/src/data/PlatformList.js +++ b/src/data/platformList.js @@ -1,4 +1,4 @@ -const platforms = { +const platformList = { pc: { short: 'PC', long: 'PC', @@ -17,12 +17,12 @@ const platforms = { }, } -export default platforms +export default platformList export function getPlatform (platform) { if (!platform) { - return platforms.unknown + return platformList.unknown } - return platforms[platform] + return platformList[platform] } diff --git a/src/helpers/apiMiddlewares.js b/src/helpers/apiMiddlewares.js deleted file mode 100644 index 7fa286eef..000000000 --- a/src/helpers/apiMiddlewares.js +++ /dev/null @@ -1,19 +0,0 @@ -import { isRequired } from '@fuelrats/validation-util' -import { HttpStatus } from '@fuelrats/web-util/http' - - - - -export function methodRouter (handlers = isRequired('handlers')) { - return async (req, res) => { - const methodHandler = handlers[req.method] - - if (typeof methodHandler === 'function') { - await methodHandler(req, res) - return - } - - res.setHeader('Allow', Object.keys(handlers)) - res.status(HttpStatus.METHOD_NOT_ALLOWED).end(`Method ${req.method} Not Allowed`) - } -} diff --git a/src/helpers/arrIncludes.js b/src/helpers/arrIncludes.js deleted file mode 100644 index 09491648f..000000000 --- a/src/helpers/arrIncludes.js +++ /dev/null @@ -1,11 +0,0 @@ -export function includesAll (target, items) { - return target.every((targetItem) => { - return items.includes(targetItem) - }) -} - -export function includesSome (target, items) { - return target.some((targetItem) => { - return items.includes(targetItem) - }) -} diff --git a/src/helpers/formatTime.js b/src/helpers/formatTime.js deleted file mode 100644 index 0e78027b9..000000000 --- a/src/helpers/formatTime.js +++ /dev/null @@ -1,110 +0,0 @@ -import { format as formatTz } from 'date-fns-tz' - - - - - -const ELITE_GAME_YEAR_DISPARITY = 1286 // Years between IRL year and Elite universe year -const MILLISECONDS_IN_SECOND = 1000 -const MINUTES_IN_HOUR = 60 -const SECONDS_IN_HOUR = 3600 -const SECONDS_IN_MINUTE = 60 -const SECONDS_IN_DAY = 86400 - -function padNum (number) { - return String(number).padStart(2, 0) -} - - - - - -/** - * @param {string | number | Date} value Timestamp string, epoch, or date object. - * @returns {Date} - */ -export function toEliteDate (value) { - const date = new Date(value) - - return new Date( - date.getUTCFullYear() + ELITE_GAME_YEAR_DISPARITY, - date.getUTCMonth(), - date.getUTCDate(), - date.getUTCHours(), - date.getUTCMinutes(), - date.getUTCSeconds(), - date.getUTCMilliseconds(), - ) -} - - - - - -/** - * @param {string | number | Date} value Timestamp string, epoch, or date object. - * @param {string} format date-fns format string - * @returns {string} - */ -export function formatElite (value, format) { - return formatTz( - toEliteDate(value), - format, - { timeZone: 'UTC' }, - ) -} - - - - - -/** - * @param {string | number | Date} value Timestamp string, epoch, or date object. - * @returns {string} - */ -export function formatAsEliteDate (value) { - return formatElite( - value, - 'dd MMM yyyy', - ).toUpperCase() -} - - - - - -/** - * @param {string | number | Date} value Timestamp string, epoch, or date object. - * @param {boolean} withSeconds - * @returns {string} - */ -export function formatAsEliteDateTime (value, withSeconds) { - return formatElite( - value, - `dd MMM yyyy HH:mm${withSeconds ? ':ss' : ''}`, - ).toUpperCase() -} - - - - - -/** - * @param {string | number | Date} value Timestamp string, epoch, or date object. - * @returns {[string, number]} A tuple containing the formatted string and the remainder amount of milliseconds. - */ -export function formatTimeElapsed (value) { - const startTime = (new Date(value)).getTime() - const nowTime = Date.now() - - const totalMilliseconds = nowTime - startTime - const totalSeconds = Math.floor(totalMilliseconds / MILLISECONDS_IN_SECOND) - - const days = Math.floor(totalSeconds / SECONDS_IN_DAY) - const hours = Math.floor((totalSeconds % SECONDS_IN_DAY) / SECONDS_IN_HOUR) - const minutes = Math.floor((totalSeconds % SECONDS_IN_HOUR) / MINUTES_IN_HOUR) - const seconds = totalSeconds % SECONDS_IN_MINUTE - const milliseconds = totalMilliseconds % MILLISECONDS_IN_SECOND - - return [`${days > 0 ? `${days}d ` : ''}${padNum(hours)}:${padNum(minutes)}:${padNum(seconds)}`, milliseconds] -} diff --git a/src/helpers/gIPTools.js b/src/helpers/gIPTools.js deleted file mode 100644 index 36b98269c..000000000 --- a/src/helpers/gIPTools.js +++ /dev/null @@ -1,128 +0,0 @@ -/* global $IS_DEVELOPMENT:false */ -import { HttpStatus } from '@fuelrats/web-util/http' -import jsCookie from 'js-cookie' -import nextCookies from 'next-cookies' -import Router from 'next/router' - -import frApi from '~/services/fuelrats' - - - - - -const MAX_TITLE_LENGTH = 50 -const MAX_DESCR_LENGTH = 300 -const validatePageMeta = (props) => { - if (props.title?.length > MAX_TITLE_LENGTH) { - console.warn(`Page titles should be fewer than 60 characters, preferably closer to 50. This page's title is ${props.title.length} characters.`) - } - - if (props.description?.length > MAX_DESCR_LENGTH) { - console.error(`Page description is too long! The description should be 50-300 characters long, but this page's description is ${props.description.length} characters.`) - } - - if (props.description && props.description.indexOf('"') !== -1) { - console.error('Page descriptions shouldn\'t contain double quotes.') - } -} - - - - - -export const pageRedirect = (ctx, route) => { - let href = null - let as = null - - if (typeof route === 'object') { - href = route.href - as = route.as - } else if (typeof route === 'string') { - as = route - } - - if (ctx.res) { - ctx.res.writeHead(HttpStatus.FOUND, { - Location: as, - }) - ctx.res.end() - ctx.res.finished = true - } else if (route.startsWith('http')) { - if (typeof window !== 'undefined') { - window.location.replace(as) - } - } else { - Router.replace(href ?? as, as) - } -} - - - - - -export const deleteCookie = (cookieName, ctx = {}) => { - if (ctx.res) { - ctx.res.setHeader('Set-Cookie', `${cookieName}=null; path=/; expires=Thu, 01 Jan 1970 00:00:00 GMT`) - } else { - jsCookie.remove(cookieName) - } -} - - - - - -export const setError = (ctx, statusCode, message) => { - if (ctx.res) { - ctx.res.statusCode = statusCode - } - ctx.err = { statusCode, message } -} - - - - - -export const resolvePageMeta = async (Component, ctx, pageProps) => { - const pageMeta = (await Component.getPageMeta?.(ctx, pageProps)) ?? {} - - if ($IS_DEVELOPMENT) { - validatePageMeta(pageMeta) - } - - return { - title: 'Fuel Rats', - description: 'The Fuel Rats are Elite: Dangerous\'s premier emergency refueling service. Fueling the galaxy, one ship at a time, since 3301.', - ...pageMeta, - } -} - - - - - -export const configureRequest = (ctx) => { - // Always setup access token - const { access_token: accessToken } = nextCookies(ctx) - if (accessToken) { - ctx.accessToken = accessToken - } - - // If we're on the server, we should set proxy headers to retain origin IP - if (ctx.isServer) { - const realIp = ctx.req.headers['x-real-ip'] ?? ctx.req.client?.remoteAddress - if (realIp) { - frApi.defaults.headers.common['x-real-ip'] = realIp - } - - const forwardedFor = ctx.req.headers['x-forwarded-for'] ?? ctx.req.client?.remoteAddress - if (forwardedFor) { - frApi.defaults.headers.common['x-forwarded-for'] = forwardedFor - } - - const forwardedProto = ctx.req.headers['x-forwarded-proto'] ?? ctx.req.headers.host - if (forwardedProto) { - frApi.defaults.headers.common['x-forwarded-proto'] = forwardedProto - } - } -} diff --git a/src/helpers/getMoney.js b/src/helpers/getMoney.js deleted file mode 100644 index 292d2117d..000000000 --- a/src/helpers/getMoney.js +++ /dev/null @@ -1,14 +0,0 @@ -// ( ͡° ͜ʖ ͡°) because xlexious told me to -const getMoney = (amount, currency = 'EUR') => { - return (amount / 100).toLocaleString('en-US', { - style: 'currency', - currency, - currencyDisplay: 'symbol', - }) -} - - - - - -export default getMoney diff --git a/src/helpers/routeGen.js b/src/helpers/routeGen.js deleted file mode 100644 index 70c565ba2..000000000 --- a/src/helpers/routeGen.js +++ /dev/null @@ -1,76 +0,0 @@ -import qs from 'qs' - - - - - -/** - * @param {string} href - * @param {object} query - * @returns {string} - */ -export function makeRoute (href = '', query = {}) { - let [route = '/', qStr = ''] = href.split('?') - - const nextQStr = qs.stringify({ - ...qs.parse(qStr), - ...query, - }) - - if (nextQStr.length) { - route += `?${nextQStr}` - } - - return route -} - -/** - * @param {object} params - * @param {string} params.rescueId - * @returns {string} - */ -export function makePaperworkRoute (params) { - const { - edit = false, - rescueId, - ...query - } = params - - let route = `/paperwork/${rescueId}` - - if (edit) { - route += '/edit' - } - - return makeRoute(route, query) -} - -/** - * @param {object} params - * @param {string|number|null} params.author - * @param {string|number|null} params.category - * @param {string|number|null} params.page - * @returns {string} - */ -export function makeBlogRoute (params) { - const { - author, - category, - page, - ...query - } = params - - let route = '/blog' - - if (author) { - route += `/author/${author}` - } else if (category) { - route += `/category/${category}` - } - - if (typeof page === 'number') { - route += `/page/${page}` - } - - return makeRoute(route, query) -} diff --git a/src/helpers/safeIdleCallback.js b/src/helpers/safeIdleCallback.js deleted file mode 100644 index 3e5c06af3..000000000 --- a/src/helpers/safeIdleCallback.js +++ /dev/null @@ -1,18 +0,0 @@ -const DEFAULT_TIMER = 500 // 0.5 seconds - - -/** - * provides a safe way to call `requestIdleCallback`. Uses `setTimeout` in the event that `requestIdleCallback` is unavailable - * - * WARNING: Avoid using in server executed code. - * - * @param {Function} callback function to run when application is "idle" - * @param {number} delay Time (in milliseconds) the fallback `setTimeout` method should wait before the callback is executed. - */ -export default function safeIdleCallback (callback, delay = DEFAULT_TIMER) { - if (typeof window !== 'undefined' && window.requestIdleCallback) { - requestIdleCallback(callback) - } else { - setTimeout(callback, delay) - } -} diff --git a/src/helpers/userHasPermission.js b/src/helpers/userHasPermission.js deleted file mode 100644 index 3b5b0c7e5..000000000 --- a/src/helpers/userHasPermission.js +++ /dev/null @@ -1,7 +0,0 @@ -export default function userHasPermission (permissions, permission) { - if (!Array.isArray(permissions) || !permissions.length) { - return false - } - - return permissions.includes(permission) -} diff --git a/src/hooks/frapi/useCreateEpicApi.js b/src/hooks/frapi/useCreateEpicApi.js index 13ba31d57..56e039257 100644 --- a/src/hooks/frapi/useCreateEpicApi.js +++ b/src/hooks/frapi/useCreateEpicApi.js @@ -1,8 +1,8 @@ import { useEffect, useReducer, useState } from 'react' import { useDispatch } from 'react-redux' -import { isValidUuidV4 } from '~/helpers/uuidValidator' import { createEpic } from '~/store/actions/epics' +import { isValidUuidV4 } from '~/util/string/uuidValidator' const rescueFetchReducer = (state, action) => { switch (action.type) { diff --git a/src/hooks/frapi/useSearchRescueApi.js b/src/hooks/frapi/useSearchRescueApi.js index f585a7a0e..cd83e0233 100644 --- a/src/hooks/frapi/useSearchRescueApi.js +++ b/src/hooks/frapi/useSearchRescueApi.js @@ -1,8 +1,8 @@ import { useEffect, useReducer, useState } from 'react' import { useDispatch } from 'react-redux' -import { isValidUuidV4 } from '~/helpers/uuidValidator' import { getRescue } from '~/store/actions/rescues' +import { isValidUuidV4 } from '~/util/string/uuidValidator' const rescueFetchReducer = (state, action) => { switch (action.type) { diff --git a/src/hooks/rescueHooks.js b/src/hooks/rescueHooks.js index d3ddac614..101a88f30 100644 --- a/src/hooks/rescueHooks.js +++ b/src/hooks/rescueHooks.js @@ -2,9 +2,9 @@ import { HttpStatus } from '@fuelrats/web-util/http' import axios from 'axios' import { useMemo, useState, useEffect } from 'react' -import { getLanguage } from '~/data/LanguageList' -import { getPlatform } from '~/data/PlatformList' -import { formatAsEliteDateTime } from '~/helpers/formatTime' +import { getLanguage } from '~/data/languageList' +import { getPlatform } from '~/data/platformList' +import formatAsEliteDateTime from '~/util/date/formatAsEliteDateTime' const pollTimeoutTime = 10000 @@ -46,8 +46,8 @@ export const useRescueQueueCount = () => { const { data, status } = await axios.get('/api/qms/queue') if (status === HttpStatus.OK) { - setCount(data.data.queueLength) - setMax(data.data.maxClients) + setCount(data.data.attributes.queueLength) + setMax(data.data.attributes.maxClients) } diff --git a/src/hooks/useDeltaReducer.js b/src/hooks/useDeltaReducer.js index cec973069..e58a72e35 100644 --- a/src/hooks/useDeltaReducer.js +++ b/src/hooks/useDeltaReducer.js @@ -4,7 +4,7 @@ import _unset from 'lodash/unset' import { useCallback } from 'react' import { useImmerReducer } from 'use-immer' -import isEqual from '~/helpers/isEqual' +import isEqual from '~/util/isEqual' @@ -13,7 +13,11 @@ import isEqual from '~/helpers/isEqual' export default function useDeltaReducer (initialState) { const deltaReducer = useCallback( (draft, action) => { - const { name, value } = action + const { name, value, clear } = action + if (clear) { + return {} + } + const initialValue = _get(initialState, name) if (isEqual(initialValue, value)) { @@ -21,6 +25,8 @@ export default function useDeltaReducer (initialState) { } else { _set(draft, name, value) } + + return undefined }, [initialState], ) diff --git a/src/hooks/useForm/useField.js b/src/hooks/useForm/useField.js index 5aa6b0ed0..d02653eeb 100644 --- a/src/hooks/useForm/useField.js +++ b/src/hooks/useForm/useField.js @@ -30,7 +30,7 @@ function useField (name = isRequired('name'), opts = {}) { const debouncedValidate = useDebouncedCallback( async (value) => { dirtyState.current = false - await ctxRef.current?.validateField(nameRef.current, value, ctxRef.current?.ctx.state) + await ctxRef.current?.validateField(nameRef.current, value) setValidatingState(false) }, [], diff --git a/src/hooks/useForm/useForm.js b/src/hooks/useForm/useForm.js index 1228ee469..755c4efa7 100644 --- a/src/hooks/useForm/useForm.js +++ b/src/hooks/useForm/useForm.js @@ -28,8 +28,8 @@ export default function useForm (config = {}) { const [submitting, setSubmit] = useState(false) const [{ __init }, isValid, dispatchValidity] = useValidityReducer({ __init: false }) - const [stateDelta, dispatchDelta] = useDeltaReducer(initialState) - const [state, dispatchState] = useObjectReducer(initialState) + const [stateDelta, dispatchDelta] = useDeltaReducer(initialStateRef.current) + const [state, dispatchState] = useObjectReducer(initialStateRef.current) const validationMethods = useRef({}) const dispatchField = useCallback( @@ -93,14 +93,22 @@ export default function useForm (config = {}) { [dispatchValidity], ) + const resetForm = useCallback(() => { + dispatchState({ fragment: initialStateRef.current }) + validateAll(initialStateRef.current) + if (trackDelta) { + dispatchDelta({ clear: true }) + } + }, [dispatchDelta, dispatchState, trackDelta, validateAll]) + const handleSubmit = useCallback( async (event) => { event.preventDefault() setSubmit(true) - await parentSubmit(state, stateDelta) + await parentSubmit(state, stateDelta, resetForm) setSubmit(false) }, - [parentSubmit, state, stateDelta], + [parentSubmit, resetForm, state, stateDelta], ) const ctxRef = useRef({ ctx: {} }) @@ -115,6 +123,7 @@ export default function useForm (config = {}) { submitting, dispatchField, dispatchValidity, + resetForm, }, registerValidator, validateAll, @@ -123,7 +132,7 @@ export default function useForm (config = {}) { } }, [ - __init, dispatchField, dispatchValidity, + __init, dispatchField, dispatchValidity, resetForm, handleSubmit, isValid, registerValidator, state, submitting, validateAll, validateField, diff --git a/src/hooks/useObjectReducer.js b/src/hooks/useObjectReducer.js index 00fa5b6fc..4f202c243 100644 --- a/src/hooks/useObjectReducer.js +++ b/src/hooks/useObjectReducer.js @@ -3,12 +3,17 @@ import _set from 'lodash/set' import _unset from 'lodash/unset' import { useImmerReducer } from 'use-immer' +import { mergeReducer } from './useMergeReducer' + const stateReducer = (draft, action) => { - const { name, value } = action - const curValue = _get(draft, name) + const { name, value, fragment } = action + if (fragment) { + return mergeReducer(draft, fragment) + } + const curValue = _get(draft, name) if (curValue !== value) { if (typeof value === 'undefined') { _unset(draft, name) @@ -16,6 +21,7 @@ const stateReducer = (draft, action) => { _set(draft, name, value) } } + return undefined } diff --git a/src/hooks/useToggleState.js b/src/hooks/useToggleState.js new file mode 100644 index 000000000..05ad648b6 --- /dev/null +++ b/src/hooks/useToggleState.js @@ -0,0 +1,17 @@ +import { useCallback, useState } from 'react' + +export default function useToggleState (initialState = false) { + const [state, setState] = useState(initialState) + + const toggleState = useCallback((nextState) => { + setState((curState) => { + return Boolean( + typeof nextState === 'function' + ? (nextState(curState) ?? !curState) + : (nextState ?? !curState), + ) + }) + }, []) + + return [state, toggleState] +} diff --git a/src/hooks/useZxcvbn.js b/src/hooks/useZxcvbn.js new file mode 100644 index 000000000..a8fcd1c36 --- /dev/null +++ b/src/hooks/useZxcvbn.js @@ -0,0 +1,38 @@ +import { useEffect, useState } from 'react' + + + +const loadTimeoutTimer = 45000 // 45s +let zxcvbn = null + + + +export default function useZxcvbn () { + const [isLoading, setLoadState] = useState(false) + + useEffect(() => { + let loaderTimeout = null + + const loadZxcvbn = async () => { + setLoadState(true) + loaderTimeout = setTimeout(() => { + setLoadState(false) + }, loadTimeoutTimer) + + zxcvbn = (await import(/* webpackChunkName: "zxcvbn-async" */ 'zxcvbn')).default + + clearTimeout(loaderTimeout) + setLoadState(false) + } + + if (!zxcvbn) { + loadZxcvbn() + } + + return () => { + clearTimeout(loaderTimeout) + } + }, []) + + return [zxcvbn, isLoading] +} diff --git a/src/pages/[slug].js b/src/pages/[slug].js index 352e2eba0..f6fefb093 100644 --- a/src/pages/[slug].js +++ b/src/pages/[slug].js @@ -1,79 +1,37 @@ -import { HttpStatus } from '@fuelrats/web-util/http' import { isError } from 'flux-standard-action' -import React from 'react' -import { setError } from '~/helpers/gIPTools' -import { connect } from '~/store' +import WordpressPage from '~/components/WordpressPage' import { getWordpressPage } from '~/store/actions/wordpress' import { selectWordpressPageBySlug } from '~/store/selectors' +import setError from '~/util/getInitialProps/setError' + +function WordpressProxy (props) { + return ( + <article className="page-content"> + <WordpressPage slug={props.query?.slug} /> + </article> + ) +} +WordpressProxy.getInitialProps = async (ctx) => { + const { query, store } = ctx + const { slug } = query - - - -@connect -class WordpressProxy extends React.Component { - /***************************************************************************\ - Public Methods - \***************************************************************************/ - - static async getInitialProps (ctx) { - const { query, store } = ctx - const { slug } = query - - if (!selectWordpressPageBySlug(store.getState(), { slug })) { - const response = await store.dispatch(getWordpressPage(slug)) - - if (isError(response)) { - setError(ctx, HttpStatus.NOT_FOUND) - } - } - } - - static getPageMeta ({ store, query }) { - const page = selectWordpressPageBySlug(store.getState(), { slug: query.slug }) - - return { - className: 'wordpress-page', - title: page.title.rendered, - pageKey: query.slug, + if (!selectWordpressPageBySlug(store.getState(), { slug })) { + const response = await store.dispatch(getWordpressPage(slug)) + if (isError(response)) { + setError(ctx, response.meta?.response?.status) } } +} - render () { - const { page } = this.props - let content = null - - if (page) { - content = page.content.rendered.replace(/<ul>/giu, '<ul class="bulleted">').replace(/<ol>/giu, '<ol class="numbered">') - } - - /* eslint-disable react/no-danger */ - return ( - <> - { - Boolean(page) && ( - <article className="page-content"> - <div - className="article-content" - dangerouslySetInnerHTML={{ __html: content }} /> - </article> - ) - } - { - !page && ( - <article className="error page-content" /> - ) - } - </> - ) - /* eslint-enable */ - } +WordpressProxy.getPageMeta = ({ store, query }) => { + const page = selectWordpressPageBySlug(store.getState(), { slug: query.slug }) - static mapStateToProps = (state, ownProps) => { - return { - page: selectWordpressPageBySlug(state, { slug: ownProps.query?.slug }) || ownProps.query.page || null, - } + return { + className: 'wordpress-page', + title: page.title.rendered, + key: query.slug, } } diff --git a/src/pages/_app.js b/src/pages/_app.js index 0e4952edb..bc2437be8 100644 --- a/src/pages/_app.js +++ b/src/pages/_app.js @@ -11,14 +11,14 @@ import LoginModal from '~/components/LoginModal' import NProgress from '~/components/NProgress' import SilentBoundary from '~/components/SilentBoundary' import UserMenu from '~/components/UserMenu' -import * as faIcons from '~/helpers/faIconLibrary' -import { resolvePageMeta } from '~/helpers/gIPTools' import { initStore } from '~/store' import { initUserSession, notifyPageDestroyed, notifyPageLoading, } from '~/store/actions/session' +import * as faIcons from '~/util/fontawesome/library' +import resolvePageMeta from '~/util/getInitialProps/resolvePageMeta' import ErrorPage from './_error' @@ -119,9 +119,9 @@ class FuelRatsApp extends App { <AnimatePresence initial={false} onExitComplete={this.handlePageDestroy}> <m.main - {...pageMotionConfig} key={key} - className={['page', title.toLowerCase().replace(/\s/gu, '-'), className]}> + {...pageMotionConfig} + className={['page', className]}> { !noHeader && ( <header className="page-header"> @@ -165,7 +165,7 @@ class FuelRatsApp extends App { Page, pageProps, pageMeta, - key: pageMeta.pageKey ?? router.asPath, + key: pageMeta.key ?? router.asPath, } } } diff --git a/src/pages/_document.js b/src/pages/_document.js index 7f5994e2b..2d6569ffa 100644 --- a/src/pages/_document.js +++ b/src/pages/_document.js @@ -1,7 +1,8 @@ import Document, { Html, Head, Main, NextScript } from 'next/document' - +// eslint-disable-next-line no-template-curly-in-string -- intentional +const noJSMessage = 'Blocking JavaScript in ${currentYear}.... You\'re just asking for trouble at this point.' class FuelRatsWebsite extends Document { @@ -45,7 +46,9 @@ class FuelRatsWebsite extends Document { <link href="/static/favicon/favicon-16.png" rel="icon" sizes="16x16" type="image/png" /> <link href="/static/favicon/favicon-128.png" rel="icon" sizes="128x128" type="image/png" /> - <link href="https://fonts.googleapis.com/css2?family=Open+Sans:ital@0;1&family=Raleway" rel="stylesheet" /> + <link href="https://fonts.gstatic.com" rel="preconnect" /> + <link href="https://fonts.googleapis.com/css2?family=Open+Sans:ital@0;1&family=Raleway&display=swap" rel="stylesheet" /> + <link href="/manifest.json" rel="manifest" /> @@ -55,7 +58,7 @@ class FuelRatsWebsite extends Document { </Head> <body> - <noscript>{'Javascript is required to view this site, silly!'}</noscript> + <noscript>{noJSMessage}</noscript> <Main className="next-wrapper" /> diff --git a/src/pages/admin/rescues/index.js b/src/pages/admin/rescues/index.js index 9368598d1..2ef363f1d 100644 --- a/src/pages/admin/rescues/index.js +++ b/src/pages/admin/rescues/index.js @@ -4,11 +4,12 @@ import Link from 'next/link' import React from 'react' import { authenticated } from '~/components/AppLayout' -import { formatAsEliteDateTime } from '~/helpers/formatTime' -import { makePaperworkRoute } from '~/helpers/routeGen' -import { connect } from '~/store' +import useSelectorWithProps from '~/hooks/useSelectorWithProps' +import { connectState } from '~/store' import { getRescues } from '~/store/actions/rescues' import { selectPageViewDataById, selectPageViewMetaById } from '~/store/selectors' +import formatAsEliteDateTime from '~/util/date/formatAsEliteDateTime' +import makePaperworkRoute from '~/util/router/makePaperworkRoute' @@ -24,25 +25,12 @@ const pageViewId = 'admin-rescue-list' @authenticated('rescue.write') -@connect class ListRescues extends React.Component { - /***************************************************************************\ - Class Properties - \***************************************************************************/ - state = { client: '', loading: false, } - - - - - /***************************************************************************\ - Private Methods - \***************************************************************************/ - _handleSearchChange = (event) => { this.setState({ client: event.target.value, @@ -59,28 +47,20 @@ class ListRescues extends React.Component { this.setState( { loading: true }, async () => { - await this.props.getRescues( + await this.props.dispatch(getRescues( this.state.client ? { 'client.ilike': `${this.state.client}%` } : { 'status.ne': 'closed' }, { pageView: pageViewId, }, - ) + )) this.setState({ loading: false }) }, ) }, viewUpdateDebounceTime, { maxWait: viewUpdateMaxWaitTime }) - - - - - /***************************************************************************\ - Public Methods - \***************************************************************************/ - static async getInitialProps ({ store }) { await store.dispatch( getRescues( @@ -186,27 +166,13 @@ class ListRescues extends React.Component { </div> ) } - - - - - - /***************************************************************************\ - Redux Properties - \***************************************************************************/ - - static mapDispatchToProps = ['getRescues'] - - static mapStateToProps = (state) => { - return { - rescues: selectPageViewDataById(state, { pageViewId }) || [], - meta: selectPageViewMetaById(state, { pageViewId }), - } - } } - - -export default ListRescues +export default connectState(() => { + return { + meta: useSelectorWithProps({ pageViewId }, selectPageViewMetaById), + rescues: useSelectorWithProps({ pageViewId }, selectPageViewDataById) ?? [], + } +})(ListRescues) diff --git a/src/pages/api/apple-app-site-association.js b/src/pages/api/apple-app-site-association.js new file mode 100644 index 000000000..611411209 --- /dev/null +++ b/src/pages/api/apple-app-site-association.js @@ -0,0 +1,12 @@ +import { HttpStatus } from '@fuelrats/web-util/http' + +/* + * Almost always redirected from '/apple-app-site-Association' + */ +export default function appleAppSiteAssociation (req, res) { + res.status(HttpStatus.OK).json({ + webcredentials: { + apps: ['9X89US848J.com.fuelrats.Dispatch-Board'], + }, + }) +} diff --git a/src/pages/api/avatars/[[...slug]].js b/src/pages/api/avatars/[[...slug]].js new file mode 100644 index 000000000..64f6b8842 --- /dev/null +++ b/src/pages/api/avatars/[[...slug]].js @@ -0,0 +1,7 @@ +import avatarsRouter from '@fuelrats/next-adorable-avatars' + + + + + +export default avatarsRouter() diff --git a/src/pages/api/edsm/[[...slug]].js b/src/pages/api/edsm/[[...slug]].js new file mode 100644 index 000000000..d84308a78 --- /dev/null +++ b/src/pages/api/edsm/[[...slug]].js @@ -0,0 +1,15 @@ +import apiProxy, { config } from '~/util/server/apiProxy' +import getEnv from '~/util/server/getEnv' + + + + + +export default apiProxy({ + target: getEnv().edsm.url, + pathRewrite: { + '^/api/edsm/': '/', + }, +}) + +export { config } diff --git a/src/pages/api/fr/[[...slug]].js b/src/pages/api/fr/[[...slug]].js new file mode 100644 index 000000000..b6e1394da --- /dev/null +++ b/src/pages/api/fr/[[...slug]].js @@ -0,0 +1,8 @@ +import frApiProxy, { config } from '~/util/server/frApiProxy' + + + + + +export default frApiProxy() +export { config } diff --git a/src/pages/api/fr/oauth2/revoke.js b/src/pages/api/fr/oauth2/revoke.js new file mode 100644 index 000000000..9e31c282f --- /dev/null +++ b/src/pages/api/fr/oauth2/revoke.js @@ -0,0 +1,2 @@ +export { default } from './token' +export { config } from '~/util/server/frApiProxy' diff --git a/src/pages/api/fr/oauth2/token.js b/src/pages/api/fr/oauth2/token.js new file mode 100644 index 000000000..44cf2ecb5 --- /dev/null +++ b/src/pages/api/fr/oauth2/token.js @@ -0,0 +1,17 @@ +import frApiProxy, { config } from '~/util/server/frApiProxy' +import getEnv from '~/util/server/getEnv' + + + + + +const env = getEnv() + + + + + +export default frApiProxy({ + auth: `${env.frapi.clientId}:${env.frapi.clientSecret}`, +}) +export { config } diff --git a/src/pages/api/qms/locales/[id].js b/src/pages/api/qms/locales/[id].js new file mode 100644 index 000000000..f1246fc91 --- /dev/null +++ b/src/pages/api/qms/locales/[id].js @@ -0,0 +1,45 @@ +import { listLocaleFiles } from '~/pages/api/qms/locales' +import { NotFoundAPIError } from '~/util/server/errors' +import acceptMethod from '~/util/server/middleware/acceptMethod' +import jsonApiRoute from '~/util/server/middleware/jsonApiRoute' + +const maxAge = 21600000 // 6 hours + +export function getLocaleData (ctx, localeMeta) { + return ctx.fetch({ + url: localeMeta.links.related, + cache: { + key: `qms-locale-data-${localeMeta.id}`, + maxAge, + }, + }).then(({ data }) => { + return data + }) +} + +export default jsonApiRoute( + acceptMethod.GET(), + async (ctx) => { + const localeMeta = (await listLocaleFiles(ctx)).find((data) => { + return data.id === ctx.req.query.id + }) + if (!localeMeta) { + throw new NotFoundAPIError({ parameter: 'id' }) + } + + ctx.send({ + id: localeMeta.id, + type: 'locale-data', + attributes: { + data: await getLocaleData(ctx, localeMeta), + }, + meta: { + github: { + meta: localeMeta.links.self, + raw: localeMeta.links.related, + html: localeMeta.meta.html, + }, + }, + }) + }, +) diff --git a/src/pages/api/qms/locales/index.js b/src/pages/api/qms/locales/index.js new file mode 100644 index 000000000..ccbcc2404 --- /dev/null +++ b/src/pages/api/qms/locales/index.js @@ -0,0 +1,38 @@ +import acceptMethod from '~/util/server/middleware/acceptMethod' +import jsonApiRoute from '~/util/server/middleware/jsonApiRoute' + +const maxAge = 21600000 // 6 hours +const repo = 'fuelrats/QMS' +const path = 'qms/frontend/public/locales/en' +const branch = 'develop' + +export function listLocaleFiles (ctx) { + return ctx.fetch({ + url: `https://api.github.com/repos/${repo}/contents/${path}?ref=${branch}`, + cache: { + key: 'qms-locale-list', + maxAge, + }, + }).then(({ data }) => { + return data.map((fileMeta) => { + return { + id: fileMeta.name, + type: 'locale-files', + links: { + self: fileMeta.url, + related: fileMeta.download_url, + }, + meta: { + html: fileMeta.html_url, + }, + } + }) + }) +} + +export default jsonApiRoute( + acceptMethod.GET(), + async (ctx) => { + ctx.send(await listLocaleFiles(ctx)) + }, +) diff --git a/src/pages/api/qms/queue.js b/src/pages/api/qms/queue.js index dbb633e9b..8106b8b2d 100644 --- a/src/pages/api/qms/queue.js +++ b/src/pages/api/qms/queue.js @@ -1,90 +1,73 @@ -import { HttpStatus } from '@fuelrats/web-util/http' -import axios from 'axios' +import { InternalServerAPIError } from '~/util/server/errors' +import getEnv from '~/util/server/getEnv' +import acceptMethod from '~/util/server/middleware/acceptMethod' +import jsonApiRoute from '~/util/server/middleware/jsonApiRoute' -import { methodRouter } from '~/helpers/apiMiddlewares' +// Module constants +const env = getEnv() - -const cache = { - count: { - maxAge: 10000, - lastCheck: 0, - value: 0, - }, - max: { - maxAge: 60000, - lastCheck: 0, - value: 0, - }, -} - - - - - -async function Queue (req, res) { - const nowTime = Date.now() - - if (nowTime - cache.count.lastCheck >= cache.count.maxAge) { - cache.count.lastCheck = nowTime - - const { data, status, statusText } = await axios.get( - `${process.env.QMS_API_URL}/api/v1/queue/`, - { - headers: { - Authorization: `Bearer ${process.env.QMS_API_TOKEN}`, - }, - }, - ) - - if (status === HttpStatus.OK) { - const rescueQueue = data.filter((rescue) => { +function getQueueLength (ctx) { + return ctx.fetch({ + url: `${env.qms.url}/api/v1/queue/`, + headers: { + Authorization: `Bearer ${env.qms.token}`, + }, + cache: { + key: 'qms-queue-count', + maxAge: 10000, + }, + }).then( + ({ data }) => { + return data.filter((rescue) => { return !rescue.pending && !rescue.in_progress - }) - - cache.count.value = rescueQueue.length - } else { - console.error('GET /api/v1/queue/', status, statusText, data) - res.status(status).end(statusText) - return - } - } - - if (nowTime - cache.max.lastCheck >= cache.max.maxAge) { - cache.max.lastCheck = nowTime - const { data, status, statusText } = await axios.get( - `${process.env.QMS_API_URL}/api/v1/config/`, - { - headers: { - Authorization: `Bearer ${process.env.QMS_API_TOKEN}`, + }).length + }, + ({ response }) => { + ctx.error(new InternalServerAPIError(null, { + internalError: { + url: 'qms/api/v1/queue/', + status: response.status, + statusText: response.statusText, }, - }, - ) - - if (status === HttpStatus.OK) { - cache.max.value = data.max_active_clients - } else { - console.error('GET /api/v1/config/', status, statusText, data) - } - } - + })) + }, + ) +} - res.status(HttpStatus.OK).json({ - data: { - queueLength: cache.count.value, - maxClients: cache.max.value, +function getMaxQueueLength (ctx) { + return ctx.fetch({ + url: `${env.qms.url}/api/v1/config/`, + headers: { + Authorization: `Bearer ${env.qms.token}`, + }, + cache: { + key: 'qms-queue-max-count', + maxAge: 60000, + }, + }).then( + ({ data }) => { + return data.max_active_clients }, - meta: { - queueAge: nowTime - cache.count.lastCheck, - maxClientAge: nowTime - cache.max.lastCheck, + (error) => { + ctx.error(error) }, - }) + ) } - -export default methodRouter({ - GET: Queue, -}) +export default jsonApiRoute( + acceptMethod.GET(), + async (ctx) => { + ctx.send({ + id: 'static', + type: 'queue-statistics', + attributes: { + queueLength: await getQueueLength(ctx), + maxClients: await getMaxQueueLength(ctx), + }, + }) + }, +) diff --git a/src/server/router/stripeApi/index.mjs b/src/pages/api/stripe/checkout/donate.js similarity index 69% rename from src/server/router/stripeApi/index.mjs rename to src/pages/api/stripe/checkout/donate.js index 6014ca0ee..17afe75df 100644 --- a/src/server/router/stripeApi/index.mjs +++ b/src/pages/api/stripe/checkout/donate.js @@ -1,11 +1,18 @@ /* eslint-disable no-magic-numbers */ -import Router from '@koa/router' import stripeJs from 'stripe' -import authorizeUser from './authorization' -import prepareResponse from './document' -import createControlTower from './TrafficControl' +import getEnv from '~/util/server/getEnv' +import acceptMethod from '~/util/server/middleware/acceptMethod' +import ipFilter from '~/util/server/middleware/ipFilter' +import jsonApiRoute from '~/util/server/middleware/jsonApiRoute' +import requireFingerprint from '~/util/server/middleware/requireFingerprint' +import trafficController from '~/util/server/middleware/trafficController' + + + +const env = getEnv() +const stripe = stripeJs(env.stripe.secret) const getDonationItemInfo = (amount) => { if (amount >= 3500) { @@ -43,19 +50,18 @@ const getDonationItemInfo = (amount) => { } } -const configureStripeApi = (router) => { - const trafficControl = createControlTower() - const stApiRouter = new Router() - stApiRouter.use(prepareResponse) - stApiRouter.use(trafficControl) - stApiRouter.use(authorizeUser) - stApiRouter.post('/checkout/donate', async (ctx) => { - const stripe = stripeJs(ctx.state.env.stripe.secret) + +export default jsonApiRoute( + ipFilter(), + requireFingerprint(), + trafficController(), + acceptMethod.POST(), + async (ctx) => { const { body = {}, - } = ctx.request + } = ctx.req const { amount, @@ -66,9 +72,9 @@ const configureStripeApi = (router) => { const donationInfo = getDonationItemInfo(amount) - ctx.body = await stripe.checkout.sessions.create({ - success_url: `${ctx.state.env.publicUrl}/donate/success`, - cancel_url: `${ctx.state.env.publicUrl}/donate/cancel`, + const session = await stripe.checkout.sessions.create({ + success_url: `${env.appUrl}/donate/success`, + cancel_url: `${env.appUrl}/donate/cancel`, submit_type: 'donate', payment_method_types: ['card'], allow_promotion_codes: false, @@ -77,7 +83,9 @@ const configureStripeApi = (router) => { line_items: [{ name: 'One-time Donation', description: donationInfo?.description, - images: [donationInfo?.image], + images: [ + donationInfo?.image, + ], amount, currency, quantity: 1, @@ -86,13 +94,10 @@ const configureStripeApi = (router) => { fr_payment_type: 'donate', }, }) - }) - - router.use('/api/stripe', stApiRouter.routes(), stApiRouter.allowedMethods()) -} - - - - -export default configureStripeApi + ctx.send({ + id: session.id, + type: 'stripe-checkout-session', + }) + }, +) diff --git a/src/pages/api/version.js b/src/pages/api/version.js new file mode 100644 index 000000000..121cee759 --- /dev/null +++ b/src/pages/api/version.js @@ -0,0 +1,29 @@ +import acceptMethod from '~/util/server/middleware/acceptMethod' +import jsonApiRoute from '~/util/server/middleware/jsonApiRoute' + +import pkgFile from '../../../package.json' + +const { version: appVersion } = pkgFile + + + + +export default jsonApiRoute( + acceptMethod.GET(), + (ctx) => { + ctx.send({ + id: $$BUILD.id, + type: 'fr-web-builds', + attributes: { + branch: $$BUILD.branch, + builtAt: $$BUILD.date, + buildUrl: $$BUILD.url, + commit: $$BUILD.commit, + versions: { + app: `v${appVersion}`, + node: $$BUILD.nodeVersion, + }, + }, + }) + }, +) diff --git a/src/pages/api/wp/[[...slug]].js b/src/pages/api/wp/[[...slug]].js new file mode 100644 index 000000000..ad4d81895 --- /dev/null +++ b/src/pages/api/wp/[[...slug]].js @@ -0,0 +1,15 @@ +import apiProxy, { config } from '~/util/server/apiProxy' +import getEnv from '~/util/server/getEnv' + + + + + +export default apiProxy({ + target: getEnv()?.wordpress?.url, + pathRewrite: { + '^/api/wp/': '/wp-json/wp/v2/', + }, +}) + +export { config } diff --git a/src/pages/apple-app-site-association.js b/src/pages/apple-app-site-association.js deleted file mode 100644 index c4190d14a..000000000 --- a/src/pages/apple-app-site-association.js +++ /dev/null @@ -1,18 +0,0 @@ -function AppleAppSiteAssociation () { - return null -} - -AppleAppSiteAssociation.getInitialProps = ({ res }) => { - res.setHeader('Content-Type', 'application/json') - res.end(JSON.stringify({ - webcredentials: { - apps: ['9X89US848J.com.fuelrats.Dispatch-Board'], - }, - })) -} - - - - - -export default AppleAppSiteAssociation diff --git a/src/pages/authorize.js b/src/pages/authorize.js index c4760a961..12371195e 100644 --- a/src/pages/authorize.js +++ b/src/pages/authorize.js @@ -1,166 +1,124 @@ import { isError } from 'flux-standard-action' -import React from 'react' +import { useCallback, useState } from 'react' +import { useDispatch } from 'react-redux' import { authenticated } from '~/components/AppLayout' import ScopeView from '~/components/ScopeView' -import { pageRedirect } from '~/helpers/gIPTools' -import { connect } from '~/store' -import { getClientOAuthPage } from '~/store/actions/authentication' +import { getClientOAuthPage, submitOAuthDecision } from '~/store/actions/authentication' +import pageRedirect from '~/util/getInitialProps/pageRedirect' -@authenticated -@connect -class Authorize extends React.Component { - /***************************************************************************\ - Properties - \***************************************************************************/ +function Authorize (props) { + const { client, redirect } = props + const [submitting, setSubmitting] = useState(false) + const dispatch = useDispatch() - state = { - submitting: false, - } - - - - - - /***************************************************************************\ - Private Methods - \***************************************************************************/ - - _handleSubmit = async (event) => { - const { - client, - submitOAuthDecision, - } = this.props - - this.setState({ submitting: true }) + const handleSubmit = useCallback(async (event) => { + setSubmitting(true) - const response = await submitOAuthDecision({ + const response = await dispatch(submitOAuthDecision({ transactionId: client.transactionId, allow: event.target.name === 'allow', - }) + })) if (!isError(response) && response.payload.redirect) { window.location.href = response.payload.redirect + return } - this.setState({ submitting: false }) - } - - - + setSubmitting(false) + }, [client.transactionId, dispatch]) + if (redirect) { + return null + } - /***************************************************************************\ - Public Methods - \***************************************************************************/ - - static async getInitialProps (ctx) { - const { query, res, store } = ctx + return ( + <div className="page-content"> + { + client && ( + <> + <h4>{`${client.clientName} is requesting access to your Fuel Rats account`}</h4> + <br /> + <span><b>{'This application will be able to:'}</b></span> + + <ScopeView scopes={client.scopes} /> + + <form> + <div className="primary"> + <button + className="green" + disabled={submitting} + name="allow" + type="button" + value="true" + onClick={handleSubmit}> + {submitting ? 'Submitting...' : 'Allow'} + </button> + {' '} + { + !submitting && ( + <button + disabled={submitting} + name="cancel" + type="button" + value="true" + onClick={handleSubmit}> + {'Deny'} + </button> + ) + } + </div> + </form> + </> + ) + } + { + !client && ( + <> + <header> + <h3>{'Invalid Authorize Request'}</h3> + </header> + + <p>{'Missing request parameters. Please contact the developer of the application you are trying to use.'}</p> + </> + ) + } + </div> + ) +} - const response = await store.dispatch(getClientOAuthPage(query)) +Authorize.getInitialProps = async (ctx) => { + const { query, res, store } = ctx - if (!isError(response)) { - const { meta, payload } = response + const response = await store.dispatch(getClientOAuthPage(query)) - if (payload.redirect) { - pageRedirect(ctx, payload.redirect) - return {} - } + if (!isError(response)) { + const { meta, payload } = response - if (res && meta.response.headers['set-cookie']) { - res.setHeader('set-cookie', meta.response.headers['set-cookie']) - } + if (payload.redirect) { + pageRedirect(ctx, payload.redirect) + return { redirect: true } + } - return { client: payload } + if (res && meta.response.headers['set-cookie']) { + res.setHeader('set-cookie', meta.response.headers['set-cookie']) } - return {} + return { client: payload } } - static getPageMeta () { - return { title: 'Authorize Application' } - } + return {} +} - render () { - const { client } = this.props - const { submitting } = this.state - - return ( - <div className="page-content"> - { - client && ( - <> - <h4> - {`${client.clientName} is requesting access to your Fuel Rats account`} - </h4> - <br /> - <span><b>{'This application will be able to:'}</b></span> - - <ScopeView scopes={client.scopes} /> - - <form> - <div className="primary"> - <button - className="green" - disabled={submitting} - name="allow" - type="button" - value="true" - onClick={this._handleSubmit}> - {submitting ? 'Submitting...' : 'Allow'} - </button> - - {' '} - { - !submitting && ( - <button - disabled={submitting} - name="cancel" - type="button" - value="true" - onClick={this._handleSubmit}> - {'Deny'} - </button> - ) - } - </div> - </form> - </> - ) - } - - { - !client && ( - <> - <header> - <h3>{'Invalid Authorize Request'}</h3> - </header> - - <p>{'Missing request parameters. Please contact the developer of the application you are trying to use.'}</p> - </> - ) - } - </div> - ) +Authorize.getPageMeta = (_, pageProps) => { + return { + title: 'Authorize Application', + className: pageProps.redirect ? 'hidden' : '', } - - - - - - /***************************************************************************\ - Redux Properties - \***************************************************************************/ - - static mapDispatchToProps = ['submitOAuthDecision'] } - - - - -export default Authorize +export default authenticated(Authorize) diff --git a/src/pages/blog/[blogId].js b/src/pages/blog/[blogId].js index 3571f86b3..21316dce4 100644 --- a/src/pages/blog/[blogId].js +++ b/src/pages/blog/[blogId].js @@ -9,10 +9,6 @@ import { selectBlogById } from '~/store/selectors' class Blog extends React.Component { - /***************************************************************************\ - Public Methods - \***************************************************************************/ - static async getInitialProps ({ query, store }) { const state = store.getState() if (!selectBlogById(state, query)) { diff --git a/src/pages/blog/index.js b/src/pages/blog/index.js index 597f0baf4..be9169dad 100644 --- a/src/pages/blog/index.js +++ b/src/pages/blog/index.js @@ -1,14 +1,14 @@ -import Link from 'next/link' -import React from 'react' +import { useEffect, useState } from 'react' +import { useDispatch, useSelector } from 'react-redux' import ArticleCard from '~/components/Blog/ArticleCard' -import { makeBlogRoute } from '~/helpers/routeGen' -import safeParseInt from '~/helpers/safeParseInt' -import { connect } from '~/store' +import BlogMenu from '~/components/Blog/BlogMenu' +import { getBlogs } from '~/store/actions/blogs' import { selectBlogs, selectBlogStatistics, } from '~/store/selectors' +import safeParseInt from '~/util/safeParseInt' @@ -18,176 +18,53 @@ import { const BASE_TEN_RADIX = 10 const DEFAULT_PAGE = 1 - - - - -@connect -class Blogs extends React.Component { - /***************************************************************************\ - Class Properties - \***************************************************************************/ - - state = { - retrieving: false, - } - - - - - - /***************************************************************************\ - Private Methods - \***************************************************************************/ - - _renderMenu () { - const { - author, - category, - page, - totalPages, - } = this.props - - return ( - <menu - type="toolbar"> - <div className="secondary"> - { - (page > 1) && ( - <Link href={makeBlogRoute({ author, category, page: Math.max(1, page - 1) })}> - <a className="button">{'Previous Page'}</a> - </Link> - ) - } - </div> - - <div className="primary"> - { - (page < totalPages) && ( - <Link href={makeBlogRoute({ author, category, page: Math.min(page + 1, totalPages) })}> - <a className="button">{'Next Page'}</a> - </Link> - ) - } - </div> - </menu> - ) - } - - async _getBlogs (options = {}) { - let { - author, - category, - } = this.props - - const { - page, - getBlogs, - } = this.props - - const wpOptions = {} - - author = typeof options.author === 'undefined' ? author : options.author - category = typeof options.category === 'undefined' ? category : options.category - - if (author) { - wpOptions.author = author +function Blogs (props) { + const { author, category } = props.query + const page = safeParseInt(props.query.page ?? DEFAULT_PAGE, BASE_TEN_RADIX, DEFAULT_PAGE) + + const dispatch = useDispatch() + const [retrieving, setRetrieving] = useState(false) + const { totalPages } = useSelector(selectBlogStatistics) + const blogs = useSelector(selectBlogs) + + useEffect(() => { + const updateList = async () => { + setRetrieving(true) + await dispatch(getBlogs({ + author, + categories: category, + page, + })) + setRetrieving(false) } - if (category) { - wpOptions.categories = category - } - - wpOptions.page = options.page || page - - this.setState({ - retrieving: true, - }) - - await getBlogs(wpOptions) - - this.setState({ - retrieving: false, - }) - } - - - - - - /***************************************************************************\ - Public Methods - \***************************************************************************/ - - componentDidUpdate (prevProps) { - if ( - prevProps.page !== this.props.page - || prevProps.category !== this.props.category - || prevProps.author !== this.props.author) { - this._getBlogs() - } - } - - componentDidMount () { - this._getBlogs() - } - - static getInitialProps ({ query }) { - const props = {} - - props.page = safeParseInt(query.page || DEFAULT_PAGE, BASE_TEN_RADIX, DEFAULT_PAGE) - - if (query.category) { - props.category = query.category - } - - if (query.author) { - props.author = query.author - } - - return props - } - - static getPageMeta () { - return { - title: 'Blog', - pageKey: 'blog-list', - } - } + updateList() + }, [author, category, dispatch, page]) + + return ( + <div className="page-content"> + <ol className="article-list loading"> + { + Boolean(!retrieving && blogs.length) && blogs.map((blog) => { + return ( + <li key={blog.id}> + <ArticleCard blogId={blog.id} renderMode="excerpt" /> + </li> + ) + }) + } + </ol> - render () { - const { blogs } = this.props - const { - retrieving, - } = this.state - - return ( - <div className="page-content"> - <ol className="article-list loading"> - { - !retrieving && Boolean(blogs.length) && blogs.map((blog) => { - return ( - <li key={blog.id}> - <ArticleCard blogId={blog.id} renderMode="excerpt" /> - </li> - ) - }) - } - </ol> - - {this._renderMenu()} - </div> - ) - } + <BlogMenu author={author} category={category} page={page} totalPages={totalPages} /> + </div> + ) +} - static mapStateToProps = (state) => { - return { - blogs: selectBlogs(state), - ...selectBlogStatistics(state), - } +Blogs.getPageMeta = () => { + return { + title: 'Blog', + key: 'blog-list', } - - static mapDispatchToProps = ['getBlogs'] } diff --git a/src/pages/dispatch.js b/src/pages/dispatch.js index c81532fb6..c50badce7 100644 --- a/src/pages/dispatch.js +++ b/src/pages/dispatch.js @@ -49,7 +49,7 @@ DispatchBoard.getPageMeta = () => { forceDrawer: true, className: styles.dispatchBoard, title: 'Dispatch Board', - pageKey: 'dispatch', + key: 'dispatch', } } diff --git a/src/pages/donate/index.js b/src/pages/donate/index.js index dec9893a3..066d2f9a8 100644 --- a/src/pages/donate/index.js +++ b/src/pages/donate/index.js @@ -1,15 +1,11 @@ import { withStripe } from '~/components/AppLayout' -import DonateForm from '~/components/DonateForm' +import DonationForm from '~/components/Forms/DonationForm/DonationForm' -function Donate (props) { - const { - stripe, - } = props - +function Donate ({ stripe }) { return ( <div className="page-content"> <div className="intro-text"> @@ -20,7 +16,7 @@ function Donate (props) { {'Donations are processed via stripe. Any questions may be directed to '} <a href="mailto:support@fuelrats.com">{'support@fuelrats.com'}</a> </div> - <DonateForm stripe={stripe} /> + <DonationForm stripe={stripe} /> </div> ) } diff --git a/src/pages/i-need-fuel.js b/src/pages/i-need-fuel.js index 3abf17061..8f2ca249e 100644 --- a/src/pages/i-need-fuel.js +++ b/src/pages/i-need-fuel.js @@ -1,8 +1,11 @@ import getConfig from 'next/config' +import Image from 'next/image' import Link from 'next/link' -import { createStructuredSelector } from 'reselect' +import { useMemo } from 'react' +import { useSelector } from 'react-redux' +import UAParser from 'ua-parser-js' -import { connect } from '~/store' +import MessageBox from '~/components/MessageBox' import { selectSession } from '~/store/selectors' @@ -11,34 +14,62 @@ import { selectSession } from '~/store/selectors' const { publicRuntimeConfig } = getConfig() const { irc: ircURLs } = publicRuntimeConfig +const unsupportedPlatforms = { + Sony: { + type: 'error', + message: ` + The built-in PS4 browser is currently not supported. + This is due to bugs in the PS4 browser, and outside of our control. + Please use your phone or computer instead. + `, + }, + Microsoft: { + type: 'warn', + message: ` + It appears you're connecting from your Xbox! + While you may use the Xbox browser to use our services, we recommend using your computer to ensure a consistent connection. + `, + }, + Generic: { + type: 'warn', + message: ` + It appears you're connecting from a mobile device. + Ensure your device's screen and browser remains active throughout your rescue. + You may lose your connection otherwise! + `, + }, +} -function INeedFuel (props) { - const { - session, - } = props +function INeedFuel () { + const session = useSelector(selectSession) + const supportMessage = useMemo(() => { + const uaInfo = new UAParser(session.userAgent) + const { type, vendor } = uaInfo.getDevice() - let supportMessage = null + if (type) { + if (unsupportedPlatforms[vendor]) { + return unsupportedPlatforms[vendor] + } + return unsupportedPlatforms.Generic + } - if (session.userAgent.match(/playstation/giu)) { - supportMessage = ` - The built-in PS4 browser is currently not supported. - This is due to bugs in the PS4 browser, and outside of our control. - Please use your phone or computer instead. - ` - } + return {} + }, [session.userAgent]) return ( <div className="page-content"> <div> - <img - alt="Fuel rat riding a limpet" - className="pull-right" - src="https://wordpress.fuelrats.com/wp-content/uploads/2016/07/vig_rescue_250-200x126.jpg?resize=200%2C126&ssl=1" /> - + <div className="pull-right"> + <Image + alt="Fuel rat riding a limpet" + height={126} + src="https://wordpress.fuelrats.com/wp-content/uploads/2016/07/vig_rescue_250-200x126.jpg?resize=200%2C126&ssl=1" + width={200} /> + </div> <h4> {'DO YOU SEE A "OXYGEN DEPLETED IN" TIMER?'} <br /> @@ -47,10 +78,10 @@ function INeedFuel (props) { <br /> - {supportMessage && (<h5>{supportMessage}</h5>)} + {supportMessage.message && (<MessageBox title="Unsupported Device" type={supportMessage.type}>{supportMessage.message}</MessageBox>)} { - !supportMessage && ( + supportMessage.type !== 'error' && ( <> <p>{'Have you found yourself low on fuel and unable to make it to your nearest refuel point? Never fear! The Fuel Rats are here to help!'}</p> @@ -103,9 +134,5 @@ INeedFuel.getPageMeta = () => { } } -INeedFuel.mapStateToProps = createStructuredSelector({ - session: selectSession, -}) - -export default connect(INeedFuel) +export default INeedFuel diff --git a/src/pages/index.js b/src/pages/index.js index 168c5c624..b55ce88ea 100644 --- a/src/pages/index.js +++ b/src/pages/index.js @@ -1,10 +1,11 @@ import Link from 'next/link' import Router from 'next/router' -import React from 'react' +import { useEffect } from 'react' +import { useDispatch } from 'react-redux' import Carousel from '~/components/Carousel' -import { makeRoute } from '~/helpers/routeGen' -import { connect } from '~/store' +import { setFlag } from '~/store/actions/flags' +import makeRoute from '~/util/router/makeRoute' @@ -12,89 +13,77 @@ import { connect } from '~/store' // Component constants const CarouselSlides = { - 0: { + chives: { text: 'CMDR Dr Chives', position: '13% 50%', filename: 'chives.jpg', }, - 1: { + rafa: { text: 'CMDR rafaBC_', position: '20% 50%', filename: 'rafa.jpg', }, - 2: { + numpi: { text: 'CMDR NumberPi', position: '50% 50%', filename: 'pi.jpg', }, - 3: { + alpaca: { text: 'CMDR Worthy Alpaca', position: '25% 50%', filename: 'worthyalpaca.jpg', }, - 4: { + light: { text: 'CMDR Light1c3', position: '70% 100%', filename: 'light.jpg', }, - 5: { + fenri: { text: 'CMDR Fenrishi', position: '40% 50%', filename: 'fenrishi.jpg', }, } -@connect -class Index extends React.Component { - /***************************************************************************\ - Public Methods - \***************************************************************************/ - static getPageMeta () { - return { noHeader: true, title: 'Home' } - } - - componentDidMount () { - const { - authenticate, - ...nextQuery - } = this.props.query +function FuelRatsHome (props) { + const { authenticate, ...restQuery } = props.query + const dispatch = useDispatch() - if (this.props.query.authenticate) { - this.props.setFlag('showLoginDialog', true) - Router.replace(makeRoute('/', nextQuery), undefined, { shallow: true }) + useEffect(() => { + if (authenticate) { + dispatch(setFlag('showLoginDialog', true)) + Router.replace(makeRoute('/', restQuery), undefined, { shallow: true }) } - } + // eslint-disable-next-line react-hooks/exhaustive-deps -- only run on authenticate change, we only care about the state of others when this value changes anyway. + }, [authenticate]) + + return ( + <section className="hero"> + <Carousel id="HomeImages" slides={CarouselSlides} /> + + <header> + <h1>{'We Have Fuel. '}<wbr />{"You\u00a0Don't."}</h1> + <h2>{'Any Questions?'}</h2> + </header> + + <footer className="call-to-action"> + <Link href="/i-need-fuel"> + <a className="button tall">{'Get Fuel'}</a> + </Link> + </footer> + </section> + ) +} - render () { - return ( - <section className="hero"> - <Carousel id="HomeImages" slides={CarouselSlides} /> - - <header> - <h1>{'We Have Fuel. '}<wbr />{"You\u00a0Don't."}</h1> - <h2>{'Any Questions?'}</h2> - </header> - - <footer className="call-to-action"> - <Link href="/i-need-fuel"> - <a className="button tall">{'Get Fuel'}</a> - </Link> - </footer> - </section> - ) +FuelRatsHome.getPageMeta = () => { + return { + noHeader: true, + title: 'Home', + key: 'home', } - - static mapDispatchToProps = ['setFlag'] } - - -export default Index - - -/* - - */ +export default FuelRatsHome diff --git a/src/pages/locale-editor.js b/src/pages/locale-editor.js new file mode 100644 index 000000000..509fc936e --- /dev/null +++ b/src/pages/locale-editor.js @@ -0,0 +1,122 @@ +import axios from 'axios' +import { AnimatePresence, m } from 'framer-motion' +import getConfig from 'next/config' +import { useCallback, useEffect, useRef, useState } from 'react' + +import JsonEditor from '~/components/JsonEditor' +import styles from '~/scss/pages/locale-editor.module.scss' + +const { publicRuntimeConfig } = getConfig() +const { appUrl } = publicRuntimeConfig + +/* eslint-disable id-length */ +const formMotionConfig = { + initial: { y: '-400px', opacity: 0 }, + animate: { y: 0, opacity: 1 }, + exit: { y: '400px', opacity: 0 }, + transition: { + type: 'spring', + stiffness: 400, + damping: 25, + restDelta: 0.5, + restSpeed: 10, + }, +} +/* eslint-enable id-length */ + + +function LocaleEditor ({ locales }) { + const [localeLoading, setLocaleLoading] = useState(false) + const [localeData, setLocaleData] = useState({}) + const localeDataRef = useRef(localeData) + localeDataRef.current = localeData + const [activeLocale, setActiveLocale] = useState(locales[0].id) + + const onSelectChange = useCallback((event) => { + setActiveLocale(event.target.value) + }, []) + + useEffect(() => { + async function getLocaleData () { + if (activeLocale && !localeDataRef.current[activeLocale]) { + setLocaleLoading(true) + const { data } = await axios.get(`/api/qms/locales/${activeLocale}`) + + setLocaleData((curData) => { + return { + ...curData, + [activeLocale]: data.data.attributes.data, + } + }) + setLocaleLoading(false) + } + } + getLocaleData() + }, [activeLocale]) + + return ( + <div className="page-content"> + <p className={styles.explainer}> + { + `This page is a basic editing helper for the QMS locale files. They are automatically generated from english Locale files found on the main branch. + You may use basic HTML and some accept parameters ` + } + <code>{'{{in_brackets_like_this}}'}</code> + {'. Be sure to double check the default values for HTML content and parameterized strings! Is this overkill? absolutely. Did we do it anyway? Of course!'} + </p> + <div> + <label htmlFor="presetSelector"><strong>{'Locale Files'}</strong></label> + <select disabled={localeLoading} id="presetSelector" value={activeLocale} onChange={onSelectChange}> + { + locales?.map((locale) => { + return ( + <option key={locale.id} value={locale.id}>{locale.id}</option> + ) + }) + } + </select> + </div> + <h6> + <a href={localeData[activeLocale]?.meta.github.html}>{'GitHub'}</a> + {' | '} + <a href={localeData[activeLocale]?.meta.github.raw}>{'Raw'}</a> + {' | '} + <a href={localeData[activeLocale]?.meta.github.meta}>{'Metadata'}</a> + </h6> + <br /> + <div className="presence-container"> + <AnimatePresence> + { + Boolean(localeData[activeLocale]) && ( + <m.div + key={activeLocale} + {...formMotionConfig} + className="presence-animator"> + <JsonEditor data={localeData[activeLocale]} /> + </m.div> + ) + } + </AnimatePresence> + </div> + </div> + ) +} + +LocaleEditor.getInitialProps = async () => { + const { data } = await axios.get(`${appUrl}/api/qms/locales`) + + return { + locales: data.data, + } +} + +LocaleEditor.getPageMeta = () => { + return { + title: 'Locale Editor', + } +} + + + + +export default LocaleEditor diff --git a/src/pages/paperwork/[rescueId]/edit.js b/src/pages/paperwork/[rescueId]/edit.js index b4215791e..3deae765c 100644 --- a/src/pages/paperwork/[rescueId]/edit.js +++ b/src/pages/paperwork/[rescueId]/edit.js @@ -1,3 +1,4 @@ +import { HttpStatus } from '@fuelrats/web-util/http' import { isError } from 'flux-standard-action' import Router from 'next/router' import React from 'react' @@ -9,17 +10,20 @@ import RadioInput from '~/components/RadioInput' import RatTagsInput from '~/components/RatTagsInput' import SystemTagsInput from '~/components/SystemTagsInput' import platformRadioOptions from '~/data/platformRadioOptions' -import { formatAsEliteDateTime } from '~/helpers/formatTime' -import getRatTag from '~/helpers/getRatTag' -import { pageRedirect } from '~/helpers/gIPTools' -import { makePaperworkRoute } from '~/helpers/routeGen' -import { connect } from '~/store' -import { getRescue } from '~/store/actions/rescues' +import useSelectorWithProps from '~/hooks/useSelectorWithProps' +import { connectState } from '~/store' +import { getRescue, updateRescue } from '~/store/actions/rescues' import { selectRatsByRescueId, selectRescueById, selectCurrentUserCanEditRescue, } from '~/store/selectors' +import formatAsEliteDateTime from '~/util/date/formatAsEliteDateTime' +import pageRedirect from '~/util/getInitialProps/pageRedirect' +import setError from '~/util/getInitialProps/setError' +import getRatTag from '~/util/getRatTag' +import getResponseError from '~/util/getResponseError' +import makePaperworkRoute from '~/util/router/makePaperworkRoute' @@ -82,26 +86,13 @@ const outcomeRadioOptions = [ @authenticated -@connect class Paperwork extends React.Component { - /***************************************************************************\ - Properties - \***************************************************************************/ - state = { submitting: false, error: null, changes: {}, } - - - - - /***************************************************************************\ - Public Methods - \***************************************************************************/ - _handleChange = ({ target }) => { const { name, @@ -247,7 +238,7 @@ class Paperwork extends React.Component { } } - const response = await this.props.updateRescue(updateData) + const response = await this.props.dispatch(updateRescue(updateData)) if (isError(response)) { this.setState({ error: true, submitting: false }) @@ -273,14 +264,6 @@ class Paperwork extends React.Component { }) } - - - - - /***************************************************************************\ - Public Methods - \***************************************************************************/ - static renderQuote = (quote, index) => { const createdAt = formatAsEliteDateTime(quote.createdAt) const updatedAt = formatAsEliteDateTime(quote.updatedAt) @@ -336,7 +319,15 @@ class Paperwork extends React.Component { const state = store.getState() if (!selectRescueById(state, query)) { - await store.dispatch(getRescue(query.rescueId)) + const response = await store.dispatch(getRescue(query.rescueId)) + const error = getResponseError(response) + + if (error) { + if (error?.code === HttpStatus.NOT_FOUND) { + error.detail = 'We tried looking everywhere, but this rescue doesn\'t exist.' + } + setError(ctx, error.code, error.detail) + } } } @@ -444,7 +435,7 @@ class Paperwork extends React.Component { id="codeRed" name="codeRed" options={codeRedRadioOptions} - value={`${codeRed}`} + value={String(codeRed)} onChange={this._handleRadioInputChange} /> </fieldset> @@ -529,10 +520,6 @@ class Paperwork extends React.Component { } render () { - const { - rescue, - } = this.props - const { submitting, error, @@ -550,15 +537,7 @@ class Paperwork extends React.Component { ) } - { - (!rescue) && ( - <div className="loading page-content"> - <p>{"Sorry, we couldn't find the paperwork you requested."}</p> - </div> - ) - } - - {(rescue) && this.renderRescueEditForm()} + {this.renderRescueEditForm()} </> ) } @@ -676,28 +655,16 @@ class Paperwork extends React.Component { system: ifDefined(changes.system, rescue.attributes.system ? { value: rescue.attributes.system.toUpperCase() } : null), } } - - - - - - /***************************************************************************\ - Redux Properties - \***************************************************************************/ - - static mapDispatchToProps = ['updateRescue', 'getRescue'] - - static mapStateToProps = (state, { query }) => { - return { - rats: selectFormattedRatsByRescueId(state, query), - rescue: selectRescueById(state, query), - userCanEdit: selectCurrentUserCanEditRescue(state, query), - } - } } -export default Paperwork +export default connectState((props) => { + return { + rats: useSelectorWithProps(props.query, selectFormattedRatsByRescueId), + rescue: useSelectorWithProps(props.query, selectRescueById), + userCanEdit: useSelectorWithProps(props.query, selectCurrentUserCanEditRescue), + } +})(Paperwork) diff --git a/src/pages/paperwork/[rescueId]/index.js b/src/pages/paperwork/[rescueId]/index.js index 44fa95024..dcb87b9c1 100644 --- a/src/pages/paperwork/[rescueId]/index.js +++ b/src/pages/paperwork/[rescueId]/index.js @@ -1,49 +1,40 @@ import { FontAwesomeIcon } from '@fortawesome/react-fontawesome' +import { HttpStatus } from '@fuelrats/web-util/http' import Link from 'next/link' import Router from 'next/router' import React from 'react' import { authenticated } from '~/components/AppLayout' -import { formatAsEliteDateTime } from '~/helpers/formatTime' -import { pageRedirect } from '~/helpers/gIPTools' -import { makePaperworkRoute } from '~/helpers/routeGen' -import { connect } from '~/store' -import { getRescue } from '~/store/actions/rescues' +import useSelectorWithProps from '~/hooks/useSelectorWithProps' +import { connectState } from '~/store' +import { deleteRescue, getRescue } from '~/store/actions/rescues' import { selectRatsByRescueId, selectRescueById, selectCurrentUserCanEditRescue, selectCurrentUserHasScope, } from '~/store/selectors' +import formatAsEliteDateTime from '~/util/date/formatAsEliteDateTime' +import pageRedirect from '~/util/getInitialProps/pageRedirect' +import setError from '~/util/getInitialProps/setError' +import getResponseError from '~/util/getResponseError' +import makePaperworkRoute from '~/util/router/makePaperworkRoute' @authenticated -@connect class Paperwork extends React.Component { - /***************************************************************************\ - Properties - \***************************************************************************/ - state = { deleteConfirm: false, deleting: false, } - - - - - /***************************************************************************\ - Private Methods - \***************************************************************************/ - _handleDeleteClick = async () => { if (this.state.deleteConfirm) { this.setState({ deleting: true }) - await this.props.deleteRescue(this.props.rescue) + await this.props.dispatch(deleteRescue(this.props.rescue)) Router.push( this.props.userCanWriteAll @@ -61,14 +52,6 @@ class Paperwork extends React.Component { this.setState({ deleteConfirm: false }) } - - - - - /***************************************************************************\ - Public Methods - \***************************************************************************/ - static renderQuote = (quote) => { const createdAt = formatAsEliteDateTime(quote.createdAt) const updatedAt = formatAsEliteDateTime(quote.updatedAt) @@ -114,7 +97,11 @@ class Paperwork extends React.Component { const state = store.getState() if (!selectRescueById(state, query)) { - await store.dispatch(getRescue(query.rescueId)) + const response = await store.dispatch(getRescue(query.rescueId)) + const error = getResponseError(response) + if (error) { + setError(ctx, HttpStatus.NOT_FOUND, 'We tried looking everywhere, but this rescue doesn\'t exist.') + } } } @@ -363,53 +350,23 @@ class Paperwork extends React.Component { } render () { - const { - rescue, - } = this.props - return ( - <> - { - (!rescue) && ( - <div className="loading page-content"> - <p>{"Sorry, we couldn't find the paperwork you requested."}</p> - </div> - ) - } - - { - (rescue) && ( - <div className="page-content"> - {this.renderRescue()} - </div> - ) - } - </> + <div className="page-content"> + {this.renderRescue()} + </div> ) } - - - - - - /***************************************************************************\ - Redux Properties - \***************************************************************************/ - - static mapDispatchToProps = ['deleteRescue'] - - static mapStateToProps = (state, { query }) => { - return { - rats: selectRatsByRescueId(state, query) || [], - rescue: selectRescueById(state, query), - userCanEdit: selectCurrentUserCanEditRescue(state, query), - userCanWriteAll: selectCurrentUserHasScope(state, { scope: 'rescues.write' }), - } - } } -export default Paperwork +export default connectState((props) => { + return { + rats: useSelectorWithProps(props.query, selectRatsByRescueId) ?? [], + rescue: useSelectorWithProps(props.query, selectRescueById), + userCanEdit: useSelectorWithProps(props.query, selectCurrentUserCanEditRescue), + userCanWriteAll: useSelectorWithProps({ scope: 'rescues.write' }, selectCurrentUserHasScope), + } +})(Paperwork) diff --git a/src/pages/profile/[tab].js b/src/pages/profile/[tab].js index adc5be272..83dbef9af 100644 --- a/src/pages/profile/[tab].js +++ b/src/pages/profile/[tab].js @@ -9,7 +9,7 @@ import ProfileHeader from '~/components/ProfileHeader' import TabbedPanel from '~/components/TabbedPanel' import UserOverview from '~/components/UserOverview' import UserRatsPanel from '~/components/UserRatsPanel' -import { setError } from '~/helpers/gIPTools' +import setError from '~/util/getInitialProps/setError' @@ -17,10 +17,6 @@ import { setError } from '~/helpers/gIPTools' @authenticated class Profile extends React.Component { - /***************************************************************************\ - Private Methods - \***************************************************************************/ - _handleFLDClose = () => { Router.replace(`/profile/${this.props.query.tab}`) } @@ -33,13 +29,6 @@ class Profile extends React.Component { Router.replace('/profile/overview') } - - - - /***************************************************************************\ - Public Methods - \***************************************************************************/ - static getInitialProps (ctx) { if (!this.tabs[ctx.query.tab]) { setError(ctx, HttpStatus.NOT_FOUND) @@ -50,7 +39,7 @@ class Profile extends React.Component { return { title: 'Profile', displayTitle: this.tabs[ctx.query.tab].pageTitle, - pageKey: 'profile', + key: 'profile', } } @@ -80,14 +69,6 @@ class Profile extends React.Component { ) } - - - - - /***************************************************************************\ - Getters - \***************************************************************************/ - static get tabs () { return { overview: { diff --git a/src/pages/register.js b/src/pages/register.js index e5dc58741..be66b6245 100644 --- a/src/pages/register.js +++ b/src/pages/register.js @@ -3,10 +3,10 @@ import { useDispatch } from 'react-redux' import RegistrationForm, { RegistrationErrorBox } from '~/components/Forms/RegistrationForm' import MessageBox from '~/components/MessageBox' -import getResponseError from '~/helpers/getResponseError' import useMergeReducer from '~/hooks/useMergeReducer' import { login, register } from '~/store/actions/authentication' import { resendVerificationEmail } from '~/store/actions/verify' +import getResponseError from '~/util/getResponseError' diff --git a/src/pages/verify.js b/src/pages/verify.js index ff99b55b5..0c7edb048 100644 --- a/src/pages/verify.js +++ b/src/pages/verify.js @@ -6,12 +6,12 @@ import { useDispatch } from 'react-redux' import PasswordResetForm from '~/components/Forms/PasswordResetForm' import MessageBox from '~/components/MessageBox' import ApiErrorBox from '~/components/MessageBox/ApiErrorBox' -import getResponseError from '~/helpers/getResponseError' -import { pageRedirect } from '~/helpers/gIPTools' import useSelectorWithProps from '~/hooks/useSelectorWithProps' import { validatePasswordResetToken, resetPassword } from '~/store/actions/authentication' import { verifyEmailToken } from '~/store/actions/verify' import { selectCurrentUserHasScope } from '~/store/selectors' +import pageRedirect from '~/util/getInitialProps/pageRedirect' +import getResponseError from '~/util/getResponseError' @@ -19,10 +19,10 @@ import { selectCurrentUserHasScope } from '~/store/selectors' const RESET_SUCCESS_REDIRECT_WAIT = 6000 // 6 Seconds -const TokenType = Object.freeze({ +const TokenType = { RESET: 'reset', EMAIL: 'email', -}) +} diff --git a/src/pages/version.js b/src/pages/version.js new file mode 100644 index 000000000..967ebc42b --- /dev/null +++ b/src/pages/version.js @@ -0,0 +1,89 @@ +import { HttpStatus } from '@fuelrats/web-util/http' +import axios from 'axios' +import getConfig from 'next/config' +import Link from 'next/link' + +import formatAsEliteDateTime from '~/util/date/formatAsEliteDateTime' + +// Component constants +const { publicRuntimeConfig } = getConfig() +const { appUrl } = publicRuntimeConfig + + + + + +function Version ({ version }) { + const { + branch, + versions, + builtAt, + buildUrl, + commit, + } = version.attributes + return ( + <div className="page-content"> + <div> + <Link href="/api/version"> + <a className="button compact"> + {'Raw'} + </a> + </Link> + </div> + <div className="page-content text-mono"> + <span> + {'App Version: '} + <a href={`https://github.com/FuelRats/fuelrats.com/releases/tag/${versions.app}`} rel="noopener noreferrer" target="_blank"> + {versions.app} + </a> + </span> + <span> + {'Node Version: '} + <a href={`https://github.com/nodejs/node/releases/tag/${versions.node}`} rel="noopener noreferrer" target="_blank"> + {versions.node} + </a> + </span> + <span> + {'Built On: '} + <a href={buildUrl} rel="noopener noreferrer" target="_blank"> + <time dateTime={builtAt}>{formatAsEliteDateTime(builtAt)}</time> + </a> + </span> + <span> + {'Branch: '} + <a href={`https://github.com/FuelRats/fuelrats.com/tree/${branch}`} rel="noopener noreferrer" target="_blank"> + {branch} + </a> + </span> + <span> + {'Commit: '} + <a href={`https://github.com/FuelRats/fuelrats.com/commit/${commit}`} rel="noopener noreferrer" target="_blank"> + {commit || 'N/A'} + </a> + </span> + </div> + </div> + ) +} + +Version.getInitialProps = async () => { + const response = await axios.get(`${appUrl}/api/version`) + + return { + version: response.status === HttpStatus.OK + ? response.data.data + : null, + } +} + +Version.getPageMeta = () => { + return { + noHeader: true, + title: 'Version Information', + } +} + + + + +export default Version diff --git a/src/pages/version/index.js b/src/pages/version/index.js deleted file mode 100644 index ca549e85e..000000000 --- a/src/pages/version/index.js +++ /dev/null @@ -1,103 +0,0 @@ -/* globals - $BUILD_BRANCH:false - $BUILD_COMMIT:false - $BUILD_DATE:false - $BUILD_URL:false - $NODE_VERSION:false - $NEXT_BUILD_ID:false -*/ - -import { formatAsEliteDateTime } from '~/helpers/formatTime' - -import { version } from '../../../package.json' - - - - - -// Component constants -const BUILD_BRANCH = $BUILD_BRANCH -const BUILD_COMMIT = $BUILD_COMMIT -const BUILD_DATE = $BUILD_DATE -const BUILD_URL = $BUILD_URL -const NODE_VERSION = $NODE_VERSION -const NEXT_BUILD_ID = $NEXT_BUILD_ID - - - - - -function Version () { - return ( - <div className="page-content"> - <span> - <a className="button compact" href="/version/raw">{'Raw'}</a> - </span> - <div className="page-content text-mono"> - <span> - {'App Version: '} - <a href={`https://github.com/FuelRats/fuelrats.com/releases/tag/v${version}`} rel="noopener noreferrer" target="_blank"> - {`v${version}`} - </a> - </span> - <span> - {'Node Version: '} - <a href={`https://github.com/nodejs/node/releases/tag/${NODE_VERSION}`} rel="noopener noreferrer" target="_blank"> - {NODE_VERSION} - </a> - </span> - <span> - {'Built On: '} - <a href={BUILD_URL} rel="noopener noreferrer" target="_blank"> - <time dateTime={BUILD_DATE}>{formatAsEliteDateTime(BUILD_DATE)}</time> - </a> - </span> - <span> - {'Branch: '} - <a href={`https://github.com/FuelRats/fuelrats.com/tree/${BUILD_BRANCH}`} rel="noopener noreferrer" target="_blank"> - {BUILD_BRANCH} - </a> - </span> - <span> - {'Commit: '} - <a href={`https://github.com/FuelRats/fuelrats.com/commit/${BUILD_COMMIT}`} rel="noopener noreferrer" target="_blank"> - {BUILD_COMMIT || 'null'} - </a> - </span> - </div> - </div> - ) -} - -Version.getInitialProps = ({ asPath, res }) => { - if (asPath.includes('/raw')) { - res.setHeader('Content-Type', 'application/vnd.api+json') - res.end(JSON.stringify({ - data: { - id: NEXT_BUILD_ID, - type: 'frWebBuilds', - attributes: { - branch: BUILD_BRANCH || 'develop', - builtOn: BUILD_DATE, - commit: BUILD_COMMIT || null, - version: `v${version}`, - }, - }, - - })) - } - - return {} -} - -Version.getPageMeta = () => { - return { - noHeader: true, - title: 'Version Information', - } -} - - - - -export default Version diff --git a/src/pages/version/raw.js b/src/pages/version/raw.js deleted file mode 100644 index 079c6485e..000000000 --- a/src/pages/version/raw.js +++ /dev/null @@ -1 +0,0 @@ -export { default } from '.' diff --git a/src/scss/_components.scss b/src/scss/_components.scss index 7658f25b6..e41205b92 100644 --- a/src/scss/_components.scss +++ b/src/scss/_components.scss @@ -1,5 +1,4 @@ @import 'components/action-confirmation-button'; -@import 'components/add-rat-form'; @import 'components/article-list'; @import 'components/avatar'; @import 'components/badge'; @@ -13,6 +12,7 @@ @import 'components/comments'; @import 'components/donate-form'; @import 'components/error'; +@import 'components/file-dropzone'; @import 'components/grid'; @import 'components/header'; @import 'components/hero'; diff --git a/src/scss/_fonts.scss b/src/scss/_fonts.scss index 50d3f7d60..86e2e7013 100644 --- a/src/scss/_fonts.scss +++ b/src/scss/_fonts.scss @@ -1,2 +1,16 @@ $paragraph-fonts: 'Open Sans', sans-serif; $title-fonts: 'Raleway', sans-serif; +$monospace-fonts: + 'Operator Mono', + 'SF Mono', + 'Fira Code', + 'Source Code Pro', + 'Cascadia Code', + 'Lucida Console', + 'Liberation Mono', + 'DejaVu Sans Mono', + 'menlo', + 'monaco', + 'consolas', + monospace, + sans-serif; diff --git a/src/scss/_helpers.scss b/src/scss/_helpers.scss index 17baa50a0..642718ed7 100644 --- a/src/scss/_helpers.scss +++ b/src/scss/_helpers.scss @@ -1,5 +1,6 @@ @import 'helpers/disabled'; @import 'helpers/hidden'; +@import 'helpers/motion'; @import 'helpers/pull-right'; @import 'helpers/text-collapse'; @import 'helpers/text-format'; diff --git a/src/scss/_lib.scss b/src/scss/_lib.scss index d38f98e20..0914d5824 100644 --- a/src/scss/_lib.scss +++ b/src/scss/_lib.scss @@ -1,13 +1,13 @@ -/****************************************************************************** \ +/****************************************************************************** \ FontAwesome -\ ******************************************************************************/ +\ ******************************************************************************/ @import '@fortawesome/fontawesome-svg-core/styles.css'; -/****************************************************************************** \ +/****************************************************************************** \ kbd fun \ ******************************************************************************/ @import 'lib/kbdfun'; @@ -16,9 +16,9 @@ -/****************************************************************************** \ +/****************************************************************************** \ NProgress -\ ******************************************************************************/ +\ ******************************************************************************/ @import 'nprogress/nprogress.css'; @import 'lib/nprogress'; @@ -26,9 +26,9 @@ -/****************************************************************************** \ +/****************************************************************************** \ React Table -\ ******************************************************************************/ +\ ******************************************************************************/ @import 'react-table-6/react-table.css'; @import 'lib/react-table'; @@ -36,7 +36,26 @@ -/****************************************************************************** \ +/****************************************************************************** \ Stripe -\ ******************************************************************************/ +\ ******************************************************************************/ @import 'lib/stripe'; + + + + + +/****************************************************************************** \ + RC-Slider +\ ******************************************************************************/ +@import 'rc-slider/assets/index.css'; +@import 'lib/rc-slider'; + + + + + +/****************************************************************************** \ + react-easy-crop +\ ******************************************************************************/ +@import 'lib/react-easy-crop'; diff --git a/src/scss/animations/_toast-fade.scss b/src/scss/animations/_toast-fade.scss new file mode 100644 index 000000000..3ef437c03 --- /dev/null +++ b/src/scss/animations/_toast-fade.scss @@ -0,0 +1,17 @@ +@keyframes toast-fade { + 0% { + opacity: 0; + } + + 5% { + opacity: 1; + } + + 80% { + opacity: 1; + } + + 100% { + opacity: 0; + } +} diff --git a/src/scss/animations/_wiggle.scss b/src/scss/animations/_wiggle.scss index e36421eb7..6dbad6b75 100644 --- a/src/scss/animations/_wiggle.scss +++ b/src/scss/animations/_wiggle.scss @@ -1,9 +1,11 @@ +@use 'sass:math'; + $wiggle-rotation: 7.5; @keyframes wiggle { 10%, 90% { - transform: rotateZ((($wiggle-rotation / 3) * 2) * 1deg); + transform: rotateZ((math.div($wiggle-rotation, 3) * 2) * 1deg); } 30%, diff --git a/src/scss/colors/_grey.scss b/src/scss/colors/_grey.scss index e2dc07b49..22d4b0761 100644 --- a/src/scss/colors/_grey.scss +++ b/src/scss/colors/_grey.scss @@ -3,3 +3,4 @@ $grey-darkened: darken($grey, 10%); $grey-muted: darken($grey, 30%); $grey-lightened: lighten($grey, 10%); $light-grey: #EEEEEE; +$placeholder-grey: #999999; diff --git a/src/scss/components/_avatar.scss b/src/scss/components/_avatar.scss index 917d06320..1dd72bbe5 100644 --- a/src/scss/components/_avatar.scss +++ b/src/scss/components/_avatar.scss @@ -9,7 +9,7 @@ border: 0.2rem solid $red; border-radius: 50%; - background-color: $white; + background-color: $red-darker; overflow: hidden; @@ -32,17 +32,4 @@ width: 17rem; height: 17rem; } - - &:empty::before { - align-items: center; - justify-content: center; - - content: attr(data-letter); - width: 100%; - - background: $white; - color: $red; - - font-size: 2em; - } } diff --git a/src/scss/components/_badge.scss b/src/scss/components/_badge.scss index 04437bdf0..c603a2a81 100644 --- a/src/scss/components/_badge.scss +++ b/src/scss/components/_badge.scss @@ -1,3 +1,5 @@ +@use 'sass:math'; + // Create an empty list to generate our PC badge background $pc-background-gradients: (); @@ -6,8 +8,8 @@ $pc-background-gradients: (); $texture-colors: ($pc-sun-orange, $pc-sun-yellow); // Generate a random percentage-based X and Y position for each spot - $texture-x: percentage((random(30) + 70) / 100); - $texture-y: percentage((random(30) + 70) / 100); + $texture-x: percentage(math.div((random(30) + 70), 100)); + $texture-y: percentage(math.div((random(30) + 70), 100)); // The texture size is where we'll put our final color stop $texture-size: (random(10)) + '%'; @@ -47,9 +49,9 @@ $pc-background-gradients: // Generate the "stars" @for $i from 1 through 50 { // Generate a random percentage-based X and Y position for each star - $star-x: percentage(random(100) / 100); - $star-y: percentage(random(100) / 100); - $star-size: percentage((random(50) * 0.1) / 100); + $star-x: percentage(math.div(random(100), 100)); + $star-y: percentage(math.div(random(100), 100)); + $star-size: percentage(math.div((random(50) * 0.1), 100)); // Create the star's gradient $gradient: diff --git a/src/scss/components/_donate-form.scss b/src/scss/components/_donate-form.scss index 72b7d8a73..e14adec31 100644 --- a/src/scss/components/_donate-form.scss +++ b/src/scss/components/_donate-form.scss @@ -6,6 +6,8 @@ border: 1px solid $black; input[type='text'] { + padding-right: 3.75rem; + text-align: right; } diff --git a/src/scss/components/_error.scss b/src/scss/components/_error.scss index 2dc386202..06b1ceb75 100644 --- a/src/scss/components/_error.scss +++ b/src/scss/components/_error.scss @@ -1,6 +1,6 @@ -.error:empty { - position: relative; +@use 'sass:math'; +.error:empty { &::after, &::before { display: flex; @@ -14,8 +14,8 @@ width: $loader-size; height: $loader-size; - margin-top: -($loader-size / 2); - margin-left: -($loader-size / 2); + margin-top: 0 - math.div($loader-size, 2); + margin-left: 0 - math.div($loader-size, 2); border-width: 0.3rem; border-style: solid; diff --git a/src/scss/components/_file-dropzone.scss b/src/scss/components/_file-dropzone.scss new file mode 100644 index 000000000..0da2ced3e --- /dev/null +++ b/src/scss/components/_file-dropzone.scss @@ -0,0 +1,51 @@ +label.file-dropzone { + display: block; + position: relative; + + width: 100%; + padding: 4rem; + + border: 2px dashed rgba($red-darkened, 0.4); + + color: $red; + background: rgba($red, 0.2); + transition: + border-color 0.1s ease, + background 0.1s ease, + font-size 0.15s ease, + color 0.1s ease; + + font-size: 1.5em; + font-weight: 600; + font-family: $title-fonts; + text-align: center; + + cursor: pointer; + + &.active { + border-color: rgba($green-darkened, 0.4); + + color: $green; + background: rgba($green, 0.2); + + + font-size: 1.75em; + } + + small { + font-size: 0.7em; + } + + input { + position: absolute; + top: 0; + left: 0; + + width: 100%; + height: 100%; + + opacity: 0; + + cursor: pointer; + } +} diff --git a/src/scss/components/_loading.scss b/src/scss/components/_loading.scss index 9536f4453..f99fcecf8 100644 --- a/src/scss/components/_loading.scss +++ b/src/scss/components/_loading.scss @@ -1,8 +1,8 @@ -.loading { +@use 'sass:math'; + +.loading:not(.error) { &:empty, &.loader-force { - position: relative; - &::after, &::before { display: flex; @@ -23,8 +23,8 @@ content: ''; width: $loader-size; height: $loader-size; - margin-top: -(($loader-size / 2) + $loader-border-width); - margin-left: -(($loader-size / 2) + $loader-border-width); + margin-top: -(math.div($loader-size, 2) + $loader-border-width); + margin-left: -(math.div($loader-size, 2) + $loader-border-width); border: $loader-border-width solid currentColor; border-radius: 100%; diff --git a/src/scss/components/_profile-header.scss b/src/scss/components/_profile-header.scss index 7acf79615..e495ed50c 100644 --- a/src/scss/components/_profile-header.scss +++ b/src/scss/components/_profile-header.scss @@ -34,6 +34,8 @@ } .user-avatar { + position: relative; + grid-area: avatar; } diff --git a/src/scss/components/_terms-dialog.scss b/src/scss/components/_terms-dialog.scss index ecdbc723f..4a2484c22 100644 --- a/src/scss/components/_terms-dialog.scss +++ b/src/scss/components/_terms-dialog.scss @@ -10,9 +10,5 @@ background: rgba($white, 0.15); overflow: auto; - - pre { - background-color: rgba(0, 0, 0, 0.15); - } } } diff --git a/src/scss/core/_form.scss b/src/scss/core/_form.scss index 864296fa9..54abbd2e7 100644 --- a/src/scss/core/_form.scss +++ b/src/scss/core/_form.scss @@ -11,28 +11,9 @@ form { margin: 0 auto 0.5rem; } - &.compact .form-row { - &.submit-row { - padding: 0.4rem 0; - fieldset, - > div { - padding: 0.1rem 0.25rem; - } - } - - fieldset, - > div { - padding: 0.5rem; - - &:first-child { - padding-left: 4rem; - } - - &:last-child { - padding-right: 4rem; - } - } + &.compact .form-row fieldset { + padding: 0.5rem 0.25rem; } .form-row { diff --git a/src/scss/core/_input.scss b/src/scss/core/_input.scss index d6dfbf2ba..294f4f7b2 100644 --- a/src/scss/core/_input.scss +++ b/src/scss/core/_input.scss @@ -116,6 +116,7 @@ input[type='checkbox'] { width: 1em; height: 1em; + margin-right: 16px; border: 0.2rem solid $red; @@ -144,8 +145,8 @@ input[type='checkbox'] { &::-ms-check { border: 0.2rem solid transparent; - background: padding-box $red; color: $red; + background: padding-box $red; } } @@ -153,8 +154,8 @@ input[type='checkbox'] { &::-ms-check { border: none; - background: transparent; color: $red; + background: transparent; } &::before { @@ -177,6 +178,10 @@ input[type='checkbox'] { font-size: 16px; vertical-align: middle; } + + &:focus { + outline: #343434 solid 3px; + } } .ReactTable .rt-thead.-filters input { diff --git a/src/scss/core/_pre.scss b/src/scss/core/_pre.scss index 6d4341287..a16787e53 100644 --- a/src/scss/core/_pre.scss +++ b/src/scss/core/_pre.scss @@ -1,12 +1,16 @@ pre { flex-shrink: 0; - margin-bottom: 2rem; - padding: 2rem; + margin-bottom: 1rem; + padding: 1rem 2rem; - background-color: $light-grey; + border-radius: 2px; - font-family: 'Source Code Pro', monospace; + background-color: rgba($grey, 0.15); + + font-family: $monospace-fonts; white-space: pre-wrap; box-sizing: initial; + + user-select: all; } diff --git a/src/scss/helpers/_motion.scss b/src/scss/helpers/_motion.scss new file mode 100644 index 000000000..387ff5d95 --- /dev/null +++ b/src/scss/helpers/_motion.scss @@ -0,0 +1,13 @@ +.presence-container { + position: relative; + + width: 100%; + height: 100%; + + .presence-animator { + position: absolute; + + width: 100%; + height: 100%; + } +} diff --git a/src/scss/helpers/_text-format.scss b/src/scss/helpers/_text-format.scss index 51c7d9600..9a5fdfcfa 100644 --- a/src/scss/helpers/_text-format.scss +++ b/src/scss/helpers/_text-format.scss @@ -39,5 +39,5 @@ } .text-mono { - font-family: 'Operator Mono', 'SF Mono', 'Fira Code', 'Source Code Pro', Menlo, Monaco, 'Lucida Console', 'Liberation Mono', 'DejaVu Sans Mono', Consolas, monospace, sans-serif; + font-family: $monospace-fonts; } diff --git a/src/scss/lib/_rc-slider.scss b/src/scss/lib/_rc-slider.scss new file mode 100644 index 000000000..3ae4ca3c8 --- /dev/null +++ b/src/scss/lib/_rc-slider.scss @@ -0,0 +1,86 @@ +.rc-slider { + &.rc-slider-disabled { + background-color: transparent; + + .rc-slider-track { + background: rgba($grey-darkened, 0.2); + } + + .rc-slider-handle { + background: $grey-muted; + } + + .rc-slider-dot { + border-color: $grey-muted; + } + } + + &.rc-slider-vertical { + .rc-slider-handle { + margin-left: -0.8rem; + } + + .rc-slider-track, + .rc-slider-rail { + width: 0.6rem; + height: 100%; + + border-radius: 1rem; + } + + .rc-slider-dot { + left: 3px; + } + } + + .rc-slider-rail { + height: 0.6rem; + + border-radius: 1rem; + + background: rgba($grey-darkened, 0.25); + } + + .rc-slider-track { + height: 0.6rem; + + border-radius: 1rem; + + background: rgba($red-darkened, 0.2); + } + + .rc-slider-dot { + bottom: -3px; + + border-color: $red-darker; + + background: transparent; + } + + .rc-slider-handle { + width: 2.2rem; + height: 2.2rem; + margin-top: -0.8rem; + + border: none; + + background: $red; + + .rc-slider-handle-icon { + position: absolute; + top: 0; + left: 0; + + width: 2.2rem; + height: 2.2rem; + padding: 0.5rem; + + color: $black; + } + } + + .rc-slider-mark-text, + .rc-slider-mark-text.rc-slider-mark-text-active { + color: $grey; + } +} diff --git a/src/scss/lib/_react-easy-crop.scss b/src/scss/lib/_react-easy-crop.scss new file mode 100644 index 000000000..ad7b2521b --- /dev/null +++ b/src/scss/lib/_react-easy-crop.scss @@ -0,0 +1,3 @@ +.reactEasyCrop_Container.disabled { + cursor: not-allowed; +} diff --git a/src/scss/pages/locale-editor.module.scss b/src/scss/pages/locale-editor.module.scss new file mode 100644 index 000000000..dbb1b7199 --- /dev/null +++ b/src/scss/pages/locale-editor.module.scss @@ -0,0 +1,3 @@ +.explainer { + max-width: 90rem; +} diff --git a/src/server/environment.mjs b/src/server/environment.mjs deleted file mode 100644 index 5780c9e6f..000000000 --- a/src/server/environment.mjs +++ /dev/null @@ -1,38 +0,0 @@ -/* eslint-env node */ - -// Constants -const DEFAULT_PORT = 3000 - - - - - -function getEnv () { - return { - isDev: process.env.NODE_ENV !== 'production', - port: process.env.PORT ?? DEFAULT_PORT, - publicUrl: process.env.APP_URL, - fallbackUrl: process.env.FR_FALLBACK_URL ?? 'https://fallback.fuelrats.com/', - api: { - clientId: process.env.FR_API_KEY, - clientSecret: process.env.FR_API_SECRET, - url: process.env.FR_API_URL ?? 'https://dev.api.fuelrats.com', - }, - edsm: { - url: process.env.FR_EDSM_API_URL ?? 'https://www.edsm.net', - }, - wordpress: { - url: process.env.FR_WORDPRESS_URL ?? 'https://wordpress.fuelrats.com', - }, - stripe: { - secret: process.env.FR_STRIPE_API_SK, - bansFile: process.env.FR_STRIPE_BANS_FILE, - }, - } -} - - - - - -export default getEnv diff --git a/src/server/middlewares/csp.mjs b/src/server/middlewares/csp.mjs deleted file mode 100644 index 3f0ff3feb..000000000 --- a/src/server/middlewares/csp.mjs +++ /dev/null @@ -1,77 +0,0 @@ -import buildCSP from 'content-security-policy-builder' -import UUID from 'pure-uuid' - - - - - -// Constants -const UUID_VERSION_4 = 4 - -const headerKeys = [ - 'Content-Security-Policy', - 'X-Content-Security-Policy', - 'X-WebKit-CSP', -] - - -const domainWhitelist = [ - '*.fuelrats.com', - '*.stripe.com', - 'www.google.com', -] - - - - - -const configureCSP = () => { - return async function koaCSP (ctx, next) { - const { - isDev, - publicUrl, - api, - } = ctx.state.env - - const nonce = (new UUID(UUID_VERSION_4)).format() - - ctx.res.nonce = nonce - - const policyString = buildCSP({ - directives: { - defaultSrc: ["'self'", ...domainWhitelist, 'blob:'], - connectSrc: [ - "'self'", - 'wss://*.fuelrats.com', - api.url, - publicUrl, - ...(isDev ? ['webpack://*'] : []), - ], - baseUri: ["'none'"], - scriptSrc: [ - "'self'", - `'nonce-${nonce}'`, - "'strict-dynamic'", - ...(isDev ? ["'unsafe-eval'"] : []), - ], - styleSrc: ["'self'", "'unsafe-inline'", ...domainWhitelist, 'fonts.googleapis.com'], - imgSrc: ["'self'", ...domainWhitelist, '*.wp.com', 'blob:', 'data:'], - mediaSrc: ["'self'"], - objectSrc: ["'self'"], - fontSrc: ["'self'", 'fonts.gstatic.com'], - }, - }) - - headerKeys.forEach((key) => { - ctx.response.set(key, policyString) - }) - - await next() - } -} - - - - - -export default configureCSP diff --git a/src/server/middlewares/proxy.mjs b/src/server/middlewares/proxy.mjs deleted file mode 100644 index 9e44e3e92..000000000 --- a/src/server/middlewares/proxy.mjs +++ /dev/null @@ -1,89 +0,0 @@ -import koaProxy from 'koa-proxies' - - - - - -const stripPathSegment = (segmentName, replaceValue = '/') => { - return (path) => { - return path.replace(new RegExp(`${segmentName}\\/`, 'u'), replaceValue) - } -} - - -// Default options for all proxies should go here. -const createProxyWithDefaults = (path, opts) => { - return koaProxy(path, { - changeOrigin: true, - secure: true, - xfwd: true, - ...opts, - }) -} - - - -const configureProxies = (koaServer, env) => { - /***************************************************************************\ - Proxy Fuelrats API requests - \***************************************************************************/ - - const frApiPath = '/api/fr' - - koaServer.use(createProxyWithDefaults(`${frApiPath}/oauth2/token`, { - auth: `${env.api.clientId}:${env.api.clientSecret}`, - rewrite: stripPathSegment(frApiPath), - target: env.api.url, - })) - - koaServer.use(createProxyWithDefaults(`${frApiPath}/oauth2/revoke`, { - auth: `${env.api.clientId}:${env.api.clientSecret}`, - rewrite: stripPathSegment(frApiPath), - target: env.api.url, - })) - - koaServer.use(createProxyWithDefaults(frApiPath, { - rewrite: stripPathSegment(frApiPath), - target: env.api.url, - })) - - - - - - /***************************************************************************\ - Proxy EDSM API requests - \***************************************************************************/ - - const edsmApiPath = '/api/edsm' - - koaServer.use(createProxyWithDefaults(edsmApiPath, { - rewrite: stripPathSegment(edsmApiPath), - target: env.edsm.url, - })) - - - - - - /***************************************************************************\ - Proxy Wordpress requests - \***************************************************************************/ - - const wpApiPath = '/api/wp' - - koaServer.use(createProxyWithDefaults(wpApiPath, { - rewrite: stripPathSegment(wpApiPath, '/wp-json/wp/v2/'), - target: env.wordpress.url, - })) - - koaServer.use(createProxyWithDefaults('/wp-content', { - target: env.wordpress.url, - })) -} - - - - - -export default configureProxies diff --git a/src/server/middlewares/ua-redirect.mjs b/src/server/middlewares/ua-redirect.mjs deleted file mode 100644 index 3454f650b..000000000 --- a/src/server/middlewares/ua-redirect.mjs +++ /dev/null @@ -1,29 +0,0 @@ -import { UAParser } from 'ua-parser-js' - - - - - -export default function uaRedirect (browsers, target) { - return async (ctx, next) => { - const agent = new UAParser(ctx.header['user-agent']) - - if (agent) { - const agentBrowser = agent.getBrowser() - const browserResolver = browsers[agentBrowser.name] - if (typeof browserResolver !== 'undefined') { - const isIncompatible = typeof browserResolver === 'function' - ? browserResolver(agent) - : browserResolver - - if (isIncompatible) { - ctx.redirect(target) - return - } - } - } - - - await next() - } -} diff --git a/src/server/router/index.mjs b/src/server/router/index.mjs deleted file mode 100644 index 65e005e9c..000000000 --- a/src/server/router/index.mjs +++ /dev/null @@ -1,59 +0,0 @@ -import AvatarsRouter from '@fuelrats/koa-adorable-avatars' -import Router from '@koa/router' - -import redirects from './redirects' -import stripeApi from './stripeApi' - - - - - -const configureRouter = (nextApp, koaServer) => { - const router = new Router() - - - /***************************************************************************\ - Routes - \***************************************************************************/ - - // Redirects - redirects(router) - - // Stripe Api - stripeApi(router) - - // Avatars - router.use('/avatars', AvatarsRouter.routes(), AvatarsRouter.allowedMethods()) - - - /***************************************************************************\ - Next.js Passthrough - \***************************************************************************/ - - const nextRequestHandler = nextApp.getRequestHandler() - router.get('(.*)', async (ctx) => { - ctx.respond = false - await nextRequestHandler(ctx.req, ctx.res) - }) - - - - - - /***************************************************************************\ - Configure server and attach router. - \***************************************************************************/ - - koaServer.use(async (ctx, next) => { - ctx.res.statusCode = 200 - await next() - }) - koaServer.use(router.routes()) - koaServer.use(router.allowedMethods()) -} - - - - - -export default configureRouter diff --git a/src/server/router/redirects.mjs b/src/server/router/redirects.mjs deleted file mode 100644 index f810bb988..000000000 --- a/src/server/router/redirects.mjs +++ /dev/null @@ -1,64 +0,0 @@ -import { HttpStatus } from '@fuelrats/web-util/http' - -// Component constants -const DAY_CHAR_LENGTH = 2 -const MONTH_CHAR_LENGTH = 2 -const YEAR_CHAR_LENGTH = 4 - -const redirects = [ - { from: '/blogs', to: '/blog' }, // Old blog used to exist at /blogs - { from: '/fuel-rats-lexicon', to: 'https://confluence.fuelrats.com/pages/viewpage.action?pageId=3637257' }, // Lexicon used to be local - { from: '/get-help', to: '/i-need-fuel' }, // get-help was used at launch of the website, but has since been changed back. - { from: '/help', to: 'https://t.fuelr.at/help' }, // People often type this one manually into their URL bar to get to the helpdesk - { from: '/privacy', to: '/privacy-policy' }, // Common endpoint for privacy policies - { from: '/statistics', to: 'https://grafana.fuelrats.com' }, // statistics page is no longer on the website - { from: '/profile', to: '/profile/overview' }, // Profile page requires a tab name in the path -] - - - -const configureRedirects = (router) => { - /***************************************************************************\ - Redirects - \***************************************************************************/ - - // Permanent Redirects - redirects.forEach(({ from, to, type = HttpStatus.MOVED_PERMANENTLY, method = 'get' }) => { - router[method](from, async (ctx) => { - ctx.status = type - await ctx.redirect(to) - }) - }) - - - - - // Legacy Wordpress permalinks - // e.g. /2017/09/07/universal-service-a-fuel-rats-thargoid-cartoon - router.get('/:year/:month/:day/:slug', async (ctx, next) => { - const { - day, - month, - slug, - year, - } = ctx.params - - const dayIsValid = parseInt(day, 10) && (day.length === DAY_CHAR_LENGTH) - const monthIsValid = parseInt(month, 10) && (month.length === MONTH_CHAR_LENGTH) - const yearIsValid = parseInt(year, 10) && (year.length === YEAR_CHAR_LENGTH) - - if (dayIsValid && monthIsValid && yearIsValid) { - ctx.status = 301 - ctx.redirect(`/blog/${slug}`) - return - } - - await next() - }) -} - - - - - -export default configureRedirects diff --git a/src/server/router/stripeApi/document.mjs b/src/server/router/stripeApi/document.mjs deleted file mode 100644 index 12def266a..000000000 --- a/src/server/router/stripeApi/document.mjs +++ /dev/null @@ -1,74 +0,0 @@ -import { HttpStatus } from '@fuelrats/web-util/http' - -import { ApiError, InternalServerError } from './error' - - -class ResponseDocument { - meta = {} - data = {} - errors = undefined - - constructor ({ ctx, data, errors, meta = {} }) { - this.data = data - this.errors = errors - this.meta = meta - - if (ctx.state.traffic) { - this.meta.rateLimitTotal = ctx.state.traffic.total - this.meta.rateLimitRemaining = ctx.state.traffic.remaining - this.meta.rateLimitReset = ctx.state.traffic.reset - } - } - - toJSON () { - return { - data: this.errors ? undefined : this.data, // Do not send data obj if errors exist - errors: this.errors, - meta: this.meta, - } - } -} - -const prepareResponse = async (ctx, next) => { - try { - await next() - - if (!ctx.body) { - throw new InternalServerError() - } - - ctx.status = 200 - ctx.body = new ResponseDocument({ - ctx, - data: ctx.body, - }) - } catch (error) { - // Only expose internal errors in dev mode - const internalError = ctx.state.env.isDev - ? error - : undefined - - const finalError = error instanceof ApiError - ? error - : new InternalServerError({ - internalError, - }) - - ctx.status = typeof error?.code === 'number' ? error.code : HttpStatus.INTERNAL_SERVER_ERROR - ctx.body = new ResponseDocument({ - ctx, - errors: [finalError], - }) - - console.error(error) - } - - ctx.type = 'application/json' - ctx.body = JSON.stringify(ctx.body) -} - - - - - -export default prepareResponse diff --git a/src/server/router/stripeApi/error.mjs b/src/server/router/stripeApi/error.mjs deleted file mode 100644 index 30d3bbf4d..000000000 --- a/src/server/router/stripeApi/error.mjs +++ /dev/null @@ -1,80 +0,0 @@ -import { HttpStatus } from '@fuelrats/web-util/http' - -export class ApiError extends Error { - constructor (conf) { - const { - message, - code, - meta, - status, - source, - title, - } = conf - - super(message) - this.code = code - this.meta = meta - this.source = source - this.status = status - this.title = title - } - - toJSON () { - return { - status: this.status ?? 'internal_server_error', - code: this.code ?? HttpStatus.INTERNAL_SERVER_ERROR, - title: this.title ?? 'Internal Server Error', - detail: this.message, - source: this.source, - meta: this.meta, - } - } -} - -export class UnauthorizedError extends ApiError { - constructor ({ message, ...restErr } = {}) { - super({ - ...restErr, - status: 'unauthorized', - code: HttpStatus.UNAUTHORIZED, - title: 'Unauthorized', - message: message ?? 'You lack valid authentication credentials for this action.', - }) - } -} - -export class TooManyRequestsError extends ApiError { - constructor ({ message, tryAfter, meta, ...restErr } = {}) { - super({ - ...restErr, - status: 'too_many_requests', - code: HttpStatus.TOO_MANY_REQUESTS, - title: 'Too Many Requests', - message: message ?? `You have sent too many requests in a given amount of time.${tryAfter ? ` Try again after: ${tryAfter}.` : ''}`, - meta: { - ...(meta ?? {}), - tryAfter: tryAfter ?? 0, - }, - }) - } -} - -export class InternalServerError extends ApiError { - constructor ({ message, internalError, meta } = {}) { - super({ - status: 'internal_server_error', - code: HttpStatus.INTERNAL_SERVER_ERROR, - title: 'Internal Server Error', - message: message ?? 'The server encountered an unexpected condition that prevented it from fulfilling the request.', - meta: internalError - ? { - ...(meta ?? {}), - internalError: { - message: internalError.message, - name: internalError.name, - }, - } - : meta, - }) - } -} diff --git a/src/server/server.mjs b/src/server/server.mjs deleted file mode 100644 index 1d003be05..000000000 --- a/src/server/server.mjs +++ /dev/null @@ -1,67 +0,0 @@ -/* eslint-env node */ -'use strict' - -import Koa from 'koa' -import koaBody from 'koa-body' -import koaCompress from 'koa-compress' -import koaLogger from 'koa-logger' -import createNextServer from 'next' - -import getEnv from './environment' -import configureCSP from './middlewares/csp' -import proxies from './middlewares/proxy' -import uaRedirect from './middlewares/ua-redirect' -import router from './router' - - - - - -// Constants -const server = new Koa() - -const nextApp = createNextServer({ - dev: process.env.NODE_ENV !== 'production', -}) - - - - - -;(async function init () { - // Prepare nextApp - await nextApp.prepare() - - // get env - const env = getEnv() - - // Redirect any incompatible browsers to fallback website - server.use(uaRedirect({ IE: true }, env.fallbackUrl)) - - // Inject env into context. - server.use(async (ctx, next) => { - ctx.state.env = env - await next() - }) - - // Set up console logger - server.use(koaLogger()) - - // Add CSP - server.use(configureCSP()) - - // Add proxies - proxies(server, env) - - // Compress responses - server.use(koaCompress()) - - // Parse request bodies - server.use(koaBody()) - - // Add routes - router(nextApp, server) - - // Start the server - server.listen(env.port) -}()) diff --git a/src/services/fuelrats.js b/src/services/frApi.js similarity index 80% rename from src/services/fuelrats.js rename to src/services/frApi.js index 73eb3f49a..2f9865bb5 100644 --- a/src/services/fuelrats.js +++ b/src/services/frApi.js @@ -5,15 +5,11 @@ import qs from 'qs' -const { publicRuntimeConfig } = getConfig() -const localApiUrl = publicRuntimeConfig.apis.fuelRats.local - - - +const { publicRuntimeConfig } = getConfig() const frApi = axios.create({ - baseURL: localApiUrl, + baseURL: publicRuntimeConfig.frapi.url, timeout: 10000, paramsSerializer: qs.stringify, diff --git a/src/services/frSocket.js b/src/services/frSocket.js index dcd97d503..5e8b3e2d6 100644 --- a/src/services/frSocket.js +++ b/src/services/frSocket.js @@ -10,12 +10,9 @@ import { updatesResources } from '~/store/reducers/frAPIResources' const { publicRuntimeConfig } = getConfig() -const socketUrl = publicRuntimeConfig.apis.fuelRats.socket - - const frSocket = new ReduxRatSocket( - socketUrl, + publicRuntimeConfig.frapi.socket, { transformAction (action) { return { diff --git a/src/services/imageLoader.js b/src/services/imageLoader.js index 10af1d390..6f0c36548 100644 --- a/src/services/imageLoader.js +++ b/src/services/imageLoader.js @@ -9,7 +9,7 @@ let worker = null -const getImageLoader = (dispatch) => { +const imageLoader = (dispatch) => { if (!worker) { worker = new Worker(new URL('../workers/image-loader.worker.js', import.meta.url)) worker.addEventListener('message', (event) => { @@ -34,4 +34,4 @@ const getImageLoader = (dispatch) => { -export default getImageLoader +export default imageLoader diff --git a/src/services/stripe.js b/src/services/stApi.js similarity index 84% rename from src/services/stripe.js rename to src/services/stApi.js index b3bfaa5c4..980936a30 100644 --- a/src/services/stripe.js +++ b/src/services/stApi.js @@ -6,7 +6,7 @@ import getConfig from 'next/config' const { publicRuntimeConfig } = getConfig() -const localStripeApiUrl = publicRuntimeConfig.apis.stripe.url +const localStripeApiUrl = publicRuntimeConfig.stripe.url diff --git a/src/services/wordpress.js b/src/services/wpApi.js similarity index 83% rename from src/services/wordpress.js rename to src/services/wpApi.js index 063ee0a7e..ac634b1e9 100644 --- a/src/services/wordpress.js +++ b/src/services/wpApi.js @@ -6,7 +6,7 @@ import getConfig from 'next/config' const { publicRuntimeConfig } = getConfig() -const localWordpressApiUrl = publicRuntimeConfig.apis.wordpress.url +const localWordpressApiUrl = publicRuntimeConfig.wordpress.url diff --git a/src/store/actionTypes.js b/src/store/actionTypes.js index 4dc0af51e..ead0ed145 100644 --- a/src/store/actionTypes.js +++ b/src/store/actionTypes.js @@ -3,7 +3,6 @@ const clients = { search: 'clients/search', } - const decals = { read: 'decals/read', redeem: 'decals/redeem', @@ -68,6 +67,9 @@ const users = { statistics: { read: 'users/statistics/read', }, + avatar: { + update: 'users/avatar/update', + }, } diff --git a/src/store/actions/authentication.js b/src/store/actions/authentication.js index f091b8273..a8be50b23 100644 --- a/src/store/actions/authentication.js +++ b/src/store/actions/authentication.js @@ -3,9 +3,9 @@ import { isError } from 'flux-standard-action' import Cookies from 'js-cookie' import Router from 'next/router' -import getFingerprint from '~/helpers/getFingerprint' -import { presentApiRequestBody } from '~/helpers/presenters' -import frApi from '~/services/fuelrats' +import frApi from '~/services/frApi' +import getFingerprint from '~/util/getFingerprint' +import createRequestBody from '~/util/jsonapi/createRequestBody' import actionTypes from '../actionTypes' import { frApiPlainRequest } from './services' @@ -27,7 +27,7 @@ export const changePassword = ({ id, ...data }) => { { url: `/users/${id}/password`, method: 'patch', - data: presentApiRequestBody('password-changes', data), + data: createRequestBody('password-changes', data), }, ) } @@ -65,21 +65,15 @@ export const login = (options) => { Cookies.set('access_token', token, { expires: remember ? SESSION_TOKEN_LENGTH : null }) - /* eslint-disable no-restricted-globals */ if (location && location.search) { - const searchParams = {} + const searchParams = new URLSearchParams(location.search) - location.search.replace(/^\?/u, '').split('&').forEach((searchParam) => { - const [key, value] = searchParam.split('=') - - searchParams[key] = value - }) - - const destination = searchParams.destination ? decodeURIComponent(searchParams.destination) : '/profile' + const destination = searchParams.has('destination') + ? decodeURIComponent(searchParams.get('destination')) + : '/profile' Router.push(destination) } - /* eslint-enable no-restricted-globals */ } return dispatch(action) @@ -124,7 +118,7 @@ export const register = (data) => { headers: { 'X-Fingerprint': fingerprint, }, - data: presentApiRequestBody('registrations', data), + data: createRequestBody('registrations', data), }, ), ) @@ -138,7 +132,7 @@ export const resetPassword = (token, data) => { { url: `/resets/${token}`, method: 'post', - data: presentApiRequestBody('resets', data), + data: createRequestBody('resets', data), }, ) } @@ -150,7 +144,7 @@ export const sendPasswordResetEmail = (data) => { { url: '/resets', method: 'post', - data: presentApiRequestBody('resets', data), + data: createRequestBody('resets', data), }, ) } diff --git a/src/store/actions/clients.js b/src/store/actions/clients.js index 48517b8e5..f1d1fb870 100644 --- a/src/store/actions/clients.js +++ b/src/store/actions/clients.js @@ -1,4 +1,4 @@ -import { presentApiRequestBody } from '~/helpers/presenters' +import createRequestBody from '~/util/jsonapi/createRequestBody' import actionTypes from '../actionTypes' import { frApiRequest } from './services' @@ -24,7 +24,7 @@ export const createClient = (data) => { { url: '/clients', method: 'post', - data: presentApiRequestBody('clients', data), + data: createRequestBody('clients', data), }, ) } diff --git a/src/store/actions/epics.js b/src/store/actions/epics.js index e1800bf38..7858142a1 100644 --- a/src/store/actions/epics.js +++ b/src/store/actions/epics.js @@ -1,4 +1,4 @@ -import { presentApiRequestBody } from '~/helpers/presenters' +import createRequestBody from '~/util/jsonapi/createRequestBody' import actionTypes from '../actionTypes' import { frApiRequest } from './services' @@ -22,7 +22,7 @@ export const createEpic = (data) => { { url: '/epics', method: 'post', - data: presentApiRequestBody('epics', data), + data: createRequestBody('epics', data), }, ) } diff --git a/src/store/actions/rats.js b/src/store/actions/rats.js index 1a137aa5d..851a29f25 100644 --- a/src/store/actions/rats.js +++ b/src/store/actions/rats.js @@ -1,6 +1,7 @@ import { defineRelationship } from '@fuelrats/web-util/redux-json-api' -import { presentApiRequestBody } from '~/helpers/presenters' +import createRequestBody from '~/util/jsonapi/createRequestBody' + import actionTypes from '../actionTypes' import { @@ -42,7 +43,7 @@ export const createRat = (data) => { { url: '/rats', method: 'post', - data: presentApiRequestBody('rats', data), + data: createRequestBody('rats', data), }, createsRelationship( defineRelationship(data.relationships?.user?.data, { rats: [RESOURCE] }), @@ -51,7 +52,7 @@ export const createRat = (data) => { } -export const deleteRat = (rat) => { +export const deleteRat = (user, rat) => { return frApiRequest( actionTypes.rats.delete, { @@ -60,7 +61,10 @@ export const deleteRat = (rat) => { }, deletesResource(rat), deletesRelationship( - defineRelationship(rat.relationships?.user?.data?.id, { rats: [rat] }), + defineRelationship( + { type: 'users', id: user.id }, + { rats: [{ type: 'rats', id: rat.id }] }, + ), ), ) } @@ -74,7 +78,7 @@ export const updateRat = (data) => { { url: `/rats/${data.id}`, method: 'put', - data: presentApiRequestBody('rats', data), + data: createRequestBody('rats', data), }, ) } diff --git a/src/store/actions/rescues.js b/src/store/actions/rescues.js index f4c3df0c4..7aa4cf946 100644 --- a/src/store/actions/rescues.js +++ b/src/store/actions/rescues.js @@ -1,4 +1,4 @@ -import { presentApiRequestBody } from '~/helpers/presenters' +import createRequestBody from '~/util/jsonapi/createRequestBody' import actionTypes from '../actionTypes' import { DISPATCH_VIEW } from '../reducers/dispatch' @@ -62,7 +62,7 @@ export const updateRescue = (data) => { { url: `/rescues/${data.id}`, method: 'put', - data: presentApiRequestBody('rescues', data), + data: createRequestBody('rescues', data), }, ) } diff --git a/src/store/actions/services.js b/src/store/actions/services.js index 8140c173a..2944dd20e 100644 --- a/src/store/actions/services.js +++ b/src/store/actions/services.js @@ -1,9 +1,9 @@ import { isRequired } from '@fuelrats/validation-util' import { axiosRequest, createAxiosFSA } from '@fuelrats/web-util/actions' -import frApi from '~/services/fuelrats' -import stApi from '~/services/stripe' -import wpApi from '~/services/wordpress' +import frApi from '~/services/frApi' +import stApi from '~/services/stApi' +import wpApi from '~/services/wpApi' import { updatesResources } from '../reducers/frAPIResources' import { selectSessionToken } from '../selectors' diff --git a/src/store/actions/session.js b/src/store/actions/session.js index 2741b692c..432af0391 100644 --- a/src/store/actions/session.js +++ b/src/store/actions/session.js @@ -2,8 +2,10 @@ import { createFSA, createAxiosFSA } from '@fuelrats/web-util/actions' import { HttpStatus } from '@fuelrats/web-util/http' import { isError } from 'flux-standard-action' -import { configureRequest, deleteCookie } from '~/helpers/gIPTools' -import frApi from '~/services/fuelrats' + +import frApi from '~/services/frApi' +import configureRequest from '~/util/getInitialProps/configureRequest' +import deleteCookie from '~/util/getInitialProps/deleteCookie' import actionTypes from '../actionTypes' import { @@ -66,9 +68,9 @@ export const initUserSession = (ctx) => { // Get user agent to be used by login modal and i-need-fuel page let userAgent = '' if (ctx.req && ctx.req.headers['user-agent']) { - userAgent = ctx.req.headers['user-agent'].toLowerCase() + userAgent = ctx.req.headers['user-agent'] } else if (typeof window !== 'undefined') { - userAgent = window.navigator.userAgent.toLowerCase() + userAgent = window.navigator.userAgent } const action = createFSA( @@ -79,7 +81,7 @@ export const initUserSession = (ctx) => { }, ) - if (accessToken !== session.token) { + if (accessToken !== session.token || userAgent !== session.userAgent) { dispatch(action) } diff --git a/src/store/actions/ships.js b/src/store/actions/ships.js index 7c16806ef..12b1d3a58 100644 --- a/src/store/actions/ships.js +++ b/src/store/actions/ships.js @@ -1,6 +1,8 @@ import { defineRelationship } from '@fuelrats/web-util/redux-json-api' -import { presentApiRequestBody } from '~/helpers/presenters' +import createRequestBody from '~/util/jsonapi/createRequestBody' + + import actionTypes from '../actionTypes' import { createsRelationship, RESOURCE, deletesResource, deletesRelationship } from '../reducers/frAPIResources' @@ -37,7 +39,7 @@ export const createShip = (data) => { { url: '/ships', method: 'post', - data: presentApiRequestBody('ships', data), + data: createRequestBody('ships', data), }, createsRelationship( defineRelationship(data.relationships?.rat?.data, { ships: [RESOURCE] }), @@ -67,7 +69,7 @@ export const updateShip = (data) => { { url: `/ships/${data.id}`, method: 'put', - data: presentApiRequestBody('ships', data), + data: createRequestBody('ships', data), }, ) } diff --git a/src/store/actions/user.js b/src/store/actions/user.js index 90bbda357..be5470590 100644 --- a/src/store/actions/user.js +++ b/src/store/actions/user.js @@ -1,15 +1,15 @@ import { defineRelationship } from '@fuelrats/web-util/redux-json-api' -import { presentApiRequestBody } from '~/helpers/presenters' +import createRequestBody from '~/util/jsonapi/createRequestBody' + + import actionTypes from '../actionTypes' import { deletesResource, deletesRelationship, createsRelationship, RESOURCE } from '../reducers/frAPIResources' -import { withCurrentUserId, selectUserById } from '../selectors' +import { withCurrentUserId, selectUserById, selectCurrentUserId } from '../selectors' import { frApiRequest } from './services' - - export const getNickname = (nickId) => { return frApiRequest( actionTypes.nicknames.read, @@ -23,7 +23,7 @@ export const addNickname = (user, data) => { { url: '/nicknames', method: 'post', - data: presentApiRequestBody('nicknames', data), + data: createRequestBody('nicknames', data), }, createsRelationship( defineRelationship(user, { nicknames: [RESOURCE] }), @@ -63,7 +63,7 @@ export const updateUser = (data, password) => { const request = { url: `/users/${data.id}`, method: 'put', - data: presentApiRequestBody('users', data), + data: createRequestBody('users', data), } if (password) { @@ -78,3 +78,18 @@ export const updateUser = (data, password) => { return dispatch(frApiRequest(actionTypes.users.update, request)) } } + +export const updateAvatar = (data) => { + return (dispatch, getState) => { + const user = selectCurrentUserId(getState()) + const formData = new FormData() + formData.append('image', data) + const request = { + url: `/users/${user}/image`, + method: 'post', + data: formData, + } + + return dispatch(frApiRequest(actionTypes.users.avatar.update, request)) + } +} diff --git a/src/store/actions/wordpress.js b/src/store/actions/wordpress.js index 89234f399..a891aba8f 100644 --- a/src/store/actions/wordpress.js +++ b/src/store/actions/wordpress.js @@ -1,6 +1,6 @@ import { createAxiosFSA } from '@fuelrats/web-util/actions' -import wpApi from '~/services/wordpress' +import wpApi from '~/services/wpApi' import actionTypes from '../actionTypes' diff --git a/src/store/index.js b/src/store/index.js index 32560193e..4188ef625 100644 --- a/src/store/index.js +++ b/src/store/index.js @@ -1,150 +1,55 @@ -/* globals $IS_DEVELOPMENT:false */ - -import { errorLoggerMiddleware, FSAComplianceMiddleware } from '@fuelrats/web-util/redux-middleware' -import { connect } from 'react-redux' -import { - bindActionCreators, - createStore, - applyMiddleware, -} from 'redux' +import { errorLoggerMiddleware } from '@fuelrats/web-util/redux-middleware' +import hoistNonReactStatics from 'hoist-non-react-statics' +import React from 'react' +import { useDispatch } from 'react-redux' +import { createStore, applyMiddleware } from 'redux' import { composeWithDevTools } from 'redux-devtools-extension' import thunkMiddleware from 'redux-thunk' - import frSocket from '~/services/frSocket' - -import * as authenticationActions from './actions/authentication' -import * as blogActions from './actions/blogs' -import * as decalActions from './actions/decals' -import * as epicActions from './actions/epics' -import * as flagActions from './actions/flags' -import * as imageActions from './actions/images' -import * as ratActions from './actions/rats' -import * as rescueActions from './actions/rescues' -import * as serviceActions from './actions/services' -import * as sessionActions from './actions/session' -import * as shipActions from './actions/ships' -import * as statisticsActions from './actions/statistics' -import * as stripeActions from './actions/stripe' -import * as userActions from './actions/user' -import * as verifyActions from './actions/verify' -import * as wordpressActions from './actions/wordpress' import actionTypes from './actionTypes' import initialState from './initialState' import reducer from './reducers' -const actions = { - ...authenticationActions, - ...blogActions, - ...decalActions, - ...epicActions, - ...flagActions, - ...imageActions, - ...ratActions, - ...rescueActions, - ...serviceActions, - ...sessionActions, - ...shipActions, - ...statisticsActions, - ...stripeActions, - ...userActions, - ...verifyActions, - ...wordpressActions, -} - - - - - const ignoredTypes = [ // This pops up on every 404 page due to how our fallback system works, therefore it's not generally helpful to log. actionTypes.wordpress.pages.read, ] const middlewares = [thunkMiddleware, frSocket.createMiddleware(), errorLoggerMiddleware(ignoredTypes)] -if ($IS_DEVELOPMENT) { +if ($$BUILD.isDev) { middlewares.unshift(require('redux-immutable-state-invariant').default()) - middlewares.push(FSAComplianceMiddleware) + middlewares.push(require('@fuelrats/web-util/redux-middleware').FSAComplianceMiddleware) } - - -const initStore = (state = initialState) => { - return createStore(reducer, state, composeWithDevTools(applyMiddleware(...middlewares))) -} - - - - - -const connectDecorator = (target) => { - const { - mapDispatchToProps: mDTP, - mapStateToProps, - mergeProps, - reduxOptions, - } = target - let mapDispatchToProps = mDTP - - if (Array.isArray(mDTP)) { - mapDispatchToProps = (dispatch) => { - return bindActionCreators( - mDTP.reduce( - (acc, actionName) => { - return { - ...acc, - [actionName]: actions[actionName], - } - }, - {}, - ), - dispatch, +/** + * Transitionary method of connecting state to hard-to-refactor class components. + * + * Provides state returned by the provider function and automatically attaches the dispatch() function. + * + * DO NOT INTRODUCE TO NEW COMPONENTS + * + * @param {Function} stateProvider a function which returns an object of state values. hook-compatible. props and dispatch are available through arguments. + * @returns {React.FC} + */ +export function connectState (stateProvider) { + return (Component) => { + return hoistNonReactStatics((props) => { + const dispatch = useDispatch() + const stateProps = stateProvider?.(props, dispatch) ?? {} + return ( + <Component + {...props} + {...stateProps} + dispatch={dispatch} /> ) - } - } - - return connect( - mapStateToProps || (() => { - return {} - }), - mapDispatchToProps || {}, - mergeProps, - reduxOptions, - )(target) -} - - - - - -const getActionCreators = (action, dispatch) => { - let resolvedAction = action - - if (Array.isArray(action) && typeof action[0] === 'string') { - resolvedAction = action.reduce((acc, actionName) => { - return { - ...acc, - [actionName]: actions[actionName], - } - }, {}) - } - - if (typeof action === 'string') { - resolvedAction = actions[action] + }, Component) } - - return bindActionCreators(resolvedAction, dispatch) } - - - - -export { - getActionCreators, - connectDecorator as connect, - initStore, +export const initStore = (state = initialState) => { + return createStore(reducer, state, composeWithDevTools(applyMiddleware(...middlewares))) } diff --git a/src/store/reducers/_debug_set.js b/src/store/reducers/_debugSet.js similarity index 91% rename from src/store/reducers/_debug_set.js rename to src/store/reducers/_debugSet.js index 46afc7cee..b56794093 100644 --- a/src/store/reducers/_debug_set.js +++ b/src/store/reducers/_debugSet.js @@ -9,7 +9,7 @@ import _set from 'lodash/set' * @param {[string, any]} action.payload lodash set path/value * @returns {object} next redux state */ -export default function unsafeSet (state, action) { +export default function _debugSet (state, action) { if (action.type === 'unsafe/set') { return produce(state, (draftState) => { _set(draftState, ...action.payload) diff --git a/src/store/reducers/blogs.js b/src/store/reducers/blogs.js index 304228743..ce707cee9 100644 --- a/src/store/reducers/blogs.js +++ b/src/store/reducers/blogs.js @@ -11,7 +11,7 @@ import initialState from '../initialState' -const blogsReducer = produce((draftState, action) => { +export default produce((draftState, action) => { const { payload, type, @@ -52,9 +52,3 @@ const blogsReducer = produce((draftState, action) => { break } }, initialState.blogs) - - - - - -export default blogsReducer diff --git a/src/store/reducers/dispatch.js b/src/store/reducers/dispatch.js index 83ad42867..af781b50d 100644 --- a/src/store/reducers/dispatch.js +++ b/src/store/reducers/dispatch.js @@ -7,7 +7,7 @@ import initialState from '../initialState' const DISPATCH_VIEW = '__dispatch_board' -const dispatchReducer = produce((draft, action) => { +export default produce((draft, action) => { switch (action.type) { case actionTypes.rescues.search: if (action.meta[DISPATCH_VIEW]) { @@ -22,7 +22,6 @@ const dispatchReducer = produce((draft, action) => { } }, initialState.dispatch) -export default dispatchReducer export { DISPATCH_VIEW, } diff --git a/src/store/reducers/flags.js b/src/store/reducers/flags.js index cf66a04ee..cf4e16577 100644 --- a/src/store/reducers/flags.js +++ b/src/store/reducers/flags.js @@ -12,7 +12,7 @@ import initialState from '../initialState' -const flagsReducer = produce((draftState, action) => { +export default produce((draftState, action) => { const { payload, type, @@ -29,9 +29,3 @@ const flagsReducer = produce((draftState, action) => { break } }, initialState.flags) - - - - - -export default flagsReducer diff --git a/src/store/reducers/frSocket.js b/src/store/reducers/frSocket.js index 7617b3553..b8e0d966a 100644 --- a/src/store/reducers/frSocket.js +++ b/src/store/reducers/frSocket.js @@ -2,8 +2,8 @@ import { SOCKET_OPEN, SOCKET_CLOSE } from '@fuelrats/web-util/redux-ratsocket' import { isError } from 'flux-standard-action' import { produce } from 'immer' -import unshiftSplice from '~/helpers/unshiftSplice' import frSocket from '~/services/frSocket' +import unshiftSplice from '~/util/array/unshiftSplice' import initialState from '../initialState' diff --git a/src/store/reducers/images.js b/src/store/reducers/images.js index fa39b738e..bf73cb80b 100644 --- a/src/store/reducers/images.js +++ b/src/store/reducers/images.js @@ -12,7 +12,7 @@ import initialState from '../initialState' -const imageReducer = produce((draftState, action) => { +export default produce((draftState, action) => { const { payload, meta, @@ -37,9 +37,3 @@ const imageReducer = produce((draftState, action) => { break } }, initialState.images) - - - - - -export default imageReducer diff --git a/src/store/reducers/leaderboard.js b/src/store/reducers/leaderboard.js index a53dad302..c1ce8fda9 100644 --- a/src/store/reducers/leaderboard.js +++ b/src/store/reducers/leaderboard.js @@ -8,7 +8,7 @@ import initialState from '../initialState' -const leaderboardReducer = produce((draftState, action) => { +export default produce((draftState, action) => { if (isError(action)) { return } @@ -23,9 +23,3 @@ const leaderboardReducer = produce((draftState, action) => { break } }, initialState.leaderboard) - - - - - -export default leaderboardReducer diff --git a/src/store/reducers/pageViews.js b/src/store/reducers/pageViews.js index 2b30d03ce..2f743beed 100644 --- a/src/store/reducers/pageViews.js +++ b/src/store/reducers/pageViews.js @@ -25,7 +25,7 @@ const dataReducer = ({ data }, { reducer }) => { -const pageViewsReducer = produce((draftState, action) => { +export default produce((draftState, action) => { const { meta, payload } = action if (!isError(action) && meta?.pageView) { @@ -37,9 +37,3 @@ const pageViewsReducer = produce((draftState, action) => { } } }, initialState.pageViews) - - - - - -export default pageViewsReducer diff --git a/src/store/reducers/session.js b/src/store/reducers/session.js index 940c2ec2b..209106169 100644 --- a/src/store/reducers/session.js +++ b/src/store/reducers/session.js @@ -20,7 +20,7 @@ const clearLoginState = (draftState = initialState.session) => { } -const sessionReducer = produce((draftState, action) => { +export default produce((draftState, action) => { const { meta, payload, @@ -76,9 +76,3 @@ const sessionReducer = produce((draftState, action) => { break } }, initialState.session) - - - - - -export default sessionReducer diff --git a/src/store/reducers/users.js b/src/store/reducers/users.js index ea66fcbda..9cd277275 100644 --- a/src/store/reducers/users.js +++ b/src/store/reducers/users.js @@ -1,14 +1,14 @@ import { isError } from 'flux-standard-action' import { produce } from 'immer' -import safeParseInt from '~/helpers/safeParseInt' +import safeParseInt from '~/util/safeParseInt' import actionTypes from '../actionTypes' import initialState from '../initialState' const metaKey = '__decals/decrement' -const usersReducer = produce((draftState, action) => { +export default produce((draftState, action) => { if (isError(action)) { return } @@ -35,6 +35,3 @@ export function decrementsEligibleDecals (id) { [metaKey]: id, } } - - -export default usersReducer diff --git a/src/store/reducers/wordpress.js b/src/store/reducers/wordpress.js index 1c754dc66..56a387295 100644 --- a/src/store/reducers/wordpress.js +++ b/src/store/reducers/wordpress.js @@ -12,7 +12,7 @@ import initialState from '../initialState' -const wordpressReducer = produce((draftState, action) => { +export default produce((draftState, action) => { const { payload, type, @@ -32,9 +32,3 @@ const wordpressReducer = produce((draftState, action) => { break } }, initialState.rescues) - - - - - -export default wordpressReducer diff --git a/src/store/selectors/clients.js b/src/store/selectors/clients.js index 90f1ffb47..54dcf9df6 100644 --- a/src/store/selectors/clients.js +++ b/src/store/selectors/clients.js @@ -1,6 +1,6 @@ import { createCachedSelector } from 're-reselect' -import { getUserId } from './users' +import { getUserIdProp } from './users' const selectClients = (state) => { @@ -8,13 +8,13 @@ const selectClients = (state) => { } const selectClientsByUserId = createCachedSelector( - [selectClients, getUserId], + [selectClients, getUserIdProp], (clients, userId) => { return Object.values(clients).filter((client) => { return client.relationships.user?.data?.id === userId }) ?? [] }, -)(getUserId) +)(getUserIdProp) export { selectClients, diff --git a/src/store/selectors/decals.js b/src/store/selectors/decals.js index ca9c7c5f4..d0239d350 100644 --- a/src/store/selectors/decals.js +++ b/src/store/selectors/decals.js @@ -1,9 +1,10 @@ import { createCachedSelector } from 're-reselect' -import safeParseInt from '~/helpers/safeParseInt' +import safeParseInt from '~/util/safeParseInt' + import { withCurrentUserId } from './session' -import { getUserId, selectUserById } from './users' +import { getUserIdProp, selectUserById } from './users' @@ -38,4 +39,4 @@ export const selectDecalsByUserId = createCachedSelector( } return undefined }, -)(getUserId) +)(getUserIdProp) diff --git a/src/store/selectors/groups.js b/src/store/selectors/groups.js index a51e15490..042b1aaf6 100644 --- a/src/store/selectors/groups.js +++ b/src/store/selectors/groups.js @@ -1,6 +1,6 @@ import { createCachedSelector } from 're-reselect' -import { getUserId, selectUserById } from './users' +import { getUserIdProp, selectUserById } from './users' @@ -26,4 +26,4 @@ export const selectGroupsByUserId = createCachedSelector( } return [] }, -)(getUserId) +)(getUserIdProp) diff --git a/src/store/selectors/nicknames.js b/src/store/selectors/nicknames.js index 21df0f057..0e637e259 100644 --- a/src/store/selectors/nicknames.js +++ b/src/store/selectors/nicknames.js @@ -1,6 +1,6 @@ import { createCachedSelector } from 're-reselect' -import { getUserId, selectUserById } from './users' +import { getUserIdProp, selectUserById } from './users' @@ -26,4 +26,4 @@ export const selectNicknamesByUserId = createCachedSelector( } return [] }, -)(getUserId) +)(getUserIdProp) diff --git a/src/store/selectors/rescues.js b/src/store/selectors/rescues.js index bc218186d..3a63a05db 100644 --- a/src/store/selectors/rescues.js +++ b/src/store/selectors/rescues.js @@ -76,6 +76,11 @@ export const selectCurrentUserCanEditRescue = createCachedSelector( return true } + // If the resuce is still open, don't allow editing + if (rescue.attributes.status !== 'closed') { + return false + } + // Check if current user is assigned to case. const usersAssignedRats = rescueRats?.reduce( (acc, rat) => { diff --git a/src/store/selectors/statistics.js b/src/store/selectors/statistics.js index 12705512b..ddc965a13 100644 --- a/src/store/selectors/statistics.js +++ b/src/store/selectors/statistics.js @@ -1,6 +1,6 @@ import { createCachedSelector } from 're-reselect' -import { selectUserRatsRelationship, getUserId } from './users' +import { selectUserRatsRelationship, getUserIdProp } from './users' export const selectLeaderboard = (state) => { return state.leaderboard.entries @@ -21,7 +21,7 @@ export const selectRatStatisticsById = (state, { ratId }) => { export const selectUserStatisticsById = createCachedSelector( - [getUserId, selectUserRatsRelationship, selectRatStatistics], + [getUserIdProp, selectUserRatsRelationship, selectRatStatistics], (userId, userRats, ratStatistics) => { // if the user doesn't exist, or there's no rat data, or there's no statistics for the first rat, return null. // Since the only way of getting a rat's statistics is by requesting for all rats of a user, we can assume we don't have any if we're missing one. @@ -54,4 +54,4 @@ export const selectUserStatisticsById = createCachedSelector( }, {}), } }, -)(getUserId) +)(getUserIdProp) diff --git a/src/store/selectors/users.js b/src/store/selectors/users.js index bd771e5d5..fe78f91b8 100644 --- a/src/store/selectors/users.js +++ b/src/store/selectors/users.js @@ -1,6 +1,7 @@ import { createCachedSelector } from 're-reselect' -import { includesAll, includesSome } from '~/helpers/arrIncludes' +import includesAll from '~/util/array/includesAll' +import includesSome from '~/util/array/includesSome' import { withCurrentUserId } from './session' @@ -14,11 +15,15 @@ const AVATAR_DEFAULT_SIZE = 256 -const getScope = (_, props) => { +const getScopeProp = (_, props) => { return props?.scope } -export const getUserId = (_, props) => { +const getSizeProp = (_, props) => { + return props?.size ?? AVATAR_DEFAULT_SIZE +} + +export const getUserIdProp = (_, props) => { return props?.userId } @@ -39,14 +44,23 @@ export const selectUserDisplayRatRelationship = (state, props) => { } export const selectAvatarByUserId = (state, props) => { - const user = selectUserById(state, props) + return selectUserById(state, props)?.relationships.avatar?.data ?? undefined +} - if (!user) { - return undefined - } +export const selectAvatarUrlByUserId = createCachedSelector( + [selectAvatarByUserId, getSizeProp, getUserIdProp], + (avatar, size, userId) => { + if (userId === 'null') { + return undefined + } - return user.attributes.image ? `/api/users/${user.id}/avatar` : `/avatars/${props.size ?? AVATAR_DEFAULT_SIZE}/${user.id}` -} + return avatar + ? `/api/fr/users/${userId}/image?v=${avatar.id}&size=${size}` + : `/api/avatars/${userId}/${size}` + }, +)((_, props) => { + return `${getUserIdProp(_, props)}-${getSizeProp(_, props)}` +}) export const selectCurrentUserScopes = (state) => { return withCurrentUserId(selectUserById)(state)?.meta?.permissions ?? [] @@ -63,7 +77,7 @@ export const selectCurrentUserScopes = (state) => { export const selectCurrentUserHasScope = createCachedSelector( [ selectCurrentUserScopes, - getScope, + getScopeProp, ], (userScopes, scope) => { if (!scope) { diff --git a/src/util/array/includesAll.js b/src/util/array/includesAll.js new file mode 100644 index 000000000..fdc744960 --- /dev/null +++ b/src/util/array/includesAll.js @@ -0,0 +1,5 @@ +export default function includesAll (target, items) { + return target.every((targetItem) => { + return items.includes(targetItem) + }) +} diff --git a/src/util/array/includesSome.js b/src/util/array/includesSome.js new file mode 100644 index 000000000..a294bca52 --- /dev/null +++ b/src/util/array/includesSome.js @@ -0,0 +1,5 @@ +export default function includesSome (target, items) { + return target.some((targetItem) => { + return items.includes(targetItem) + }) +} diff --git a/src/helpers/unshiftSplice.js b/src/util/array/unshiftSplice.js similarity index 100% rename from src/helpers/unshiftSplice.js rename to src/util/array/unshiftSplice.js diff --git a/src/util/date/formatAsEliteDate.js b/src/util/date/formatAsEliteDate.js new file mode 100644 index 000000000..898eea178 --- /dev/null +++ b/src/util/date/formatAsEliteDate.js @@ -0,0 +1,12 @@ +import formatElite from './formatElite' + +/** + * @param {string | number | Date} value Timestamp string, epoch, or date object. + * @returns {string} + */ +export default function formatAsEliteDate (value) { + return formatElite( + value, + 'dd MMM yyyy', + ).toUpperCase() +} diff --git a/src/util/date/formatAsEliteDateTime.js b/src/util/date/formatAsEliteDateTime.js new file mode 100644 index 000000000..769de6f40 --- /dev/null +++ b/src/util/date/formatAsEliteDateTime.js @@ -0,0 +1,13 @@ +import formatElite from './formatElite' + +/** + * @param {string | number | Date} value Timestamp string, epoch, or date object. + * @param {boolean} withSeconds + * @returns {string} + */ +export default function formatAsEliteDateTime (value, withSeconds) { + return formatElite( + value, + `dd MMM yyyy HH:mm${withSeconds ? ':ss' : ''}`, + ).toUpperCase() +} diff --git a/src/util/date/formatElite.js b/src/util/date/formatElite.js new file mode 100644 index 000000000..3b849666e --- /dev/null +++ b/src/util/date/formatElite.js @@ -0,0 +1,16 @@ +import { format as formatTz } from 'date-fns-tz' + +import toEliteDate from './toEliteDate' + +/** + * @param {string | number | Date} value Timestamp string, epoch, or date object. + * @param {string} format date-fns format string + * @returns {string} + */ +export default function formatElite (value, format) { + return formatTz( + toEliteDate(value), + format, + { timeZone: 'UTC' }, + ) +} diff --git a/src/util/date/formatTimeElapsed.js b/src/util/date/formatTimeElapsed.js new file mode 100644 index 000000000..ea4d4f6bb --- /dev/null +++ b/src/util/date/formatTimeElapsed.js @@ -0,0 +1,29 @@ +const MILLISECONDS_IN_SECOND = 1000 +const MINUTES_IN_HOUR = 60 +const SECONDS_IN_HOUR = 3600 +const SECONDS_IN_MINUTE = 60 +const SECONDS_IN_DAY = 86400 + +function padNum (number) { + return String(number).padStart(2, 0) +} + +/** + * @param {string | number | Date} value Timestamp string, epoch, or date object. + * @returns {[string, number]} A tuple containing the formatted string and the remainder amount of milliseconds. + */ +export default function formatTimeElapsed (value) { + const startTime = (new Date(value)).getTime() + const nowTime = Date.now() + + const totalMilliseconds = nowTime - startTime + const totalSeconds = Math.floor(totalMilliseconds / MILLISECONDS_IN_SECOND) + + const days = Math.floor(totalSeconds / SECONDS_IN_DAY) + const hours = Math.floor((totalSeconds % SECONDS_IN_DAY) / SECONDS_IN_HOUR) + const minutes = Math.floor((totalSeconds % SECONDS_IN_HOUR) / MINUTES_IN_HOUR) + const seconds = totalSeconds % SECONDS_IN_MINUTE + const milliseconds = totalMilliseconds % MILLISECONDS_IN_SECOND + + return [`${days > 0 ? `${days}d ` : ''}${padNum(hours)}:${padNum(minutes)}:${padNum(seconds)}`, milliseconds] +} diff --git a/src/util/date/toEliteDate.js b/src/util/date/toEliteDate.js new file mode 100644 index 000000000..9a376a8f5 --- /dev/null +++ b/src/util/date/toEliteDate.js @@ -0,0 +1,19 @@ +const ELITE_GAME_YEAR_DISPARITY = 1286 // Years between IRL year and Elite universe year + +/** + * @param {string | number | Date} value Timestamp string, epoch, or date object. + * @returns {Date} + */ +export default function toEliteDate (value) { + const date = new Date(value) + + return new Date( + date.getUTCFullYear() + ELITE_GAME_YEAR_DISPARITY, + date.getUTCMonth(), + date.getUTCDate(), + date.getUTCHours(), + date.getUTCMinutes(), + date.getUTCSeconds(), + date.getUTCMilliseconds(), + ) +} diff --git a/src/util/decorators/bindMethod.js b/src/util/decorators/bindMethod.js new file mode 100644 index 000000000..a3d21c122 --- /dev/null +++ b/src/util/decorators/bindMethod.js @@ -0,0 +1,21 @@ +export default function bindMethod (target, name, descriptor) { + const func = descriptor.value + return { + configurable: true, + get () { + if (this === target || Reflect.getOwnPropertyDescriptor(target, name)) { + return func + } + + const boundFunc = func.bind(this) + + Reflect.defineProperty(this, name, { + value: boundFunc, + configurable: true, + writable: true, + }) + + return boundFunc + }, + } +} diff --git a/src/helpers/faIconLibrary.js b/src/util/fontawesome/library.js similarity index 90% rename from src/helpers/faIconLibrary.js rename to src/util/fontawesome/library.js index e34b118c7..6b53efe61 100644 --- a/src/helpers/faIconLibrary.js +++ b/src/util/fontawesome/library.js @@ -19,20 +19,18 @@ export { faExclamationCircle, faEye, faEyeSlash, + faFileUpload, faFirstAid, faFolder, faFolderOpen, faHandsHelping, faIdCardAlt, - faInfoCircle, - faMoneyBill, faMouse, faPen, faPlus, faRocket, faShieldAlt, faShoePrints, - faShoppingCart, faSignature, faSpaceShuttle, faSpinner, @@ -40,16 +38,12 @@ export { faTimes, faTimesCircle, faTrash, - faTruck, - faUndo, + faSearch, faUser, faUserSecret, + faUpload, } from '@fortawesome/free-solid-svg-icons' - - - - export { faTwitter, faRedditAlien, diff --git a/src/helpers/getFingerprint.js b/src/util/getFingerprint.js similarity index 100% rename from src/helpers/getFingerprint.js rename to src/util/getFingerprint.js diff --git a/src/util/getInitialProps/configureRequest.js b/src/util/getInitialProps/configureRequest.js new file mode 100644 index 000000000..1f07df567 --- /dev/null +++ b/src/util/getInitialProps/configureRequest.js @@ -0,0 +1,33 @@ +import nextCookies from 'next-cookies' + +import frApi from '~/services/frApi' + + + + + +export default function configureRequest (ctx) { + // Always setup access token + const { access_token: accessToken } = nextCookies(ctx) + if (accessToken) { + ctx.accessToken = accessToken + } + + // If we're on the server, we should set proxy headers to retain origin IP + if (ctx.isServer) { + const realIp = ctx.req.headers['x-real-ip'] ?? ctx.req.client?.remoteAddress + if (realIp) { + frApi.defaults.headers.common['x-real-ip'] = realIp + } + + const forwardedFor = ctx.req.headers['x-forwarded-for'] ?? ctx.req.client?.remoteAddress + if (forwardedFor) { + frApi.defaults.headers.common['x-forwarded-for'] = forwardedFor + } + + const forwardedProto = ctx.req.headers['x-forwarded-proto'] ?? ctx.req.headers.host + if (forwardedProto) { + frApi.defaults.headers.common['x-forwarded-proto'] = forwardedProto + } + } +} diff --git a/src/util/getInitialProps/deleteCookie.js b/src/util/getInitialProps/deleteCookie.js new file mode 100644 index 000000000..20aae6b1d --- /dev/null +++ b/src/util/getInitialProps/deleteCookie.js @@ -0,0 +1,9 @@ +import jsCookie from 'js-cookie' + +export default function deleteCookie (cookieName, ctx = {}) { + if (ctx.res) { + ctx.res.setHeader('Set-Cookie', `${cookieName}=null; path=/; expires=Thu, 01 Jan 1970 00:00:00 GMT`) + } else { + jsCookie.remove(cookieName) + } +} diff --git a/src/util/getInitialProps/pageRedirect.js b/src/util/getInitialProps/pageRedirect.js new file mode 100644 index 000000000..f75eed439 --- /dev/null +++ b/src/util/getInitialProps/pageRedirect.js @@ -0,0 +1,31 @@ +import { HttpStatus } from '@fuelrats/web-util/http' +import Router from 'next/router' + + + + + +export default function pageRedirect (ctx, route) { + let href = null + let as = null + + if (typeof route === 'object') { + href = route.href + as = route.as + } else if (typeof route === 'string') { + as = route + } + + if (ctx.res) { + ctx.res.writeHead(HttpStatus.FOUND, { + Location: as, + }) + ctx.res.end() + } else if (route.startsWith('http')) { + if (typeof window !== 'undefined') { + window.location.replace(as) + } + } else { + Router.replace(href ?? as, as) + } +} diff --git a/src/util/getInitialProps/resolvePageMeta.js b/src/util/getInitialProps/resolvePageMeta.js new file mode 100644 index 000000000..765a03514 --- /dev/null +++ b/src/util/getInitialProps/resolvePageMeta.js @@ -0,0 +1,36 @@ +const MAX_TITLE_LENGTH = 50 +const MAX_DESCR_LENGTH = 300 + +function validatePageMeta (props) { + if (!props.title?.length) { + console.error('Pages must contain a unique title') + } + + if (props.title?.length > MAX_TITLE_LENGTH) { + console.warn(`Page titles should be fewer than 60 characters, preferably closer to 50. This page's title is ${props.title.length} characters.`) + } + + if (props.description?.length > MAX_DESCR_LENGTH) { + console.error(`Page description is too long! The description should be 50-300 characters long, but this page's description is ${props.description.length} characters.`) + } + + if (props.description && props.description.indexOf('"') !== -1) { + console.error('Page descriptions shouldn\'t contain double quotes.') + } +} + +export default async function resolvePageMeta (Component, ctx, pageProps) { + const pageMeta = { + description: 'The Fuel Rats are Elite: Dangerous\'s premier emergency refueling service. Fueling the galaxy, one ship at a time, since 3301.', + ...(await Component.getPageMeta?.(ctx, pageProps)) ?? {}, + } + + if ($$BUILD.isDev) { + validatePageMeta(pageMeta) + } + + return { + ...pageMeta, + className: `${(pageMeta.title ?? 'fuel-rats').toLowerCase().replace(/\s/gu, '-')} ${pageMeta.className ?? ''}`, + } +} diff --git a/src/util/getInitialProps/setError.js b/src/util/getInitialProps/setError.js new file mode 100644 index 000000000..fca232cc9 --- /dev/null +++ b/src/util/getInitialProps/setError.js @@ -0,0 +1,6 @@ +export default function setError (ctx, statusCode, message) { + if (ctx.res) { + ctx.res.statusCode = statusCode + } + ctx.err = { statusCode, message } +} diff --git a/src/helpers/getRatTag.js b/src/util/getRatTag.js similarity index 100% rename from src/helpers/getRatTag.js rename to src/util/getRatTag.js diff --git a/src/helpers/getResponseError.js b/src/util/getResponseError.js similarity index 100% rename from src/helpers/getResponseError.js rename to src/util/getResponseError.js diff --git a/src/helpers/getValidityErrors.js b/src/util/getValidityErrors.js similarity index 100% rename from src/helpers/getValidityErrors.js rename to src/util/getValidityErrors.js diff --git a/src/helpers/isEqual.js b/src/util/isEqual.js similarity index 100% rename from src/helpers/isEqual.js rename to src/util/isEqual.js diff --git a/src/util/isPromise.js b/src/util/isPromise.js new file mode 100644 index 000000000..2e84334aa --- /dev/null +++ b/src/util/isPromise.js @@ -0,0 +1,9 @@ +/** + * Accepts an object and tests some basic patterns of promises + * @param {any} obj + * @returns {boolean} + */ +export default function isPromise (obj) { + return (typeof obj === 'object' || typeof obj === 'function') + && typeof obj.then === 'function' +} diff --git a/src/helpers/presenters.js b/src/util/jsonapi/createRequestBody.js similarity index 94% rename from src/helpers/presenters.js rename to src/util/jsonapi/createRequestBody.js index 52e5f2439..f89dc6551 100644 --- a/src/helpers/presenters.js +++ b/src/util/jsonapi/createRequestBody.js @@ -1,6 +1,6 @@ import { isRequired } from '@fuelrats/validation-util' -export function presentApiRequestBody ( +export default function createRequestBody ( type = isRequired('resourceType'), data = isRequired('data'), documentMeta, diff --git a/src/util/jsonapi/createResource.js b/src/util/jsonapi/createResource.js new file mode 100644 index 000000000..159c32734 --- /dev/null +++ b/src/util/jsonapi/createResource.js @@ -0,0 +1,30 @@ +import { isRequired } from '@fuelrats/validation-util' + +export default function createResource (reqType, data) { + let { + id = isRequired('id'), + type = isRequired('type'), + attributes, + relationships, + links, + meta, + ...restAttributes + } = data + + if (reqType && reqType !== type) { + throw new Error('Route attempted to respond with mismatched data types') + } + + if (attributes && Object.keys(restAttributes).length) { + attributes = { ...restAttributes, ...attributes } + } + + return { + id, + type, + attributes, + relationships, + links, + meta, + } +} diff --git a/src/helpers/extPropTypes.js b/src/util/propTypes/extPropTypes.js similarity index 96% rename from src/helpers/extPropTypes.js rename to src/util/propTypes/extPropTypes.js index fc8b8775f..df338fd27 100644 --- a/src/helpers/extPropTypes.js +++ b/src/util/propTypes/extPropTypes.js @@ -1,4 +1,4 @@ -export default function extPropType (propType) { +export default function extPropTypes (propType) { function checkType (extTypeCheck, ...args) { const [, propName, componentName] = args if (typeof propType !== 'function') { diff --git a/src/util/router/makeBlogRoute.js b/src/util/router/makeBlogRoute.js new file mode 100644 index 000000000..3635fa334 --- /dev/null +++ b/src/util/router/makeBlogRoute.js @@ -0,0 +1,31 @@ +import makeRoute from './makeRoute' + +/** + * @param {object} params + * @param {string|number|null} params.author + * @param {string|number|null} params.category + * @param {string|number|null} params.page + * @returns {string} + */ +export default function makeBlogRoute (params) { + const { + author, + category, + page, + ...query + } = params + + let route = '/blog' + + if (author) { + route += `/author/${author}` + } else if (category) { + route += `/category/${category}` + } + + if (typeof page === 'number' && page > 1) { + route += `/page/${page}` + } + + return makeRoute(route, query) +} diff --git a/src/util/router/makePaperworkRoute.js b/src/util/router/makePaperworkRoute.js new file mode 100644 index 000000000..96d9bed9b --- /dev/null +++ b/src/util/router/makePaperworkRoute.js @@ -0,0 +1,22 @@ +import makeRoute from './makeRoute' + +/** + * @param {object} params + * @param {string} params.rescueId + * @returns {string} + */ +export default function makePaperworkRoute (params) { + const { + edit = false, + rescueId, + ...query + } = params + + let route = `/paperwork/${rescueId}` + + if (edit) { + route += '/edit' + } + + return makeRoute(route, query) +} diff --git a/src/util/router/makeRoute.js b/src/util/router/makeRoute.js new file mode 100644 index 000000000..b1f270198 --- /dev/null +++ b/src/util/router/makeRoute.js @@ -0,0 +1,21 @@ +import qs from 'qs' + +/** + * @param {string} href + * @param {object} query + * @returns {string} + */ +export default function makeRoute (href = '', query = {}) { + let [route = '/', qStr = ''] = href.split('?') + + const nextQStr = qs.stringify({ + ...qs.parse(qStr), + ...query, + }) + + if (nextQStr.length) { + route += `?${nextQStr}` + } + + return route +} diff --git a/src/helpers/safeParseInt.js b/src/util/safeParseInt.js similarity index 100% rename from src/helpers/safeParseInt.js rename to src/util/safeParseInt.js diff --git a/src/util/server/apiProxy.js b/src/util/server/apiProxy.js new file mode 100644 index 000000000..b7a44b3ea --- /dev/null +++ b/src/util/server/apiProxy.js @@ -0,0 +1,33 @@ +import { createProxyMiddleware } from 'http-proxy-middleware' +import * as log from 'next/dist/build/output/log' + + + +function logProvider () { + return { + log: log.info, + debug: log.info, + info: log.info, + warn: log.warn, + error: log.error, + } +} + + +export const config = { + api: { + externalResolver: true, + bodyParser: false, + }, +} + +export default function apiProxy (options) { + return createProxyMiddleware({ + changeOrigin: true, + logLevel: $$BUILD.isDev ? 'debug' : 'warn', + logProvider, + secure: true, + xfwd: true, + ...options, + }) +} diff --git a/src/util/server/errors.js b/src/util/server/errors.js new file mode 100644 index 000000000..ca1337104 --- /dev/null +++ b/src/util/server/errors.js @@ -0,0 +1,109 @@ +import { HttpStatus } from '@fuelrats/web-util/http' +import UUID from 'pure-uuid' + +import apiErrorLocalisations from '~/data/apiErrorLocalisations' + +import bindMethod from '../decorators/bindMethod' + +const UUID_VERSION = 4 + +/** + * JSONAPI Compliant Error object. + */ +export class APIError extends Error { + constructor (source, meta) { + super() + this.id = (new UUID(UUID_VERSION)).toString() + this.source = source + this.meta = meta + } + + get message () { + return this.detail + } + + get code () { + return HttpStatus[this.status.toUpperCase()] + } + + get status () { + return undefined + } + + get title () { + return apiErrorLocalisations[this.status]?.title + } + + get detail () { + return apiErrorLocalisations[this.status]?.detail + } + + get links () { + return { + about: `https://httpstatuses.com/${this.code}`, + } + } + + @bindMethod + toJSON () { + // all elements are defaulted to undefined. + // This removes the entry from the resulting object. + return { + id: this.id, + links: this.links ?? undefined, + status: this.status ?? undefined, + code: this.code ?? undefined, + title: this.title ?? undefined, + detail: this.detail ?? undefined, + source: this.source ?? undefined, + meta: this.meta ?? undefined, + } + } +} + +export class BadRequestAPIError extends APIError { + get status () { + return 'bad_request' + } +} + +export class UnauthorizedAPIError extends APIError { + get status () { + return 'unauthorized' + } +} + +export class TooManyRequestsAPIError extends APIError { + get status () { + return 'too_many_requests' + } + + get detail () { + const tryAfter = this.meta?.tryAfter + return `You have sent too many requests in a given amount of time.${tryAfter ? ` Try again after: ${tryAfter}.` : ''}` + } +} + +export class MethodNotAllowedAPIError extends APIError { + get status () { + return 'method_not_allowed' + } +} + +export class InternalServerAPIError extends APIError { + get status () { + return 'internal_server_error' + } +} + +export class NotImplementedAPIError extends APIError { + get status () { + return 'not_implemented' + } +} + +export class NotFoundAPIError extends APIError { + get status () { + return 'not_found' + } +} diff --git a/src/util/server/frApiProxy.js b/src/util/server/frApiProxy.js new file mode 100644 index 000000000..31261826e --- /dev/null +++ b/src/util/server/frApiProxy.js @@ -0,0 +1,18 @@ +import apiProxy, { config } from './apiProxy' +import getEnv from './getEnv' + + + + + +export default function frApiProxy (opts = {}) { + return apiProxy({ + target: getEnv()?.frapi?.url, + pathRewrite: { + '^/api/fr/': '/', + }, + ...opts, + }) +} + +export { config } diff --git a/src/util/server/getEnv.js b/src/util/server/getEnv.js new file mode 100644 index 000000000..2faa63f66 --- /dev/null +++ b/src/util/server/getEnv.js @@ -0,0 +1,23 @@ +import env from '../../../.config/env' + +const { info } = require('next/dist/build/output/log') + + + + + +let envRef = null + + + + + +export default function getEnv () { + if (!envRef) { + // While not strictly neccessary, we're going to keep this generator here for future expansion. + info('Reading from process.env') + envRef = env + } + + return envRef +} diff --git a/src/util/server/middleware/acceptMethod.js b/src/util/server/middleware/acceptMethod.js new file mode 100644 index 000000000..df601e67e --- /dev/null +++ b/src/util/server/middleware/acceptMethod.js @@ -0,0 +1,48 @@ +import { HttpStatus, HttpMethod } from '@fuelrats/web-util/http' + +import { MethodNotAllowedAPIError } from '../errors' + + + + + +/** + * @param {...string} methods allowed request methods. + * @returns {Function} + */ +function acceptMethod (...methods) { + const allowedMethods = [HttpMethod.OPTIONS, ...methods] + + return (ctx, next) => { + const reqMethod = ctx.req.method.toUpperCase() + + if (reqMethod === HttpMethod.OPTIONS) { + ctx.__suppressWarnings = true + ctx.res.setHeader('Allow', allowedMethods.join(', ')) + ctx.res.status(HttpStatus.OK) + ctx.res.end('') + return undefined + } + + if (!allowedMethods.includes(reqMethod)) { + ctx.res.setHeader('Allow', allowedMethods.join(', ')) + throw new MethodNotAllowedAPIError(null, { + allowedMethods, + }) + } + + return next() + } +} + +acceptMethod.GET = acceptMethod.bind(null, HttpMethod.GET) +acceptMethod.POST = acceptMethod.bind(null, HttpMethod.POST) +acceptMethod.PUT = acceptMethod.bind(null, HttpMethod.PUT) +acceptMethod.PATCH = acceptMethod.bind(null, HttpMethod.PATCH) +acceptMethod.DELETE = acceptMethod.bind(null, HttpMethod.DELETE) + + + + + +export default acceptMethod diff --git a/src/server/router/stripeApi/authorization.mjs b/src/util/server/middleware/ipFilter.js similarity index 60% rename from src/server/router/stripeApi/authorization.mjs rename to src/util/server/middleware/ipFilter.js index 1b68f6571..e689ef761 100644 --- a/src/server/router/stripeApi/authorization.mjs +++ b/src/util/server/middleware/ipFilter.js @@ -2,10 +2,13 @@ import ip6addr from 'ip6addr' import jsonfile from 'jsonfile' -import { UnauthorizedError } from './error' +import { UnauthorizedAPIError } from '~/util/server/errors' +import getEnv from '~/util/server/getEnv' + const IPV4_PREFIX_LENGTH = 32 const IPV6_PREFIX_LENGTH = 56 +const env = getEnv() const getIpType = (ip) => { return ip6addr.parse(ip).kind() @@ -31,26 +34,28 @@ const compareIps = (userIp) => { } } -const authorizeUser = async (ctx, next) => { +function ipFilter () { + return async (ctx, next) => { // We only care about checking the file if it's actually configured - if (ctx.state.env?.stripe?.bansFile) { + if (ctx.state.env?.stripe?.bansFile) { // Load on every request since we don't want to - const bansFile = await jsonfile.readFile(ctx.state.env.stripe.bansFile) - const bansList = bansFile[getIpType(ctx.ip)] ?? [] + const bansFile = await jsonfile.readFile(env.stripe.bansFile) + const bansList = bansFile[getIpType(ctx.req.ip)] ?? [] - const isBanned = bansList.find(compareIps(ctx.ip)) + const isBanned = bansList.find(compareIps(ctx.req.ip)) - if (isBanned) { - throw new UnauthorizedError() + if (isBanned) { + throw new UnauthorizedAPIError() + } } - } - await next() + await next() + } } -export default authorizeUser +export default ipFilter diff --git a/src/util/server/middleware/jsonApiRoute/JsonApiContext.js b/src/util/server/middleware/jsonApiRoute/JsonApiContext.js new file mode 100644 index 000000000..ff60602c1 --- /dev/null +++ b/src/util/server/middleware/jsonApiRoute/JsonApiContext.js @@ -0,0 +1,222 @@ +import axios from 'axios' +import { NextApiRequest, NextApiResponse } from 'next' + +import bindMethod from '~/util/decorators/bindMethod' +import createResource from '~/util/jsonapi/createResource' +import { InternalServerAPIError, APIError } from '~/util/server/errors' +import getEnv from '~/util/server/getEnv' + + + +const env = getEnv() +const cacheStorage = {} + + +function modRequest (req) { + // Add request time + Reflect.defineProperty(req, 'date', { + value: Date.now(), + }) + + // Add IP handlers + Reflect.defineProperty(req, 'ips', { + get: () => { + const fwdForIps = req.headers['x-forwarded-for'] + return (env.proxied && fwdForIps) + ? fwdForIps.split(/\s*,\s*/u) + : [] + }, + }) + + Reflect.defineProperty(req, 'ip', { + get: () => { + return req.ips[0] ?? req.socket.remoteAddress ?? '' + }, + }) + + // Add fingerprint to top level + Reflect.defineProperty(req, 'fingerprint', { + get: () => { + return req.headers['x-fingerprint'] + }, + }) + + // Add getHeader helper + Reflect.defineProperty(req, 'getHeader', { + value: (headerName) => { + return req.headers[headerName.toLowerCase()] + }, + }) + + return req +} + +/** + * Context object for JsonApiRoute endpoints + */ +export default class JsonApiContext { + req = null + res = null + state = {} + meta = {} + __suppressWarnings = false + + #resData = null + #resIncluded = [] + #resErrors = [] + + /** + * @param {NextApiRequest} req + * @param {NextApiResponse} res + */ + constructor (req, res) { + this.req = modRequest(req) + this.res = res + this.createResource = createResource.bind(null, null) + } + + /** + * @param {object} data + * @returns {JsonApiContext} + */ + @bindMethod + send (data) { + if (Array.isArray(data)) { + this.#resData = data.map(createResource.bind(null, data[0]?.type)) + } else { + this.#resData = createResource(null, data) + } + + return this + } + + /** + * @param {APIError} error + * @param {boolean} first + * @returns {JsonApiContext} + */ + @bindMethod + error (error, first) { + if (error) { + this.#resErrors[first ? 'unshift' : 'push']( + error instanceof APIError + ? error + : new InternalServerAPIError(null, { + internalError: { + name: error.name, + message: error.message, + }, + }), + ) + } + + return this + } + + /** + * @param {number} statusCode + * @returns {JsonApiContext} + */ + @bindMethod + status (statusCode) { + this.res.status(statusCode) + return this + } + + /** + * @param {object | object[]} data + * @returns {JsonApiContext} + */ + @bindMethod + include (data) { + if (Array.isArray(data)) { + this.#resIncluded.push(...data.map(this.createResource)) + } else { + this.#resIncluded.push(createResource(null, data)) + } + return this + } + + + /** + * @returns {object} + */ + @bindMethod + toJSON () { + const errors = this.#resErrors + + return { + data: errors.length ? undefined : this.#resData, + included: errors.length ? undefined : this.#resIncluded, + errors: errors.length ? errors : undefined, + meta: this.meta, + jsonapi: { + version: '1.0', + }, + } + } + + @bindMethod + async fetch (options) { + const { cache, ...restOptions } = options + + if (cache) { + const storedData = cacheStorage[cache.key] + + if (storedData) { + if (this.req.date < storedData.last + cache.maxAge) { + return { ...storedData.data } + } + + delete cacheStorage[cache.key] + } + } + + try { + const response = await axios.request({ + method: 'get', + ...restOptions, + }) + + if (cache) { + cacheStorage[cache.key] = { + data: { ...response }, + last: this.req.date, + } + } + + return response + } catch ({ response }) { + throw new InternalServerAPIError(null, { + url: options.url, + status: response.status, + statusText: response.statusText, + }) + } + } + + /** + * @returns {any} + */ + get data () { + return this.#resData + } + + set data (newData) { + this.send(newData) + } + + /** + * @returns {object[]} + */ + get included () { + return this.#resIncluded + } + + /** + * @returns {APIError[]} + */ + get errors () { + return this.#resErrors + } +} diff --git a/src/util/server/middleware/jsonApiRoute/index.js b/src/util/server/middleware/jsonApiRoute/index.js new file mode 100644 index 000000000..7aa0a0156 --- /dev/null +++ b/src/util/server/middleware/jsonApiRoute/index.js @@ -0,0 +1 @@ +export { default } from './jsonApiRoute' diff --git a/src/util/server/middleware/jsonApiRoute/jsonApiRoute.js b/src/util/server/middleware/jsonApiRoute/jsonApiRoute.js new file mode 100644 index 000000000..2fe9264f3 --- /dev/null +++ b/src/util/server/middleware/jsonApiRoute/jsonApiRoute.js @@ -0,0 +1,46 @@ +import { HttpStatus } from '@fuelrats/web-util/http' +import compose from 'koa-compose' + +import JsonApiContext from './JsonApiContext' + + +const jsonApiContentType = 'application/vnd.api+json' + + + + + +function checkSent ({ res, __suppressWarnings }) { + const sent = res.finished || res.headersSent || res.writableEnded + if (sent && !__suppressWarnings) { + console.error('JSON:API route manually sent response. This is NOT supported by this middleware.') + } + + return sent +} + +export default function jsonApiRoute (...middleware) { + const handler = compose(middleware) + + return async (req, res) => { + const ctx = new JsonApiContext(req, res) + + try { + await handler(ctx) + + if (!ctx.data && !ctx.errors.length) { + throw new Error('Route failed to respond with data or error.') + } + } catch (error) { + ctx.error(error, true) + } + + if (checkSent(ctx)) { + return + } + + res.status(ctx.errors[0]?.code ?? res.statusCode ?? HttpStatus.OK) + res.setHeader('Content-Type', jsonApiContentType) + res.send(JSON.stringify(ctx)) // Body must be stringified here, or Next will override Content-Type + } +} diff --git a/src/util/server/middleware/requireFingerprint.js b/src/util/server/middleware/requireFingerprint.js new file mode 100644 index 000000000..ed802bdc2 --- /dev/null +++ b/src/util/server/middleware/requireFingerprint.js @@ -0,0 +1,11 @@ +import { BadRequestAPIError } from '../errors' + +export default function requireFingerprint () { + return (ctx, next) => { + if (!ctx.req.fingerprint) { + throw new BadRequestAPIError({ parameter: 'X-Fingerprint' }) + } + + return next() + } +} diff --git a/src/server/router/stripeApi/TrafficControl.mjs b/src/util/server/middleware/trafficController.js similarity index 65% rename from src/server/router/stripeApi/TrafficControl.mjs rename to src/util/server/middleware/trafficController.js index 48278a8a1..d5a4f0a60 100644 --- a/src/server/router/stripeApi/TrafficControl.mjs +++ b/src/util/server/middleware/trafficController.js @@ -1,4 +1,4 @@ -import { TooManyRequestsError } from './error' +import { TooManyRequestsAPIError } from '~/util/server/errors' const hourTimer = 60 * 60 * 1000 @@ -23,22 +23,16 @@ class TrafficControl { /** * * @param {object} arg function arguments object - * @param {object} arg.connection Koa.js context object. + * @param {object} arg.ctx jsonApiRoute context object. * @param {boolean} arg.increase Whether this validation should also increase the request count by 1 * @returns {object} An object containing whether the rate limit is exceeded, how many requests are left, * and the total requests */ - validateRateLimit ({ connection, increase = true }) { - const fingerprint = connection.request.get('X-Fingerprint') - let entity = null - let valid = false - - if (fingerprint) { - entity = this.retrieveUnauthenticatedEntity({ remoteAddress: connection.ip, fingerprint }) - valid = entity.remainingRequests > 0 - if (valid && increase) { - entity.count += 1 - } + validateRateLimit ({ ctx, increase = true }) { + const entity = this.retrieveRateLimitedEntity(ctx.req) + const valid = entity.remainingRequests > 0 + if (valid && increase) { + entity.count += 1 } return { @@ -51,16 +45,23 @@ class TrafficControl { /** * Retrieve an unauthenticated entity with the number of requests made by this IP address, or create one - * @param {string} remoteAddress - The remote address associated with this request + * @param {object} arg Function argument object + * @param {string} arg.ip The remote address associated with this request + * @param {string} arg.fingerprint The client fingerprint associated with this request * @returns {object} an instance of RemoteAddressEntity */ - retrieveUnauthenticatedEntity ({ remoteAddress, fingerprint }) { - let entity = this.unauthenticatedRequests[remoteAddress] || this.unauthenticatedRequests[fingerprint] + retrieveRateLimitedEntity ({ ip, fingerprint }) { + let entity = (fingerprint && this.unauthenticatedRequests[fingerprint]) ?? this.unauthenticatedRequests[ip] + if (!entity) { - entity = new RemoteAddressEntity({ remoteAddress, fingerprint }) - this.unauthenticatedRequests[remoteAddress] = entity - this.unauthenticatedRequests[fingerprint] = entity + entity = new RemoteAddressEntity({ ip, fingerprint }) + this.unauthenticatedRequests[ip] = entity + + if (fingerprint) { + this.unauthenticatedRequests[fingerprint] = entity + } } + return entity } @@ -101,12 +102,12 @@ class RemoteAddressEntity { /** * Create an entity representing the traffic made by a specific unauthenticated remote address * @param {object} arg function arguments object - * @param {string} arg.remoteAddress The remote address this traffic belongs to - * @param {string} arg.fingerprint The fingerprint provided by the + * @param {string} arg.ip The remote address this entity belongs to + * @param {string} arg.fingerprint The browser fingerprint this entity belongs to * @param {number} [arg.initialCount] Optional parameter containing the number of requests this entity should start */ - constructor ({ remoteAddress, fingerprint, initialCount = 0 }) { - this.#remoteAddress = remoteAddress + constructor ({ ip, fingerprint, initialCount = 0 }) { + this.#remoteAddress = ip this.#fingerprint = fingerprint this.requestCount = initialCount } @@ -146,23 +147,32 @@ class RemoteAddressEntity { -const createControlTower = () => { +const trafficController = () => { const traffic = new TrafficControl() - return async function trafficControl (ctx, next) { - const rateLimit = traffic.validateRateLimit({ connection: ctx }) - ctx.state.traffic = rateLimit - ctx.set('X-Rate-Limit-Limit', rateLimit.total) - ctx.set('X-Rate-Limit-Remaining', rateLimit.remaining) - ctx.set('X-Rate-Limit-Reset', rateLimit.reset) - - - if (rateLimit.exceeded) { - throw new TooManyRequestsError() + return async function rateLimitMiddleware (ctx, next) { + const user = traffic.validateRateLimit({ ctx }) + // Set to state for reference. + ctx.state.traffic = user + + // Set to outgoing headers. + ctx.res.setHeader('X-Rate-Limit-Limit', user.total) + ctx.res.setHeader('X-Rate-Limit-Remaining', user.remaining) + ctx.res.setHeader('X-Rate-Limit-Reset', user.reset) + + // Set to response meta. + ctx.meta.rateLimitTotal = user.total + ctx.meta.rateLimitRemaining = user.remaining + ctx.meta.rateLimitReset = user.reset + + if (user.exceeded) { + throw new TooManyRequestsAPIError(null, { + tryAfter: user.reset, + }) } await next() } } -export default createControlTower +export default trafficController diff --git a/src/util/string/getMoney.js b/src/util/string/getMoney.js new file mode 100644 index 000000000..a4ea2fa76 --- /dev/null +++ b/src/util/string/getMoney.js @@ -0,0 +1,16 @@ +/** + * Converts numerical currency into a formatted currency string. + * + * ( ͡° ͜ʖ ͡°) Xlexious made me do it. + * + * @param {number} amount Amount of money expressed in minor currency. I.E. `$1.00` = `100` + * @param {*} currency ISO 4217 3-letter currency code + * @returns {string} + */ +export default function getMoney (amount, currency = 'EUR') { + return (amount / 100).toLocaleString('en-US', { + style: 'currency', + currency, + currencyDisplay: 'symbol', + }) +} diff --git a/src/helpers/stringToStrictBoolean.js b/src/util/string/stringToStrictBoolean.js similarity index 100% rename from src/helpers/stringToStrictBoolean.js rename to src/util/string/stringToStrictBoolean.js diff --git a/src/helpers/uuidValidator.js b/src/util/string/uuidValidator.js similarity index 100% rename from src/helpers/uuidValidator.js rename to src/util/string/uuidValidator.js diff --git a/src/workers/image-loader.worker.js b/src/workers/image-loader.worker.js index 16528e873..349636afa 100644 --- a/src/workers/image-loader.worker.js +++ b/src/workers/image-loader.worker.js @@ -1,5 +1,3 @@ -/* eslint-disable no-restricted-globals */ - self.addEventListener('message', async (event) => { try { const { diff --git a/typings/global.d.ts b/typings/global.d.ts index 941d354e8..3ed526db4 100644 --- a/typings/global.d.ts +++ b/typings/global.d.ts @@ -2,63 +2,87 @@ // Project: fuelrats.com // Definitions by: Cameron Welter <https://fuelrats.com> -/** - * Exposes `NODE_ENV` state to the server. - * - * ```javascript - * process.env.NODE_ENV !== 'production' - * ``` - */ -declare const $IS_DEVELOPMENT: Readonly<boolean>; -/** - * Was CI build built from a staging branch. - */ -declare const $IS_STAGING: Readonly<boolean>; -/** - * Branch the CI build is based on. - * - * `'develop'` in development. - */ -declare const $BUILD_BRANCH: Readonly<string>; -/** - * Full hash of the git commit used for the CI build. - * - * `null` in development. - */ -declare const $BUILD_COMMIT: Readonly<string>; -/** - * Shortened git commit hash. - * - * `'develop'` in development. - */ -declare const $BUILD_COMMIT_SHORT: Readonly<string>; +declare namespace $$BUILD { + /** + * Exposes `NODE_ENV` state to the server. + * + * ```javascript + * process.env.NODE_ENV !== 'production' + * ``` + */ + declare const isDev: Readonly<boolean>; + + /** + * Was CI build built from a production branch. + */ + declare const isProduction: Readonly<boolean>; + + /** + * Branch the CI build is based on. + * + * `'develop'` in development. + */ + declare const branch: Readonly<string>; + + /** + * Full hash of the git commit used for the CI build. + * + * `null` in development. + */ + declare const commit: Readonly<string>; + + /** + * Shortened git commit hash. + * + * `'develop'` in development. + */ + declare const commitShort: Readonly<string>; + + /** + * ISO 8601 UTC timestamp representing the Date & Time of the build. + */ + declare const date: Readonly<string>; + + /** + * Web URL leading to build details page. + * + * `null` in development. + */ + declare const url: Readonly<string>; + + /** + * ID which represents the current build. + * + * The value of `$$BUILD.commit` is used in CI Builds. + * A randomly generated 16 digit ID is used in development. + * + */ + declare const id: Readonly<string>; + + /** + * NodeJS version used to build the project. + */ + declare const nodeVersion: Readonly<string>; +} + -/** - * ISO 8601 UTC timestamp representing the Date & Time of the build. - */ -declare const $BUILD_DATE: Readonly<string>; -/** - * Web URL leading to build details page. - * - * `null` in development. - */ -declare const $BUILD_URL: Readonly<string>; -/** - * ID which represents the current build. - * - * The value of `$BUILD_COMMIT` is used in CI Builds. - * A randomly generated 16 digit ID is used in development. - * - */ -declare const $NEXT_BUILD_ID: Readonly<string>; /** - * NodeJS version used to build the project. - */ -declare const $NODE_VERSION: Readonly<string>; +* Module override for koa-compose. @types/koa-compose is koa-specific, while we are using this tool in a generic context. +*/ +declare module "koa-compose" { + declare function NextFunc(): Promise<void>; + + declare namespace compose { + type Middleware<C> = (context: Ctx, next: NextFunc) => Promise<any>; + type ComposedMiddleware<C> = (context: C, next?: NextFunc) => Promise<void>; + } + + export default function compose<C>(middleware: Array<compose.Middleware<C>>): compose.ComposedMiddleware<C>; +} diff --git a/typings/prop-types.d.ts b/typings/prop-types.d.ts new file mode 100644 index 000000000..7b57ce109 --- /dev/null +++ b/typings/prop-types.d.ts @@ -0,0 +1,54 @@ +// Types listed in the PropTypes pseudo-class are derived from @types/prop-types +// https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/prop-types +// +// MIT License +// +// Copyright (c) Microsoft Corporation. +// +// Permission is hereby granted, free of charge, to any person obtaining a copy +// of this software and associated documentation files (the "Software"), to deal +// in the Software without restriction, including without limitation the rights +// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +// copies of the Software, and to permit persons to whom the Software is +// furnished to do so, subject to the following conditions: +// +// The above copyright notice and this permission notice shall be included in all +// copies or substantial portions of the Software. +// +// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +// SOFTWARE + + +import "prop-types"; + +declare module "prop-types" { + export default class PropTypes { + static any: Requireable<any>; + static array: Requireable<any[]>; + static bool: Requireable<boolean>; + static func: Requireable<(...args: any[]) => any>; + static number: Requireable<number>; + static object: Requireable<object>; + static string: Requireable<string>; + static node: Requireable<ReactNodeLike>; + static element: Requireable<ReactElementLike>; + static symbol: Requireable<symbol>; + static elementType: Requireable<ReactComponentLike>; + static instanceOf<T>(expectedClass: new (...args: any[]) => T): Requireable<T>; + static oneOf<T>(types: ReadonlyArray<T>): Requireable<T>; + static oneOfType<T extends Validator<any>>(types: T[]): Requireable<NonNullable<InferType<T>>>; + static arrayOf<T>(type: Validator<T>): Requireable<T[]>; + static objectOf<T>(type: Validator<T>): Requireable<{ [K in keyof any]: T; }>; + static shape<P extends ValidationMap<any>>(type: P): Requireable<InferProps<P>>; + static exact<P extends ValidationMap<any>>(type: P): Requireable<Required<InferProps<P>>>; + + static checkPropTypes(typeSpecs: any, values: any, location: string, componentName: string, getStack?: () => any): void; + + static resetWarningCache(): void; + } +} diff --git a/yarn.lock b/yarn.lock index 5979cc7dc..8f72e9842 100644 --- a/yarn.lock +++ b/yarn.lock @@ -14,310 +14,246 @@ __metadata: languageName: node linkType: hard -"@babel/code-frame@npm:^7.0.0, @babel/code-frame@npm:^7.10.4": - version: 7.10.4 - resolution: "@babel/code-frame@npm:7.10.4" +"@babel/code-frame@npm:^7.0.0, @babel/code-frame@npm:^7.14.5": + version: 7.14.5 + resolution: "@babel/code-frame@npm:7.14.5" dependencies: - "@babel/highlight": ^7.10.4 - checksum: feb4543c8a509fe30f0f6e8d7aa84f82b41148b963b826cd330e34986f649a85cb63b2f13dd4effdf434ac555d16f14940b8ea5f4433297c2f5ff85486ded019 + "@babel/highlight": ^7.14.5 + checksum: 0adbe4f8d91586f764f524e57631f582ab988b2ef504391a5d89db29bfaaf7c67c237798ed4a249b6a2d7135852cf94d3d07ce6b9739dd1df1f271d5ed069565 languageName: node linkType: hard -"@babel/code-frame@npm:^7.12.13": - version: 7.12.13 - resolution: "@babel/code-frame@npm:7.12.13" +"@babel/code-frame@npm:^7.15.8": + version: 7.15.8 + resolution: "@babel/code-frame@npm:7.15.8" dependencies: - "@babel/highlight": ^7.12.13 - checksum: d0491bb59fb8d7a763cb175c5504818cfd3647321d8eedb9173336d5c47dccce248628ee68b3ed3586c5efc753d8d990ceafe956f707dcf92572a1661b92b1ef + "@babel/highlight": ^7.14.5 + checksum: d75950f0e0925b33ab5e870079134509c13bcdbf96c8bf4d0dea91606775bc044258c762104ab20882fda3b07cbff24176ed77dfb57af5a901bde33ddfe690bb languageName: node linkType: hard -"@babel/compat-data@npm:^7.12.1": - version: 7.12.1 - resolution: "@babel/compat-data@npm:7.12.1" - checksum: b29ecfe76662bfeb184773f40cb67491ee1367db834bca88923d4dba306854b1881fc2245fedd730961e3e8f27ccdfc8c1ed3ea08648738bde1d0a6e9e6940c9 +"@babel/compat-data@npm:^7.13.11, @babel/compat-data@npm:^7.14.5, @babel/compat-data@npm:^7.14.7": + version: 7.14.7 + resolution: "@babel/compat-data@npm:7.14.7" + checksum: dcf7a72cb650206857a98cce1ab0973e67689f19afc3b30cabff6dbddf563f188d54d3b3f92a70c6bc1feb9049d8b2e601540e1d435b6866c77bffad0a441c9f languageName: node linkType: hard -"@babel/compat-data@npm:^7.13.11, @babel/compat-data@npm:^7.13.15, @babel/compat-data@npm:^7.14.0": - version: 7.14.0 - resolution: "@babel/compat-data@npm:7.14.0" - checksum: 24a9ce6d2588ad9e5d07450bf47178c2dea97b51f1f2b1a37c2aa4d04e6413b91b3c8b2be2b97275244d2353560a9a99d1209c4ac0a995ff6b2d6fa747d96883 +"@babel/compat-data@npm:^7.15.0": + version: 7.15.0 + resolution: "@babel/compat-data@npm:7.15.0" + checksum: 65088d87b14966dcdba397c799f312beb1e7a4dac178e7daa922a17ee9b65d8cfd9f35ff8352ccb6e20bb9a169df1171263ef5fd5967aa25d544ea3f62681993 languageName: node linkType: hard -"@babel/core@npm:7.14.3, @babel/core@npm:^7.14.3": - version: 7.14.3 - resolution: "@babel/core@npm:7.14.3" +"@babel/core@npm:7.14.6, @babel/core@npm:>=7.9.0, @babel/core@npm:^7.12.3": + version: 7.14.6 + resolution: "@babel/core@npm:7.14.6" dependencies: - "@babel/code-frame": ^7.12.13 - "@babel/generator": ^7.14.3 - "@babel/helper-compilation-targets": ^7.13.16 - "@babel/helper-module-transforms": ^7.14.2 - "@babel/helpers": ^7.14.0 - "@babel/parser": ^7.14.3 - "@babel/template": ^7.12.13 - "@babel/traverse": ^7.14.2 - "@babel/types": ^7.14.2 + "@babel/code-frame": ^7.14.5 + "@babel/generator": ^7.14.5 + "@babel/helper-compilation-targets": ^7.14.5 + "@babel/helper-module-transforms": ^7.14.5 + "@babel/helpers": ^7.14.6 + "@babel/parser": ^7.14.6 + "@babel/template": ^7.14.5 + "@babel/traverse": ^7.14.5 + "@babel/types": ^7.14.5 convert-source-map: ^1.7.0 debug: ^4.1.0 gensync: ^1.0.0-beta.2 json5: ^2.1.2 semver: ^6.3.0 source-map: ^0.5.0 - checksum: b91ed6adc790428966e134b9b8bfa1f2d54d8867877057ed9f9fcc354475a26d267afd6b0c84ac1a7ac7805bffc7b3353fdd9d894e58ef52c7c7e06f17044fd0 + checksum: 6ede604d8de7a103c087b96a58548a3d27efb9e53de6ecc84f4b4ca947cd91f02b0289fc04557b04eb6e31243dbeabdcdb8fd520a1780f284333f56eb1b58913 languageName: node linkType: hard -"@babel/core@npm:>=7.9.0, @babel/core@npm:^7.12.3": - version: 7.12.3 - resolution: "@babel/core@npm:7.12.3" +"@babel/core@npm:7.15.8, @babel/core@npm:^7.15.8": + version: 7.15.8 + resolution: "@babel/core@npm:7.15.8" 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 + "@babel/code-frame": ^7.15.8 + "@babel/generator": ^7.15.8 + "@babel/helper-compilation-targets": ^7.15.4 + "@babel/helper-module-transforms": ^7.15.8 + "@babel/helpers": ^7.15.4 + "@babel/parser": ^7.15.8 + "@babel/template": ^7.15.4 + "@babel/traverse": ^7.15.4 + "@babel/types": ^7.15.6 convert-source-map: ^1.7.0 debug: ^4.1.0 - gensync: ^1.0.0-beta.1 + gensync: ^1.0.0-beta.2 json5: ^2.1.2 - lodash: ^4.17.19 - resolve: ^1.3.2 - semver: ^5.4.1 + semver: ^6.3.0 source-map: ^0.5.0 - checksum: 29ee14dd7ae66c1af84d1b2864e1e9e1bec23b89f41e414917b10151ae1fcb6d3b6a8a25d028a7e22dba3bb7b69eb1f7f0d844797341357e36fa71ff967fb4a5 + checksum: 61e5050580a2808344f23161c971e917fe711a546e3afa4d022be4ec5325f8bdf559cc9afd962e39ecc3643d9cdcbbac7abc7b8dd05330020475317564c8d290 languageName: node linkType: hard -"@babel/eslint-parser@npm:^7.14.3": - version: 7.14.3 - resolution: "@babel/eslint-parser@npm:7.14.3" +"@babel/eslint-parser@npm:^7.15.8": + version: 7.15.8 + resolution: "@babel/eslint-parser@npm:7.15.8" dependencies: - eslint-scope: ^5.1.0 + eslint-scope: ^5.1.1 eslint-visitor-keys: ^2.1.0 semver: ^6.3.0 peerDependencies: "@babel/core": ">=7.11.0" eslint: ">=7.5.0" - checksum: a171046cc297bd3fb94f7a40bdf6b6fee9e3bfa61927dc06c9a78dc780012a9b841df4e3a9600df7f89fd2bc2bb00fce20873b3d1887b4a4bb90c5da79cb4b5e + checksum: 1c88334837d9555330fdeeff7b75404d931a5f9452aa57940602c78807d5324246919029c4d47059bf6927b44187938e7eb1d8570f422458bd3d26b313c9f9b3 languageName: node linkType: hard -"@babel/eslint-plugin@npm:^7.13.16": - version: 7.13.16 - resolution: "@babel/eslint-plugin@npm:7.13.16" +"@babel/eslint-plugin@npm:^7.14.5": + version: 7.14.5 + resolution: "@babel/eslint-plugin@npm:7.14.5" dependencies: eslint-rule-composer: ^0.3.0 peerDependencies: "@babel/eslint-parser": ">=7.11.0" eslint: ">=7.5.0" - checksum: 0f744f2d5b941cb417c0b496244e45dec1232248138f2d1ce2f97235547984c9eac68983839c3d64da7cc551a7d658d79f28a43b8522f22212e3ce783e8dc065 + checksum: 7aa5868ee9f2396da650067eb2c918011d830e0aca7af87ed361d6de8c182c2f6535fa1acc8711f76b3d52fc91e50b2784d5756d628d3af9cc93593fd115fafa languageName: node linkType: hard -"@babel/generator@npm:^7.12.1": - version: 7.12.1 - resolution: "@babel/generator@npm:7.12.1" +"@babel/generator@npm:^7.14.5": + version: 7.14.5 + resolution: "@babel/generator@npm:7.14.5" dependencies: - "@babel/types": ^7.12.1 + "@babel/types": ^7.14.5 jsesc: ^2.5.1 source-map: ^0.5.0 - checksum: d035adf7d5ca0939b805d5e7f510cc363635ae0b71292c8c363d7060cecc119d736c66b15a323dcab71e9162dab50dd4dd8c3db20f3e27fb861125d31e794bb3 + checksum: 7fcfeaf17e8e76ea91c66dc86c776d2112f52ce0315d3f4ca6a74b6eada0be1592d1ea6286d7241d3f634b63717ceef5d180d041a0b3dca9d071ba2e5fa7c77b languageName: node linkType: hard -"@babel/generator@npm:^7.14.2": - version: 7.14.2 - resolution: "@babel/generator@npm:7.14.2" +"@babel/generator@npm:^7.15.4": + version: 7.15.4 + resolution: "@babel/generator@npm:7.15.4" dependencies: - "@babel/types": ^7.14.2 + "@babel/types": ^7.15.4 jsesc: ^2.5.1 source-map: ^0.5.0 - checksum: 25231a54952a37ab74c1cfee9ffe544cf4a84bc40aaa391b51675aee96647a04a7bbcc17b3aa9a797dbb270a229b9afb8cc44a554627164477c96136177b3a4f + checksum: fec8e8fa46723d7edf4087dc07b1f65a64488cba9662458431dd00d2a24f7c41b21e3160cfa1ba3df9373b2bb5e84189a95206c9ce6f14845a3929fc1ab58f57 languageName: node linkType: hard -"@babel/generator@npm:^7.14.3": - version: 7.14.3 - resolution: "@babel/generator@npm:7.14.3" +"@babel/generator@npm:^7.15.8": + version: 7.15.8 + resolution: "@babel/generator@npm:7.15.8" dependencies: - "@babel/types": ^7.14.2 + "@babel/types": ^7.15.6 jsesc: ^2.5.1 source-map: ^0.5.0 - checksum: 2c104bbe531935d73a66b6c1370da2e986e94154e7e574bd081fe6abe0d493e39d94a38a4c07c415aa90281047f858a51967b74eed83fec17cbca98a657e864a - languageName: node - linkType: hard - -"@babel/helper-annotate-as-pure@npm:^7.10.4": - version: 7.10.4 - resolution: "@babel/helper-annotate-as-pure@npm:7.10.4" - dependencies: - "@babel/types": ^7.10.4 - checksum: a0b82b2ed731adc173db5dcc53731b7ab6de4cbe1a66908badcf492889fc1e86c17e1d482aabc6b5dde0453caf8024329485d3e2ba3e81056951720862ab8bbf - languageName: node - linkType: hard - -"@babel/helper-annotate-as-pure@npm:^7.12.10": - version: 7.12.10 - resolution: "@babel/helper-annotate-as-pure@npm:7.12.10" - dependencies: - "@babel/types": ^7.12.10 - checksum: e6cd551b21554bddcf4352dae49abd3e9a101359dbebc5fdae418bb7dc4bf118c9803766a64392ec3b432a930c90cba971b9f6180f4c220bdd350fd8d1da9f3b + checksum: 3afc4d50280352125b6f1bca01fd1e4b272e1cf26248879fb38b74f8c67d7f9304c650e182623f9e7855d8154c6f05f66df81817a71de66e7dfe6670785eb344 languageName: node linkType: hard -"@babel/helper-annotate-as-pure@npm:^7.12.13": - version: 7.12.13 - resolution: "@babel/helper-annotate-as-pure@npm:7.12.13" - dependencies: - "@babel/types": ^7.12.13 - checksum: c85c2cf08c18fe2c59cbc2f2f4ae227136c3400263a139c6c689c575aea301ad3f8260e709d2f58b6fb2ee180fdceec508280675f216bac7614c998478184bf1 - languageName: node - linkType: hard - -"@babel/helper-builder-binary-assignment-operator-visitor@npm:^7.10.4": - version: 7.10.4 - resolution: "@babel/helper-builder-binary-assignment-operator-visitor@npm:7.10.4" - dependencies: - "@babel/helper-explode-assignable-expression": ^7.10.4 - "@babel/types": ^7.10.4 - checksum: 2f3256e6a87a890e1e84ab7d22734179450f0578f2a9621250329d34601cbf3b4f7ee7e53e088f68dd4522ce6d55d70f14bd469b81b4d6b3afaa0cd578402bcb - languageName: node - linkType: hard - -"@babel/helper-builder-binary-assignment-operator-visitor@npm:^7.12.13": - version: 7.12.13 - resolution: "@babel/helper-builder-binary-assignment-operator-visitor@npm:7.12.13" - dependencies: - "@babel/helper-explode-assignable-expression": ^7.12.13 - "@babel/types": ^7.12.13 - checksum: 798177396af89e801005c125375b624eed6c6d922abc0c0f04361852a87cd81e207d14ed4cfac0884effdb356b71fd0ef5ae2ec31c6a881f1efab974b1565964 - languageName: node - linkType: hard - -"@babel/helper-builder-react-jsx-experimental@npm:^7.12.11": - version: 7.12.11 - resolution: "@babel/helper-builder-react-jsx-experimental@npm:7.12.11" +"@babel/helper-annotate-as-pure@npm:^7.14.5": + version: 7.14.5 + resolution: "@babel/helper-annotate-as-pure@npm:7.14.5" dependencies: - "@babel/helper-annotate-as-pure": ^7.12.10 - "@babel/helper-module-imports": ^7.12.5 - "@babel/types": ^7.12.11 - checksum: 88e8f48199d08a6beae721c48537a87c17616e4ded39bd1e370cd131020850ba373a49701eaf1099248c0b12b3d1041cf9b9b3b545a76c129012a02c06d22468 + "@babel/types": ^7.14.5 + checksum: 18cefedda60003c2551dabe0e4ad278ef0507682680892c60e9f7cb75ae1dc9a065cddb3ce9964da76f220bf972af5262619eeac4b84c2b8aba1b031961215cc languageName: node linkType: hard -"@babel/helper-builder-react-jsx@npm:^7.10.4": - version: 7.10.4 - resolution: "@babel/helper-builder-react-jsx@npm:7.10.4" +"@babel/helper-annotate-as-pure@npm:^7.15.4": + version: 7.15.4 + resolution: "@babel/helper-annotate-as-pure@npm:7.15.4" dependencies: - "@babel/helper-annotate-as-pure": ^7.10.4 - "@babel/types": ^7.10.4 - checksum: 32907788def4b3e50a23d1527777365529a721750a7dfdef7494a4abbe6f77e30b5939891d28860e83bb1fc7faca6ba68229b3cff8832c2720fca9e8e9390e66 + "@babel/types": ^7.15.4 + checksum: 94e3b5714748cc4fe419c3e75656b1747f7e985d46a178dbd87e4a97f8f4d0ba94374c6768516cdc9c744d40202f1c2bb7930a7a153274c3d42edb196e945404 languageName: node linkType: hard -"@babel/helper-compilation-targets@npm:^7.12.1": - version: 7.12.1 - resolution: "@babel/helper-compilation-targets@npm:7.12.1" +"@babel/helper-builder-binary-assignment-operator-visitor@npm:^7.14.5": + version: 7.14.5 + resolution: "@babel/helper-builder-binary-assignment-operator-visitor@npm:7.14.5" dependencies: - "@babel/compat-data": ^7.12.1 - "@babel/helper-validator-option": ^7.12.1 - browserslist: ^4.12.0 - semver: ^5.5.0 - peerDependencies: - "@babel/core": ^7.0.0 - checksum: 723def1698c19f16991eda0e7dd2730787360b1f1fc7f5265fd727d53b8d7de4200ed3a756e38f6269270b467670dfef1819c68086a5f5797e87785336ca35e9 + "@babel/helper-explode-assignable-expression": ^7.14.5 + "@babel/types": ^7.14.5 + checksum: 0d3571edff0a96d625503a3fd79643f66f8a5204e75c4351276c0d194240e1debe322a70ef9ff47952bd77ac76792f42d732922b00b5bd8b6e2c99909dc4f49b languageName: node linkType: hard -"@babel/helper-compilation-targets@npm:^7.13.0, @babel/helper-compilation-targets@npm:^7.13.16": - version: 7.13.16 - resolution: "@babel/helper-compilation-targets@npm:7.13.16" +"@babel/helper-compilation-targets@npm:^7.13.0, @babel/helper-compilation-targets@npm:^7.14.5": + version: 7.14.5 + resolution: "@babel/helper-compilation-targets@npm:7.14.5" dependencies: - "@babel/compat-data": ^7.13.15 - "@babel/helper-validator-option": ^7.12.17 - browserslist: ^4.14.5 + "@babel/compat-data": ^7.14.5 + "@babel/helper-validator-option": ^7.14.5 + browserslist: ^4.16.6 semver: ^6.3.0 peerDependencies: "@babel/core": ^7.0.0 - checksum: 08c8fcd99808c07a357910ab0933a60a5269ee628f24e5fbfad6394646e5d38294e33835659b8556cde09a2a3afecf1235d9381cff4b433ad77cca7230502ce3 + checksum: 02df2c6d1bc5f2336f380945aa266a3a65d057c5eff6be667235a8005048b21f69e4aaebc8e43ccfc2fb406688383ae8e572f257413febf244772e5e7af5fd7f languageName: node linkType: hard -"@babel/helper-create-class-features-plugin@npm:^7.12.1": - version: 7.12.1 - resolution: "@babel/helper-create-class-features-plugin@npm:7.12.1" +"@babel/helper-compilation-targets@npm:^7.15.4": + version: 7.15.4 + resolution: "@babel/helper-compilation-targets@npm:7.15.4" dependencies: - "@babel/helper-function-name": ^7.10.4 - "@babel/helper-member-expression-to-functions": ^7.12.1 - "@babel/helper-optimise-call-expression": ^7.10.4 - "@babel/helper-replace-supers": ^7.12.1 - "@babel/helper-split-export-declaration": ^7.10.4 + "@babel/compat-data": ^7.15.0 + "@babel/helper-validator-option": ^7.14.5 + browserslist: ^4.16.6 + semver: ^6.3.0 peerDependencies: "@babel/core": ^7.0.0 - checksum: db5b5cec711b9361e0a52528db15506c24a87b158a2b2300023e9e508d3c24413f218fea2f413c8e406ef4a89629d1bbc9999f048c74af94f45ae8b7a74c35f0 + checksum: a2b9767d5658da90bd79170b4b0d2987930fb6708d48428619f9f4664c47e3f9409801b76c7603446404b453c67e54682cc86840cb1c29aa06c956533ebaf5ba languageName: node linkType: hard -"@babel/helper-create-class-features-plugin@npm:^7.13.0, @babel/helper-create-class-features-plugin@npm:^7.14.0, @babel/helper-create-class-features-plugin@npm:^7.14.2": - version: 7.14.2 - resolution: "@babel/helper-create-class-features-plugin@npm:7.14.2" +"@babel/helper-create-class-features-plugin@npm:^7.14.5": + version: 7.14.6 + resolution: "@babel/helper-create-class-features-plugin@npm:7.14.6" dependencies: - "@babel/helper-annotate-as-pure": ^7.12.13 - "@babel/helper-function-name": ^7.14.2 - "@babel/helper-member-expression-to-functions": ^7.13.12 - "@babel/helper-optimise-call-expression": ^7.12.13 - "@babel/helper-replace-supers": ^7.13.12 - "@babel/helper-split-export-declaration": ^7.12.13 + "@babel/helper-annotate-as-pure": ^7.14.5 + "@babel/helper-function-name": ^7.14.5 + "@babel/helper-member-expression-to-functions": ^7.14.5 + "@babel/helper-optimise-call-expression": ^7.14.5 + "@babel/helper-replace-supers": ^7.14.5 + "@babel/helper-split-export-declaration": ^7.14.5 peerDependencies: "@babel/core": ^7.0.0 - checksum: 91143d3414dd2927483a38445d20543893e42a5114a2b18cf55fae635e183dcec07100e163e5ca2602f3654daf1885b4d7692bf2e02ad0f36e713b9cf0132097 + checksum: 9d9c3c6f469bc5da4e5819979d0f70bf8a824967661743800741b5560cfa3cf811d52ab14dc00dd6e839814f8db39cf3118c08d550c487680969c40c9ccf2e2a languageName: node linkType: hard -"@babel/helper-create-regexp-features-plugin@npm:^7.12.1": - version: 7.12.1 - resolution: "@babel/helper-create-regexp-features-plugin@npm:7.12.1" +"@babel/helper-create-class-features-plugin@npm:^7.15.4": + version: 7.15.4 + resolution: "@babel/helper-create-class-features-plugin@npm:7.15.4" dependencies: - "@babel/helper-annotate-as-pure": ^7.10.4 - "@babel/helper-regex": ^7.10.4 - regexpu-core: ^4.7.1 + "@babel/helper-annotate-as-pure": ^7.15.4 + "@babel/helper-function-name": ^7.15.4 + "@babel/helper-member-expression-to-functions": ^7.15.4 + "@babel/helper-optimise-call-expression": ^7.15.4 + "@babel/helper-replace-supers": ^7.15.4 + "@babel/helper-split-export-declaration": ^7.15.4 peerDependencies: "@babel/core": ^7.0.0 - checksum: 5eb508dff03f319a8b88b37cf1995746d5a6c2ce3c5b9d4d5b3ca7c565cb971e84d909f519a44fb82a10224056bde815824679afd383d60e83505938d7c7b421 + checksum: 42fa8550125cd26ec5ff62f8d5383924b896a35326a31acced93a166661d1a1446199e5d2c8dc3685d70482127dc57cc6c22c5ffccadb58e72bfedf906fba817 languageName: node linkType: hard -"@babel/helper-create-regexp-features-plugin@npm:^7.12.13": - version: 7.12.17 - resolution: "@babel/helper-create-regexp-features-plugin@npm:7.12.17" +"@babel/helper-create-regexp-features-plugin@npm:^7.14.5": + version: 7.14.5 + resolution: "@babel/helper-create-regexp-features-plugin@npm:7.14.5" dependencies: - "@babel/helper-annotate-as-pure": ^7.12.13 + "@babel/helper-annotate-as-pure": ^7.14.5 regexpu-core: ^4.7.1 peerDependencies: "@babel/core": ^7.0.0 - checksum: 376a92fd8a84c7f6424be26f14e9d97e931b79fd90398ee708ccf08955122f752b24d38d3db932d918d939ae8224e749e4cf8e3798ba588a16c803ba0d759877 - languageName: node - linkType: hard - -"@babel/helper-define-map@npm:^7.10.4": - version: 7.10.5 - resolution: "@babel/helper-define-map@npm:7.10.5" - dependencies: - "@babel/helper-function-name": ^7.10.4 - "@babel/types": ^7.10.5 - lodash: ^4.17.19 - checksum: 4b257fac6f92cfa051a4a8d646116d19da963161b4e8e00f4f9f125b4b1e13d0e0cc7bbbc540fcc76c9012833d1eb782377018eb7c42d50ea98ee2e99fc49bc9 + checksum: c2636d0a6ea6d57eb3603ba9b223fd6ec273a3d8171eb8d84a357ff028cd747ab383b1d7cef84a4df5f9aebb321d43599895f562f3c8aa96314d4847aa59710e languageName: node linkType: hard -"@babel/helper-define-polyfill-provider@npm:^0.2.0": - version: 0.2.0 - resolution: "@babel/helper-define-polyfill-provider@npm:0.2.0" +"@babel/helper-define-polyfill-provider@npm:^0.2.2": + version: 0.2.3 + resolution: "@babel/helper-define-polyfill-provider@npm:0.2.3" dependencies: "@babel/helper-compilation-targets": ^7.13.0 "@babel/helper-module-imports": ^7.12.13 @@ -329,2019 +265,1203 @@ __metadata: semver: ^6.1.2 peerDependencies: "@babel/core": ^7.4.0-0 - checksum: 844c87dbddee896183a3d46a57f3ece936082b77aec7e2e6351493485922b4d26ea0600f71502f86062644d0fdd1ba4fe60a6d5291e7ddfa5c5ef81388d73c20 - languageName: node - linkType: hard - -"@babel/helper-explode-assignable-expression@npm:^7.10.4": - version: 7.12.1 - resolution: "@babel/helper-explode-assignable-expression@npm:7.12.1" - dependencies: - "@babel/types": ^7.12.1 - checksum: 55ee3c9720b57fb8b53d41e39aaab6e96dfcb5a2bd0cbdc774bc2225050df9a29f7ce6de49c36a1483eba9a778d094765242e5ecb4683e3e5c6f5f6b3cdcb9ab - languageName: node - linkType: hard - -"@babel/helper-explode-assignable-expression@npm:^7.12.13": - version: 7.13.0 - resolution: "@babel/helper-explode-assignable-expression@npm:7.13.0" - dependencies: - "@babel/types": ^7.13.0 - checksum: c386a8197322aeebc097abf3869debddfffecad41dfd86b2f20c5f49bd8fe7a4d5e81a60b147967b9869d2a3b2ff3d6023bc25e1c2f2df3c7e944071880d32be - languageName: node - linkType: hard - -"@babel/helper-function-name@npm:^7.10.4": - version: 7.10.4 - resolution: "@babel/helper-function-name@npm:7.10.4" - dependencies: - "@babel/helper-get-function-arity": ^7.10.4 - "@babel/template": ^7.10.4 - "@babel/types": ^7.10.4 - checksum: eb9226d1c768b974f30a20fafd809353a2dbc359f66d6d27e4dd917fb471df9a9c2b771e0f1a838b21aa195b3cbba8a472d95327b80b3bd0e12edf407a3c0d53 + checksum: 797699fe870e45bdbc7c4128963427f7d6240609b700b3f2c0a2f2f187e5f848ba704bcfe58d7d91796cabc5001fae01746b3efda113beb5b5b824927cf59fdb languageName: node linkType: hard -"@babel/helper-function-name@npm:^7.12.13, @babel/helper-function-name@npm:^7.14.2": - version: 7.14.2 - resolution: "@babel/helper-function-name@npm:7.14.2" +"@babel/helper-explode-assignable-expression@npm:^7.14.5": + version: 7.14.5 + resolution: "@babel/helper-explode-assignable-expression@npm:7.14.5" dependencies: - "@babel/helper-get-function-arity": ^7.12.13 - "@babel/template": ^7.12.13 - "@babel/types": ^7.14.2 - checksum: 70365d36ad1707e240916e160ced4bc1b3a57a0f4a1dfe7da3fd5c53afd1527610b53097c39deb72e63893bf5ad7d1676c7d546710043d24573347936103a9f0 + "@babel/types": ^7.14.5 + checksum: f3b34c54ad26e48e1409f21aaac8ee5b5fa3bd2917ce4df496f57daec12b6132b2d5c2618da807458e97bc2d7894c5bf505cc96789e0c289dcc9948d7844bb03 languageName: node linkType: hard -"@babel/helper-get-function-arity@npm:^7.10.4": - version: 7.10.4 - resolution: "@babel/helper-get-function-arity@npm:7.10.4" +"@babel/helper-function-name@npm:^7.14.5": + version: 7.14.5 + resolution: "@babel/helper-function-name@npm:7.14.5" dependencies: - "@babel/types": ^7.10.4 - checksum: 798e2eb6cd5d2ff91a6cc3904ad626fca366fb33e631cb214477f100207ef26acdf78280a31f8adf59a988f020221165834902d5e201a8b5bbefab361d502daf + "@babel/helper-get-function-arity": ^7.14.5 + "@babel/template": ^7.14.5 + "@babel/types": ^7.14.5 + checksum: fd8ffa82f7622b6e9a6294fb3b98b42e743ab2a8e3c329367667a960b5b98b48bc5ebf8be7308981f1985b9f3c69e1a3b4a91c8944ae97c31803240da92fb3c8 languageName: node linkType: hard -"@babel/helper-get-function-arity@npm:^7.12.13": - version: 7.12.13 - resolution: "@babel/helper-get-function-arity@npm:7.12.13" +"@babel/helper-function-name@npm:^7.15.4": + version: 7.15.4 + resolution: "@babel/helper-function-name@npm:7.15.4" dependencies: - "@babel/types": ^7.12.13 - checksum: 847ef9f4d4b2dc38574db6b0732c3add1cd65d54bab94c24d319188f2066c9b9ab2b0dda539cae7281d12ec302e3335b11ca3dcfb555566138d213905d00f711 + "@babel/helper-get-function-arity": ^7.15.4 + "@babel/template": ^7.15.4 + "@babel/types": ^7.15.4 + checksum: 0500e8e40753fdc25252b30609b12df8ebb997a4e5b4c2145774855c026a4338c0510fc7b819035d5f9d76cf3bd63417c0b7b58f0836a10996300f2f925c4e0f languageName: node linkType: hard -"@babel/helper-hoist-variables@npm:^7.10.4": - version: 7.10.4 - resolution: "@babel/helper-hoist-variables@npm:7.10.4" +"@babel/helper-get-function-arity@npm:^7.14.5": + version: 7.14.5 + resolution: "@babel/helper-get-function-arity@npm:7.14.5" dependencies: - "@babel/types": ^7.10.4 - checksum: efb6adceec6fa202f911e9f3efe849ebc6dcbba89b110f957bfe0ca93e29e5593490ce34b9e67f170deb3532564947a5350d2fdb8f1f95407dcf7c9af5b8a855 + "@babel/types": ^7.14.5 + checksum: a60779918b677a35e177bb4f46babfd54e9790587b6a4f076092a9eff2a940cbeacdeb10c94331b26abfe838769554d72293d16df897246cfccd1444e5e27cb7 languageName: node linkType: hard -"@babel/helper-hoist-variables@npm:^7.13.0": - version: 7.13.16 - resolution: "@babel/helper-hoist-variables@npm:7.13.16" +"@babel/helper-get-function-arity@npm:^7.15.4": + version: 7.15.4 + resolution: "@babel/helper-get-function-arity@npm:7.15.4" dependencies: - "@babel/traverse": ^7.13.15 - "@babel/types": ^7.13.16 - checksum: 02bc248458d7483ae91edf6fcffabef82eae7df26fe70c4984683ff4900fac9b54c7b0ef7bf03ce87edcd381dab5a685ec3d19232a34c43510fac8f0ea1c627c + "@babel/types": ^7.15.4 + checksum: 1a3dba8700ec69b5b120401769897a1a0ca2edcf6b546659d49946dcc8b0755c4c58dd8f15739f5cf851d4ca1db76f56759897c6f5b9f76f2fef989dc4f8fd54 languageName: node linkType: hard -"@babel/helper-member-expression-to-functions@npm:^7.12.1": - version: 7.12.1 - resolution: "@babel/helper-member-expression-to-functions@npm:7.12.1" +"@babel/helper-hoist-variables@npm:^7.14.5": + version: 7.14.5 + resolution: "@babel/helper-hoist-variables@npm:7.14.5" dependencies: - "@babel/types": ^7.12.1 - checksum: 692aaab58089378edf0ba5c06be0cb094f735f7c676e6f6a4bdeafbc85719d60ac61a3ff787cd578dedb6cd8ae6ac5ac7e4ed62bc06f5d0333fc4129b9ab37a1 + "@babel/types": ^7.14.5 + checksum: 35af58eebffca10988de7003e044ce2d27212aea72ac6d2c4604137da7f1e193cc694d8d60805d0d0beaf3d990f6f2dcc2622c52e3d3148e37017a29cacf2e56 languageName: node linkType: hard -"@babel/helper-member-expression-to-functions@npm:^7.13.12": - version: 7.13.12 - resolution: "@babel/helper-member-expression-to-functions@npm:7.13.12" +"@babel/helper-hoist-variables@npm:^7.15.4": + version: 7.15.4 + resolution: "@babel/helper-hoist-variables@npm:7.15.4" dependencies: - "@babel/types": ^7.13.12 - checksum: 76a5ad6ae60bec5cbef56dc2ef0e08269a985c41137e50bce642dd6c1d228c5454f656ba0de4ec819dfcbced007ec516f3c1ceaffff8d17c3957e4608be0fc8c + "@babel/types": ^7.15.4 + checksum: 1a9ae0a27112b5f4e4ab91da2a1b40a8f91d8ce195e965d900ec3f13b583a1ab36834fb3edc2812523fa1d586ce21c3e6d8ce437d168e23a5d8e7e2e46b50f6f languageName: node linkType: hard -"@babel/helper-module-imports@npm:^7.10.4, @babel/helper-module-imports@npm:^7.12.1": - version: 7.12.1 - resolution: "@babel/helper-module-imports@npm:7.12.1" +"@babel/helper-member-expression-to-functions@npm:^7.14.5": + version: 7.14.7 + resolution: "@babel/helper-member-expression-to-functions@npm:7.14.7" dependencies: - "@babel/types": ^7.12.1 - checksum: 23ae1672da54d4643cd32328e218cfaf3777c155014cebbb6487949b1a0548f05b2a6e5febd127f82ccd9d11a1abbe0812e4b34642ab4f4ab8f0d0832ea02b0a + "@babel/types": ^7.14.5 + checksum: 1768b849224002d7a8553226ad73e1e957fb6184b68234d5df7a45cf8e4453ed1208967c1cace1a4d973b223ddc881d105e372945ec688f09485dff0e8ed6180 languageName: node linkType: hard -"@babel/helper-module-imports@npm:^7.12.13, @babel/helper-module-imports@npm:^7.13.12": - version: 7.13.12 - resolution: "@babel/helper-module-imports@npm:7.13.12" +"@babel/helper-member-expression-to-functions@npm:^7.15.4": + version: 7.15.4 + resolution: "@babel/helper-member-expression-to-functions@npm:7.15.4" dependencies: - "@babel/types": ^7.13.12 - checksum: 9abb5e3acb5630bf519b4205b7784947b64f93d573ed13579d894611392e48cac40b598f67b34c7b342fc6ac6d2262dcdecf125cac8806888328e914b2775c43 + "@babel/types": ^7.15.4 + checksum: 30cf27e2afbaf1d58d189c5f36951a6af7d2bfccdfdb7d57e91749620d9c3c37d78324a1725079d3ab4a0e5c4e5f3d5f19a275d5dd269baa2aa8852835b05d6d languageName: node linkType: hard -"@babel/helper-module-imports@npm:^7.12.5": - version: 7.12.5 - resolution: "@babel/helper-module-imports@npm:7.12.5" +"@babel/helper-module-imports@npm:^7.12.13, @babel/helper-module-imports@npm:^7.14.5": + version: 7.14.5 + resolution: "@babel/helper-module-imports@npm:7.14.5" dependencies: - "@babel/types": ^7.12.5 - checksum: 7a9419ead89df6347c764a2a177391e296a5b106cefaaa3f4977b932c4333d63df4131fb1f4ca953aba0b7cc1a379ac0463e00602d1bca87c559ba3cb98d42f1 + "@babel/types": ^7.14.5 + checksum: b98279908698a50a22634e683924cb25eb93edf1bf28ac65691dfa82d7a1a4dae4e6b12b8ef9f9a50171ca484620bce544f270873c53505d8a45364c5b665c0c languageName: node linkType: hard -"@babel/helper-module-transforms@npm:^7.12.1": - version: 7.12.1 - resolution: "@babel/helper-module-transforms@npm:7.12.1" +"@babel/helper-module-imports@npm:^7.15.4": + version: 7.15.4 + resolution: "@babel/helper-module-imports@npm:7.15.4" dependencies: - "@babel/helper-module-imports": ^7.12.1 - "@babel/helper-replace-supers": ^7.12.1 - "@babel/helper-simple-access": ^7.12.1 - "@babel/helper-split-export-declaration": ^7.11.0 - "@babel/helper-validator-identifier": ^7.10.4 - "@babel/template": ^7.10.4 - "@babel/traverse": ^7.12.1 - "@babel/types": ^7.12.1 - lodash: ^4.17.19 - checksum: 44715a43f8a3cc9927b50f04361626f12f3e7097474d6445cc29be0782d20af58c20b49036c109d3915734ce2257f7d6c9002c265fbe18ad8b924947667460a3 + "@babel/types": ^7.15.4 + checksum: 519681cb9c27fcacd85ef13534020db3a2bac1d53a4d988fd9f3cf1ec223854311d4193c961cc2031c4d1df3b1a35a849b38237302752ae3d29eb00e5b9a904a languageName: node linkType: hard -"@babel/helper-module-transforms@npm:^7.13.0, @babel/helper-module-transforms@npm:^7.14.0, @babel/helper-module-transforms@npm:^7.14.2": - version: 7.14.2 - resolution: "@babel/helper-module-transforms@npm:7.14.2" +"@babel/helper-module-transforms@npm:^7.14.5": + version: 7.14.5 + resolution: "@babel/helper-module-transforms@npm:7.14.5" dependencies: - "@babel/helper-module-imports": ^7.13.12 - "@babel/helper-replace-supers": ^7.13.12 - "@babel/helper-simple-access": ^7.13.12 - "@babel/helper-split-export-declaration": ^7.12.13 - "@babel/helper-validator-identifier": ^7.14.0 - "@babel/template": ^7.12.13 - "@babel/traverse": ^7.14.2 - "@babel/types": ^7.14.2 - checksum: cb6930cb45cf078c3057f60769ad5f6ec3e6bbbcfc6ea069aa4b1ead15642fe43ada1bb1c13bed66bcde74c0c4ca12be818aff3067562494429b7688e6a3ea16 + "@babel/helper-module-imports": ^7.14.5 + "@babel/helper-replace-supers": ^7.14.5 + "@babel/helper-simple-access": ^7.14.5 + "@babel/helper-split-export-declaration": ^7.14.5 + "@babel/helper-validator-identifier": ^7.14.5 + "@babel/template": ^7.14.5 + "@babel/traverse": ^7.14.5 + "@babel/types": ^7.14.5 + checksum: f5d64c0242ec8949ee09069a634d28ae750ab22f9533ea90eab9eaf3405032a33b0b329a63fac0a7901482efb8a388a06279f7544225a0bc3c1b92b306ab2b6e languageName: node linkType: hard -"@babel/helper-optimise-call-expression@npm:^7.10.4": - version: 7.10.4 - resolution: "@babel/helper-optimise-call-expression@npm:7.10.4" +"@babel/helper-module-transforms@npm:^7.15.8": + version: 7.15.8 + resolution: "@babel/helper-module-transforms@npm:7.15.8" dependencies: - "@babel/types": ^7.10.4 - checksum: 358b904a5067c19d3d09e8e9a8ba1bdfb8dad71bb6fa3777d64f04e78d8425bad0b8ea7969bbcdf14bad0a7815d3575fc3323a085cbea6c36c47063e3aee4b00 + "@babel/helper-module-imports": ^7.15.4 + "@babel/helper-replace-supers": ^7.15.4 + "@babel/helper-simple-access": ^7.15.4 + "@babel/helper-split-export-declaration": ^7.15.4 + "@babel/helper-validator-identifier": ^7.15.7 + "@babel/template": ^7.15.4 + "@babel/traverse": ^7.15.4 + "@babel/types": ^7.15.6 + checksum: 67aea0ba226e066ef04ba642325cf39b1c517945b7e7d5596755f4eef9b81865522553b75deec77b30edd3d5069c866b71c30f4f8aa8d93077eabc0e0c603da0 languageName: node linkType: hard -"@babel/helper-optimise-call-expression@npm:^7.12.13": - version: 7.12.13 - resolution: "@babel/helper-optimise-call-expression@npm:7.12.13" +"@babel/helper-optimise-call-expression@npm:^7.14.5": + version: 7.14.5 + resolution: "@babel/helper-optimise-call-expression@npm:7.14.5" dependencies: - "@babel/types": ^7.12.13 - checksum: 9925679d67a809c42b990825ee31f5f02787f385e27301da3343487f6a84482c7e2ebdd2b6d1ed066c309218750f2b7f78ab44dbb25ea6152f71d22839962a35 - languageName: node - linkType: hard - -"@babel/helper-plugin-utils@npm:^7.0.0, @babel/helper-plugin-utils@npm:^7.10.4, @babel/helper-plugin-utils@npm:^7.8.0, @babel/helper-plugin-utils@npm:^7.8.3": - version: 7.10.4 - resolution: "@babel/helper-plugin-utils@npm:7.10.4" - checksum: 639ed8fc462b97a83226cee6bb081b1d77e7f73e8b033d2592ed107ee41d96601e321e5ea53a33e47469c7f1146b250a3dcda5ab873c7de162ab62120c341a41 - languageName: node - linkType: hard - -"@babel/helper-plugin-utils@npm:^7.12.13, @babel/helper-plugin-utils@npm:^7.13.0": - version: 7.13.0 - resolution: "@babel/helper-plugin-utils@npm:7.13.0" - checksum: 24f7a44e94662a5dc8bd98ab12625ccd96b11e789ef3f9efd4f6f0eeaf01a13b051a148e709fb1c4e1cacdb536987ea75f4b78509567a0117246ea917195a86b + "@babel/types": ^7.14.5 + checksum: c7af558c63eb5449bf2249f1236d892ed54a400cb6c721756cde573b996c12c64dee6b57fa18ad1a0025d152e6f689444f7ea32997a1d56e1af66c3eda18843d languageName: node linkType: hard -"@babel/helper-regex@npm:^7.10.4": - version: 7.10.5 - resolution: "@babel/helper-regex@npm:7.10.5" +"@babel/helper-optimise-call-expression@npm:^7.15.4": + version: 7.15.4 + resolution: "@babel/helper-optimise-call-expression@npm:7.15.4" dependencies: - lodash: ^4.17.19 - checksum: 920a424cae7c1bb5c0c30675d564b025ca249a40d850565c3372d00c9ca1d68b806824465e154e8d555afc0f5a9ab50267806745fd4ef20b671ebabe5ee2579e + "@babel/types": ^7.15.4 + checksum: 7c929d1a3dbed7ee776dd8a4502b92433bb14ce6217372581db117de294edcf7b8678b1f703b8309c769bb46f2e4f005cdb3958dec508a486b2b03a9a919b542 languageName: node linkType: hard -"@babel/helper-remap-async-to-generator@npm:^7.12.1": - version: 7.12.1 - resolution: "@babel/helper-remap-async-to-generator@npm:7.12.1" - dependencies: - "@babel/helper-annotate-as-pure": ^7.10.4 - "@babel/helper-wrap-function": ^7.10.4 - "@babel/types": ^7.12.1 - checksum: bdc8abb569f2cbdf25824e96c46ac15562ef9ea5f008d6bd402c6a194ac701a774ba2255be942debe58b45582404e18ecd8399dd4bb6f31cd43e1210c5d9ee13 +"@babel/helper-plugin-utils@npm:^7.0.0, @babel/helper-plugin-utils@npm:^7.10.4, @babel/helper-plugin-utils@npm:^7.12.13, @babel/helper-plugin-utils@npm:^7.13.0, @babel/helper-plugin-utils@npm:^7.14.5, @babel/helper-plugin-utils@npm:^7.8.0, @babel/helper-plugin-utils@npm:^7.8.3": + version: 7.14.5 + resolution: "@babel/helper-plugin-utils@npm:7.14.5" + checksum: fe20e90a24d02770a60ebe80ab9f0dfd7258503cea8006c71709ac9af1aa3e47b0de569499673f11ea6c99597f8c0e4880ae1d505986e61101b69716820972fe languageName: node linkType: hard -"@babel/helper-remap-async-to-generator@npm:^7.13.0": - version: 7.13.0 - resolution: "@babel/helper-remap-async-to-generator@npm:7.13.0" +"@babel/helper-remap-async-to-generator@npm:^7.14.5": + version: 7.14.5 + resolution: "@babel/helper-remap-async-to-generator@npm:7.14.5" dependencies: - "@babel/helper-annotate-as-pure": ^7.12.13 - "@babel/helper-wrap-function": ^7.13.0 - "@babel/types": ^7.13.0 - checksum: 40589d882990e38cd6d0ac860ded522bcacc9b064e14d3db01d2c661fdae28ee6c5e76bc55ddd0769edd5464b38ce8a396a353ae7f030d187eee9448327e508a + "@babel/helper-annotate-as-pure": ^7.14.5 + "@babel/helper-wrap-function": ^7.14.5 + "@babel/types": ^7.14.5 + checksum: 022594a15caed0d3bbac52e27eef0f20f9dceb85921b682df55f3bb21dee6fea645b03663e84fdfaadc6b88f4b83b012858520813c15e88728bbc5e16bf3fa29 languageName: node linkType: hard -"@babel/helper-replace-supers@npm:^7.12.1": - version: 7.12.1 - resolution: "@babel/helper-replace-supers@npm:7.12.1" +"@babel/helper-replace-supers@npm:^7.14.5": + version: 7.14.5 + resolution: "@babel/helper-replace-supers@npm:7.14.5" dependencies: - "@babel/helper-member-expression-to-functions": ^7.12.1 - "@babel/helper-optimise-call-expression": ^7.10.4 - "@babel/traverse": ^7.12.1 - "@babel/types": ^7.12.1 - checksum: b0b89196c7fd0954815306973f81786c38792c410358abfa2652c5dee69c3eb4a63404cfc9b880d276365b792ac5395c011a1d1d3917ced8b1b3dc86129ce176 + "@babel/helper-member-expression-to-functions": ^7.14.5 + "@babel/helper-optimise-call-expression": ^7.14.5 + "@babel/traverse": ^7.14.5 + "@babel/types": ^7.14.5 + checksum: 35d33cfe473f9fb5cc1110ee259686179ecd07e00e07d9eb03de998e47f49d59fc2e183cf6be0793fd6bec24510b893415e52ace93ae940f94663c4a02c6fbd0 languageName: node linkType: hard -"@babel/helper-replace-supers@npm:^7.12.13, @babel/helper-replace-supers@npm:^7.13.12": - version: 7.13.12 - resolution: "@babel/helper-replace-supers@npm:7.13.12" +"@babel/helper-replace-supers@npm:^7.15.4": + version: 7.15.4 + resolution: "@babel/helper-replace-supers@npm:7.15.4" dependencies: - "@babel/helper-member-expression-to-functions": ^7.13.12 - "@babel/helper-optimise-call-expression": ^7.12.13 - "@babel/traverse": ^7.13.0 - "@babel/types": ^7.13.12 - checksum: 9ac99070152157e74ecca16e161a3d5977f346cff19109d0ebb943553c3e5e064c4f3319e5517948406ca1990e8feff704726772b54e1b08951261023e072000 + "@babel/helper-member-expression-to-functions": ^7.15.4 + "@babel/helper-optimise-call-expression": ^7.15.4 + "@babel/traverse": ^7.15.4 + "@babel/types": ^7.15.4 + checksum: b08a23914a5f7f964aefa4518255006d3a58e4c0cf972527c1fe3c79ebff4d6d50c9f1d370b8d62e0085766a654910e39ba196fab522d794142d2219eea8430d languageName: node linkType: hard -"@babel/helper-simple-access@npm:^7.12.1": - version: 7.12.1 - resolution: "@babel/helper-simple-access@npm:7.12.1" +"@babel/helper-simple-access@npm:^7.14.5": + version: 7.14.5 + resolution: "@babel/helper-simple-access@npm:7.14.5" dependencies: - "@babel/types": ^7.12.1 - checksum: 2c387b57d9f270c947273e6dde4885971449c78436edd511c8d42cb43c5c4265ef2ebb222f46d9653b1d1254424aef1054876d033962db428662d8fe5e859a0c + "@babel/types": ^7.14.5 + checksum: cd795416bd10dd2f1bdebb36f1af08bf263024fdbf789cfda5dd1fbf4fea1fd0375e21d0bcb910a7d49b09b7480340797dcdfc888fbc895aeae45c145358ad75 languageName: node linkType: hard -"@babel/helper-simple-access@npm:^7.13.12": - version: 7.13.12 - resolution: "@babel/helper-simple-access@npm:7.13.12" +"@babel/helper-simple-access@npm:^7.15.4": + version: 7.15.4 + resolution: "@babel/helper-simple-access@npm:7.15.4" dependencies: - "@babel/types": ^7.13.12 - checksum: afd0a8d1c7530a5184cd6fc23175d765a3eeb16f35c83090a90cec1010fcca684d238287c2e0f7ea9c0939d52235603986bd73c61e689d600f5dd1d1ef0ca204 + "@babel/types": ^7.15.4 + checksum: 8c3462264d6755c1e190a709fa90667c1691cb61cdca2d3f9119dd93adfd9fbcb292bcc48dbd7e065b8c27d9371f2793799a92aec124a3260288ed112e00c839 languageName: node linkType: hard -"@babel/helper-skip-transparent-expression-wrappers@npm:^7.12.1": - version: 7.12.1 - resolution: "@babel/helper-skip-transparent-expression-wrappers@npm:7.12.1" +"@babel/helper-skip-transparent-expression-wrappers@npm:^7.14.5": + version: 7.14.5 + resolution: "@babel/helper-skip-transparent-expression-wrappers@npm:7.14.5" dependencies: - "@babel/types": ^7.12.1 - checksum: 9be6093eabc83b43b9af4c736c69d3c5da4497456575654741308f6f6886d8ebd17eacdddf32f1eb0ecc81f66a5562fb7f3b734c5340418da4e8138a958dafc0 + "@babel/types": ^7.14.5 + checksum: d16937eb08d57d2577902fa6d05ac4b1695602babd9dff9890fa8e56b593fdc997ad24de13fdaf15617036bfacf3493ea569898a5ac0538c2a831aa163f18985 languageName: node linkType: hard -"@babel/helper-split-export-declaration@npm:^7.10.4, @babel/helper-split-export-declaration@npm:^7.11.0": - version: 7.11.0 - resolution: "@babel/helper-split-export-declaration@npm:7.11.0" +"@babel/helper-split-export-declaration@npm:^7.14.5": + version: 7.14.5 + resolution: "@babel/helper-split-export-declaration@npm:7.14.5" dependencies: - "@babel/types": ^7.11.0 - checksum: eb03088c44e70ba3039b4608b0d108dcb1659f951b976044a487961c725b7c18e3d14b30f78180b8375c4bdbd0410494de56f716d30bc9ae6493e53c17047ec1 + "@babel/types": ^7.14.5 + checksum: 93437025a33747bfd37d6d5a9cdac8f4b6b3e5c0c53c0e24c5444575e731ea64fd5471a51a039fd74ff3378f916ea2d69d9f10274d253ed6f832952be2fd65f0 languageName: node linkType: hard -"@babel/helper-split-export-declaration@npm:^7.12.13": - version: 7.12.13 - resolution: "@babel/helper-split-export-declaration@npm:7.12.13" +"@babel/helper-split-export-declaration@npm:^7.15.4": + version: 7.15.4 + resolution: "@babel/helper-split-export-declaration@npm:7.15.4" dependencies: - "@babel/types": ^7.12.13 - checksum: adc8954a0b7e44548425f62ce4dc865d3efa288f016852539d3eddaeec13cf4baff3f397b494dc0f609aab51942480891cbe1adc955e05fe048b7f92db2bcf20 - languageName: node - linkType: hard - -"@babel/helper-validator-identifier@npm:^7.10.4": - version: 7.10.4 - resolution: "@babel/helper-validator-identifier@npm:7.10.4" - checksum: 3cbfdff0efea8f3bca050cfe408a156604293d3313c7279c8c02d916a0b3ef82617f28f7729877a94c0e8e922d4b7623c4f0a108ae2853bf762d933e101a5f8c - languageName: node - linkType: hard - -"@babel/helper-validator-identifier@npm:^7.12.11": - version: 7.12.11 - resolution: "@babel/helper-validator-identifier@npm:7.12.11" - checksum: e604c6bf890704fc46c1ae13bf23afb242b810224ec3403bba67cdbf0d8dabfec4b82123d6dfb18135a0ee3f7f79218583c819363ebb5e04a0a49d8418db7fce - languageName: node - linkType: hard - -"@babel/helper-validator-identifier@npm:^7.14.0": - version: 7.14.0 - resolution: "@babel/helper-validator-identifier@npm:7.14.0" - checksum: 6276d57677bac403dd2e99176b4c7bc38ecdf757ac845c4339a2bf2f6f1003203caaa5af24880bcc7084ee59b6687a897263592cab21f49da29eb8c246f2a0d8 + "@babel/types": ^7.15.4 + checksum: 6baf45996e1323fdfc30666e9c0b3219d74c54dc71e9130acfa4d9d4c53faa95618ac383a1c82a156555908323384a416b4a29e88b337de98fdb476212134f99 languageName: node linkType: hard -"@babel/helper-validator-option@npm:^7.12.1": - version: 7.12.1 - resolution: "@babel/helper-validator-option@npm:7.12.1" - checksum: 2187e993ff5d23332f351677ca0a2c3bc5852af0bbb6a1bd5e29638c58e1b675b06e801290d52eeea83b106bb98a330338bd55556bd4e7f9d3085220520a7506 +"@babel/helper-validator-identifier@npm:^7.14.5": + version: 7.14.5 + resolution: "@babel/helper-validator-identifier@npm:7.14.5" + checksum: 6366bceab4498785defc083a1bd96344f788d90a1aa7a6f18d6813c1d3d134640bfc05690453c0b79bbfc820472cf5b29110dfddaca1f8e2763dfe1bd5df0b88 languageName: node linkType: hard -"@babel/helper-validator-option@npm:^7.12.17": - version: 7.12.17 - resolution: "@babel/helper-validator-option@npm:7.12.17" - checksum: 940e7b78dc05508d726b721e06dfdbfd56fd8a56522ee37e9d6f3ed9bef6df5dba82a1d74434e7670b0e5e5caa699f1454a63254199df3cddc2a0829acf75e36 +"@babel/helper-validator-identifier@npm:^7.14.9": + version: 7.14.9 + resolution: "@babel/helper-validator-identifier@npm:7.14.9" + checksum: 58552531a7674363e74672434c312ddaf1545b8a43308e1a7f38db58bf79c796c095a6dab6a6105eb0d783b97441f6cbb525bb887f29a35f232fcdbd8cb240dc languageName: node linkType: hard -"@babel/helper-wrap-function@npm:^7.10.4": - version: 7.12.3 - resolution: "@babel/helper-wrap-function@npm:7.12.3" - dependencies: - "@babel/helper-function-name": ^7.10.4 - "@babel/template": ^7.10.4 - "@babel/traverse": ^7.10.4 - "@babel/types": ^7.10.4 - checksum: 49c3796d7adabccf9b1bc6f3d9f98cc2e6d490e60a441b540f8f0620e955d866e8dafd9fce451d16702f5d68170e4f4dec8d7c9e8f55d3bda1bdc6fabdccf721 +"@babel/helper-validator-identifier@npm:^7.15.7": + version: 7.15.7 + resolution: "@babel/helper-validator-identifier@npm:7.15.7" + checksum: f041c28c531d1add5cc345b25d5df3c29c62bce3205b4d4a93dcd164ccf630350acba252d374fad8f5d8ea526995a215829f27183ba7ce7ce141843bf23068a6 languageName: node linkType: hard -"@babel/helper-wrap-function@npm:^7.12.13, @babel/helper-wrap-function@npm:^7.13.0": - version: 7.13.0 - resolution: "@babel/helper-wrap-function@npm:7.13.0" - dependencies: - "@babel/helper-function-name": ^7.12.13 - "@babel/template": ^7.12.13 - "@babel/traverse": ^7.13.0 - "@babel/types": ^7.13.0 - checksum: dab4018cd2ec18056035f2771cb0f9bbdbaaeebaa33e022b76412b768157ad0ff9e3ff6a5cf6eeab6f3c43986a1c1e09610714bb5cdc5259607baf9bdb36fbd5 +"@babel/helper-validator-option@npm:^7.14.5": + version: 7.14.5 + resolution: "@babel/helper-validator-option@npm:7.14.5" + checksum: 1b25c34a5cb3d8602280f33b9ab687d2a77895e3616458d0f70ddc450ada9b05e342c44f322bc741d51b252e84cff6ec44ae93d622a3354828579a643556b523 languageName: node linkType: hard -"@babel/helpers@npm:^7.12.1": - version: 7.12.1 - resolution: "@babel/helpers@npm:7.12.1" +"@babel/helper-wrap-function@npm:^7.14.5": + version: 7.14.5 + resolution: "@babel/helper-wrap-function@npm:7.14.5" dependencies: - "@babel/template": ^7.10.4 - "@babel/traverse": ^7.12.1 - "@babel/types": ^7.12.1 - checksum: ca65f740a1c8e9a6438bc7e4bc22183f942dc90612121684ee9dd3ce7fc293f768f0ecee87b5d48c32e3750e5672ea2c05e1ca1168857ed8239f276337ae6696 + "@babel/helper-function-name": ^7.14.5 + "@babel/template": ^7.14.5 + "@babel/traverse": ^7.14.5 + "@babel/types": ^7.14.5 + checksum: d5c4bec02396f00d305ae2b60cfa5f3ec27d196a71b88107745b6be4fe257ebe54deedb6ee3997c8c9a2cc5c2571d567c22e9b866109490a2aa7f79a1a2272e2 languageName: node linkType: hard -"@babel/helpers@npm:^7.14.0": - version: 7.14.0 - resolution: "@babel/helpers@npm:7.14.0" +"@babel/helpers@npm:^7.14.6": + version: 7.14.6 + resolution: "@babel/helpers@npm:7.14.6" dependencies: - "@babel/template": ^7.12.13 - "@babel/traverse": ^7.14.0 - "@babel/types": ^7.14.0 - checksum: 276716f77cd5e439543e446bed25c1b541b855bb94ffe6f6193335653e17c044503fa194de25cc2f9208dbfa6b406c2cb77e4e0382f2ca4241bd6bf773dcd091 + "@babel/template": ^7.14.5 + "@babel/traverse": ^7.14.5 + "@babel/types": ^7.14.5 + checksum: fe4e73975b062a8b8b95f499f4ac1064c9a53d4ee83cc273c2420250f6a46b59f1f5e35050d41ebe04efd7885a28ceea6f4f16d8eb091e24622f2a4a5eb20f23 languageName: node linkType: hard -"@babel/highlight@npm:^7.10.4": - version: 7.10.4 - resolution: "@babel/highlight@npm:7.10.4" +"@babel/helpers@npm:^7.15.4": + version: 7.15.4 + resolution: "@babel/helpers@npm:7.15.4" dependencies: - "@babel/helper-validator-identifier": ^7.10.4 - chalk: ^2.0.0 - js-tokens: ^4.0.0 - checksum: 6fab4679162562907942acc3647bc8c405b955f3bef7c654ef160491d0801ebdc12651c2051144dc0e22b69044fe3059d630151d5d7fb84b10ed4093da707707 + "@babel/template": ^7.15.4 + "@babel/traverse": ^7.15.4 + "@babel/types": ^7.15.4 + checksum: e60738110086c183d0ce369ad56949d5dceeb7d73d8fdb892f36d5b8525192e6b97f4563eb77334f47ac27ac43a21f3c4cd53bff342c2a0d5f4008a2b0169c89 languageName: node linkType: hard -"@babel/highlight@npm:^7.12.13": - version: 7.14.0 - resolution: "@babel/highlight@npm:7.14.0" +"@babel/highlight@npm:^7.10.4, @babel/highlight@npm:^7.14.5": + version: 7.14.5 + resolution: "@babel/highlight@npm:7.14.5" dependencies: - "@babel/helper-validator-identifier": ^7.14.0 + "@babel/helper-validator-identifier": ^7.14.5 chalk: ^2.0.0 js-tokens: ^4.0.0 - checksum: 5aae226c0d4caf66bbb2d11e961449b470eb952aa827b06da5921d845a5dc233789e2537aa1e7b0f567d1cae93feca3976d6b52c9d6d87481ed9ded0bebf13a2 + checksum: 4e4b22fb886c939551d73307de16232c186fdb4d8ec8f514541b058feaecdba5234788a0740ca5bcd28777f4108596c39ac4b7463684c63b3812f6071e3fb88f languageName: node linkType: hard -"@babel/parser@npm:^7.10.4, @babel/parser@npm:^7.12.1, @babel/parser@npm:^7.12.3": - version: 7.12.3 - resolution: "@babel/parser@npm:7.12.3" +"@babel/parser@npm:^7.14.5, @babel/parser@npm:^7.14.6, @babel/parser@npm:^7.14.7": + version: 7.14.7 + resolution: "@babel/parser@npm:7.14.7" bin: parser: ./bin/babel-parser.js - checksum: 3475292cd63dd98d3e35c007b6e67b0502f1c2e06a26fe5821f2da634a66de498a9933e76c83b991bc20e0c90c18c5a1cab323151e95c894124b17604eb58c2c + checksum: 0d7acc8cf9c19ccd0e80ab0608953f32f4375f3867c080211270e7bb4bb94c551fd1fc3f49b3cc92a4eec356cf507801f5c93c4c72996968bdc4c28815fe0550 languageName: node linkType: hard -"@babel/parser@npm:^7.12.13, @babel/parser@npm:^7.14.2": - version: 7.14.2 - resolution: "@babel/parser@npm:7.14.2" +"@babel/parser@npm:^7.15.4": + version: 7.15.5 + resolution: "@babel/parser@npm:7.15.5" bin: parser: ./bin/babel-parser.js - checksum: 38ecb2f2288fb1b14a9677a6ea311ae8fe35ec2b4b26f2734ab10619d909e72cc94d527847ce41f49b264e7326b91e6e823b5d870202b4be7c5abb17247ec4c2 + checksum: abc39a66b9bf6c861e25b07ad99830c4da6ce345135ebe08ee81a0e8d2f62cddc5f1fd825885fcd609a41b59531c856083d880f7836bd89c148136f834dfc3fe languageName: node linkType: hard -"@babel/parser@npm:^7.14.3": - version: 7.14.3 - resolution: "@babel/parser@npm:7.14.3" +"@babel/parser@npm:^7.15.8": + version: 7.15.8 + resolution: "@babel/parser@npm:7.15.8" bin: parser: ./bin/babel-parser.js - checksum: 39653900d3a76fba8891fbe3e799f6619d2286dc57be0b95ce8d93e667eec4c52df58603d03fbdc11edcbd0b4110a5f7393538315e02a234178581033dbcb881 + checksum: a26c91967655f3961bc0c2565f7b9ac870ee3db86c9a0f00b96a7fb65210687be023431c79b3ed2a13b9c945e6afa09c36542ee508741e7ce3039a5b0f18c4b2 languageName: node linkType: hard -"@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining@npm:^7.13.12": - version: 7.13.12 - resolution: "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining@npm:7.13.12" +"@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining@npm:^7.14.5": + version: 7.14.5 + resolution: "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining@npm:7.14.5" dependencies: - "@babel/helper-plugin-utils": ^7.13.0 - "@babel/helper-skip-transparent-expression-wrappers": ^7.12.1 - "@babel/plugin-proposal-optional-chaining": ^7.13.12 + "@babel/helper-plugin-utils": ^7.14.5 + "@babel/helper-skip-transparent-expression-wrappers": ^7.14.5 + "@babel/plugin-proposal-optional-chaining": ^7.14.5 peerDependencies: "@babel/core": ^7.13.0 - checksum: 4064a70fcdd6552596404a57e4e50ac5300a9eb8792e86719199f2b2a610e9f6412a0509d32c8d249818d7b6387715b57a6a5b3c4316e6ed4af60e38e87b1e0a - languageName: node - linkType: hard - -"@babel/plugin-proposal-async-generator-functions@npm:^7.12.1": - version: 7.12.1 - resolution: "@babel/plugin-proposal-async-generator-functions@npm:7.12.1" - dependencies: - "@babel/helper-plugin-utils": ^7.10.4 - "@babel/helper-remap-async-to-generator": ^7.12.1 - "@babel/plugin-syntax-async-generators": ^7.8.0 - peerDependencies: - "@babel/core": ^7.0.0-0 - checksum: f9c96645c258820114bbc65c0e28de5f2e83e37d2cd1322c23851a927e22db9a1436557d8227c396e904a1c7e42945b8172277e80f96456cddcb1fdf796b4e26 + checksum: 17331fd4c1de860ac78aa3195eb5bd058c4eb24a8f2c6e719f079f9c86cbdb53d9a8affc2f9f78b6fc257afef03811922c2d16addad5d5f6224d2820da1c9f45 languageName: node linkType: hard -"@babel/plugin-proposal-async-generator-functions@npm:^7.14.2": - version: 7.14.2 - resolution: "@babel/plugin-proposal-async-generator-functions@npm:7.14.2" +"@babel/plugin-proposal-async-generator-functions@npm:^7.14.7": + version: 7.14.7 + resolution: "@babel/plugin-proposal-async-generator-functions@npm:7.14.7" dependencies: - "@babel/helper-plugin-utils": ^7.13.0 - "@babel/helper-remap-async-to-generator": ^7.13.0 + "@babel/helper-plugin-utils": ^7.14.5 + "@babel/helper-remap-async-to-generator": ^7.14.5 "@babel/plugin-syntax-async-generators": ^7.8.4 peerDependencies: "@babel/core": ^7.0.0-0 - checksum: 1ac72b48a6b8c94ce34e3a970d4a1854560ce6f68c4637df7c64e0927a4e9845af7355ea5ecb47fa628896c5007e5298fc42e0703e38ce02a012759cddde0177 + checksum: 09343a79385615f8d5f95aaef7c44af5e899c82f030f3d73546c2ffffa567c0949f0405052d7e32f643c0eb2a23590a5050f4606855b3506246d3d60e46f32e3 languageName: node linkType: hard -"@babel/plugin-proposal-class-properties@npm:^7.12.1": - version: 7.12.1 - resolution: "@babel/plugin-proposal-class-properties@npm:7.12.1" +"@babel/plugin-proposal-class-properties@npm:^7.14.5": + version: 7.14.5 + resolution: "@babel/plugin-proposal-class-properties@npm:7.14.5" dependencies: - "@babel/helper-create-class-features-plugin": ^7.12.1 - "@babel/helper-plugin-utils": ^7.10.4 + "@babel/helper-create-class-features-plugin": ^7.14.5 + "@babel/helper-plugin-utils": ^7.14.5 peerDependencies: "@babel/core": ^7.0.0-0 - checksum: 55b5e6cd83d2c710c10edee514de5552464d720fd07c961be99820c7036db0c493745806d10ab037f9e06cd4fa1fe6a68640bc8fb846a1fd5318ea97870bb10a + checksum: fe2aa0a44f8ea121e10c856d6fb4fca418dc42451258ef6ed29321ca740080fba420ebd3d6700d0456c34c2ab2044f9ce4308498321f52a93184ff5adb015aae languageName: node linkType: hard -"@babel/plugin-proposal-class-properties@npm:^7.13.0": - version: 7.13.0 - resolution: "@babel/plugin-proposal-class-properties@npm:7.13.0" +"@babel/plugin-proposal-class-static-block@npm:^7.14.5": + version: 7.14.5 + resolution: "@babel/plugin-proposal-class-static-block@npm:7.14.5" dependencies: - "@babel/helper-create-class-features-plugin": ^7.13.0 - "@babel/helper-plugin-utils": ^7.13.0 + "@babel/helper-create-class-features-plugin": ^7.14.5 + "@babel/helper-plugin-utils": ^7.14.5 + "@babel/plugin-syntax-class-static-block": ^7.14.5 peerDependencies: - "@babel/core": ^7.0.0-0 - checksum: e3cdfacb2d36c66204e3bf99b85feb521daed6e2c3d424f10eb3f722fe20ca0a2560fe9f5a01e5170a34a4f160e9ff02eb678bed81ee130f1c9d990ce8cd711c + "@babel/core": ^7.12.0 + checksum: 0275d0643dacd08638c2d3c129158ad0c2dea6a26e78fa4b2129811a29460ff9a6459d1955a19bfa3b9ed67ba2bb3c88676823ad207b2de4f0c65e0c3751d75c languageName: node linkType: hard -"@babel/plugin-proposal-class-static-block@npm:^7.13.11": - version: 7.13.11 - resolution: "@babel/plugin-proposal-class-static-block@npm:7.13.11" +"@babel/plugin-proposal-decorators@npm:^7.15.8": + version: 7.15.8 + resolution: "@babel/plugin-proposal-decorators@npm:7.15.8" dependencies: - "@babel/helper-plugin-utils": ^7.13.0 - "@babel/plugin-syntax-class-static-block": ^7.12.13 + "@babel/helper-create-class-features-plugin": ^7.15.4 + "@babel/helper-plugin-utils": ^7.14.5 + "@babel/plugin-syntax-decorators": ^7.14.5 peerDependencies: - "@babel/core": ^7.12.0 - checksum: 4760d5966d1b84881529c457a4fcfe8e24aa6207dd39736c0c70ce16262473bd111834edbe4f89287d5aa23d59342a84c7f659e22d8b2a89df199a96ad74cbde + "@babel/core": ^7.0.0-0 + checksum: 291d1e1ff17c54ff40c38903b9be8bbe78fb7eed8abc496a6ebccf12083b97809e829a43a720df526dab21e1004483edaf38ef1635ae6fcda6a8f258df17fb67 languageName: node linkType: hard -"@babel/plugin-proposal-decorators@npm:^7.14.2": - version: 7.14.2 - resolution: "@babel/plugin-proposal-decorators@npm:7.14.2" +"@babel/plugin-proposal-dynamic-import@npm:^7.14.5": + version: 7.14.5 + resolution: "@babel/plugin-proposal-dynamic-import@npm:7.14.5" dependencies: - "@babel/helper-create-class-features-plugin": ^7.14.2 - "@babel/helper-plugin-utils": ^7.13.0 - "@babel/plugin-syntax-decorators": ^7.12.13 + "@babel/helper-plugin-utils": ^7.14.5 + "@babel/plugin-syntax-dynamic-import": ^7.8.3 peerDependencies: "@babel/core": ^7.0.0-0 - checksum: ebf2a9f7475cf0771e43e3463de6a4da25c17c1667c5fb9853248da6018fbc7eb75c1c4195895ff50c8d6c2124ef36769e8b30d7e686e860aff1608528af1362 + checksum: 47be4b5f8824f8690b47d99a34d52de0e6c19d0b99f26c1f9a2e4cc49e05082bcef7248c610bb3830ae84cec928713c7774f4929fca4fa72df570df7a76a9d2b languageName: node linkType: hard -"@babel/plugin-proposal-dynamic-import@npm:^7.12.1": - version: 7.12.1 - resolution: "@babel/plugin-proposal-dynamic-import@npm:7.12.1" +"@babel/plugin-proposal-export-namespace-from@npm:^7.14.5": + version: 7.14.5 + resolution: "@babel/plugin-proposal-export-namespace-from@npm:7.14.5" dependencies: - "@babel/helper-plugin-utils": ^7.10.4 - "@babel/plugin-syntax-dynamic-import": ^7.8.0 + "@babel/helper-plugin-utils": ^7.14.5 + "@babel/plugin-syntax-export-namespace-from": ^7.8.3 peerDependencies: "@babel/core": ^7.0.0-0 - checksum: 838a4c34ea4101528504e558acb82d33e37904214948e2cb91c7b697a4af98226607854ea37df74748f8a190ee4ad2a6463a5b06fe53e8d73a55feb6c1163691 + checksum: b3f4e0cc196f7ad9132816bb350124e8932bc047ab946e431f85bae9649b0de384c54261a60c050a2b8220703408fc089f90349ad008ed69a70944a6f3048d0e languageName: node linkType: hard -"@babel/plugin-proposal-dynamic-import@npm:^7.14.2": - version: 7.14.2 - resolution: "@babel/plugin-proposal-dynamic-import@npm:7.14.2" +"@babel/plugin-proposal-json-strings@npm:^7.14.5": + version: 7.14.5 + resolution: "@babel/plugin-proposal-json-strings@npm:7.14.5" dependencies: - "@babel/helper-plugin-utils": ^7.13.0 - "@babel/plugin-syntax-dynamic-import": ^7.8.3 + "@babel/helper-plugin-utils": ^7.14.5 + "@babel/plugin-syntax-json-strings": ^7.8.3 peerDependencies: "@babel/core": ^7.0.0-0 - checksum: 24b407acd7afd2088ac29eb8b3dd496c8b41aae8fb9a08d9e1258dd317d2228aedecf4da47fa2c7ab6af0e3dab1b8b31a355e417b8dd3ce20b4905b1aba33ee6 + checksum: 51dafe70237860569c9c27dc6a0db83e149bf7babb0fcafa9dbcd55a960b443f7b5bb695956c6e116e46b3dbd2a6777ead62bcad843aff8c1916c1be56e2f504 languageName: node linkType: hard -"@babel/plugin-proposal-export-default-from@npm:^7.12.13": - version: 7.12.13 - resolution: "@babel/plugin-proposal-export-default-from@npm:7.12.13" +"@babel/plugin-proposal-logical-assignment-operators@npm:^7.14.5": + version: 7.14.5 + resolution: "@babel/plugin-proposal-logical-assignment-operators@npm:7.14.5" dependencies: - "@babel/helper-plugin-utils": ^7.12.13 - "@babel/plugin-syntax-export-default-from": ^7.12.13 + "@babel/helper-plugin-utils": ^7.14.5 + "@babel/plugin-syntax-logical-assignment-operators": ^7.10.4 peerDependencies: "@babel/core": ^7.0.0-0 - checksum: 8232814734839c9b991ab76e18463d618073b756055c711445e570434d0359e694240abadd83f57aea1e7de2af83981c146a90e86c092604bc1c8ae07eac8c05 + checksum: 08b6dbc991c4824b0d8bfabf46c8254fce02d2df04627b8849cf15a4b6de75629c10c7c83d1e6834cdcebfc98b16264ce2dd32aa9c0fae900ed2af807d5ac42b languageName: node linkType: hard -"@babel/plugin-proposal-export-namespace-from@npm:^7.12.1": - version: 7.12.1 - resolution: "@babel/plugin-proposal-export-namespace-from@npm:7.12.1" +"@babel/plugin-proposal-nullish-coalescing-operator@npm:^7.14.5": + version: 7.14.5 + resolution: "@babel/plugin-proposal-nullish-coalescing-operator@npm:7.14.5" dependencies: - "@babel/helper-plugin-utils": ^7.10.4 - "@babel/plugin-syntax-export-namespace-from": ^7.8.3 + "@babel/helper-plugin-utils": ^7.14.5 + "@babel/plugin-syntax-nullish-coalescing-operator": ^7.8.3 peerDependencies: "@babel/core": ^7.0.0-0 - checksum: d96c97420518975118b9a753736fa424f34db20d281446e0308f0d9b722183b0babe4f518de039d6192449e128207842374ba3c8315294cfd1f3ca6e91fd1ba9 + checksum: 033d9483c2feb74928fbb83a73948eb1179c8852d2ae507fbfc37752d2dbf702c9ad0daaf1eaa029f81b12b7e2470061b4f611db88b7293f0e9a71eba288a430 languageName: node linkType: hard -"@babel/plugin-proposal-export-namespace-from@npm:^7.14.2": - version: 7.14.2 - resolution: "@babel/plugin-proposal-export-namespace-from@npm:7.14.2" +"@babel/plugin-proposal-numeric-separator@npm:^7.14.5": + version: 7.14.5 + resolution: "@babel/plugin-proposal-numeric-separator@npm:7.14.5" dependencies: - "@babel/helper-plugin-utils": ^7.13.0 - "@babel/plugin-syntax-export-namespace-from": ^7.8.3 + "@babel/helper-plugin-utils": ^7.14.5 + "@babel/plugin-syntax-numeric-separator": ^7.10.4 peerDependencies: "@babel/core": ^7.0.0-0 - checksum: e34fc6b9262abb13cc8f3fce5bbc548ae9a98813cebff09bc2ff65bb3e10962ec8adcae668ae06f7cdee986d407ccebec4e4d8c5f551dfda0ae2819f0933d24c + checksum: 22093297ec9aed3938b39f4efa1b518252fe7b0835902c3066f0ae6a864ac253b986a4a21a6092aa068d0702d7b09bed74e56cf39f2da8b4f3f43e0747bffb62 languageName: node linkType: hard -"@babel/plugin-proposal-function-bind@npm:^7.12.13": - version: 7.12.13 - resolution: "@babel/plugin-proposal-function-bind@npm:7.12.13" +"@babel/plugin-proposal-object-rest-spread@npm:^7.14.7": + version: 7.14.7 + resolution: "@babel/plugin-proposal-object-rest-spread@npm:7.14.7" dependencies: - "@babel/helper-plugin-utils": ^7.12.13 - "@babel/plugin-syntax-function-bind": ^7.12.13 + "@babel/compat-data": ^7.14.7 + "@babel/helper-compilation-targets": ^7.14.5 + "@babel/helper-plugin-utils": ^7.14.5 + "@babel/plugin-syntax-object-rest-spread": ^7.8.3 + "@babel/plugin-transform-parameters": ^7.14.5 peerDependencies: "@babel/core": ^7.0.0-0 - checksum: 2d7a808b63751cfd8641c71a86100e534a6403cf821f12f87d1b7d16e108ebc54beabe2dfb5d271331d86307ff740f9bfd4a650f2bdc495a363350468dcb63b1 + checksum: a35192868166fb5a62003a56ce2c266f74ae680f1d9589652c4495145240dd138a9505301bb5adca069cb874d6f0f733dc2f3d1d05f71a06019735c29c4d1a11 languageName: node linkType: hard -"@babel/plugin-proposal-function-sent@npm:^7.12.13": - version: 7.12.13 - resolution: "@babel/plugin-proposal-function-sent@npm:7.12.13" +"@babel/plugin-proposal-optional-catch-binding@npm:^7.14.5": + version: 7.14.5 + resolution: "@babel/plugin-proposal-optional-catch-binding@npm:7.14.5" dependencies: - "@babel/helper-plugin-utils": ^7.12.13 - "@babel/helper-wrap-function": ^7.12.13 - "@babel/plugin-syntax-function-sent": ^7.12.13 + "@babel/helper-plugin-utils": ^7.14.5 + "@babel/plugin-syntax-optional-catch-binding": ^7.8.3 peerDependencies: "@babel/core": ^7.0.0-0 - checksum: 65a7ef7b792e00c2d0c566ac161541c072617714f4950ff52f2aa7e3aec2164bc2bd43c9862da40e283f82f91fc0012c81dff0b3902cc887ac10870f67694294 + checksum: f9c1b2b34fef1bde85feeb0b438131f526056161e10b6fb91c74a5828ad39d2a20521b5c3cefc7367a7e5fc792b7c7e607bf278d7999b5d89824c34af3174eae languageName: node linkType: hard -"@babel/plugin-proposal-json-strings@npm:^7.12.1": - version: 7.12.1 - resolution: "@babel/plugin-proposal-json-strings@npm:7.12.1" +"@babel/plugin-proposal-optional-chaining@npm:^7.14.5": + version: 7.14.5 + resolution: "@babel/plugin-proposal-optional-chaining@npm:7.14.5" dependencies: - "@babel/helper-plugin-utils": ^7.10.4 - "@babel/plugin-syntax-json-strings": ^7.8.0 + "@babel/helper-plugin-utils": ^7.14.5 + "@babel/helper-skip-transparent-expression-wrappers": ^7.14.5 + "@babel/plugin-syntax-optional-chaining": ^7.8.3 peerDependencies: "@babel/core": ^7.0.0-0 - checksum: b45b81b91eed02cb09e921a5c3951ce850266febebeec896cd1b70a4707086b57eeee252cdfb3381ac3812140712e9fd0833d916bbc3c031f57527f804bd2a7c + checksum: 9e39e20d162bea2241b4c24ea8a339f872a04954a5155c606bf2437edaa1a15b8a517daee4b2b09cfd42d826b93c57f080aa9fbb13c60a8f3a7a72963badf2df languageName: node linkType: hard -"@babel/plugin-proposal-json-strings@npm:^7.14.2": - version: 7.14.2 - resolution: "@babel/plugin-proposal-json-strings@npm:7.14.2" +"@babel/plugin-proposal-private-methods@npm:^7.14.5": + version: 7.14.5 + resolution: "@babel/plugin-proposal-private-methods@npm:7.14.5" dependencies: - "@babel/helper-plugin-utils": ^7.13.0 - "@babel/plugin-syntax-json-strings": ^7.8.3 + "@babel/helper-create-class-features-plugin": ^7.14.5 + "@babel/helper-plugin-utils": ^7.14.5 peerDependencies: "@babel/core": ^7.0.0-0 - checksum: 2db971b41f1d1574909bad99646ac8dbc9f0beab581589663921b5c5b54dbd2a0a583559601bbb58140175fdaa74cc93591c3ae7141dfe56a547eced82a54fd9 + checksum: badacc1d68c8cf92a7ba973e3c283bc3aebf586a6573b6d18a96461ce18039d4cdc0135edac1b810df8d92cfca628115d98a0ad83ed8f15bf15eaff21539bf32 languageName: node linkType: hard -"@babel/plugin-proposal-logical-assignment-operators@npm:^7.12.1": - version: 7.12.1 - resolution: "@babel/plugin-proposal-logical-assignment-operators@npm:7.12.1" +"@babel/plugin-proposal-private-property-in-object@npm:^7.14.5": + version: 7.14.5 + resolution: "@babel/plugin-proposal-private-property-in-object@npm:7.14.5" dependencies: - "@babel/helper-plugin-utils": ^7.10.4 - "@babel/plugin-syntax-logical-assignment-operators": ^7.10.4 + "@babel/helper-annotate-as-pure": ^7.14.5 + "@babel/helper-create-class-features-plugin": ^7.14.5 + "@babel/helper-plugin-utils": ^7.14.5 + "@babel/plugin-syntax-private-property-in-object": ^7.14.5 peerDependencies: "@babel/core": ^7.0.0-0 - checksum: a25b30ab660b07e80accf2b59512ba7d55c4b8dd29aa866e676d9f04362669d42b52b248b9d373196ca34c90e2bfa4f41433a72e217dab5fbfe5fb9462881bf4 + checksum: a11da6a52eb13d6dcb6ed36993a81e9746404f6e83d32be16142911b7e5768293d8c4c5373d182ef25cb94d0b18c0c27a07f4553be042ee2dc49f7179f8cbfe2 languageName: node linkType: hard -"@babel/plugin-proposal-logical-assignment-operators@npm:^7.14.2": - version: 7.14.2 - resolution: "@babel/plugin-proposal-logical-assignment-operators@npm:7.14.2" +"@babel/plugin-proposal-unicode-property-regex@npm:^7.14.5, @babel/plugin-proposal-unicode-property-regex@npm:^7.4.4": + version: 7.14.5 + resolution: "@babel/plugin-proposal-unicode-property-regex@npm:7.14.5" dependencies: - "@babel/helper-plugin-utils": ^7.13.0 - "@babel/plugin-syntax-logical-assignment-operators": ^7.10.4 + "@babel/helper-create-regexp-features-plugin": ^7.14.5 + "@babel/helper-plugin-utils": ^7.14.5 peerDependencies: "@babel/core": ^7.0.0-0 - checksum: a31ca07a750a4f0b0e0daeaa0c82bc98255d8d935578d41c53354973e293b835a23c132d2edd508fb48676bbcc0efab6b6761caa8c48e32919f489558d1d0361 + checksum: 58bd3277a972a33d101d29ab4f52e964b6e8ec218eb84f764b4ea67bf8ed362909760812d3f7451ee5e54dc273bd81bc5a00cd2c13e8fb64a47ec117cb69d51b languageName: node linkType: hard -"@babel/plugin-proposal-nullish-coalescing-operator@npm:^7.12.1": - version: 7.12.1 - resolution: "@babel/plugin-proposal-nullish-coalescing-operator@npm:7.12.1" +"@babel/plugin-syntax-async-generators@npm:^7.8.4": + version: 7.8.4 + resolution: "@babel/plugin-syntax-async-generators@npm:7.8.4" dependencies: - "@babel/helper-plugin-utils": ^7.10.4 - "@babel/plugin-syntax-nullish-coalescing-operator": ^7.8.0 + "@babel/helper-plugin-utils": ^7.8.0 peerDependencies: "@babel/core": ^7.0.0-0 - checksum: 88da9cea3e3e83bd87047e13f0b6a51139d559cf59d178d496c52586d34631078f822e7d6dbcebf67ac0016d875fe58b1d0cfe19bd24b156065e48f84e7a2731 + checksum: 7ed1c1d9b9e5b64ef028ea5e755c0be2d4e5e4e3d6cf7df757b9a8c4cfa4193d268176d0f1f7fbecdda6fe722885c7fda681f480f3741d8a2d26854736f05367 languageName: node linkType: hard -"@babel/plugin-proposal-nullish-coalescing-operator@npm:^7.14.2": - version: 7.14.2 - resolution: "@babel/plugin-proposal-nullish-coalescing-operator@npm:7.14.2" +"@babel/plugin-syntax-class-properties@npm:^7.12.13": + version: 7.12.13 + resolution: "@babel/plugin-syntax-class-properties@npm:7.12.13" dependencies: - "@babel/helper-plugin-utils": ^7.13.0 - "@babel/plugin-syntax-nullish-coalescing-operator": ^7.8.3 + "@babel/helper-plugin-utils": ^7.12.13 peerDependencies: "@babel/core": ^7.0.0-0 - checksum: 4d0ca4f00092cce2bc325aa7ec6d47bed51b9863810d999f191289caf3ce954561a5823c3d85ffbee9bfa2be9aa5cf3554b118333d3097cb5463563727953e54 + checksum: 24f34b196d6342f28d4bad303612d7ff566ab0a013ce89e775d98d6f832969462e7235f3e7eaf17678a533d4be0ba45d3ae34ab4e5a9dcbda5d98d49e5efa2fc languageName: node linkType: hard -"@babel/plugin-proposal-numeric-separator@npm:^7.12.1": - version: 7.12.1 - resolution: "@babel/plugin-proposal-numeric-separator@npm:7.12.1" +"@babel/plugin-syntax-class-static-block@npm:^7.14.5": + version: 7.14.5 + resolution: "@babel/plugin-syntax-class-static-block@npm:7.14.5" dependencies: - "@babel/helper-plugin-utils": ^7.10.4 - "@babel/plugin-syntax-numeric-separator": ^7.10.4 + "@babel/helper-plugin-utils": ^7.14.5 peerDependencies: "@babel/core": ^7.0.0-0 - checksum: d5547b815a80e180ed3c10236ebebd86c432eff0827f83decf081c431dbb36e003cabd2d637090448dfbd21439519c9f75bc3f6c66ec5971d0873dfcef6adfa3 + checksum: 3e80814b5b6d4fe17826093918680a351c2d34398a914ce6e55d8083d72a9bdde4fbaf6a2dcea0e23a03de26dc2917ae3efd603d27099e2b98380345703bf948 languageName: node linkType: hard -"@babel/plugin-proposal-numeric-separator@npm:^7.14.2": - version: 7.14.2 - resolution: "@babel/plugin-proposal-numeric-separator@npm:7.14.2" +"@babel/plugin-syntax-decorators@npm:^7.14.5": + version: 7.14.5 + resolution: "@babel/plugin-syntax-decorators@npm:7.14.5" dependencies: - "@babel/helper-plugin-utils": ^7.13.0 - "@babel/plugin-syntax-numeric-separator": ^7.10.4 + "@babel/helper-plugin-utils": ^7.14.5 peerDependencies: "@babel/core": ^7.0.0-0 - checksum: 19d0bc6e2942b427864d8e15ec9a14d3d450f3982f42ab5de5fa106b2feb9a49b0103eacbfd25c04754b6b8e7c478c4e8ee289349686f71d22f9794fb3e408cb + checksum: 7e725deeba3848e8e1b57bc8a74c1a852aa253b9ffd293aa0bc043b93e1e7b669414caae3d20c653d2fab907a9388e526f2138e3783b22e49272098566cf9734 languageName: node linkType: hard -"@babel/plugin-proposal-object-rest-spread@npm:^7.12.1": - version: 7.12.1 - resolution: "@babel/plugin-proposal-object-rest-spread@npm:7.12.1" +"@babel/plugin-syntax-dynamic-import@npm:^7.8.3": + version: 7.8.3 + resolution: "@babel/plugin-syntax-dynamic-import@npm:7.8.3" dependencies: - "@babel/helper-plugin-utils": ^7.10.4 - "@babel/plugin-syntax-object-rest-spread": ^7.8.0 - "@babel/plugin-transform-parameters": ^7.12.1 + "@babel/helper-plugin-utils": ^7.8.0 peerDependencies: "@babel/core": ^7.0.0-0 - checksum: 221a41630c9a7162bf0416c71695b3f7f38482078a1d0d3af7abdc4f07ea1c9feed890399158d56c1d0278c971fe6f565ce822e9351e4481f7d98e9ff735dced + checksum: ce307af83cf433d4ec42932329fad25fa73138ab39c7436882ea28742e1c0066626d224e0ad2988724c82644e41601cef607b36194f695cb78a1fcdc959637bd languageName: node linkType: hard -"@babel/plugin-proposal-object-rest-spread@npm:^7.14.2": - version: 7.14.2 - resolution: "@babel/plugin-proposal-object-rest-spread@npm:7.14.2" +"@babel/plugin-syntax-export-namespace-from@npm:^7.8.3": + version: 7.8.3 + resolution: "@babel/plugin-syntax-export-namespace-from@npm:7.8.3" dependencies: - "@babel/compat-data": ^7.14.0 - "@babel/helper-compilation-targets": ^7.13.16 - "@babel/helper-plugin-utils": ^7.13.0 - "@babel/plugin-syntax-object-rest-spread": ^7.8.3 - "@babel/plugin-transform-parameters": ^7.14.2 + "@babel/helper-plugin-utils": ^7.8.3 peerDependencies: "@babel/core": ^7.0.0-0 - checksum: 1c57c47ba5e4fa69cd89175ef798ce73392463990b4935b22a9814936e8d86bf69636e4cfd811d4cfc4efe25cee6204044858081f1c444999b66b98208b8075a + checksum: 85740478be5b0de185228e7814451d74ab8ce0a26fcca7613955262a26e99e8e15e9da58f60c754b84515d4c679b590dbd3f2148f0f58025f4ae706f1c5a5d4a languageName: node linkType: hard -"@babel/plugin-proposal-optional-catch-binding@npm:^7.12.1": - version: 7.12.1 - resolution: "@babel/plugin-proposal-optional-catch-binding@npm:7.12.1" +"@babel/plugin-syntax-json-strings@npm:^7.8.3": + version: 7.8.3 + resolution: "@babel/plugin-syntax-json-strings@npm:7.8.3" dependencies: - "@babel/helper-plugin-utils": ^7.10.4 - "@babel/plugin-syntax-optional-catch-binding": ^7.8.0 + "@babel/helper-plugin-utils": ^7.8.0 peerDependencies: "@babel/core": ^7.0.0-0 - checksum: 964c966b51c068c80b040d4fdff9ee200e6af39629d33b224d0801ddd28684b94911d87713c77f405704282c03ed55ecffc9e65419d1080e22b4782dfc250ee1 + checksum: bf5aea1f3188c9a507e16efe030efb996853ca3cadd6512c51db7233cc58f3ac89ff8c6bdfb01d30843b161cfe7d321e1bf28da82f7ab8d7e6bc5464666f354a languageName: node linkType: hard -"@babel/plugin-proposal-optional-catch-binding@npm:^7.14.2": - version: 7.14.2 - resolution: "@babel/plugin-proposal-optional-catch-binding@npm:7.14.2" +"@babel/plugin-syntax-jsx@npm:7.14.5, @babel/plugin-syntax-jsx@npm:^7.14.5": + version: 7.14.5 + resolution: "@babel/plugin-syntax-jsx@npm:7.14.5" dependencies: - "@babel/helper-plugin-utils": ^7.13.0 - "@babel/plugin-syntax-optional-catch-binding": ^7.8.3 + "@babel/helper-plugin-utils": ^7.14.5 peerDependencies: "@babel/core": ^7.0.0-0 - checksum: b848a30f2420e8530e61628425fb37269df6d4c1871f4355cedc361515b0161fb6e5447ed2287a1aab3b56e3777a140fd5c4c2086270769d6804d0b3367ca70e + checksum: 3a2ba87534b0f9ee70eba0754d2ae544825c25afd98efb8e42b41399e02de4cc5b1f70fc5ce444fb7a7e5b09972c289eed2f00917be5b88d67407f4cbde8e960 languageName: node linkType: hard -"@babel/plugin-proposal-optional-chaining@npm:^7.12.1": - version: 7.12.1 - resolution: "@babel/plugin-proposal-optional-chaining@npm:7.12.1" +"@babel/plugin-syntax-logical-assignment-operators@npm:^7.10.4": + version: 7.10.4 + resolution: "@babel/plugin-syntax-logical-assignment-operators@npm:7.10.4" dependencies: "@babel/helper-plugin-utils": ^7.10.4 - "@babel/helper-skip-transparent-expression-wrappers": ^7.12.1 - "@babel/plugin-syntax-optional-chaining": ^7.8.0 peerDependencies: "@babel/core": ^7.0.0-0 - checksum: 2e66cdffd0acf1427b3239c6584258fd83ca9c57ca63bedefad902240600f0f9b470ced85b6cb6cb12971039882c96ff3d2b66617b8078969f5146b59f9e585e + checksum: aff33577037e34e515911255cdbb1fd39efee33658aa00b8a5fd3a4b903585112d037cce1cc9e4632f0487dc554486106b79ccd5ea63a2e00df4363f6d4ff886 languageName: node linkType: hard -"@babel/plugin-proposal-optional-chaining@npm:^7.13.12, @babel/plugin-proposal-optional-chaining@npm:^7.14.2": - version: 7.14.2 - resolution: "@babel/plugin-proposal-optional-chaining@npm:7.14.2" +"@babel/plugin-syntax-nullish-coalescing-operator@npm:^7.8.3": + version: 7.8.3 + resolution: "@babel/plugin-syntax-nullish-coalescing-operator@npm:7.8.3" dependencies: - "@babel/helper-plugin-utils": ^7.13.0 - "@babel/helper-skip-transparent-expression-wrappers": ^7.12.1 - "@babel/plugin-syntax-optional-chaining": ^7.8.3 + "@babel/helper-plugin-utils": ^7.8.0 peerDependencies: "@babel/core": ^7.0.0-0 - checksum: 29336a5170a9c363c8e80dec2d90e0e236eecfe10647eaf7baca8a48530f837b6612674d880781ff8996b07b557768a46cdecd44e944d4dad4cd7e6fa181ac84 + checksum: 87aca4918916020d1fedba54c0e232de408df2644a425d153be368313fdde40d96088feed6c4e5ab72aac89be5d07fef2ddf329a15109c5eb65df006bf2580d1 languageName: node linkType: hard -"@babel/plugin-proposal-private-methods@npm:^7.12.1": - version: 7.12.1 - resolution: "@babel/plugin-proposal-private-methods@npm:7.12.1" +"@babel/plugin-syntax-numeric-separator@npm:^7.10.4": + version: 7.10.4 + resolution: "@babel/plugin-syntax-numeric-separator@npm:7.10.4" dependencies: - "@babel/helper-create-class-features-plugin": ^7.12.1 "@babel/helper-plugin-utils": ^7.10.4 peerDependencies: "@babel/core": ^7.0.0-0 - checksum: c33a9a44e514ef98a3f90ccf3ffcd7fa634e43e1b0daa44a72cd1e924c13b614a8397220ac3d86a309e6bc2acb096fb9e557cac7a33560c5c054b4e584144178 + checksum: 01ec5547bd0497f76cc903ff4d6b02abc8c05f301c88d2622b6d834e33a5651aa7c7a3d80d8d57656a4588f7276eba357f6b7e006482f5b564b7a6488de493a1 languageName: node linkType: hard -"@babel/plugin-proposal-private-methods@npm:^7.13.0": - version: 7.13.0 - resolution: "@babel/plugin-proposal-private-methods@npm:7.13.0" +"@babel/plugin-syntax-object-rest-spread@npm:^7.8.3": + version: 7.8.3 + resolution: "@babel/plugin-syntax-object-rest-spread@npm:7.8.3" dependencies: - "@babel/helper-create-class-features-plugin": ^7.13.0 - "@babel/helper-plugin-utils": ^7.13.0 + "@babel/helper-plugin-utils": ^7.8.0 peerDependencies: "@babel/core": ^7.0.0-0 - checksum: 3c8cdc29b371d16898a0dc01dd67f4269bb6b2985e79ff11449428414a3993a52b24ab61dbfe080352548a72bab28b9e99fe2108c40eacb8f5f9dfa9cb50f7d5 + checksum: fddcf581a57f77e80eb6b981b10658421bc321ba5f0a5b754118c6a92a5448f12a0c336f77b8abf734841e102e5126d69110a306eadb03ca3e1547cab31f5cbf languageName: node linkType: hard -"@babel/plugin-proposal-private-property-in-object@npm:^7.14.0": - version: 7.14.0 - resolution: "@babel/plugin-proposal-private-property-in-object@npm:7.14.0" +"@babel/plugin-syntax-optional-catch-binding@npm:^7.8.3": + version: 7.8.3 + resolution: "@babel/plugin-syntax-optional-catch-binding@npm:7.8.3" dependencies: - "@babel/helper-annotate-as-pure": ^7.12.13 - "@babel/helper-create-class-features-plugin": ^7.14.0 - "@babel/helper-plugin-utils": ^7.13.0 - "@babel/plugin-syntax-private-property-in-object": ^7.14.0 + "@babel/helper-plugin-utils": ^7.8.0 peerDependencies: "@babel/core": ^7.0.0-0 - checksum: b29a2c137adfdf4a234a45925d104960454c996baaf6ebb76072a64f98203384023fe7c675c18077f916bca7d37c1ed5d5662f5e85de994a13bdfdf46919d229 + checksum: 910d90e72bc90ea1ce698e89c1027fed8845212d5ab588e35ef91f13b93143845f94e2539d831dc8d8ededc14ec02f04f7bd6a8179edd43a326c784e7ed7f0b9 languageName: node linkType: hard -"@babel/plugin-proposal-throw-expressions@npm:^7.12.13": - version: 7.12.13 - resolution: "@babel/plugin-proposal-throw-expressions@npm:7.12.13" +"@babel/plugin-syntax-optional-chaining@npm:^7.8.3": + version: 7.8.3 + resolution: "@babel/plugin-syntax-optional-chaining@npm:7.8.3" dependencies: - "@babel/helper-plugin-utils": ^7.12.13 - "@babel/plugin-syntax-throw-expressions": ^7.12.13 + "@babel/helper-plugin-utils": ^7.8.0 peerDependencies: "@babel/core": ^7.0.0-0 - checksum: 0e9c267aec262ecdd5ee98365602cf74ee3be194bde448fed587c4cdc2ab63bd9a95053cd0485458c3b8dc27e31f1e9946349590fd1ed84352e5efc05dd1b87c + checksum: eef94d53a1453361553c1f98b68d17782861a04a392840341bc91780838dd4e695209c783631cf0de14c635758beafb6a3a65399846ffa4386bff90639347f30 languageName: node linkType: hard -"@babel/plugin-proposal-unicode-property-regex@npm:^7.12.1, @babel/plugin-proposal-unicode-property-regex@npm:^7.4.4": - version: 7.12.1 - resolution: "@babel/plugin-proposal-unicode-property-regex@npm:7.12.1" +"@babel/plugin-syntax-private-property-in-object@npm:^7.14.5": + version: 7.14.5 + resolution: "@babel/plugin-syntax-private-property-in-object@npm:7.14.5" dependencies: - "@babel/helper-create-regexp-features-plugin": ^7.12.1 - "@babel/helper-plugin-utils": ^7.10.4 + "@babel/helper-plugin-utils": ^7.14.5 peerDependencies: "@babel/core": ^7.0.0-0 - checksum: ac8314da3d4d925f9b542210a5ee6a5134a08b8aaa54047578937786efefe8e31942e99849533404e0d339163fc876f71b9c5456ed05671c4c176a0f81fbac9e + checksum: b317174783e6e96029b743ccff2a67d63d38756876e7e5d0ba53a322e38d9ca452c13354a57de1ad476b4c066dbae699e0ca157441da611117a47af88985ecda languageName: node linkType: hard -"@babel/plugin-proposal-unicode-property-regex@npm:^7.12.13": - version: 7.12.13 - resolution: "@babel/plugin-proposal-unicode-property-regex@npm:7.12.13" +"@babel/plugin-syntax-top-level-await@npm:^7.14.5": + version: 7.14.5 + resolution: "@babel/plugin-syntax-top-level-await@npm:7.14.5" dependencies: - "@babel/helper-create-regexp-features-plugin": ^7.12.13 - "@babel/helper-plugin-utils": ^7.12.13 + "@babel/helper-plugin-utils": ^7.14.5 peerDependencies: "@babel/core": ^7.0.0-0 - checksum: c93f96c65f3ba21ad5eb203f1e47c15e1c3addf57d7a27463a82bd7487835ecc081a7ddb8602f87721ecc1a9e2f01d65ee9d286bfeb93d8e8b2c54d3897769e2 + checksum: bbd1a56b095be7820029b209677b194db9b1d26691fe999856462e66b25b281f031f3dfd91b1619e9dcf95bebe336211833b854d0fb8780d618e35667c2d0d7e languageName: node linkType: hard -"@babel/plugin-syntax-async-generators@npm:^7.8.0, @babel/plugin-syntax-async-generators@npm:^7.8.4": - version: 7.8.4 - resolution: "@babel/plugin-syntax-async-generators@npm:7.8.4" +"@babel/plugin-transform-arrow-functions@npm:^7.14.5": + version: 7.14.5 + resolution: "@babel/plugin-transform-arrow-functions@npm:7.14.5" dependencies: - "@babel/helper-plugin-utils": ^7.8.0 + "@babel/helper-plugin-utils": ^7.14.5 peerDependencies: "@babel/core": ^7.0.0-0 - checksum: 7ed1c1d9b9e5b64ef028ea5e755c0be2d4e5e4e3d6cf7df757b9a8c4cfa4193d268176d0f1f7fbecdda6fe722885c7fda681f480f3741d8a2d26854736f05367 + checksum: 126196ea0107e97f711c0d48d8d1e01a30f5a5e127628f7367658b4c5832182c4e28914294408374690c5bfbb4ad4fe6560068d8bf370cafe8d4fe23599aaa95 languageName: node linkType: hard -"@babel/plugin-syntax-class-properties@npm:^7.12.1": - version: 7.12.1 - resolution: "@babel/plugin-syntax-class-properties@npm:7.12.1" +"@babel/plugin-transform-async-to-generator@npm:^7.14.5": + version: 7.14.5 + resolution: "@babel/plugin-transform-async-to-generator@npm:7.14.5" dependencies: - "@babel/helper-plugin-utils": ^7.10.4 + "@babel/helper-module-imports": ^7.14.5 + "@babel/helper-plugin-utils": ^7.14.5 + "@babel/helper-remap-async-to-generator": ^7.14.5 peerDependencies: "@babel/core": ^7.0.0-0 - checksum: f9e60dd70bbf1e110fb4fd57356ff006e07a0218aa7b339eb20b889d097520b1a408127dfdfb73e665515674691e5b2838378e2b9b747bc90b044d31de33b6ae + checksum: 4c47016c5f65adaa5836054fcc99402f1d295aedd7ebd44e6df128a90977952f2a8abdf3b3d0aa5a9e1186184da538452c4d9a3b1482376759c6962627201da5 languageName: node linkType: hard -"@babel/plugin-syntax-class-properties@npm:^7.12.13": - version: 7.12.13 - resolution: "@babel/plugin-syntax-class-properties@npm:7.12.13" +"@babel/plugin-transform-block-scoped-functions@npm:^7.14.5": + version: 7.14.5 + resolution: "@babel/plugin-transform-block-scoped-functions@npm:7.14.5" dependencies: - "@babel/helper-plugin-utils": ^7.12.13 + "@babel/helper-plugin-utils": ^7.14.5 peerDependencies: "@babel/core": ^7.0.0-0 - checksum: 24f34b196d6342f28d4bad303612d7ff566ab0a013ce89e775d98d6f832969462e7235f3e7eaf17678a533d4be0ba45d3ae34ab4e5a9dcbda5d98d49e5efa2fc + checksum: 9994d9f107308b21be043de115fe1d06956807d93a3039ddab54333d1fbb39ad50cc5f9eccaedf5317f4699230e923662254974f3a974c4f000e986837bc020a languageName: node linkType: hard -"@babel/plugin-syntax-class-static-block@npm:^7.12.13": - version: 7.12.13 - resolution: "@babel/plugin-syntax-class-static-block@npm:7.12.13" +"@babel/plugin-transform-block-scoping@npm:^7.14.5": + version: 7.14.5 + resolution: "@babel/plugin-transform-block-scoping@npm:7.14.5" dependencies: - "@babel/helper-plugin-utils": ^7.12.13 + "@babel/helper-plugin-utils": ^7.14.5 peerDependencies: "@babel/core": ^7.0.0-0 - checksum: dc115af594e3f115eb3bdd0cc7b5f57cb1ae2beffb41aff3ee0bff78426fe0d6c18b58408c752a71312f7172a5f95005c1d8bf302269c457c52dabbaa52b999e + checksum: d317d636d0475317302e9c8b01cf9214fac3ff9353b23d0d16285f196f5c7b95b7864a8e8eaf51a3e1b650649203855f80a58b7a2caef4b0ee9793e7349a0ec5 languageName: node linkType: hard -"@babel/plugin-syntax-decorators@npm:^7.12.13": - version: 7.12.13 - resolution: "@babel/plugin-syntax-decorators@npm:7.12.13" +"@babel/plugin-transform-classes@npm:^7.14.5": + version: 7.14.5 + resolution: "@babel/plugin-transform-classes@npm:7.14.5" dependencies: - "@babel/helper-plugin-utils": ^7.12.13 + "@babel/helper-annotate-as-pure": ^7.14.5 + "@babel/helper-function-name": ^7.14.5 + "@babel/helper-optimise-call-expression": ^7.14.5 + "@babel/helper-plugin-utils": ^7.14.5 + "@babel/helper-replace-supers": ^7.14.5 + "@babel/helper-split-export-declaration": ^7.14.5 + globals: ^11.1.0 peerDependencies: "@babel/core": ^7.0.0-0 - checksum: ac7e977d8e2b3ecc7cd30e4165d280e237642d399724df48eaac52ea2dc414b1a5f23db3d95b7400ef5900d7237c0e1d54cb16fbbf215c0cd45ece0b243e71c3 + checksum: 42fc333a0d8a6a90b5c75e90d2ec21494f711ab7c58f2d074d95726cdd38f137e74653602a82d2d1a3e9bc504b5eff62418d70048514b672c9bd108bfb866e25 languageName: node linkType: hard -"@babel/plugin-syntax-dynamic-import@npm:^7.8.0, @babel/plugin-syntax-dynamic-import@npm:^7.8.3": - version: 7.8.3 - resolution: "@babel/plugin-syntax-dynamic-import@npm:7.8.3" +"@babel/plugin-transform-computed-properties@npm:^7.14.5": + version: 7.14.5 + resolution: "@babel/plugin-transform-computed-properties@npm:7.14.5" dependencies: - "@babel/helper-plugin-utils": ^7.8.0 + "@babel/helper-plugin-utils": ^7.14.5 peerDependencies: "@babel/core": ^7.0.0-0 - checksum: ce307af83cf433d4ec42932329fad25fa73138ab39c7436882ea28742e1c0066626d224e0ad2988724c82644e41601cef607b36194f695cb78a1fcdc959637bd + checksum: 87bd4c46255359ab8d53d0e9b5aa5e1ef218c1447874bd8c2eff759d3a2b5fe6b3ec55046babe0087f7e3890f6167524c729737e912080ea1c9758a559765130 languageName: node linkType: hard -"@babel/plugin-syntax-export-default-from@npm:^7.12.13": - version: 7.12.13 - resolution: "@babel/plugin-syntax-export-default-from@npm:7.12.13" +"@babel/plugin-transform-destructuring@npm:^7.14.7": + version: 7.14.7 + resolution: "@babel/plugin-transform-destructuring@npm:7.14.7" dependencies: - "@babel/helper-plugin-utils": ^7.12.13 + "@babel/helper-plugin-utils": ^7.14.5 peerDependencies: "@babel/core": ^7.0.0-0 - checksum: 2d9a14068bd6cabef014264125a422e842c976ad819d05820fa4b774dc06769998f86d574b244b198d1b2c9772d33af5f8c57fbe513c37f3820a8032d1af223f + checksum: 0b0cf8ed9fb92c53e3888c17402c4f1e8f329f05a759829b559df883b19b442d3950b7f319df419d0cff122ea76fc8b3b55779fdbb9e394e5f058419a8d5ba14 languageName: node linkType: hard -"@babel/plugin-syntax-export-namespace-from@npm:^7.8.3": - version: 7.8.3 - resolution: "@babel/plugin-syntax-export-namespace-from@npm:7.8.3" +"@babel/plugin-transform-dotall-regex@npm:^7.14.5, @babel/plugin-transform-dotall-regex@npm:^7.4.4": + version: 7.14.5 + resolution: "@babel/plugin-transform-dotall-regex@npm:7.14.5" dependencies: - "@babel/helper-plugin-utils": ^7.8.3 + "@babel/helper-create-regexp-features-plugin": ^7.14.5 + "@babel/helper-plugin-utils": ^7.14.5 peerDependencies: "@babel/core": ^7.0.0-0 - checksum: 85740478be5b0de185228e7814451d74ab8ce0a26fcca7613955262a26e99e8e15e9da58f60c754b84515d4c679b590dbd3f2148f0f58025f4ae706f1c5a5d4a + checksum: 4da3dac9580823c1fe8aaedf6109d3a26d17ad7ef7d1b278ddbcd7c148e02c465cf49250794529a34bac0bda6b53db558ae08d185a96b76efaaa17a5da3911df languageName: node linkType: hard -"@babel/plugin-syntax-function-bind@npm:^7.12.13": - version: 7.12.13 - resolution: "@babel/plugin-syntax-function-bind@npm:7.12.13" +"@babel/plugin-transform-duplicate-keys@npm:^7.14.5": + version: 7.14.5 + resolution: "@babel/plugin-transform-duplicate-keys@npm:7.14.5" dependencies: - "@babel/helper-plugin-utils": ^7.12.13 + "@babel/helper-plugin-utils": ^7.14.5 peerDependencies: "@babel/core": ^7.0.0-0 - checksum: 2edea78f674bc50da8a37deca15d2dca0f2b1d3bf001e59efb4d088b034989814fef7306c38924575206d76971cbd6772901aea310fb7dba7b39a83c87c8e8be + checksum: c6c951d2f7ed528a8103d08293d4aaf95efa38c697e7b2b27b7e6c9780280484373e2f7ef8d77daf17dffdc86748fbf75e776e0542b1c7b17e29308bc31ebd8c languageName: node linkType: hard -"@babel/plugin-syntax-function-sent@npm:^7.12.13": - version: 7.12.13 - resolution: "@babel/plugin-syntax-function-sent@npm:7.12.13" +"@babel/plugin-transform-exponentiation-operator@npm:^7.14.5": + version: 7.14.5 + resolution: "@babel/plugin-transform-exponentiation-operator@npm:7.14.5" dependencies: - "@babel/helper-plugin-utils": ^7.12.13 + "@babel/helper-builder-binary-assignment-operator-visitor": ^7.14.5 + "@babel/helper-plugin-utils": ^7.14.5 peerDependencies: "@babel/core": ^7.0.0-0 - checksum: b7edfc7aba52b1a7abfc509cc6a862616cf715274a54abac3cf0766e32816767fb7afa488076bf86352eef49938ae1260d1cf2bdceaa0db1f5e75483392f7119 + checksum: 7588a582d0bc5c80fda7f1c631354a35a9a7d284dd80ccaf2bbfd086a39a9d6461718dc7dd45a3ca59228593270a7c6a907a9cbe7ddc349d80c7342af0263c5c languageName: node linkType: hard -"@babel/plugin-syntax-json-strings@npm:^7.8.0, @babel/plugin-syntax-json-strings@npm:^7.8.3": - version: 7.8.3 - resolution: "@babel/plugin-syntax-json-strings@npm:7.8.3" +"@babel/plugin-transform-for-of@npm:^7.14.5": + version: 7.14.5 + resolution: "@babel/plugin-transform-for-of@npm:7.14.5" dependencies: - "@babel/helper-plugin-utils": ^7.8.0 + "@babel/helper-plugin-utils": ^7.14.5 peerDependencies: "@babel/core": ^7.0.0-0 - checksum: bf5aea1f3188c9a507e16efe030efb996853ca3cadd6512c51db7233cc58f3ac89ff8c6bdfb01d30843b161cfe7d321e1bf28da82f7ab8d7e6bc5464666f354a + checksum: aeb76eb11d10b2390996001e2fd529bbaf3695edd306d24e4eba87b8137c10a6afda3896017f88fcf40fd2334cc424c0a111fad34e10c747e81e577e5957e328 languageName: node linkType: hard -"@babel/plugin-syntax-jsx@npm:^7.12.1": - version: 7.12.1 - resolution: "@babel/plugin-syntax-jsx@npm:7.12.1" +"@babel/plugin-transform-function-name@npm:^7.14.5": + version: 7.14.5 + resolution: "@babel/plugin-transform-function-name@npm:7.14.5" dependencies: - "@babel/helper-plugin-utils": ^7.10.4 + "@babel/helper-function-name": ^7.14.5 + "@babel/helper-plugin-utils": ^7.14.5 peerDependencies: "@babel/core": ^7.0.0-0 - checksum: d4b9b589c484b2e0856799770f060dff34c67b24d7f4526f66309a0e0e9cf388a5c1f2c0da329d1973cc87d1b2cede8f3dc8facfac59e785d6393a003bcdd0f9 + checksum: 3db2fa1bcd21b76a91ce78db8ebca047fdadbf198f816e2621e531a751a0d40976cf2a25262dee9352fd0c53bff5b25fddefadebdbb4ba3da6d89b849ab075b6 languageName: node linkType: hard -"@babel/plugin-syntax-logical-assignment-operators@npm:^7.10.4": - version: 7.10.4 - resolution: "@babel/plugin-syntax-logical-assignment-operators@npm:7.10.4" +"@babel/plugin-transform-literals@npm:^7.14.5": + version: 7.14.5 + resolution: "@babel/plugin-transform-literals@npm:7.14.5" dependencies: - "@babel/helper-plugin-utils": ^7.10.4 + "@babel/helper-plugin-utils": ^7.14.5 peerDependencies: "@babel/core": ^7.0.0-0 - checksum: aff33577037e34e515911255cdbb1fd39efee33658aa00b8a5fd3a4b903585112d037cce1cc9e4632f0487dc554486106b79ccd5ea63a2e00df4363f6d4ff886 + checksum: 2341cfaaf8ac7199c578407ea4de41205d3d74c5a48899aa96c41b08c09d18c46d9018fdc6a2f69f0bccc2662223afc47b60130ae4ff36a79351fface71a61f3 languageName: node linkType: hard -"@babel/plugin-syntax-nullish-coalescing-operator@npm:^7.8.0, @babel/plugin-syntax-nullish-coalescing-operator@npm:^7.8.3": - version: 7.8.3 - resolution: "@babel/plugin-syntax-nullish-coalescing-operator@npm:7.8.3" +"@babel/plugin-transform-member-expression-literals@npm:^7.14.5": + version: 7.14.5 + resolution: "@babel/plugin-transform-member-expression-literals@npm:7.14.5" dependencies: - "@babel/helper-plugin-utils": ^7.8.0 - peerDependencies: - "@babel/core": ^7.0.0-0 - checksum: 87aca4918916020d1fedba54c0e232de408df2644a425d153be368313fdde40d96088feed6c4e5ab72aac89be5d07fef2ddf329a15109c5eb65df006bf2580d1 - languageName: node - linkType: hard - -"@babel/plugin-syntax-numeric-separator@npm:^7.10.4": - version: 7.10.4 - resolution: "@babel/plugin-syntax-numeric-separator@npm:7.10.4" - dependencies: - "@babel/helper-plugin-utils": ^7.10.4 - peerDependencies: - "@babel/core": ^7.0.0-0 - checksum: 01ec5547bd0497f76cc903ff4d6b02abc8c05f301c88d2622b6d834e33a5651aa7c7a3d80d8d57656a4588f7276eba357f6b7e006482f5b564b7a6488de493a1 - languageName: node - linkType: hard - -"@babel/plugin-syntax-object-rest-spread@npm:^7.8.0, @babel/plugin-syntax-object-rest-spread@npm:^7.8.3": - version: 7.8.3 - resolution: "@babel/plugin-syntax-object-rest-spread@npm:7.8.3" - dependencies: - "@babel/helper-plugin-utils": ^7.8.0 - peerDependencies: - "@babel/core": ^7.0.0-0 - checksum: fddcf581a57f77e80eb6b981b10658421bc321ba5f0a5b754118c6a92a5448f12a0c336f77b8abf734841e102e5126d69110a306eadb03ca3e1547cab31f5cbf - languageName: node - linkType: hard - -"@babel/plugin-syntax-optional-catch-binding@npm:^7.8.0, @babel/plugin-syntax-optional-catch-binding@npm:^7.8.3": - version: 7.8.3 - resolution: "@babel/plugin-syntax-optional-catch-binding@npm:7.8.3" - dependencies: - "@babel/helper-plugin-utils": ^7.8.0 - peerDependencies: - "@babel/core": ^7.0.0-0 - checksum: 910d90e72bc90ea1ce698e89c1027fed8845212d5ab588e35ef91f13b93143845f94e2539d831dc8d8ededc14ec02f04f7bd6a8179edd43a326c784e7ed7f0b9 - languageName: node - linkType: hard - -"@babel/plugin-syntax-optional-chaining@npm:^7.8.0, @babel/plugin-syntax-optional-chaining@npm:^7.8.3": - version: 7.8.3 - resolution: "@babel/plugin-syntax-optional-chaining@npm:7.8.3" - dependencies: - "@babel/helper-plugin-utils": ^7.8.0 - peerDependencies: - "@babel/core": ^7.0.0-0 - checksum: eef94d53a1453361553c1f98b68d17782861a04a392840341bc91780838dd4e695209c783631cf0de14c635758beafb6a3a65399846ffa4386bff90639347f30 - languageName: node - linkType: hard - -"@babel/plugin-syntax-private-property-in-object@npm:^7.14.0": - version: 7.14.0 - resolution: "@babel/plugin-syntax-private-property-in-object@npm:7.14.0" - dependencies: - "@babel/helper-plugin-utils": ^7.13.0 - peerDependencies: - "@babel/core": ^7.0.0-0 - checksum: 71952c6da1922034e02be59aa7e6fbe9b399e67d36b2ab68fe69c9bdca824564ffe35de89142fe81620f0531f06897cb0d57e37b2406bfc63340f194a181eb5e - languageName: node - linkType: hard - -"@babel/plugin-syntax-throw-expressions@npm:^7.12.13": - version: 7.12.13 - resolution: "@babel/plugin-syntax-throw-expressions@npm:7.12.13" - dependencies: - "@babel/helper-plugin-utils": ^7.12.13 - peerDependencies: - "@babel/core": ^7.0.0-0 - checksum: 3a556251a4ee02a90eaa3d6d51faceec4a3ca551626d5ff6a0eb92a92305485f22c3d795e861c3a569cd7ab44062ad213082bb012d9115a67f95af119cd3440c - languageName: node - linkType: hard - -"@babel/plugin-syntax-top-level-await@npm:^7.12.1": - version: 7.12.1 - resolution: "@babel/plugin-syntax-top-level-await@npm:7.12.1" - dependencies: - "@babel/helper-plugin-utils": ^7.10.4 - peerDependencies: - "@babel/core": ^7.0.0-0 - checksum: 3723996f26bbb704b7fce0a1452099835e9b997c81048f9b4652e6f30a581c48dbb6d4839218bf82fb2ce94639e6ea3c9a47602af3e4a01020eac2951be14683 - languageName: node - linkType: hard - -"@babel/plugin-syntax-top-level-await@npm:^7.12.13": - version: 7.12.13 - resolution: "@babel/plugin-syntax-top-level-await@npm:7.12.13" - dependencies: - "@babel/helper-plugin-utils": ^7.12.13 - peerDependencies: - "@babel/core": ^7.0.0-0 - checksum: 74cf8c8b8715ec0de6c55b96af4907cfa3bbf87dbaecdc4c30acac8c30d281d62c578001faf8f99e1884e1ccb933f5a919eb184c542b92fcef7bdefe64482c39 - languageName: node - linkType: hard - -"@babel/plugin-transform-arrow-functions@npm:^7.12.1": - version: 7.12.1 - resolution: "@babel/plugin-transform-arrow-functions@npm:7.12.1" - dependencies: - "@babel/helper-plugin-utils": ^7.10.4 - peerDependencies: - "@babel/core": ^7.0.0-0 - checksum: 62340c8a6c8e0e5a518a8e6c19aee872ecc7053498010579869526e9c7798762eb0d6f9ef65c1726be045212bd8678db9e86c8d704d5ea450c99196b218981b7 - languageName: node - linkType: hard - -"@babel/plugin-transform-arrow-functions@npm:^7.13.0": - version: 7.13.0 - resolution: "@babel/plugin-transform-arrow-functions@npm:7.13.0" - dependencies: - "@babel/helper-plugin-utils": ^7.13.0 - peerDependencies: - "@babel/core": ^7.0.0-0 - checksum: cbff8005c7f855990e0a1d9ce3e9d8836118bcc53da5e27f8449d89e1328ec0abbd91e16520f6eb60d8c95c037acddef246a6c84ec2d1ab6ae838d20691c933b - languageName: node - linkType: hard - -"@babel/plugin-transform-async-to-generator@npm:^7.12.1": - version: 7.12.1 - resolution: "@babel/plugin-transform-async-to-generator@npm:7.12.1" - dependencies: - "@babel/helper-module-imports": ^7.12.1 - "@babel/helper-plugin-utils": ^7.10.4 - "@babel/helper-remap-async-to-generator": ^7.12.1 - peerDependencies: - "@babel/core": ^7.0.0-0 - checksum: 18e426e930db889ef7496ba1120de9b632ad55106786ff417b0f39def97f70bdbf8309525375b1f74f8790e4ef6bf1020db24fbdeef1d6477cc9f5099ebd93ef - languageName: node - linkType: hard - -"@babel/plugin-transform-async-to-generator@npm:^7.13.0": - version: 7.13.0 - resolution: "@babel/plugin-transform-async-to-generator@npm:7.13.0" - dependencies: - "@babel/helper-module-imports": ^7.12.13 - "@babel/helper-plugin-utils": ^7.13.0 - "@babel/helper-remap-async-to-generator": ^7.13.0 - peerDependencies: - "@babel/core": ^7.0.0-0 - checksum: d2c5930781d7a5b93fcbec2b28e6de2fe5af44263840310e9042402e832829844bab4c2e561bf48e3538ad4c77264b4896fd679e930c8c489f760719c6050c85 - languageName: node - linkType: hard - -"@babel/plugin-transform-block-scoped-functions@npm:^7.12.1": - version: 7.12.1 - resolution: "@babel/plugin-transform-block-scoped-functions@npm:7.12.1" - dependencies: - "@babel/helper-plugin-utils": ^7.10.4 - peerDependencies: - "@babel/core": ^7.0.0-0 - checksum: ebef3feb875d7d517ecc2af45b6bef4b5fc61173158217038bcf99de8a2e13e6c0b316790b577817088cb45afe6d4e43cce14d74b16138d95a3fa1e7f67c4381 - languageName: node - linkType: hard - -"@babel/plugin-transform-block-scoped-functions@npm:^7.12.13": - version: 7.12.13 - resolution: "@babel/plugin-transform-block-scoped-functions@npm:7.12.13" - dependencies: - "@babel/helper-plugin-utils": ^7.12.13 - peerDependencies: - "@babel/core": ^7.0.0-0 - checksum: a0e843afe18a83308a786e8838f9aa2274ffee3b3385c62d61ccc36267273b043700c180050cc944af64281c55870ba7a1eaed6d2866ca1bbc59789c42a86d6f - languageName: node - linkType: hard - -"@babel/plugin-transform-block-scoping@npm:^7.12.1": - version: 7.12.1 - resolution: "@babel/plugin-transform-block-scoping@npm:7.12.1" - dependencies: - "@babel/helper-plugin-utils": ^7.10.4 - peerDependencies: - "@babel/core": ^7.0.0-0 - checksum: e86f32f74d4d7482ce695c7975b2dce37fe3790d6cadf927432cbb20f3efc0a2c9a3d7c27779f24f4f8b6e126c6c5ac6a614762f41f4493bf32396dac03c8e23 - languageName: node - linkType: hard - -"@babel/plugin-transform-block-scoping@npm:^7.14.2": - version: 7.14.2 - resolution: "@babel/plugin-transform-block-scoping@npm:7.14.2" - dependencies: - "@babel/helper-plugin-utils": ^7.13.0 - peerDependencies: - "@babel/core": ^7.0.0-0 - checksum: 931d483cc2294201b2308464417fd8087111272cfdc5b9b0ee6643567dfed9db0f38b2bc446a7515e37aa1bc733931f02f43812f7d64189cd798b9b57aaedce5 - languageName: node - linkType: hard - -"@babel/plugin-transform-classes@npm:^7.12.1": - version: 7.12.1 - resolution: "@babel/plugin-transform-classes@npm:7.12.1" - dependencies: - "@babel/helper-annotate-as-pure": ^7.10.4 - "@babel/helper-define-map": ^7.10.4 - "@babel/helper-function-name": ^7.10.4 - "@babel/helper-optimise-call-expression": ^7.10.4 - "@babel/helper-plugin-utils": ^7.10.4 - "@babel/helper-replace-supers": ^7.12.1 - "@babel/helper-split-export-declaration": ^7.10.4 - globals: ^11.1.0 - peerDependencies: - "@babel/core": ^7.0.0-0 - checksum: 9c43d6f045892bfbbf505f485f750e7e3d380f9bb02fa1337b255c5402a9ae3b62283eec3a7a53a373f6693d76fae3e465ba09ee940edf825141f049cf4e5981 - languageName: node - linkType: hard - -"@babel/plugin-transform-classes@npm:^7.14.2": - version: 7.14.2 - resolution: "@babel/plugin-transform-classes@npm:7.14.2" - dependencies: - "@babel/helper-annotate-as-pure": ^7.12.13 - "@babel/helper-function-name": ^7.14.2 - "@babel/helper-optimise-call-expression": ^7.12.13 - "@babel/helper-plugin-utils": ^7.13.0 - "@babel/helper-replace-supers": ^7.13.12 - "@babel/helper-split-export-declaration": ^7.12.13 - globals: ^11.1.0 - peerDependencies: - "@babel/core": ^7.0.0-0 - checksum: 4fae4740c5610d7d4b726da27c50fb34d3bdc687bb3416827c64caa4aa258f3c9d85bba1376ce77cab75b5e3d360291dd93455350364bc669788fe0fc1ecef93 - languageName: node - linkType: hard - -"@babel/plugin-transform-computed-properties@npm:^7.12.1": - version: 7.12.1 - resolution: "@babel/plugin-transform-computed-properties@npm:7.12.1" - dependencies: - "@babel/helper-plugin-utils": ^7.10.4 - peerDependencies: - "@babel/core": ^7.0.0-0 - checksum: 61a13ef4179fb1ae0fa8802ab35ae2dc8f41f0201ea3e7689ff65c6a1d7c14a9293c77b7817d4c7361b06014ae1483268e5e52fe7dc2a584634afb101330a824 - languageName: node - linkType: hard - -"@babel/plugin-transform-computed-properties@npm:^7.13.0": - version: 7.13.0 - resolution: "@babel/plugin-transform-computed-properties@npm:7.13.0" - dependencies: - "@babel/helper-plugin-utils": ^7.13.0 - peerDependencies: - "@babel/core": ^7.0.0-0 - checksum: 258663c9f10b28f91dbedf17dc1346fc7b0341db859bbd6fe199bb663f97f65cfd33673728939a5008ac7a600afeaba79851a0fdb65b5d2e434e4e3a697d26af - languageName: node - linkType: hard - -"@babel/plugin-transform-destructuring@npm:^7.12.1": - version: 7.12.1 - resolution: "@babel/plugin-transform-destructuring@npm:7.12.1" - dependencies: - "@babel/helper-plugin-utils": ^7.10.4 - peerDependencies: - "@babel/core": ^7.0.0-0 - checksum: dea122d6e539214e4b7622aa43e7252b0aa8a6771fe4fbd5f90c9ffbee3591275c149d7e5a24fbcc4e8de3cd6e9f7d29769c3be74c8e786cf3c726d15af20c7d - languageName: node - linkType: hard - -"@babel/plugin-transform-destructuring@npm:^7.13.17": - version: 7.13.17 - resolution: "@babel/plugin-transform-destructuring@npm:7.13.17" - dependencies: - "@babel/helper-plugin-utils": ^7.13.0 - peerDependencies: - "@babel/core": ^7.0.0-0 - checksum: 04d2bfdb2903b48d5484b59d88e7837c13ba82228e9f2c6fba360bbb214bbf486a1a69dd8bfce74c0628236f90789828ae3ebd6f2b022b3bb30153f1b952f699 - languageName: node - linkType: hard - -"@babel/plugin-transform-dotall-regex@npm:^7.12.1, @babel/plugin-transform-dotall-regex@npm:^7.4.4": - version: 7.12.1 - resolution: "@babel/plugin-transform-dotall-regex@npm:7.12.1" - dependencies: - "@babel/helper-create-regexp-features-plugin": ^7.12.1 - "@babel/helper-plugin-utils": ^7.10.4 - peerDependencies: - "@babel/core": ^7.0.0-0 - checksum: 32da63c81ce9f731c8b2c810115a481dead9e1ddbeea417a0b610ad7d4be29cc14ef0eec709cee3ee95e235b0e382b348eb0aa7964f0e0b6b75850727ab9cbed - languageName: node - linkType: hard - -"@babel/plugin-transform-dotall-regex@npm:^7.12.13": - version: 7.12.13 - resolution: "@babel/plugin-transform-dotall-regex@npm:7.12.13" - dependencies: - "@babel/helper-create-regexp-features-plugin": ^7.12.13 - "@babel/helper-plugin-utils": ^7.12.13 - peerDependencies: - "@babel/core": ^7.0.0-0 - checksum: 084f028be4a1e534b8b4e96176656fca2a2d2603564f7df434934d11b7cd154feaae8f12a443f5522c9d09e96b4214194d1bc84745832b6ff4029a8eef85879a - languageName: node - linkType: hard - -"@babel/plugin-transform-duplicate-keys@npm:^7.12.1": - version: 7.12.1 - resolution: "@babel/plugin-transform-duplicate-keys@npm:7.12.1" - dependencies: - "@babel/helper-plugin-utils": ^7.10.4 - peerDependencies: - "@babel/core": ^7.0.0-0 - checksum: 6c94d977eb1fcd22494eab158d787703c6d34eb5bef26b33c8730e148a9ebdc9e924c7b046fec2cb448dc3ee6f6dcc5add5b9bd99159afe4851cd1a7172be60c - languageName: node - linkType: hard - -"@babel/plugin-transform-duplicate-keys@npm:^7.12.13": - version: 7.12.13 - resolution: "@babel/plugin-transform-duplicate-keys@npm:7.12.13" - dependencies: - "@babel/helper-plugin-utils": ^7.12.13 - peerDependencies: - "@babel/core": ^7.0.0-0 - checksum: 11a7a5f905ab4a2cef70eae6ee01d700fd6c8c7d83ffca3b5bca6c95dc4e367c2b44780b1f765f3d4f1719429c90fdac54cc314c54ce3d9e480b22bcc45fc261 - languageName: node - linkType: hard - -"@babel/plugin-transform-exponentiation-operator@npm:^7.12.1": - version: 7.12.1 - resolution: "@babel/plugin-transform-exponentiation-operator@npm:7.12.1" - dependencies: - "@babel/helper-builder-binary-assignment-operator-visitor": ^7.10.4 - "@babel/helper-plugin-utils": ^7.10.4 - peerDependencies: - "@babel/core": ^7.0.0-0 - checksum: 97d393607edb93a90200202aad06781738783b7920454745238d34d531ff1b9822c2b51e86e101257f3d2c2606abf675055d3e45d7055a4876d88cee50249b7f - languageName: node - linkType: hard - -"@babel/plugin-transform-exponentiation-operator@npm:^7.12.13": - version: 7.12.13 - resolution: "@babel/plugin-transform-exponentiation-operator@npm:7.12.13" - dependencies: - "@babel/helper-builder-binary-assignment-operator-visitor": ^7.12.13 - "@babel/helper-plugin-utils": ^7.12.13 - peerDependencies: - "@babel/core": ^7.0.0-0 - checksum: 5e7db7df2ad944ab52f7669a70a2a1d58a6af239be9cbe46cf2b85291d848fce27923f4f5e6594cce813ea3a7d3ce7a124db490ab18b88061c463e86f67eb9d7 - languageName: node - linkType: hard - -"@babel/plugin-transform-for-of@npm:^7.12.1": - version: 7.12.1 - resolution: "@babel/plugin-transform-for-of@npm:7.12.1" - dependencies: - "@babel/helper-plugin-utils": ^7.10.4 - peerDependencies: - "@babel/core": ^7.0.0-0 - checksum: 791c5b91406c5fc7448cce1d6d590a2f32dcc294d131f1458830b292ece88623fabe1717a3f56e8963a39a83ce9a117003560e464144cab0980e4bcd3ae0a61d - languageName: node - linkType: hard - -"@babel/plugin-transform-for-of@npm:^7.13.0": - version: 7.13.0 - resolution: "@babel/plugin-transform-for-of@npm:7.13.0" - dependencies: - "@babel/helper-plugin-utils": ^7.13.0 - peerDependencies: - "@babel/core": ^7.0.0-0 - checksum: 9441f12520b2446f7ec2010f7b5cb6c193ba71b8bb65359b85e7e8616783d830850a4ac05d966f720497e6621835cf27ab8ff967db28c59c5535b6b311672e8f - languageName: node - linkType: hard - -"@babel/plugin-transform-function-name@npm:^7.12.1": - version: 7.12.1 - resolution: "@babel/plugin-transform-function-name@npm:7.12.1" - dependencies: - "@babel/helper-function-name": ^7.10.4 - "@babel/helper-plugin-utils": ^7.10.4 - peerDependencies: - "@babel/core": ^7.0.0-0 - checksum: 706195378f4a032698749dd01a9073c399159e5899ab28c6933f4a61522c8101ce102a1a2502da903398d10df621f03a35980a3bcb3b9c1c47a30c4905f37f23 - languageName: node - linkType: hard - -"@babel/plugin-transform-function-name@npm:^7.12.13": - version: 7.12.13 - resolution: "@babel/plugin-transform-function-name@npm:7.12.13" - dependencies: - "@babel/helper-function-name": ^7.12.13 - "@babel/helper-plugin-utils": ^7.12.13 - peerDependencies: - "@babel/core": ^7.0.0-0 - checksum: 1330ba357664efd17050bc89a2c3a0bc0c31aa82c4aa42616fbbfdf6aff2093aa2f07a8f486fde493fa3859a8b6f2986b5a583cf392bfa8ddfcd47a71f05d253 - languageName: node - linkType: hard - -"@babel/plugin-transform-literals@npm:^7.12.1": - version: 7.12.1 - resolution: "@babel/plugin-transform-literals@npm:7.12.1" - dependencies: - "@babel/helper-plugin-utils": ^7.10.4 - peerDependencies: - "@babel/core": ^7.0.0-0 - checksum: b5db2c5a700b8a288b9c80e1ead44d449ee109f674587592eaa1a91c8ae4384369bd55f2741216c3e0577ebd157c019b40483133657e74952952d75e3dff27f0 - languageName: node - linkType: hard - -"@babel/plugin-transform-literals@npm:^7.12.13": - version: 7.12.13 - resolution: "@babel/plugin-transform-literals@npm:7.12.13" - dependencies: - "@babel/helper-plugin-utils": ^7.12.13 - peerDependencies: - "@babel/core": ^7.0.0-0 - checksum: 13ac72edd9c960d0d248c6a73fa2ba7b748e5051a21fd409cb48ab9d133b852ef0d281d6dc6f803e8b619236284d8171c50f025b7721aff9bf719ec39792521c - languageName: node - linkType: hard - -"@babel/plugin-transform-member-expression-literals@npm:^7.12.1": - version: 7.12.1 - resolution: "@babel/plugin-transform-member-expression-literals@npm:7.12.1" - dependencies: - "@babel/helper-plugin-utils": ^7.10.4 - peerDependencies: - "@babel/core": ^7.0.0-0 - checksum: a0c860a5cce79eb10f6463d36d9462705fdc600150d838f1b400435568ec4b8016b5e88f80262f243f7e6213ccd5b7e5b3ff58c6c2a6cb1ef155d647ee61d4ae - languageName: node - linkType: hard - -"@babel/plugin-transform-member-expression-literals@npm:^7.12.13": - version: 7.12.13 - resolution: "@babel/plugin-transform-member-expression-literals@npm:7.12.13" - dependencies: - "@babel/helper-plugin-utils": ^7.12.13 - peerDependencies: - "@babel/core": ^7.0.0-0 - checksum: 922d24402d6d79aef19ab53879f45cb0ae4dd6756634d36bd77e8fc95d2003fab7b156e41dd7fccca1dd296363ba43c14b5344ded282e17e9fd9f02701a2f54e - languageName: node - linkType: hard - -"@babel/plugin-transform-modules-amd@npm:^7.12.1": - version: 7.12.1 - resolution: "@babel/plugin-transform-modules-amd@npm:7.12.1" - dependencies: - "@babel/helper-module-transforms": ^7.12.1 - "@babel/helper-plugin-utils": ^7.10.4 - babel-plugin-dynamic-import-node: ^2.3.3 - peerDependencies: - "@babel/core": ^7.0.0-0 - checksum: 66e5731ced7224057646c13aa5ed140d58d3a08c8b35e75644815b9ff7c514ad3337effcf368fd63395bca08e7299e9f041415e43a643a5124d813b8b1089263 - languageName: node - linkType: hard - -"@babel/plugin-transform-modules-amd@npm:^7.14.2": - version: 7.14.2 - resolution: "@babel/plugin-transform-modules-amd@npm:7.14.2" - dependencies: - "@babel/helper-module-transforms": ^7.14.2 - "@babel/helper-plugin-utils": ^7.13.0 - babel-plugin-dynamic-import-node: ^2.3.3 - peerDependencies: - "@babel/core": ^7.0.0-0 - checksum: c65b72b99012aeab906098a5911f2e9889df314be626c625934e0fcc65c7851413d97aee76e2c6cdf57c812dc9dad51d1f938c9f78dbb901780936d75106636f - languageName: node - linkType: hard - -"@babel/plugin-transform-modules-commonjs@npm:^7.12.1": - version: 7.12.1 - resolution: "@babel/plugin-transform-modules-commonjs@npm:7.12.1" - dependencies: - "@babel/helper-module-transforms": ^7.12.1 - "@babel/helper-plugin-utils": ^7.10.4 - "@babel/helper-simple-access": ^7.12.1 - babel-plugin-dynamic-import-node: ^2.3.3 - peerDependencies: - "@babel/core": ^7.0.0-0 - checksum: b1b2712d1a62f64d72bfa90bb1f3b68bc72c9d4c7e7adffd46e6ffcc9e9a79d3f811d6e0aed7433ff0f7d868703d048f62fc64d4542a9d964776318f70ed97aa - languageName: node - linkType: hard - -"@babel/plugin-transform-modules-commonjs@npm:^7.14.0": - version: 7.14.0 - resolution: "@babel/plugin-transform-modules-commonjs@npm:7.14.0" - dependencies: - "@babel/helper-module-transforms": ^7.14.0 - "@babel/helper-plugin-utils": ^7.13.0 - "@babel/helper-simple-access": ^7.13.12 - babel-plugin-dynamic-import-node: ^2.3.3 - peerDependencies: - "@babel/core": ^7.0.0-0 - checksum: e0713913fb6cc01c7862d12f0d035d10d37b791f52be1ed191a734c40b0f99dbe904fb19772959b31cbf288ad45a2f5b03f75d935f95ec58a948e59b957d39ac - languageName: node - linkType: hard - -"@babel/plugin-transform-modules-systemjs@npm:^7.12.1": - version: 7.12.1 - resolution: "@babel/plugin-transform-modules-systemjs@npm:7.12.1" - dependencies: - "@babel/helper-hoist-variables": ^7.10.4 - "@babel/helper-module-transforms": ^7.12.1 - "@babel/helper-plugin-utils": ^7.10.4 - "@babel/helper-validator-identifier": ^7.10.4 - babel-plugin-dynamic-import-node: ^2.3.3 - peerDependencies: - "@babel/core": ^7.0.0-0 - checksum: cec526c8d8fee53cc102858c3a7ccf46ade74cabfda081129879bfbcbcf42093828ecaf0c05f8c90e7e99a8644f56ac6dca80272bbdf97a13519bb37b44c9296 - languageName: node - linkType: hard - -"@babel/plugin-transform-modules-systemjs@npm:^7.13.8": - version: 7.13.8 - resolution: "@babel/plugin-transform-modules-systemjs@npm:7.13.8" - dependencies: - "@babel/helper-hoist-variables": ^7.13.0 - "@babel/helper-module-transforms": ^7.13.0 - "@babel/helper-plugin-utils": ^7.13.0 - "@babel/helper-validator-identifier": ^7.12.11 - babel-plugin-dynamic-import-node: ^2.3.3 - peerDependencies: - "@babel/core": ^7.0.0-0 - checksum: 36628a3398bebd138c23adb4ad2505ddfecd0f9a8fce3915a727f9bb9afac3a42b94d0bed73a79e3cd34b21eb9dbd3baebd212299302e567a856ba870b0deff8 - languageName: node - linkType: hard - -"@babel/plugin-transform-modules-umd@npm:^7.12.1": - version: 7.12.1 - resolution: "@babel/plugin-transform-modules-umd@npm:7.12.1" - dependencies: - "@babel/helper-module-transforms": ^7.12.1 - "@babel/helper-plugin-utils": ^7.10.4 - peerDependencies: - "@babel/core": ^7.0.0-0 - checksum: cc3bdc8503a04bd87b09009bb18b32a0bb3d1cbad857933a487b5ddcf643dd31e3116788fa49f484fb27985b33036cf107bf673633e06914a8c41172f25b127a - languageName: node - linkType: hard - -"@babel/plugin-transform-modules-umd@npm:^7.14.0": - version: 7.14.0 - resolution: "@babel/plugin-transform-modules-umd@npm:7.14.0" - dependencies: - "@babel/helper-module-transforms": ^7.14.0 - "@babel/helper-plugin-utils": ^7.13.0 - peerDependencies: - "@babel/core": ^7.0.0-0 - checksum: cc9fab66aaf36a6a5113414028ed9c000daf13aa191a0d9529293ed096251c1782ed4eee489aaad94f1c531cb87c4fe9c1e230cde9afc33685230016a514889d - languageName: node - linkType: hard - -"@babel/plugin-transform-named-capturing-groups-regex@npm:^7.12.1": - version: 7.12.1 - resolution: "@babel/plugin-transform-named-capturing-groups-regex@npm:7.12.1" - dependencies: - "@babel/helper-create-regexp-features-plugin": ^7.12.1 - peerDependencies: - "@babel/core": ^7.0.0 - checksum: da6645f5410fc23dea43afdaf04da89f210a8db1a96738ef4338a97f298fc7ad0295cec0b7d8506bd564b8df6e2e5b29ae1fc258d649eb5968e13f98f00d03ce - languageName: node - linkType: hard - -"@babel/plugin-transform-named-capturing-groups-regex@npm:^7.12.13": - version: 7.12.13 - resolution: "@babel/plugin-transform-named-capturing-groups-regex@npm:7.12.13" - dependencies: - "@babel/helper-create-regexp-features-plugin": ^7.12.13 - peerDependencies: - "@babel/core": ^7.0.0 - checksum: 8ef970be543c3c52a58171f98359472b7015a1572fd19005d7a98f2d783d80b5c7f99ebeaf2cc531e034ccf83baad80927722d9b1067eb1d1033b9292d265cdd - languageName: node - linkType: hard - -"@babel/plugin-transform-new-target@npm:^7.12.1": - version: 7.12.1 - resolution: "@babel/plugin-transform-new-target@npm:7.12.1" - dependencies: - "@babel/helper-plugin-utils": ^7.10.4 - peerDependencies: - "@babel/core": ^7.0.0-0 - checksum: f8150606d23b427d82bd6add54e3ff0c7c9110b82e002ec23859f7787f1fdd475d8eb770e2253a2a98168134482d34b3b741d78fbc865941f0669aeffc147589 - languageName: node - linkType: hard - -"@babel/plugin-transform-new-target@npm:^7.12.13": - version: 7.12.13 - resolution: "@babel/plugin-transform-new-target@npm:7.12.13" - dependencies: - "@babel/helper-plugin-utils": ^7.12.13 - peerDependencies: - "@babel/core": ^7.0.0-0 - checksum: ecc3d910d42dac6bc2e02fa2e58285c1bf8c79295172fbbade8b13217f3d305209f24c29ff93c28745122b46fdbb93aaea9e9ebd390337a36949ddc48d1e1da8 - languageName: node - linkType: hard - -"@babel/plugin-transform-object-super@npm:^7.12.1": - version: 7.12.1 - resolution: "@babel/plugin-transform-object-super@npm:7.12.1" - dependencies: - "@babel/helper-plugin-utils": ^7.10.4 - "@babel/helper-replace-supers": ^7.12.1 - peerDependencies: - "@babel/core": ^7.0.0-0 - checksum: e4524734aa47c0ab04eff6edd5cfd35c5af87afc5d7851699b8be40e3834024635c955dc046e173bf82af4561aa340844ca2387329056e5c099225a4cd80ce23 - languageName: node - linkType: hard - -"@babel/plugin-transform-object-super@npm:^7.12.13": - version: 7.12.13 - resolution: "@babel/plugin-transform-object-super@npm:7.12.13" - dependencies: - "@babel/helper-plugin-utils": ^7.12.13 - "@babel/helper-replace-supers": ^7.12.13 - peerDependencies: - "@babel/core": ^7.0.0-0 - checksum: 558d660ad0d8121da3c6f874a06335309009a329179642f50afe2ff1b6a326cc552c849711dae79a8a755ca3c640e17cfc1a4fa58bd731c6c84b65dceca2e80d - languageName: node - linkType: hard - -"@babel/plugin-transform-parameters@npm:^7.12.1": - version: 7.12.1 - resolution: "@babel/plugin-transform-parameters@npm:7.12.1" - dependencies: - "@babel/helper-plugin-utils": ^7.10.4 - peerDependencies: - "@babel/core": ^7.0.0-0 - checksum: 204de6ef75ec45869d1e054489bacd9badaadf92d7c3560a4b2c6819990490b4fd5242307db3d3dd04b8ecb9da8a03ef76e57de9bd66b8299e26b04db4df5fbf - languageName: node - linkType: hard - -"@babel/plugin-transform-parameters@npm:^7.14.2": - version: 7.14.2 - resolution: "@babel/plugin-transform-parameters@npm:7.14.2" - dependencies: - "@babel/helper-plugin-utils": ^7.13.0 - peerDependencies: - "@babel/core": ^7.0.0-0 - checksum: 82e7470b0a525da09531b78203c469c1b255ecbe9b527f700378335c76667d3106d2363fc553fcb743314da072dd73740dc07d41429e48c70390fe226c9b08c4 - languageName: node - linkType: hard - -"@babel/plugin-transform-property-literals@npm:^7.12.1": - version: 7.12.1 - resolution: "@babel/plugin-transform-property-literals@npm:7.12.1" - dependencies: - "@babel/helper-plugin-utils": ^7.10.4 - peerDependencies: - "@babel/core": ^7.0.0-0 - checksum: c66eecec27a00a7d1869e3f4aa627e5e4910042ad3059c830b16dde7bebc4621bedaf02069b5046ded0d963e7ebf0087461621f9ec8ce2a5a71f26cb949079e3 - languageName: node - linkType: hard - -"@babel/plugin-transform-property-literals@npm:^7.12.13": - version: 7.12.13 - resolution: "@babel/plugin-transform-property-literals@npm:7.12.13" - dependencies: - "@babel/helper-plugin-utils": ^7.12.13 - peerDependencies: - "@babel/core": ^7.0.0-0 - checksum: a6cca236d52d7ba7e506bf9448ff7ef9ac135e7c912aaa882a2f6cb8cda2acf97fc7f87fc0975f0375848db64151e1bf4f370aad0e88501a33c8848f1b838705 - languageName: node - linkType: hard - -"@babel/plugin-transform-react-constant-elements@npm:^7.12.1": - version: 7.12.1 - resolution: "@babel/plugin-transform-react-constant-elements@npm:7.12.1" - dependencies: - "@babel/helper-plugin-utils": ^7.10.4 - peerDependencies: - "@babel/core": ^7.0.0-0 - checksum: fae40b681c7e3f369019f98f02b48ac838d3e21fc481933e51a17480d61e4d1d97e6ae2663bcfc348fe65bb6e2238599827b9a2d80cf0fcc61f50ab38ab8f238 - languageName: node - linkType: hard - -"@babel/plugin-transform-react-display-name@npm:^7.12.1": - version: 7.12.1 - resolution: "@babel/plugin-transform-react-display-name@npm:7.12.1" - dependencies: - "@babel/helper-plugin-utils": ^7.10.4 + "@babel/helper-plugin-utils": ^7.14.5 peerDependencies: "@babel/core": ^7.0.0-0 - checksum: 53a4cc0b0ae0588c6a7d8745b5aedb04fd2e5848632f5bad2d4d864bcd3be8ffe67ba17b351676dbd807cfecaeb5c6f7cbf292eab3c47682d22bd1594479c8a2 + checksum: a94ff910e8d0e28effd58c64f2d15c9772ea4c209644f116fd81dc5c93ce232304f42ef14d5ec2baf095c824786698fcf6c1d4c91952dc3762350f4ec0eb1f17 languageName: node linkType: hard -"@babel/plugin-transform-react-jsx-development@npm:^7.12.7": - version: 7.12.11 - resolution: "@babel/plugin-transform-react-jsx-development@npm:7.12.11" +"@babel/plugin-transform-modules-amd@npm:^7.14.5": + version: 7.14.5 + resolution: "@babel/plugin-transform-modules-amd@npm:7.14.5" dependencies: - "@babel/helper-builder-react-jsx-experimental": ^7.12.11 - "@babel/helper-plugin-utils": ^7.10.4 - "@babel/plugin-syntax-jsx": ^7.12.1 + "@babel/helper-module-transforms": ^7.14.5 + "@babel/helper-plugin-utils": ^7.14.5 + babel-plugin-dynamic-import-node: ^2.3.3 peerDependencies: "@babel/core": ^7.0.0-0 - checksum: 18fc74e10fbd05e49c4937fcc7125bb15b3768482a1e6ec342b199e152f49c891178560a6282be4d20b3fee7006754d64b3193bda46457beba2636f59f1002c4 + checksum: 963d9ebb11b282d5c5f462e3e1ad6991e60fb4d190b5a7aa0d9937e0fa83d89cf5f94268f0b0b343576f2cee0cf545bcaf40da40eb8b9dca5c79840fd86a65ed languageName: node linkType: hard -"@babel/plugin-transform-react-jsx@npm:^7.12.10": - version: 7.12.11 - resolution: "@babel/plugin-transform-react-jsx@npm:7.12.11" +"@babel/plugin-transform-modules-commonjs@npm:^7.14.5": + version: 7.14.5 + resolution: "@babel/plugin-transform-modules-commonjs@npm:7.14.5" dependencies: - "@babel/helper-builder-react-jsx": ^7.10.4 - "@babel/helper-builder-react-jsx-experimental": ^7.12.11 - "@babel/helper-plugin-utils": ^7.10.4 - "@babel/plugin-syntax-jsx": ^7.12.1 + "@babel/helper-module-transforms": ^7.14.5 + "@babel/helper-plugin-utils": ^7.14.5 + "@babel/helper-simple-access": ^7.14.5 + babel-plugin-dynamic-import-node: ^2.3.3 peerDependencies: "@babel/core": ^7.0.0-0 - checksum: e2b47cd6f5b59904146a61c31fb5f2bc17e42b8705f1613b1986a0611a9e34ebfe149e090ced67100bfea7398af8eed3babd12feb68a71666eac14ac51cef341 + checksum: 5cc41ee904e421c32f692ce10985190bc8f995df63ee1fd899ea80ce50b4b8408c7f2fddf16e01345244fc5702c8b9c0772afdd934e325c4e468840daa9bee04 languageName: node linkType: hard -"@babel/plugin-transform-react-pure-annotations@npm:^7.12.1": - version: 7.12.1 - resolution: "@babel/plugin-transform-react-pure-annotations@npm:7.12.1" +"@babel/plugin-transform-modules-systemjs@npm:^7.14.5": + version: 7.14.5 + resolution: "@babel/plugin-transform-modules-systemjs@npm:7.14.5" dependencies: - "@babel/helper-annotate-as-pure": ^7.10.4 - "@babel/helper-plugin-utils": ^7.10.4 + "@babel/helper-hoist-variables": ^7.14.5 + "@babel/helper-module-transforms": ^7.14.5 + "@babel/helper-plugin-utils": ^7.14.5 + "@babel/helper-validator-identifier": ^7.14.5 + babel-plugin-dynamic-import-node: ^2.3.3 peerDependencies: "@babel/core": ^7.0.0-0 - checksum: 7c42141c361b2524871e119b71d1fcbe871284bc4d2ab398ab549437af8dfb573c23c8b6044d8c70d37b25c159c25ec0d3d490c9303819bf6b81e1560cb1154c + checksum: 3ca0bb1c0c22a3d705476186afa9fc86398ae4662afc259ff29c1942e3c8770f4bdadaf67418a21816964d4e1eaf07412eeabccccfaa9d45eac735f971ad148b languageName: node linkType: hard -"@babel/plugin-transform-regenerator@npm:^7.12.1": - version: 7.12.1 - resolution: "@babel/plugin-transform-regenerator@npm:7.12.1" +"@babel/plugin-transform-modules-umd@npm:^7.14.5": + version: 7.14.5 + resolution: "@babel/plugin-transform-modules-umd@npm:7.14.5" dependencies: - regenerator-transform: ^0.14.2 + "@babel/helper-module-transforms": ^7.14.5 + "@babel/helper-plugin-utils": ^7.14.5 peerDependencies: "@babel/core": ^7.0.0-0 - checksum: 8673ae830a84a39e5bbdfaa95728ab6496b0c5a4bff11607cd5756d72709dd39cd9504666f57b8ba66d969876c2506b41d6c025ffc6315ae5221a82d3580ce8e + checksum: 455ff383bed47e104d4b2b32f11bc5a44a25c797fad26b5eab9b8a81856f9945350b45ad28b9b20b0bbf324832c7a826c9c3d6f865e85c26a1771663132e4145 languageName: node linkType: hard -"@babel/plugin-transform-regenerator@npm:^7.13.15": - version: 7.13.15 - resolution: "@babel/plugin-transform-regenerator@npm:7.13.15" +"@babel/plugin-transform-named-capturing-groups-regex@npm:^7.14.7": + version: 7.14.7 + resolution: "@babel/plugin-transform-named-capturing-groups-regex@npm:7.14.7" dependencies: - regenerator-transform: ^0.14.2 + "@babel/helper-create-regexp-features-plugin": ^7.14.5 peerDependencies: - "@babel/core": ^7.0.0-0 - checksum: e4c253945bc27c6ae9a41b1190b62b03d8f951879f41c58b097b3e63006e3b24dc93e8754d9cb4f95693851e669208329ea281f4a9a79a5dd33043fb45300c2a + "@babel/core": ^7.0.0 + checksum: 3c68bc77cce387750ecd32d33e9ad0f0968245fbe03b36ec8dddc52bee3ee84757205db3b3b4fc605e055f08769312ef4dbf4a0c8adb8f02eb04b142ffcdf265 languageName: node linkType: hard -"@babel/plugin-transform-reserved-words@npm:^7.12.1": - version: 7.12.1 - resolution: "@babel/plugin-transform-reserved-words@npm:7.12.1" +"@babel/plugin-transform-new-target@npm:^7.14.5": + version: 7.14.5 + resolution: "@babel/plugin-transform-new-target@npm:7.14.5" dependencies: - "@babel/helper-plugin-utils": ^7.10.4 + "@babel/helper-plugin-utils": ^7.14.5 peerDependencies: "@babel/core": ^7.0.0-0 - checksum: 718ac30f96ff8b13c713d3ca233746e188df651c58d39012fb4a99702a6e806b8c4a8ab48d5ad54a27b9009ddc6f394ae1c7265a2a0e84707336210c301f4757 + checksum: 5b806c86926cd0b03fa2f22cf21a6d6a86e5831b80e8a1e898877acd3a03fd07078e45da33b671200ec98a5c7ac9be2f3592cd88933e262feffba248ca7ca4e7 languageName: node linkType: hard -"@babel/plugin-transform-reserved-words@npm:^7.12.13": - version: 7.12.13 - resolution: "@babel/plugin-transform-reserved-words@npm:7.12.13" +"@babel/plugin-transform-object-super@npm:^7.14.5": + version: 7.14.5 + resolution: "@babel/plugin-transform-object-super@npm:7.14.5" dependencies: - "@babel/helper-plugin-utils": ^7.12.13 + "@babel/helper-plugin-utils": ^7.14.5 + "@babel/helper-replace-supers": ^7.14.5 peerDependencies: "@babel/core": ^7.0.0-0 - checksum: 61bee23ba9659e79da585d886a70340c1ec64d02bd37d18952249b6f0b62015bc81c04a25f34c7960916fe3fac72f091a15fc55d6220cb194a053b2d0c0e9539 + checksum: 88477a8b27e76042ffbff1345088422f5b3135346d69f264e71d90b3749a3d73d5a579c97a33cd11c61c5d499a655911c7cd97dbe68edb36e090dfd5f154d777 languageName: node linkType: hard -"@babel/plugin-transform-shorthand-properties@npm:^7.12.1": - version: 7.12.1 - resolution: "@babel/plugin-transform-shorthand-properties@npm:7.12.1" +"@babel/plugin-transform-parameters@npm:^7.14.5": + version: 7.14.5 + resolution: "@babel/plugin-transform-parameters@npm:7.14.5" dependencies: - "@babel/helper-plugin-utils": ^7.10.4 + "@babel/helper-plugin-utils": ^7.14.5 peerDependencies: "@babel/core": ^7.0.0-0 - checksum: 90c70f2d644c8131f3e0a589cd8664f3666a1f75d0e45d7cdea8e27a30ff451d3012623cbda7e0c11766e8f73d984960233b1c668cf158505aa396f2f7835fef + checksum: 932bc616be7b5542ba2371c85cfcc579a8556b9e5a5ea5535b7f0ec5b68284ed2a3724ae181f1a22719b5ea6539c82f5fcee37d9f45f08ed72eb9e43a0940b56 languageName: node linkType: hard -"@babel/plugin-transform-shorthand-properties@npm:^7.12.13": - version: 7.12.13 - resolution: "@babel/plugin-transform-shorthand-properties@npm:7.12.13" +"@babel/plugin-transform-property-literals@npm:^7.14.5": + version: 7.14.5 + resolution: "@babel/plugin-transform-property-literals@npm:7.14.5" dependencies: - "@babel/helper-plugin-utils": ^7.12.13 + "@babel/helper-plugin-utils": ^7.14.5 peerDependencies: "@babel/core": ^7.0.0-0 - checksum: 32322d9a3bc9426e717b19c83bc224f20c766fe4b99a5a8a68cdc2b6d24403d017d6340ea50c5b9e6c31a4f7a8427bc7d0bb9cabf9f8d80762af081cad1a2d60 + checksum: 426e7b13a048220314e35bd4e6732640293c616173ef05ceca3a2bfadd043199e35ec693f1604f77178c3a88bea241b6d7ce92d8fc837faeb37117ad7866350f languageName: node linkType: hard -"@babel/plugin-transform-spread@npm:^7.12.1": - version: 7.12.1 - resolution: "@babel/plugin-transform-spread@npm:7.12.1" +"@babel/plugin-transform-react-constant-elements@npm:^7.12.1": + version: 7.14.5 + resolution: "@babel/plugin-transform-react-constant-elements@npm:7.14.5" dependencies: - "@babel/helper-plugin-utils": ^7.10.4 - "@babel/helper-skip-transparent-expression-wrappers": ^7.12.1 + "@babel/helper-plugin-utils": ^7.14.5 peerDependencies: "@babel/core": ^7.0.0-0 - checksum: 9e309c5ee6bceee59664cc26589a2fb7fa7f697831264b3475d08f3aa2e8775475ee8afcaed9b57533d3bd21a11281a93a1f2471809ae9d07c96f3ffcaeec956 + checksum: 7e4168535cd3ae1bae5acf8d7cc77a2bd885f8abed46672160631e23ded0c7e0be5152cefb1f87b123c4e3c38a542ca0ce06b3b0d8e7b7694f43687b63c0a9fb languageName: node linkType: hard -"@babel/plugin-transform-spread@npm:^7.13.0": - version: 7.13.0 - resolution: "@babel/plugin-transform-spread@npm:7.13.0" +"@babel/plugin-transform-react-display-name@npm:^7.14.5": + version: 7.14.5 + resolution: "@babel/plugin-transform-react-display-name@npm:7.14.5" dependencies: - "@babel/helper-plugin-utils": ^7.13.0 - "@babel/helper-skip-transparent-expression-wrappers": ^7.12.1 + "@babel/helper-plugin-utils": ^7.14.5 peerDependencies: "@babel/core": ^7.0.0-0 - checksum: f885e68cc4f91f8e3fb2f0a4b182ab52182a542b2d3511360313965053410c89058ff0de64007cae3ee212787f63074730d8c9b3888c6dfbbf039fad694c792b + checksum: d7ca35d5e8d7d91ac82b17e1bd68dd4a7dcfae54da95b28d072907799503e2ec234f34dd869c9fee299a29e73e7b5ce3d4c748cf2a29c25d39f9523be130dba3 languageName: node linkType: hard -"@babel/plugin-transform-sticky-regex@npm:^7.12.1": - version: 7.12.1 - resolution: "@babel/plugin-transform-sticky-regex@npm:7.12.1" +"@babel/plugin-transform-react-jsx-development@npm:^7.14.5": + version: 7.14.5 + resolution: "@babel/plugin-transform-react-jsx-development@npm:7.14.5" dependencies: - "@babel/helper-plugin-utils": ^7.10.4 - "@babel/helper-regex": ^7.10.4 + "@babel/plugin-transform-react-jsx": ^7.14.5 peerDependencies: "@babel/core": ^7.0.0-0 - checksum: cd9d227dae07c5d7da94b2feb7aeab6dd00f543ca1195bcf18be01de6c9fa599f11db982e179a79d9753f8270bb8d9f31d8ee7ccbce4be4e4717a95b32c6d687 + checksum: b49d6e703aeb4fbaacbb8449418dc3c599bcb3ce608cb900ed21a288c3bce42a33209524693b1978766b645aa2b751c15aa9da5337cc6ac2a79fd9b7c9ae9246 languageName: node linkType: hard -"@babel/plugin-transform-sticky-regex@npm:^7.12.13": - version: 7.12.13 - resolution: "@babel/plugin-transform-sticky-regex@npm:7.12.13" +"@babel/plugin-transform-react-jsx@npm:^7.14.5": + version: 7.14.5 + resolution: "@babel/plugin-transform-react-jsx@npm:7.14.5" dependencies: - "@babel/helper-plugin-utils": ^7.12.13 + "@babel/helper-annotate-as-pure": ^7.14.5 + "@babel/helper-module-imports": ^7.14.5 + "@babel/helper-plugin-utils": ^7.14.5 + "@babel/plugin-syntax-jsx": ^7.14.5 + "@babel/types": ^7.14.5 peerDependencies: "@babel/core": ^7.0.0-0 - checksum: 41b9e016589441e985db2e5a7c7e907bbbbeb19876d82efc9482db9beb929c29e3f1ad8edbab7906a406bc41a55aee6708147c2ed3e4f9a7a3285aa9e723b7b4 + checksum: 4be6ba0a0303691ce7e16363da1ae446a5cd6eb63ba5729cd7af21b0e7927c07bb8595482836cbda0f41b39fa979c37f4504ef7c23729085f84fac1659615542 languageName: node linkType: hard -"@babel/plugin-transform-strict-mode@npm:^7.12.13": - version: 7.12.13 - resolution: "@babel/plugin-transform-strict-mode@npm:7.12.13" +"@babel/plugin-transform-react-pure-annotations@npm:^7.14.5": + version: 7.14.5 + resolution: "@babel/plugin-transform-react-pure-annotations@npm:7.14.5" dependencies: - "@babel/helper-plugin-utils": ^7.12.13 + "@babel/helper-annotate-as-pure": ^7.14.5 + "@babel/helper-plugin-utils": ^7.14.5 peerDependencies: "@babel/core": ^7.0.0-0 - checksum: 5a1f9446f0e215aaf632314873e18a7b75fabea0f9097ce44bafa5cb90026379100e2c625ff9dacfedb6d330b961c17221f7e8ddf036a248ff46b5a2db157a1c + checksum: 3b62cc6af2c838eabc28c07473eab1392b41a5db2f0f326b1ba3ec52b95529e1c46098d6a259c7debb6a17489445828b89f7737a6fb85345ea5d27e4819a31fe languageName: node linkType: hard -"@babel/plugin-transform-template-literals@npm:^7.12.1": - version: 7.12.1 - resolution: "@babel/plugin-transform-template-literals@npm:7.12.1" +"@babel/plugin-transform-regenerator@npm:^7.14.5": + version: 7.14.5 + resolution: "@babel/plugin-transform-regenerator@npm:7.14.5" dependencies: - "@babel/helper-plugin-utils": ^7.10.4 + regenerator-transform: ^0.14.2 peerDependencies: "@babel/core": ^7.0.0-0 - checksum: e25a3f351025577266e1a06dac93f30a43c5cd47e8cddb0238aa2b8e69cf51d3f52f39f19894cf14222ec411c2ba22b5adeae86fa262ec229e5d0d517b20fa04 + checksum: f606bc04da7d0cfd651914cb144e85a0ea6fe20ee453ed21d002747cc47b09c853bc97166c32dc47e959581b772d9883f7d96d1c8e795c81ed21dbbb300e3aa7 languageName: node linkType: hard -"@babel/plugin-transform-template-literals@npm:^7.13.0": - version: 7.13.0 - resolution: "@babel/plugin-transform-template-literals@npm:7.13.0" +"@babel/plugin-transform-reserved-words@npm:^7.14.5": + version: 7.14.5 + resolution: "@babel/plugin-transform-reserved-words@npm:7.14.5" dependencies: - "@babel/helper-plugin-utils": ^7.13.0 + "@babel/helper-plugin-utils": ^7.14.5 peerDependencies: "@babel/core": ^7.0.0-0 - checksum: 463c8462fcfb33c8875d4ebc7d2826d2a5019b00bd5c05a6c890d969e72c9010c33a1033a934347d8b51734854602b8afc96f3439d1402890787d988bfc935dd + checksum: 8a40d7b48e1b4a549272d603e7b28ead70213e12353d65edd07156b7169d7933cee8b79987b54f374f3c41b835d941aca4b13b8aa23a922c94113af2131ca686 languageName: node linkType: hard -"@babel/plugin-transform-typeof-symbol@npm:^7.12.1": - version: 7.12.1 - resolution: "@babel/plugin-transform-typeof-symbol@npm:7.12.1" +"@babel/plugin-transform-shorthand-properties@npm:^7.14.5": + version: 7.14.5 + resolution: "@babel/plugin-transform-shorthand-properties@npm:7.14.5" dependencies: - "@babel/helper-plugin-utils": ^7.10.4 + "@babel/helper-plugin-utils": ^7.14.5 peerDependencies: "@babel/core": ^7.0.0-0 - checksum: ced8cc35f034896233d95b8b4a07d0e4aaecfc7af1c55a97ba1907b4f3a2a950a869a1185ead0fa3f488207849d59c0025bf14561db738a685ec789d2e254b52 + checksum: 60cdd17e347a6a0973c8ea5c08ae4b3f8e59ce0e188453c4bda045d2a5c34495af8e0e9393631aa9f3fd51282455b9c5d6ba07e262576171dbe2b4094bdaf8ad languageName: node linkType: hard -"@babel/plugin-transform-typeof-symbol@npm:^7.12.13": - version: 7.12.13 - resolution: "@babel/plugin-transform-typeof-symbol@npm:7.12.13" +"@babel/plugin-transform-spread@npm:^7.14.6": + version: 7.14.6 + resolution: "@babel/plugin-transform-spread@npm:7.14.6" dependencies: - "@babel/helper-plugin-utils": ^7.12.13 + "@babel/helper-plugin-utils": ^7.14.5 + "@babel/helper-skip-transparent-expression-wrappers": ^7.14.5 peerDependencies: "@babel/core": ^7.0.0-0 - checksum: 6dbe460c12d6924348ae4e75f34143d39db73cb7a52bcd16a61de78cf9f9d000e7b95be0e2221d75a79150f703195a895c436782b72442c4456a1ea30a061ecd + checksum: 20c11de962dd7ddab110d6c4ab9f3c0bea97393ce09cbe4e46be53182c3df0577eaf0e31aaa2d76344ae21ed3a3b7e779fe814b845d188e11a6031c619648b89 languageName: node linkType: hard -"@babel/plugin-transform-unicode-escapes@npm:^7.12.1": - version: 7.12.1 - resolution: "@babel/plugin-transform-unicode-escapes@npm:7.12.1" +"@babel/plugin-transform-sticky-regex@npm:^7.14.5": + version: 7.14.5 + resolution: "@babel/plugin-transform-sticky-regex@npm:7.14.5" dependencies: - "@babel/helper-plugin-utils": ^7.10.4 + "@babel/helper-plugin-utils": ^7.14.5 peerDependencies: "@babel/core": ^7.0.0-0 - checksum: 1dcb2b73bf9bea829da753a74cdc1405321d641465f19bdf4028d4153dd4c212bee950f7c6c591a11821418bcced2dadd6591720d6ed76ca44ec1f0acfc6bb6b + checksum: 6d77e0641c4c72203d592d54fdb11770de22a34d659d3335e4c537e95b930d03142b11f1d41d103da3de063c628a0f34bdd4c6534b591bc59d9ce67fafb836dc languageName: node linkType: hard -"@babel/plugin-transform-unicode-escapes@npm:^7.12.13": - version: 7.12.13 - resolution: "@babel/plugin-transform-unicode-escapes@npm:7.12.13" +"@babel/plugin-transform-template-literals@npm:^7.14.5": + version: 7.14.5 + resolution: "@babel/plugin-transform-template-literals@npm:7.14.5" dependencies: - "@babel/helper-plugin-utils": ^7.12.13 + "@babel/helper-plugin-utils": ^7.14.5 peerDependencies: "@babel/core": ^7.0.0-0 - checksum: cfc34c5ab4438e89cb50c93059066d78aa6eaf957e33a00eb7aae76fe1de53aa8c956a6be9cd9d956a3a4df8090b490bcc5021958546e61785095e492f5bb180 + checksum: 56d273470c16e83bac1bfab5057a64f23191b51460a009b522b3b29806d7a9f64cbd94323836ceb997c4f331b85564f952eb5566c7bd140d0b278f0191a31985 languageName: node linkType: hard -"@babel/plugin-transform-unicode-regex@npm:^7.12.1": - version: 7.12.1 - resolution: "@babel/plugin-transform-unicode-regex@npm:7.12.1" +"@babel/plugin-transform-typeof-symbol@npm:^7.14.5": + version: 7.14.5 + resolution: "@babel/plugin-transform-typeof-symbol@npm:7.14.5" dependencies: - "@babel/helper-create-regexp-features-plugin": ^7.12.1 - "@babel/helper-plugin-utils": ^7.10.4 + "@babel/helper-plugin-utils": ^7.14.5 peerDependencies: "@babel/core": ^7.0.0-0 - checksum: 4737e20e5187ebf872ee572aea17d4b99eeb99731a2ec32d0390955a4f3246b277f5eb5ab950fabb767858b30bf330185e5a5d5b52124462e83537aa61ce2da5 + checksum: 1e71ec00ea8b64522b8677c030f334cc5b3833a5b7269a152a2ba7a6b36f0e0a4333a61072e69113e4062e71554d4751ef2e3ddd5e81994978123323f266981c languageName: node linkType: hard -"@babel/plugin-transform-unicode-regex@npm:^7.12.13": - version: 7.12.13 - resolution: "@babel/plugin-transform-unicode-regex@npm:7.12.13" +"@babel/plugin-transform-unicode-escapes@npm:^7.14.5": + version: 7.14.5 + resolution: "@babel/plugin-transform-unicode-escapes@npm:7.14.5" dependencies: - "@babel/helper-create-regexp-features-plugin": ^7.12.13 - "@babel/helper-plugin-utils": ^7.12.13 + "@babel/helper-plugin-utils": ^7.14.5 peerDependencies: "@babel/core": ^7.0.0-0 - checksum: b472c8403b33dbd707f33e0c819433299bbfb0b776dae241b2285b684e8c705bb3afb78bebec18475d4678a845826525288b354568c425112139b885cda730c2 + checksum: 2a6979c5b886d9c7d9d3887374d75384542fe05a71eb7738b2cde659386089a930d37d1a34ffb4b87def98fbed3526d78b7cd5dd9bffde4d406b368faba81b7d languageName: node linkType: hard -"@babel/preset-env@npm:^7.12.1": - version: 7.12.1 - resolution: "@babel/preset-env@npm:7.12.1" +"@babel/plugin-transform-unicode-regex@npm:^7.14.5": + version: 7.14.5 + resolution: "@babel/plugin-transform-unicode-regex@npm:7.14.5" dependencies: - "@babel/compat-data": ^7.12.1 - "@babel/helper-compilation-targets": ^7.12.1 - "@babel/helper-module-imports": ^7.12.1 - "@babel/helper-plugin-utils": ^7.10.4 - "@babel/helper-validator-option": ^7.12.1 - "@babel/plugin-proposal-async-generator-functions": ^7.12.1 - "@babel/plugin-proposal-class-properties": ^7.12.1 - "@babel/plugin-proposal-dynamic-import": ^7.12.1 - "@babel/plugin-proposal-export-namespace-from": ^7.12.1 - "@babel/plugin-proposal-json-strings": ^7.12.1 - "@babel/plugin-proposal-logical-assignment-operators": ^7.12.1 - "@babel/plugin-proposal-nullish-coalescing-operator": ^7.12.1 - "@babel/plugin-proposal-numeric-separator": ^7.12.1 - "@babel/plugin-proposal-object-rest-spread": ^7.12.1 - "@babel/plugin-proposal-optional-catch-binding": ^7.12.1 - "@babel/plugin-proposal-optional-chaining": ^7.12.1 - "@babel/plugin-proposal-private-methods": ^7.12.1 - "@babel/plugin-proposal-unicode-property-regex": ^7.12.1 - "@babel/plugin-syntax-async-generators": ^7.8.0 - "@babel/plugin-syntax-class-properties": ^7.12.1 - "@babel/plugin-syntax-dynamic-import": ^7.8.0 - "@babel/plugin-syntax-export-namespace-from": ^7.8.3 - "@babel/plugin-syntax-json-strings": ^7.8.0 - "@babel/plugin-syntax-logical-assignment-operators": ^7.10.4 - "@babel/plugin-syntax-nullish-coalescing-operator": ^7.8.0 - "@babel/plugin-syntax-numeric-separator": ^7.10.4 - "@babel/plugin-syntax-object-rest-spread": ^7.8.0 - "@babel/plugin-syntax-optional-catch-binding": ^7.8.0 - "@babel/plugin-syntax-optional-chaining": ^7.8.0 - "@babel/plugin-syntax-top-level-await": ^7.12.1 - "@babel/plugin-transform-arrow-functions": ^7.12.1 - "@babel/plugin-transform-async-to-generator": ^7.12.1 - "@babel/plugin-transform-block-scoped-functions": ^7.12.1 - "@babel/plugin-transform-block-scoping": ^7.12.1 - "@babel/plugin-transform-classes": ^7.12.1 - "@babel/plugin-transform-computed-properties": ^7.12.1 - "@babel/plugin-transform-destructuring": ^7.12.1 - "@babel/plugin-transform-dotall-regex": ^7.12.1 - "@babel/plugin-transform-duplicate-keys": ^7.12.1 - "@babel/plugin-transform-exponentiation-operator": ^7.12.1 - "@babel/plugin-transform-for-of": ^7.12.1 - "@babel/plugin-transform-function-name": ^7.12.1 - "@babel/plugin-transform-literals": ^7.12.1 - "@babel/plugin-transform-member-expression-literals": ^7.12.1 - "@babel/plugin-transform-modules-amd": ^7.12.1 - "@babel/plugin-transform-modules-commonjs": ^7.12.1 - "@babel/plugin-transform-modules-systemjs": ^7.12.1 - "@babel/plugin-transform-modules-umd": ^7.12.1 - "@babel/plugin-transform-named-capturing-groups-regex": ^7.12.1 - "@babel/plugin-transform-new-target": ^7.12.1 - "@babel/plugin-transform-object-super": ^7.12.1 - "@babel/plugin-transform-parameters": ^7.12.1 - "@babel/plugin-transform-property-literals": ^7.12.1 - "@babel/plugin-transform-regenerator": ^7.12.1 - "@babel/plugin-transform-reserved-words": ^7.12.1 - "@babel/plugin-transform-shorthand-properties": ^7.12.1 - "@babel/plugin-transform-spread": ^7.12.1 - "@babel/plugin-transform-sticky-regex": ^7.12.1 - "@babel/plugin-transform-template-literals": ^7.12.1 - "@babel/plugin-transform-typeof-symbol": ^7.12.1 - "@babel/plugin-transform-unicode-escapes": ^7.12.1 - "@babel/plugin-transform-unicode-regex": ^7.12.1 - "@babel/preset-modules": ^0.1.3 - "@babel/types": ^7.12.1 - core-js-compat: ^3.6.2 - semver: ^5.5.0 + "@babel/helper-create-regexp-features-plugin": ^7.14.5 + "@babel/helper-plugin-utils": ^7.14.5 peerDependencies: "@babel/core": ^7.0.0-0 - checksum: 1a07935d95a2b36bfb7f462e9ce94c6c3d665ee36ddaf286f0ebc292006bd72841a9e67c4abcc878478b44b3c2cec2ad7af6a7b1cec9ac0a667054e1539859cf + checksum: 1b7a4c0dc6b07390f991e7cac8409f7a1ae74495d94b9e1fb5a716d5362a349a35717cfad883074e3f80e16bb630bbd1986a3436f739f6b01c30a96ef3f9ea9a languageName: node linkType: hard -"@babel/preset-env@npm:^7.14.2": - version: 7.14.2 - resolution: "@babel/preset-env@npm:7.14.2" - dependencies: - "@babel/compat-data": ^7.14.0 - "@babel/helper-compilation-targets": ^7.13.16 - "@babel/helper-plugin-utils": ^7.13.0 - "@babel/helper-validator-option": ^7.12.17 - "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": ^7.13.12 - "@babel/plugin-proposal-async-generator-functions": ^7.14.2 - "@babel/plugin-proposal-class-properties": ^7.13.0 - "@babel/plugin-proposal-class-static-block": ^7.13.11 - "@babel/plugin-proposal-dynamic-import": ^7.14.2 - "@babel/plugin-proposal-export-namespace-from": ^7.14.2 - "@babel/plugin-proposal-json-strings": ^7.14.2 - "@babel/plugin-proposal-logical-assignment-operators": ^7.14.2 - "@babel/plugin-proposal-nullish-coalescing-operator": ^7.14.2 - "@babel/plugin-proposal-numeric-separator": ^7.14.2 - "@babel/plugin-proposal-object-rest-spread": ^7.14.2 - "@babel/plugin-proposal-optional-catch-binding": ^7.14.2 - "@babel/plugin-proposal-optional-chaining": ^7.14.2 - "@babel/plugin-proposal-private-methods": ^7.13.0 - "@babel/plugin-proposal-private-property-in-object": ^7.14.0 - "@babel/plugin-proposal-unicode-property-regex": ^7.12.13 +"@babel/preset-env@npm:^7.12.1": + version: 7.14.7 + resolution: "@babel/preset-env@npm:7.14.7" + dependencies: + "@babel/compat-data": ^7.14.7 + "@babel/helper-compilation-targets": ^7.14.5 + "@babel/helper-plugin-utils": ^7.14.5 + "@babel/helper-validator-option": ^7.14.5 + "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": ^7.14.5 + "@babel/plugin-proposal-async-generator-functions": ^7.14.7 + "@babel/plugin-proposal-class-properties": ^7.14.5 + "@babel/plugin-proposal-class-static-block": ^7.14.5 + "@babel/plugin-proposal-dynamic-import": ^7.14.5 + "@babel/plugin-proposal-export-namespace-from": ^7.14.5 + "@babel/plugin-proposal-json-strings": ^7.14.5 + "@babel/plugin-proposal-logical-assignment-operators": ^7.14.5 + "@babel/plugin-proposal-nullish-coalescing-operator": ^7.14.5 + "@babel/plugin-proposal-numeric-separator": ^7.14.5 + "@babel/plugin-proposal-object-rest-spread": ^7.14.7 + "@babel/plugin-proposal-optional-catch-binding": ^7.14.5 + "@babel/plugin-proposal-optional-chaining": ^7.14.5 + "@babel/plugin-proposal-private-methods": ^7.14.5 + "@babel/plugin-proposal-private-property-in-object": ^7.14.5 + "@babel/plugin-proposal-unicode-property-regex": ^7.14.5 "@babel/plugin-syntax-async-generators": ^7.8.4 "@babel/plugin-syntax-class-properties": ^7.12.13 - "@babel/plugin-syntax-class-static-block": ^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-json-strings": ^7.8.3 @@ -2351,54 +1471,54 @@ __metadata: "@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.0 - "@babel/plugin-syntax-top-level-await": ^7.12.13 - "@babel/plugin-transform-arrow-functions": ^7.13.0 - "@babel/plugin-transform-async-to-generator": ^7.13.0 - "@babel/plugin-transform-block-scoped-functions": ^7.12.13 - "@babel/plugin-transform-block-scoping": ^7.14.2 - "@babel/plugin-transform-classes": ^7.14.2 - "@babel/plugin-transform-computed-properties": ^7.13.0 - "@babel/plugin-transform-destructuring": ^7.13.17 - "@babel/plugin-transform-dotall-regex": ^7.12.13 - "@babel/plugin-transform-duplicate-keys": ^7.12.13 - "@babel/plugin-transform-exponentiation-operator": ^7.12.13 - "@babel/plugin-transform-for-of": ^7.13.0 - "@babel/plugin-transform-function-name": ^7.12.13 - "@babel/plugin-transform-literals": ^7.12.13 - "@babel/plugin-transform-member-expression-literals": ^7.12.13 - "@babel/plugin-transform-modules-amd": ^7.14.2 - "@babel/plugin-transform-modules-commonjs": ^7.14.0 - "@babel/plugin-transform-modules-systemjs": ^7.13.8 - "@babel/plugin-transform-modules-umd": ^7.14.0 - "@babel/plugin-transform-named-capturing-groups-regex": ^7.12.13 - "@babel/plugin-transform-new-target": ^7.12.13 - "@babel/plugin-transform-object-super": ^7.12.13 - "@babel/plugin-transform-parameters": ^7.14.2 - "@babel/plugin-transform-property-literals": ^7.12.13 - "@babel/plugin-transform-regenerator": ^7.13.15 - "@babel/plugin-transform-reserved-words": ^7.12.13 - "@babel/plugin-transform-shorthand-properties": ^7.12.13 - "@babel/plugin-transform-spread": ^7.13.0 - "@babel/plugin-transform-sticky-regex": ^7.12.13 - "@babel/plugin-transform-template-literals": ^7.13.0 - "@babel/plugin-transform-typeof-symbol": ^7.12.13 - "@babel/plugin-transform-unicode-escapes": ^7.12.13 - "@babel/plugin-transform-unicode-regex": ^7.12.13 + "@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.14.5 + "@babel/plugin-transform-async-to-generator": ^7.14.5 + "@babel/plugin-transform-block-scoped-functions": ^7.14.5 + "@babel/plugin-transform-block-scoping": ^7.14.5 + "@babel/plugin-transform-classes": ^7.14.5 + "@babel/plugin-transform-computed-properties": ^7.14.5 + "@babel/plugin-transform-destructuring": ^7.14.7 + "@babel/plugin-transform-dotall-regex": ^7.14.5 + "@babel/plugin-transform-duplicate-keys": ^7.14.5 + "@babel/plugin-transform-exponentiation-operator": ^7.14.5 + "@babel/plugin-transform-for-of": ^7.14.5 + "@babel/plugin-transform-function-name": ^7.14.5 + "@babel/plugin-transform-literals": ^7.14.5 + "@babel/plugin-transform-member-expression-literals": ^7.14.5 + "@babel/plugin-transform-modules-amd": ^7.14.5 + "@babel/plugin-transform-modules-commonjs": ^7.14.5 + "@babel/plugin-transform-modules-systemjs": ^7.14.5 + "@babel/plugin-transform-modules-umd": ^7.14.5 + "@babel/plugin-transform-named-capturing-groups-regex": ^7.14.7 + "@babel/plugin-transform-new-target": ^7.14.5 + "@babel/plugin-transform-object-super": ^7.14.5 + "@babel/plugin-transform-parameters": ^7.14.5 + "@babel/plugin-transform-property-literals": ^7.14.5 + "@babel/plugin-transform-regenerator": ^7.14.5 + "@babel/plugin-transform-reserved-words": ^7.14.5 + "@babel/plugin-transform-shorthand-properties": ^7.14.5 + "@babel/plugin-transform-spread": ^7.14.6 + "@babel/plugin-transform-sticky-regex": ^7.14.5 + "@babel/plugin-transform-template-literals": ^7.14.5 + "@babel/plugin-transform-typeof-symbol": ^7.14.5 + "@babel/plugin-transform-unicode-escapes": ^7.14.5 + "@babel/plugin-transform-unicode-regex": ^7.14.5 "@babel/preset-modules": ^0.1.4 - "@babel/types": ^7.14.2 - babel-plugin-polyfill-corejs2: ^0.2.0 - babel-plugin-polyfill-corejs3: ^0.2.0 - babel-plugin-polyfill-regenerator: ^0.2.0 - core-js-compat: ^3.9.0 + "@babel/types": ^7.14.5 + babel-plugin-polyfill-corejs2: ^0.2.2 + babel-plugin-polyfill-corejs3: ^0.2.2 + babel-plugin-polyfill-regenerator: ^0.2.2 + core-js-compat: ^3.15.0 semver: ^6.3.0 peerDependencies: "@babel/core": ^7.0.0-0 - checksum: fd6333a1658057fb81f526e5c8e2d74fef330922d89bec5db57da934a31cf52a8852c1dfc5e2994aa063f1a09083b30831e014d86b0bc287719afc8df348b2d2 + checksum: ebebc20ada68c92b67375926021d576af3636a279aee7625c1e234880355c8669188483aecfff2d478c1caa9fcf18b569ea329060b479236b04baed2bdf796d5 languageName: node linkType: hard -"@babel/preset-modules@npm:^0.1.3, @babel/preset-modules@npm:^0.1.4": +"@babel/preset-modules@npm:^0.1.4": version: 0.1.4 resolution: "@babel/preset-modules@npm:0.1.4" dependencies: @@ -2414,163 +1534,142 @@ __metadata: linkType: hard "@babel/preset-react@npm:^7.12.5": - version: 7.12.10 - resolution: "@babel/preset-react@npm:7.12.10" + version: 7.14.5 + resolution: "@babel/preset-react@npm:7.14.5" dependencies: - "@babel/helper-plugin-utils": ^7.10.4 - "@babel/plugin-transform-react-display-name": ^7.12.1 - "@babel/plugin-transform-react-jsx": ^7.12.10 - "@babel/plugin-transform-react-jsx-development": ^7.12.7 - "@babel/plugin-transform-react-pure-annotations": ^7.12.1 + "@babel/helper-plugin-utils": ^7.14.5 + "@babel/helper-validator-option": ^7.14.5 + "@babel/plugin-transform-react-display-name": ^7.14.5 + "@babel/plugin-transform-react-jsx": ^7.14.5 + "@babel/plugin-transform-react-jsx-development": ^7.14.5 + "@babel/plugin-transform-react-pure-annotations": ^7.14.5 peerDependencies: "@babel/core": ^7.0.0-0 - checksum: f39ac96d94a856e605406da16622e2ef61c4ea2afb6b9da081ea9fc8d2521100bb19ed978a772e09618e2bb7e2ef8f69c2045ac01e83bf32a4162dd6b7c86e37 + checksum: 413c507f853b95c71ecb64f29ea7b0786464a237c54977b03a4410dd837b03bfa55df81d0e337f9792d9abc61f4bf3d616f857d00a36ff4ede79407c143ac865 languageName: node linkType: hard "@babel/runtime-corejs3@npm:^7.10.2": - version: 7.12.1 - resolution: "@babel/runtime-corejs3@npm:7.12.1" - dependencies: - core-js-pure: ^3.0.0 - regenerator-runtime: ^0.13.4 - checksum: f10a953173c5c7a727e9a4732a4fbbbd39a6d418385d79bbfc00c7afb041a3fd01c644150b8ea28fb40f58efcc213b8f78723f26113f1b9180b2faa7241dce7d - languageName: node - linkType: hard - -"@babel/runtime@npm:7.12.5": - version: 7.12.5 - resolution: "@babel/runtime@npm:7.12.5" + version: 7.14.7 + resolution: "@babel/runtime-corejs3@npm:7.14.7" dependencies: + core-js-pure: ^3.15.0 regenerator-runtime: ^0.13.4 - checksum: 64964a0fd172917fc5faac56bea5f0e6ec6200973e4ed6373e114f23f8cd6f113be31a6559fadfdd4f62071559e05d00a391760876a00345ea7813356c880209 + checksum: 9e49fc27e4de9fd5a97069aeeb0746cf0e42afe2068fa717a8abec740782a58d6bb1dc635c37a7bd47c40f3945fabad6308a44915520e15c7651f34b24b89d6f languageName: node linkType: hard -"@babel/runtime@npm:^7.10.2, @babel/runtime@npm:^7.11.2, @babel/runtime@npm:^7.12.1, @babel/runtime@npm:^7.8.4": - version: 7.12.1 - resolution: "@babel/runtime@npm:7.12.1" +"@babel/runtime@npm:7.15.3": + version: 7.15.3 + resolution: "@babel/runtime@npm:7.15.3" dependencies: regenerator-runtime: ^0.13.4 - checksum: fb4b4c8f704a338d3500ff75bfd28a35927444e0c48254d60ce87a9402d7e149e2189e5f55fa3bd2927d4c10fa25fe34c239ae0be68df77af040b01561c5bcc8 + checksum: 2f0b8d2d4e36035ab1d84af0ec26aafa098536870f27c8e07de0a0e398f7a394fdea68a88165535ffb52ded6a68912bdc3450bdf91f229eb132e1c89470789f5 languageName: node linkType: hard -"@babel/runtime@npm:^7.14.0, @babel/runtime@npm:^7.9.2": - version: 7.14.0 - resolution: "@babel/runtime@npm:7.14.0" +"@babel/runtime@npm:^7.10.1, @babel/runtime@npm:^7.10.2, @babel/runtime@npm:^7.11.1, @babel/runtime@npm:^7.11.2, @babel/runtime@npm:^7.12.1, @babel/runtime@npm:^7.12.5, @babel/runtime@npm:^7.8.4, @babel/runtime@npm:^7.9.2": + version: 7.14.6 + resolution: "@babel/runtime@npm:7.14.6" dependencies: regenerator-runtime: ^0.13.4 - checksum: 257dc2594355dd8798455f25b6f2f9a00f162b427391265752933e0e3337b3b14661d09283187d5039ae3764f723890ffe767e995c73d662f1d515bdf48e5ade + checksum: 927ffed7871f2ed29f967a8dad7a72aa10662f93b6735a89d664a161fa4dc2074b8947ca159a8a0a49cec9a71c8de473d7c2b22d3de0ee4d7dd06d24a7f98018 languageName: node linkType: hard -"@babel/template@npm:^7.10.4": - version: 7.10.4 - resolution: "@babel/template@npm:7.10.4" +"@babel/template@npm:^7.14.5": + version: 7.14.5 + resolution: "@babel/template@npm:7.14.5" dependencies: - "@babel/code-frame": ^7.10.4 - "@babel/parser": ^7.10.4 - "@babel/types": ^7.10.4 - checksum: 174a1fbfa19ed68141c9a047ff02972ebd3e8c7a98a00ffa79d4958d0f31bcfe17766987c2064d7fae851a277e1c499a05a527df346b3821d9aa9f730979cea9 + "@babel/code-frame": ^7.14.5 + "@babel/parser": ^7.14.5 + "@babel/types": ^7.14.5 + checksum: 4939199c5b1ca8940e14c87f30f4fab5f35c909bef88447131075349027546927b4e3e08e50db5c2db2024f2c6585a4fe571c739c835ac980f7a4ada2dd8a623 languageName: node linkType: hard -"@babel/template@npm:^7.12.13": - version: 7.12.13 - resolution: "@babel/template@npm:7.12.13" +"@babel/template@npm:^7.15.4": + version: 7.15.4 + resolution: "@babel/template@npm:7.15.4" dependencies: - "@babel/code-frame": ^7.12.13 - "@babel/parser": ^7.12.13 - "@babel/types": ^7.12.13 - checksum: e0377316317ff55c794ec79f70d8f27b5cd3323ce76278ade525c264af669952b09613288221c76ee4abd49626a5f014a60ec4a637694c9121a1b77f820792d0 + "@babel/code-frame": ^7.14.5 + "@babel/parser": ^7.15.4 + "@babel/types": ^7.15.4 + checksum: 58ca51fdd40bbaaddf2e46513dd05d5823f214cb2877b3f353abf5541a033a1b6570c29c2c80e60f2b55966326e40bebbf53666b261646ccf410b3d984af42ce languageName: node linkType: hard -"@babel/traverse@npm:^7.10.4, @babel/traverse@npm:^7.12.1": - version: 7.12.1 - resolution: "@babel/traverse@npm:7.12.1" +"@babel/traverse@npm:^7.13.0, @babel/traverse@npm:^7.14.5": + version: 7.14.7 + resolution: "@babel/traverse@npm:7.14.7" dependencies: - "@babel/code-frame": ^7.10.4 - "@babel/generator": ^7.12.1 - "@babel/helper-function-name": ^7.10.4 - "@babel/helper-split-export-declaration": ^7.11.0 - "@babel/parser": ^7.12.1 - "@babel/types": ^7.12.1 + "@babel/code-frame": ^7.14.5 + "@babel/generator": ^7.14.5 + "@babel/helper-function-name": ^7.14.5 + "@babel/helper-hoist-variables": ^7.14.5 + "@babel/helper-split-export-declaration": ^7.14.5 + "@babel/parser": ^7.14.7 + "@babel/types": ^7.14.5 debug: ^4.1.0 globals: ^11.1.0 - lodash: ^4.17.19 - checksum: eea68f3a9f6a5b3955357ff68615a01615fc32d11e24e02770b0c5dbf784c1a9d917bfa7b255d354b942af739bbf955641d99bb2ca99c150715dd39743467c5e + checksum: 11e9162e46bdd6daef8691facbf5c47838f6e312ac775be35c40353c77887338d1b9ce497211d2ae96628a9230551f03eb3df49b4ca53b6f668082f2c157d1a0 languageName: node linkType: hard -"@babel/traverse@npm:^7.13.0, @babel/traverse@npm:^7.13.15, @babel/traverse@npm:^7.14.0, @babel/traverse@npm:^7.14.2": - version: 7.14.2 - resolution: "@babel/traverse@npm:7.14.2" +"@babel/traverse@npm:^7.15.4": + version: 7.15.4 + resolution: "@babel/traverse@npm:7.15.4" dependencies: - "@babel/code-frame": ^7.12.13 - "@babel/generator": ^7.14.2 - "@babel/helper-function-name": ^7.14.2 - "@babel/helper-split-export-declaration": ^7.12.13 - "@babel/parser": ^7.14.2 - "@babel/types": ^7.14.2 + "@babel/code-frame": ^7.14.5 + "@babel/generator": ^7.15.4 + "@babel/helper-function-name": ^7.15.4 + "@babel/helper-hoist-variables": ^7.15.4 + "@babel/helper-split-export-declaration": ^7.15.4 + "@babel/parser": ^7.15.4 + "@babel/types": ^7.15.4 debug: ^4.1.0 globals: ^11.1.0 - checksum: 054d5e44429254e1beade12c40e6fb0ea5a12242d4a17173da2d9c0f76644d0c32f578f3e284f6d8c059cea8f4c3c1a1e45a021ee4233dcf047341252d1022a3 - languageName: node - linkType: hard - -"@babel/types@npm:7.8.3": - version: 7.8.3 - resolution: "@babel/types@npm:7.8.3" - dependencies: - esutils: ^2.0.2 - lodash: ^4.17.13 - to-fast-properties: ^2.0.0 - checksum: c51ec3ad2850940ed87e6db9cb783f4688bb6b589115a335fcc49e292e5fe00a086966b39d5b808d8c7aa7e81b7d4dbd19c2f403ad422c46f526311992b4c1fc + checksum: 831506a92c8ed76dc60504de37663bf5a553d7b1b009a94defc082cddb6c380c5487a1aa9438bcd7b9891a2a72758a63e4f878154aa70699d09b388b1445d774 languageName: node linkType: hard -"@babel/types@npm:^7.10.4, @babel/types@npm:^7.10.5, @babel/types@npm:^7.11.0, @babel/types@npm:^7.12.1, @babel/types@npm:^7.4.4": - version: 7.12.1 - resolution: "@babel/types@npm:7.12.1" +"@babel/types@npm:7.15.0": + version: 7.15.0 + resolution: "@babel/types@npm:7.15.0" dependencies: - "@babel/helper-validator-identifier": ^7.10.4 - lodash: ^4.17.19 + "@babel/helper-validator-identifier": ^7.14.9 to-fast-properties: ^2.0.0 - checksum: b82d8f7c1dc8580c6c6305623bfa9f4619cdf92ef0d0378d2b9c0f6dc33b9ef75eb712bae2fb041da9e673c0391641beb50b7823d82f015a105bbb599e60c87c + checksum: 6d6bcdfce94b5446520a24087c6dede453e28425af092965b304d4028e9bca79712fd691cdad031e3570c7667bf3206e5f642bcccbfccb33d42ca4a8203587f9 languageName: node linkType: hard -"@babel/types@npm:^7.12.10, @babel/types@npm:^7.12.11, @babel/types@npm:^7.12.5, @babel/types@npm:^7.12.6": - version: 7.12.11 - resolution: "@babel/types@npm:7.12.11" +"@babel/types@npm:^7.12.6, @babel/types@npm:^7.14.5, @babel/types@npm:^7.4.4, @babel/types@npm:^7.8.3": + version: 7.14.5 + resolution: "@babel/types@npm:7.14.5" dependencies: - "@babel/helper-validator-identifier": ^7.12.11 - lodash: ^4.17.19 + "@babel/helper-validator-identifier": ^7.14.5 to-fast-properties: ^2.0.0 - checksum: d3a19df22e177000c6017c9013f863fb8b861a71c3577547577e5f762837053eb008554bac40e0052ee54411becf1f414d802b8d276a8b0c9bf79ad5ec53288c + checksum: 7c1ab6e8bdf438d44236034cab10f7d0f1971179bc405dca26733a9b89dd87dd692dc49a238a7495075bc41a9a17fb6f08b4d1da45ea6ddcce1e5c8593574aea languageName: node linkType: hard -"@babel/types@npm:^7.12.13, @babel/types@npm:^7.13.0, @babel/types@npm:^7.13.12, @babel/types@npm:^7.13.16, @babel/types@npm:^7.14.0, @babel/types@npm:^7.14.2": - version: 7.14.2 - resolution: "@babel/types@npm:7.14.2" +"@babel/types@npm:^7.15.4": + version: 7.15.4 + resolution: "@babel/types@npm:7.15.4" dependencies: - "@babel/helper-validator-identifier": ^7.14.0 + "@babel/helper-validator-identifier": ^7.14.9 to-fast-properties: ^2.0.0 - checksum: b8e4796ba859e038c05b2cab20f029a017e881a97eaf53be431b617c4e4c5370d8a4701950866e526b8177053fa943db1b2d6e6c7269ad869e5a0c62e67e1274 + checksum: dac7d733edf2102e97f197929693fae6025161f3edda5a0f621f69e9d0741b8596c6f2152492bef869b55d0205e214867e8730f389283e85432b8f093e295c4b languageName: node linkType: hard -"@babel/types@npm:^7.8.3": - version: 7.12.12 - resolution: "@babel/types@npm:7.12.12" +"@babel/types@npm:^7.15.6": + version: 7.15.6 + resolution: "@babel/types@npm:7.15.6" dependencies: - "@babel/helper-validator-identifier": ^7.12.11 - lodash: ^4.17.19 + "@babel/helper-validator-identifier": ^7.14.9 to-fast-properties: ^2.0.0 - checksum: 1eefe9468573a32491030f2986f820eb4289ff0b93e437b97f665e73cc8dae0ec0bdd95f37995bb3b70b5ce2a9a45a302affbbad497150021cf874c5ef10e361 + checksum: 37f497dde10d238b5eb184efab83b415a86611e3d73dc0434de0cfb851b20ee606a3b7e1525e5b2d522fac1248d0345fea0468006f246262511b80cd3ed2419f languageName: node linkType: hard @@ -2597,75 +1696,86 @@ __metadata: languageName: node linkType: hard -"@eslint/eslintrc@npm:^0.4.1": - version: 0.4.1 - resolution: "@eslint/eslintrc@npm:0.4.1" +"@es-joy/jsdoccomment@npm:0.10.8": + version: 0.10.8 + resolution: "@es-joy/jsdoccomment@npm:0.10.8" + dependencies: + comment-parser: 1.2.4 + esquery: ^1.4.0 + jsdoc-type-pratt-parser: 1.1.1 + checksum: 3e144ef393459a541b64f6c9c8e62fb6d9b47e1a2c626410487ede12c472064f6ce6e0911df60b42ccf126d5a66102707eef59ca14767cb7aeb5e608b227558d + languageName: node + linkType: hard + +"@eslint/eslintrc@npm:^0.4.3": + version: 0.4.3 + resolution: "@eslint/eslintrc@npm:0.4.3" dependencies: ajv: ^6.12.4 debug: ^4.1.1 espree: ^7.3.0 - globals: ^12.1.0 + globals: ^13.9.0 ignore: ^4.0.6 import-fresh: ^3.2.1 js-yaml: ^3.13.1 minimatch: ^3.0.4 strip-json-comments: ^3.1.1 - checksum: 85eeaa022eba510ff093040a66e67bf0b4c5e5aa8c39e3655e4fa6de929d1076e2320858325708b723b367d8aeaddd89e6fa5b34c8676a4d95246d099e1b1759 + checksum: 03a7704150b868c318aab6a94d87a33d30dc2ec579d27374575014f06237ba1370ae11178db772f985ef680d469dc237e7b16a1c5d8edaaeb8c3733e7a95a6d3 languageName: node linkType: hard -"@fingerprintjs/fingerprintjs@npm:^3.1.2": - version: 3.1.2 - resolution: "@fingerprintjs/fingerprintjs@npm:3.1.2" +"@fingerprintjs/fingerprintjs@npm:^3.3.0": + version: 3.3.0 + resolution: "@fingerprintjs/fingerprintjs@npm:3.3.0" dependencies: tslib: ^2.0.1 - checksum: de1ab9b6b08983077e57a6f0b8c1c856ad490519ef6bef4102abc99cdb3335dc830b895d57ac43b0fc5c7d19baec3e95de84b201e6539f6815bc3cfa4ff4122c + checksum: 988a25f1509c0ffe402e8a849e74db17649b9ad1497429966d4438ba69cb870c5e8d59938975826027f8a39ba4fdabafa379707b9ee1663d4575e9b906d750d6 languageName: node linkType: hard -"@fortawesome/fontawesome-common-types@npm:^0.2.35": - version: 0.2.35 - resolution: "@fortawesome/fontawesome-common-types@npm:0.2.35" - checksum: fc5e0e9182d52ccac244754beafae907f5623350e8437fa5e118278927988436a28d16700ee4b03b2fee96c736c1e45f2d58158a355fd1d187faebc4e3782f30 +"@fortawesome/fontawesome-common-types@npm:^0.2.36": + version: 0.2.36 + resolution: "@fortawesome/fontawesome-common-types@npm:0.2.36" + checksum: d604ac51da0b1597127fde70c64157b70ead6af7f2643ab7dfca268ef99d4ed0b4cc823afba206362422a622e389828408bec573df802bf4f02b118d0fa18dc8 languageName: node linkType: hard -"@fortawesome/fontawesome-svg-core@npm:^1.2.35": - version: 1.2.35 - resolution: "@fortawesome/fontawesome-svg-core@npm:1.2.35" +"@fortawesome/fontawesome-svg-core@npm:^1.2.36": + version: 1.2.36 + resolution: "@fortawesome/fontawesome-svg-core@npm:1.2.36" dependencies: - "@fortawesome/fontawesome-common-types": ^0.2.35 - checksum: eccb31d2d0f2a14be482822acfb560c68b73f76123808003ffde2b45e32c6816fd9d1feb408f3f23176bc297a651799f3f71aa85e81b7eb9e0def0221f40e41c + "@fortawesome/fontawesome-common-types": ^0.2.36 + checksum: 3011d8c1452b5df52a62eaee8b1ec925b9fdfabcc170fd6da5eaac7cfdef56258b9292ddd06c30f03a6a8ed6faa886565211f2e469fee3c9831c32f93e9383d8 languageName: node linkType: hard -"@fortawesome/free-brands-svg-icons@npm:^5.15.3": - version: 5.15.3 - resolution: "@fortawesome/free-brands-svg-icons@npm:5.15.3" +"@fortawesome/free-brands-svg-icons@npm:^5.15.4": + version: 5.15.4 + resolution: "@fortawesome/free-brands-svg-icons@npm:5.15.4" dependencies: - "@fortawesome/fontawesome-common-types": ^0.2.35 - checksum: 03d65f66de621eecca01916d1738fbcd3dd89dee7401799b0b63d88ff00d8405160e490c34bb1d7fda38136ab2b04401724560893d9248331b78244ce3339604 + "@fortawesome/fontawesome-common-types": ^0.2.36 + checksum: 06e38132fbdf04d8677cf6e47e73cd566f68256f542d68d354e26f5ca7536c714b56f5f3dc6c670065b888ee08bc913bb4f213ab08225faf955d893a6a86ed02 languageName: node linkType: hard -"@fortawesome/free-solid-svg-icons@npm:^5.15.3": - version: 5.15.3 - resolution: "@fortawesome/free-solid-svg-icons@npm:5.15.3" +"@fortawesome/free-solid-svg-icons@npm:^5.15.4": + version: 5.15.4 + resolution: "@fortawesome/free-solid-svg-icons@npm:5.15.4" dependencies: - "@fortawesome/fontawesome-common-types": ^0.2.35 - checksum: 5df2a837a3fbe339e5de26ac91024b5db33243f495916faa4cd7b2c0cf3b9bc1462d7a4695f069d2553dea07c83c8b7aed085f8fce9b83d7b9958dbb2a08dfae + "@fortawesome/fontawesome-common-types": ^0.2.36 + checksum: eb037b703827ee37af3387a964afc7a190ff42a674ef46f4a6c295b634a38e849741eca78306b6423eaf3062d6ab1e7372aac5be2aec06f0fd9e8bd8110efcf9 languageName: node linkType: hard -"@fortawesome/react-fontawesome@npm:^0.1.14": - version: 0.1.14 - resolution: "@fortawesome/react-fontawesome@npm:0.1.14" +"@fortawesome/react-fontawesome@npm:^0.1.15": + version: 0.1.15 + resolution: "@fortawesome/react-fontawesome@npm:0.1.15" dependencies: prop-types: ^15.7.2 peerDependencies: "@fortawesome/fontawesome-svg-core": ^1.2.32 react: ">=16.x" - checksum: fba8ee619ac77893fa119fc202d7807f2cc44c7093cb6ac7867a26536a62a6b62b71211bc5224378d48adcaede3d6fdf3e469139fab823717ae4031cec599342 + checksum: 88670e1af943aed33463a258d1be7323f51ef3b50de98f0e8ae56dbd65871b77488570dd02ac6548126989c73af4d115098f12969354988992aff8c4985e92b0 languageName: node linkType: hard @@ -2676,58 +1786,88 @@ __metadata: languageName: node linkType: hard -"@fuelrats/eslint-config-react@npm:^2.3.0": - version: 2.3.0 - resolution: "@fuelrats/eslint-config-react@npm:2.3.0" +"@fuelrats/eslint-config-react@npm:^2.4.0-canary.19": + version: 2.4.0-canary.19 + resolution: "@fuelrats/eslint-config-react@npm:2.4.0-canary.19" peerDependencies: "@babel/core": ^7.11 "@babel/eslint-parser": ^7.11 - eslint: ^7.14 + "@fuelrats/eslint-config": ^2.4.0-canary.19 + "@typescript-eslint/parser": ^4.28 + eslint: ^7.24 eslint-plugin-jsx-a11y: ^6.3 - eslint-plugin-react: ^7.20 + eslint-plugin-react: ^7.26 eslint-plugin-react-hooks: ^4.0.1 react: ^16.8 || ^17 - checksum: b2386eb72a6ba62b408297bec9a25a5e4dc6c90ba3bb803f111dc77df80640c8248833e284b8b4133442414972135dec8d39e6c5f3c30af1aacd12f38ab54c96 + typescript: ^4 + peerDependenciesMeta: + "@babel/core": + optional: true + "@babel/eslint-parser": + optional: true + "@typescript-eslint/parser": + optional: true + typescript: + optional: true + checksum: e7ccdaaf984f9c2f7f6d9638996bc8dc958addf3017e8e352521cd83ee886b65493d4032e9ec898f4e0573cbea2d64c0a78843a1b728965354935059a0fee76e languageName: node linkType: hard -"@fuelrats/eslint-config@npm:^2.3.0": - version: 2.3.0 - resolution: "@fuelrats/eslint-config@npm:2.3.0" +"@fuelrats/eslint-config@npm:^2.4.0-canary.19": + version: 2.4.0-canary.19 + resolution: "@fuelrats/eslint-config@npm:2.4.0-canary.19" dependencies: - eslint-restricted-globals: ^0.2.0 + confusing-browser-globals: ^1.0.10 peerDependencies: "@babel/core": ^7.11 "@babel/eslint-parser": ^7.11 "@babel/eslint-plugin": ^7.11 - eslint: ^7.14 - eslint-plugin-import: ^2.21 - eslint-plugin-jsdoc: ^28 || ^29 || ^30 - checksum: 553771c08f871bc1d15dc35671c43be401a0517886e912b4f6cacc0eff35a8cf18ce7eac82524eb41e67ec1d76187847812908992cf99856b8d036c823ca78fe + "@typescript-eslint/eslint-plugin": ^4.28 + "@typescript-eslint/parser": ^4.28 + eslint: ^7.24 + eslint-plugin-import: ^2.23 + eslint-plugin-jsdoc: ^36 + typescript: ^4 + peerDependenciesMeta: + "@babel/core": + optional: true + "@babel/eslint-parser": + optional: true + "@babel/eslint-plugin": + optional: true + "@typescript-eslint/eslint-plugin": + optional: true + "@typescript-eslint/parser": + optional: true + typescript: + optional: true + checksum: 7213e38d8f6096c8f99de1bcb7e10800b55d52622a00e397b1aae04208f2e196077ebb4085e6f81dd467becf0fab1eacc2d83db1a1bc43a7c5727d7c950b05e0 languageName: node linkType: hard -"@fuelrats/eslint-plugin@npm:^2.3.0": - version: 2.3.0 - resolution: "@fuelrats/eslint-plugin@npm:2.3.0" +"@fuelrats/eslint-plugin@npm:^2.4.0-canary.11": + version: 2.4.0-canary.11 + resolution: "@fuelrats/eslint-plugin@npm:2.4.0-canary.11" dependencies: requireindex: ~1.2.0 peerDependencies: - "@babel/eslint-parser": ^7.11 eslint: ^7.5 - checksum: 4f4277722ff2a75203757ff70b72e795b042c80a6f87550e4ff673667cfbc11d8fce710e25a9bed001d4e49ee36200e9214c2291b37e1b731a0aee227614ae22 + checksum: 43f63c831399212079f09182a84ff5e60fed21f8aa1ed320534158cdd7dee6d8969c7e66edd8226796b38791347324a972fa41a2e4150782e8625336e4438e30 languageName: node linkType: hard -"@fuelrats/koa-adorable-avatars@npm:^0.1.2": - version: 0.1.2 - resolution: "@fuelrats/koa-adorable-avatars@npm:0.1.2" +"@fuelrats/next-adorable-avatars@npm:^0.3.0": + version: 0.3.0 + resolution: "@fuelrats/next-adorable-avatars@npm:0.3.0" dependencies: - "@koa/router": ^10.0.0 avatars-utils: 0.0.4 + next-connect: ^0.10.1 pure-uuid: ^1.6.2 - sharp: ^0.27.0 - checksum: 92ae991dd471ca9c47f96223b48ffc75a3a4d4cf50a9d0cd86644f33e58b48e90e1a217f5b7efab6d6d44c84c369cf4ba2b08bff86417aa317e6f824d6d1b735 + sharp: ^0.28.3 + workerpool: ^6.1.5 + peerDependencies: + next: ">=9.5.0" + checksum: 7d3e170a7573f78e32f6b111e2fb2353e3699021f612baa45555f08a7fb5ed501443fefa2b08ea0c62a4c7116535272c6511251fd40afccf65b530a510c9d949 languageName: node linkType: hard @@ -2749,9 +1889,9 @@ __metadata: languageName: node linkType: hard -"@fuelrats/web-util@npm:^0.3.2": - version: 0.3.2 - resolution: "@fuelrats/web-util@npm:0.3.2" +"@fuelrats/web-util@npm:^0.3.3": + version: 0.3.3 + resolution: "@fuelrats/web-util@npm:0.3.3" dependencies: "@babel/runtime": ^7.11.2 "@fuelrats/validation-util": ^1.2.0 @@ -2762,66 +1902,87 @@ __metadata: axios: ">=0.18" redux: "*" redux-thunk: "*" - checksum: f1f29c3b6d1e63803f1bc39818d51ef6d27c5ec64f1d39cd0b7c546f8f198962d51de74efe79c8ba554fe06890a95b8c9e85be76257e34194bf86c7f9720fafd + checksum: fe687f644ea3f532818ca87a3a3cc65d6edc8bc3cf913251e69faad33eafad879f2f0908fe34b55fdb36b39c3d0029f4709f4579c9fc692abeea961b8b3b7da9 languageName: node linkType: hard -"@hapi/accept@npm:5.0.1": - version: 5.0.1 - resolution: "@hapi/accept@npm:5.0.1" +"@hapi/accept@npm:5.0.2": + version: 5.0.2 + resolution: "@hapi/accept@npm:5.0.2" dependencies: "@hapi/boom": 9.x.x "@hapi/hoek": 9.x.x - checksum: df5544c98921fe17bcbb1750b1ed37dd3b5a46dd5b61b4a80655be7131fa3ac144befc1f35f2ad2bf6c32a363bab36bdcfa7b45ca7d249404a4295b5dcd6214d + checksum: 8088cbc245287f52722b2f6c42ae1f21f1f40001453582876b7de0329104427f88a277cd7857458bfc8ade4b9c872c9e5571b94de3c38440e40dbd3d25387954 languageName: node linkType: hard "@hapi/boom@npm:9.x.x": - version: 9.1.0 - resolution: "@hapi/boom@npm:9.1.0" + version: 9.1.3 + resolution: "@hapi/boom@npm:9.1.3" dependencies: "@hapi/hoek": 9.x.x - checksum: 754fc80e0b1b80bd9e35754f7c63e577ce7fa795b3a02eceed37d2e83e50b4ac7b6c07583eee31c89db2cece947b0b029475562b4e2da31f385d772900fca6d6 + checksum: b7f54fa3fd4e9ea60c33a4be93ae9cd67cf1b4f000d9feb0393e9f617c5f49a753de66d7ca0048c90c9ca71e722cf1d0ce62e436d8076e69a6943cbf26f2c2f7 languageName: node linkType: hard "@hapi/hoek@npm:9.x.x": - version: 9.1.0 - resolution: "@hapi/hoek@npm:9.1.0" - checksum: f1e2665f3947fd0e629d72ce7b23f2e4201f5ed78c19b612b56e02a236bb3281fba4556e29d0feab5524b46775261a18de9cdbc4d821b835587847d8eaf745bb + version: 9.2.0 + resolution: "@hapi/hoek@npm:9.2.0" + checksum: 57103bb5074d24ffd876f559bac6b312f2f58fe0f21dbfb0b8941032cba4fd37d92249db366516e1f68e2033834b87001c1558f523b48130b21f823f1e35b91a languageName: node linkType: hard -"@koa/router@npm:^10.0.0": - version: 10.0.0 - resolution: "@koa/router@npm:10.0.0" +"@humanwhocodes/config-array@npm:^0.5.0": + version: 0.5.0 + resolution: "@humanwhocodes/config-array@npm:0.5.0" dependencies: + "@humanwhocodes/object-schema": ^1.2.0 debug: ^4.1.1 - http-errors: ^1.7.3 - koa-compose: ^4.1.0 - methods: ^1.1.2 - path-to-regexp: ^6.1.0 - checksum: 8185f3edede3aaec9617e4f7c5d14e5b85de20320d04d19c623b9ed8535e63dcd86a9422e746c873aab68d6dec72f0fc52db90bbd9662da6567e801f2e1534e7 + minimatch: ^3.0.4 + checksum: 44ee6a9f05d93dd9d5935a006b17572328ba9caff8002442f601736cbda79c580cc0f5a49ce9eb88fbacc5c3a6b62098357c2e95326cd17bb9f1a6c61d6e95e7 + languageName: node + linkType: hard + +"@humanwhocodes/object-schema@npm:^1.2.0": + version: 1.2.0 + resolution: "@humanwhocodes/object-schema@npm:1.2.0" + checksum: 40b75480376de8104d65f7c44a7dd76d30fb57823ca8ba3a3239b2b568323be894d93440578a72fd8e5e2cc3df3577ce0d2f0fe308b990dd51cf35392bf3c9a2 languageName: node linkType: hard -"@next/env@npm:10.2.0": - version: 10.2.0 - resolution: "@next/env@npm:10.2.0" - checksum: a55ab502b12c49d90b77c42a20e2eaee2025bf60bafbeabe992cbeba5f64055c5af150176a6a252d7ad63d6dbba90652fd6ccd6ec36b81c11eab9d5bb29f9ea5 +"@napi-rs/triples@npm:^1.0.3": + version: 1.0.3 + resolution: "@napi-rs/triples@npm:1.0.3" + checksum: c83a4cc55f69115bf4ce1d5924efce7f5faf2dc79fd52257385559f668ce91a03c5d7d004df01ebba56028a9b663955eb97f31b65ac0acff7a93c143f0d809af + languageName: node + linkType: hard + +"@next/env@npm:11.1.2": + version: 11.1.2 + resolution: "@next/env@npm:11.1.2" + checksum: df7a95e840af351b1c37fa6490b2c6330b8f8c587ff8b2212687d7557e99ae5642495095a9a3a15fe4ac2e6fb5b1cdb24ab8fb14e95ad363a5b7b1146ec62d15 + languageName: node + linkType: hard + +"@next/eslint-plugin-next@npm:^11.1.2": + version: 11.1.2 + resolution: "@next/eslint-plugin-next@npm:11.1.2" + dependencies: + glob: 7.1.7 + checksum: 93e43795588875c083335b76858ece4a02f0a3818f32d7e01e76ad8204fd22758201815753e47d08c86020bd2fddf3425f5a80835cb57a2b31ab26b13a7f0960 languageName: node linkType: hard -"@next/polyfill-module@npm:10.2.0": - version: 10.2.0 - resolution: "@next/polyfill-module@npm:10.2.0" - checksum: 3addca178310f5b1050183b8475038bf8915d47cf3f78c8f097a2a591fe62860f5a77fe3ed8fb19e2de23480094f578c532cd23dd7c5db1dfc746b88d7fafbbb +"@next/polyfill-module@npm:11.1.2": + version: 11.1.2 + resolution: "@next/polyfill-module@npm:11.1.2" + checksum: f739b999b740ed55e5b5e45ba22127e4abba10ef3816df41277f13b23764005d88dfa4e914d06b6a4b321ba9c6b3df21d5b680d36c12f5db304128000130dc4d languageName: node linkType: hard -"@next/react-dev-overlay@npm:10.2.0": - version: 10.2.0 - resolution: "@next/react-dev-overlay@npm:10.2.0" +"@next/react-dev-overlay@npm:11.1.2": + version: 11.1.2 + resolution: "@next/react-dev-overlay@npm:11.1.2" dependencies: "@babel/code-frame": 7.12.11 anser: 1.4.9 @@ -2835,128 +1996,96 @@ __metadata: stacktrace-parser: 0.1.10 strip-ansi: 6.0.0 peerDependencies: - react: ^16.9.0 || ^17 - react-dom: ^16.9.0 || ^17 - checksum: a70c0b75cf0ca4fc4e45aa2e6e5a1ffe5eb34ec99b06f8e231cafbad66b0aaf82757ebf3cf917d65e3c738b62bc82f43b22c567ddea0d81a8facea0ddd7b52fd + react: ^17.0.2 + react-dom: ^17.0.2 + checksum: 6b2215c90c6df5f7b96eec9235e7a0a0ea71d7c7501e25aa6a7004c064ca74a6eaf15b2661fe3cbe8aff417ebebb705df2dbbf252aec4a92b408f2c02891a983 languageName: node linkType: hard -"@next/react-refresh-utils@npm:10.2.0": - version: 10.2.0 - resolution: "@next/react-refresh-utils@npm:10.2.0" +"@next/react-refresh-utils@npm:11.1.2": + version: 11.1.2 + resolution: "@next/react-refresh-utils@npm:11.1.2" peerDependencies: react-refresh: 0.8.3 webpack: ^4 || ^5 peerDependenciesMeta: webpack: optional: true - checksum: 36ea22701c8c9c6233d747d6f30284f1937552c1f9e744ed281ee7243ec2f4a03197cb851b85a51e013b22cfdf0d279c980f6cefe2d4d27c4e2abeae248b53e1 + checksum: 443e2376279437d85b991175b8cd86fc1d0f3908ad23a523e7ede5dc9fb22f63d083a904502f6aef77af4769c96f165740fe196d54684136b1f3443561575fc1 languageName: node linkType: hard -"@nodelib/fs.scandir@npm:2.1.3": - version: 2.1.3 - resolution: "@nodelib/fs.scandir@npm:2.1.3" - dependencies: - "@nodelib/fs.stat": 2.0.3 - run-parallel: ^1.1.9 - checksum: 0054efbba1385629886fe017d99f7045cb8300d6de1923f7a37e05e480c853abbedaff90f6a6b88fd0d406e1cd1e97fb60bd4e059b44468b174f46bef2e21dd1 +"@next/swc-darwin-arm64@npm:11.1.2": + version: 11.1.2 + resolution: "@next/swc-darwin-arm64@npm:11.1.2" + checksum: e87481c2d1436e947f1101d4d3e45bc9486f3dc312d120a6042b4a2333f16150b3881f322103ef52431e09178093775b02d725b843a7dde441f3ee319495ec95 languageName: node linkType: hard -"@nodelib/fs.stat@npm:2.0.3, @nodelib/fs.stat@npm:^2.0.2": - version: 2.0.3 - resolution: "@nodelib/fs.stat@npm:2.0.3" - checksum: d3612efceea83fb0bec4e64967888ff0c3e5fbbae96121bc526bbbe5529f32fc6f8a785b550f397d20f09c84dc1e5a6c8e9fd7f9b8b62387a8f80f680be8430e +"@next/swc-darwin-x64@npm:11.1.2": + version: 11.1.2 + resolution: "@next/swc-darwin-x64@npm:11.1.2" + checksum: 74717c27d2dd8e16ed6221ebc1fd0e212ffe467cc77dcd70f61b5ed9763b64dff36e6b3745791bc01771a2df9b60e609393d8ef848d894464cc15d45641a34f8 languageName: node linkType: hard -"@nodelib/fs.walk@npm:^1.2.3": - version: 1.2.4 - resolution: "@nodelib/fs.walk@npm:1.2.4" - dependencies: - "@nodelib/fs.scandir": 2.1.3 - fastq: ^1.6.0 - checksum: a971d1dcc1cf593e25651738e915be201053b63775c39c1ee221d2adee6316503ad6043136ceda0e099724875f2d72ea04b3b57c0e3a20b7f280bd3e951ae2e4 +"@next/swc-linux-x64-gnu@npm:11.1.2": + version: 11.1.2 + resolution: "@next/swc-linux-x64-gnu@npm:11.1.2" + checksum: 7cf8cf47cf007f7f1101fddb9850c03297950f84acc25b2b6ae2bce9f8ee860671adebde6c61df3cf721a50ec985304a98ea2ba7a5b594fd22032ae5f5cade02 languageName: node linkType: hard -"@opentelemetry/api@npm:0.14.0": - version: 0.14.0 - resolution: "@opentelemetry/api@npm:0.14.0" - dependencies: - "@opentelemetry/context-base": ^0.14.0 - checksum: 856f05b0f21b8714f063eeebf1994d1168b0b13f4999c575ebf1224e2059041565d99e09c3b30fd1d1331ac26aefd452f8fbfff14572038bd95f986287fbfb2d +"@next/swc-win32-x64-msvc@npm:11.1.2": + version: 11.1.2 + resolution: "@next/swc-win32-x64-msvc@npm:11.1.2" + checksum: dec45ee30bf9edc8d46a59fa9c1c9fcf00352ab02f5e9ff3cfde3d83cc47aa2be2615ac47142495e63419bd6764a25d2f5a73190d261293dc959fe94de14e9e5 languageName: node linkType: hard -"@opentelemetry/context-base@npm:^0.14.0": - version: 0.14.0 - resolution: "@opentelemetry/context-base@npm:0.14.0" - checksum: 4f3b4bd06d5fdffee46d3e6e59e3b49cbe8cc5c957e05e4464585102060709b7dd09008ca293481e3af6be917a646376034a59012a996a3a7601c577e5740083 +"@node-rs/helper@npm:1.2.1": + version: 1.2.1 + resolution: "@node-rs/helper@npm:1.2.1" + dependencies: + "@napi-rs/triples": ^1.0.3 + checksum: c7b96e46df8a4195e62e51b6f60ed05aff398653c270dc9cffaed749303a4c428215d5826de8511b57cf66f2b0165fb3544fb2aec2aaf385c13ac3b9468bb000 languageName: node linkType: hard -"@rollup/plugin-babel@npm:^5.3.0": - version: 5.3.0 - resolution: "@rollup/plugin-babel@npm:5.3.0" +"@nodelib/fs.scandir@npm:2.1.5": + version: 2.1.5 + resolution: "@nodelib/fs.scandir@npm:2.1.5" dependencies: - "@babel/helper-module-imports": ^7.10.4 - "@rollup/pluginutils": ^3.1.0 - peerDependencies: - "@babel/core": ^7.0.0 - "@types/babel__core": ^7.1.9 - rollup: ^1.20.0||^2.0.0 - peerDependenciesMeta: - "@types/babel__core": - optional: true - checksum: 6cfd741790f125968cbd0fc91b6f54e235033e31853a12190f725ccf95a6eb2f1387b6368be80dedfa94536d2e84739e7af45c8b2fe7a450e91c2aeb6170867d + "@nodelib/fs.stat": 2.0.5 + run-parallel: ^1.1.9 + checksum: a970d595bd23c66c880e0ef1817791432dbb7acbb8d44b7e7d0e7a22f4521260d4a83f7f9fd61d44fda4610105577f8f58a60718105fb38352baed612fd79e59 languageName: node linkType: hard -"@rollup/plugin-commonjs@npm:^19.0.0": - version: 19.0.0 - resolution: "@rollup/plugin-commonjs@npm:19.0.0" - dependencies: - "@rollup/pluginutils": ^3.1.0 - commondir: ^1.0.1 - estree-walker: ^2.0.1 - glob: ^7.1.6 - is-reference: ^1.2.1 - magic-string: ^0.25.7 - resolve: ^1.17.0 - peerDependencies: - rollup: ^2.38.3 - checksum: 83216ccd83c205f5b6ce278ce5233289a1ebf47fd859d6349d738b58e967bbb845395011f8605cf6a74175b728ed3b97fbfd9169bd0391caf5ee80c523652815 +"@nodelib/fs.stat@npm:2.0.5, @nodelib/fs.stat@npm:^2.0.2": + version: 2.0.5 + resolution: "@nodelib/fs.stat@npm:2.0.5" + checksum: 012480b5ca9d97bff9261571dbbec7bbc6033f69cc92908bc1ecfad0792361a5a1994bc48674b9ef76419d056a03efadfce5a6cf6dbc0a36559571a7a483f6f0 languageName: node linkType: hard -"@rollup/plugin-node-resolve@npm:^13.0.0": - version: 13.0.0 - resolution: "@rollup/plugin-node-resolve@npm:13.0.0" +"@nodelib/fs.walk@npm:^1.2.3": + version: 1.2.8 + resolution: "@nodelib/fs.walk@npm:1.2.8" dependencies: - "@rollup/pluginutils": ^3.1.0 - "@types/resolve": 1.17.1 - builtin-modules: ^3.1.0 - deepmerge: ^4.2.2 - is-module: ^1.0.0 - resolve: ^1.19.0 - peerDependencies: - rollup: ^2.42.0 - checksum: c0237e65f50d593efc176e07a2ddf734918bc7344f739fe2254a3bfaa4be37c6d4787d045ab79d741811d3658f7e8bbb1484e6aa25bbb9fe2a3c33472b3f371d + "@nodelib/fs.scandir": 2.1.5 + fastq: ^1.6.0 + checksum: 190c643f156d8f8f277bf2a6078af1ffde1fd43f498f187c2db24d35b4b4b5785c02c7dc52e356497b9a1b65b13edc996de08de0b961c32844364da02986dc53 languageName: node linkType: hard -"@rollup/pluginutils@npm:^3.1.0": - version: 3.1.0 - resolution: "@rollup/pluginutils@npm:3.1.0" +"@npmcli/move-file@npm:^1.0.1": + version: 1.1.2 + resolution: "@npmcli/move-file@npm:1.1.2" dependencies: - "@types/estree": 0.0.39 - estree-walker: ^1.0.1 - picomatch: ^2.2.2 - peerDependencies: - rollup: ^1.20.0||^2.0.0 - checksum: 8be16e27863c219edbb25a4e6ec2fe0e1e451d9e917b6a43cf2ae5bc025a6b8faaa40f82a6e53b66d0de37b58ff472c6c3d57a83037ae635041f8df959d6d9aa + mkdirp: ^1.0.4 + rimraf: ^3.0.2 + checksum: c96381d4a37448ea280951e46233f7e541058cf57a57d4094dd4bdcaae43fa5872b5f2eb6bfb004591a68e29c5877abe3cdc210cb3588cbf20ab2877f31a7de7 languageName: node linkType: hard @@ -3117,9 +2246,9 @@ __metadata: linkType: hard "@textlint/ast-node-types@npm:^4.2.5": - version: 4.3.4 - resolution: "@textlint/ast-node-types@npm:4.3.4" - checksum: 02faef54e8353775b18978a431863c43041624808a1fd4c1939523bc965d6494ceb75cca942d8e7212f4aaa252aeffbf0eb302711dcacee7c941f282fe0deb63 + version: 4.4.3 + resolution: "@textlint/ast-node-types@npm:4.4.3" + checksum: 987f2315232f094d211eb22d38b96ba00c06228fd23f7191bd5db3d700b4553f798a4cb5a34882db83d7136a0c40f8289b351b0c374a762dd375b91e0ba91f16 languageName: node linkType: hard @@ -3138,38 +2267,10 @@ __metadata: languageName: node linkType: hard -"@types/accepts@npm:*": - version: 1.3.5 - resolution: "@types/accepts@npm:1.3.5" - dependencies: - "@types/node": "*" - checksum: 590b7580570534a640510c071e09074cf63b5958b237a728f94322567350aea4d239f8a9d897a12b15c856b992ee4d7907e9812bb079886af2c00714e7fb3f60 - languageName: node - linkType: hard - -"@types/body-parser@npm:*": - version: 1.19.0 - resolution: "@types/body-parser@npm:1.19.0" - dependencies: - "@types/connect": "*" - "@types/node": "*" - checksum: 15043566f1909e2a08dabb0a5d2642f8988545a1369bc5995fc40ee90c95200da2aa66f9240fcb19fc6af6ff4e27ff453f311b49363c14bb308c308c0751ca9b - languageName: node - linkType: hard - -"@types/connect@npm:*": - version: 3.4.33 - resolution: "@types/connect@npm:3.4.33" - dependencies: - "@types/node": "*" - checksum: 1220403e0cd05c6f51c03b83eed0f4e086f252d50c13279effd38d8bfea5cae82db012b134d31004cb8e4705f83d8ad62dddd71028baa190bf6f31c8d9ac916b - languageName: node - linkType: hard - -"@types/content-disposition@npm:*": - version: 0.5.3 - resolution: "@types/content-disposition@npm:0.5.3" - checksum: 1b15b7af33619b2f2360501f6a4ecd68f03a70a138b28a0e2c02b7da7718cbfbf53256bc082ae161fd050358aff904f7c8ddf8b9dd96afe8a3c77ca581f9bc0a +"@tootallnate/once@npm:1": + version: 1.1.2 + resolution: "@tootallnate/once@npm:1.1.2" + checksum: e1fb1bbbc12089a0cb9433dc290f97bddd062deadb6178ce9bcb93bb7c1aecde5e60184bc7065aec42fe1663622a213493c48bbd4972d931aae48315f18e1be9 languageName: node linkType: hard @@ -3180,96 +2281,30 @@ __metadata: languageName: node linkType: hard -"@types/cookies@npm:*": - version: 0.7.4 - resolution: "@types/cookies@npm:0.7.4" - dependencies: - "@types/connect": "*" - "@types/express": "*" - "@types/keygrip": "*" - "@types/node": "*" - checksum: 4be22cf6322092b290e79ec33933ce09fe7166409fe051c6e56031bc51ed96d944a660379aa9eda7028692117342c0348ea69a73ff6e63dea8e2e0e61ff32cb9 - languageName: node - linkType: hard - "@types/eslint-scope@npm:^3.7.0": - version: 3.7.0 - resolution: "@types/eslint-scope@npm:3.7.0" + version: 3.7.1 + resolution: "@types/eslint-scope@npm:3.7.1" dependencies: "@types/eslint": "*" "@types/estree": "*" - checksum: 86b54f375259fe97955660b08215895b38769cd5c054d6120ded129ee94d36115d7e3bca31ca61bddcd8fc7bd168bc6fb74ccf25521c9744d9e47682c047d876 + checksum: 4271c9adad19ad8a1d23062d9020468a51c7f81594b12b8e68f7d460c09e14d57cae3e82b077c402766369c0c17e2de72da72c405fa465d18a46c0b14ce92530 languageName: node linkType: hard "@types/eslint@npm:*": - version: 7.2.10 - resolution: "@types/eslint@npm:7.2.10" + version: 7.28.0 + resolution: "@types/eslint@npm:7.28.0" dependencies: "@types/estree": "*" "@types/json-schema": "*" - checksum: 9c82e4733c22d9ebfb55b790985aaca8e7cf407a62deff1db4e7f21ccffee97ce9c0f8014782f8000742d85d1fddfd714ac4133cd92c8d8ae369fa9e865845e8 - languageName: node - linkType: hard - -"@types/estree@npm:*": - version: 0.0.45 - resolution: "@types/estree@npm:0.0.45" - checksum: 82c3eed5ab5b20ecd58a6d19176b9be0523c00a794db11f8ed08faee851066f09a959b88a1983ad52313f750e1cfe6b9565904ad2f4f7cf5c1f96300cde04ca0 - languageName: node - linkType: hard - -"@types/estree@npm:0.0.39": - version: 0.0.39 - resolution: "@types/estree@npm:0.0.39" - checksum: 412fb5b9868f2c418126451821833414189b75cc6bf84361156feed733e3d92ec220b9d74a89e52722e03d5e241b2932732711b7497374a404fad49087adc248 - languageName: node - linkType: hard - -"@types/estree@npm:^0.0.47": - version: 0.0.47 - resolution: "@types/estree@npm:0.0.47" - checksum: aed5c940436250c25c5e140aa19e7199ba3452e72e1aecc515621507df9e5ed5076ddba84a1684c36d62be841ff3e2bafce8793f16fe6f69d10884449d4461e7 - languageName: node - linkType: hard - -"@types/events@npm:*": - version: 3.0.0 - resolution: "@types/events@npm:3.0.0" - checksum: 9a424c2da210957d5636e0763e8c9fc3aaeee35bf411284ddec62a56a6abe31de9c7c2e713dabdd8a76ff98b47db2bd52f61310be6609641d6234cc842ecbbe3 - languageName: node - linkType: hard - -"@types/express-serve-static-core@npm:*": - version: 4.17.13 - resolution: "@types/express-serve-static-core@npm:4.17.13" - dependencies: - "@types/node": "*" - "@types/qs": "*" - "@types/range-parser": "*" - checksum: 9e8f75956c214fccaac8e4370a19cc4494f9f6c0326360a8a198161f92e9845c6a845002978b1e57a4bd6c0c1a5820d6be58b6796214bd7fcc6216baa7366d7b - languageName: node - linkType: hard - -"@types/express@npm:*": - version: 4.17.8 - resolution: "@types/express@npm:4.17.8" - dependencies: - "@types/body-parser": "*" - "@types/express-serve-static-core": "*" - "@types/qs": "*" - "@types/serve-static": "*" - checksum: ca265de4f9deb7eea2babd66d7f4069ca49202b69db48fb2e805998a8574ac1d186989de7920e66d4a97740228205f62f8c5821283756cf55bb2115ca2f5b901 + checksum: 75ac2577d2a2e35bae66f56d2d1c871d5e836b2721cf14bd3df450c9d584eba48fa3b1013fba710245bf4795f16e1df0ed315e543e3199c4815ee4782537d0ae languageName: node linkType: hard -"@types/formidable@npm:^1.0.31": - version: 1.0.31 - resolution: "@types/formidable@npm:1.0.31" - dependencies: - "@types/events": "*" - "@types/node": "*" - checksum: 025f59bf8b917cdfd794379a8acd0012481a63fa6ac307033d3b1f0935e002b0cddee67476a7dd988d27cc288d0ca9fdda4b13700525acfdae44b62a70115736 +"@types/estree@npm:*, @types/estree@npm:^0.0.50": + version: 0.0.50 + resolution: "@types/estree@npm:0.0.50" + checksum: 9a2b6a4a8c117f34d08fbda5e8f69b1dfb109f7d149b60b00fd7a9fb6ac545c078bc590aa4ec2f0a256d680cf72c88b3b28b60c326ee38a7bc8ee1ee95624922 languageName: node linkType: hard @@ -3283,45 +2318,33 @@ __metadata: languageName: node linkType: hard -"@types/http-assert@npm:*": - version: 1.5.1 - resolution: "@types/http-assert@npm:1.5.1" - checksum: 803633eeca6b2d043565960a891718a7632ad89a38959b67f40ad0fd20a639664b19332c6a9bae203ed0e7679b238d0a76d98bc68ba076cfcf450bbf244aa03b - languageName: node - linkType: hard - -"@types/http-errors@npm:*": - version: 1.8.0 - resolution: "@types/http-errors@npm:1.8.0" - checksum: 72b4721a2894f045202b005833d49afe085dc44cf6abc083a081676f0ec6ff812f150ad40704d1409e268b33d4fe1fd32264d5583e2e3cbb55eb97bb4afd3c13 - languageName: node - linkType: hard - -"@types/ip6addr@npm:^0.2.2": - version: 0.2.2 - resolution: "@types/ip6addr@npm:0.2.2" - checksum: 02ceaa630f7650b893a5e3067623efa060d7295a8819c9cc8a8fd6d09fe4eb4e2bf4cc2882fee99054d0d63086607250160666601bf5192ff51d5633f39c3b33 +"@types/http-proxy@npm:^1.17.5": + version: 1.17.7 + resolution: "@types/http-proxy@npm:1.17.7" + dependencies: + "@types/node": "*" + checksum: 88f9c75ca65378d0287d8d0b1dbeed372c8267f4841fe2f6f2d759522494382d3943bc6cc774bef7dd125464a266bafeda813d3658b17a2d1e74acc4efb6e21c languageName: node linkType: hard -"@types/js-cookie@npm:^2.2.6": - version: 2.2.6 - resolution: "@types/js-cookie@npm:2.2.6" - checksum: 97c50ff6cd0a27409b028aad94b0c4eb5cc43623532a1bdbbcccdb200539593eff3cc7f0d874b6b9bee586167638e3a10093c811ff6603ff2a9639564c82b3b1 +"@types/ip6addr@npm:^0.2.3": + version: 0.2.3 + resolution: "@types/ip6addr@npm:0.2.3" + checksum: ef19779ed25761450d2741a011ae702f82c3d032ddc68670adada3a0c74b629be6b7483ba2accd37cd7a5e768f3cb75c1524a91bbb7fe8572015e6f630818bf5 languageName: node linkType: hard -"@types/json-schema@npm:*": - version: 7.0.7 - resolution: "@types/json-schema@npm:7.0.7" - checksum: ea3b409235862d28122751158f4054e729e31ad844bd7b8b23868f38c518047b1c0e8e4e7cc293e02c31a2fb8cfc8a4506c2de2a745cf78b218e064fb8898cd4 +"@types/js-cookie@npm:^3.0.0": + version: 3.0.0 + resolution: "@types/js-cookie@npm:3.0.0" + checksum: c4af98798b98ea8806a88e0d80870b4bcf34eaed4670f619b9862094aeadf66ebbe0fa783a4fec2d60574c168a86a52f575808a1a4f9e38cdf1e053847cb413f languageName: node linkType: hard -"@types/json-schema@npm:^7.0.5, @types/json-schema@npm:^7.0.6": - version: 7.0.6 - resolution: "@types/json-schema@npm:7.0.6" - checksum: 3b1e5e049b065a41d2bc1f0c16e01dac5a4a1276bbe8b413657298f574d64a955d3b10bec9e7796fde0927f307e6fedbac1cf4da3604593c431899eea3ad0756 +"@types/json-schema@npm:*, @types/json-schema@npm:^7.0.5, @types/json-schema@npm:^7.0.7": + version: 7.0.8 + resolution: "@types/json-schema@npm:7.0.8" + checksum: f1d0fe76ab1db93846f36a9179faa44b9b66f2f5f44597e46e65456a1c998f632c63b94ed347058ed1a230cbf95a9a164b4daf4d70aa3d651d5033f7856df83c languageName: node linkType: hard @@ -3332,132 +2355,49 @@ __metadata: languageName: node linkType: hard -"@types/jsonfile@npm:^6.0.0": - version: 6.0.0 - resolution: "@types/jsonfile@npm:6.0.0" - dependencies: - "@types/node": "*" - checksum: 80be3f43be1a5c17af84d51bc9fa1c9959ed777e7713480084d7ec87bcb948ce77675e8ae8ca034b62b64908b626adf1b2f61539b6d6d34fa06ba2f71007cf1d - languageName: node - linkType: hard - -"@types/keygrip@npm:*": - version: 1.0.2 - resolution: "@types/keygrip@npm:1.0.2" - checksum: 60bc2738a4f107070ee3d96f44709cb38f3a96c7ccabab09f56c1b2b4d85f869fd8fb9f1f2937e863d0e9e781f005c2223b823bf32b859185b4f52370c352669 - languageName: node - linkType: hard - -"@types/koa-compose@npm:*": - version: 3.2.5 - resolution: "@types/koa-compose@npm:3.2.5" - dependencies: - "@types/koa": "*" - checksum: 5d1147c4b057eb158195f442f0384f06503f3e69dba99fb517b30a05261a9f92928945c12bb1cfc17a5b7d60db003f38b455a3a9b125f12e4fc81fffa396b3cf - languageName: node - linkType: hard - -"@types/koa-compress@npm:^4.0.1": - version: 4.0.1 - resolution: "@types/koa-compress@npm:4.0.1" - dependencies: - "@types/koa": "*" - "@types/node": "*" - checksum: 48d25ad42d95d75ab3213835aa40b4748699e38eda7c2a44be2178b3f7242d224620da901402d24f9adb221344f004339b56a0d3c28c12f3e5896c4e48e3d87d - languageName: node - linkType: hard - -"@types/koa-logger@npm:^3.1.1": - version: 3.1.1 - resolution: "@types/koa-logger@npm:3.1.1" - dependencies: - "@types/koa": "*" - checksum: c410d2adaa299d18d4482abd4254a0d2dc55b61a00c3ac32ec8d599f9dc81418cb766ec711ea7016dbb145594f7b8b01f650713508c3553d715bcc56e9ed236a - languageName: node - linkType: hard - -"@types/koa@npm:*": - version: 2.11.5 - resolution: "@types/koa@npm:2.11.5" - dependencies: - "@types/accepts": "*" - "@types/content-disposition": "*" - "@types/cookies": "*" - "@types/http-assert": "*" - "@types/http-errors": "*" - "@types/keygrip": "*" - "@types/koa-compose": "*" - "@types/node": "*" - checksum: aa4fed30a015a762beaddab28df8fcddb40342a046a9ef99c680caecad7e100d8d1a03f2c4f403694d003ca5ce822dc0564867944e7e2861003a9788cf0e8d85 - languageName: node - linkType: hard - -"@types/koa@npm:^2.13.1": - version: 2.13.1 - resolution: "@types/koa@npm:2.13.1" +"@types/jsonfile@npm:^6.0.1": + version: 6.0.1 + resolution: "@types/jsonfile@npm:6.0.1" dependencies: - "@types/accepts": "*" - "@types/content-disposition": "*" - "@types/cookies": "*" - "@types/http-assert": "*" - "@types/http-errors": "*" - "@types/keygrip": "*" - "@types/koa-compose": "*" "@types/node": "*" - checksum: d6f83b120ad0b8d9f3c7a7a0b2f09a2a149c1f83aaae3c754ac869a3bbc8a5a50f2e653e26817ba1648ed17da49202a19aaf69af0f4f9317c44fb172e548f838 + checksum: 5771b7fc1f2b4e98c29d816625b068ff4f41bd156928b669e536425e9893939d6b5a840e1d08388ee5b05ab0adc03f86a703ba9c8efa29f15f1ad45322cc0064 languageName: node linkType: hard -"@types/koa__router@npm:^8.0.4": - version: 8.0.4 - resolution: "@types/koa__router@npm:8.0.4" - dependencies: - "@types/koa": "*" - checksum: 6347028866f16efe32596ee1311204468c18057f219054a514f323f9acb80e2f7dd09c811e8319de40973423c97b5c0ad9a970d1ac3e51e8ddf0d3bf51d91a5a - languageName: node - linkType: hard - -"@types/lodash@npm:^4.14.169": - version: 4.14.169 - resolution: "@types/lodash@npm:4.14.169" - checksum: 78c9e49f4c9d21e72bdf5d7f64da3a2db4daad9e8b72cbd72605dacfddec49038e0ddc21e6646e169e78d4f365fb8abb34a03dbb29cbb1112f332adb81be3e4f +"@types/lodash@npm:^4.14.175": + version: 4.14.175 + resolution: "@types/lodash@npm:4.14.175" + checksum: 50721f33faa542f1b9f62f2ba769ed353c6036711e92bd89ce569f2ed247e38fb2a2899f6fd46466b1690fea7ae0239471e6a6093c54e8f2b0613e43e8eac19c languageName: node linkType: hard "@types/mdast@npm:^3.0.0": - version: 3.0.3 - resolution: "@types/mdast@npm:3.0.3" + version: 3.0.6 + resolution: "@types/mdast@npm:3.0.6" dependencies: "@types/unist": "*" - checksum: 5318624af815ac531e49de06da1d9458f1570f87274dced00353a240b2d2c4260f1fdd40c5e65784e4a4f49b0c5eb43f77faee60def723b501880ab3747b9916 - languageName: node - linkType: hard - -"@types/mime@npm:*": - version: 2.0.3 - resolution: "@types/mime@npm:2.0.3" - checksum: 1f4f144423e149f300438f7cdca9b308d7a18a944e63f5ddf262558208a22a64c8e79b6973d602d86928e19052b3256b492429951b34d037242bb1bdfddae388 + checksum: 11cd5f61616b75bee363f2af68e573262013867698c441d66dbe8177ab69d347b0abbcb27e90d39185771fc3b325a437fc4501f8fe70de7a618335ecc52d972b languageName: node linkType: hard "@types/minimist@npm:^1.2.0": - version: 1.2.0 - resolution: "@types/minimist@npm:1.2.0" - checksum: 30cbd9acd7ddb60bc3729adcc43a9da4940c90180fa0f08228f1da95ec6c00db2e3fd3af5280fc5345e3fa2637253bb5cf6625f30d571ef9bc3820a531febb7e + version: 1.2.2 + resolution: "@types/minimist@npm:1.2.2" + checksum: b8da83c66eb4aac0440e64674b19564d9d86c80ae273144db9681e5eeff66f238ade9515f5006ffbfa955ceff8b89ad2bd8ec577d7caee74ba101431fb07045d languageName: node linkType: hard "@types/node@npm:*, @types/node@npm:>=8.1.0": - version: 14.11.10 - resolution: "@types/node@npm:14.11.10" - checksum: 2303366e2791464366204f6695db0fd22f9d9023f06e1e736ce4e78a16b5ddea7034e5b9c764173b08c9de0b2623c68ccb5aacaccdeb4103a17fd41a5fd45000 + version: 16.3.2 + resolution: "@types/node@npm:16.3.2" + checksum: 242d23b6f9f93afa49eecac179444762000e99667a742c8b1de18c7875c7c952436ab319ea4fe3dca3e66bacb9e4f0ed69a25df9a155c6cedfc8cdaf52cb3453 languageName: node linkType: hard "@types/normalize-package-data@npm:^2.4.0": - version: 2.4.0 - resolution: "@types/normalize-package-data@npm:2.4.0" - checksum: fd22ba86a186a033dbe173840fd2ad091032be6d48163198869d058821acca7373d9f39cfd0caf42f3b92bc737723814fe1b4e9e90eacaa913836610aa197d3b + version: 2.4.1 + resolution: "@types/normalize-package-data@npm:2.4.1" + checksum: e87bccbf11f95035c89a132b52b79ce69a1e3652fe55962363063c9c0dae0fe2477ebc585e03a9652adc6f381d24ba5589cc5e51849df4ced3d3e004a7d40ed5 languageName: node linkType: hard @@ -3469,98 +2409,94 @@ __metadata: linkType: hard "@types/prop-types@npm:*": - version: 15.7.3 - resolution: "@types/prop-types@npm:15.7.3" - checksum: 41831d53c44c9eeafdaf9762bcb4553c13a3bbf990745ed9065a1cc3581b80633113b53fd49b202bf51731b258da5d0a9aa09c9035d5af7f78b0f6bc273f1325 + version: 15.7.4 + resolution: "@types/prop-types@npm:15.7.4" + checksum: ef6e1899e59b876c273811b1bd845022fc66d5a3d11cb38a25b6c566b30514ae38fe20a40f67622f362a4f4f7f9224e22d8da101cff3d6e97e11d7b4c307cfc1 languageName: node linkType: hard "@types/q@npm:^1.5.1": - version: 1.5.4 - resolution: "@types/q@npm:1.5.4" - checksum: 0842d7d71b5f102dcc2d78f893d0b42c1149f8cdc194d09e7a00be3187999ee3041e535357344818f8fee1b5e216b06bb7df7754d0fe08bd8aca38d3c45f1af6 + version: 1.5.5 + resolution: "@types/q@npm:1.5.5" + checksum: 3bd386fb97a0e5f1ce1ed7a14e39b60e469b5ca9d920a7f69e0cdb58d22c0f5bdd16637d8c3a5bfeda76663c023564dd47a65389ee9aaabd65aee54803d5ba45 languageName: node linkType: hard -"@types/qs@npm:*": - version: 6.9.5 - resolution: "@types/qs@npm:6.9.5" - checksum: eeb4597a9c5d3e7b3da3f6395fdfc53e435b79c863fd9d56ff14951e644d51d40870a7d8440c0f132299469941d27817b04ef3c7aa71242115eded0953f4f620 +"@types/qs@npm:^6.9.7": + version: 6.9.7 + resolution: "@types/qs@npm:6.9.7" + checksum: 7fd6f9c25053e9b5bb6bc9f9f76c1d89e6c04f7707a7ba0e44cc01f17ef5284adb82f230f542c2d5557d69407c9a40f0f3515e8319afd14e1e16b5543ac6cdba languageName: node linkType: hard -"@types/range-parser@npm:*": - version: 1.2.3 - resolution: "@types/range-parser@npm:1.2.3" - checksum: a0a4218214d2c599e2128a8965e9183d1f0b8fc614def43a2183cf80534d10fcf86357c823c7907e779df0ab048fd1fa3818b4c8f0f6f99ba150a3f99df7d03d +"@types/react-dom@npm:^17.0.9": + version: 17.0.9 + resolution: "@types/react-dom@npm:17.0.9" + dependencies: + "@types/react": "*" + checksum: b7e898e1a22643a371f58e801a3d1d8cf13a82d77063c24be73e840ef8d877ca1d04adc5db168d0dac3167dc050a26b1d70efc5fe8566a7f46a3c488a8322989 languageName: node linkType: hard -"@types/react-dom@npm:^17.0.5": - version: 17.0.5 - resolution: "@types/react-dom@npm:17.0.5" +"@types/react-is@npm:^17.0.2": + version: 17.0.2 + resolution: "@types/react-is@npm:17.0.2" dependencies: "@types/react": "*" - checksum: ff301198c621864e1ee6c566285dc5cdc9eb5d881ca7fe7fcb8ebf29afe0357ffb7f77e401ab81ff444c64ff1375f653eeb28f04cd088a361915dee31cb3f4a8 + checksum: ecd4f59e66858ebf13988c13de32e0f1753e9f0ec9a330bbf99c7c8ec75d3b52ad01965a7912c463615c0498965c1f17ea8a1a06606cf8edeb4b723f7ab74879 languageName: node linkType: hard "@types/react-redux@npm:^7.1.16": - version: 7.1.16 - resolution: "@types/react-redux@npm:7.1.16" + version: 7.1.18 + resolution: "@types/react-redux@npm:7.1.18" dependencies: "@types/hoist-non-react-statics": ^3.3.0 "@types/react": "*" hoist-non-react-statics: ^3.3.0 redux: ^4.0.0 - checksum: c07ee677be781df70aa6209d4152373ec470f6c99b50051e302add8b57d49e89322250959bf9e192738cccc5dbbe05c77514339a45b46ec973c8326227408f26 + checksum: 8aa24c15df711e2a20f903843f42491316094c3a49a90dcae86dcafa8fdb2318fdfaa983e23d67840986f11131b9b8856a5d6971288d68fa8aa592adc348a942 languageName: node linkType: hard -"@types/react@npm:*": - version: 16.9.53 - resolution: "@types/react@npm:16.9.53" +"@types/react-redux@npm:^7.1.19": + version: 7.1.19 + resolution: "@types/react-redux@npm:7.1.19" dependencies: - "@types/prop-types": "*" - csstype: ^3.0.2 - checksum: 858b53f1b9c09a8eb65826c9bef0d61cfab8befb968745777fe18a1b32eb707ffaa70fdb6c1a5697251a530dfe5b0b926e5d7a033fddcb6952bc67291eb175a8 + "@types/hoist-non-react-statics": ^3.3.0 + "@types/react": "*" + hoist-non-react-statics: ^3.3.0 + redux: ^4.0.0 + checksum: 32a1b21f6a5e45cd6e78fdb4b86974ea444a35539c3c1270d66132527b2c45051f9642a3e2296616c72407dc019d0629c0183bcca64fbf3ba19443484cb70df7 languageName: node linkType: hard -"@types/react@npm:^17.0.5": - version: 17.0.5 - resolution: "@types/react@npm:17.0.5" +"@types/react@npm:*": + version: 17.0.14 + resolution: "@types/react@npm:17.0.14" dependencies: "@types/prop-types": "*" "@types/scheduler": "*" csstype: ^3.0.2 - checksum: 86bfb0be783b95771aa61a5e480f3d878a8cb9b9eeea0d02eee7978dc9899a7cba3b346a2c9bd7460d353231fcdee8af7b7e20ad036f706fbe55e1f6519efa3e + checksum: ca2eca8f33ddbcba46932efeb8affdd274ea5800ea38bf8bc8de205808d09de21ea1f3d6ab156573aca393b912f0d908826cc6ad92470a3f2b6c34e70d5f75db languageName: node linkType: hard -"@types/resolve@npm:1.17.1": - version: 1.17.1 - resolution: "@types/resolve@npm:1.17.1" +"@types/react@npm:^17.0.30": + version: 17.0.30 + resolution: "@types/react@npm:17.0.30" dependencies: - "@types/node": "*" - checksum: dc6a6df507656004e242dcb02c784479deca516d5f4b58a1707e708022b269ae147e1da0521f3e8ad0d63638869d87e0adc023f0bd5454aa6f72ac66c7525cf5 + "@types/prop-types": "*" + "@types/scheduler": "*" + csstype: ^3.0.2 + checksum: e3aaac1b8fda6e3622b75db0bd7d8dc412c2f2b77a00afdd32cae8c71fb0b1ca6926ab1fbe1c536dd51d96c0ba372738993837a8df1637637aaab7b86e421b7f languageName: node linkType: hard "@types/scheduler@npm:*": - version: 0.16.1 - resolution: "@types/scheduler@npm:0.16.1" - checksum: 2ff8034df029a6cbb3623b05fa895cac4fc504806a8e948ebe29675a1edfa5ac04faac7611016076b3ffefc2037bbe344ad1978304059b2d4c78e513ec43c7bf - languageName: node - linkType: hard - -"@types/serve-static@npm:*": - version: 1.13.5 - resolution: "@types/serve-static@npm:1.13.5" - dependencies: - "@types/express-serve-static-core": "*" - "@types/mime": "*" - checksum: 82d93129d097cf8c94348e7c1fef65e3d5838775f6fa6a2e3240a57a0dc8fd8dc57cf535223acee36f8c242e6bda97ce2a5dccf57fbad408498ab71492144b8a + version: 0.16.2 + resolution: "@types/scheduler@npm:0.16.2" + checksum: b6b4dcfeae6deba2e06a70941860fb1435730576d3689225a421280b7742318d1548b3d22c1f66ab68e414f346a9542f29240bc955b6332c5b11e561077583bc languageName: node linkType: hard @@ -3572,9 +2508,9 @@ __metadata: linkType: hard "@types/unist@npm:*, @types/unist@npm:^2.0.0, @types/unist@npm:^2.0.2": - version: 2.0.3 - resolution: "@types/unist@npm:2.0.3" - checksum: 4427306b094561da28164e7e5250c4e6b382cb8eac40bf7e6bb0ff1e6e00c13e47aaf32e4a08fc8ba54602d07f79a39fb9ba304cc9dc886b1e3caf824649edbd + version: 2.0.6 + resolution: "@types/unist@npm:2.0.6" + checksum: 25cb860ff10dde48b54622d58b23e66214211a61c84c0f15f88d38b61aa1b53d4d46e42b557924a93178c501c166aa37e28d7f6d994aba13d24685326272d5db languageName: node linkType: hard @@ -3596,154 +2532,154 @@ __metadata: languageName: node linkType: hard -"@webassemblyjs/ast@npm:1.11.0": - version: 1.11.0 - resolution: "@webassemblyjs/ast@npm:1.11.0" +"@webassemblyjs/ast@npm:1.11.1": + version: 1.11.1 + resolution: "@webassemblyjs/ast@npm:1.11.1" dependencies: - "@webassemblyjs/helper-numbers": 1.11.0 - "@webassemblyjs/helper-wasm-bytecode": 1.11.0 - checksum: ee81d1a40d04da516e82296db366be8236acb7ef26b86877723cfd0a23e8c9579895beb523be1491f06f06db2bccdf6102ea99099fcdd41ab17f236524b8e747 + "@webassemblyjs/helper-numbers": 1.11.1 + "@webassemblyjs/helper-wasm-bytecode": 1.11.1 + checksum: 1eee1534adebeece635362f8e834ae03e389281972611408d64be7895fc49f48f98fddbbb5339bf8a72cb101bcb066e8bca3ca1bf1ef47dadf89def0395a8d87 languageName: node linkType: hard -"@webassemblyjs/floating-point-hex-parser@npm:1.11.0": - version: 1.11.0 - resolution: "@webassemblyjs/floating-point-hex-parser@npm:1.11.0" - checksum: bcfbf90a1e23217c4f5200a1d20226f07b2ef5adddea1f0ed7729c04efec8445ec1bc9e57a2f29480ea80e25a50c6b3d46ebb90cd776de8ffbbb648d4235e332 +"@webassemblyjs/floating-point-hex-parser@npm:1.11.1": + version: 1.11.1 + resolution: "@webassemblyjs/floating-point-hex-parser@npm:1.11.1" + checksum: b8efc6fa08e4787b7f8e682182d84dfdf8da9d9c77cae5d293818bc4a55c1f419a87fa265ab85252b3e6c1fd323d799efea68d825d341a7c365c64bc14750e97 languageName: node linkType: hard -"@webassemblyjs/helper-api-error@npm:1.11.0": - version: 1.11.0 - resolution: "@webassemblyjs/helper-api-error@npm:1.11.0" - checksum: d606eef863c028ba872afe706ad56acc5cdcae568f90c74a6159c063dfa4c199a41f81b17a2bf02a31c059a68d6acc115a020109e09d0dfa77f639dd5a45815a +"@webassemblyjs/helper-api-error@npm:1.11.1": + version: 1.11.1 + resolution: "@webassemblyjs/helper-api-error@npm:1.11.1" + checksum: 0792813f0ed4a0e5ee0750e8b5d0c631f08e927f4bdfdd9fe9105dc410c786850b8c61bff7f9f515fdfb149903bec3c976a1310573a4c6866a94d49bc7271959 languageName: node linkType: hard -"@webassemblyjs/helper-buffer@npm:1.11.0": - version: 1.11.0 - resolution: "@webassemblyjs/helper-buffer@npm:1.11.0" - checksum: cce45295e533a83db0fd9a31e2f94d679a835c88765eca18922a0c6d5fddbcb515ee11f53c7867e17220c647f748bbd0e30af717086361b1f121cfd4ccd7ab9c +"@webassemblyjs/helper-buffer@npm:1.11.1": + version: 1.11.1 + resolution: "@webassemblyjs/helper-buffer@npm:1.11.1" + checksum: a337ee44b45590c3a30db5a8b7b68a717526cf967ada9f10253995294dbd70a58b2da2165222e0b9830cd4fc6e4c833bf441a721128d1fe2e9a7ab26b36003ce languageName: node linkType: hard -"@webassemblyjs/helper-numbers@npm:1.11.0": - version: 1.11.0 - resolution: "@webassemblyjs/helper-numbers@npm:1.11.0" +"@webassemblyjs/helper-numbers@npm:1.11.1": + version: 1.11.1 + resolution: "@webassemblyjs/helper-numbers@npm:1.11.1" dependencies: - "@webassemblyjs/floating-point-hex-parser": 1.11.0 - "@webassemblyjs/helper-api-error": 1.11.0 + "@webassemblyjs/floating-point-hex-parser": 1.11.1 + "@webassemblyjs/helper-api-error": 1.11.1 "@xtuc/long": 4.2.2 - checksum: 66f20c755b2df23064128109c13178a9c24beac76278c1f36561ef87ce16cf3d92fc29e677921d86a952cc6bda5fb7d527947663bb21bd092932ce05ca278044 + checksum: 44d2905dac2f14d1e9b5765cf1063a0fa3d57295c6d8930f6c59a36462afecc6e763e8a110b97b342a0f13376166c5d41aa928e6ced92e2f06b071fd0db59d3a languageName: node linkType: hard -"@webassemblyjs/helper-wasm-bytecode@npm:1.11.0": - version: 1.11.0 - resolution: "@webassemblyjs/helper-wasm-bytecode@npm:1.11.0" - checksum: 0110bfa3755886ea402b86256ce98a9106d0349672e0528c5da27c7672479a4d885458e231591cb0a99c1b07a93c5d046a86fdcbf0c9245c0ade11a9b3a4d772 +"@webassemblyjs/helper-wasm-bytecode@npm:1.11.1": + version: 1.11.1 + resolution: "@webassemblyjs/helper-wasm-bytecode@npm:1.11.1" + checksum: eac400113127832c88f5826bcc3ad1c0db9b3dbd4c51a723cfdb16af6bfcbceb608170fdaac0ab7731a7e18b291be7af68a47fcdb41cfe0260c10857e7413d97 languageName: node linkType: hard -"@webassemblyjs/helper-wasm-section@npm:1.11.0": - version: 1.11.0 - resolution: "@webassemblyjs/helper-wasm-section@npm:1.11.0" +"@webassemblyjs/helper-wasm-section@npm:1.11.1": + version: 1.11.1 + resolution: "@webassemblyjs/helper-wasm-section@npm:1.11.1" dependencies: - "@webassemblyjs/ast": 1.11.0 - "@webassemblyjs/helper-buffer": 1.11.0 - "@webassemblyjs/helper-wasm-bytecode": 1.11.0 - "@webassemblyjs/wasm-gen": 1.11.0 - checksum: 54153a703dfc18884a301f75bd29af58177ba890e0a0ca57561cd1d7553a18875a46966f546054e15de6c7280ce30cc9e63c6986bad6093583e188c08168b4b6 + "@webassemblyjs/ast": 1.11.1 + "@webassemblyjs/helper-buffer": 1.11.1 + "@webassemblyjs/helper-wasm-bytecode": 1.11.1 + "@webassemblyjs/wasm-gen": 1.11.1 + checksum: 617696cfe8ecaf0532763162aaf748eb69096fb27950219bb87686c6b2e66e11cd0614d95d319d0ab1904bc14ebe4e29068b12c3e7c5e020281379741fe4bedf languageName: node linkType: hard -"@webassemblyjs/ieee754@npm:1.11.0": - version: 1.11.0 - resolution: "@webassemblyjs/ieee754@npm:1.11.0" +"@webassemblyjs/ieee754@npm:1.11.1": + version: 1.11.1 + resolution: "@webassemblyjs/ieee754@npm:1.11.1" dependencies: "@xtuc/ieee754": ^1.2.0 - checksum: c4dbd174263b98ef4d18ce3200a08094e7d4e66ba703cf3cd8a581d5676648e2e182e370437a64a1a7b770f2956782f9e67ab980833f0d123752a3b7c4fa9248 + checksum: 23a0ac02a50f244471631802798a816524df17e56b1ef929f0c73e3cde70eaf105a24130105c60aff9d64a24ce3b640dad443d6f86e5967f922943a7115022ec languageName: node linkType: hard -"@webassemblyjs/leb128@npm:1.11.0": - version: 1.11.0 - resolution: "@webassemblyjs/leb128@npm:1.11.0" +"@webassemblyjs/leb128@npm:1.11.1": + version: 1.11.1 + resolution: "@webassemblyjs/leb128@npm:1.11.1" dependencies: "@xtuc/long": 4.2.2 - checksum: 0d5f977d600da64d448dda84df99f6b6e0c2773eb30f5b4e5bb733f12da56377acec1cc275979973277d6caf8bef90d29e3ba7442674c9e5a107b010ce267864 + checksum: 33ccc4ade2f24de07bf31690844d0b1ad224304ee2062b0e464a610b0209c79e0b3009ac190efe0e6bd568b0d1578d7c3047fc1f9d0197c92fc061f56224ff4a languageName: node linkType: hard -"@webassemblyjs/utf8@npm:1.11.0": - version: 1.11.0 - resolution: "@webassemblyjs/utf8@npm:1.11.0" - checksum: 6e7d2024cdfb6104fdc9865d5f4a1c3212fde96b8fe229375e1b9034929f0b5587d644ca095005cc1a8b3a4d00030581f9d3a9a1fd53c05ed74d77f178ee1de0 +"@webassemblyjs/utf8@npm:1.11.1": + version: 1.11.1 + resolution: "@webassemblyjs/utf8@npm:1.11.1" + checksum: 972c5cfc769d7af79313a6bfb96517253a270a4bf0c33ba486aa43cac43917184fb35e51dfc9e6b5601548cd5931479a42e42c89a13bb591ffabebf30c8a6a0b languageName: node linkType: hard -"@webassemblyjs/wasm-edit@npm:1.11.0": - version: 1.11.0 - resolution: "@webassemblyjs/wasm-edit@npm:1.11.0" +"@webassemblyjs/wasm-edit@npm:1.11.1": + version: 1.11.1 + resolution: "@webassemblyjs/wasm-edit@npm:1.11.1" dependencies: - "@webassemblyjs/ast": 1.11.0 - "@webassemblyjs/helper-buffer": 1.11.0 - "@webassemblyjs/helper-wasm-bytecode": 1.11.0 - "@webassemblyjs/helper-wasm-section": 1.11.0 - "@webassemblyjs/wasm-gen": 1.11.0 - "@webassemblyjs/wasm-opt": 1.11.0 - "@webassemblyjs/wasm-parser": 1.11.0 - "@webassemblyjs/wast-printer": 1.11.0 - checksum: 9ca4c3ff9abdb9648fc1039f8dcf600f7017a270724ce7751f125b49d19daae4731b95dfd14e4c077b09a7ab7c0105fa5820dc1ded3bdc0257509d5e3d6d6b27 + "@webassemblyjs/ast": 1.11.1 + "@webassemblyjs/helper-buffer": 1.11.1 + "@webassemblyjs/helper-wasm-bytecode": 1.11.1 + "@webassemblyjs/helper-wasm-section": 1.11.1 + "@webassemblyjs/wasm-gen": 1.11.1 + "@webassemblyjs/wasm-opt": 1.11.1 + "@webassemblyjs/wasm-parser": 1.11.1 + "@webassemblyjs/wast-printer": 1.11.1 + checksum: 6d7d9efaec1227e7ef7585a5d7ff0be5f329f7c1c6b6c0e906b18ed2e9a28792a5635e450aca2d136770d0207225f204eff70a4b8fd879d3ac79e1dcc26dbeb9 languageName: node linkType: hard -"@webassemblyjs/wasm-gen@npm:1.11.0": - version: 1.11.0 - resolution: "@webassemblyjs/wasm-gen@npm:1.11.0" +"@webassemblyjs/wasm-gen@npm:1.11.1": + version: 1.11.1 + resolution: "@webassemblyjs/wasm-gen@npm:1.11.1" dependencies: - "@webassemblyjs/ast": 1.11.0 - "@webassemblyjs/helper-wasm-bytecode": 1.11.0 - "@webassemblyjs/ieee754": 1.11.0 - "@webassemblyjs/leb128": 1.11.0 - "@webassemblyjs/utf8": 1.11.0 - checksum: 678e2b8ee3e13ebcd7794c78379ab95501e4c8499b4d4b669bd9a780f3c34aecace7690d09adb0df7cc531ce8bfd28fdfad72df05c57a779c67595caafbc55ee + "@webassemblyjs/ast": 1.11.1 + "@webassemblyjs/helper-wasm-bytecode": 1.11.1 + "@webassemblyjs/ieee754": 1.11.1 + "@webassemblyjs/leb128": 1.11.1 + "@webassemblyjs/utf8": 1.11.1 + checksum: 1f6921e640293bf99fb16b21e09acb59b340a79f986c8f979853a0ae9f0b58557534b81e02ea2b4ef11e929d946708533fd0693c7f3712924128fdafd6465f5b languageName: node linkType: hard -"@webassemblyjs/wasm-opt@npm:1.11.0": - version: 1.11.0 - resolution: "@webassemblyjs/wasm-opt@npm:1.11.0" +"@webassemblyjs/wasm-opt@npm:1.11.1": + version: 1.11.1 + resolution: "@webassemblyjs/wasm-opt@npm:1.11.1" dependencies: - "@webassemblyjs/ast": 1.11.0 - "@webassemblyjs/helper-buffer": 1.11.0 - "@webassemblyjs/wasm-gen": 1.11.0 - "@webassemblyjs/wasm-parser": 1.11.0 - checksum: 7f0e5ed309b7c9983f45deacb583a2508de418f8819a36782859bfe7ceabd2dc1a521c24129319ec10f03940c1ae20352c2dbcefe86561d9fae1246ee292c6c2 + "@webassemblyjs/ast": 1.11.1 + "@webassemblyjs/helper-buffer": 1.11.1 + "@webassemblyjs/wasm-gen": 1.11.1 + "@webassemblyjs/wasm-parser": 1.11.1 + checksum: 21586883a20009e2b20feb67bdc451bbc6942252e038aae4c3a08e6f67b6bae0f5f88f20bfc7bd0452db5000bacaf5ab42b98cf9aa034a6c70e9fc616142e1db languageName: node linkType: hard -"@webassemblyjs/wasm-parser@npm:1.11.0": - version: 1.11.0 - resolution: "@webassemblyjs/wasm-parser@npm:1.11.0" +"@webassemblyjs/wasm-parser@npm:1.11.1": + version: 1.11.1 + resolution: "@webassemblyjs/wasm-parser@npm:1.11.1" dependencies: - "@webassemblyjs/ast": 1.11.0 - "@webassemblyjs/helper-api-error": 1.11.0 - "@webassemblyjs/helper-wasm-bytecode": 1.11.0 - "@webassemblyjs/ieee754": 1.11.0 - "@webassemblyjs/leb128": 1.11.0 - "@webassemblyjs/utf8": 1.11.0 - checksum: cd861066c9fdd16a9b8c920aa6f27039e200f4d06aff35b438c1acc3e22ec81af26bacd1467f563edb7e00bf00d473ed12dc6d481089c61dc4e01f58e416a7d7 + "@webassemblyjs/ast": 1.11.1 + "@webassemblyjs/helper-api-error": 1.11.1 + "@webassemblyjs/helper-wasm-bytecode": 1.11.1 + "@webassemblyjs/ieee754": 1.11.1 + "@webassemblyjs/leb128": 1.11.1 + "@webassemblyjs/utf8": 1.11.1 + checksum: 1521644065c360e7b27fad9f4bb2df1802d134dd62937fa1f601a1975cde56bc31a57b6e26408b9ee0228626ff3ba1131ae6f74ffb7d718415b6528c5a6dbfc2 languageName: node linkType: hard -"@webassemblyjs/wast-printer@npm:1.11.0": - version: 1.11.0 - resolution: "@webassemblyjs/wast-printer@npm:1.11.0" +"@webassemblyjs/wast-printer@npm:1.11.1": + version: 1.11.1 + resolution: "@webassemblyjs/wast-printer@npm:1.11.1" dependencies: - "@webassemblyjs/ast": 1.11.0 + "@webassemblyjs/ast": 1.11.1 "@xtuc/long": 4.2.2 - checksum: 5462cf6c7ffb4082464c7238497064d067f1421648a5f9fa784d04223a876a9b41cbd95106e899326840aad36fea0b7a39cad264b5c73df8c7fc2bca6313fd74 + checksum: f15ae4c2441b979a3b4fce78f3d83472fb22350c6dc3fd34bfe7c3da108e0b2360718734d961bba20e7716cb8578e964b870da55b035e209e50ec9db0378a3f7 languageName: node linkType: hard @@ -3768,22 +2704,30 @@ __metadata: languageName: node linkType: hard -"accepts@npm:^1.3.5": - version: 1.3.7 - resolution: "accepts@npm:1.3.7" - dependencies: - mime-types: ~2.1.24 - negotiator: 0.6.2 - checksum: 27fc8060ffc69481ff6719cd3ee06387d2b88381cb0ce626f087781bbd02201a645a9febc8e7e7333558354b33b1d2f922ad13560be4ec1b7ba9e76fc1c1241d +"acorn-import-assertions@npm:1.7.1": + version: 1.7.1 + resolution: "acorn-import-assertions@npm:1.7.1" + peerDependencies: + acorn: ^8 + checksum: a4c0db43affda2f175b60009144752f1c62dd8db591dd6f0608970e3a35d9a20b94d079e7de03ead639a8797cbcc1e7e19fe6236db6d5113c21ca82f7059c522 languageName: node linkType: hard -"acorn-jsx@npm:^5.2.0, acorn-jsx@npm:^5.3.1": - version: 5.3.1 - resolution: "acorn-jsx@npm:5.3.1" +"acorn-import-assertions@npm:^1.7.6": + version: 1.7.6 + resolution: "acorn-import-assertions@npm:1.7.6" + peerDependencies: + acorn: ^8 + checksum: bc8a1585abd70ebfb3a6b3112f5e3974fee3ac598230f916a3857f0ad4fa7e72197be532c49d1feeb83678ef264f34bee9bf1934dfb2f276d88468134a51fa9f + languageName: node + linkType: hard + +"acorn-jsx@npm:^5.3.1": + version: 5.3.2 + resolution: "acorn-jsx@npm:5.3.2" peerDependencies: acorn: ^6.0.0 || ^7.0.0 || ^8.0.0 - checksum: daf441a9d7b59c0ea1f7fe2934c48aca604a007455129ce35fa62ec3d4c8363e2efc2d4da636d18ce0049979260ba07d8b42bc002ae95182916d2c90901529c2 + checksum: c3d3b2a89c9a056b205b69530a37b972b404ee46ec8e5b341666f9513d3163e2a4f214a71f4dfc7370f5a9c07472d2fd1c11c91c3f03d093e37637d95da98950 languageName: node linkType: hard @@ -3796,12 +2740,42 @@ __metadata: languageName: node linkType: hard -"acorn@npm:^8.2.1": - version: 8.2.4 - resolution: "acorn@npm:8.2.4" +"acorn@npm:^8.4.1": + version: 8.4.1 + resolution: "acorn@npm:8.4.1" bin: acorn: bin/acorn - checksum: cb4ffa2746bebd8ea808e98e139e2e497eaa254de45877abea6a2bad4e65a824fc37e23f6d163562b1e4ee12fcc8fa03948986c0a353b314bff78a0327168cb2 + checksum: 0a8fd264349285aa36194b26a5a9d70c3641e78ad459ec44b9a9a5738e0ce6d86ec120ca2c0f04477165cee912fdeb158f62d6582697185c82278bdbf71187f8 + languageName: node + linkType: hard + +"agent-base@npm:6, agent-base@npm:^6.0.2": + version: 6.0.2 + resolution: "agent-base@npm:6.0.2" + dependencies: + debug: 4 + checksum: f52b6872cc96fd5f622071b71ef200e01c7c4c454ee68bc9accca90c98cfb39f2810e3e9aa330435835eedc8c23f4f8a15267f67c6e245d2b33757575bdac49d + languageName: node + linkType: hard + +"agentkeepalive@npm:^4.1.3": + version: 4.1.4 + resolution: "agentkeepalive@npm:4.1.4" + dependencies: + debug: ^4.1.0 + depd: ^1.1.2 + humanize-ms: ^1.2.1 + checksum: d49c24d4b333e9507119385895a583872f4f53d62764a89be165926e824056a126955bae4a6d3c6f7cd26f4089621a40f7b27675f7868214d82118f744b9e82d + languageName: node + linkType: hard + +"aggregate-error@npm:^3.0.0": + version: 3.1.0 + resolution: "aggregate-error@npm:3.1.0" + dependencies: + clean-stack: ^2.0.0 + indent-string: ^4.0.0 + checksum: 1101a33f21baa27a2fa8e04b698271e64616b886795fd43c31068c07533c7b3facfcaf4e9e0cab3624bd88f729a592f1c901a1a229c9e490eafce411a8644b79 languageName: node linkType: hard @@ -3814,7 +2788,7 @@ __metadata: languageName: node linkType: hard -"ajv@npm:^6.10.0, ajv@npm:^6.12.3, ajv@npm:^6.12.4, ajv@npm:^6.12.5": +"ajv@npm:^6.10.0, ajv@npm:^6.12.4, ajv@npm:^6.12.5": version: 6.12.6 resolution: "ajv@npm:6.12.6" dependencies: @@ -3827,14 +2801,14 @@ __metadata: linkType: hard "ajv@npm:^8.0.1": - version: 8.4.0 - resolution: "ajv@npm:8.4.0" + version: 8.6.2 + resolution: "ajv@npm:8.6.2" dependencies: fast-deep-equal: ^3.1.1 json-schema-traverse: ^1.0.0 require-from-string: ^2.0.2 uri-js: ^4.2.2 - checksum: 05d5114c05716e697ba5bf9c529c3c1788291e0f480f1d1cccc78d9097e37dfaf15adf562582372ac178bb07e56df5c6c2a3062654826b8a6466b3ec4f4ed1ab + checksum: b86d6cb86c69abbd8ce71ab7d4ff272660bf6d34fa9fbe770f73e54da59d531b2546692e36e2b35bbcfb11d20db774b4c09189671335185b8c799d65194e5169 languageName: node linkType: hard @@ -3882,6 +2856,13 @@ __metadata: languageName: node linkType: hard +"ansi-regex@npm:^5.0.1": + version: 5.0.1 + resolution: "ansi-regex@npm:5.0.1" + checksum: 2aa4bb54caf2d622f1afdad09441695af2a83aa3fe8b8afa581d205e57ed4261c183c4d3877cee25794443fde5876417d859c108078ab788d6af7e4fe52eb66b + languageName: node + linkType: hard + "ansi-styles@npm:^3.2.1": version: 3.2.1 resolution: "ansi-styles@npm:3.2.1" @@ -3900,20 +2881,13 @@ __metadata: languageName: node linkType: hard -"any-promise@npm:^1.1.0": - version: 1.3.0 - resolution: "any-promise@npm:1.3.0" - checksum: 0ee8a9bdbe882c90464d75d1f55cf027f5458650c4bd1f0467e65aec38ccccda07ca5844969ee77ed46d04e7dded3eaceb027e8d32f385688523fe305fa7e1de - languageName: node - linkType: hard - -"anymatch@npm:~3.1.1": - version: 3.1.1 - resolution: "anymatch@npm:3.1.1" +"anymatch@npm:~3.1.1, anymatch@npm:~3.1.2": + version: 3.1.2 + resolution: "anymatch@npm:3.1.2" dependencies: normalize-path: ^3.0.0 picomatch: ^2.0.4 - checksum: c951385862bf114807d594bdffccb769bd7219ddc14f24fc135cde075ad2477a97991567b8bb5032d4f279f96897f0c2af6468a350a6c674ac0a5ee3b62a26d6 + checksum: 985163db2292fac9e5a1e072bf99f1b5baccf196e4de25a0b0b81865ebddeb3b3eb4480734ef0a2ac8c002845396b91aa89121f5b84f93981a4658164a9ec6e9 languageName: node linkType: hard @@ -3953,41 +2927,29 @@ __metadata: languageName: node linkType: hard -"array-filter@npm:^1.0.0": - version: 1.0.0 - resolution: "array-filter@npm:1.0.0" - checksum: 467054291f522d7f633b1f5e79aac9008ade50a7354e0178d9ec8f0091ec03bc19a41d4eb22985daf2279a5c27be6d7cf410733539e7fccb0742145b89aca438 - languageName: node - linkType: hard - -"array-flatten@npm:^3.0.0": - version: 3.0.0 - resolution: "array-flatten@npm:3.0.0" - checksum: ad00c51ca70cf837501fb6da823ba39bc6a86b43d0b76d840daa02fe0f8e68e94ad5bc2d0d038053118b879aaca8ea6168c32c7387a2fa5b118ad28db4f1f863 - languageName: node - linkType: hard - -"array-includes@npm:^3.1.1": - version: 3.1.1 - resolution: "array-includes@npm:3.1.1" +"array-includes@npm:^3.1.1, array-includes@npm:^3.1.2, array-includes@npm:^3.1.3": + version: 3.1.3 + resolution: "array-includes@npm:3.1.3" dependencies: + call-bind: ^1.0.2 define-properties: ^1.1.3 - es-abstract: ^1.17.0 + es-abstract: ^1.18.0-next.2 + get-intrinsic: ^1.1.1 is-string: ^1.0.5 - checksum: e6d35d400c156a7242eb7fdeac5a64fe2d2c96613c55daea015d828691d8f26c2bd1b34f9786728fb3b00f2d0211374ecf2e1c5f8a56beb434bf8b2a9725235f + checksum: eaab8812412b5ec921c8fe678a9d61f501b12f6c72e271e0e8652fe7f4145276cc7ad79ff303ac4ed69cbf5135155bfb092b1b6d552e423e75106d1c887da150 languageName: node linkType: hard -"array-includes@npm:^3.1.3": - version: 3.1.3 - resolution: "array-includes@npm:3.1.3" +"array-includes@npm:^3.1.4": + version: 3.1.4 + resolution: "array-includes@npm:3.1.4" dependencies: call-bind: ^1.0.2 define-properties: ^1.1.3 - es-abstract: ^1.18.0-next.2 + es-abstract: ^1.19.1 get-intrinsic: ^1.1.1 - is-string: ^1.0.5 - checksum: eaab8812412b5ec921c8fe678a9d61f501b12f6c72e271e0e8652fe7f4145276cc7ad79ff303ac4ed69cbf5135155bfb092b1b6d552e423e75106d1c887da150 + is-string: ^1.0.7 + checksum: 69967c38c52698f84b50a7aed5554aadc89c6ac6399b6d92ad061a5952f8423b4bba054c51d40963f791dfa294d7247cdd7988b6b1f2c5861477031c6386e1c0 languageName: node linkType: hard @@ -4014,14 +2976,14 @@ __metadata: languageName: node linkType: hard -"array.prototype.flat@npm:^1.2.4": - version: 1.2.4 - resolution: "array.prototype.flat@npm:1.2.4" +"array.prototype.flat@npm:^1.2.5": + version: 1.2.5 + resolution: "array.prototype.flat@npm:1.2.5" dependencies: - call-bind: ^1.0.0 + call-bind: ^1.0.2 define-properties: ^1.1.3 - es-abstract: ^1.18.0-next.1 - checksum: 1ec5d9887ae45e70e4b993e801b440ae5ddcd0d2c6d1dbe214c311e91436152f510916bdac82b066693544b9801a3c510dfbec8a278ababf8de7eb0bde74636f + es-abstract: ^1.19.0 + checksum: 9cc6414b111abfc7717e39546e4887b1e5ec74df8f1618d83425deaa95752bf05d475d1d241253b4d88d4a01f8e1bc84845ad5b7cc2047f8db2f614512acd40e languageName: node linkType: hard @@ -4056,15 +3018,6 @@ __metadata: languageName: node linkType: hard -"asn1@npm:~0.2.3": - version: 0.2.4 - resolution: "asn1@npm:0.2.4" - dependencies: - safer-buffer: ~2.1.0 - checksum: aa5d6f77b1e0597df53824c68cfe82d1d89ce41cb3520148611f025fbb3101b2d25dd6a40ad34e4fac10f6b19ed5e8628cd4b7d212261e80e83f02b39ee5663c - languageName: node - linkType: hard - "assert-plus@npm:1.0.0, assert-plus@npm:^1.0.0": version: 1.0.0 resolution: "assert-plus@npm:1.0.0" @@ -4115,13 +3068,6 @@ __metadata: languageName: node linkType: hard -"asynckit@npm:^0.4.0": - version: 0.4.0 - resolution: "asynckit@npm:0.4.0" - checksum: 7b78c451df768adba04e2d02e63e2d0bf3b07adcd6e42b4cf665cb7ce899bedd344c69a1dcbce355b5f972d597b25aaa1c1742b52cffd9caccb22f348114f6be - languageName: node - linkType: hard - "autoprefixer@npm:^9.6.1, autoprefixer@npm:^9.8.6": version: 9.8.6 resolution: "autoprefixer@npm:9.8.6" @@ -4140,11 +3086,9 @@ __metadata: linkType: hard "available-typed-arrays@npm:^1.0.2": - version: 1.0.2 - resolution: "available-typed-arrays@npm:1.0.2" - dependencies: - array-filter: ^1.0.0 - checksum: 915a89f31bb9ba51f7396d5ae7d8eff99bc6d6ba9f337068a6916e9ba56fa47bfea7ea69f6f6ad131eac57f76582c721e5f0594e8fea7156894313fc41203fbd + version: 1.0.4 + resolution: "available-typed-arrays@npm:1.0.4" + checksum: 28135bb29f2f8b4784a017ba0f652da9a1ffc88529ffc74f40e8fdc8f292375dbb6a8b0eb993ef9f1d0a5cb1bd8592c40eac715df79296630e9f83b7b3f4ae7f languageName: node linkType: hard @@ -4155,33 +3099,19 @@ __metadata: languageName: node linkType: hard -"aws-sign2@npm:~0.7.0": - version: 0.7.0 - resolution: "aws-sign2@npm:0.7.0" - checksum: b148b0bb0778098ad8cf7e5fc619768bcb51236707ca1d3e5b49e41b171166d8be9fdc2ea2ae43d7decf02989d0aaa3a9c4caa6f320af95d684de9b548a71525 - languageName: node - linkType: hard - -"aws4@npm:^1.8.0": - version: 1.11.0 - resolution: "aws4@npm:1.11.0" - checksum: 5a00d045fd0385926d20ebebcfba5ec79d4482fe706f63c27b324d489a04c68edb0db99ed991e19eda09cb8c97dc2452059a34d97545cebf591d7a2b5a10999f - languageName: node - linkType: hard - "axe-core@npm:^4.0.2": - version: 4.0.2 - resolution: "axe-core@npm:4.0.2" - checksum: 56a0203d3e39091ff7886a8b22f7790187db88171863cbd487ee71b733143556ad2eb50c542dc1bd3f519de25cc3a238cf6627e5d00535483f2cd07aef7d27fb + version: 4.3.1 + resolution: "axe-core@npm:4.3.1" + checksum: 270a6353d877052dd3be95eabb0a6a792fdd92f3225a7237dc3e7ac4b7b0ef973cba36ca6a21587f0c3e9ff174e9980caf52b614bcfa48691f6f499b7c2f9d85 languageName: node linkType: hard -"axios@npm:^0.21.1": - version: 0.21.1 - resolution: "axios@npm:0.21.1" +"axios@npm:^0.23.0": + version: 0.23.0 + resolution: "axios@npm:0.23.0" dependencies: - follow-redirects: ^1.10.0 - checksum: c87915fa0b18c15c63350112b6b3563a3e2ae524d7707de0a73d2e065e0d30c5d3da8563037bc29d4cc1b7424b5a350cb7274fa52525c6c04a615fe561c6ab11 + follow-redirects: ^1.14.4 + checksum: 879f61022bd825da2a7ebb72410bc528683ba54c140436baa0b924b7cab02ec0919fe64a04a546f482a75f5fd570b77884f9826764a95f2fd88265e61dcb70db languageName: node linkType: hard @@ -4216,46 +3146,39 @@ __metadata: languageName: node linkType: hard -"babel-plugin-polyfill-corejs2@npm:^0.2.0": - version: 0.2.0 - resolution: "babel-plugin-polyfill-corejs2@npm:0.2.0" +"babel-plugin-polyfill-corejs2@npm:^0.2.2": + version: 0.2.2 + resolution: "babel-plugin-polyfill-corejs2@npm:0.2.2" dependencies: "@babel/compat-data": ^7.13.11 - "@babel/helper-define-polyfill-provider": ^0.2.0 + "@babel/helper-define-polyfill-provider": ^0.2.2 semver: ^6.1.1 peerDependencies: "@babel/core": ^7.0.0-0 - checksum: 429c96fea278d44ae7469ea9ce580572bdf963d710c883b01956cbcf1a0b8c069a7ff26fa0d1174ca63e14a7cc7f61ca5b70ecbf7daa4c5a4e4ed9ee417b2e1d + checksum: eee45ecce743e06840d29936a7f4a9f9eca19552ba010e9f3676c6a2697ab815230f39953296b72f09665de0e8fffe260e52b348011a9ddba36cfa7eec6f8c51 languageName: node linkType: hard -"babel-plugin-polyfill-corejs3@npm:^0.2.0": - version: 0.2.0 - resolution: "babel-plugin-polyfill-corejs3@npm:0.2.0" +"babel-plugin-polyfill-corejs3@npm:^0.2.2": + version: 0.2.3 + resolution: "babel-plugin-polyfill-corejs3@npm:0.2.3" dependencies: - "@babel/helper-define-polyfill-provider": ^0.2.0 - core-js-compat: ^3.9.1 + "@babel/helper-define-polyfill-provider": ^0.2.2 + core-js-compat: ^3.14.0 peerDependencies: "@babel/core": ^7.0.0-0 - checksum: 9ddada641ee463f89651a36afe5dcc5d91f8985cd1dd0e639d5586a85bbf11f3dbf0ec056265043accb831e3f204a34bfa59a870e40a1f72ece43a765dfbd946 + checksum: e390c5317b35808633d32db2c1718aef6af788df148adc6fa54e56d2266896ad2da2d200163f392e06ae1ebd1a0feaeaf18d7a337dea70387429618898b90a68 languageName: node linkType: hard -"babel-plugin-polyfill-regenerator@npm:^0.2.0": - version: 0.2.0 - resolution: "babel-plugin-polyfill-regenerator@npm:0.2.0" +"babel-plugin-polyfill-regenerator@npm:^0.2.2": + version: 0.2.2 + resolution: "babel-plugin-polyfill-regenerator@npm:0.2.2" dependencies: - "@babel/helper-define-polyfill-provider": ^0.2.0 + "@babel/helper-define-polyfill-provider": ^0.2.2 peerDependencies: "@babel/core": ^7.0.0-0 - checksum: 85a39fe4d82eeea7238a1b9d57c3978c34329b355078c124e9a48b1be5cb932d1f52956a0576195c6896a3298766cd4571600a4f04ec638596b792c4ea608f6f - languageName: node - linkType: hard - -"babel-plugin-syntax-jsx@npm:6.18.0": - version: 6.18.0 - resolution: "babel-plugin-syntax-jsx@npm:6.18.0" - checksum: 0c7ce5b81d6cfc01a7dd7a76a9a8f090ee02ba5c890310f51217ef1a7e6163fb7848994bbc14fd560117892e82240df9c7157ad0764da67ca5f2afafb73a7d27 + checksum: 3e32e318fd91d65c3af2bb363189f00d3839f07a73a08813b553553e07da205162091b428dd5b6ffb6ea4caf531ff43ebc54197b0a5a9dc2fc5c7e9a650e946d languageName: node linkType: hard @@ -4267,9 +3190,9 @@ __metadata: linkType: hard "balanced-match@npm:^1.0.0": - version: 1.0.0 - resolution: "balanced-match@npm:1.0.0" - checksum: 9b67bfe558772f40cf743a3469b48b286aecec2ea9fe80c48d74845e53aab1cef524fafedf123a63019b49ac397760573ef5f173f539423061f7217cbb5fbd40 + version: 1.0.2 + resolution: "balanced-match@npm:1.0.2" + checksum: 9706c088a283058a8a99e0bf91b0a2f75497f185980d9ffa8b304de1d9e58ebda7c72c07ebf01dadedaac5b2907b2c6f566f660d62bd336c3468e960403b9d65 languageName: node linkType: hard @@ -4280,19 +3203,10 @@ __metadata: languageName: node linkType: hard -"base64-js@npm:^1.0.2": - version: 1.3.1 - resolution: "base64-js@npm:1.3.1" - checksum: 957b9ced0ea1b39588a117193f801b045a5fb2d6f1b9943dd304bcad46e5681bf837fe092105692b11653658e8443764139d6b11d3c4037093b96e8db4e1dbb2 - languageName: node - linkType: hard - -"bcrypt-pbkdf@npm:^1.0.0": - version: 1.0.2 - resolution: "bcrypt-pbkdf@npm:1.0.2" - dependencies: - tweetnacl: ^0.14.3 - checksum: 4edfc9fe7d07019609ccf797a2af28351736e9d012c8402a07120c4453a3b789a15f2ee1530dc49eee8f7eb9379331a8dd4b3766042b9e502f74a68e7f662291 +"base64-js@npm:^1.0.2, base64-js@npm:^1.3.1": + version: 1.5.1 + resolution: "base64-js@npm:1.5.1" + checksum: 669632eb3745404c2f822a18fc3a0122d2f9a7a13f7fb8b5823ee19d1d2ff9ee5b52c53367176ea4ad093c332fd5ab4bd0ebae5a8e27917a4105a4cfc86b1005 languageName: node linkType: hard @@ -4304,34 +3218,34 @@ __metadata: linkType: hard "binary-extensions@npm:^2.0.0": - version: 2.1.0 - resolution: "binary-extensions@npm:2.1.0" - checksum: 16ef0ca9b8ebf1fa2376658d1fba6840b311ddfef81c507dbe0465ae3e9545899d9a5ae513e32907963259073e8f87247b0c43d43f13ed1c50ea1e29e9d1d19f + version: 2.2.0 + resolution: "binary-extensions@npm:2.2.0" + checksum: ccd267956c58d2315f5d3ea6757cf09863c5fc703e50fbeb13a7dc849b812ef76e3cf9ca8f35a0c48498776a7478d7b4a0418e1e2b8cb9cb9731f2922aaad7f8 languageName: node linkType: hard "bl@npm:^4.0.3": - version: 4.0.3 - resolution: "bl@npm:4.0.3" + version: 4.1.0 + resolution: "bl@npm:4.1.0" dependencies: buffer: ^5.5.0 inherits: ^2.0.4 readable-stream: ^3.4.0 - checksum: 4e011e5985ebecfc4ec2874f12e3d094b4e516610686caa26d93b07961c8053545e607d6fb1d6ba16559ac2b3dba3e8517a68380b377e58ab73fa09831319c29 + checksum: 9e8521fa7e83aa9427c6f8ccdcba6e8167ef30cc9a22df26effcc5ab682ef91d2cbc23a239f945d099289e4bbcfae7a192e9c28c84c6202e710a0dfec3722662 languageName: node linkType: hard -"bn.js@npm:^4.0.0, bn.js@npm:^4.1.0, bn.js@npm:^4.4.0": - version: 4.11.9 - resolution: "bn.js@npm:4.11.9" - checksum: 59b67623585ca568f81bc0a00b215cd09ab75cbf632c73fcbe6a19c207ea7a510684e61becad6cdfcc678f716792f49de5a70fc057465e4e5e79f13d81291171 +"bn.js@npm:^4.0.0, bn.js@npm:^4.1.0, bn.js@npm:^4.11.9": + version: 4.12.0 + resolution: "bn.js@npm:4.12.0" + checksum: 39afb4f15f4ea537b55eaf1446c896af28ac948fdcf47171961475724d1bb65118cca49fa6e3d67706e4790955ec0e74de584e45c8f1ef89f46c812bee5b5a12 languageName: node linkType: hard -"bn.js@npm:^5.1.1": - version: 5.1.3 - resolution: "bn.js@npm:5.1.3" - checksum: 6a51cf48699e4b01d5afcec842e406052c358c9644da79d620a9a79e532908732e63849ee6e7b4680967bf866dcb22ae9da18ee1695448846957ba3421f0a2a3 +"bn.js@npm:^5.0.0, bn.js@npm:^5.1.1": + version: 5.2.0 + resolution: "bn.js@npm:5.2.0" + checksum: 6117170393200f68b35a061ecbf55d01dd989302e7b3c798a3012354fa638d124f0b2f79e63f77be5556be80322a09c40339eda6413ba7468524c0b6d4b4cb7a languageName: node linkType: hard @@ -4368,7 +3282,7 @@ __metadata: languageName: node linkType: hard -"brorand@npm:^1.0.1": +"brorand@npm:^1.0.1, brorand@npm:^1.1.0": version: 1.1.0 resolution: "brorand@npm:1.1.0" checksum: 8a05c9f3c4b46572dec6ef71012b1946db6cae8c7bb60ccd4b7dd5a84655db49fe043ecc6272e7ef1f69dc53d6730b9e2a3a03a8310509a3d797a618cbee52be @@ -4413,12 +3327,12 @@ __metadata: linkType: hard "browserify-rsa@npm:^4.0.0, browserify-rsa@npm:^4.0.1": - version: 4.0.1 - resolution: "browserify-rsa@npm:4.0.1" + version: 4.1.0 + resolution: "browserify-rsa@npm:4.1.0" dependencies: - bn.js: ^4.1.0 + bn.js: ^5.0.0 randombytes: ^2.0.1 - checksum: e5d8406e65f8e9a2e038f6fa0cb30108269a1ab33c1563ddc78fb0fff1a43ea21d44bd3dcd01a783683f60dcbc4b58c63120a11f6d09939e3f84af378e6caef8 + checksum: 155f0c135873efc85620571a33d884aa8810e40176125ad424ec9d85016ff105a07f6231650914a760cca66f29af0494087947b7be34880dd4599a0cd3c38e54 languageName: node linkType: hard @@ -4448,51 +3362,7 @@ __metadata: languageName: node linkType: hard -"browserslist@npm:4.16.1": - version: 4.16.1 - resolution: "browserslist@npm:4.16.1" - dependencies: - caniuse-lite: ^1.0.30001173 - colorette: ^1.2.1 - electron-to-chromium: ^1.3.634 - escalade: ^3.1.1 - node-releases: ^1.1.69 - bin: - browserslist: cli.js - checksum: aa4367989d0046487ed94f6318280189ddbf28112870e31aff5405e6dd5a862ad254e70aa3058773a9ffe9ae5ea29d567ce0c5b8a4020c1052b63cd801869847 - languageName: node - linkType: hard - -"browserslist@npm:^4.12.0, browserslist@npm:^4.6.4, browserslist@npm:^4.8.5": - version: 4.14.5 - resolution: "browserslist@npm:4.14.5" - dependencies: - caniuse-lite: ^1.0.30001135 - electron-to-chromium: ^1.3.571 - escalade: ^3.1.0 - node-releases: ^1.1.61 - bin: - browserslist: cli.js - checksum: 6ded3e849056cbda92bc363a937c72692365c07c6f8c135476ffc7a637cb88f2f1c7ba8a0fd2996fc460895bbb7e558928ff05797a1fd2feaf082a794ba3da2c - languageName: node - linkType: hard - -"browserslist@npm:^4.14.5": - version: 4.16.0 - resolution: "browserslist@npm:4.16.0" - dependencies: - caniuse-lite: ^1.0.30001165 - colorette: ^1.2.1 - electron-to-chromium: ^1.3.621 - escalade: ^3.1.1 - node-releases: ^1.1.67 - bin: - browserslist: cli.js - checksum: e304640346660e7e711b9b1f1fdd8eae162fcd373cd801408f75d051ffa88006e9b5b784d192be2957c1bd0c39c9364539dbfb2a54e993acc24d315e1e18c933 - languageName: node - linkType: hard - -"browserslist@npm:^4.16.6": +"browserslist@npm:4.16.6, browserslist@npm:^4.12.0, browserslist@npm:^4.14.5, browserslist@npm:^4.16.6, browserslist@npm:^4.6.4": version: 4.16.6 resolution: "browserslist@npm:4.16.6" dependencies: @@ -4521,7 +3391,7 @@ __metadata: languageName: node linkType: hard -"buffer@npm:5.6.0, buffer@npm:^5.5.0": +"buffer@npm:5.6.0": version: 5.6.0 resolution: "buffer@npm:5.6.0" dependencies: @@ -4542,10 +3412,13 @@ __metadata: languageName: node linkType: hard -"builtin-modules@npm:^3.1.0": - version: 3.1.0 - resolution: "builtin-modules@npm:3.1.0" - checksum: 954d8004f21961c92218eab15a02d3cea1c6c19312a8228546cdd8feae1dafc1aaa4746c2a8f9be9df15255756cc622fde702ce0ef8a319abfe1a505ca99f38d +"buffer@npm:^5.5.0": + version: 5.7.1 + resolution: "buffer@npm:5.7.1" + dependencies: + base64-js: ^1.3.1 + ieee754: ^1.1.13 + checksum: e2cf8429e1c4c7b8cbd30834ac09bd61da46ce35f5c22a78e6c2f04497d6d25541b16881e30a019c6fd3154150650ccee27a308eff3e26229d788bbdeb08ab84 languageName: node linkType: hard @@ -4563,20 +3436,35 @@ __metadata: languageName: node linkType: hard -"bytes@npm:3.1.0, bytes@npm:^3.0.0, bytes@npm:^3.1.0": +"bytes@npm:3.1.0": version: 3.1.0 resolution: "bytes@npm:3.1.0" checksum: 7c3b21c5d9d44ed455460d5d36a31abc6fa2ce3807964ba60a4b03fd44454c8cf07bb0585af83bfde1c5cc2ea4bbe5897bc3d18cd15e0acf25a3615a35aba2df languageName: node linkType: hard -"cache-content-type@npm:^1.0.0": - version: 1.0.1 - resolution: "cache-content-type@npm:1.0.1" +"cacache@npm:^15.0.5": + version: 15.2.0 + resolution: "cacache@npm:15.2.0" dependencies: - mime-types: ^2.1.18 - ylru: ^1.2.0 - checksum: 18db4d59452669ccbfd7146a1510a37eb28e9eccf18ca7a4eb603dff2edc5cccdca7498fc3042a2978f76f11151fba486eb9eb69d9afa3fb124957870aef4fd3 + "@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 + checksum: 34d0fba6030dd3f1f9de4d9fb486cfa8f6ec836ab00d75b846b40c06f96e64898e781f715d19a2c357a601a899c339a44446f94dd328f173605af165a295dd29 languageName: node linkType: hard @@ -4622,17 +3510,10 @@ __metadata: languageName: node linkType: hard -"caniuse-lite@npm:^1.0.30000981, caniuse-lite@npm:^1.0.30001109, caniuse-lite@npm:^1.0.30001135, caniuse-lite@npm:^1.0.30001165, caniuse-lite@npm:^1.0.30001173, caniuse-lite@npm:^1.0.30001179, caniuse-lite@npm:^1.0.30001202, caniuse-lite@npm:^1.0.30001219": - version: 1.0.30001228 - resolution: "caniuse-lite@npm:1.0.30001228" - checksum: d7ea2234d3ad1841dab6cd0b6ee16e89958f5893ef2e024a7447d6f889f496e40b6dafe000f391b8d4f0c0ef08671dbb5969fd66e6f74d402994865ce5705a53 - languageName: node - linkType: hard - -"caseless@npm:~0.12.0": - version: 0.12.0 - resolution: "caseless@npm:0.12.0" - checksum: b43bd4c440aa1e8ee6baefee8063b4850fd0d7b378f6aabc796c9ec8cb26d27fb30b46885350777d9bd079c5256c0e1329ad0dc7c2817e0bb466810ebb353751 +"caniuse-lite@npm:^1.0.30000981, caniuse-lite@npm:^1.0.30001109, caniuse-lite@npm:^1.0.30001202, caniuse-lite@npm:^1.0.30001219, caniuse-lite@npm:^1.0.30001228": + version: 1.0.30001245 + resolution: "caniuse-lite@npm:1.0.30001245" + checksum: f4a9a49a5a004c71cf24ed22c5d5d190d2d21854d5fd61e2b17e1ba47509c24a073f951285912212573450917608e63c82b07c7c9b367839a8d7b84f7517fb91 languageName: node linkType: hard @@ -4657,17 +3538,7 @@ __metadata: languageName: node linkType: hard -"chalk@npm:^4.0.0, chalk@npm:^4.1.0": - version: 4.1.0 - resolution: "chalk@npm:4.1.0" - dependencies: - ansi-styles: ^4.1.0 - supports-color: ^7.1.0 - checksum: 5561c7b4c063badee3e16d04bce50bd033e1be1bf4c6948639275683ffa7a1993c44639b43c22b1c505f0f813a24b1889037eb182546b48946f9fe7cdd0e7d13 - languageName: node - linkType: hard - -"chalk@npm:^4.1.1": +"chalk@npm:^4.0.0, chalk@npm:^4.1.0, chalk@npm:^4.1.1": version: 4.1.1 resolution: "chalk@npm:4.1.1" dependencies: @@ -4698,7 +3569,7 @@ __metadata: languageName: node linkType: hard -"chokidar@npm:3.5.1, chokidar@npm:>=3.0.0 <4.0.0": +"chokidar@npm:3.5.1": version: 3.5.1 resolution: "chokidar@npm:3.5.1" dependencies: @@ -4717,6 +3588,25 @@ __metadata: languageName: node linkType: hard +"chokidar@npm:>=3.0.0 <4.0.0": + version: 3.5.2 + resolution: "chokidar@npm:3.5.2" + dependencies: + 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 + dependenciesMeta: + fsevents: + optional: true + checksum: d1fda32fcd67d9f6170a8468ad2630a3c6194949c9db3f6a91b16478c328b2800f433fb5d2592511b6cb145a47c013ea1cce60b432b1a001ae3ee978a8bffc2d + languageName: node + linkType: hard + "chownr@npm:^1.1.1": version: 1.1.4 resolution: "chownr@npm:1.1.4" @@ -4732,11 +3622,9 @@ __metadata: linkType: hard "chrome-trace-event@npm:^1.0.2": - version: 1.0.2 - resolution: "chrome-trace-event@npm:1.0.2" - dependencies: - tslib: ^1.9.0 - checksum: a104606fd07e6191848fa15d4031ac41c1715d025074574bdbb27d998a20d75d860a2060a5aca840bfbf97ec2ef6b72df9b387ed4109a8fc6eb5c362477c9294 + version: 1.0.3 + resolution: "chrome-trace-event@npm:1.0.3" + checksum: cb8b1fc7e881aaef973bd0c4a43cd353c2ad8323fb471a041e64f7c2dd849cde4aad15f8b753331a32dda45c973f032c8a03b8177fc85d60eaa75e91e08bfb97 languageName: node linkType: hard @@ -4750,13 +3638,27 @@ __metadata: languageName: node linkType: hard -"classnames@npm:2.2.6, classnames@npm:^2.2.5": +"classnames@npm:2.2.6": version: 2.2.6 resolution: "classnames@npm:2.2.6" checksum: 09a4fda780158aa8399079898eabeeca0c48c28641d9e4de140db7412e5e346843039ded1af0152f755afc2cc246ff8c3d6f227bf0dcb004e070b7fa14ec54cc languageName: node linkType: hard +"classnames@npm:2.x, classnames@npm:^2.2.1, classnames@npm:^2.2.5, classnames@npm:^2.2.6": + version: 2.3.1 + resolution: "classnames@npm:2.3.1" + checksum: 14db8889d56c267a591f08b0834989fe542d47fac659af5a539e110cc4266694e8de86e4e3bbd271157dbd831361310a8293e0167141e80b0f03a0f175c80960 + languageName: node + linkType: hard + +"clean-stack@npm:^2.0.0": + version: 2.2.0 + resolution: "clean-stack@npm:2.2.0" + checksum: 2ac8cd2b2f5ec986a3c743935ec85b07bc174d5421a5efc8017e1f146a1cf5f781ae962618f416352103b32c9cd7e203276e8c28241bbe946160cab16149fb68 + languageName: node + linkType: hard + "clone-regexp@npm:^2.1.0": version: 2.2.0 resolution: "clone-regexp@npm:2.2.0" @@ -4773,25 +3675,6 @@ __metadata: languageName: node linkType: hard -"co-body@npm:^5.1.1": - version: 5.2.0 - resolution: "co-body@npm:5.2.0" - dependencies: - inflation: ^2.0.0 - qs: ^6.4.0 - raw-body: ^2.2.0 - type-is: ^1.6.14 - checksum: 48e1ffe00b8717b68154a939fa19f36d75aa66bba627f2977f28d11b732da56bdda445acda7053f7a85dfbac8a09a8aa257bceedaff7b6467cb25ab08ada9c8d - languageName: node - linkType: hard - -"co@npm:^4.6.0": - version: 4.6.0 - resolution: "co@npm:4.6.0" - checksum: 5210d9223010eb95b29df06a91116f2cf7c8e0748a9013ed853b53f362ea0e822f1e5bb054fb3cefc645239a4cf966af1f6133a3b43f40d591f3b68ed6cf0510 - languageName: node - linkType: hard - "coa@npm:^2.0.2": version: 2.0.2 resolution: "coa@npm:2.0.2" @@ -4850,12 +3733,12 @@ __metadata: linkType: hard "color-string@npm:^1.5.4": - version: 1.5.4 - resolution: "color-string@npm:1.5.4" + version: 1.5.5 + resolution: "color-string@npm:1.5.5" dependencies: color-name: ^1.0.0 simple-swizzle: ^0.2.2 - checksum: ae53f205d7a757ce7e1256dc4c8873675a8d3a5f136963183b94bbe725184239e0c19002177ee71488884abb7db958b1744cf83095c5b2b95d0b8937839162b7 + checksum: 4f19c2042c8953973a3c71a53e53da9fa54194cc1e0270bdbe431b14476b3faed054eb1c960910a8c2b631e7c67daccf79f8579eaa2d16dc99c3739c66f98ab1 languageName: node linkType: hard @@ -4869,29 +3752,13 @@ __metadata: languageName: node linkType: hard -"colorette@npm:^1.2.1": - version: 1.2.1 - resolution: "colorette@npm:1.2.1" - checksum: 06e2fcdb9e2a2c527ac84509a56eadf481cde1768933eb612808f3bb3a9d9872c06b4a9f95e4d0f7befeef8b38307f79b88242d9ea52470d1125520b8116de08 - languageName: node - linkType: hard - -"colorette@npm:^1.2.2": +"colorette@npm:^1.2.1, colorette@npm:^1.2.2": version: 1.2.2 resolution: "colorette@npm:1.2.2" checksum: 69fec14ddaedd0f5b00e4bae40dc4bc61f7050ebdc82983a595d6fd64e650b9dc3c033fff378775683138e992e0ddd8717ac7c7cec4d089679dcfbe3cd921b04 languageName: node linkType: hard -"combined-stream@npm:^1.0.6, combined-stream@npm:~1.0.6": - version: 1.0.8 - resolution: "combined-stream@npm:1.0.8" - dependencies: - delayed-stream: ~1.0.0 - checksum: 49fa4aeb4916567e33ea81d088f6584749fc90c7abec76fd516bf1c5aa5c79f3584b5ba3de6b86d26ddd64bae5329c4c7479343250cfe71c75bb366eae53bb7c - languageName: node - linkType: hard - "commander@npm:^2.20.0": version: 2.20.3 resolution: "commander@npm:2.20.3" @@ -4899,10 +3766,10 @@ __metadata: languageName: node linkType: hard -"comment-parser@npm:^0.7.6": - version: 0.7.6 - resolution: "comment-parser@npm:0.7.6" - checksum: 880e4d58c0b9dc69c50479d98a838b916980c4f0f53f8eff89e8d389bf40e93b8590c10e24faaca070a344226894e8ec8da6927b74e3f1f275b8445a14e488ea +"comment-parser@npm:1.2.4": + version: 1.2.4 + resolution: "comment-parser@npm:1.2.4" + checksum: 36ac280bce4c472fac22b3ec4d8aebb4d3d7c22c6808c70174f4deabee3b82144db66f8bd61eca9c514a6d0f12f6087ddab99e7d531e660d0da793b4730fd445 languageName: node linkType: hard @@ -4913,15 +3780,6 @@ __metadata: languageName: node linkType: hard -"compressible@npm:^2.0.0": - version: 2.0.18 - resolution: "compressible@npm:2.0.18" - dependencies: - mime-db: ">= 1.43.0 < 2" - checksum: 58321a85b375d39230405654721353f709d0c1442129e9a17081771b816302a012471a9b8f4864c7dbe02eef7f2aaac3c614795197092262e94b409c9be108f0 - languageName: node - linkType: hard - "concat-map@npm:0.0.1": version: 0.0.1 resolution: "concat-map@npm:0.0.1" @@ -4929,61 +3787,35 @@ __metadata: languageName: node linkType: hard -"console-browserify@npm:^1.1.0": - version: 1.2.0 - resolution: "console-browserify@npm:1.2.0" - checksum: 226591eeff8ed68e451dffb924c1fb750c654d54b9059b3b261d360f369d1f8f70650adecf2c7136656236a4bfeb55c39281b5d8a55d792ebbb99efd3d848d52 - languageName: node - linkType: hard - -"console-control-strings@npm:^1.0.0, console-control-strings@npm:~1.1.0": - version: 1.1.0 - resolution: "console-control-strings@npm:1.1.0" - checksum: 8755d76787f94e6cf79ce4666f0c5519906d7f5b02d4b884cf41e11dcd759ed69c57da0670afd9236d229a46e0f9cf519db0cd829c6dca820bb5a5c3def584ed - languageName: node - linkType: hard - -"constants-browserify@npm:1.0.0, constants-browserify@npm:^1.0.0": - version: 1.0.0 - resolution: "constants-browserify@npm:1.0.0" - checksum: f7ac8c6d0b6e4e0c77340a1d47a3574e25abd580bfd99ad707b26ff7618596cf1a5e5ce9caf44715e9e01d4a5d12cb3b4edaf1176f34c19adb2874815a56e64f - languageName: node - linkType: hard - -"contains-path@npm:^1.0.0": - version: 1.0.0 - resolution: "contains-path@npm:1.0.0" - dependencies: - normalize-path: ^2.1.1 - path-starts-with: ^1.0.0 - checksum: 18c878d65f76039c317cca44c8b480b82e7a6a5eec3084deb3232e54967bba71d58c36e427809c1ae56ade54624aa904cf89d4a678513db3e2567be3f9a235b3 +"confusing-browser-globals@npm:^1.0.10": + version: 1.0.10 + resolution: "confusing-browser-globals@npm:1.0.10" + checksum: 7ccdc44c2ca419cf6576c3e4336106e18d1c5337f547e461342f51aec4a10f96fdfe45414b522be3c7d24ea0b62bf4372cd37768022e4d6161707ffb2c0987e6 languageName: node linkType: hard -"content-disposition@npm:~0.5.2": - version: 0.5.3 - resolution: "content-disposition@npm:0.5.3" - dependencies: - safe-buffer: 5.1.2 - checksum: 95bf164c0b0b8199d3f44b7631e51b37f683c6a90b9baa4315bd3d405a6d1bc81b7346f0981046aa004331fb3d7a28b629514d01fc209a5251573fc7e4d33380 +"console-browserify@npm:^1.1.0": + version: 1.2.0 + resolution: "console-browserify@npm:1.2.0" + checksum: 226591eeff8ed68e451dffb924c1fb750c654d54b9059b3b261d360f369d1f8f70650adecf2c7136656236a4bfeb55c39281b5d8a55d792ebbb99efd3d848d52 languageName: node linkType: hard -"content-security-policy-builder@npm:^2.1.0": - version: 2.1.0 - resolution: "content-security-policy-builder@npm:2.1.0" - checksum: 375944b11164c20bbe74d434f6cbd144124b49669c5761e313f4397ee1f2405ac608cbaa763a2d138fdd4c8dbe6a5a813fefcf87c9cc5dfc451fcc5650776281 +"console-control-strings@npm:^1.0.0, console-control-strings@npm:~1.1.0": + version: 1.1.0 + resolution: "console-control-strings@npm:1.1.0" + checksum: 8755d76787f94e6cf79ce4666f0c5519906d7f5b02d4b884cf41e11dcd759ed69c57da0670afd9236d229a46e0f9cf519db0cd829c6dca820bb5a5c3def584ed languageName: node linkType: hard -"content-type@npm:^1.0.4": - version: 1.0.4 - resolution: "content-type@npm:1.0.4" - checksum: 3d93585fda985d1554eca5ebd251994327608d2e200978fdbfba21c0c679914d5faf266d17027de44b34a72c7b0745b18584ecccaa7e1fdfb6a68ac7114f12e0 +"constants-browserify@npm:1.0.0, constants-browserify@npm:^1.0.0": + version: 1.0.0 + resolution: "constants-browserify@npm:1.0.0" + checksum: f7ac8c6d0b6e4e0c77340a1d47a3574e25abd580bfd99ad707b26ff7618596cf1a5e5ce9caf44715e9e01d4a5d12cb3b4edaf1176f34c19adb2874815a56e64f languageName: node linkType: hard -"convert-source-map@npm:1.7.0, convert-source-map@npm:^1.7.0": +"convert-source-map@npm:1.7.0": version: 1.7.0 resolution: "convert-source-map@npm:1.7.0" dependencies: @@ -4992,6 +3824,15 @@ __metadata: languageName: node linkType: hard +"convert-source-map@npm:^1.7.0": + version: 1.8.0 + resolution: "convert-source-map@npm:1.8.0" + dependencies: + safe-buffer: ~5.1.1 + checksum: 985d974a2d33e1a2543ada51c93e1ba2f73eaed608dc39f229afc78f71dcc4c8b7d7c684aa647e3c6a3a204027444d69e53e169ce94e8d1fa8d7dee80c9c8fed + languageName: node + linkType: hard + "cookie@npm:^0.4.0": version: 0.4.1 resolution: "cookie@npm:0.4.1" @@ -4999,16 +3840,6 @@ __metadata: languageName: node linkType: hard -"cookies@npm:~0.8.0": - version: 0.8.0 - resolution: "cookies@npm:0.8.0" - dependencies: - depd: ~2.0.0 - keygrip: ~1.1.0 - checksum: 806055a44f128705265b1bc6a853058da18bf80dea3654ad99be20985b1fa1b14f86c1eef73644aab8071241f8a78acd57202b54c4c5c70769fc694fbb9c4edc - languageName: node - linkType: hard - "copy-to-clipboard@npm:^3": version: 3.3.1 resolution: "copy-to-clipboard@npm:3.3.1" @@ -5018,30 +3849,20 @@ __metadata: languageName: node linkType: hard -"core-js-compat@npm:^3.6.2": - version: 3.6.5 - resolution: "core-js-compat@npm:3.6.5" - dependencies: - browserslist: ^4.8.5 - semver: 7.0.0 - checksum: 16481135a61490d38731048ba41f966795d8f3929cc895a9a198678a42365967c0024b41670c0a84aff32a140b443ddd4adcdfc9f298777fc62a009750eda51f - languageName: node - linkType: hard - -"core-js-compat@npm:^3.9.0, core-js-compat@npm:^3.9.1": - version: 3.12.1 - resolution: "core-js-compat@npm:3.12.1" +"core-js-compat@npm:^3.14.0, core-js-compat@npm:^3.15.0": + version: 3.15.2 + resolution: "core-js-compat@npm:3.15.2" dependencies: browserslist: ^4.16.6 semver: 7.0.0 - checksum: a807d70b0a7fc06efe23b2863da008db279a5cefe7a95aebe2c37a3e81419e3bb7da08b85778220e0cecec4e0ec7dcaff196d857659944510c74bfdbde73bdde + checksum: ca68b51b4a75241dae44ae75bf01476c0c8505c1c6fe69dc3b3ae3ee0e8d39fadf415df21a2c46ea018c250aa76ba1a664e8cb2b6657a801eed1a2ac738d7968 languageName: node linkType: hard -"core-js-pure@npm:^3.0.0": - version: 3.6.5 - resolution: "core-js-pure@npm:3.6.5" - checksum: abc307bdfc0acec5bfa0c06d77e55ed524ca703cc4b4ee61054918ca3badea7b07cc89520425e86d27bdcd78aa5aa3408a7d393dcf7b29bb0bec8869c82081d8 +"core-js-pure@npm:^3.15.0": + version: 3.15.2 + resolution: "core-js-pure@npm:3.15.2" + checksum: b3f33de3d3ea8885784e0c817b4a84a9df0efa15d0504153e3e0243610c7cae5b9ef4c69c96ad238914217aae7ca5458d02239985a1d8613d003f32eab85f8e4 languageName: node linkType: hard @@ -5195,13 +4016,13 @@ __metadata: languageName: node linkType: hard -"css-tree@npm:1.0.0-alpha.39": - version: 1.0.0-alpha.39 - resolution: "css-tree@npm:1.0.0-alpha.39" +"css-tree@npm:^1.1.2": + version: 1.1.3 + resolution: "css-tree@npm:1.1.3" dependencies: - mdn-data: 2.0.6 + mdn-data: 2.0.14 source-map: ^0.6.1 - checksum: 3d440e8d0dfc61cadcf3fd7c8473bf7a1776d2e947e3b2d96658a58b14ddddaa06365e08948e6664749d561d894d61ac7690f66143617623175c5d52224cb9da + checksum: 79f9b81803991b6977b7fcb1588799270438274d89066ce08f117f5cdb5e20019b446d766c61506dd772c839df84caa16042d6076f20c97187f5abe3b50e7d1f languageName: node linkType: hard @@ -5244,57 +4065,51 @@ __metadata: languageName: node linkType: hard -"cssnano-preset-simple@npm:^2.0.0": - version: 2.0.0 - resolution: "cssnano-preset-simple@npm:2.0.0" +"cssnano-preset-simple@npm:^3.0.0": + version: 3.0.0 + resolution: "cssnano-preset-simple@npm:3.0.0" dependencies: caniuse-lite: ^1.0.30001202 peerDependencies: - postcss: ^8.2.1 - checksum: 57cdca9d96d4fc88788ae5662633caa88fe8a53be49d39f21c3a76497cb3728381a93aef41b3430a8b708d6af595c00317eb4aa3b0ccb5bc2ce7a731540fef96 + postcss: ^8.2.15 + checksum: 03ad717960abdf8786092609c57278632633cab2b4374cbbb7dfc7ced194339a429d01f61f29264f2da268c6aa6015be7a5cc397725902d20fac1c081cce7315 languageName: node linkType: hard -"cssnano-simple@npm:2.0.0": - version: 2.0.0 - resolution: "cssnano-simple@npm:2.0.0" +"cssnano-simple@npm:3.0.0": + version: 3.0.0 + resolution: "cssnano-simple@npm:3.0.0" dependencies: - cssnano-preset-simple: ^2.0.0 + cssnano-preset-simple: ^3.0.0 peerDependencies: - postcss: ^8.2.2 - checksum: 9efc3ab4c30c25ad7e02ff22e9da5eba73a231241c9ae4602d969f48046b2fbe9aada7e8a82fed14ae416651738f61eebf78cab98d635d7fd06a332c7a1a8750 + postcss: ^8.2.15 + peerDependenciesMeta: + postcss: + optional: true + checksum: 6d2410f91202aa0edd6a74363d34fcf9dada5b7f9d2127950785e50b1de4ff2144f2c81b72be87a93e7700c251858750df3128542ca44d0d505e430dfdf84b19 languageName: node linkType: hard "csso@npm:^4.0.2": - version: 4.0.3 - resolution: "csso@npm:4.0.3" + version: 4.2.0 + resolution: "csso@npm:4.2.0" dependencies: - css-tree: 1.0.0-alpha.39 - checksum: 685487adf1b5a223937c30b0b27fe36d02b97f373d8bd23b85170f6273032b560a43db3b63c25659b40d49ac708ae0dac40d6a0df205e98c5fc1b47731476e50 + css-tree: ^1.1.2 + checksum: 380ba9663da3bcea58dee358a0d8c4468bb6539be3c439dc266ac41c047217f52fd698fb7e4b6b6ccdfb8cf53ef4ceed8cc8ceccb8dfca2aa628319826b5b998 languageName: node linkType: hard "csstype@npm:^3.0.2": - version: 3.0.3 - resolution: "csstype@npm:3.0.3" - checksum: ae9b4fcd9b596164e6513181ffc1c99e76836610697826d88a03251c87c52e739f19c151c33d624171bf2bc970f1e4dfe3cc9f1492b9cc5a07a5a3b69ee8ebaf + version: 3.0.8 + resolution: "csstype@npm:3.0.8" + checksum: 5939a003858a31a32cbc52a8f45496aa0c2bcb4629b21c5bc14a7ddcac1a3d4adfd655f56843dc14940f60563378e9444af2c9c373b3f212601b9eeb6740b8db languageName: node linkType: hard "damerau-levenshtein@npm:^1.0.6": - version: 1.0.6 - resolution: "damerau-levenshtein@npm:1.0.6" - checksum: 4746e69c33e83038cac1f26100be6eb6a1cc1e52bdbf6d1c14a91aa0323cac35aea7e4f2bedf53e39db80c08853c88ec64b0e8b1622f05c80281636d4da7d139 - languageName: node - linkType: hard - -"dashdash@npm:^1.12.0": - version: 1.14.1 - resolution: "dashdash@npm:1.14.1" - dependencies: - assert-plus: ^1.0.0 - checksum: 3634c249570f7f34e3d34f866c93f866c5b417f0dd616275decae08147dcdf8fccfaa5947380ccfb0473998ea3a8057c0b4cd90c875740ee685d0624b2983598 + version: 1.0.7 + resolution: "damerau-levenshtein@npm:1.0.7" + checksum: ec8161cb381523e0db9b5c9b64863736da3197808b6fdc4a3a2ca764c0b4357e9232a4c5592220fb18755a91240b8fee7b13ab1b269fbbdc5f68c36f0053aceb languageName: node linkType: hard @@ -5305,19 +4120,19 @@ __metadata: languageName: node linkType: hard -"date-fns-tz@npm:^1.1.4": - version: 1.1.4 - resolution: "date-fns-tz@npm:1.1.4" +"date-fns-tz@npm:^1.1.6": + version: 1.1.6 + resolution: "date-fns-tz@npm:1.1.6" peerDependencies: date-fns: ">=2.0.0-alpha.13" - checksum: 400be5aac8de2b5beeca4f4a05c307b966384d8ea09dbff19342be0cf89793223cecfa58eb19e82e973f30517afbc9563599ddd7bca62a8dc5251fcd3504bffd + checksum: cfe4c799372fcb586b7f22d9c31e10df33dabc74452fbd92269ae02bbaed4024636c477b9aac06c521ec78a7391826d5526fedbcefbad2e5de25bcc00c61ad8f languageName: node linkType: hard -"date-fns@npm:^2.21.3": - version: 2.21.3 - resolution: "date-fns@npm:2.21.3" - checksum: 00dc783af23ab1ca686ea9a21acd9572733ca9544c40a26e3061fc190bb0663c638c88f35d7719553279ad08c787eae816eaa0043d141563efc8394235f6c857 +"date-fns@npm:^2.25.0": + version: 2.25.0 + resolution: "date-fns@npm:2.25.0" + checksum: 8896dc1dde0ee5ef77616942423bfa11fa2017a5ac19457293b7aaedc8822ff94f0a14eaf93da573b09b601dc0149eb430988a046cc9f79a2eb15f8c66c9c50c languageName: node linkType: hard @@ -5330,40 +4145,7 @@ __metadata: languageName: node linkType: hard -"debug@npm:^3.2.7": - version: 3.2.7 - resolution: "debug@npm:3.2.7" - dependencies: - ms: ^2.1.1 - checksum: b3d8c5940799914d30314b7c3304a43305fd0715581a919dacb8b3176d024a782062368405b47491516d2091d6462d4d11f2f4974a405048094f8bfebfa3071c - languageName: node - linkType: hard - -"debug@npm:^4.0.0": - version: 4.3.1 - resolution: "debug@npm:4.3.1" - dependencies: - ms: 2.1.2 - peerDependenciesMeta: - supports-color: - optional: true - checksum: 2c3352e37d5c46b0d203317cd45ea0e26b2c99f2d9dfec8b128e6ceba90dfb65425f5331bf3020fe9929d7da8c16758e737f4f3bfc0fce6b8b3d503bae03298b - languageName: node - linkType: hard - -"debug@npm:^4.0.1, debug@npm:^4.1.0, debug@npm:^4.1.1": - version: 4.2.0 - resolution: "debug@npm:4.2.0" - dependencies: - ms: 2.1.2 - peerDependenciesMeta: - supports-color: - optional: true - checksum: f901c2a64e5db14068145ebc82ff263aa484d2285fe11ff7c561827df2024d05dcaf3f320c85b519b7b77369e513eb0a46e206c6364ae6819a87d29b0284403b - languageName: node - linkType: hard - -"debug@npm:^4.3.1": +"debug@npm:4, debug@npm:^4.0.0, debug@npm:^4.0.1, debug@npm:^4.1.0, debug@npm:^4.1.1, debug@npm:^4.3.1, debug@npm:^4.3.2": version: 4.3.2 resolution: "debug@npm:4.3.2" dependencies: @@ -5375,12 +4157,12 @@ __metadata: languageName: node linkType: hard -"debug@npm:~3.1.0": - version: 3.1.0 - resolution: "debug@npm:3.1.0" +"debug@npm:^3.2.7": + version: 3.2.7 + resolution: "debug@npm:3.2.7" dependencies: - ms: 2.0.0 - checksum: 0b52718ab957254a5b3ca07fc34543bc778f358620c206a08452251eb7fc193c3ea3505072acbf4350219c14e2d71ceb7bdaa0d3370aa630b50da790458d08b3 + ms: ^2.1.1 + checksum: b3d8c5940799914d30314b7c3304a43305fd0715581a919dacb8b3176d024a782062368405b47491516d2091d6462d4d11f2f4974a405048094f8bfebfa3071c languageName: node linkType: hard @@ -5410,22 +4192,6 @@ __metadata: languageName: node linkType: hard -"decompress-response@npm:^6.0.0": - version: 6.0.0 - resolution: "decompress-response@npm:6.0.0" - dependencies: - mimic-response: ^3.1.0 - checksum: d377cf47e02d805e283866c3f50d3d21578b779731e8c5072d6ce8c13cc31493db1c2f6784da9d1d5250822120cefa44f1deab112d5981015f2e17444b763812 - languageName: node - linkType: hard - -"deep-equal@npm:~1.0.1": - version: 1.0.1 - resolution: "deep-equal@npm:1.0.1" - checksum: 5af8cbfcebf190491878a498caccc7dc9592f8ebd1685b976eacc3825619d222b5e929923163b92c4f414494e2b884f7ebf00c022e8198e8292deb70dd9785f4 - languageName: node - linkType: hard - "deep-extend@npm:^0.6.0": version: 0.6.0 resolution: "deep-extend@npm:0.6.0" @@ -5456,13 +4222,6 @@ __metadata: languageName: node linkType: hard -"delayed-stream@npm:~1.0.0": - version: 1.0.0 - resolution: "delayed-stream@npm:1.0.0" - checksum: 46fe6e83e2cb1d85ba50bd52803c68be9bd953282fa7096f51fc29edd5d67ff84ff753c51966061e5ba7cb5e47ef6d36a91924eddb7f3f3483b1c560f77a0020 - languageName: node - linkType: hard - "delegates@npm:^1.0.0": version: 1.0.0 resolution: "delegates@npm:1.0.0" @@ -5470,14 +4229,7 @@ __metadata: languageName: node linkType: hard -"depd@npm:^2.0.0, depd@npm:~2.0.0": - version: 2.0.0 - resolution: "depd@npm:2.0.0" - checksum: abbe19c768c97ee2eed6282d8ce3031126662252c58d711f646921c9623f9052e3e1906443066beec1095832f534e57c523b7333f8e7e0d93051ab6baef5ab3a - languageName: node - linkType: hard - -"depd@npm:~1.1.2": +"depd@npm:^1.1.2, depd@npm:~1.1.2": version: 1.1.2 resolution: "depd@npm:1.1.2" checksum: 6b406620d269619852885ce15965272b829df6f409724415e0002c8632ab6a8c0a08ec1f0bd2add05dc7bd7507606f7e2cc034fa24224ab829580040b835ecd9 @@ -5494,13 +4246,6 @@ __metadata: languageName: node linkType: hard -"destroy@npm:^1.0.4": - version: 1.0.4 - resolution: "destroy@npm:1.0.4" - checksum: da9ab4961dc61677c709da0c25ef01733042614453924d65636a7db37308fef8a24cd1e07172e61173d471ca175371295fbc984b0af5b2b4ff47cd57bd784c03 - languageName: node - linkType: hard - "detect-libc@npm:^1.0.3": version: 1.0.3 resolution: "detect-libc@npm:1.0.3" @@ -5530,19 +4275,19 @@ __metadata: languageName: node linkType: hard -"doctoc@npm:^2.0.0": - version: 2.0.0 - resolution: "doctoc@npm:2.0.0" +"doctoc@npm:^2.1.0": + version: 2.1.0 + resolution: "doctoc@npm:2.1.0" dependencies: "@textlint/markdown-to-ast": ~6.1.7 anchor-markdown-header: ~0.5.7 htmlparser2: ~4.1.0 minimist: ~1.2.5 - underscore: ~1.10.2 + underscore: ~1.12.1 update-section: ~0.3.3 bin: doctoc: doctoc.js - checksum: d0d4f32eb43a41ddd271e89d532cfb004a534cc57bc25579853d71c6d2a96d2242fd0405571a3ab5d2402a24f1256f993d9cfd05000c2c43e624b1a827709f8d + checksum: ca739bd6001d5deb3fad49b7ecbf568db2bd42da1d1e27b4e74506b88087f5a2cfb9132865ec1068a036c0509532d2a57770eab05c39a3582946abb6c4b2f07c languageName: node linkType: hard @@ -5564,6 +4309,13 @@ __metadata: languageName: node linkType: hard +"dom-align@npm:^1.7.0": + version: 1.12.2 + resolution: "dom-align@npm:1.12.2" + checksum: 0523f4d7c84c7a4e92b0f1d088e7e110f6bd109fc8b6f1f89e14d33bba63d7b54de26d311652e1527ead2c0700f671593af55f216cb8a67a80d9fc5ed7a23b95 + languageName: node + linkType: hard + "dom-serializer@npm:0": version: 0.2.2 resolution: "dom-serializer@npm:0.2.2" @@ -5575,13 +4327,13 @@ __metadata: linkType: hard "dom-serializer@npm:^1.0.1": - version: 1.1.0 - resolution: "dom-serializer@npm:1.1.0" + version: 1.3.2 + resolution: "dom-serializer@npm:1.3.2" dependencies: domelementtype: ^2.0.1 - domhandler: ^3.0.0 + domhandler: ^4.2.0 entities: ^2.0.0 - checksum: 1ce25d122ef2a76d0322b715f289351759bcfba362ca460a192e41f780d4dff0ac1552996bead4d5320877730e472ab81672df345e99e0e00da9df2470b065b9 + checksum: bff48714944d67b160db71ba244fb0f3fe72e77ef2ec8414e2eeb56f2d926e404a13456b8b83a5392e217ba47dec2ec0c368801b31481813e94d185276c3e964 languageName: node linkType: hard @@ -5606,10 +4358,10 @@ __metadata: languageName: node linkType: hard -"domelementtype@npm:^2.0.1": - version: 2.0.2 - resolution: "domelementtype@npm:2.0.2" - checksum: 1ccadc054e80cd1a6b635366de74331db643f9559b1dd892d3e508be4b81a5ca5dec39f41792a8a1a006934abc9d267020115010080043650b05c435c6f8c95f +"domelementtype@npm:^2.0.1, domelementtype@npm:^2.2.0": + version: 2.2.0 + resolution: "domelementtype@npm:2.2.0" + checksum: 24cb386198640cd58aa36f8c987f2ea61859929106d06ffcc8f547e70cb2ed82a6dc56dcb8252b21fba1f1ea07df6e4356d60bfe57f77114ca1aed6828362629 languageName: node linkType: hard @@ -5622,7 +4374,7 @@ __metadata: languageName: node linkType: hard -"domhandler@npm:^3.0.0, domhandler@npm:^3.3.0": +"domhandler@npm:^3.0.0": version: 3.3.0 resolution: "domhandler@npm:3.3.0" dependencies: @@ -5631,6 +4383,15 @@ __metadata: languageName: node linkType: hard +"domhandler@npm:^4.2.0": + version: 4.2.0 + resolution: "domhandler@npm:4.2.0" + dependencies: + domelementtype: ^2.2.0 + checksum: 7921ac317d6899525a4e6a6038137307271522175a73db58233e13c7860987e15e86654583b2c0fd02fc46a602f9bd86fd2671af13b9068b72e8b229f07b3d03 + languageName: node + linkType: hard + "domutils@npm:^1.5.1, domutils@npm:^1.7.0": version: 1.7.0 resolution: "domutils@npm:1.7.0" @@ -5642,73 +4403,42 @@ __metadata: linkType: hard "domutils@npm:^2.0.0": - version: 2.4.2 - resolution: "domutils@npm:2.4.2" + version: 2.7.0 + resolution: "domutils@npm:2.7.0" dependencies: dom-serializer: ^1.0.1 - domelementtype: ^2.0.1 - domhandler: ^3.3.0 - checksum: ccb9d226b1f7390b02d25ed007cfd13afaeec8f687f4df0e89175097abfd82b3d14126736daf1426c33b64e8d8c1bc73404953218f1e479aed5c1cd70809f073 - languageName: node - linkType: hard - -"dotenv@npm:^9.0.2": - version: 9.0.2 - resolution: "dotenv@npm:9.0.2" - checksum: 6b7980330a653089bc9b83362248547791151ee74f9881eb223ac2f4d641b174b708f77315d88708b551d45b4177afd3ba71bca4832f8807e003f71c2a0f83e7 - languageName: node - linkType: hard - -"ecc-jsbn@npm:~0.1.1": - version: 0.1.2 - resolution: "ecc-jsbn@npm:0.1.2" - dependencies: - jsbn: ~0.1.0 - safer-buffer: ^2.1.0 - checksum: 22fef4b6203e5f31d425f5b711eb389e4c6c2723402e389af394f8411b76a488fa414d309d866e2b577ce3e8462d344205545c88a8143cc21752a5172818888a - languageName: node - linkType: hard - -"ee-first@npm:1.1.1": - version: 1.1.1 - resolution: "ee-first@npm:1.1.1" - checksum: 1b4cac778d64ce3b582a7e26b218afe07e207a0f9bfe13cc7395a6d307849cfe361e65033c3251e00c27dd060cab43014c2d6b2647676135e18b77d2d05b3f4f + domelementtype: ^2.2.0 + domhandler: ^4.2.0 + checksum: a4da0fcc4c54f6b338111caa11c672e18968d6280e7a1ed5e01b8b09b7dc0829ab5e03821349f5b57e34811f7e96e89b8dddbe06bb8e395cf117342424667b7d languageName: node linkType: hard -"electron-to-chromium@npm:^1.3.571": - version: 1.3.582 - resolution: "electron-to-chromium@npm:1.3.582" - checksum: e416e116347690a006f6a4bba7e31ef07e65119f3458a5d70a56c8bbd3decc6c75764aa4462ee7f74e5e789750ae2a081bc277efd4b7aa07952e2ee3251cd214 - languageName: node - linkType: hard - -"electron-to-chromium@npm:^1.3.621": - version: 1.3.629 - resolution: "electron-to-chromium@npm:1.3.629" - checksum: 7ed40e823daae5081e315db4afc1a09f32c6dad77bcda138e34f3736da5f3cb95133ac43adbbbb8d61c2704f179434cc97b63180b12dd3a82ab86775007d98ea +"dotenv@npm:^10.0.0": + version: 10.0.0 + resolution: "dotenv@npm:10.0.0" + checksum: f412c5fe8c24fbe313d302d2500e247ba8a1946492db405a4de4d30dd0eb186a88a43f13c958c5a7de303938949c4231c56994f97d05c4bc1f22478d631b4005 languageName: node linkType: hard -"electron-to-chromium@npm:^1.3.634, electron-to-chromium@npm:^1.3.723": - version: 1.3.728 - resolution: "electron-to-chromium@npm:1.3.728" - checksum: cce118349c60872ae6bb9f27effbf5052c7be708dc63c5dc19c07a1c617165ee3d1282afbb85461a40196e93c99cacda1e37f401cb5494a23f7b04e82d200daf +"electron-to-chromium@npm:^1.3.723": + version: 1.3.778 + resolution: "electron-to-chromium@npm:1.3.778" + checksum: 77bc2c40808c92ee80300feb9427374773e9fc7c9864b33955311a33b74aaf539f0121ebb07574bdc1e8fb2bebc9fa67102b94c6ea52eb5bbc06604bcc2a83fd languageName: node linkType: hard "elliptic@npm:^6.5.3": - version: 6.5.3 - resolution: "elliptic@npm:6.5.3" + version: 6.5.4 + resolution: "elliptic@npm:6.5.4" dependencies: - bn.js: ^4.4.0 - brorand: ^1.0.1 + bn.js: ^4.11.9 + brorand: ^1.1.0 hash.js: ^1.0.0 - hmac-drbg: ^1.0.0 - inherits: ^2.0.1 - minimalistic-assert: ^1.0.0 - minimalistic-crypto-utils: ^1.0.0 - checksum: fe1e546ed35ff69622130eb56abd3df8b4e9f009922ec2f1a4437d9c752a026d570a9863751912076effa1060f559bee8d816d6e89835fe8111834694e812165 + hmac-drbg: ^1.0.1 + inherits: ^2.0.4 + minimalistic-assert: ^1.0.1 + minimalistic-crypto-utils: ^1.0.1 + checksum: d56d21fd04e97869f7ffcc92e18903b9f67f2d4637a23c860492fbbff5a3155fd9ca0184ce0c865dd6eb2487d234ce9551335c021c376cd2d3b7cb749c7d10f4 languageName: node linkType: hard @@ -5720,9 +4450,9 @@ __metadata: linkType: hard "emoji-regex@npm:^9.0.0": - version: 9.1.1 - resolution: "emoji-regex@npm:9.1.1" - checksum: 4b087a65f5504883e0270cedce1dfec570947482d7709c78ac34e87abc7b5637cb032594ccaaf88a8ddde6899b50b29ad834ba113b7a65b5436477a036e98e7c + version: 9.2.2 + resolution: "emoji-regex@npm:9.2.2" + checksum: 8487182da74aabd810ac6d6f1994111dfc0e331b01271ae01ec1eb0ad7b5ecc2bbbbd2f053c05cb55a1ac30449527d819bbfbf0e3de1023db308cbcb47f86601 languageName: node linkType: hard @@ -5747,14 +4477,7 @@ __metadata: languageName: node linkType: hard -"encodeurl@npm:^1.0.2": - version: 1.0.2 - resolution: "encodeurl@npm:1.0.2" - checksum: e50e3d508cdd9c4565ba72d2012e65038e5d71bdc9198cb125beb6237b5b1ade6c0d343998da9e170fb2eae52c1bed37d4d6d98a46ea423a0cddbed5ac3f780c - languageName: node - linkType: hard - -"encoding@npm:0.1.13": +"encoding@npm:0.1.13, encoding@npm:^0.1.12": version: 0.1.13 resolution: "encoding@npm:0.1.13" dependencies: @@ -5782,6 +4505,16 @@ __metadata: languageName: node linkType: hard +"enhanced-resolve@npm:^5.8.3": + version: 5.8.3 + resolution: "enhanced-resolve@npm:5.8.3" + dependencies: + graceful-fs: ^4.2.4 + tapable: ^2.2.0 + checksum: d79fbe531106448b768bb0673fb623ec0202d7ee70373ab7d4f4745d5dfe0806f38c9db7e7da8c941288fe475ab3d538db3791fce522056eeea40ca398c9e287 + languageName: node + linkType: hard + "enquirer@npm:^2.3.5": version: 2.3.6 resolution: "enquirer@npm:2.3.6" @@ -5799,16 +4532,23 @@ __metadata: linkType: hard "entities@npm:^2.0.0": - version: 2.1.0 - resolution: "entities@npm:2.1.0" - checksum: a10a877e489586a3f6a691fe49bf3fc4e58f06c8e80522f08214a5150ba457e7017b447d4913a3fa041bda06ee4c92517baa4d8d75373eaa79369e9639225ffd + version: 2.2.0 + resolution: "entities@npm:2.2.0" + checksum: 19010dacaf0912c895ea262b4f6128574f9ccf8d4b3b65c7e8334ad0079b3706376360e28d8843ff50a78aabcb8f08f0a32dbfacdc77e47ed77ca08b713669b3 languageName: node linkType: hard "env-paths@npm:^2.2.0": - version: 2.2.0 - resolution: "env-paths@npm:2.2.0" - checksum: ba2aea38301aafd69086be1f8cb453b92946e4840cb0de9d1c88a67e6f43a6174dcddb60b218ec36db8720b12de46b0d93c2f97ad9bbec6a267b479ab37debb6 + version: 2.2.1 + resolution: "env-paths@npm:2.2.1" + checksum: 65b5df55a8bab92229ab2b40dad3b387fad24613263d103a97f91c9fe43ceb21965cd3392b1ccb5d77088021e525c4e0481adb309625d0cb94ade1d1fb8dc17e + languageName: node + linkType: hard + +"err-code@npm:^2.0.2": + version: 2.0.3 + resolution: "err-code@npm:2.0.3" + checksum: 8b7b1be20d2de12d2255c0bc2ca638b7af5171142693299416e6a9339bd7d88fc8d7707d913d78e0993176005405a236b066b45666b27b797252c771156ace54 languageName: node linkType: hard @@ -5821,73 +4561,95 @@ __metadata: languageName: node linkType: hard -"es-abstract@npm:^1.17.0, es-abstract@npm:^1.17.0-next.1, es-abstract@npm:^1.17.2, es-abstract@npm:^1.17.5": - version: 1.17.7 - resolution: "es-abstract@npm:1.17.7" +"es-abstract@npm:^1.17.2, es-abstract@npm:^1.18.0-next.1, es-abstract@npm:^1.18.0-next.2, es-abstract@npm:^1.18.2": + version: 1.18.3 + resolution: "es-abstract@npm:1.18.3" dependencies: + call-bind: ^1.0.2 es-to-primitive: ^1.2.1 function-bind: ^1.1.1 + get-intrinsic: ^1.1.1 has: ^1.0.3 - has-symbols: ^1.0.1 - is-callable: ^1.2.2 - is-regex: ^1.1.1 - object-inspect: ^1.8.0 + has-symbols: ^1.0.2 + is-callable: ^1.2.3 + is-negative-zero: ^2.0.1 + is-regex: ^1.1.3 + is-string: ^1.0.6 + object-inspect: ^1.10.3 object-keys: ^1.1.1 - object.assign: ^4.1.1 - string.prototype.trimend: ^1.0.1 - string.prototype.trimstart: ^1.0.1 - checksum: 0863830708ebbb7aa5555746278ad9825cda6c58009f006d62342131277364309793441439a33daf51e0b1d042bff4711b4d8ecda16ca64f8a113faa46d94ac2 + object.assign: ^4.1.2 + string.prototype.trimend: ^1.0.4 + string.prototype.trimstart: ^1.0.4 + unbox-primitive: ^1.0.1 + checksum: 6bbf526b5a60cdbd390397644facbf654fc6616564614533a5ce223ecc185f7812a1f45c3ab6d0334b4ff2e8f554237539f4d05a0fceb036be24dd5d1ec022b0 languageName: node linkType: hard -"es-abstract@npm:^1.18.0-next.0": - version: 1.18.0-next.1 - resolution: "es-abstract@npm:1.18.0-next.1" +"es-abstract@npm:^1.18.1": + version: 1.18.6 + resolution: "es-abstract@npm:1.18.6" dependencies: + call-bind: ^1.0.2 es-to-primitive: ^1.2.1 function-bind: ^1.1.1 + get-intrinsic: ^1.1.1 + get-symbol-description: ^1.0.0 has: ^1.0.3 - has-symbols: ^1.0.1 - is-callable: ^1.2.2 - is-negative-zero: ^2.0.0 - is-regex: ^1.1.1 - object-inspect: ^1.8.0 + has-symbols: ^1.0.2 + internal-slot: ^1.0.3 + is-callable: ^1.2.4 + is-negative-zero: ^2.0.1 + is-regex: ^1.1.4 + is-string: ^1.0.7 + object-inspect: ^1.11.0 object-keys: ^1.1.1 - object.assign: ^4.1.1 - string.prototype.trimend: ^1.0.1 - string.prototype.trimstart: ^1.0.1 - checksum: 4797f1f6c8db002ad38a2cbb9d1709f9c39946fe3d26f85ae42431bb4c2aac20dcc1f8685a055aa2b7e61e320bb841b83becc340b940de31761944613d76c1a3 + object.assign: ^4.1.2 + string.prototype.trimend: ^1.0.4 + string.prototype.trimstart: ^1.0.4 + unbox-primitive: ^1.0.1 + checksum: 8903ed187a9f66a8b21385401770124b37ded75a9cd99c7ea22e709ca667e7b549f37dc8bf9bf458a6cdb908c95a16fed389e2871bb3a28bfaab46db555cb1f3 languageName: node linkType: hard -"es-abstract@npm:^1.18.0-next.1, es-abstract@npm:^1.18.0-next.2": - version: 1.18.0 - resolution: "es-abstract@npm:1.18.0" +"es-abstract@npm:^1.19.0, es-abstract@npm:^1.19.1": + version: 1.19.1 + resolution: "es-abstract@npm:1.19.1" dependencies: call-bind: ^1.0.2 es-to-primitive: ^1.2.1 function-bind: ^1.1.1 get-intrinsic: ^1.1.1 + get-symbol-description: ^1.0.0 has: ^1.0.3 has-symbols: ^1.0.2 - is-callable: ^1.2.3 + internal-slot: ^1.0.3 + is-callable: ^1.2.4 is-negative-zero: ^2.0.1 - is-regex: ^1.1.2 - is-string: ^1.0.5 - object-inspect: ^1.9.0 + is-regex: ^1.1.4 + is-shared-array-buffer: ^1.0.1 + is-string: ^1.0.7 + is-weakref: ^1.0.1 + object-inspect: ^1.11.0 object-keys: ^1.1.1 object.assign: ^4.1.2 string.prototype.trimend: ^1.0.4 string.prototype.trimstart: ^1.0.4 - unbox-primitive: ^1.0.0 - checksum: 6783bea97f372fd4f1fc77e4e294d024b9f40559a83b40c46b69565511cf13d462a6189b822228c6bb818bd09d2f23b33500206d39bbdc69f7cc7ffebf6640a1 + unbox-primitive: ^1.0.1 + checksum: b6be8410672c5364db3fb01eb786e30c7b4bb32b4af63d381c08840f4382c4a168e7855cd338bf59d4f1a1a1138f4d748d1fd40ec65aaa071876f9e9fbfed949 languageName: node linkType: hard -"es-module-lexer@npm:^0.4.0": - version: 0.4.1 - resolution: "es-module-lexer@npm:0.4.1" - checksum: c33ee30390812df875e419783cf37f3a32b73daabbb1f8a08fe9282fe0777b0a8064a219a34a253cb954b3308bbd4227e17da9e8ec253d309a83b4c90b2e9388 +"es-module-lexer@npm:^0.7.1": + version: 0.7.1 + resolution: "es-module-lexer@npm:0.7.1" + checksum: c66fb633cc521529862818caf603897d58d30442c885a1a1ed16823ddbbb8a437e3952454a4b2650242df1c1b4d0efa42fedbe49594e3ef2ceb3c891cf1211dd + languageName: node + linkType: hard + +"es-module-lexer@npm:^0.9.0": + version: 0.9.0 + resolution: "es-module-lexer@npm:0.9.0" + checksum: 05ddfcb598749e4da78f300e191baa0380dc7aded0b0af808421716f7d90b549edb4062d65958ec1e0abe707d3d025e11b5cebd446f1f615d1bb2be1b6c74d7b languageName: node linkType: hard @@ -5909,20 +4671,13 @@ __metadata: languageName: node linkType: hard -"escalade@npm:^3.1.0, escalade@npm:^3.1.1": +"escalade@npm:^3.1.1": version: 3.1.1 resolution: "escalade@npm:3.1.1" checksum: a3e2a99f07acb74b3ad4989c48ca0c3140f69f923e56d0cba0526240ee470b91010f9d39001f2a4a313841d237ede70a729e92125191ba5d21e74b106800b133 languageName: node linkType: hard -"escape-html@npm:^1.0.3": - version: 1.0.3 - resolution: "escape-html@npm:1.0.3" - checksum: 6213ca9ae00d0ab8bccb6d8d4e0a98e76237b2410302cf7df70aaa6591d509a2a37ce8998008cbecae8fc8ffaadf3fb0229535e6a145f3ce0b211d060decbb24 - languageName: node - linkType: hard - "escape-string-regexp@npm:^1.0.5": version: 1.0.5 resolution: "escape-string-regexp@npm:1.0.5" @@ -5930,6 +4685,13 @@ __metadata: languageName: node linkType: hard +"escape-string-regexp@npm:^4.0.0": + version: 4.0.0 + resolution: "escape-string-regexp@npm:4.0.0" + checksum: 98b48897d93060f2322108bf29db0feba7dd774be96cd069458d1453347b25ce8682ecc39859d4bca2203cc0ab19c237bcc71755eff49a0f8d90beadeeba5cc5 + languageName: node + linkType: hard + "eslint-import-resolver-alias@npm:^1.1.2": version: 1.1.2 resolution: "eslint-import-resolver-alias@npm:1.1.2" @@ -5939,66 +4701,66 @@ __metadata: languageName: node linkType: hard -"eslint-import-resolver-node@npm:^0.3.4": - version: 0.3.4 - resolution: "eslint-import-resolver-node@npm:0.3.4" +"eslint-import-resolver-node@npm:^0.3.6": + version: 0.3.6 + resolution: "eslint-import-resolver-node@npm:0.3.6" dependencies: - debug: ^2.6.9 - resolve: ^1.13.1 - checksum: a0db55ec26c5bb385c8681af6b8d6dee16768d5f27dff72c3113407d0f028f28e56dcb1cc3a4689c79396a5f6a9c24bd0cac9a2c9c588c7d7357d24a42bec876 + debug: ^3.2.7 + resolve: ^1.20.0 + checksum: 6266733af1e112970e855a5bcc2d2058fb5ae16ad2a6d400705a86b29552b36131ffc5581b744c23d550de844206fb55e9193691619ee4dbf225c4bde526b1c8 languageName: node linkType: hard -"eslint-module-utils@npm:^2.6.1": - version: 2.6.1 - resolution: "eslint-module-utils@npm:2.6.1" +"eslint-module-utils@npm:^2.7.0": + version: 2.7.1 + resolution: "eslint-module-utils@npm:2.7.1" dependencies: debug: ^3.2.7 + find-up: ^2.1.0 pkg-dir: ^2.0.0 - checksum: 3cc43a36a0075d300db6a3946203ec92249b6da1539694ef205a43b4ccfbc2eaf4961475d4b89c24b12c187d6bfd882c7c7d0b2ce02adb40c2dedb7fd022a7e2 + checksum: c30dfa125aafe65e5f6a30a31c26932106fcf09934a2f47d7f8a393ed9106da7b07416f2337b55c85f9db0175c873ee0827be5429a24ec381b49940f342b9ac3 languageName: node linkType: hard -"eslint-plugin-import@npm:^2.23.2": - version: 2.23.2 - resolution: "eslint-plugin-import@npm:2.23.2" +"eslint-plugin-import@npm:^2.25.2": + version: 2.25.2 + resolution: "eslint-plugin-import@npm:2.25.2" dependencies: - array-includes: ^3.1.3 - array.prototype.flat: ^1.2.4 - contains-path: ^1.0.0 + 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.4 - eslint-module-utils: ^2.6.1 - find-up: ^2.0.0 + eslint-import-resolver-node: ^0.3.6 + eslint-module-utils: ^2.7.0 has: ^1.0.3 - is-core-module: ^2.4.0 + is-core-module: ^2.7.0 + is-glob: ^4.0.3 minimatch: ^3.0.4 - object.values: ^1.1.3 - pkg-up: ^2.0.0 - read-pkg-up: ^3.0.0 + object.values: ^1.1.5 resolve: ^1.20.0 - tsconfig-paths: ^3.9.0 + tsconfig-paths: ^3.11.0 peerDependencies: - eslint: ^2 || ^3 || ^4 || ^5 || ^6 || ^7.2.0 - checksum: cd8f119266cbf971ac8b90875acd3c971c39744bafbeb1a071a17c0b5042277d46f736ea38d625aa04501909ba835d154926bbb9ba47a5403deac601d9ae3dca + eslint: ^2 || ^3 || ^4 || ^5 || ^6 || ^7.2.0 || ^8 + checksum: 4ca36e37faf72fb1ed25361ea8a6abbcc9daa65f3a9ac1dc0a660029000456e8c8b98a87b8cc2316541b13c6e5915df41d2dc4a1d7fe0729d9b72b9a3bd5b909 languageName: node linkType: hard -"eslint-plugin-jsdoc@npm:30.5.2": - version: 30.5.2 - resolution: "eslint-plugin-jsdoc@npm:30.5.2" +"eslint-plugin-jsdoc@npm:^36.1.1": + version: 36.1.1 + resolution: "eslint-plugin-jsdoc@npm:36.1.1" dependencies: - comment-parser: ^0.7.6 - debug: ^4.1.1 - jsdoctypeparser: ^9.0.0 - lodash: ^4.17.20 - regextras: ^0.7.1 - semver: ^7.3.2 + "@es-joy/jsdoccomment": 0.10.8 + comment-parser: 1.2.4 + debug: ^4.3.2 + esquery: ^1.4.0 + jsdoc-type-pratt-parser: ^1.1.1 + lodash: ^4.17.21 + regextras: ^0.8.0 + semver: ^7.3.5 spdx-expression-parse: ^3.0.1 peerDependencies: eslint: ^6.0.0 || ^7.0.0 - checksum: 270405cc9761944d3469d97d80c6b19de607d51b854b91ed09667c51b771b5de4604d73aa6b77829604d895a802f3d95419dfc00299688787e8fea24afe2b76b + checksum: ceaca9f5c39dbbab4cbb2f302e787d1581919273b4a25adca9d1b6d83fbca66a0e58da024bc1f3f21c8710f473745a297cb2a1fe5ed56c9d1f16967995293620 languageName: node linkType: hard @@ -6032,32 +4794,27 @@ __metadata: languageName: node linkType: hard -"eslint-plugin-react@npm:^7.23.2": - version: 7.23.2 - resolution: "eslint-plugin-react@npm:7.23.2" +"eslint-plugin-react@npm:^7.26.1": + version: 7.26.1 + resolution: "eslint-plugin-react@npm:7.26.1" dependencies: array-includes: ^3.1.3 array.prototype.flatmap: ^1.2.4 doctrine: ^2.1.0 - has: ^1.0.3 + estraverse: ^5.2.0 jsx-ast-utils: ^2.4.1 || ^3.0.0 minimatch: ^3.0.4 - object.entries: ^1.1.3 + object.entries: ^1.1.4 object.fromentries: ^2.0.4 - object.values: ^1.1.3 + object.hasown: ^1.0.0 + object.values: ^1.1.4 prop-types: ^15.7.2 resolve: ^2.0.0-next.3 - string.prototype.matchall: ^4.0.4 + semver: ^6.3.0 + string.prototype.matchall: ^4.0.5 peerDependencies: eslint: ^3 || ^4 || ^5 || ^6 || ^7 - checksum: 03a818ac93959c0a500f9232de76c96363666be127cb881d4a2d69eee630b992a7676cf0f8b2bf32d0fe7a917be8e831fe8d3f67dd0d2f97640d00c182bae143 - languageName: node - linkType: hard - -"eslint-restricted-globals@npm:^0.2.0": - version: 0.2.0 - resolution: "eslint-restricted-globals@npm:0.2.0" - checksum: 7e61e24c89eb08d4373a867bbb31259247c41eae0b340ec988f630b0c61cab50abbcd42d81641082426d22c5bbda7c9a3c14da4e585792642d00e5e446d16e3c + checksum: 856eec868fe45de941f86f5e197a4da1421246bef2dcc88802e78ceedaa067edefd84352483bf595a56054022594f6c3ea93a5fb49aac6830b31d09754ab9237 languageName: node linkType: hard @@ -6068,7 +4825,7 @@ __metadata: languageName: node linkType: hard -"eslint-scope@npm:^5.1.0, eslint-scope@npm:^5.1.1": +"eslint-scope@npm:5.1.1, eslint-scope@npm:^5.1.1": version: 5.1.1 resolution: "eslint-scope@npm:5.1.1" dependencies: @@ -6094,41 +4851,37 @@ __metadata: languageName: node linkType: hard -"eslint-visitor-keys@npm:^2.0.0": - version: 2.0.0 - resolution: "eslint-visitor-keys@npm:2.0.0" - checksum: e07e9863fb8c9b1453f5ad1a26f3cc8dd6b349b26605cc06bc0c61215ac5b6f13a4d08c875218e6c0f8ac8fc06ca6e090df769e32c569f0fd2e6a848b8a76c75 - languageName: node - linkType: hard - -"eslint-visitor-keys@npm:^2.1.0": +"eslint-visitor-keys@npm:^2.0.0, eslint-visitor-keys@npm:^2.1.0": version: 2.1.0 resolution: "eslint-visitor-keys@npm:2.1.0" checksum: e3081d7dd2611a35f0388bbdc2f5da60b3a3c5b8b6e928daffff7391146b434d691577aa95064c8b7faad0b8a680266bcda0a42439c18c717b80e6718d7e267d languageName: node linkType: hard -"eslint@npm:^7.26.0": - version: 7.26.0 - resolution: "eslint@npm:7.26.0" +"eslint@npm:^7.32.0": + version: 7.32.0 + resolution: "eslint@npm:7.32.0" dependencies: "@babel/code-frame": 7.12.11 - "@eslint/eslintrc": ^0.4.1 + "@eslint/eslintrc": ^0.4.3 + "@humanwhocodes/config-array": ^0.5.0 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 + escape-string-regexp: ^4.0.0 eslint-scope: ^5.1.1 eslint-utils: ^2.1.0 eslint-visitor-keys: ^2.0.0 espree: ^7.3.1 esquery: ^1.4.0 esutils: ^2.0.2 + fast-deep-equal: ^3.1.3 file-entry-cache: ^6.0.1 functional-red-black-tree: ^1.0.1 - glob-parent: ^5.0.0 + glob-parent: ^5.1.2 globals: ^13.6.0 ignore: ^4.0.6 import-fresh: ^3.0.0 @@ -6137,7 +4890,7 @@ __metadata: js-yaml: ^3.13.1 json-stable-stringify-without-jsonify: ^1.0.1 levn: ^0.4.1 - lodash: ^4.17.21 + lodash.merge: ^4.6.2 minimatch: ^3.0.4 natural-compare: ^1.4.0 optionator: ^0.9.1 @@ -6146,27 +4899,16 @@ __metadata: semver: ^7.2.1 strip-ansi: ^6.0.0 strip-json-comments: ^3.1.0 - table: ^6.0.4 + table: ^6.0.9 text-table: ^0.2.0 v8-compile-cache: ^2.0.3 bin: eslint: bin/eslint.js - checksum: 6178eeb1bf1161471fd5ecb12b1182f26313482371fb067659cc44095791e80e1e0eba22e543929935f559b2f8066ec128311b35b068bcba10cfada78a1ce91d + checksum: cc85af9985a3a11085c011f3d27abe8111006d34cc274291b3c4d7bea51a4e2ff6135780249becd919ba7f6d6d1ecc38a6b73dacb6a7be08d38453b344dc8d37 languageName: node linkType: hard -"espree@npm:^7.3.0": - version: 7.3.0 - resolution: "espree@npm:7.3.0" - dependencies: - acorn: ^7.4.0 - acorn-jsx: ^5.2.0 - eslint-visitor-keys: ^1.3.0 - checksum: 9e1838ec16cb4c8152f006be219ec3e4eb0d82f13bcaf93f10aea3513abaa32df4617fa0ca013b29f899b4de6aa392e82b6dab64f8c00446a7712b696a2928db - languageName: node - linkType: hard - -"espree@npm:^7.3.1": +"espree@npm:^7.3.0, espree@npm:^7.3.1": version: 7.3.1 resolution: "espree@npm:7.3.1" dependencies: @@ -6219,20 +4961,6 @@ __metadata: languageName: node linkType: hard -"estree-walker@npm:^1.0.1": - version: 1.0.1 - resolution: "estree-walker@npm:1.0.1" - checksum: 7e70da539691f6db03a08e7ce94f394ce2eef4180e136d251af299d41f92fb2d28ebcd9a6e393e3728d7970aeb5358705ddf7209d52fbcb2dd4693f95dcf925f - languageName: node - linkType: hard - -"estree-walker@npm:^2.0.1": - version: 2.0.1 - resolution: "estree-walker@npm:2.0.1" - checksum: c8e89c1e0dced789554c2c76152ef748ef226aa792eead6eee1777b6faa24e56a539639b8024f3952e80c451dd2c51f9ca8e7a360771dcaa794ad7b92243929c - languageName: node - linkType: hard - "esutils@npm:^2.0.2": version: 2.0.3 resolution: "esutils@npm:2.0.3" @@ -6254,14 +4982,7 @@ __metadata: languageName: node linkType: hard -"events@npm:^3.0.0": - version: 3.2.0 - resolution: "events@npm:3.2.0" - checksum: 974178db37de546d2d8eff37ac662c2a9e046fc4f509ae0894cfaaf437381bc030081057d19b45a1bc32f1445d5a85221053fc1fb6858d08deeb01b1a6e259c3 - languageName: node - linkType: hard - -"events@npm:^3.2.0": +"events@npm:^3.0.0, events@npm:^3.2.0": version: 3.3.0 resolution: "events@npm:3.3.0" checksum: f6f487ad2198aa41d878fa31452f1a3c00958f46e9019286ff4787c84aac329332ab45c9cdc8c445928fc6d7ded294b9e005a7fce9426488518017831b272780 @@ -6295,7 +5016,7 @@ __metadata: languageName: node linkType: hard -"extend@npm:^3.0.0, extend@npm:~3.0.2": +"extend@npm:^3.0.0": version: 3.0.2 resolution: "extend@npm:3.0.2" checksum: a50a8309ca65ea5d426382ff09f33586527882cf532931cb08ca786ea3146c0553310bda688710ff61d7668eba9f96b923fe1420cdf56a2c3eaf30fcab87b515 @@ -6314,40 +5035,25 @@ __metadata: resolution: "extsprintf@npm:1.4.0" checksum: 184dc8a413eb4b1ff16bdce797340e7ded4d28511d56a1c9afa5a95bcff6ace154063823eaf0206dbbb0d14059d74f382a15c34b7c0636fa74a7e681295eb67e languageName: node - linkType: hard - -"fast-deep-equal@npm:^3.1.1": - version: 3.1.3 - resolution: "fast-deep-equal@npm:3.1.3" - checksum: e21a9d8d84f53493b6aa15efc9cfd53dd5b714a1f23f67fb5dc8f574af80df889b3bce25dc081887c6d25457cce704e636395333abad896ccdec03abaf1f3f9d - languageName: node - linkType: hard - -"fast-glob@npm:^3.1.1": - version: 3.2.4 - resolution: "fast-glob@npm:3.2.4" - dependencies: - "@nodelib/fs.stat": ^2.0.2 - "@nodelib/fs.walk": ^1.2.3 - glob-parent: ^5.1.0 - merge2: ^1.3.0 - micromatch: ^4.0.2 - picomatch: ^2.2.1 - checksum: a70ce897b23e85521688b03897115315e8c781f2e5ee5f3b83e8c10df6a464e8be415c800f55c9c40278b41aeccc60883f018f76dde8250b8cf28e7566c13f75 + linkType: hard + +"fast-deep-equal@npm:^3.1.1, fast-deep-equal@npm:^3.1.3": + version: 3.1.3 + resolution: "fast-deep-equal@npm:3.1.3" + checksum: e21a9d8d84f53493b6aa15efc9cfd53dd5b714a1f23f67fb5dc8f574af80df889b3bce25dc081887c6d25457cce704e636395333abad896ccdec03abaf1f3f9d languageName: node linkType: hard -"fast-glob@npm:^3.2.5": - version: 3.2.5 - resolution: "fast-glob@npm:3.2.5" +"fast-glob@npm:^3.1.1, fast-glob@npm:^3.2.5": + version: 3.2.7 + resolution: "fast-glob@npm:3.2.7" dependencies: "@nodelib/fs.stat": ^2.0.2 "@nodelib/fs.walk": ^1.2.3 - glob-parent: ^5.1.0 + glob-parent: ^5.1.2 merge2: ^1.3.0 - micromatch: ^4.0.2 - picomatch: ^2.2.1 - checksum: 5d6772c9b63dbb739d60b5630851e1f2cbf9744119e0968eac44c9f8cbc2d3d5cb4f2f0c74715ccb23daa336c87bea42186ed367e6c991afee61cd3d967320eb + micromatch: ^4.0.4 + checksum: 2f4708ff112d2b451888129fdd9a0938db88b105b0ddfd043c064e3c4d3e20eed8d7c7615f7565fee660db34ddcf08a2db1bf0ab3c00b87608e4719694642d78 languageName: node linkType: hard @@ -6373,11 +5079,11 @@ __metadata: linkType: hard "fastq@npm:^1.6.0": - version: 1.8.0 - resolution: "fastq@npm:1.8.0" + version: 1.11.1 + resolution: "fastq@npm:1.11.1" dependencies: reusify: ^1.0.4 - checksum: f9ece30617a42670048bb5f73ec67570944205973443292854392b0b2b90b02cc4452beb866999d95fdf5f08f06215418c4118aadef86173968200407d44f933 + checksum: 3877a63bee4f63af9277d6169a766804c9e1c7829a070b6843c5b799aa72177e71465427889c96510e5608c334dd3c912ab0b3ca70c1c8c4c1b03449d9f2c5ba languageName: node linkType: hard @@ -6419,7 +5125,7 @@ __metadata: languageName: node linkType: hard -"find-up@npm:^2.0.0, find-up@npm:^2.1.0": +"find-up@npm:^2.1.0": version: 2.1.0 resolution: "find-up@npm:2.1.0" dependencies: @@ -6449,9 +5155,9 @@ __metadata: linkType: hard "flatted@npm:^3.1.0": - version: 3.1.0 - resolution: "flatted@npm:3.1.0" - checksum: 3e4699377ef18194e39777fc39e472e8939e65c38fe1445a26072242498ea4a7f701bbd6515aa332e5ea11dd9d3488f775f6dfe8b605756fbc0807dc329fe118 + version: 3.2.1 + resolution: "flatted@npm:3.2.1" + checksum: 569f3af4ba493d6446dafb45f3c709d0a0e8e0baf7d172ca80896ed985c40fde29290a0425f07d4bb6807752237aabb29bc6529c96edc30175bf8227906a7055 languageName: node linkType: hard @@ -6471,35 +5177,40 @@ __metadata: languageName: node linkType: hard -"follow-redirects@npm:^1.0.0, follow-redirects@npm:^1.10.0": - version: 1.13.0 - resolution: "follow-redirects@npm:1.13.0" - checksum: 684165a78370ae21ccb9495d1e99eb3bd9a63a51f8686f3b5117d92e28435a283b39e07014bc959287314979ecd496027e4baca8854f757439b7ac0b185e5f2d +"flux-standard-action@npm:^2.1.2": + version: 2.1.2 + resolution: "flux-standard-action@npm:2.1.2" + dependencies: + lodash.isplainobject: ^4.0.6 + lodash.isstring: ^4.0.1 + checksum: 9d14c071b6bd4547a46124d9b8d82e76257b9fc6bff0f38a9abe49dc9ad0a17c21f59d19329c3f23e90cdf66d0198c464902b171a01e73a3438868aa68b61735 languageName: node linkType: hard -"foreach@npm:^2.0.5": - version: 2.0.5 - resolution: "foreach@npm:2.0.5" - checksum: dab4fbfef0b40b69ee5eab81bcb9626b8fa8b3469c8cfa26480f3e5e1ee08c40eae07048c9a967c65aeda26e774511ccc70b3f10a604c01753c6ef24361f0fc8 +"follow-redirects@npm:^1.0.0": + version: 1.14.1 + resolution: "follow-redirects@npm:1.14.1" + peerDependenciesMeta: + debug: + optional: true + checksum: 7381a55bdc6951c5c1ab73a8da99d9fa4c0496ce72dba92cd2ac2babe0e3ebde9b81c5bca889498ad95984bc773d713284ca2bb17f1b1e1416e5f6531e39a488 languageName: node linkType: hard -"forever-agent@npm:~0.6.1": - version: 0.6.1 - resolution: "forever-agent@npm:0.6.1" - checksum: 766ae6e220f5fe23676bb4c6a99387cec5b7b62ceb99e10923376e27bfea72f3c3aeec2ba5f45f3f7ba65d6616965aa7c20b15002b6860833bb6e394dea546a8 +"follow-redirects@npm:^1.14.4": + version: 1.14.4 + resolution: "follow-redirects@npm:1.14.4" + peerDependenciesMeta: + debug: + optional: true + checksum: d4ce74cf5c6f363168b97e706b914eb9ffb6bf4d4c6d8f8330b93088d9b90e566611ddbcf0e42c8ed5fd17598dfeda1d19230d3e9d6d6c6b4d1c10ec3a0b99be languageName: node linkType: hard -"form-data@npm:~2.3.2": - version: 2.3.3 - resolution: "form-data@npm:2.3.3" - dependencies: - asynckit: ^0.4.0 - combined-stream: ^1.0.6 - mime-types: ^2.1.12 - checksum: 10c1780fa13dbe1ff3100114c2ce1f9307f8be10b14bf16e103815356ff567b6be39d70fc4a40f8990b9660012dc24b0f5e1dde1b6426166eb23a445ba068ca3 +"foreach@npm:^2.0.5": + version: 2.0.5 + resolution: "foreach@npm:2.0.5" + checksum: dab4fbfef0b40b69ee5eab81bcb9626b8fa8b3469c8cfa26480f3e5e1ee08c40eae07048c9a967c65aeda26e774511ccc70b3f10a604c01753c6ef24361f0fc8 languageName: node linkType: hard @@ -6510,13 +5221,6 @@ __metadata: languageName: node linkType: hard -"formidable@npm:^1.1.1": - version: 1.2.2 - resolution: "formidable@npm:1.2.2" - checksum: 43b3ec9a8f8055112e1a9a40eb748cdcd86cb9076dc9a17b0caa2bc26908eeae865dbee62d7c4bc26681fb75c2f42d60323af9c9d06c843e94f51f9b46954a0a - languageName: node - linkType: hard - "framer-motion@npm:^4.1.17": version: 4.1.17 resolution: "framer-motion@npm:4.1.17" @@ -6546,13 +5250,6 @@ __metadata: languageName: node linkType: hard -"fresh@npm:~0.5.2": - version: 0.5.2 - resolution: "fresh@npm:0.5.2" - checksum: 13ea8b08f91e669a64e3ba3a20eb79d7ca5379a81f1ff7f4310d54e2320645503cc0c78daedc93dfb6191287295f6479544a649c64d8e41a1c0fb0c221552346 - languageName: node - linkType: hard - "fs-constants@npm:^1.0.0": version: 1.0.0 resolution: "fs-constants@npm:1.0.0" @@ -6576,7 +5273,7 @@ __metadata: languageName: node linkType: hard -"fsevents@patch:fsevents@~2.3.1#~builtin<compat/fsevents>": +"fsevents@patch:fsevents@~2.3.1#~builtin<compat/fsevents>, fsevents@patch:fsevents@~2.3.2#~builtin<compat/fsevents>": version: 2.3.2 resolution: "fsevents@patch:fsevents@npm%3A2.3.2#~builtin<compat/fsevents>::version=2.3.2&hash=1cc4b2" dependencies: @@ -6585,7 +5282,7 @@ __metadata: languageName: node linkType: hard -fsevents@~2.3.1: +"fsevents@~2.3.1, fsevents@~2.3.2": version: 2.3.2 resolution: "fsevents@npm:2.3.2" dependencies: @@ -6598,118 +5295,99 @@ fsevents@~2.3.1: version: 0.0.0-use.local resolution: "fuelrats.com@workspace:." dependencies: - "@babel/core": ^7.14.3 - "@babel/eslint-parser": ^7.14.3 - "@babel/eslint-plugin": ^7.13.16 - "@babel/plugin-proposal-class-properties": ^7.13.0 - "@babel/plugin-proposal-decorators": ^7.14.2 - "@babel/plugin-proposal-export-default-from": ^7.12.13 - "@babel/plugin-proposal-export-namespace-from": ^7.14.2 - "@babel/plugin-proposal-function-bind": ^7.12.13 - "@babel/plugin-proposal-function-sent": ^7.12.13 - "@babel/plugin-proposal-logical-assignment-operators": ^7.14.2 - "@babel/plugin-proposal-numeric-separator": ^7.14.2 - "@babel/plugin-proposal-optional-catch-binding": ^7.14.2 - "@babel/plugin-proposal-throw-expressions": ^7.12.13 - "@babel/plugin-transform-strict-mode": ^7.12.13 - "@babel/preset-env": ^7.14.2 - "@babel/runtime": ^7.14.0 - "@fingerprintjs/fingerprintjs": ^3.1.2 - "@fortawesome/fontawesome-svg-core": ^1.2.35 - "@fortawesome/free-brands-svg-icons": ^5.15.3 - "@fortawesome/free-solid-svg-icons": ^5.15.3 - "@fortawesome/react-fontawesome": ^0.1.14 + "@babel/core": ^7.15.8 + "@babel/eslint-parser": ^7.15.8 + "@babel/eslint-plugin": ^7.14.5 + "@babel/plugin-proposal-decorators": ^7.15.8 + "@fingerprintjs/fingerprintjs": ^3.3.0 + "@fortawesome/fontawesome-svg-core": ^1.2.36 + "@fortawesome/free-brands-svg-icons": ^5.15.4 + "@fortawesome/free-solid-svg-icons": ^5.15.4 + "@fortawesome/react-fontawesome": ^0.1.15 "@fuelrats/babel-plugin-classnames": ^0.3.0 - "@fuelrats/eslint-config": ^2.3.0 - "@fuelrats/eslint-config-react": ^2.3.0 - "@fuelrats/eslint-plugin": ^2.3.0 - "@fuelrats/koa-adorable-avatars": ^0.1.2 + "@fuelrats/eslint-config": ^2.4.0-canary.19 + "@fuelrats/eslint-config-react": ^2.4.0-canary.19 + "@fuelrats/eslint-plugin": ^2.4.0-canary.11 + "@fuelrats/next-adorable-avatars": ^0.3.0 "@fuelrats/stylelint-config": ^1.2.3 "@fuelrats/validation-util": ^1.2.0 - "@fuelrats/web-util": ^0.3.2 - "@koa/router": ^10.0.0 - "@rollup/plugin-babel": ^5.3.0 - "@rollup/plugin-commonjs": ^19.0.0 - "@rollup/plugin-node-resolve": ^13.0.0 + "@fuelrats/web-util": ^0.3.3 + "@next/eslint-plugin-next": ^11.1.2 "@svgr/webpack": ^5.5.0 "@types/hoist-non-react-statics": ^3.3.1 - "@types/ip6addr": ^0.2.2 - "@types/js-cookie": ^2.2.6 - "@types/jsonfile": ^6.0.0 - "@types/koa": ^2.13.1 - "@types/koa-compress": ^4.0.1 - "@types/koa-logger": ^3.1.1 - "@types/koa__router": ^8.0.4 - "@types/lodash": ^4.14.169 - "@types/react": ^17.0.5 - "@types/react-dom": ^17.0.5 - "@types/react-redux": ^7.1.16 + "@types/ip6addr": ^0.2.3 + "@types/js-cookie": ^3.0.0 + "@types/jsonfile": ^6.0.1 + "@types/lodash": ^4.14.175 + "@types/qs": ^6.9.7 + "@types/react": ^17.0.30 + "@types/react-dom": ^17.0.9 + "@types/react-is": ^17.0.2 + "@types/react-redux": ^7.1.19 "@types/ua-parser-js": ^0.7.36 "@types/webpack": ^5.28.0 "@types/zxcvbn": ^4.4.1 - axios: ^0.21.1 + axios: ^0.23.0 babel-loader: 8.2.2 builtin-modules: ^3.2.0 clsx: ^1.1.1 - content-security-policy-builder: ^2.1.0 - date-fns: ^2.21.3 - date-fns-tz: ^1.1.4 - doctoc: ^2.0.0 - dotenv: ^9.0.2 - eslint: ^7.26.0 + date-fns: ^2.25.0 + date-fns-tz: ^1.1.6 + doctoc: ^2.1.0 + dotenv: ^10.0.0 + eslint: ^7.32.0 eslint-import-resolver-alias: ^1.1.2 - eslint-import-resolver-node: ^0.3.4 - eslint-plugin-import: ^2.23.2 - eslint-plugin-jsdoc: 30.5.2 + eslint-import-resolver-node: ^0.3.6 + eslint-plugin-import: ^2.25.2 + eslint-plugin-jsdoc: ^36.1.1 eslint-plugin-jsx-a11y: ^6.4.1 - eslint-plugin-react: ^7.23.2 + eslint-plugin-react: ^7.26.1 eslint-plugin-react-hooks: ^4.2.0 - flux-standard-action: ^2.1.1 + flux-standard-action: ^2.1.2 framer-motion: ^4.1.17 hoist-non-react-statics: ^3.3.2 - immer: ^9.0.2 + http-proxy-middleware: ^2.0.1 + immer: ^9.0.6 ip6addr: ^0.2.3 - js-cookie: ^2.2.1 + js-cookie: ^3.0.1 jsonfile: ^6.1.0 - koa: ^2.13.1 - koa-body: ^4.2.0 - koa-compress: ^5.0.1 - koa-logger: ^3.2.1 - koa-proxies: 0.12.1 + koa-compose: ^4.1.0 lodash: ^4.17.21 - next: ^10.2.0 + next: ^11.1.2 next-cookies: ^2.0.3 next-redux-wrapper: 5.0.0 + next-safe: ^3.1.0 nprogress: ^0.2.0 - postcss: ^8.2.15 + postcss: ^8.3.9 postcss-easy-import: ^3.0.0 postcss-flexbugs-fixes: ^5.0.2 postcss-preset-env: ^6.7.0 prop-types: ^15.7.2 pure-uuid: ^1.6.2 qs: ^6.10.1 + rc-slider: ^9.7.4 re-reselect: ^4.0.0 react: ^17.0.2 - react-copy-to-clipboard: ^5.0.3 + react-copy-to-clipboard: ^5.0.4 react-dom: ^17.0.2 - react-redux: ^7.2.4 + react-easy-crop: ^3.5.3 + react-is: ^17.0.2 + react-redux: ^7.2.5 react-table-6: ^6.11.0 - redux: ^4.1.0 + redux: ^4.1.1 redux-devtools-extension: ^2.13.9 redux-immutable-state-invariant: ^2.1.0 redux-thunk: ^2.3.0 reselect: ^4.0.0 - rollup: ^2.48.0 - rollup-plugin-cleaner: ^1.0.0 - rollup-plugin-node-externals: ^2.2.0 - sass: ^1.32.13 - stripe: ^8.148.0 + sass: ^1.43.2 + semver: ^7.3.5 + stripe: ^8.183.0 stylelint: ^13.13.1 stylelint-order: ^4.1.0 - stylelint-scss: ^3.19.0 + stylelint-scss: ^3.21.0 ua-parser-js: ^0.7.28 - use-immer: ^0.5.2 - webpack: ^5.37.0 + use-immer: ^0.6.0 + webpack: ^5.58.2 worker-loader: ^3.0.8 zxcvbn: ^4.4.2 languageName: unknown @@ -6745,13 +5423,6 @@ fsevents@~2.3.1: languageName: node linkType: hard -"gensync@npm:^1.0.0-beta.1": - version: 1.0.0-beta.1 - resolution: "gensync@npm:1.0.0-beta.1" - checksum: 92686a5445740fb505f68d66318df5ff04fd803d31385c1ea7b432d860d3e098eb2bc03c8c820356e6f71d86abc0a213ba48bec98b9befafb380b302bfa9e0c1 - languageName: node - linkType: hard - "gensync@npm:^1.0.0-beta.2": version: 1.0.0-beta.2 resolution: "gensync@npm:1.0.0-beta.2" @@ -6786,12 +5457,13 @@ fsevents@~2.3.1: languageName: node linkType: hard -"getpass@npm:^0.1.1": - version: 0.1.7 - resolution: "getpass@npm:0.1.7" +"get-symbol-description@npm:^1.0.0": + version: 1.0.0 + resolution: "get-symbol-description@npm:1.0.0" dependencies: - assert-plus: ^1.0.0 - checksum: ab18d55661db264e3eac6012c2d3daeafaab7a501c035ae0ccb193c3c23e9849c6e29b6ac762b9c2adae460266f925d55a3a2a3a3c8b94be2f222df94d70c046 + call-bind: ^1.0.2 + get-intrinsic: ^1.1.1 + checksum: 9ceff8fe968f9270a37a1f73bf3f1f7bda69ca80f4f80850670e0e7b9444ff99323f7ac52f96567f8b5f5fbe7ac717a0d81d3407c7313e82810c6199446a5247 languageName: node linkType: hard @@ -6802,12 +5474,12 @@ fsevents@~2.3.1: languageName: node linkType: hard -"glob-parent@npm:^5.0.0, glob-parent@npm:^5.1.0, glob-parent@npm:~5.1.0": - version: 5.1.1 - resolution: "glob-parent@npm:5.1.1" +"glob-parent@npm:^5.1.2, glob-parent@npm:~5.1.0, glob-parent@npm:~5.1.2": + version: 5.1.2 + resolution: "glob-parent@npm:5.1.2" dependencies: is-glob: ^4.0.1 - checksum: 9f9a19c8d441d9df51df5985b2280b084f5ebc07e0fe5de761f346cb707cc30e7d51fb51c0e82490730b6c0ca9c9a3d0c73e4a22861a3cf363cc745e01721dd4 + checksum: f4f2bfe2425296e8a47e36864e4f42be38a996db40420fe434565e4480e3322f18eb37589617a98640c5dc8fdec1a387007ee18dbb1f3f5553409c34d17f425e languageName: node linkType: hard @@ -6818,9 +5490,9 @@ fsevents@~2.3.1: languageName: node linkType: hard -"glob@npm:^7.0.3, glob@npm:^7.1.3, glob@npm:^7.1.4, glob@npm:^7.1.6": - version: 7.1.6 - resolution: "glob@npm:7.1.6" +"glob@npm:7.1.7, glob@npm:^7.0.3, glob@npm:^7.1.3, glob@npm:^7.1.4": + version: 7.1.7 + resolution: "glob@npm:7.1.7" dependencies: fs.realpath: ^1.0.0 inflight: ^1.0.4 @@ -6828,7 +5500,7 @@ fsevents@~2.3.1: minimatch: ^3.0.4 once: ^1.3.0 path-is-absolute: ^1.0.0 - checksum: 351d549dd90553b87c2d3f90ce11aed9e1093c74130440e7ae0592e11bbcd2ce7f0ebb8ba6bfe63aaf9b62166a7f4c80cb84490ae5d78408bb2572bf7d4ee0a6 + checksum: b61f48973bbdcf5159997b0874a2165db572b368b931135832599875919c237fc05c12984e38fe828e69aa8a921eb0e8a4997266211c517c9cfaae8a93988bb8 languageName: node linkType: hard @@ -6859,27 +5531,18 @@ fsevents@~2.3.1: languageName: node linkType: hard -"globals@npm:^12.1.0": - version: 12.4.0 - resolution: "globals@npm:12.4.0" - dependencies: - type-fest: ^0.8.1 - checksum: 7ae5ee16a96f1e8d71065405f57da0e33267f6b070cd36a5444c7780dd28639b48b92413698ac64f04bf31594f9108878bd8cb158ecdf759c39e05634fefcca6 - languageName: node - linkType: hard - -"globals@npm:^13.6.0": - version: 13.8.0 - resolution: "globals@npm:13.8.0" +"globals@npm:^13.6.0, globals@npm:^13.9.0": + version: 13.10.0 + resolution: "globals@npm:13.10.0" dependencies: type-fest: ^0.20.2 - checksum: acbfcad2b8aeff34d977a2df62bda863d7537e19f5b30cc3452493ce636b5193be9f68da46a53f41875f49052ddd7d550cd2568ecc818ddde3603e30def1fef3 + checksum: 64e45d96d634d2b047385eb5925de3abb5964cf4f3564eba493694f5ab1a8818b333f89d34b0f71f9b1d87391e6e25c5ca1a87094dd80a657d1d99b9321e1f4e languageName: node linkType: hard "globby@npm:^11.0.3": - version: 11.0.3 - resolution: "globby@npm:11.0.3" + version: 11.0.4 + resolution: "globby@npm:11.0.4" dependencies: array-union: ^2.1.0 dir-glob: ^3.0.1 @@ -6887,7 +5550,7 @@ fsevents@~2.3.1: ignore: ^5.1.4 merge2: ^1.3.0 slash: ^3.0.0 - checksum: 7d0d3e1bcb618730c8c45edb7c0067f048e1d6a6f561bfaf9c6fb5dd8274ac98b0e1e08109a160a9da1c8f1a9ab692ed36ba719517731f4ed1b29ac203992392 + checksum: d3e02d5e459e02ffa578b45f040381c33e3c0538ed99b958f0809230c423337999867d7b0dbf752ce93c46157d3bbf154d3fff988a93ccaeb627df8e1841775b languageName: node linkType: hard @@ -6922,37 +5585,13 @@ fsevents@~2.3.1: languageName: node linkType: hard -"graceful-fs@npm:^4.1.2, graceful-fs@npm:^4.1.6, graceful-fs@npm:^4.2.3": - version: 4.2.4 - resolution: "graceful-fs@npm:4.2.4" - checksum: 9d58c444eb4f391ce30b451aae8a8af2bd675d9f6f624719e97306f571ab89b2bd2b5f9025199bc63a2edfe2e53e7701554012f32a708148d53aa689163728cc - languageName: node - linkType: hard - -"graceful-fs@npm:^4.2.4": +"graceful-fs@npm:^4.1.2, graceful-fs@npm:^4.1.6, graceful-fs@npm:^4.2.4, graceful-fs@npm:^4.2.6": version: 4.2.6 resolution: "graceful-fs@npm:4.2.6" checksum: 792e64aafda05a151289f83eaa16aff34ef259658cefd65393883d959409f5a2389b0ec9ebf28f3d21f1b0ddc8f594a1162ae9b18e2b507a6799a70706ec573d languageName: node linkType: hard -"har-schema@npm:^2.0.0": - version: 2.0.0 - resolution: "har-schema@npm:2.0.0" - checksum: d8946348f333fb09e2bf24cc4c67eabb47c8e1d1aa1c14184c7ffec1140a49ec8aa78aa93677ae452d71d5fc0fdeec20f0c8c1237291fc2bcb3f502a5d204f9b - languageName: node - linkType: hard - -"har-validator@npm:~5.1.3": - version: 5.1.5 - resolution: "har-validator@npm:5.1.5" - dependencies: - ajv: ^6.12.3 - har-schema: ^2.0.0 - checksum: b998a7269ca560d7f219eedc53e2c664cd87d487e428ae854a6af4573fc94f182fe9d2e3b92ab968249baec7ebaf9ead69cf975c931dc2ab282ec182ee988280 - languageName: node - linkType: hard - "hard-rejection@npm:^2.1.0": version: 2.1.0 resolution: "hard-rejection@npm:2.1.0" @@ -6981,20 +5620,22 @@ fsevents@~2.3.1: languageName: node linkType: hard -"has-symbols@npm:^1.0.1": - version: 1.0.1 - resolution: "has-symbols@npm:1.0.1" - checksum: 4f09be6682f9fc29855ded1101ad2a0f5d559d7d9ed68f7b68be1ea213c23991216d08d6585bf3ff6fded6f526cc506bda528d276f083602b55d232f132cfa27 - languageName: node - linkType: hard - -"has-symbols@npm:^1.0.2": +"has-symbols@npm:^1.0.1, has-symbols@npm:^1.0.2": version: 1.0.2 resolution: "has-symbols@npm:1.0.2" checksum: 2309c426071731be792b5be43b3da6fb4ed7cbe8a9a6bcfca1862587709f01b33d575ce8f5c264c1eaad09fca2f9a8208c0a2be156232629daa2dd0c0740976b languageName: node linkType: hard +"has-tostringtag@npm:^1.0.0": + version: 1.0.0 + resolution: "has-tostringtag@npm:1.0.0" + dependencies: + has-symbols: ^1.0.2 + checksum: cc12eb28cb6ae22369ebaad3a8ab0799ed61270991be88f208d508076a1e99abe4198c965935ce85ea90b60c94ddda73693b0920b58e7ead048b4a391b502c1c + languageName: node + linkType: hard + "has-unicode@npm:^2.0.0": version: 2.0.1 resolution: "has-unicode@npm:2.0.1" @@ -7048,7 +5689,7 @@ fsevents@~2.3.1: languageName: node linkType: hard -"hmac-drbg@npm:^1.0.0": +"hmac-drbg@npm:^1.0.1": version: 1.0.1 resolution: "hmac-drbg@npm:1.0.1" dependencies: @@ -7069,18 +5710,18 @@ fsevents@~2.3.1: linkType: hard "hosted-git-info@npm:^2.1.4": - version: 2.8.8 - resolution: "hosted-git-info@npm:2.8.8" - checksum: fc5bdbd1ce2597c7fe43cf905ae18c7f96a8e042a46340af4cc4e5a0497d4a0669e2ac5ebc16bc0fef98eb8fe5d55b9b467d3aa97b97f0a87d7673644af31c74 + version: 2.8.9 + resolution: "hosted-git-info@npm:2.8.9" + checksum: c955394bdab888a1e9bb10eb33029e0f7ce5a2ac7b3f158099dc8c486c99e73809dca609f5694b223920ca2174db33d32b12f9a2a47141dc59607c29da5a62dd languageName: node linkType: hard -"hosted-git-info@npm:^3.0.6": - version: 3.0.7 - resolution: "hosted-git-info@npm:3.0.7" +"hosted-git-info@npm:^4.0.1": + version: 4.0.2 + resolution: "hosted-git-info@npm:4.0.2" dependencies: lru-cache: ^6.0.0 - checksum: e9da1f0852e732d8f59e95e501d14be643b4a63136107c1a733f1219b091f213a651d6e145d847f68322420fb77294475022b13da5d40eef8d6e67d087ea8978 + checksum: d1b2d7720398ce96a788bd38d198fbddce089a2381f63cfb01743e6c7e5aed656e5547fe74090fb9fe53b2cb785b0e8c9ebdddadff48ed26bb471dd23cd25458 languageName: node linkType: hard @@ -7117,17 +5758,14 @@ fsevents@~2.3.1: languageName: node linkType: hard -"http-assert@npm:^1.3.0": - version: 1.4.1 - resolution: "http-assert@npm:1.4.1" - dependencies: - deep-equal: ~1.0.1 - http-errors: ~1.7.2 - checksum: dd5d30eb458976572af1d1d72206b47e9194c9828ee0c93db79c802fc2536ec7ce9a0e802e0df8791e89553e51e3272de328f89bbee419a74e648090af36d2fa +"http-cache-semantics@npm:^4.1.0": + version: 4.1.0 + resolution: "http-cache-semantics@npm:4.1.0" + checksum: 974de94a81c5474be07f269f9fd8383e92ebb5a448208223bfb39e172a9dbc26feff250192ecc23b9593b3f92098e010406b0f24bd4d588d631f80214648ed42 languageName: node linkType: hard -"http-errors@npm:1.7.3, http-errors@npm:~1.7.2": +"http-errors@npm:1.7.3": version: 1.7.3 resolution: "http-errors@npm:1.7.3" dependencies: @@ -7140,26 +5778,27 @@ fsevents@~2.3.1: languageName: node linkType: hard -"http-errors@npm:^1.6.3, http-errors@npm:^1.7.3": - version: 1.8.0 - resolution: "http-errors@npm:1.8.0" +"http-proxy-agent@npm:^4.0.1": + version: 4.0.1 + resolution: "http-proxy-agent@npm:4.0.1" dependencies: - depd: ~1.1.2 - inherits: 2.0.4 - setprototypeof: 1.2.0 - statuses: ">= 1.5.0 < 2" - toidentifier: 1.0.0 - checksum: 873d997bada0340b31cc69cbe8376e47ee142f60375b81447fa3ad7be512dd4026afb3b46ed2257ee59472d43782a34151994b34264b204bcaad02e67ad836cb + "@tootallnate/once": 1 + agent-base: 6 + debug: 4 + checksum: c6a5da5a1929416b6bbdf77b1aca13888013fe7eb9d59fc292e25d18e041bb154a8dfada58e223fc7b76b9b2d155a87e92e608235201f77d34aa258707963a82 languageName: node linkType: hard -"http-errors@npm:~1.4.0": - version: 1.4.0 - resolution: "http-errors@npm:1.4.0" +"http-proxy-middleware@npm:^2.0.1": + version: 2.0.1 + resolution: "http-proxy-middleware@npm:2.0.1" dependencies: - inherits: 2.0.1 - statuses: ">= 1.2.1 < 2" - checksum: e25e56567f696f38009bdeeebf6ad0b5706113f21ae2241d4f1438ce303182b649187c5a3b68c4c3a07cd4df7192d58d22186a0b491c638bf3a7ea2626448681 + "@types/http-proxy": ^1.17.5 + http-proxy: ^1.18.1 + is-glob: ^4.0.1 + is-plain-obj: ^3.0.0 + micromatch: ^4.0.2 + checksum: 0de65bc6644b6efae5d26cd3bec071ceaeb92f26856ffee5ecdde9c702ea1435936e7dfb09da2ac0883eada80fdc993e9925902fc10bf6625565d6365f8cb30f languageName: node linkType: hard @@ -7174,17 +5813,6 @@ fsevents@~2.3.1: languageName: node linkType: hard -"http-signature@npm:~1.2.0": - version: 1.2.0 - resolution: "http-signature@npm:1.2.0" - dependencies: - assert-plus: ^1.0.0 - jsprim: ^1.2.2 - sshpk: ^1.7.0 - checksum: 3324598712266a9683585bb84a75dec4fd550567d5e0dd4a0fff6ff3f74348793404d3eeac4918fa0902c810eeee1a86419e4a2e92a164132dfe6b26743fb47c - languageName: node - linkType: hard - "https-browserify@npm:1.0.0, https-browserify@npm:^1.0.0": version: 1.0.0 resolution: "https-browserify@npm:1.0.0" @@ -7192,10 +5820,22 @@ fsevents@~2.3.1: languageName: node linkType: hard -"humanize-number@npm:0.0.2": - version: 0.0.2 - resolution: "humanize-number@npm:0.0.2" - checksum: 9c98c9d06b0f3d801960be3957199232a5df52377e2502acae92e4f71de633fa62c315a83f24bf96bef76f47b2e3e0e1e4f4157c891e27074fd3272cad6724bb +"https-proxy-agent@npm:^5.0.0": + version: 5.0.0 + resolution: "https-proxy-agent@npm:5.0.0" + dependencies: + agent-base: 6 + debug: 4 + checksum: 165bfb090bd26d47693597661298006841ab733d0c7383a8cb2f17373387a94c903a3ac687090aa739de05e379ab6f868bae84ab4eac288ad85c328cd1ec9e53 + languageName: node + linkType: hard + +"humanize-ms@npm:^1.2.1": + version: 1.2.1 + resolution: "humanize-ms@npm:1.2.1" + dependencies: + ms: ^2.0.0 + checksum: 9c7a74a2827f9294c009266c82031030eae811ca87b0da3dceb8d6071b9bde22c9f3daef0469c3c533cc67a97d8a167cd9fc0389350e5f415f61a79b171ded16 languageName: node linkType: hard @@ -7209,18 +5849,18 @@ fsevents@~2.3.1: linkType: hard "iconv-lite@npm:^0.6.2": - version: 0.6.2 - resolution: "iconv-lite@npm:0.6.2" + version: 0.6.3 + resolution: "iconv-lite@npm:0.6.3" dependencies: safer-buffer: ">= 2.1.2 < 3.0.0" - checksum: 03e03eb9fc003bc94f7956849f747258e57c162760259d76d1e67483058cad854a4b681b635e21e3ec41f4bd15ceed1b4a350f890565d680343442c5b139fa8a + checksum: 3f60d47a5c8fc3313317edfd29a00a692cc87a19cac0159e2ce711d0ebc9019064108323b5e493625e25594f11c6236647d8e256fbe7a58f4a3b33b89e6d30bf languageName: node linkType: hard -"ieee754@npm:^1.1.4": - version: 1.1.13 - resolution: "ieee754@npm:1.1.13" - checksum: 102df1ba662e316e6160f7ce29c7c7fa3e04f2014c288336c5a9ff40bbcc2a27d209fa2a81ebfb33f28b1941021343d30e9ad8ee85a2d61f79f5936c35edc33d +"ieee754@npm:^1.1.13, ieee754@npm:^1.1.4": + version: 1.2.1 + resolution: "ieee754@npm:1.2.1" + checksum: 5144c0c9815e54ada181d80a0b810221a253562422e7c6c3a60b1901154184f49326ec239d618c416c1c5945a2e197107aee8d986a3dd836b53dffefd99b5e7e languageName: node linkType: hard @@ -7238,27 +5878,38 @@ fsevents@~2.3.1: languageName: node linkType: hard +"image-size@npm:1.0.0": + version: 1.0.0 + resolution: "image-size@npm:1.0.0" + dependencies: + queue: 6.0.2 + bin: + image-size: bin/image-size.js + checksum: 2d9d1edc43c0fa8effd27c44cd2d1b02ecc963219e78a76ac80b9d363f69c5aa19990cc23a323959ea510742ff07667e231f0852fd57eba5dc5b55432b58106d + languageName: node + linkType: hard + "immer@npm:^7.0.9": - version: 7.0.9 - resolution: "immer@npm:7.0.9" - checksum: 2a4d07b758fddb21d233f4830a74d4ac0abe3478a119376cf4ce3586e2dd5ae30012dcb677f2589433fd22d7e6af7f838b941b034f44140bf7f2b3dba1bfe21d + version: 7.0.15 + resolution: "immer@npm:7.0.15" + checksum: d79deb76f8bce71fff95bfbfa6a614bf55dd1f500eea189d3dcc587d94ed911b048e875c810b4e1214b3a6a7c8db148628e0c62e6fd8a649e84002cba0053e34 languageName: node linkType: hard -"immer@npm:^9.0.2": - version: 9.0.2 - resolution: "immer@npm:9.0.2" - checksum: ce74a183085451ec31b8726ef1345baf7a315df7ffe7683b231bd491fdd2bb73bf093085a36a5270a27200fbdd052e8572adb38058f0264ee0ec04b3b5d4ba02 +"immer@npm:^9.0.6": + version: 9.0.6 + resolution: "immer@npm:9.0.6" + checksum: 75da22f3b32f3f14604eb389b4f50e84a14f2e42f306f0cbe4d2969aed54ec7fda9a7e9ca42ebae2ba73ec9bb6ec1001fafbac535accaf03860054ab0f7e8388 languageName: node linkType: hard "import-fresh@npm:^3.0.0, import-fresh@npm:^3.2.1": - version: 3.2.1 - resolution: "import-fresh@npm:3.2.1" + version: 3.3.0 + resolution: "import-fresh@npm:3.3.0" dependencies: parent-module: ^1.0.0 resolve-from: ^4.0.0 - checksum: caef42418a087c3951fb676943a7f21ba8971aa07f9b622dff4af7edcef4160e1b172dccd85a88d7eb109cf41406a4592f70259e6b3b33aeafd042bb61f81d96 + checksum: 2cacfad06e652b1edc50be650f7ec3be08c5e5a6f6d12d035c440a42a8cc028e60a5b99ca08a77ab4d6b1346da7d971915828f33cdab730d3d42f08242d09baa languageName: node linkType: hard @@ -7290,10 +5941,10 @@ fsevents@~2.3.1: languageName: node linkType: hard -"inflation@npm:^2.0.0": - version: 2.0.0 - resolution: "inflation@npm:2.0.0" - checksum: a0494871b12275afdef9e2710ee1af1e0fc642b04613a9be69c05ef8b5e9627f3bd7d358a937fa47aa20235ee7313a4f30255048533add0ad4918beb918a586e +"infer-owner@npm:^1.0.4": + version: 1.0.4 + resolution: "infer-owner@npm:1.0.4" + checksum: 181e732764e4a0611576466b4b87dac338972b839920b2a8cde43642e4ed6bd54dc1fb0b40874728f2a2df9a1b097b8ff83b56d5f8f8e3927f837fdcb47d8a89 languageName: node linkType: hard @@ -7329,9 +5980,9 @@ fsevents@~2.3.1: linkType: hard "ini@npm:^1.3.5, ini@npm:~1.3.0": - version: 1.3.5 - resolution: "ini@npm:1.3.5" - checksum: a4c1652f481a7770f6c4d223dbc0ea3cbbe253f7af8ddc8276e22e1185ab8252404dd0ca2ba625e4829a507b3e8e1ec3df38243d0cc4b20dbe915a22118d3f98 + version: 1.3.8 + resolution: "ini@npm:1.3.8" + checksum: dfd98b0ca3a4fc1e323e38a6c8eb8936e31a97a918d3b377649ea15bdb15d481207a0dda1021efbd86b464cae29a0d33c1d7dcaf6c5672bee17fa849bc50a1b3 languageName: node linkType: hard @@ -7365,6 +6016,13 @@ fsevents@~2.3.1: languageName: node linkType: hard +"ip@npm:^1.1.5": + version: 1.1.5 + resolution: "ip@npm:1.1.5" + checksum: 30133981f082a060a32644f6a7746e9ba7ac9e2bc07ecc8bbdda3ee8ca9bec1190724c390e45a1ee7695e7edfd2a8f7dda2c104ec5f7ac5068c00648504c7e5a + languageName: node + linkType: hard + "is-alphabetical@npm:^1.0.0": version: 1.0.4 resolution: "is-alphabetical@npm:1.0.4" @@ -7438,48 +6096,48 @@ fsevents@~2.3.1: linkType: hard "is-buffer@npm:^2.0.0": - version: 2.0.4 - resolution: "is-buffer@npm:2.0.4" - checksum: b1616ff40c1644e219d6038819044608e31edcc60eb287e5f214391222dea889a68c659f0654865ce34b6c4dcfa2c8cae0174343a0f6ae3f2150f7856326cb80 - languageName: node - linkType: hard - -"is-callable@npm:^1.1.4, is-callable@npm:^1.2.2": - version: 1.2.2 - resolution: "is-callable@npm:1.2.2" - checksum: 2bbf65bd5d39ccad3cae3954c482019466565a9b8027769a21cf2deebb25c195fb10f4974295b6118a815f6be3440bd7b7555ac742cf145f65a6a7d2484ebc3a + version: 2.0.5 + resolution: "is-buffer@npm:2.0.5" + checksum: 764c9ad8b523a9f5a32af29bdf772b08eb48c04d2ad0a7240916ac2688c983bf5f8504bf25b35e66240edeb9d9085461f9b5dae1f3d2861c6b06a65fe983de42 languageName: node linkType: hard -"is-callable@npm:^1.2.3": +"is-callable@npm:^1.1.4, is-callable@npm:^1.2.3": version: 1.2.3 resolution: "is-callable@npm:1.2.3" checksum: 084a732afd78e14a40cd5f6f34001edd500f43bb542991c1305b88842cab5f2fb6b48f0deed4cd72270b2e71cab3c3a56c69b324e3a02d486f937824bb7de553 languageName: node linkType: hard -"is-core-module@npm:^2.1.0": - version: 2.2.0 - resolution: "is-core-module@npm:2.2.0" +"is-callable@npm:^1.2.4": + version: 1.2.4 + resolution: "is-callable@npm:1.2.4" + checksum: 1a28d57dc435797dae04b173b65d6d1e77d4f16276e9eff973f994eadcfdc30a017e6a597f092752a083c1103cceb56c91e3dadc6692fedb9898dfaba701575f + languageName: node + linkType: hard + +"is-core-module@npm:^2.2.0": + version: 2.5.0 + resolution: "is-core-module@npm:2.5.0" dependencies: has: ^1.0.3 - checksum: 61e2aff4a7db4f8f7d5a97b484808af17290f4197b34a797cd3d3d27b6b448951064f8d3d6ceae4394fa9b7e6cf08aacd2ba7a17ef6352e922fe803580fbde56 + checksum: e007de6ca5c391f8a669b9335192967d8815f9119f97d81fc4cde07febe09143263bc0146e86e813120223ea9a034cf0608d15b53b0269e19b4dc0a220ce0b4f languageName: node linkType: hard -"is-core-module@npm:^2.2.0, is-core-module@npm:^2.4.0": - version: 2.4.0 - resolution: "is-core-module@npm:2.4.0" +"is-core-module@npm:^2.7.0": + version: 2.7.0 + resolution: "is-core-module@npm:2.7.0" dependencies: has: ^1.0.3 - checksum: c498902d4c4d0e8eba3a2e8293ccd442158cfe49a71d7cfad136ccf9902b6a41de34ddaa86cdc95c8b7c22f872e59572d8a5d994cbec04c8ecf27ffe75137119 + checksum: 8ec6dc714438ef9dc4dae10c94d21bd5aa67244da7e85bd9e42f0fd298514181214f6bebe358a486477c1242458b170ad7a8c936be0be15d465862fa61d3d1c7 languageName: node linkType: hard "is-date-object@npm:^1.0.1": - version: 1.0.2 - resolution: "is-date-object@npm:1.0.2" - checksum: ac859426e5df031abd9d1eeed32a41cc0de06e47227bd972b8bc716460a9404654b3dba78f41e8171ccf535c4bfa6d72a8d1d15a0873f9646698af415e92c2fb + version: 1.0.4 + resolution: "is-date-object@npm:1.0.4" + checksum: 20ce7b73fda926b4dfad2457e0d6fa04bb0a4cf555456d68918e334cbf80ac30523155adac420be0c8a4bc126fafe0874c4cfc0ffe0d97bac6333a8f02de1b94 languageName: node linkType: hard @@ -7521,9 +6179,9 @@ fsevents@~2.3.1: linkType: hard "is-generator-function@npm:^1.0.7": - version: 1.0.7 - resolution: "is-generator-function@npm:1.0.7" - checksum: 05fa270375be3d2e4564ae8bcdcdb41e208d6f68f5390130a7beecaf7661d4d192ca139a029ea49f101686160eb976fabee4cdf591ee2ded08d7dc1b36897673 + version: 1.0.9 + resolution: "is-generator-function@npm:1.0.9" + checksum: 78e68709a0f145d2fd442c615db0ae40f542d49a3453f51bffb56409091bd0fa115767e1b61470dcdde45d085974517278c889632800b81a337226b87c397a1e languageName: node linkType: hard @@ -7536,6 +6194,15 @@ fsevents@~2.3.1: languageName: node linkType: hard +"is-glob@npm:^4.0.3": + version: 4.0.3 + resolution: "is-glob@npm:4.0.3" + dependencies: + is-extglob: ^2.1.1 + checksum: d381c1319fcb69d341cc6e6c7cd588e17cd94722d9a32dbd60660b993c4fb7d0f19438674e68dfec686d09b7c73139c9166b47597f846af387450224a8101ab4 + languageName: node + linkType: hard + "is-hexadecimal@npm:^1.0.0": version: 1.0.4 resolution: "is-hexadecimal@npm:1.0.4" @@ -7543,10 +6210,10 @@ fsevents@~2.3.1: languageName: node linkType: hard -"is-module@npm:^1.0.0": - version: 1.0.0 - resolution: "is-module@npm:1.0.0" - checksum: 8cd5390730c7976fb4e8546dd0b38865ee6f7bacfa08dfbb2cc07219606755f0b01709d9361e01f13009bbbd8099fa2927a8ed665118a6105d66e40f1b838c3f +"is-lambda@npm:^1.0.1": + version: 1.0.1 + resolution: "is-lambda@npm:1.0.1" + checksum: 93a32f01940220532e5948538699ad610d5924ac86093fcee83022252b363eb0cc99ba53ab084a04e4fb62bf7b5731f55496257a4c38adf87af9c4d352c71c35 languageName: node linkType: hard @@ -7560,13 +6227,6 @@ fsevents@~2.3.1: languageName: node linkType: hard -"is-negative-zero@npm:^2.0.0": - version: 2.0.0 - resolution: "is-negative-zero@npm:2.0.0" - checksum: d9b402f8c248799f5dd6d6e87dccae6a23d3a5be96f8a66b8cbe5c31c810379e225760b2ecd75a6b6c4109f10f758d64c2bc0bd22456329f2f9d56e3935de415 - languageName: node - linkType: hard - "is-negative-zero@npm:^2.0.1": version: 2.0.1 resolution: "is-negative-zero@npm:2.0.1" @@ -7602,25 +6262,14 @@ fsevents@~2.3.1: languageName: node linkType: hard -"is-reference@npm:^1.2.1": - version: 1.2.1 - resolution: "is-reference@npm:1.2.1" - dependencies: - "@types/estree": "*" - checksum: e7b48149f8abda2c10849ea51965904d6a714193d68942ad74e30522231045acf06cbfae5a4be2702fede5d232e61bf50b3183acdc056e6e3afe07fcf4f4b2bc - languageName: node - linkType: hard - -"is-regex@npm:^1.1.1": - version: 1.1.1 - resolution: "is-regex@npm:1.1.1" - dependencies: - has-symbols: ^1.0.1 - checksum: af1b307612f4405883ef42dec287884a9d6dc1e504ccc6232bbaf72faf25ee556f60aa62d68abb90487b390b9b83513d429365cd59f5c4362232bfe3b95b81a2 +"is-plain-obj@npm:^3.0.0": + version: 3.0.0 + resolution: "is-plain-obj@npm:3.0.0" + checksum: a6ebdf8e12ab73f33530641972a72a4b8aed6df04f762070d823808303e4f76d87d5ea5bd76f96a7bbe83d93f04ac7764429c29413bd9049853a69cb630fb21c languageName: node linkType: hard -"is-regex@npm:^1.1.2": +"is-regex@npm:^1.1.3": version: 1.1.3 resolution: "is-regex@npm:1.1.3" dependencies: @@ -7630,6 +6279,16 @@ fsevents@~2.3.1: languageName: node linkType: hard +"is-regex@npm:^1.1.4": + version: 1.1.4 + resolution: "is-regex@npm:1.1.4" + dependencies: + call-bind: ^1.0.2 + has-tostringtag: ^1.0.0 + checksum: 362399b33535bc8f386d96c45c9feb04cf7f8b41c182f54174c1a45c9abbbe5e31290bbad09a458583ff6bf3b2048672cdb1881b13289569a7c548370856a652 + languageName: node + linkType: hard + "is-regexp@npm:^2.0.0": version: 2.1.0 resolution: "is-regexp@npm:2.1.0" @@ -7637,23 +6296,30 @@ fsevents@~2.3.1: languageName: node linkType: hard -"is-string@npm:^1.0.5": - version: 1.0.5 - resolution: "is-string@npm:1.0.5" - checksum: 68d77a991f55592721cc7d5800ff95cdb2c4f242e3a98fdc939c409879f7b8f297b8352184032b6b2183994b4c457f42df8de004c58b5b43655c8b2f3e3ecc17 +"is-shared-array-buffer@npm:^1.0.1": + version: 1.0.1 + resolution: "is-shared-array-buffer@npm:1.0.1" + checksum: 2ffb92533e64e2876e6cfe6906871d28400b6f1a53130fe652ec8007bc0e5044d05e7af8e31bdc992fbba520bd92938cfbeedd0f286be92f250c7c76191c4d90 languageName: node linkType: hard -"is-symbol@npm:^1.0.2": - version: 1.0.3 - resolution: "is-symbol@npm:1.0.3" +"is-string@npm:^1.0.5, is-string@npm:^1.0.6": + version: 1.0.6 + resolution: "is-string@npm:1.0.6" + checksum: 9990bf0abf2eea6255f0218f82ba1bcfc8d27923af99bcbb2c77ec5eae4ddbe6c23f1f916d6f19f9e9aa57ec7cd8a91a3e026a34e207c51af35fced1ad50bba8 + languageName: node + linkType: hard + +"is-string@npm:^1.0.7": + version: 1.0.7 + resolution: "is-string@npm:1.0.7" dependencies: - has-symbols: ^1.0.1 - checksum: c6d54bd01218fa202da8ce91525ca41a907819be5f000df9ab9621467e087eb36f34b2dbfa51a2a699a282e860681ffa6a787d69e944ba99a46d3df553ff2798 + has-tostringtag: ^1.0.0 + checksum: 323b3d04622f78d45077cf89aab783b2f49d24dc641aa89b5ad1a72114cfeff2585efc8c12ef42466dff32bde93d839ad321b26884cf75e5a7892a938b089989 languageName: node linkType: hard -"is-symbol@npm:^1.0.3": +"is-symbol@npm:^1.0.2, is-symbol@npm:^1.0.3": version: 1.0.4 resolution: "is-symbol@npm:1.0.4" dependencies: @@ -7675,7 +6341,7 @@ fsevents@~2.3.1: languageName: node linkType: hard -"is-typedarray@npm:^1.0.0, is-typedarray@npm:~1.0.0": +"is-typedarray@npm:^1.0.0": version: 1.0.0 resolution: "is-typedarray@npm:1.0.0" checksum: 3508c6cd0a9ee2e0df2fa2e9baabcdc89e911c7bd5cf64604586697212feec525aa21050e48affb5ffc3df20f0f5d2e2cf79b08caa64e1ccc9578e251763aef7 @@ -7689,6 +6355,15 @@ fsevents@~2.3.1: languageName: node linkType: hard +"is-weakref@npm:^1.0.1": + version: 1.0.1 + resolution: "is-weakref@npm:1.0.1" + dependencies: + call-bind: ^1.0.0 + checksum: fdafb7b955671dd2f9658ff47c86e4025c0650fc68a3542a40e5a75898a763b1abd6b1e1f9f13207eed49541cdd76af67d73c44989ea358b201b70274cf8f6c1 + languageName: node + linkType: hard + "is-whitespace-character@npm:^1.0.0": version: 1.0.4 resolution: "is-whitespace-character@npm:1.0.4" @@ -7703,13 +6378,6 @@ fsevents@~2.3.1: languageName: node linkType: hard -"isarray@npm:0.0.1": - version: 0.0.1 - resolution: "isarray@npm:0.0.1" - checksum: 49191f1425681df4a18c2f0f93db3adb85573bcdd6a4482539d98eac9e705d8961317b01175627e860516a2fc45f8f9302db26e5a380a97a520e272e2a40a8d4 - languageName: node - linkType: hard - "isarray@npm:^1.0.0, isarray@npm:~1.0.0": version: 1.0.0 resolution: "isarray@npm:1.0.0" @@ -7724,13 +6392,6 @@ fsevents@~2.3.1: languageName: node linkType: hard -"isstream@npm:~0.1.2": - version: 0.1.2 - resolution: "isstream@npm:0.1.2" - checksum: 1eb2fe63a729f7bdd8a559ab552c69055f4f48eb5c2f03724430587c6f450783c8f1cd936c1c952d0a927925180fcc892ebd5b174236cf1065d4bd5bdb37e963 - languageName: node - linkType: hard - "jest-worker@npm:27.0.0-next.5": version: 27.0.0-next.5 resolution: "jest-worker@npm:27.0.0-next.5" @@ -7742,21 +6403,21 @@ fsevents@~2.3.1: languageName: node linkType: hard -"jest-worker@npm:^26.6.2": - version: 26.6.2 - resolution: "jest-worker@npm:26.6.2" +"jest-worker@npm:^27.0.2": + version: 27.0.6 + resolution: "jest-worker@npm:27.0.6" dependencies: "@types/node": "*" merge-stream: ^2.0.0 - supports-color: ^7.0.0 - checksum: f9afa3b88e3f12027901e4964ba3ff048285b5783b5225cab28fac25b4058cea8ad54001e9a1577ee2bed125fac3ccf5c80dc507b120300cc1bbcb368796533e + supports-color: ^8.0.0 + checksum: cef42e551033839940ed26c121b7d19ff85316fb5e4b815e1fca28744c884173bb3a6be64729bc95c281902db5142685700fc0922628b646151b0f5dcabbeb37 languageName: node linkType: hard -"js-cookie@npm:^2.2.1": - version: 2.2.1 - resolution: "js-cookie@npm:2.2.1" - checksum: 9b1fb980a1c5e624fd4b28ea4867bb30c71e04c4484bb3a42766344c533faa684de9498e443425479ec68609e96e27b60614bfe354877c449c631529b6d932f2 +"js-cookie@npm:^3.0.1": + version: 3.0.1 + resolution: "js-cookie@npm:3.0.1" + checksum: bb48de67e2a6bd1ae3dfd6b2d5a167c33dd0c5a37e909206161eb0358c98f17cb55acd55827a58e9eea3630d89444e7479f7938ef4420dda443218b8c434a4c3 languageName: node linkType: hard @@ -7768,30 +6429,21 @@ fsevents@~2.3.1: linkType: hard "js-yaml@npm:^3.13.1": - version: 3.14.0 - resolution: "js-yaml@npm:3.14.0" + version: 3.14.1 + resolution: "js-yaml@npm:3.14.1" dependencies: argparse: ^1.0.7 esprima: ^4.0.0 bin: js-yaml: bin/js-yaml.js - checksum: a1a47c912ba20956f96cb0998dea2e74c7f7129d831fe33d3c5a16f3f83712ce405172a8dd1c26bf2b3ad74b54016d432ff727928670ae5a50a57a677c387949 + checksum: bef146085f472d44dee30ec34e5cf36bf89164f5d585435a3d3da89e52622dff0b188a580e4ad091c3341889e14cb88cac6e4deb16dc5b1e9623bb0601fc255c languageName: node linkType: hard -"jsbn@npm:~0.1.0": - version: 0.1.1 - resolution: "jsbn@npm:0.1.1" - checksum: e5ff29c1b8d965017ef3f9c219dacd6e40ad355c664e277d31246c90545a02e6047018c16c60a00f36d561b3647215c41894f5d869ada6908a2e0ce4200c88f2 - languageName: node - linkType: hard - -"jsdoctypeparser@npm:^9.0.0": - version: 9.0.0 - resolution: "jsdoctypeparser@npm:9.0.0" - bin: - jsdoctypeparser: bin/jsdoctypeparser - checksum: d9fd932fc657ee8df93b112ceb23f0c27862da7302c27325101d3700110d78d264f9ef08837ed84e7dd47b83657ffb323b47b1942b237111055cefb647b4a8ba +"jsdoc-type-pratt-parser@npm:1.1.1, jsdoc-type-pratt-parser@npm:^1.1.1": + version: 1.1.1 + resolution: "jsdoc-type-pratt-parser@npm:1.1.1" + checksum: 90522d1da193e1280c3e041561de20cb2f580dd823ad60f5c08e8f429dacc2e944259ed682c98c62d32f3fc8148a79becb47a47455a8093cebb5377b1c2ecbf2 languageName: node linkType: hard @@ -7813,7 +6465,7 @@ fsevents@~2.3.1: languageName: node linkType: hard -"json-parse-better-errors@npm:^1.0.1, json-parse-better-errors@npm:^1.0.2": +"json-parse-better-errors@npm:^1.0.2": version: 1.0.2 resolution: "json-parse-better-errors@npm:1.0.2" checksum: ff2b5ba2a70e88fd97a3cb28c1840144c5ce8fae9cbeeddba15afa333a5c407cf0e42300cd0a2885dbb055227fe68d405070faad941beeffbfde9cf3b2c78c5d @@ -7855,7 +6507,7 @@ fsevents@~2.3.1: languageName: node linkType: hard -"json-stringify-safe@npm:^5.0.1, json-stringify-safe@npm:~5.0.1": +"json-stringify-safe@npm:^5.0.1": version: 5.0.1 resolution: "json-stringify-safe@npm:5.0.1" checksum: 48ec0adad5280b8a96bb93f4563aa1667fd7a36334f79149abd42446d0989f2ddc58274b479f4819f1f00617957e6344c886c55d05a4e15ebb4ab931e4a6a8ee @@ -7874,13 +6526,13 @@ fsevents@~2.3.1: linkType: hard "json5@npm:^2.1.2": - version: 2.1.3 - resolution: "json5@npm:2.1.3" + version: 2.2.0 + resolution: "json5@npm:2.2.0" dependencies: minimist: ^1.2.5 bin: json5: lib/cli.js - checksum: b2de57a66520eca0fbb6c5ef59249b8308efb93fe89a8c75f5a6846e4f5f7d99a5a6f2e4db4d7a1c7047802dd816ed602a052d147a415d0e6b7f834885b62bc3 + checksum: e88fc5274bb58fc99547baa777886b069d2dd96d9cfc4490b305fd16d711dabd5979e35a4f90873cefbeb552e216b041a304fe56702bedba76e19bc7845f208d languageName: node linkType: hard @@ -7897,167 +6549,53 @@ fsevents@~2.3.1: languageName: node linkType: hard -"jsprim@npm:^1.2.2, jsprim@npm:^1.4.0": +"jsprim@npm:^1.4.0": version: 1.4.1 resolution: "jsprim@npm:1.4.1" dependencies: assert-plus: 1.0.0 extsprintf: 1.3.0 json-schema: 0.2.3 - verror: 1.10.0 - checksum: 6bcb20ec265ae18bb48e540a6da2c65f9c844f7522712d6dfcb01039527a49414816f4869000493363f1e1ea96cbad00e46188d5ecc78257a19f152467587373 - languageName: node - linkType: hard - -"jsx-ast-utils@npm:^2.4.1 || ^3.0.0, jsx-ast-utils@npm:^3.1.0": - version: 3.1.0 - resolution: "jsx-ast-utils@npm:3.1.0" - dependencies: - array-includes: ^3.1.1 - object.assign: ^4.1.1 - checksum: 180f173949ce7f8ffb6d97efed7d809a90f80261ab9c7a4c9cc458cffcb80659be9cc57000bf39356f9cac5e3971109c76f2a325383f29637ac9f4c1e116751e - languageName: node - linkType: hard - -"keygrip@npm:~1.1.0": - version: 1.1.0 - resolution: "keygrip@npm:1.1.0" - dependencies: - tsscmp: 1.0.6 - checksum: 078cd16a463d187121f0a27c1c9c95c52ad392b620f823431689f345a0501132cee60f6e96914b07d570105af470b96960402accd6c48a0b1f3cd8fac4fa2cae - languageName: node - linkType: hard - -"kind-of@npm:^6.0.2, kind-of@npm:^6.0.3": - version: 6.0.3 - resolution: "kind-of@npm:6.0.3" - checksum: 3ab01e7b1d440b22fe4c31f23d8d38b4d9b91d9f291df683476576493d5dfd2e03848a8b05813dd0c3f0e835bc63f433007ddeceb71f05cb25c45ae1b19c6d3b - languageName: node - linkType: hard - -"known-css-properties@npm:^0.21.0": - version: 0.21.0 - resolution: "known-css-properties@npm:0.21.0" - checksum: 28a47943cdeb04bf1690d013e732743b855bb21ae4290afeb34fb0b251c2f75b901bb9f2c92a919fa6cdbe8186827528b47569f660143b4932b42423bf90a628 - languageName: node - linkType: hard - -"koa-body@npm:^4.2.0": - version: 4.2.0 - resolution: "koa-body@npm:4.2.0" - dependencies: - "@types/formidable": ^1.0.31 - co-body: ^5.1.1 - formidable: ^1.1.1 - checksum: 8da5eb00eb43345d9976b830df5973e2eb4d33a6b58735576284b20069a37ce84b34c8b60b18fdbff5e59aadfd6f7a9a03632a1c0c53aa3c84a07dfffd888af9 - languageName: node - linkType: hard - -"koa-compose@npm:^3.0.0": - version: 3.2.1 - resolution: "koa-compose@npm:3.2.1" - dependencies: - any-promise: ^1.1.0 - checksum: ff8e5fc0348455acf751179c6c613eb030a5fac6406d3b49ae9e00460b7ee8770db3ef62633fd3db0306cd4a6d2a0b5152399ebd5bb5e684418f9eeeb251c2de - languageName: node - linkType: hard - -"koa-compose@npm:^4.1.0": - version: 4.1.0 - resolution: "koa-compose@npm:4.1.0" - checksum: 46cb16792d96425e977c2ae4e5cb04930280740e907242ec9c25e3fb8b4a1d7b54451d7432bc24f40ec62255edea71894d2ceeb8238501842b4e48014f2e83db - languageName: node - linkType: hard - -"koa-compress@npm:^5.0.1": - version: 5.0.1 - resolution: "koa-compress@npm:5.0.1" - dependencies: - bytes: ^3.0.0 - compressible: ^2.0.0 - http-errors: ^1.7.3 - koa-is-json: ^1.0.0 - statuses: ^2.0.0 - checksum: 9dcc5c7dec72044d1b270d2aa957f220ec8cef5948d54957b304746855bc0c8b9dc27c10fe9ab347c91791f960df98b074119c002053fc95fdc2c944598276bc - languageName: node - linkType: hard - -"koa-convert@npm:^1.2.0": - version: 1.2.0 - resolution: "koa-convert@npm:1.2.0" - dependencies: - co: ^4.6.0 - koa-compose: ^3.0.0 - checksum: a33944dbda4ed87565985f5b37ba1122a012db872724b216b6fd8f9176d4bba42c4a9bf3c129330e45f6474d28f50ca0ed28d41b9bccd2ab5d36d6436cf0d676 + verror: 1.10.0 + checksum: 6bcb20ec265ae18bb48e540a6da2c65f9c844f7522712d6dfcb01039527a49414816f4869000493363f1e1ea96cbad00e46188d5ecc78257a19f152467587373 languageName: node linkType: hard -"koa-is-json@npm:^1.0.0": - version: 1.0.0 - resolution: "koa-is-json@npm:1.0.0" - checksum: 0f14a7780d7ca0caeda5981ab425b66dd9711fd1bc7a25c091b38331ade8861a2eea41ac9fec7f96537302690de68fe1213b576f2c765ff3b5be3c23e995fbe2 +"jsx-ast-utils@npm:^2.4.1 || ^3.0.0, jsx-ast-utils@npm:^3.1.0": + version: 3.2.0 + resolution: "jsx-ast-utils@npm:3.2.0" + dependencies: + array-includes: ^3.1.2 + object.assign: ^4.1.2 + checksum: 9f695c480212868557c5e3cd01082857e101768dc75cb904335d1a805e972d6203baa58ae0b786e7afeab1e8fdb98242fccf22dbc1734595a65845172743877c languageName: node linkType: hard -"koa-logger@npm:^3.2.1": - version: 3.2.1 - resolution: "koa-logger@npm:3.2.1" - dependencies: - bytes: ^3.1.0 - chalk: ^2.4.2 - humanize-number: 0.0.2 - passthrough-counter: ^1.0.0 - checksum: b29ba25eb433452bfda48e51acd5d206128411966acc09bb13ce3a0cec9192f78bb27e23efd615d0e7f46eeb2588ee8d2541d72665a4aa18d27a177e78dca909 +"kind-of@npm:^6.0.2, kind-of@npm:^6.0.3": + version: 6.0.3 + resolution: "kind-of@npm:6.0.3" + checksum: 3ab01e7b1d440b22fe4c31f23d8d38b4d9b91d9f291df683476576493d5dfd2e03848a8b05813dd0c3f0e835bc63f433007ddeceb71f05cb25c45ae1b19c6d3b languageName: node linkType: hard -"koa-proxies@npm:0.12.1": - version: 0.12.1 - resolution: "koa-proxies@npm:0.12.1" - dependencies: - http-proxy: ^1.18.1 - path-match: ^1.2.4 - peerDependencies: - koa: ">=2" - checksum: dff7a61d033257de3197e03ea5286623a39bd09bda4b9bb28e3d2b26f624ad5d1a6f6b06013bdde7c6fb929d2df8af47302523bd743385630c56df06966547e2 +"known-css-properties@npm:^0.21.0": + version: 0.21.0 + resolution: "known-css-properties@npm:0.21.0" + checksum: 28a47943cdeb04bf1690d013e732743b855bb21ae4290afeb34fb0b251c2f75b901bb9f2c92a919fa6cdbe8186827528b47569f660143b4932b42423bf90a628 languageName: node linkType: hard -"koa@npm:^2.13.1": - version: 2.13.1 - resolution: "koa@npm:2.13.1" - dependencies: - accepts: ^1.3.5 - cache-content-type: ^1.0.0 - content-disposition: ~0.5.2 - content-type: ^1.0.4 - cookies: ~0.8.0 - debug: ~3.1.0 - delegates: ^1.0.0 - depd: ^2.0.0 - destroy: ^1.0.4 - encodeurl: ^1.0.2 - escape-html: ^1.0.3 - fresh: ~0.5.2 - http-assert: ^1.3.0 - http-errors: ^1.6.3 - is-generator-function: ^1.0.7 - koa-compose: ^4.1.0 - koa-convert: ^1.2.0 - on-finished: ^2.3.0 - only: ~0.0.2 - parseurl: ^1.3.2 - statuses: ^1.5.0 - type-is: ^1.6.16 - vary: ^1.1.2 - checksum: c09c64eb32c6ab887527d3677a1b945bb7432f50d88de8b03d1d091baf51c827dafe3055763dd605b57c193b696414b1d597f58c829fb7bc47b2c6c5509670b4 +"koa-compose@npm:^4.1.0": + version: 4.1.0 + resolution: "koa-compose@npm:4.1.0" + checksum: 46cb16792d96425e977c2ae4e5cb04930280740e907242ec9c25e3fb8b4a1d7b54451d7432bc24f40ec62255edea71894d2ceeb8238501842b4e48014f2e83db languageName: node linkType: hard "language-subtag-registry@npm:~0.3.2": - version: 0.3.20 - resolution: "language-subtag-registry@npm:0.3.20" - checksum: f3da1c7ffc110e5e83d6575fd39688435d314fd4a8a4bd3e95064b4919d9879574284bc5f4ef97c0ab90bb4160159e2b1cedb530515f80b0abd574a22f038470 + version: 0.3.21 + resolution: "language-subtag-registry@npm:0.3.21" + checksum: 5f794525a5bfcefeea155a681af1c03365b60e115b688952a53c6e0b9532b09163f57f1fcb69d6150e0e805ec0350644a4cb35da98f4902562915be9f89572a1 languageName: node linkType: hard @@ -8087,18 +6625,6 @@ fsevents@~2.3.1: languageName: node linkType: hard -"load-json-file@npm:^4.0.0": - version: 4.0.0 - resolution: "load-json-file@npm:4.0.0" - dependencies: - graceful-fs: ^4.1.2 - parse-json: ^4.0.0 - pify: ^3.0.0 - strip-bom: ^3.0.0 - checksum: 8f5d6d93ba64a9620445ee9bde4d98b1eac32cf6c8c2d20d44abfa41a6945e7969456ab5f1ca2fb06ee32e206c9769a20eec7002fe290de462e8c884b6b8b356 - languageName: node - linkType: hard - "loader-runner@npm:^4.2.0": version: 4.2.0 resolution: "loader-runner@npm:4.2.0" @@ -8158,13 +6684,6 @@ fsevents@~2.3.1: languageName: node linkType: hard -"lodash._reinterpolate@npm:^3.0.0": - version: 3.0.0 - resolution: "lodash._reinterpolate@npm:3.0.0" - checksum: 06d2d5f33169604fa5e9f27b6067ed9fb85d51a84202a656901e5ffb63b426781a601508466f039c720af111b0c685d12f1a5c14ff8df5d5f27e491e562784b2 - languageName: node - linkType: hard - "lodash.clonedeep@npm:^4.5.0": version: 4.5.0 resolution: "lodash.clonedeep@npm:4.5.0" @@ -8179,29 +6698,31 @@ fsevents@~2.3.1: languageName: node linkType: hard -"lodash.sortby@npm:^4.7.0": - version: 4.7.0 - resolution: "lodash.sortby@npm:4.7.0" - checksum: db170c9396d29d11fe9a9f25668c4993e0c1331bcb941ddbd48fb76f492e732add7f2a47cfdf8e9d740fa59ac41bbfaf931d268bc72aab3ab49e9f89354d718c +"lodash.isplainobject@npm:^4.0.6": + version: 4.0.6 + resolution: "lodash.isplainobject@npm:4.0.6" + checksum: 29c6351f281e0d9a1d58f1a4c8f4400924b4c79f18dfc4613624d7d54784df07efaff97c1ff2659f3e085ecf4fff493300adc4837553104cef2634110b0d5337 languageName: node linkType: hard -"lodash.template@npm:^4.5.0": - version: 4.5.0 - resolution: "lodash.template@npm:4.5.0" - dependencies: - lodash._reinterpolate: ^3.0.0 - lodash.templatesettings: ^4.0.0 - checksum: ca64e5f07b6646c9d3dbc0fe3aaa995cb227c4918abd1cef7a9024cd9c924f2fa389a0ec4296aa6634667e029bc81d4bbdb8efbfde11df76d66085e6c529b450 +"lodash.isstring@npm:^4.0.1": + version: 4.0.1 + resolution: "lodash.isstring@npm:4.0.1" + checksum: eaac87ae9636848af08021083d796e2eea3d02e80082ab8a9955309569cb3a463ce97fd281d7dc119e402b2e7d8c54a23914b15d2fc7fff56461511dc8937ba0 languageName: node linkType: hard -"lodash.templatesettings@npm:^4.0.0": - version: 4.2.0 - resolution: "lodash.templatesettings@npm:4.2.0" - dependencies: - lodash._reinterpolate: ^3.0.0 - checksum: 863e025478b092997e11a04e9d9e735875eeff1ffcd6c61742aa8272e3c2cddc89ce795eb9726c4e74cef5991f722897ff37df7738a125895f23fc7d12a7bb59 +"lodash.merge@npm:^4.6.2": + version: 4.6.2 + resolution: "lodash.merge@npm:4.6.2" + checksum: ad580b4bdbb7ca1f7abf7e1bce63a9a0b98e370cf40194b03380a46b4ed799c9573029599caebc1b14e3f24b111aef72b96674a56cfa105e0f5ac70546cdc005 + languageName: node + linkType: hard + +"lodash.sortby@npm:^4.7.0": + version: 4.7.0 + resolution: "lodash.sortby@npm:4.7.0" + checksum: db170c9396d29d11fe9a9f25668c4993e0c1331bcb941ddbd48fb76f492e732add7f2a47cfdf8e9d740fa59ac41bbfaf931d268bc72aab3ab49e9f89354d718c languageName: node linkType: hard @@ -8212,14 +6733,7 @@ fsevents@~2.3.1: languageName: node linkType: hard -"lodash@npm:^4.17.13, lodash@npm:^4.17.14, lodash@npm:^4.17.15, lodash@npm:^4.17.19, lodash@npm:^4.17.20, lodash@npm:^4.17.4": - version: 4.17.20 - resolution: "lodash@npm:4.17.20" - checksum: b31afa09739b7292a88ec49ffdb2fcaeb41f690def010f7a067eeedffece32da6b6847bfe4d38a77e6f41778b9b2bca75eeab91209936518173271f0b69376ea - languageName: node - linkType: hard - -"lodash@npm:^4.17.21": +"lodash@npm:^4.17.14, lodash@npm:^4.17.15, lodash@npm:^4.17.21, lodash@npm:^4.17.4": version: 4.17.21 resolution: "lodash@npm:4.17.21" checksum: eb835a2e51d381e561e508ce932ea50a8e5a68f4ebdd771ea240d3048244a8d13658acbd502cd4829768c56f2e16bdd4340b9ea141297d472517b83868e677f7 @@ -8263,15 +6777,6 @@ fsevents@~2.3.1: languageName: node linkType: hard -"magic-string@npm:^0.25.7": - version: 0.25.7 - resolution: "magic-string@npm:0.25.7" - dependencies: - sourcemap-codec: ^1.4.4 - checksum: 727a1fb70f9610304fe384f1df0251eb7d1d9dd779c07ef1225690361b71b216f26f5d934bfb11c919b5b0e7ba50f6240c823a6f2e44cfd33d4a07d7747ca829 - languageName: node - linkType: hard - "make-dir@npm:^3.0.2, make-dir@npm:^3.1.0": version: 3.1.0 resolution: "make-dir@npm:3.1.0" @@ -8281,6 +6786,29 @@ fsevents@~2.3.1: languageName: node linkType: hard +"make-fetch-happen@npm:^8.0.14": + version: 8.0.14 + resolution: "make-fetch-happen@npm:8.0.14" + dependencies: + agentkeepalive: ^4.1.3 + cacache: ^15.0.5 + http-cache-semantics: ^4.1.0 + http-proxy-agent: ^4.0.1 + https-proxy-agent: ^5.0.0 + is-lambda: ^1.0.1 + lru-cache: ^6.0.0 + minipass: ^3.1.3 + minipass-collect: ^1.0.2 + minipass-fetch: ^1.3.2 + minipass-flush: ^1.0.5 + minipass-pipeline: ^1.2.4 + promise-retry: ^2.0.1 + socks-proxy-agent: ^5.0.0 + ssri: ^8.0.0 + checksum: 326fefde1aec1f1314e548be74baaaa322208718d1b51c9688a326f73dea70f57767b4f5423230e39408cfe7c6dcf7adcf86ca4798c919c3ea78f54532910434 + languageName: node + linkType: hard + "map-obj@npm:^1.0.0": version: 1.0.1 resolution: "map-obj@npm:1.0.1" @@ -8289,9 +6817,9 @@ fsevents@~2.3.1: linkType: hard "map-obj@npm:^4.0.0": - version: 4.1.0 - resolution: "map-obj@npm:4.1.0" - checksum: c62b22f23e58d742a093a0935fa904c92cc788d56132b75666160ac0c5704d3c677d28794594c7adf7ed0c177a96579e781dbf06e0a1b5d574c992a5c13877a3 + version: 4.2.1 + resolution: "map-obj@npm:4.2.1" + checksum: 2745227b11ba6e6ddc5927b555a8f317aa33886fcd12806193f3e3c6f201eb24c9cff44bf932b1113a1ba461755a479b22439d0d670380330325164ed0e99547 languageName: node linkType: hard @@ -8321,21 +6849,21 @@ fsevents@~2.3.1: linkType: hard "mdast-util-from-markdown@npm:^0.8.0": - version: 0.8.4 - resolution: "mdast-util-from-markdown@npm:0.8.4" + version: 0.8.5 + resolution: "mdast-util-from-markdown@npm:0.8.5" dependencies: "@types/mdast": ^3.0.0 mdast-util-to-string: ^2.0.0 micromark: ~2.11.0 parse-entities: ^2.0.0 unist-util-stringify-position: ^2.0.0 - checksum: 8851ba144de38e71bd84ee66faecf3e30c2431036189e02b748aa0516dda2969f223f391b0d2a790a1b4e526f5d2d2b148d999bcd3a682e7b59f57a91bc1f123 + checksum: 5a9d0d753a42db763761e874c22365d0c7c9934a5a18b5ff76a0643610108a208a041ffdb2f3d3dd1863d3d915225a4020a0aade282af0facfd0df110601eee6 languageName: node linkType: hard "mdast-util-to-markdown@npm:^0.6.0": - version: 0.6.1 - resolution: "mdast-util-to-markdown@npm:0.6.1" + version: 0.6.5 + resolution: "mdast-util-to-markdown@npm:0.6.5" dependencies: "@types/unist": ^2.0.0 longest-streak: ^2.0.0 @@ -8343,7 +6871,7 @@ fsevents@~2.3.1: parse-entities: ^2.0.0 repeat-string: ^1.0.0 zwitch: ^1.0.0 - checksum: 4103b027a47154b7ea62fe7551e5a2cf08a8780d9d8cfa1d6c902fcb158ac8e5fe127e5f9cd01f74f1ad583f895e7bd1269677ba4aff0252b35308ec78d02090 + checksum: 7ebc47533bff6e8669f85ae124dc521ea570e9df41c0d9e4f0f43c19ef4a8c9928d741f3e4afa62fcca1927479b714582ff5fd684ef240d84ee5b75ab9d863cf languageName: node linkType: hard @@ -8354,6 +6882,13 @@ fsevents@~2.3.1: languageName: node linkType: hard +"mdn-data@npm:2.0.14": + version: 2.0.14 + resolution: "mdn-data@npm:2.0.14" + checksum: 9d0128ed425a89f4cba8f787dca27ad9408b5cb1b220af2d938e2a0629d17d879a34d2cb19318bdb26c3f14c77dd5dfbae67211f5caaf07b61b1f2c5c8c7dc16 + languageName: node + linkType: hard + "mdn-data@npm:2.0.4": version: 2.0.4 resolution: "mdn-data@npm:2.0.4" @@ -8361,20 +6896,6 @@ fsevents@~2.3.1: languageName: node linkType: hard -"mdn-data@npm:2.0.6": - version: 2.0.6 - resolution: "mdn-data@npm:2.0.6" - checksum: adf1505687015a4791b3c4e1f213b627a7c0219fea68852e1c3c631dead8bc104e569f1800c87cf86b7279da023170e4586dff73f0efa05152754bbe7670f860 - languageName: node - linkType: hard - -"media-typer@npm:0.3.0": - version: 0.3.0 - resolution: "media-typer@npm:0.3.0" - checksum: af1b38516c28ec95d6b0826f6c8f276c58aec391f76be42aa07646b4e39d317723e869700933ca6995b056db4b09a78c92d5440dc23657e6764be5d28874bba1 - languageName: node - linkType: hard - "meow@npm:^9.0.0": version: 9.0.0 resolution: "meow@npm:9.0.0" @@ -8409,34 +6930,17 @@ fsevents@~2.3.1: languageName: node linkType: hard -"methods@npm:^1.1.2": - version: 1.1.2 - resolution: "methods@npm:1.1.2" - checksum: 0917ff4041fa8e2f2fda5425a955fe16ca411591fbd123c0d722fcf02b73971ed6f764d85f0a6f547ce49ee0221ce2c19a5fa692157931cecb422984f1dcd13a - languageName: node - linkType: hard - "micromark@npm:~2.11.0": - version: 2.11.2 - resolution: "micromark@npm:2.11.2" + version: 2.11.4 + resolution: "micromark@npm:2.11.4" dependencies: debug: ^4.0.0 parse-entities: ^2.0.0 - checksum: 083d0b6684bd6be7161d0a89783c0f044c3a282d889c5d6c7c7a68a20138c911251a99acb1c003dfe138e0f92396e4c71d2b9c0cf22d14d3ba5394e091988153 + checksum: f8a5477d394908a5d770227aea71657a76423d420227c67ea0699e659a5f62eb39d504c1f7d69ec525a6af5aaeb6a7bffcdba95614968c03d41d3851edecb0d6 languageName: node linkType: hard -"micromatch@npm:^4.0.2": - version: 4.0.2 - resolution: "micromatch@npm:4.0.2" - dependencies: - braces: ^3.0.1 - picomatch: ^2.0.5 - checksum: 39590a96d9ffad21f0afac044d0a5af4f33715a16fdd82c53a01c8f5ff6f70832a31b53e52972dac3deff8bf9f0bed0207d1c34e54ab3306a5e4c4efd5f7d249 - languageName: node - linkType: hard - -"micromatch@npm:^4.0.4": +"micromatch@npm:^4.0.2, micromatch@npm:^4.0.4": version: 4.0.4 resolution: "micromatch@npm:4.0.4" dependencies: @@ -8458,42 +6962,19 @@ fsevents@~2.3.1: languageName: node linkType: hard -"mime-db@npm:1.44.0": - version: 1.44.0 - resolution: "mime-db@npm:1.44.0" - checksum: b2613996804d690adc4ca6744479b8ef08b04db7e99f84ab7e1274e0c2503a446d22296016ae0ea1a1d159858866445601c1f43d46c8d71d52f72842b1780c15 - languageName: node - linkType: hard - -"mime-db@npm:1.47.0": - version: 1.47.0 - resolution: "mime-db@npm:1.47.0" - checksum: 6808235243c39b3142e677af86972cf32de8ebbec81178491475a79aa07caf67646cd9b559972d22c3c372ddca4a093e58bb0ba10376d75a1efbd0e07be82de2 - languageName: node - linkType: hard - -"mime-db@npm:>= 1.43.0 < 2": - version: 1.45.0 - resolution: "mime-db@npm:1.45.0" - checksum: 00aa67af7a2014c12380bec57b3efe988e45c51979acca792633e2ba4d45c601b4160ceaf9666e2b8fa6822f5cb81e12206f9921d1bc3d78226aee813d4244fd - languageName: node - linkType: hard - -"mime-types@npm:^2.1.12, mime-types@npm:^2.1.18, mime-types@npm:~2.1.19, mime-types@npm:~2.1.24": - version: 2.1.27 - resolution: "mime-types@npm:2.1.27" - dependencies: - mime-db: 1.44.0 - checksum: 4c1f596c6ddfc1a9c37356e91f471ae6e72401288197de31ef3604cf02ef14c6ac661adce55cece1f1c626a96d780ffd47435619606c103cb967fb007729eefb +"mime-db@npm:1.48.0": + version: 1.48.0 + resolution: "mime-db@npm:1.48.0" + checksum: d778392e474a5e78c24eef5a2894261f0ed168d2762c1ac2a115aa34c2274c9426178b92a6cc55e9edb8f13e7e9b8116380b0e61db9ff6d763e62876a65eea57 languageName: node linkType: hard "mime-types@npm:^2.1.27": - version: 2.1.30 - resolution: "mime-types@npm:2.1.30" + version: 2.1.31 + resolution: "mime-types@npm:2.1.31" dependencies: - mime-db: 1.47.0 - checksum: 53c36729b1c4f6029fd5957d5859e62eff4b86311a6e1dce87937583dc8971fec9f359ffcff4be93d26bb5ddd03f1b5ffc7626912031ce0a63510d7896521b2e + mime-db: 1.48.0 + checksum: eb1612aa96403823c7a2ccb1a39d58ce11477e685560186e7d369d8164260fd6fc1eeb56fa23acb6a4050583f417b2a685b69c23eb2bd8ed169fb0c6e323740a languageName: node linkType: hard @@ -8504,13 +6985,6 @@ fsevents@~2.3.1: languageName: node linkType: hard -"mimic-response@npm:^3.1.0": - version: 3.1.0 - resolution: "mimic-response@npm:3.1.0" - checksum: 25739fee32c17f433626bf19f016df9036b75b3d84a3046c7d156e72ec963dd29d7fc8a302f55a3d6c5a4ff24259676b15d915aad6480815a969ff2ec0836867 - languageName: node - linkType: hard - "min-indent@npm:^1.0.0": version: 1.0.1 resolution: "min-indent@npm:1.0.1" @@ -8525,7 +6999,7 @@ fsevents@~2.3.1: languageName: node linkType: hard -"minimalistic-crypto-utils@npm:^1.0.0, minimalistic-crypto-utils@npm:^1.0.1": +"minimalistic-crypto-utils@npm:^1.0.1": version: 1.0.1 resolution: "minimalistic-crypto-utils@npm:1.0.1" checksum: 6e8a0422b30039406efd4c440829ea8f988845db02a3299f372fceba56ffa94994a9c0f2fd70c17f9969eedfbd72f34b5070ead9656a34d3f71c0bd72583a0ed @@ -8559,7 +7033,58 @@ fsevents@~2.3.1: languageName: node linkType: hard -"minipass@npm:^3.0.0": +"minipass-collect@npm:^1.0.2": + version: 1.0.2 + resolution: "minipass-collect@npm:1.0.2" + dependencies: + minipass: ^3.0.0 + checksum: 14df761028f3e47293aee72888f2657695ec66bd7d09cae7ad558da30415fdc4752bbfee66287dcc6fd5e6a2fa3466d6c484dc1cbd986525d9393b9523d97f10 + languageName: node + linkType: hard + +"minipass-fetch@npm:^1.3.2": + version: 1.3.4 + resolution: "minipass-fetch@npm:1.3.4" + dependencies: + encoding: ^0.1.12 + minipass: ^3.1.0 + minipass-sized: ^1.0.3 + minizlib: ^2.0.0 + dependenciesMeta: + encoding: + optional: true + checksum: 67cb59d30ba646d652a250e08833bb54463ef1fead6eea5b835a53e3f6b32410356b81948ba7be7634cbb1ab37ba497d3e1ddf203b9f0d0d7637728075f67124 + languageName: node + linkType: hard + +"minipass-flush@npm:^1.0.5": + version: 1.0.5 + resolution: "minipass-flush@npm:1.0.5" + dependencies: + minipass: ^3.0.0 + checksum: 56269a0b22bad756a08a94b1ffc36b7c9c5de0735a4dd1ab2b06c066d795cfd1f0ac44a0fcae13eece5589b908ecddc867f04c745c7009be0b566421ea0944cf + languageName: node + linkType: hard + +"minipass-pipeline@npm:^1.2.2, minipass-pipeline@npm:^1.2.4": + version: 1.2.4 + resolution: "minipass-pipeline@npm:1.2.4" + dependencies: + minipass: ^3.0.0 + checksum: b14240dac0d29823c3d5911c286069e36d0b81173d7bdf07a7e4a91ecdef92cdff4baaf31ea3746f1c61e0957f652e641223970870e2353593f382112257971b + languageName: node + linkType: hard + +"minipass-sized@npm:^1.0.3": + version: 1.0.3 + resolution: "minipass-sized@npm:1.0.3" + dependencies: + minipass: ^3.0.0 + checksum: 79076749fcacf21b5d16dd596d32c3b6bf4d6e62abb43868fac21674078505c8b15eaca4e47ed844985a4514854f917d78f588fcd029693709417d8f98b2bd60 + languageName: node + linkType: hard + +"minipass@npm:^3.0.0, minipass@npm:^3.1.0, minipass@npm:^3.1.1, minipass@npm:^3.1.3": version: 3.1.3 resolution: "minipass@npm:3.1.3" dependencies: @@ -8568,7 +7093,7 @@ fsevents@~2.3.1: languageName: node linkType: hard -"minizlib@npm:^2.1.1": +"minizlib@npm:^2.0.0, minizlib@npm:^2.1.1": version: 2.1.2 resolution: "minizlib@npm:2.1.2" dependencies: @@ -8585,7 +7110,7 @@ fsevents@~2.3.1: languageName: node linkType: hard -"mkdirp@npm:^1.0.3": +"mkdirp@npm:^1.0.3, mkdirp@npm:^1.0.4": version: 1.0.4 resolution: "mkdirp@npm:1.0.4" bin: @@ -8619,14 +7144,14 @@ fsevents@~2.3.1: languageName: node linkType: hard -"ms@npm:^2.1.1": +"ms@npm:^2.0.0, ms@npm:^2.1.1": version: 2.1.3 resolution: "ms@npm:2.1.3" checksum: aa92de608021b242401676e35cfa5aa42dd70cbdc082b916da7fb925c542173e36bce97ea3e804923fe92c0ad991434e4a38327e15a1b5b5f945d66df615ae6d languageName: node linkType: hard -"nanoid@npm:^3.1.22, nanoid@npm:^3.1.23": +"nanoid@npm:^3.1.23": version: 3.1.23 resolution: "nanoid@npm:3.1.23" bin: @@ -8635,6 +7160,15 @@ fsevents@~2.3.1: languageName: node linkType: hard +"nanoid@npm:^3.1.28": + version: 3.1.29 + resolution: "nanoid@npm:3.1.29" + bin: + nanoid: bin/nanoid.cjs + checksum: 8837bc351ac6d26882d568ce3e1d5e2d5095b0c6ca99aa8f5710eff5153e0aea4c5273681c7642d9d7a6f6e20fb1d32e5eb1125c70b25bdead417f007d30f96f + languageName: node + linkType: hard + "napi-build-utils@npm:^1.0.1": version: 1.0.2 resolution: "napi-build-utils@npm:1.0.2" @@ -8658,13 +7192,6 @@ fsevents@~2.3.1: languageName: node linkType: hard -"negotiator@npm:0.6.2": - version: 0.6.2 - resolution: "negotiator@npm:0.6.2" - checksum: dfddaff6c06792f1c4c3809e29a427b8daef8cd437c83b08dd51d7ee11bbd1c29d9512d66b801144d6c98e910ffd8723f2432e0cbf8b18d41d2a09599c975ab3 - languageName: node - linkType: hard - "neo-async@npm:^2.6.2": version: 2.6.2 resolution: "neo-async@npm:2.6.2" @@ -8672,6 +7199,15 @@ fsevents@~2.3.1: languageName: node linkType: hard +"next-connect@npm:^0.10.1": + version: 0.10.1 + resolution: "next-connect@npm:0.10.1" + dependencies: + trouter: ^3.1.0 + checksum: 74aba53585b48a2a15d2a65502d0fee548a4d94113d0fd57fbf75bf682b7673709b9fb30765ddb03ca86992d17e02cd65fa31f64e6fb3d2cf90f3608e32be659 + languageName: node + linkType: hard + "next-cookies@npm:^2.0.3": version: 2.0.3 resolution: "next-cookies@npm:2.0.3" @@ -8691,34 +7227,48 @@ fsevents@~2.3.1: languageName: node linkType: hard -"next@npm:^10.2.0": - version: 10.2.0 - resolution: "next@npm:10.2.0" +"next-safe@npm:^3.1.0": + version: 3.1.0 + resolution: "next-safe@npm:3.1.0" + peerDependencies: + next: ^9.5.0 || ^10.2.1 || ^11.1.0 + checksum: 2703f7ee64926dac8df4255877ef580be9f79a6aeea28d9d8ee5fe87e2bccc71d8ad84143fc745b7c2ec81b675ce0d2345842d34d05bb9ba17869768dcb9ba1c + languageName: node + linkType: hard + +"next@npm:^11.1.2": + version: 11.1.2 + resolution: "next@npm:11.1.2" dependencies: - "@babel/runtime": 7.12.5 - "@hapi/accept": 5.0.1 - "@next/env": 10.2.0 - "@next/polyfill-module": 10.2.0 - "@next/react-dev-overlay": 10.2.0 - "@next/react-refresh-utils": 10.2.0 - "@opentelemetry/api": 0.14.0 + "@babel/runtime": 7.15.3 + "@hapi/accept": 5.0.2 + "@next/env": 11.1.2 + "@next/polyfill-module": 11.1.2 + "@next/react-dev-overlay": 11.1.2 + "@next/react-refresh-utils": 11.1.2 + "@next/swc-darwin-arm64": 11.1.2 + "@next/swc-darwin-x64": 11.1.2 + "@next/swc-linux-x64-gnu": 11.1.2 + "@next/swc-win32-x64-msvc": 11.1.2 + "@node-rs/helper": 1.2.1 assert: 2.0.0 ast-types: 0.13.2 browserify-zlib: 0.2.0 - browserslist: 4.16.1 + browserslist: 4.16.6 buffer: 5.6.0 - caniuse-lite: ^1.0.30001179 + caniuse-lite: ^1.0.30001228 chalk: 2.4.2 chokidar: 3.5.1 constants-browserify: 1.0.0 crypto-browserify: 3.12.0 - cssnano-simple: 2.0.0 + cssnano-simple: 3.0.0 domain-browser: 4.19.0 encoding: 0.1.13 etag: 1.8.1 find-cache-dir: 3.3.1 get-orientation: 1.1.2 https-browserify: 1.0.0 + image-size: 1.0.0 jest-worker: 27.0.0-next.5 native-url: 0.3.4 node-fetch: 2.6.1 @@ -8728,29 +7278,37 @@ fsevents@~2.3.1: p-limit: 3.1.0 path-browserify: 1.0.1 pnp-webpack-plugin: 1.6.4 - postcss: 8.2.13 + postcss: 8.2.15 process: 0.11.10 - prop-types: 15.7.2 querystring-es3: 0.2.1 raw-body: 2.4.1 - react-is: 16.13.1 + react-is: 17.0.2 react-refresh: 0.8.3 stream-browserify: 3.0.0 stream-http: 3.1.1 string_decoder: 1.3.0 - styled-jsx: 3.3.2 + styled-jsx: 4.0.1 timers-browserify: 2.0.12 tty-browserify: 0.0.1 use-subscription: 1.5.1 - util: 0.12.3 + util: 0.12.4 vm-browserify: 1.1.2 watchpack: 2.1.1 peerDependencies: fibers: ">= 3.1.0" node-sass: ^4.0.0 || ^5.0.0 - react: ^16.6.0 || ^17 - react-dom: ^16.6.0 || ^17 + react: ^17.0.2 + react-dom: ^17.0.2 sass: ^1.3.0 + dependenciesMeta: + "@next/swc-darwin-arm64": + optional: true + "@next/swc-darwin-x64": + optional: true + "@next/swc-linux-x64-gnu": + optional: true + "@next/swc-win32-x64-msvc": + optional: true peerDependenciesMeta: fibers: optional: true @@ -8760,25 +7318,25 @@ fsevents@~2.3.1: optional: true bin: next: dist/bin/next - checksum: 6b0800411a9b666c8300ebaea931ab04ff501655338395d67eb2bfcedbb8b360a06cc2582c562b3a4becb2ec1cfc217b15cdf995ed5fbab55e80bec0c13b7751 + checksum: c5a6d01b6d60de6e94bed11b199b8adb656521fed4abe0e816bec7991e8ff435006ef226ded40a0aecd277aa79e7d520e047c24bfb01521a12905b246ddd9177 languageName: node linkType: hard "node-abi@npm:^2.21.0": - version: 2.26.0 - resolution: "node-abi@npm:2.26.0" + version: 2.30.0 + resolution: "node-abi@npm:2.30.0" dependencies: semver: ^5.4.1 - checksum: a405ee19177c5844d667f4cd3175ed2e397439d0f3049ad8b553f2ccf26895fb0f5143f4fcf97bde5fd94dab446e83e41a9cccd77517d97ab0852f705683684b + checksum: 4394c12de62bd532b304adc087ad76f1b24d0633ff3edefc2b412426a714cb413e3ec75c8c48a9f802a537def6377387eb4213a979f0f2b1b341edc26d6d7938 languageName: node linkType: hard -"node-addon-api@npm:^3.1.0": - version: 3.2.0 - resolution: "node-addon-api@npm:3.2.0" +"node-addon-api@npm:^3.2.0": + version: 3.2.1 + resolution: "node-addon-api@npm:3.2.1" dependencies: node-gyp: latest - checksum: 538893f075a2f70b659e0ae82bdb2cd627b1b76ddcc9c39e95dc8ff4be786e9f6766ed2aac7d4159f879f0c49a3551636f6d09907865afc5643703e1752e4c3e + checksum: 2369986bb0881ccd9ef6bacdf39550e07e089a9c8ede1cbc5fc7712d8e2faa4d50da0e487e333d4125f8c7a616c730131d1091676c9d499af1d74560756b4a18 languageName: node linkType: hard @@ -8790,22 +7348,22 @@ fsevents@~2.3.1: linkType: hard "node-gyp@npm:latest": - version: 7.1.2 - resolution: "node-gyp@npm:7.1.2" + version: 8.1.0 + resolution: "node-gyp@npm:8.1.0" dependencies: env-paths: ^2.2.0 glob: ^7.1.4 - graceful-fs: ^4.2.3 + graceful-fs: ^4.2.6 + make-fetch-happen: ^8.0.14 nopt: ^5.0.0 npmlog: ^4.1.2 - request: ^2.88.2 rimraf: ^3.0.2 - semver: ^7.3.2 - tar: ^6.0.2 + semver: ^7.3.5 + tar: ^6.1.0 which: ^2.0.2 bin: node-gyp: bin/node-gyp.js - checksum: 08582720f28f9a9bb64bc9cbe2f58b159c0258326a9c898e4e95d2f2d8002f44602338111ebf980e5aa47a3421e071525b758923b76855d780fab8cc03279ae0 + checksum: d9f11a9ab20d2ec900cd910ecd77bc3909d4b5cd9eaf9854b00be4ba930227c5ce2ee0681216c326739dd445b1787aa933ac8d6a16ce222455d85092bb047901 languageName: node linkType: hard @@ -8849,31 +7407,10 @@ fsevents@~2.3.1: languageName: node linkType: hard -"node-releases@npm:^1.1.61": - version: 1.1.63 - resolution: "node-releases@npm:1.1.63" - checksum: 76e369d9e74283c2896858bd5134c6831dc122025410fa1959ed348f6c868cf10015622357484bc539bcff674219f317998cbf401db8e618be23de0b46479a86 - languageName: node - linkType: hard - -"node-releases@npm:^1.1.67": - version: 1.1.67 - resolution: "node-releases@npm:1.1.67" - checksum: 0155b0375efcee6c2153f8b6d8d6e78713434d226364d87c29451a18db381a3e2834021335fd22c6813a1610c1bedb058d0b3c3c8e4b33ded05a33b65f226966 - languageName: node - linkType: hard - -"node-releases@npm:^1.1.69, node-releases@npm:^1.1.71": - version: 1.1.72 - resolution: "node-releases@npm:1.1.72" - checksum: 84dacd44e6595c76e3097b69051b24bf5c3bdb374efc9bef343200ffa183fce10a31ba1c763af51d897ba0f6d00cd1e10eb34a03146688ce4cb051f1d80c402b - languageName: node - linkType: hard - -"noop-logger@npm:^0.1.1": - version: 0.1.1 - resolution: "noop-logger@npm:0.1.1" - checksum: 9f99da270d074a2f268de2eae3ebcb44f12cc2f7241417c7be9f1e206f614afa632a27b91febab86163f88bb54466d638e49c9f62d899105f18d5ed5bcd51ed1 +"node-releases@npm:^1.1.71": + version: 1.1.73 + resolution: "node-releases@npm:1.1.73" + checksum: 44a6caec3330538a669c156fa84833725ae92b317585b106e08ab292c14da09f30cb913c10f1a7402180a51b10074832d4e045b6c3512d74c37d86b41a69e63b languageName: node linkType: hard @@ -8888,7 +7425,7 @@ fsevents@~2.3.1: languageName: node linkType: hard -"normalize-package-data@npm:^2.3.2, normalize-package-data@npm:^2.5.0": +"normalize-package-data@npm:^2.5.0": version: 2.5.0 resolution: "normalize-package-data@npm:2.5.0" dependencies: @@ -8901,23 +7438,14 @@ fsevents@~2.3.1: linkType: hard "normalize-package-data@npm:^3.0.0": - version: 3.0.0 - resolution: "normalize-package-data@npm:3.0.0" + version: 3.0.2 + resolution: "normalize-package-data@npm:3.0.2" dependencies: - hosted-git-info: ^3.0.6 - resolve: ^1.17.0 - semver: ^7.3.2 + hosted-git-info: ^4.0.1 + resolve: ^1.20.0 + semver: ^7.3.4 validate-npm-package-license: ^3.0.1 - checksum: 665ad6e3d0463f56ee8acc1f8f71c5f62535e4c689ed389521c36e8fd34273306f978c934154de3a43f5b128ed7010872ce3381948f8d4a63d70f50ed01ac2e0 - languageName: node - linkType: hard - -"normalize-path@npm:^2.1.1": - version: 2.1.1 - resolution: "normalize-path@npm:2.1.1" - dependencies: - remove-trailing-separator: ^1.0.1 - checksum: 7e9cbdcf7f5b8da7aa191fbfe33daf290cdcd8c038f422faf1b8a83c972bf7a6d94c5be34c4326cb00fb63bc0fd97d9fbcfaf2e5d6142332c2cd36d2e1b86cea + checksum: b50e26f2c81c51ddf6b5a04f731ddc2fc409ef114d44b5e2e4a7cfaa2d45cb86f76fea0c3a57a41e106f71c777124f93b4a75fe1c4b3aa4844971a30a30d94c9 languageName: node linkType: hard @@ -8942,6 +7470,13 @@ fsevents@~2.3.1: languageName: node linkType: hard +"normalize-wheel@npm:^1.0.1": + version: 1.0.1 + resolution: "normalize-wheel@npm:1.0.1" + checksum: 00b32efa040bad9438e732385a4ca27f8532fa2c8c06b54be43b9f75b2da6642bf41a0b4f81e542639dc8d682cde8b059b0a02ae0723fb8ebc3c8f036c8e51d8 + languageName: node + linkType: hard + "npmlog@npm:^4.0.1, npmlog@npm:^4.1.2": version: 4.1.2 resolution: "npmlog@npm:4.1.2" @@ -8984,13 +7519,6 @@ fsevents@~2.3.1: languageName: node linkType: hard -"oauth-sign@npm:~0.9.0": - version: 0.9.0 - resolution: "oauth-sign@npm:0.9.0" - checksum: 8f5497a127967866a3c67094c21efd295e46013a94e6e828573c62220e9af568cc1d2d04b16865ba583e430510fa168baf821ea78f355146d8ed7e350fc44c64 - languageName: node - linkType: hard - "object-assign@npm:^4.0.1, object-assign@npm:^4.1.0, object-assign@npm:^4.1.1": version: 4.1.1 resolution: "object-assign@npm:4.1.1" @@ -8998,17 +7526,10 @@ fsevents@~2.3.1: languageName: node linkType: hard -"object-inspect@npm:^1.8.0": - version: 1.8.0 - resolution: "object-inspect@npm:1.8.0" - checksum: 1bb4ed43972ad29537bee9b2b3f543d7e6463ee3b929048ecddcb50f7796c418c679ba2104f2e37cd7fa486782b6278b9d1c9cccb4bbc7ca17cd529f3ae4dc1f - languageName: node - linkType: hard - -"object-inspect@npm:^1.9.0": - version: 1.10.3 - resolution: "object-inspect@npm:1.10.3" - checksum: 9a56db2e0146fe94a7a9c78f677a2a28eec11d0ae13430e0bb2cb908fdd2d3feb7dbba7c638b9b7f88ace01d9a937227a8801709d13afb76613775aeb68632d3 +"object-inspect@npm:^1.10.3, object-inspect@npm:^1.11.0, object-inspect@npm:^1.9.0": + version: 1.11.0 + resolution: "object-inspect@npm:1.11.0" + checksum: 8c64f89ce3a7b96b6925879ad5f6af71d498abc217e136660efecd97452991216f375a7eb47cb1cb50643df939bf0c7cc391567b7abc6a924d04679705e58e27 languageName: node linkType: hard @@ -9029,19 +7550,7 @@ fsevents@~2.3.1: languageName: node linkType: hard -"object.assign@npm:^4.1.0, object.assign@npm:^4.1.1": - version: 4.1.1 - resolution: "object.assign@npm:4.1.1" - dependencies: - define-properties: ^1.1.3 - es-abstract: ^1.18.0-next.0 - has-symbols: ^1.0.1 - object-keys: ^1.1.1 - checksum: e2aaf60315e6d9c38beb1c22aeac7d1b1f2f32e43e55efc7ffd580bb10923fff1407a1f1e3be67b990aba524b71ca1c969d0bb9490815746767ab32d943b4afa - languageName: node - linkType: hard - -"object.assign@npm:^4.1.2": +"object.assign@npm:^4.1.0, object.assign@npm:^4.1.2": version: 4.1.2 resolution: "object.assign@npm:4.1.2" dependencies: @@ -9053,15 +7562,14 @@ fsevents@~2.3.1: languageName: node linkType: hard -"object.entries@npm:^1.1.3": - version: 1.1.3 - resolution: "object.entries@npm:1.1.3" +"object.entries@npm:^1.1.4": + version: 1.1.4 + resolution: "object.entries@npm:1.1.4" dependencies: - call-bind: ^1.0.0 + call-bind: ^1.0.2 define-properties: ^1.1.3 - es-abstract: ^1.18.0-next.1 - has: ^1.0.3 - checksum: 2622ac94f801e6cfddfa2e26719dd200bbc2cb891f00664f0256ebf1ca6626f00882352207ba2d2706c36bbd99d8cfbc84a01b937092239c23a60e1a4ee1d497 + es-abstract: ^1.18.2 + checksum: 1ddd2e28f5ecfe2369fe198439ec0457529f3eec85c7f43870be8de3ec3d98024b014ddb4a769ca48925e47ed76c69a51d8bf2c9886ed43174e3a1d33c2dbe38 languageName: node linkType: hard @@ -9078,45 +7586,45 @@ fsevents@~2.3.1: linkType: hard "object.getownpropertydescriptors@npm:^2.1.0": - version: 2.1.0 - resolution: "object.getownpropertydescriptors@npm:2.1.0" + version: 2.1.2 + resolution: "object.getownpropertydescriptors@npm:2.1.2" dependencies: + call-bind: ^1.0.2 define-properties: ^1.1.3 - es-abstract: ^1.17.0-next.1 - checksum: a3763085ce840b8f8de4df1e354303d21461454b91b6f6408871cb7be31af975fce45163e4c380c0704c3cfc9e06197d80a4b4a99fa83cc111d075311ae02cc7 + es-abstract: ^1.18.0-next.2 + checksum: 6c1c0162a2bea912f092dbf48699998d6f4b788a9884ee99ba41ddf25c3f0924ec56c6a55738c4ae3bd91d1203813a9a8e18e6fff1f477e2626cdbcd1a5f3ca8 languageName: node linkType: hard -"object.values@npm:^1.1.0": - version: 1.1.1 - resolution: "object.values@npm:1.1.1" +"object.hasown@npm:^1.0.0": + version: 1.0.0 + resolution: "object.hasown@npm:1.0.0" dependencies: define-properties: ^1.1.3 - es-abstract: ^1.17.0-next.1 - function-bind: ^1.1.1 - has: ^1.0.3 - checksum: f1217c09fa3338698bf748514f9d5cd279744fd34e6593920faf2ad0c8eb339b3b783b6ac0b02d9285d6ead53bcf7b1ac0a5aee4717b7e38c451336796ecb8af + es-abstract: ^1.18.1 + checksum: 77c9c3dd744c811ba6e0a687d2dc5c34f4fb64b311cd0e042e9c26d1c87986c1aa5859aa0a552f3b6054abea738d962c0ced2752f859588365f08df3c9e1bd4a languageName: node linkType: hard -"object.values@npm:^1.1.3": - version: 1.1.3 - resolution: "object.values@npm:1.1.3" +"object.values@npm:^1.1.0, object.values@npm:^1.1.4": + version: 1.1.4 + resolution: "object.values@npm:1.1.4" dependencies: call-bind: ^1.0.2 define-properties: ^1.1.3 - es-abstract: ^1.18.0-next.2 - has: ^1.0.3 - checksum: 8b29bd0936a32c2c5dfeb39389f65c7c3f32253a2ad3e4605726cac6bda8f642b4f8ab1ef58279851b86b7ae7322b3cf9a464c346498a7deb8f0c3a0554015f0 + es-abstract: ^1.18.2 + checksum: 1a2f1e9d0bcfc299b8491170a50e6e7ca23392641d7781a8528e96c72f0013ba7ee731792ff8586c8eaec0328acda16c59622924c82c58bd0eb5c4ee67794856 languageName: node linkType: hard -"on-finished@npm:^2.3.0": - version: 2.3.0 - resolution: "on-finished@npm:2.3.0" +"object.values@npm:^1.1.5": + version: 1.1.5 + resolution: "object.values@npm:1.1.5" dependencies: - ee-first: 1.1.1 - checksum: 1db595bd963b0124d6fa261d18320422407b8f01dc65863840f3ddaaf7bcad5b28ff6847286703ca53f4ec19595bd67a2f1253db79fc4094911ec6aa8df1671b + call-bind: ^1.0.2 + define-properties: ^1.1.3 + es-abstract: ^1.19.1 + checksum: 0f17e99741ebfbd0fa55ce942f6184743d3070c61bd39221afc929c8422c4907618c8da694c6915bc04a83ab3224260c779ba37fc07bb668bdc5f33b66a902a4 languageName: node linkType: hard @@ -9129,13 +7637,6 @@ fsevents@~2.3.1: languageName: node linkType: hard -"only@npm:~0.0.2": - version: 0.0.2 - resolution: "only@npm:0.0.2" - checksum: d399710db867a1ef436dd3ce74499c87ece794aa81ab0370b5d153968766ee4aed2f98d3f92fc87c963e45b7a74d400d6f463ef651a5e7cfb861b15e88e9efe6 - languageName: node - linkType: hard - "optionator@npm:^0.9.1": version: 0.9.1 resolution: "optionator@npm:0.9.1" @@ -9202,6 +7703,15 @@ fsevents@~2.3.1: languageName: node linkType: hard +"p-map@npm:^4.0.0": + version: 4.0.0 + resolution: "p-map@npm:4.0.0" + dependencies: + aggregate-error: ^3.0.0 + checksum: cb0ab21ec0f32ddffd31dfc250e3afa61e103ef43d957cc45497afe37513634589316de4eb88abdfd969fe6410c22c0b93ab24328833b8eb1ccc087fc0442a1c + languageName: node + linkType: hard + "p-try@npm:^1.0.0": version: 1.0.0 resolution: "p-try@npm:1.0.0" @@ -9273,39 +7783,15 @@ fsevents@~2.3.1: languageName: node linkType: hard -"parse-json@npm:^4.0.0": - version: 4.0.0 - resolution: "parse-json@npm:4.0.0" - dependencies: - error-ex: ^1.3.1 - json-parse-better-errors: ^1.0.1 - checksum: 0fe227d410a61090c247e34fa210552b834613c006c2c64d9a05cfe9e89cf8b4246d1246b1a99524b53b313e9ac024438d0680f67e33eaed7e6f38db64cfe7b5 - languageName: node - linkType: hard - -"parse-json@npm:^5.0.0": - version: 5.1.0 - resolution: "parse-json@npm:5.1.0" - 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 - checksum: 0c0c299347e74b9f5720644abc5a07667e66143114e28b63967468611aad5a4c2216fc990c674f83398cd0c2a176cfd7098f79e279079fcc487dfd5f9b475517 - languageName: node - linkType: hard - -"parseurl@npm:^1.3.2": - version: 1.3.3 - resolution: "parseurl@npm:1.3.3" - checksum: 407cee8e0a3a4c5cd472559bca8b6a45b82c124e9a4703302326e9ab60fc1081442ada4e02628efef1eb16197ddc7f8822f5a91fd7d7c86b51f530aedb17dfa2 - languageName: node - linkType: hard - -"passthrough-counter@npm:^1.0.0": - version: 1.0.0 - resolution: "passthrough-counter@npm:1.0.0" - checksum: 942a0addeb677e24ddb154b04cc29ce1c5720032efc268689446420f9350d47e94f2f1f76d469686bc87c1543c2f2165f2d004d265fe1b81465c76e02d272c63 +"parse-json@npm:^5.0.0": + version: 5.2.0 + resolution: "parse-json@npm:5.2.0" + 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 + checksum: 62085b17d64da57f40f6afc2ac1f4d95def18c4323577e1eced571db75d9ab59b297d1d10582920f84b15985cbfc6b6d450ccbf317644cfa176f3ed982ad87e2 languageName: node linkType: hard @@ -9351,54 +7837,10 @@ fsevents@~2.3.1: languageName: node linkType: hard -"path-match@npm:^1.2.4": - version: 1.2.4 - resolution: "path-match@npm:1.2.4" - dependencies: - http-errors: ~1.4.0 - path-to-regexp: ^1.0.0 - checksum: 60946ed9fdd922da2d9688abc0dc05cd537a2ff06d192518dcbe654302ad70499050a9297ea23a26c3e1af32d5a867d5f6e0eb892f38fa032afd70df85be05f0 - languageName: node - linkType: hard - "path-parse@npm:^1.0.6": - version: 1.0.6 - resolution: "path-parse@npm:1.0.6" - checksum: 962a85dd384d68d469ec5ba4010df8f8f9b7e936ce603bbe3211476c5615feb3c2b1ca61211a78445fadc833f0b1a86ea6484c861035ec4ac93011ba9aff9a11 - languageName: node - linkType: hard - -"path-starts-with@npm:^1.0.0": - version: 1.0.0 - resolution: "path-starts-with@npm:1.0.0" - dependencies: - normalize-path: ^2.1.1 - checksum: 15b120d3f7b58de29b1b010675392b368ab67003a8a23b4f4649447f4d1d98a6db2eb7aec19f49042b8ddcba77f808f0babbca36ff3f0c581c870109d52a7fa2 - languageName: node - linkType: hard - -"path-to-regexp@npm:^1.0.0": - version: 1.8.0 - resolution: "path-to-regexp@npm:1.8.0" - dependencies: - isarray: 0.0.1 - checksum: 709f6f083c0552514ef4780cb2e7e4cf49b0cc89a97439f2b7cc69a608982b7690fb5d1720a7473a59806508fc2dae0be751ba49f495ecf89fd8fbc62abccbcd - languageName: node - linkType: hard - -"path-to-regexp@npm:^6.1.0": - version: 6.2.0 - resolution: "path-to-regexp@npm:6.2.0" - checksum: a6aca74d2d6e2e7594d812f653cf85e9cb5054d3a8d80f099722a44ef6ad22639b02078e5ea83d11db16321c3e4359e3f1ab0274fa78dad0754a6e53f630b0fc - languageName: node - linkType: hard - -"path-type@npm:^3.0.0": - version: 3.0.0 - resolution: "path-type@npm:3.0.0" - dependencies: - pify: ^3.0.0 - checksum: 735b35e256bad181f38fa021033b1c33cfbe62ead42bb2222b56c210e42938eecb272ae1949f3b6db4ac39597a61b44edd8384623ec4d79bfdc9a9c0f12537a6 + version: 1.0.7 + resolution: "path-parse@npm:1.0.7" + checksum: 49abf3d81115642938a8700ec580da6e830dde670be21893c62f4e10bd7dd4c3742ddc603fe24f898cba7eb0c6bc1777f8d9ac14185d34540c6d4d80cd9cae8a languageName: node linkType: hard @@ -9410,36 +7852,29 @@ fsevents@~2.3.1: linkType: hard "pbkdf2@npm:^3.0.3": - version: 3.1.1 - resolution: "pbkdf2@npm:3.1.1" + version: 3.1.2 + resolution: "pbkdf2@npm:3.1.2" 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 - checksum: c3de26b8eb363180687e31138e1a486c509d407f361ae222e0af4748d9a252326e14e8f3311182945dbc27e7f235b49fb7a578ad340302a83481585bbd3947d3 - languageName: node - linkType: hard - -"performance-now@npm:^2.1.0": - version: 2.1.0 - resolution: "performance-now@npm:2.1.0" - checksum: 534e641aa8f7cba160f0afec0599b6cecefbb516a2e837b512be0adbe6c1da5550e89c78059c7fabc5c9ffdf6627edabe23eb7c518c4500067a898fa65c2b550 + checksum: 2c950a100b1da72123449208e231afc188d980177d021d7121e96a2de7f2abbc96ead2b87d03d8fe5c318face097f203270d7e27908af9f471c165a4e8e69c92 languageName: node linkType: hard -"picomatch@npm:^2.0.4, picomatch@npm:^2.0.5, picomatch@npm:^2.2.1, picomatch@npm:^2.2.2": - version: 2.2.2 - resolution: "picomatch@npm:2.2.2" - checksum: 897a589f94665b4fd93e075fa94893936afe3f7bbef44250f0e878a8d9d001972a79589cac2856c24f6f5aa3b0abc9c8ba00c98fae4dc22bc0117188864d4181 +"picocolors@npm:^0.2.1": + version: 0.2.1 + resolution: "picocolors@npm:0.2.1" + checksum: 3b0f441f0062def0c0f39e87b898ae7461c3a16ffc9f974f320b44c799418cabff17780ee647fda42b856a1dc45897e2c62047e1b546d94d6d5c6962f45427b2 languageName: node linkType: hard -"picomatch@npm:^2.2.3": - version: 2.2.3 - resolution: "picomatch@npm:2.2.3" - checksum: 45e2b882b5265d3a322c6b7b854c1fdc33d5083011b9730296e9ad26332824ac356529f1ce1b0c1111f08a84c02e8525ea121d17c4bbe2970ca6665e587921fa +"picomatch@npm:^2.0.4, picomatch@npm:^2.2.1, picomatch@npm:^2.2.3": + version: 2.3.0 + resolution: "picomatch@npm:2.3.0" + checksum: 16818720ea7c5872b6af110760dee856c8e4cd79aed1c7a006d076b1cc09eff3ae41ca5019966694c33fbd2e1cc6ea617ab10e4adac6df06556168f13be3fca2 languageName: node linkType: hard @@ -9491,15 +7926,6 @@ fsevents@~2.3.1: languageName: node linkType: hard -"pkg-up@npm:^2.0.0": - version: 2.0.0 - resolution: "pkg-up@npm:2.0.0" - dependencies: - find-up: ^2.1.0 - checksum: de4b418175281a082e366ce1a919f032520ee53cf421578b35173f03816f6ec4c19e1552066840bb0988c3e1215859653948efd6ca3507a23f4f44229269500d - languageName: node - linkType: hard - "platform@npm:1.3.6": version: 1.3.6 resolution: "platform@npm:1.3.6" @@ -9693,11 +8119,11 @@ fsevents@~2.3.1: linkType: hard "postcss-font-variant@npm:^4.0.0": - version: 4.0.0 - resolution: "postcss-font-variant@npm:4.0.0" + version: 4.0.1 + resolution: "postcss-font-variant@npm:4.0.1" dependencies: postcss: ^7.0.2 - checksum: 47589557b873c23b1cc81630bc627c52cc9653fbc5e15adfd55559f3f556343eecaae726626d92064c8e754f1f45ef6d5fd954bd32ade01427ed7ac8bf10de92 + checksum: d09836cd848e8c24d144484b6b9b175df26dca59e1a1579e790c7f3dcaea00944a8d0b6ac543f4c128de7b30fab9a0aef544d54789b3b55fd850770b172d980d languageName: node linkType: hard @@ -9746,12 +8172,11 @@ fsevents@~2.3.1: linkType: hard "postcss-initial@npm:^3.0.0": - version: 3.0.2 - resolution: "postcss-initial@npm:3.0.2" + version: 3.0.4 + resolution: "postcss-initial@npm:3.0.4" dependencies: - lodash.template: ^4.5.0 postcss: ^7.0.2 - checksum: fe47de21f746c3498b63d2cceaea4e0e3d0dfe8253cfcfd02404e6f5d4d80302d043ae10f215b0206c0ea9ac24125ab7d3500bce24654cb0c42dbb05787209a2 + checksum: 710ab6cabc5970912c04314099f5334e7d901235014bb1462657e29f8dc97b6e51caa35f0beba7e5dbe440589ef9c1df13a89bc53d6e6aa664573b945f1630bb languageName: node linkType: hard @@ -9947,12 +8372,12 @@ fsevents@~2.3.1: linkType: hard "postcss-selector-not@npm:^4.0.0": - version: 4.0.0 - resolution: "postcss-selector-not@npm:4.0.0" + version: 4.0.1 + resolution: "postcss-selector-not@npm:4.0.1" dependencies: balanced-match: ^1.0.0 postcss: ^7.0.2 - checksum: f7d1abc3f240fcae4b81e0cbfaf4c2b363a473a66742497a430c786498abd6be0e1ce9e42b43c64877988356f0b8c5e2446e5bcec722bcef807d275a8f596837 + checksum: 08fbd3e5ca273f3b767bd35d6bd033647a68f59b596d8aec19a9089b750539bdf85121ed7fd00a7763174a55c75c22a309d75d306127e23dc396069781efbaa4 languageName: node linkType: hard @@ -9967,19 +8392,7 @@ fsevents@~2.3.1: languageName: node linkType: hard -"postcss-selector-parser@npm:^6.0.2": - version: 6.0.4 - resolution: "postcss-selector-parser@npm:6.0.4" - dependencies: - cssesc: ^3.0.0 - indexes-of: ^1.0.1 - uniq: ^1.0.1 - util-deprecate: ^1.0.2 - checksum: 2030e3439a5841d0d1bbe3e7a77515bc677397b0073691e8dc4e1168ecd8a7adc8aba2ce7f274d1b2654b73c94818758d335ecbf85e1b29705d17180030f8164 - languageName: node - linkType: hard - -"postcss-selector-parser@npm:^6.0.5": +"postcss-selector-parser@npm:^6.0.2, postcss-selector-parser@npm:^6.0.5": version: 6.0.6 resolution: "postcss-selector-parser@npm:6.0.6" dependencies: @@ -10033,14 +8446,14 @@ fsevents@~2.3.1: languageName: node linkType: hard -"postcss@npm:8.2.13": - version: 8.2.13 - resolution: "postcss@npm:8.2.13" +"postcss@npm:8.2.15": + version: 8.2.15 + resolution: "postcss@npm:8.2.15" dependencies: colorette: ^1.2.2 - nanoid: ^3.1.22 + nanoid: ^3.1.23 source-map: ^0.6.1 - checksum: 1f4a4d85c220d90d11486d0a21a0549dff91e52b8857957c797feb408b31f929b142d0b7ab029ec81bb5a48b0e8605ba716d674571fa98962737c90164d64648 + checksum: 07c309e5318843cdbb240b19101c8c679e19cb88544811de921dd9125118d6c0603afe925da7f2ac928dd7d4c0c6380ccdedf032400af5013210a3f145baca5d languageName: node linkType: hard @@ -10056,30 +8469,30 @@ fsevents@~2.3.1: linkType: hard "postcss@npm:^7.0.14, postcss@npm:^7.0.17, postcss@npm:^7.0.2, postcss@npm:^7.0.21, postcss@npm:^7.0.26, postcss@npm:^7.0.31, postcss@npm:^7.0.32, postcss@npm:^7.0.35, postcss@npm:^7.0.5, postcss@npm:^7.0.6": - version: 7.0.35 - resolution: "postcss@npm:7.0.35" + version: 7.0.36 + resolution: "postcss@npm:7.0.36" dependencies: chalk: ^2.4.2 source-map: ^0.6.1 supports-color: ^6.1.0 - checksum: 6b197769057f38b9d4d8778c7e3b8b4a56c0c2c3ac8edf7552b06ac964e1a3601567fa2c5335a54fba103492305b0fc1347ce786fd72e30903a22f09f86525ae + checksum: 4cfc0989b9ad5d0e8971af80d87f9c5beac5c84cb89ff22ad69852edf73c0a2fa348e7e0a135b5897bf893edad0fe86c428769050431ad9b532f072ff530828d languageName: node linkType: hard -"postcss@npm:^8.2.15": - version: 8.2.15 - resolution: "postcss@npm:8.2.15" +"postcss@npm:^8.3.9": + version: 8.3.9 + resolution: "postcss@npm:8.3.9" dependencies: - colorette: ^1.2.2 - nanoid: ^3.1.23 - source-map: ^0.6.1 - checksum: 07c309e5318843cdbb240b19101c8c679e19cb88544811de921dd9125118d6c0603afe925da7f2ac928dd7d4c0c6380ccdedf032400af5013210a3f145baca5d + nanoid: ^3.1.28 + picocolors: ^0.2.1 + source-map-js: ^0.6.2 + checksum: b64d0e59bc027b2f09e5a84ca32b4f0620553812110e42295a79fd0e6ea664779e575c2d5e8d35a1b0804f0933ec878404c6e161e008b5bc51cba44eaef216ef languageName: node linkType: hard -"prebuild-install@npm:^6.0.1": - version: 6.1.2 - resolution: "prebuild-install@npm:6.1.2" +"prebuild-install@npm:^6.1.2": + version: 6.1.3 + resolution: "prebuild-install@npm:6.1.3" dependencies: detect-libc: ^1.0.3 expand-template: ^2.0.3 @@ -10088,7 +8501,6 @@ fsevents@~2.3.1: mkdirp-classic: ^0.5.3 napi-build-utils: ^1.0.1 node-abi: ^2.21.0 - noop-logger: ^0.1.1 npmlog: ^4.0.1 pump: ^3.0.0 rc: ^1.2.7 @@ -10096,8 +8508,8 @@ fsevents@~2.3.1: tar-fs: ^2.0.0 tunnel-agent: ^0.6.0 bin: - prebuild-install: ./bin.js - checksum: db205c9f408cdfc13a6ad0dbc88bc7aeed76fb5ccb232f1eb515e6686da7f20f48831ca9142dcf38b2785f5906914371a95342032e54e421c08efa45785c80b6 + prebuild-install: bin.js + checksum: b258198789209bb8df853bbc3371caa7f85ca323e180e564bd6031b02c47eee1d371657a8e54685a3674d16281ea879d7947d019acb031c641c89799a25af277 languageName: node linkType: hard @@ -10129,7 +8541,24 @@ fsevents@~2.3.1: languageName: node linkType: hard -"prop-types@npm:15.7.2, prop-types@npm:^15.5.8, prop-types@npm:^15.7.2": +"promise-inflight@npm:^1.0.1": + version: 1.0.1 + resolution: "promise-inflight@npm:1.0.1" + checksum: 22749483091d2c594261517f4f80e05226d4d5ecc1fc917e1886929da56e22b5718b7f2a75f3807e7a7d471bc3be2907fe92e6e8f373ddf5c64bae35b5af3981 + languageName: node + linkType: hard + +"promise-retry@npm:^2.0.1": + version: 2.0.1 + resolution: "promise-retry@npm:2.0.1" + dependencies: + err-code: ^2.0.2 + retry: ^0.12.0 + checksum: f96a3f6d90b92b568a26f71e966cbbc0f63ab85ea6ff6c81284dc869b41510e6cdef99b6b65f9030f0db422bf7c96652a3fff9f2e8fb4a0f069d8f4430359429 + languageName: node + linkType: hard + +"prop-types@npm:^15.5.8, prop-types@npm:^15.7.2": version: 15.7.2 resolution: "prop-types@npm:15.7.2" dependencies: @@ -10140,13 +8569,6 @@ fsevents@~2.3.1: languageName: node linkType: hard -"psl@npm:^1.1.28": - version: 1.8.0 - resolution: "psl@npm:1.8.0" - checksum: 6150048ed2da3f919478bee8a82f3828303bc0fc730fb015a48f83c9977682c7b28c60ab01425a72d82a2891a1681627aa530a991d50c086b48a3be27744bde7 - languageName: node - linkType: hard - "public-encrypt@npm:^4.0.0": version: 4.0.3 resolution: "public-encrypt@npm:4.0.3" @@ -10185,21 +8607,14 @@ fsevents@~2.3.1: languageName: node linkType: hard -"punycode@npm:^2.1.0, punycode@npm:^2.1.1": +"punycode@npm:^2.1.0": version: 2.1.1 resolution: "punycode@npm:2.1.1" checksum: 823bf443c6dd14f669984dea25757b37993f67e8d94698996064035edd43bed8a5a17a9f12e439c2b35df1078c6bec05a6c86e336209eb1061e8025c481168e8 languageName: node linkType: hard -"pure-uuid@npm:^1.6.1": - version: 1.6.1 - resolution: "pure-uuid@npm:1.6.1" - checksum: 1f99ecdd921caca44c74f4aeeaa22ac612030907ea7fa13a533785b393e332328ce6d3ef51ce23d9e4d1e51c8085bf9294a866bd06930d84689f03aa76885dee - languageName: node - linkType: hard - -"pure-uuid@npm:^1.6.2": +"pure-uuid@npm:^1.6.1, pure-uuid@npm:^1.6.2": version: 1.6.2 resolution: "pure-uuid@npm:1.6.2" checksum: da9f0a8b98f82e6c968488a3537db6955fcffea202abc65572f1cf96c06960321b44db9661de4fdfe76d0ac92a2d19d98547862937961651b9ac9dc43c78b8f7 @@ -10213,7 +8628,7 @@ fsevents@~2.3.1: languageName: node linkType: hard -"qs@npm:^6.10.1": +"qs@npm:^6.10.1, qs@npm:^6.6.0": version: 6.10.1 resolution: "qs@npm:6.10.1" dependencies: @@ -10222,20 +8637,6 @@ fsevents@~2.3.1: languageName: node linkType: hard -"qs@npm:^6.4.0, qs@npm:^6.6.0": - version: 6.9.4 - resolution: "qs@npm:6.9.4" - checksum: 5ac0bd145f32d346d20c2fdcf19c8e548c5916458851e32527efb25be0c2cff8a3a81140c145c98a1184779b5b625c91bc7c50e147073bffb978fb7f4a9c8c8a - languageName: node - linkType: hard - -"qs@npm:~6.5.2": - version: 6.5.2 - resolution: "qs@npm:6.5.2" - checksum: 24af7b9928ba2141233fba2912876ff100403dba1b08b20c3b490da9ea6c636760445ea2211a079e7dfa882a5cf8f738337b3748c8bdd0f93358fa8881d2db8f - languageName: node - linkType: hard - "querystring-es3@npm:0.2.1, querystring-es3@npm:^0.2.0": version: 0.2.1 resolution: "querystring-es3@npm:0.2.1" @@ -10243,13 +8644,36 @@ fsevents@~2.3.1: languageName: node linkType: hard -"querystring@npm:0.2.0, querystring@npm:^0.2.0": +"querystring@npm:0.2.0": version: 0.2.0 resolution: "querystring@npm:0.2.0" checksum: 8258d6734f19be27e93f601758858c299bdebe71147909e367101ba459b95446fbe5b975bf9beb76390156a592b6f4ac3a68b6087cea165c259705b8b4e56a69 languageName: node linkType: hard +"querystring@npm:^0.2.0": + version: 0.2.1 + resolution: "querystring@npm:0.2.1" + checksum: 7b83b45d641e75fd39cd6625ddfd44e7618e741c61e95281b57bbae8fde0afcc12cf851924559e5cc1ef9baa3b1e06e22b164ea1397d65dd94b801f678d9c8ce + languageName: node + linkType: hard + +"queue-microtask@npm:^1.2.2": + version: 1.2.3 + resolution: "queue-microtask@npm:1.2.3" + checksum: b676f8c040cdc5b12723ad2f91414d267605b26419d5c821ff03befa817ddd10e238d22b25d604920340fd73efd8ba795465a0377c4adf45a4a41e4234e42dc4 + languageName: node + linkType: hard + +"queue@npm:6.0.2": + version: 6.0.2 + resolution: "queue@npm:6.0.2" + dependencies: + inherits: ~2.0.3 + checksum: ebc23639248e4fe40a789f713c20548e513e053b3dc4924b6cb0ad741e3f264dcff948225c8737834dd4f9ec286dbc06a1a7c13858ea382d9379f4303bcc0916 + languageName: node + linkType: hard + "quick-lru@npm:^4.0.1": version: 4.0.1 resolution: "quick-lru@npm:4.0.1" @@ -10276,7 +8700,7 @@ fsevents@~2.3.1: languageName: node linkType: hard -"raw-body@npm:2.4.1, raw-body@npm:^2.2.0": +"raw-body@npm:2.4.1": version: 2.4.1 resolution: "raw-body@npm:2.4.1" dependencies: @@ -10288,6 +8712,95 @@ fsevents@~2.3.1: languageName: node linkType: hard +"rc-align@npm:^4.0.0": + version: 4.0.9 + resolution: "rc-align@npm:4.0.9" + dependencies: + "@babel/runtime": ^7.10.1 + classnames: 2.x + dom-align: ^1.7.0 + rc-util: ^5.3.0 + resize-observer-polyfill: ^1.5.1 + peerDependencies: + react: ">=16.9.0" + react-dom: ">=16.9.0" + checksum: 2cb7078c3b2fea5a332ed71eca4136d5cbb5f3a2ebb7427b8e68562b64d7b3e3386b4daeefb50e713c6e2c219d78f7544ca178ea8b48e49c1e12b98f1cc274b9 + languageName: node + linkType: hard + +"rc-motion@npm:^2.0.0": + version: 2.4.4 + resolution: "rc-motion@npm:2.4.4" + dependencies: + "@babel/runtime": ^7.11.1 + classnames: ^2.2.1 + rc-util: ^5.2.1 + peerDependencies: + react: ">=16.9.0" + react-dom: ">=16.9.0" + checksum: efbb27be05af062aac82c4b5b2a12067d5822f48ebfa813d3c861f9ae5983ea199a6bd9c4d7140f8963ff5f15ebf4c59546f426682f6576a34003aceb1170cfd + languageName: node + linkType: hard + +"rc-slider@npm:^9.7.4": + version: 9.7.4 + resolution: "rc-slider@npm:9.7.4" + dependencies: + "@babel/runtime": ^7.10.1 + classnames: ^2.2.5 + rc-tooltip: ^5.0.1 + rc-util: ^5.0.0 + shallowequal: ^1.1.0 + peerDependencies: + react: ">=16.9.0" + react-dom: ">=16.9.0" + checksum: 61f71868bdc850e3a1274e6c8bb755891945c223017d2fde095f88e0dbfa5c22ad013f8b7e2f0f17ea4323130cb399fb156e2b6475eebb3edb889aac9f15767b + languageName: node + linkType: hard + +"rc-tooltip@npm:^5.0.1": + version: 5.1.1 + resolution: "rc-tooltip@npm:5.1.1" + dependencies: + "@babel/runtime": ^7.11.2 + rc-trigger: ^5.0.0 + peerDependencies: + react: ">=16.9.0" + react-dom: ">=16.9.0" + checksum: e65b175c28356cee101db56217d02a1eb1d96e727620bb1f6551f98e3ab49d3ec4381f1d408d19054b46349cba0e89056a4b4f09eeebbe70a1013733ad0e1fc9 + languageName: node + linkType: hard + +"rc-trigger@npm:^5.0.0": + version: 5.2.9 + resolution: "rc-trigger@npm:5.2.9" + dependencies: + "@babel/runtime": ^7.11.2 + classnames: ^2.2.6 + rc-align: ^4.0.0 + rc-motion: ^2.0.0 + rc-util: ^5.5.0 + peerDependencies: + react: ">=16.9.0" + react-dom: ">=16.9.0" + checksum: 77a988fcf4d158d4ecee90707dfc9bb8bba9abc09db305dc18fe39b3e163de71eae4123c80b3bb08395fd03baa34349aa13a9de63be04f7ca3035fb4ee267486 + languageName: node + linkType: hard + +"rc-util@npm:^5.0.0, rc-util@npm:^5.2.1, rc-util@npm:^5.3.0, rc-util@npm:^5.5.0": + version: 5.13.2 + resolution: "rc-util@npm:5.13.2" + dependencies: + "@babel/runtime": ^7.12.5 + react-is: ^16.12.0 + shallowequal: ^1.1.0 + peerDependencies: + react: ">=16.9.0" + react-dom: ">=16.9.0" + checksum: 42e03bff64eed87239004382855e0db025544d7f0f625ea0c9058e3fa195872387b85664695cb30e37ea0c4d3b997ce9037cb7553bf68d5cd0c6280941046898 + languageName: node + linkType: hard + "rc@npm:^1.2.7": version: 1.2.8 resolution: "rc@npm:1.2.8" @@ -10311,15 +8824,15 @@ fsevents@~2.3.1: languageName: node linkType: hard -"react-copy-to-clipboard@npm:^5.0.3": - version: 5.0.3 - resolution: "react-copy-to-clipboard@npm:5.0.3" +"react-copy-to-clipboard@npm:^5.0.4": + version: 5.0.4 + resolution: "react-copy-to-clipboard@npm:5.0.4" dependencies: copy-to-clipboard: ^3 prop-types: ^15.5.8 peerDependencies: react: ^15.3.0 || ^16.0.0 || ^17.0.0 - checksum: b10d846ffa283d3de4cccc8e25927cb32d5ab8bf3d21586e1665459859653583971f7db6594176a807d42bce2a443c2c0a094b1657eb75cf04b95dfb64a22d84 + checksum: dae8caae192d4937a151ec3ddad540fe4846d28646aee6d90774abcc6a077761926c99f2bcd9506a76a65524ec2c32b5ec1341e8096fcd3f6335365eaf065137 languageName: node linkType: hard @@ -10336,16 +8849,36 @@ fsevents@~2.3.1: languageName: node linkType: hard -"react-is@npm:16.13.1, react-is@npm:^16.13.1, react-is@npm:^16.7.0, react-is@npm:^16.8.1": +"react-easy-crop@npm:^3.5.3": + version: 3.5.3 + resolution: "react-easy-crop@npm:3.5.3" + dependencies: + normalize-wheel: ^1.0.1 + tslib: 2.0.1 + peerDependencies: + react: ">=16.4.0" + react-dom: ">=16.4.0" + checksum: 3401cea2072c43a50dcaa51fda17d9c1ecace8ef61902a166783e171fbefc6778b7bb149b39790e88898505958286e013621f496bbd413fee109d6f595270258 + languageName: node + linkType: hard + +"react-is@npm:17.0.2, react-is@npm:^17.0.2": + version: 17.0.2 + resolution: "react-is@npm:17.0.2" + checksum: 9d6d111d8990dc98bc5402c1266a808b0459b5d54830bbea24c12d908b536df7883f268a7868cfaedde3dd9d4e0d574db456f84d2e6df9c4526f99bb4b5344d8 + languageName: node + linkType: hard + +"react-is@npm:^16.12.0, react-is@npm:^16.13.1, react-is@npm:^16.7.0, react-is@npm:^16.8.1": version: 16.13.1 resolution: "react-is@npm:16.13.1" checksum: f7a19ac3496de32ca9ae12aa030f00f14a3d45374f1ceca0af707c831b2a6098ef0d6bdae51bd437b0a306d7f01d4677fcc8de7c0d331eb47ad0f46130e53c5f languageName: node linkType: hard -"react-redux@npm:^7.2.4": - version: 7.2.4 - resolution: "react-redux@npm:7.2.4" +"react-redux@npm:^7.2.5": + version: 7.2.5 + resolution: "react-redux@npm:7.2.5" dependencies: "@babel/runtime": ^7.12.1 "@types/react-redux": ^7.1.16 @@ -10360,7 +8893,7 @@ fsevents@~2.3.1: optional: true react-native: optional: true - checksum: 214fa1a4811f95090b77d96ec7114c322adf388b6d086ebebf50cdaf03549758037283f953d2b920cf6ee2f6ffad8f35e92f1ab959b3f2c957f5075d00e16d0a + checksum: 04ac4a4178067cbcfc05506dfea9f7e01730093a5752f050567f7ae4a38c03c96da9d8fed051f8ab1ecede5ea8a15ee41c5f6c5eeb7f04f37e4d13e431ec7830 languageName: node linkType: hard @@ -10403,16 +8936,6 @@ fsevents@~2.3.1: languageName: node linkType: hard -"read-pkg-up@npm:^3.0.0": - version: 3.0.0 - resolution: "read-pkg-up@npm:3.0.0" - dependencies: - find-up: ^2.0.0 - read-pkg: ^3.0.0 - checksum: 16175573f2914ab9788897bcbe2a62b5728d0075e62285b3680cebe97059e2911e0134a062cf6e51ebe3e3775312bc788ac2039ed6af38ec68d2c10c6f2b30fb - languageName: node - linkType: hard - "read-pkg-up@npm:^7.0.1": version: 7.0.1 resolution: "read-pkg-up@npm:7.0.1" @@ -10424,17 +8947,6 @@ fsevents@~2.3.1: languageName: node linkType: hard -"read-pkg@npm:^3.0.0": - version: 3.0.0 - resolution: "read-pkg@npm:3.0.0" - dependencies: - load-json-file: ^4.0.0 - normalize-package-data: ^2.3.2 - path-type: ^3.0.0 - checksum: 398903ebae6c7e9965419a1062924436cc0b6f516c42c4679a90290d2f87448ed8f977e7aa2dbba4aa1ac09248628c43e493ac25b2bc76640e946035200e34c6 - languageName: node - linkType: hard - "read-pkg@npm:^5.2.0": version: 5.2.0 resolution: "read-pkg@npm:5.2.0" @@ -10482,6 +8994,15 @@ fsevents@~2.3.1: languageName: node linkType: hard +"readdirp@npm:~3.6.0": + version: 3.6.0 + resolution: "readdirp@npm:3.6.0" + dependencies: + picomatch: ^2.2.1 + checksum: 1ced032e6e45670b6d7352d71d21ce7edf7b9b928494dcaba6f11fba63180d9da6cd7061ebc34175ffda6ff529f481818c962952004d273178acd70f7059b320 + languageName: node + linkType: hard + "redent@npm:^3.0.0": version: 3.0.0 resolution: "redent@npm:3.0.0" @@ -10519,21 +9040,20 @@ fsevents@~2.3.1: linkType: hard "redux@npm:^4.0.0": - version: 4.0.5 - resolution: "redux@npm:4.0.5" + version: 4.1.0 + resolution: "redux@npm:4.1.0" dependencies: - loose-envify: ^1.4.0 - symbol-observable: ^1.2.0 - checksum: 23689ba4318bfffd4517c8c8d49c5e9a7df1b864b3cf4a4784e10060652e28054586a4a64053d1252ae5f105da61cda03fe01a422b05a053c8604b1be1689d16 + "@babel/runtime": ^7.9.2 + checksum: 322d5f4b49cbbdb3f64f04e9279cabbdea9a698024b530dc98563eb598b6bd55ff8a715208e3ee09db9802a2f426c991c78906b1c6491ebb52e7310e55ee5cdf languageName: node linkType: hard -"redux@npm:^4.1.0": - version: 4.1.0 - resolution: "redux@npm:4.1.0" +"redux@npm:^4.1.1": + version: 4.1.1 + resolution: "redux@npm:4.1.1" dependencies: "@babel/runtime": ^7.9.2 - checksum: 322d5f4b49cbbdb3f64f04e9279cabbdea9a698024b530dc98563eb598b6bd55ff8a715208e3ee09db9802a2f426c991c78906b1c6491ebb52e7310e55ee5cdf + checksum: 99519438a5d20b69404ad3816307ccc189f16df04b64c50d82c415ec488ea68b656d7a2fc81b6345e8d90f095344dfea68246500f72613d76464986660bc0485 languageName: node linkType: hard @@ -10547,16 +9067,16 @@ fsevents@~2.3.1: linkType: hard "regenerate@npm:^1.4.0": - version: 1.4.1 - resolution: "regenerate@npm:1.4.1" - checksum: a7e8f78b5431ab53ee779c95fe85cd7fad9e411ce7ee0c009ef1cb9e8a3f21aa4d55ade76bcb6c41363a500c45d9298b9ec3451a450a65616a4c1829cdfe84cc + version: 1.4.2 + resolution: "regenerate@npm:1.4.2" + checksum: 3317a09b2f802da8db09aa276e469b57a6c0dd818347e05b8862959c6193408242f150db5de83c12c3fa99091ad95fb42a6db2c3329bfaa12a0ea4cbbeb30cb0 languageName: node linkType: hard "regenerator-runtime@npm:^0.13.4": - version: 0.13.7 - resolution: "regenerator-runtime@npm:0.13.7" - checksum: 52b66e6669152c0b1bccd95c8e11aabbfe67bb97bdf00e223bdf723b0f0052d4da5c02001d4c4bef576bdc5bcdc38a20496d1b5363b65c950c8434ed5071d9e0 + version: 0.13.8 + resolution: "regenerator-runtime@npm:0.13.8" + checksum: 5f89699ab578301e3f47fe323d2a9e19ed4b7302481b37ce96843602be3a5cb1e5b66a07c1500e69d4710c1dd6fa3b3f3e56d188ef56df4c17a744d853ac36ed languageName: node linkType: hard @@ -10579,10 +9099,17 @@ fsevents@~2.3.1: languageName: node linkType: hard +"regexparam@npm:^1.3.0": + version: 1.3.0 + resolution: "regexparam@npm:1.3.0" + checksum: ea6449d9984392cdf401d3d9b722a56357224fba7e9fdf2887f1901e0d3a838052d3b92b30f2276047bf5d5b6a1a90b7dff6aa1c89599b246a86285e7e3e3fd4 + languageName: node + linkType: hard + "regexpp@npm:^3.1.0": - version: 3.1.0 - resolution: "regexpp@npm:3.1.0" - checksum: 63bcb2c98d63274774c79bef256e03f716d25f1fa8427267d0302d1436a83fa0d905f4e8a172fdfa99fb4d84833df2fb3bf7da2a1a868f156e913174c32b1139 + version: 3.2.0 + resolution: "regexpp@npm:3.2.0" + checksum: a78dc5c7158ad9ddcfe01aa9144f46e192ddbfa7b263895a70a5c6c73edd9ce85faf7c0430e59ac38839e1734e275b9c3de5c57ee3ab6edc0e0b1bdebefccef8 languageName: node linkType: hard @@ -10600,10 +9127,10 @@ fsevents@~2.3.1: languageName: node linkType: hard -"regextras@npm:^0.7.1": - version: 0.7.1 - resolution: "regextras@npm:0.7.1" - checksum: ffcd5bfd5842564ed4db94af58ee3280cfc00bd19c235afc4b681be0f84b60ac2d3da345af5e92099b2b05d4d8b7063ab720c92bfee1162b2b7ae063d879baec +"regextras@npm:^0.8.0": + version: 0.8.0 + resolution: "regextras@npm:0.8.0" + checksum: b7ec5b32a2b98b4b27048d44f8ab90009873c1307f2cf89321aa8c4cbb8147f1bee07863f4dadf585546ca0b91a234ad9804954dea5fc029421f6c25a4523798 languageName: node linkType: hard @@ -10615,13 +9142,13 @@ fsevents@~2.3.1: linkType: hard "regjsparser@npm:^0.6.4": - version: 0.6.4 - resolution: "regjsparser@npm:0.6.4" + version: 0.6.9 + resolution: "regjsparser@npm:0.6.9" dependencies: jsesc: ~0.5.0 bin: regjsparser: bin/parser - checksum: 6058749f802a519d37ebbd6ee6c584a65045c3ae4822a54d53666fd56dfdc3363c6905cf9840956becf34111793fe284db75d57342f4263291b29da0a404e9fe + checksum: 1c439ec46a0be7834ec82fbb109396e088b6b73f0e9562cd67c37e3bdf85cc7cffe0192b3324da4491c7f709ce2b06fb2d59e12f0f9836b2e0cf26d5e54263aa languageName: node linkType: hard @@ -10687,13 +9214,6 @@ fsevents@~2.3.1: languageName: node linkType: hard -"remove-trailing-separator@npm:^1.0.1": - version: 1.1.0 - resolution: "remove-trailing-separator@npm:1.1.0" - checksum: d3c20b5a2d987db13e1cca9385d56ecfa1641bae143b620835ac02a6b70ab88f68f117a0021838db826c57b31373d609d52e4f31aca75fc490c862732d595419 - languageName: node - linkType: hard - "repeat-string@npm:^1.0.0, repeat-string@npm:^1.5.4": version: 1.6.1 resolution: "repeat-string@npm:1.6.1" @@ -10708,34 +9228,6 @@ fsevents@~2.3.1: languageName: node linkType: hard -"request@npm:^2.88.2": - version: 2.88.2 - resolution: "request@npm:2.88.2" - dependencies: - aws-sign2: ~0.7.0 - aws4: ^1.8.0 - caseless: ~0.12.0 - combined-stream: ~1.0.6 - extend: ~3.0.2 - forever-agent: ~0.6.1 - form-data: ~2.3.2 - har-validator: ~5.1.3 - http-signature: ~1.2.0 - is-typedarray: ~1.0.0 - isstream: ~0.1.2 - json-stringify-safe: ~5.0.1 - mime-types: ~2.1.19 - oauth-sign: ~0.9.0 - performance-now: ^2.1.0 - qs: ~6.5.2 - safe-buffer: ^5.1.2 - tough-cookie: ~2.5.0 - tunnel-agent: ^0.6.0 - uuid: ^3.3.2 - checksum: 4e112c087f6eabe7327869da2417e9d28fcd0910419edd2eb17b6acfc4bfa1dad61954525949c228705805882d8a98a86a0ea12d7f739c01ee92af7062996983 - languageName: node - linkType: hard - "require-from-string@npm:^2.0.2": version: 2.0.2 resolution: "require-from-string@npm:2.0.2" @@ -10764,6 +9256,13 @@ fsevents@~2.3.1: languageName: node linkType: hard +"resize-observer-polyfill@npm:^1.5.1": + version: 1.5.1 + resolution: "resize-observer-polyfill@npm:1.5.1" + checksum: 57e7f79489867b00ba43c9c051524a5c8f162a61d5547e99333549afc23e15c44fd43f2f318ea0261ea98c0eb3158cca261e6f48d66e1ed1cd1f340a43977094 + languageName: node + linkType: hard + "resolve-from@npm:^4.0.0": version: 4.0.0 resolution: "resolve-from@npm:4.0.0" @@ -10778,16 +9277,7 @@ fsevents@~2.3.1: languageName: node linkType: hard -"resolve@^1.1.7, resolve@^1.10.0, resolve@^1.13.1, resolve@^1.17.0, resolve@^1.3.2": - version: 1.17.0 - resolution: "resolve@npm:1.17.0" - dependencies: - path-parse: ^1.0.6 - checksum: 9ceaf83b3429f2d7ff5d0281b8d8f18a1f05b6ca86efea7633e76b8f76547f33800799dfdd24434942dec4fbd9e651ed3aef577d9a6b5ec87ad89c1060e24759 - languageName: node - linkType: hard - -"resolve@^1.14.2, resolve@^1.20.0": +"resolve@^1.1.7, resolve@^1.10.0, resolve@^1.14.2, resolve@^1.20.0": version: 1.20.0 resolution: "resolve@npm:1.20.0" dependencies: @@ -10797,16 +9287,6 @@ fsevents@~2.3.1: languageName: node linkType: hard -resolve@^1.19.0: - version: 1.19.0 - resolution: "resolve@npm:1.19.0" - dependencies: - is-core-module: ^2.1.0 - path-parse: ^1.0.6 - checksum: a05b356e47b85ad3613d9e2a39a824f3c27f4fcad9c9ff6c7cc71a2e314c5904a90ab37481ad0069d03cab9eaaac6eb68aca1bc3355fdb05f1045cd50e2aacea - languageName: node - linkType: hard - resolve@^2.0.0-next.3: version: 2.0.0-next.3 resolution: "resolve@npm:2.0.0-next.3" @@ -10817,16 +9297,7 @@ resolve@^2.0.0-next.3: languageName: node linkType: hard -"resolve@patch:resolve@^1.1.7#~builtin<compat/resolve>, resolve@patch:resolve@^1.10.0#~builtin<compat/resolve>, resolve@patch:resolve@^1.13.1#~builtin<compat/resolve>, resolve@patch:resolve@^1.17.0#~builtin<compat/resolve>, resolve@patch:resolve@^1.3.2#~builtin<compat/resolve>": - version: 1.17.0 - resolution: "resolve@patch:resolve@npm%3A1.17.0#~builtin<compat/resolve>::version=1.17.0&hash=00b1ff" - dependencies: - path-parse: ^1.0.6 - checksum: a3606308046ca75c0a6350c26df636b64a71904a8e00f3181fd838b46b4fc303c32ae3e694c156eae5d9102cbe194c444f85822d8e6ce30cf7c510e412029908 - languageName: node - linkType: hard - -"resolve@patch:resolve@^1.14.2#~builtin<compat/resolve>, resolve@patch:resolve@^1.20.0#~builtin<compat/resolve>": +"resolve@patch:resolve@^1.1.7#~builtin<compat/resolve>, resolve@patch:resolve@^1.10.0#~builtin<compat/resolve>, resolve@patch:resolve@^1.14.2#~builtin<compat/resolve>, resolve@patch:resolve@^1.20.0#~builtin<compat/resolve>": version: 1.20.0 resolution: "resolve@patch:resolve@npm%3A1.20.0#~builtin<compat/resolve>::version=1.20.0&hash=00b1ff" dependencies: @@ -10836,16 +9307,6 @@ resolve@^2.0.0-next.3: languageName: node linkType: hard -"resolve@patch:resolve@^1.19.0#~builtin<compat/resolve>": - version: 1.19.0 - resolution: "resolve@patch:resolve@npm%3A1.19.0#~builtin<compat/resolve>::version=1.19.0&hash=00b1ff" - dependencies: - is-core-module: ^2.1.0 - path-parse: ^1.0.6 - checksum: 4714fbea90c3a4b9c14af343f255193ab16bce50782309318e01c3e4113e89df69a2a9fb1f1d9f7791c9c5a52a56f10568ce82df92dbbe184557d309a96808e5 - languageName: node - linkType: hard - "resolve@patch:resolve@^2.0.0-next.3#~builtin<compat/resolve>": version: 2.0.0-next.3 resolution: "resolve@patch:resolve@npm%3A2.0.0-next.3#~builtin<compat/resolve>::version=2.0.0-next.3&hash=00b1ff" @@ -10856,6 +9317,13 @@ resolve@^2.0.0-next.3: languageName: node linkType: hard +"retry@npm:^0.12.0": + version: 0.12.0 + resolution: "retry@npm:0.12.0" + checksum: 623bd7d2e5119467ba66202d733ec3c2e2e26568074923bc0585b6b99db14f357e79bdedb63cab56cec47491c4a0da7e6021a7465ca6dc4f481d3898fdd3158c + languageName: node + linkType: hard + "reusify@npm:^1.0.4": version: 1.0.4 resolution: "reusify@npm:1.0.4" @@ -10863,17 +9331,6 @@ resolve@^2.0.0-next.3: languageName: node linkType: hard -"rimraf@npm:^2.6.3": - version: 2.7.1 - resolution: "rimraf@npm:2.7.1" - dependencies: - glob: ^7.1.3 - bin: - rimraf: ./bin.js - checksum: cdc7f6eacb17927f2a075117a823e1c5951792c6498ebcce81ca8203454a811d4cf8900314154d3259bb8f0b42ab17f67396a8694a54cae3283326e57ad250cd - languageName: node - linkType: hard - "rimraf@npm:^3.0.2": version: 3.0.2 resolution: "rimraf@npm:3.0.2" @@ -10881,67 +9338,26 @@ resolve@^2.0.0-next.3: glob: ^7.1.3 bin: rimraf: bin.js - checksum: 87f4164e396f0171b0a3386cc1877a817f572148ee13a7e113b238e48e8a9f2f31d009a92ec38a591ff1567d9662c6b67fd8818a2dbbaed74bc26a87a2a4a9a0 - languageName: node - linkType: hard - -"ripemd160@npm:^2.0.0, ripemd160@npm:^2.0.1": - version: 2.0.2 - resolution: "ripemd160@npm:2.0.2" - dependencies: - hash-base: ^3.0.0 - inherits: ^2.0.1 - checksum: 006accc40578ee2beae382757c4ce2908a826b27e2b079efdcd2959ee544ddf210b7b5d7d5e80467807604244e7388427330f5c6d4cd61e6edaddc5773ccc393 - languageName: node - linkType: hard - -"rollup-plugin-cleaner@npm:^1.0.0": - version: 1.0.0 - resolution: "rollup-plugin-cleaner@npm:1.0.0" - dependencies: - rimraf: ^2.6.3 - peerDependencies: - rollup: "> 1.0" - checksum: c75169057af60140d20c6e08d3a38a3e554608baf67ac808df2e195a9f9f8b8bdbcfab711aec2e339037bfbcc07f8d24acedb69f1c18d32dd8c375ba1a20132c - languageName: node - linkType: hard - -"rollup-plugin-node-externals@npm:^2.2.0": - version: 2.2.0 - resolution: "rollup-plugin-node-externals@npm:2.2.0" - dependencies: - find-up: ^4.1.0 - peerDependencies: - builtin-modules: ^3.1.0 - checksum: 63cdc0eb51da6820bbae9156dc32ffb096254b85384beb7229053a4494f2a667d9421eda7bdf661c8a01f78916001bb21d7f81cdb3cce8a2ff654c8e11ff3a26 + checksum: 87f4164e396f0171b0a3386cc1877a817f572148ee13a7e113b238e48e8a9f2f31d009a92ec38a591ff1567d9662c6b67fd8818a2dbbaed74bc26a87a2a4a9a0 languageName: node linkType: hard -"rollup@npm:^2.48.0": - version: 2.48.0 - resolution: "rollup@npm:2.48.0" +"ripemd160@npm:^2.0.0, ripemd160@npm:^2.0.1": + version: 2.0.2 + resolution: "ripemd160@npm:2.0.2" dependencies: - fsevents: ~2.3.1 - dependenciesMeta: - fsevents: - optional: true - bin: - rollup: dist/bin/rollup - checksum: b95320a432f426c78fe0915a8c726f1b000bb530a58b8fc8fbe3c20361b51af622dcfc302fb2743d699e187689f75fa1d9621707ce6db5d1a7123b48b3545909 + hash-base: ^3.0.0 + inherits: ^2.0.1 + checksum: 006accc40578ee2beae382757c4ce2908a826b27e2b079efdcd2959ee544ddf210b7b5d7d5e80467807604244e7388427330f5c6d4cd61e6edaddc5773ccc393 languageName: node linkType: hard "run-parallel@npm:^1.1.9": - version: 1.1.9 - resolution: "run-parallel@npm:1.1.9" - checksum: 8bbeda89c2c1dbfeaa0cdb9f17e93a011ac58ef77339ef1e61a62208b67c8e7b661891df677bb7c5be84b8792e27061177368d500b3c731bb019b0c71e667591 - languageName: node - linkType: hard - -"safe-buffer@npm:5.1.2, safe-buffer@npm:~5.1.0, safe-buffer@npm:~5.1.1": - version: 5.1.2 - resolution: "safe-buffer@npm:5.1.2" - checksum: f2f1f7943ca44a594893a852894055cf619c1fbcb611237fc39e461ae751187e7baf4dc391a72125e0ac4fb2d8c5c0b3c71529622e6a58f46b960211e704903c + version: 1.2.0 + resolution: "run-parallel@npm:1.2.0" + dependencies: + queue-microtask: ^1.2.2 + checksum: cb4f97ad25a75ebc11a8ef4e33bb962f8af8516bb2001082ceabd8902e15b98f4b84b4f8a9b222e5d57fc3bd1379c483886ed4619367a7680dad65316993021d languageName: node linkType: hard @@ -10952,21 +9368,28 @@ resolve@^2.0.0-next.3: languageName: node linkType: hard -"safer-buffer@npm:>= 2.1.2 < 3, safer-buffer@npm:>= 2.1.2 < 3.0.0, safer-buffer@npm:^2.0.2, safer-buffer@npm:^2.1.0, safer-buffer@npm:~2.1.0": +"safe-buffer@npm:~5.1.0, safe-buffer@npm:~5.1.1": + version: 5.1.2 + resolution: "safe-buffer@npm:5.1.2" + checksum: f2f1f7943ca44a594893a852894055cf619c1fbcb611237fc39e461ae751187e7baf4dc391a72125e0ac4fb2d8c5c0b3c71529622e6a58f46b960211e704903c + languageName: node + linkType: hard + +"safer-buffer@npm:>= 2.1.2 < 3, safer-buffer@npm:>= 2.1.2 < 3.0.0, safer-buffer@npm:^2.1.0": version: 2.1.2 resolution: "safer-buffer@npm:2.1.2" checksum: cab8f25ae6f1434abee8d80023d7e72b598cf1327164ddab31003c51215526801e40b66c5e65d658a0af1e9d6478cadcb4c745f4bd6751f97d8644786c0978b0 languageName: node linkType: hard -"sass@npm:^1.32.13": - version: 1.32.13 - resolution: "sass@npm:1.32.13" +"sass@npm:^1.43.2": + version: 1.43.2 + resolution: "sass@npm:1.43.2" dependencies: chokidar: ">=3.0.0 <4.0.0" bin: sass: sass.js - checksum: 51b798280bd96c8e8d580592bcd40947075e9e55109bbc5e21037427ac2a78e58d3c3cf4b8b33ac9d592758376597d15cd28ddde1cda2885d19791d6321989d4 + checksum: 96bafc42f01395011347c54b31d974a5949866079bb511ec879d1fb56f88d5d8e0c19961aa37e5e4d039d5a3bc536f06159ff432a3de97dfd0e1315a94fbf45d languageName: node linkType: hard @@ -10998,18 +9421,18 @@ resolve@^2.0.0-next.3: languageName: node linkType: hard -"schema-utils@npm:^3.0.0": - version: 3.0.0 - resolution: "schema-utils@npm:3.0.0" +"schema-utils@npm:^3.0.0, schema-utils@npm:^3.1.0": + version: 3.1.0 + resolution: "schema-utils@npm:3.1.0" dependencies: - "@types/json-schema": ^7.0.6 + "@types/json-schema": ^7.0.7 ajv: ^6.12.5 ajv-keywords: ^3.5.2 - checksum: 56dc93b4f6abe91aa2b76b2c656610cc6d491297f4e6866340bc7b6b226b521a2969ab2498cd9e6c59eda670b730a9c8695404ca56c08643c3b95c5e174588c8 + checksum: 39b4f4601af6f7e92eca2ed700783fcc70e8feb5914588921d3f38e642d1d3726f3e91d250be70112210638768f5da134af64a8fc12abf812f4f1af6780dfb3b languageName: node linkType: hard -"semver@npm:2 || 3 || 4 || 5, semver@npm:^5.4.1, semver@npm:^5.5.0": +"semver@npm:2 || 3 || 4 || 5, semver@npm:^5.4.1": version: 5.7.1 resolution: "semver@npm:5.7.1" bin: @@ -11036,16 +9459,7 @@ resolve@^2.0.0-next.3: languageName: node linkType: hard -"semver@npm:^7.2.1, semver@npm:^7.3.2": - version: 7.3.2 - resolution: "semver@npm:7.3.2" - bin: - semver: bin/semver.js - checksum: 692f4900dadb43919614b0df9af23fe05743051cda0d1735b5e4d76f93c9e43a266fae73cfc928f5d1489f022c5c0e65dfd2900fcf5b1839c4e9a239729afa7b - languageName: node - linkType: hard - -"semver@npm:^7.3.4": +"semver@npm:^7.2.1, semver@npm:^7.3.4, semver@npm:^7.3.5": version: 7.3.5 resolution: "semver@npm:7.3.5" dependencies: @@ -11056,12 +9470,12 @@ resolve@^2.0.0-next.3: languageName: node linkType: hard -"serialize-javascript@npm:^5.0.1": - version: 5.0.1 - resolution: "serialize-javascript@npm:5.0.1" +"serialize-javascript@npm:^6.0.0": + version: 6.0.0 + resolution: "serialize-javascript@npm:6.0.0" dependencies: randombytes: ^2.1.0 - checksum: bb45a427690c3d2711e28499de0fbf25036af1e23c63c6a9237ed0aa572fd0941fcdefe50a2dccf26d9df8c8b86ae38659e19d8ba7afd3fbc1f1c7539a2a48d2 + checksum: 56f90b562a1bdc92e55afb3e657c6397c01a902c588c0fe3d4c490efdcc97dcd2a3074ba12df9e94630f33a5ce5b76a74784a7041294628a6f4306e0ec84bf93 languageName: node linkType: hard @@ -11086,13 +9500,6 @@ resolve@^2.0.0-next.3: languageName: node linkType: hard -"setprototypeof@npm:1.2.0": - version: 1.2.0 - resolution: "setprototypeof@npm:1.2.0" - checksum: be18cbbf70e7d8097c97f713a2e76edf84e87299b40d085c6bf8b65314e994cc15e2e317727342fa6996e38e1f52c59720b53fe621e2eb593a6847bf0356db89 - languageName: node - linkType: hard - "sha.js@npm:^2.4.0, sha.js@npm:^2.4.8": version: 2.4.11 resolution: "sha.js@npm:2.4.11" @@ -11105,22 +9512,27 @@ resolve@^2.0.0-next.3: languageName: node linkType: hard -"sharp@npm:^0.27.0": - version: 0.27.2 - resolution: "sharp@npm:0.27.2" +"shallowequal@npm:^1.1.0": + version: 1.1.0 + resolution: "shallowequal@npm:1.1.0" + checksum: f4c1de0837f106d2dbbfd5d0720a5d059d1c66b42b580965c8f06bb1db684be8783538b684092648c981294bf817869f743a066538771dbecb293df78f765e00 + languageName: node + linkType: hard + +"sharp@npm:^0.28.3": + version: 0.28.3 + resolution: "sharp@npm:0.28.3" dependencies: - array-flatten: ^3.0.0 color: ^3.1.3 detect-libc: ^1.0.3 - node-addon-api: ^3.1.0 + node-addon-api: ^3.2.0 node-gyp: latest - npmlog: ^4.1.2 - prebuild-install: ^6.0.1 - semver: ^7.3.4 - simple-get: ^4.0.0 + prebuild-install: ^6.1.2 + semver: ^7.3.5 + simple-get: ^3.1.0 tar-fs: ^2.1.1 tunnel-agent: ^0.6.0 - checksum: 12ab4a3dccbc7d4c654f38f5b5fae2dc95cc93c87b427e6efd6184fd0b035fe8f42b13368f413bef02587e168ead29a6091a18e7b56af3baed7cdafd4bbc8431 + checksum: ae25a81817dfa985ac5f9cb38d1add959a7740514c144aca5f414f3552909a22beb53d6d3613353a1fe7616ac43f2e50da60ce216352af5ee4efea32a442dfe5 languageName: node linkType: hard @@ -11172,7 +9584,7 @@ resolve@^2.0.0-next.3: languageName: node linkType: hard -"simple-get@npm:^3.0.3": +"simple-get@npm:^3.0.3, simple-get@npm:^3.1.0": version: 3.1.0 resolution: "simple-get@npm:3.1.0" dependencies: @@ -11183,17 +9595,6 @@ resolve@^2.0.0-next.3: languageName: node linkType: hard -"simple-get@npm:^4.0.0": - version: 4.0.0 - resolution: "simple-get@npm:4.0.0" - dependencies: - decompress-response: ^6.0.0 - once: ^1.3.1 - simple-concat: ^1.0.0 - checksum: 8af4fb788be27af3586395857a1617be133391a7356b007a76379f5eb2ad1c19ea6a13ba9467b0fe790b9e468f9fb124639779b62eb21e6d3ab2cb9b2850cb8d - languageName: node - linkType: hard - "simple-swizzle@npm:^0.2.2": version: 0.2.2 resolution: "simple-swizzle@npm:0.2.2" @@ -11221,6 +9622,34 @@ resolve@^2.0.0-next.3: languageName: node linkType: hard +"smart-buffer@npm:^4.1.0": + version: 4.1.0 + resolution: "smart-buffer@npm:4.1.0" + checksum: 1db847dcf92c06b36e96aace965e00aec5caccd65c8fd60e0c284c5ad9dabe7f16ef4a60a34dd3c4ccc245a8393071e646fc94fc95f111c25e8513fd9efa6ed5 + languageName: node + linkType: hard + +"socks-proxy-agent@npm:^5.0.0": + version: 5.0.1 + resolution: "socks-proxy-agent@npm:5.0.1" + dependencies: + agent-base: ^6.0.2 + debug: 4 + socks: ^2.3.3 + checksum: 1b60c4977b2fef783f0fc4dc619cd2758aafdb43f3cf679f1e3627cb6c6e752811cee5513ebb4157ad26786033d2f85029440f197d321e8293b38cc5aab01e06 + languageName: node + linkType: hard + +"socks@npm:^2.3.3": + version: 2.6.1 + resolution: "socks@npm:2.6.1" + dependencies: + ip: ^1.1.5 + smart-buffer: ^4.1.0 + checksum: 2ca9d616e424f645838ebaabb04f85d94ea999e0f8393dc07f86c435af22ed88cb83958feeabd1bb7bc537c635ed47454255635502c6808a6df61af1f41af750 + languageName: node + linkType: hard + "source-list-map@npm:^2.0.1": version: 2.0.1 resolution: "source-list-map@npm:2.0.1" @@ -11228,6 +9657,13 @@ resolve@^2.0.0-next.3: languageName: node linkType: hard +"source-map-js@npm:^0.6.2": + version: 0.6.2 + resolution: "source-map-js@npm:0.6.2" + checksum: 9c8151a29e00fd8d3ba87709fdf9a9ce48313d653f4a29a39b4ae53d346ac79e005de624796ff42eff55cbaf26d2e87f4466001ca87831d400d818c5cf146a0e + languageName: node + linkType: hard + "source-map-support@npm:~0.5.19": version: 0.5.19 resolution: "source-map-support@npm:0.5.19" @@ -11268,13 +9704,6 @@ resolve@^2.0.0-next.3: languageName: node linkType: hard -"sourcemap-codec@npm:^1.4.4": - version: 1.4.8 - resolution: "sourcemap-codec@npm:1.4.8" - checksum: b57981c05611afef31605732b598ccf65124a9fcb03b833532659ac4d29ac0f7bfacbc0d6c5a28a03e84c7510e7e556d758d0bb57786e214660016fb94279316 - languageName: node - linkType: hard - "spdx-correct@npm:^3.0.0": version: 3.1.1 resolution: "spdx-correct@npm:3.1.1" @@ -11303,9 +9732,9 @@ resolve@^2.0.0-next.3: linkType: hard "spdx-license-ids@npm:^3.0.0": - version: 3.0.6 - resolution: "spdx-license-ids@npm:3.0.6" - checksum: a14e89856c5817769c913b3d94e8e017b2c09eaea1698ffa00cbd991a60431b6fc1c49201704e343862d7261de40f9c7417b3191f8a996183d2c318a420de2ba + version: 3.0.9 + resolution: "spdx-license-ids@npm:3.0.9" + checksum: 021c632a458b3f5144587350ee1e6d0da8e211c4acdeb511a89699ac7de5e9b84860aaea38b6b9b631b9fed8d3199a763b6baf96db4a2a77dc7c9c8ee6172288 languageName: node linkType: hard @@ -11325,24 +9754,12 @@ resolve@^2.0.0-next.3: languageName: node linkType: hard -"sshpk@npm:^1.7.0": - version: 1.16.1 - resolution: "sshpk@npm:1.16.1" +"ssri@npm:^8.0.0, ssri@npm:^8.0.1": + version: 8.0.1 + resolution: "ssri@npm:8.0.1" dependencies: - asn1: ~0.2.3 - assert-plus: ^1.0.0 - bcrypt-pbkdf: ^1.0.0 - dashdash: ^1.12.0 - ecc-jsbn: ~0.1.1 - getpass: ^0.1.1 - jsbn: ~0.1.0 - safer-buffer: ^2.0.2 - tweetnacl: ~0.14.0 - bin: - sshpk-conv: bin/sshpk-conv - sshpk-sign: bin/sshpk-sign - sshpk-verify: bin/sshpk-verify - checksum: 5e76afd1cedc780256f688b7c09327a8a650902d18e284dfeac97489a735299b03c3e72c6e8d22af03dbbe4d6f123fdfd5f3c4ed6bedbec72b9529a55051b857 + minipass: ^3.1.1 + checksum: bc447f5af814fa9713aa201ec2522208ae0f4d8f3bda7a1f445a797c7b929a02720436ff7c478fb5edc4045adb02b1b88d2341b436a80798734e2494f1067b36 languageName: node linkType: hard @@ -11369,20 +9786,13 @@ resolve@^2.0.0-next.3: languageName: node linkType: hard -"statuses@npm:>= 1.2.1 < 2, statuses@npm:>= 1.5.0 < 2, statuses@npm:^1.5.0": +"statuses@npm:>= 1.5.0 < 2": version: 1.5.0 resolution: "statuses@npm:1.5.0" checksum: c469b9519de16a4bb19600205cffb39ee471a5f17b82589757ca7bd40a8d92ebb6ed9f98b5a540c5d302ccbc78f15dc03cc0280dd6e00df1335568a5d5758a5c languageName: node linkType: hard -"statuses@npm:^2.0.0": - version: 2.0.0 - resolution: "statuses@npm:2.0.0" - checksum: 48c92e6b9bb42fecae8cca4c67c482c772fe025e340696fe39d5a69758ff01e2ba413befac655a587499fd3a7b4dfbbf1d86d282f12018b32c2e27badf4d3a31 - languageName: node - linkType: hard - "stream-browserify@npm:3.0.0": version: 3.0.0 resolution: "stream-browserify@npm:3.0.0" @@ -11465,50 +9875,41 @@ resolve@^2.0.0-next.3: languageName: node linkType: hard -"string-width@npm:^4.2.0": - version: 4.2.0 - resolution: "string-width@npm:4.2.0" +"string-width@npm:^4.2.0, string-width@npm:^4.2.2": + version: 4.2.2 + resolution: "string-width@npm:4.2.2" dependencies: emoji-regex: ^8.0.0 is-fullwidth-code-point: ^3.0.0 strip-ansi: ^6.0.0 - checksum: ee2c68df9a3ce4256565d2bdc8490f5706f195f88e799d3d425889264d3eff3d7984fe8b38dfc983dac948e03d8cdc737294b1c81f1528c37c9935d86b67593d + checksum: 343e089b0e66e0f72aab4ad1d9b6f2c9cc5255844b0c83fd9b53f2a3b3fd0421bdd6cb05be96a73117eb012db0887a6c1d64ca95aaa50c518e48980483fea0ab languageName: node linkType: hard -"string-width@npm:^4.2.2": - version: 4.2.2 - resolution: "string-width@npm:4.2.2" +"string-width@npm:^4.2.3": + version: 4.2.3 + resolution: "string-width@npm:4.2.3" dependencies: emoji-regex: ^8.0.0 is-fullwidth-code-point: ^3.0.0 - strip-ansi: ^6.0.0 - checksum: 343e089b0e66e0f72aab4ad1d9b6f2c9cc5255844b0c83fd9b53f2a3b3fd0421bdd6cb05be96a73117eb012db0887a6c1d64ca95aaa50c518e48980483fea0ab + strip-ansi: ^6.0.1 + checksum: e52c10dc3fbfcd6c3a15f159f54a90024241d0f149cf8aed2982a2d801d2e64df0bf1dc351cf8e95c3319323f9f220c16e740b06faecd53e2462df1d2b5443fb languageName: node linkType: hard -"string.prototype.matchall@npm:^4.0.4": - version: 4.0.4 - resolution: "string.prototype.matchall@npm:4.0.4" +"string.prototype.matchall@npm:^4.0.5": + version: 4.0.5 + resolution: "string.prototype.matchall@npm:4.0.5" dependencies: call-bind: ^1.0.2 define-properties: ^1.1.3 - es-abstract: ^1.18.0-next.2 - has-symbols: ^1.0.1 + es-abstract: ^1.18.2 + get-intrinsic: ^1.1.1 + has-symbols: ^1.0.2 internal-slot: ^1.0.3 regexp.prototype.flags: ^1.3.1 side-channel: ^1.0.4 - checksum: 0abd11d22661dbd7def9870a71dd9f041a470207063cff04504cc6fe292a4aad1580a47f03ef98db2fbceb4180a32d065e28f7819b922685adf5783b7c6f73f9 - languageName: node - linkType: hard - -"string.prototype.trimend@npm:^1.0.1": - version: 1.0.1 - resolution: "string.prototype.trimend@npm:1.0.1" - dependencies: - define-properties: ^1.1.3 - es-abstract: ^1.17.5 - checksum: e4e2c21f0145a6fa8c111b1bee6075d509a40702611329bcebd7ffc5cc13562cfa99636faeacccbea306d01c023dc763ce0cf38cf5d7b654705b74847b0f0e57 + checksum: 0a9d64661ecf089e7712aed18a4b0d7e4093ae1dfc6d8134747a98271564065a2a667a3408fced4a77137528b3b2c0efe9d37868acae000ee13d0857a3d0f430 languageName: node linkType: hard @@ -11522,16 +9923,6 @@ resolve@^2.0.0-next.3: languageName: node linkType: hard -"string.prototype.trimstart@npm:^1.0.1": - version: 1.0.1 - resolution: "string.prototype.trimstart@npm:1.0.1" - dependencies: - define-properties: ^1.1.3 - es-abstract: ^1.17.5 - checksum: 0fe3cad8d597a418b058b6ec2d5c48b73172c71cb60089a0a38373eb3c2d501c4d9a00bbfad90e581c2ecf136f10f85a9dc664390e059b805dae9e4707465e0f - languageName: node - linkType: hard - "string.prototype.trimstart@npm:^1.0.4": version: 1.0.4 resolution: "string.prototype.trimstart@npm:1.0.4" @@ -11587,6 +9978,15 @@ resolve@^2.0.0-next.3: languageName: node linkType: hard +"strip-ansi@npm:^6.0.1": + version: 6.0.1 + resolution: "strip-ansi@npm:6.0.1" + dependencies: + ansi-regex: ^5.0.1 + checksum: f3cd25890aef3ba6e1a74e20896c21a46f482e93df4a06567cebf2b57edabb15133f1f94e57434e0a958d61186087b1008e89c94875d019910a213181a14fc8c + languageName: node + linkType: hard + "strip-bom@npm:^3.0.0": version: 3.0.0 resolution: "strip-bom@npm:3.0.0" @@ -11617,13 +10017,13 @@ resolve@^2.0.0-next.3: languageName: node linkType: hard -"stripe@npm:^8.148.0": - version: 8.148.0 - resolution: "stripe@npm:8.148.0" +"stripe@npm:^8.183.0": + version: 8.183.0 + resolution: "stripe@npm:8.183.0" dependencies: "@types/node": ">=8.1.0" qs: ^6.6.0 - checksum: e1a767c1ee83165a6fae99c10568f35a57998e6a45ac2654e7e16f39e1807b7223bc12ffb4e8cd454bd6b4927417da137350422c7142feab8514cac689104773 + checksum: e9daac703bfe4dff019db9fe8e047099947bc43801713e45205c7aa44acc4d32d0be7aa769b855082449078bbe27ec11c71e1407fb6e14ed61f89b87b183e22a languageName: node linkType: hard @@ -11653,12 +10053,12 @@ resolve@^2.0.0-next.3: languageName: node linkType: hard -"styled-jsx@npm:3.3.2": - version: 3.3.2 - resolution: "styled-jsx@npm:3.3.2" +"styled-jsx@npm:4.0.1": + version: 4.0.1 + resolution: "styled-jsx@npm:4.0.1" dependencies: - "@babel/types": 7.8.3 - babel-plugin-syntax-jsx: 6.18.0 + "@babel/plugin-syntax-jsx": 7.14.5 + "@babel/types": 7.15.0 convert-source-map: 1.7.0 loader-utils: 1.2.3 source-map: 0.7.3 @@ -11666,8 +10066,11 @@ resolve@^2.0.0-next.3: stylis: 3.5.4 stylis-rule-sheet: 0.0.10 peerDependencies: - react: 15.x.x || 16.x.x || 17.x.x - checksum: 74a129dee798466aedd889dca297bcded768ac2eda1012463edab7e8636b6f1d60125b67e8247abab83745c05c1d31bb1c3535c786feee0da5b75bd5dfa578bb + react: ">= 16.8.0 || 17.x.x || 18.x.x" + peerDependenciesMeta: + "@babel/core": + optional: true + checksum: a4260ba093086ed50c903ce1e4e564c4162d041238c02d8f9f8d1b259224f54ac49b49e9b4a6e3396c27e688dd870da7552c35ea9622c25aaa4777b2df64bb26 languageName: node linkType: hard @@ -11684,9 +10087,9 @@ resolve@^2.0.0-next.3: languageName: node linkType: hard -"stylelint-scss@npm:^3.19.0": - version: 3.19.0 - resolution: "stylelint-scss@npm:3.19.0" +"stylelint-scss@npm:^3.21.0": + version: 3.21.0 + resolution: "stylelint-scss@npm:3.21.0" dependencies: lodash: ^4.17.15 postcss-media-query-parser: ^0.2.3 @@ -11695,7 +10098,7 @@ resolve@^2.0.0-next.3: postcss-value-parser: ^4.1.0 peerDependencies: stylelint: ^8.0.0 || ^9.0.0 || ^10.0.0 || ^11.0.0 || ^12.0.0 || ^13.0.0 - checksum: 5ce72106f5a99800ce463715d9ff7c59eb2169c8c046b5f5ff0dcf8cdfadc7c6f67a02a2a9f2c2be376cebdae5dcfc467f07c7a71a2a919444226705cea9fc44 + checksum: 5c16263da4a913bd05871682a4fa90769abcb6a9e3f3d1c2386c7364b2308733af53a71c3ba17dd8646bb0d1a193a19cb3e6d7818bef60057c86f3287df1dc9c languageName: node linkType: hard @@ -11800,7 +10203,7 @@ resolve@^2.0.0-next.3: languageName: node linkType: hard -"supports-color@npm:^7.0.0, supports-color@npm:^7.1.0": +"supports-color@npm:^7.1.0": version: 7.2.0 resolution: "supports-color@npm:7.2.0" dependencies: @@ -11855,22 +10258,17 @@ resolve@^2.0.0-next.3: languageName: node linkType: hard -"symbol-observable@npm:^1.2.0": - version: 1.2.0 - resolution: "symbol-observable@npm:1.2.0" - checksum: 48ffbc22e3d75f9853b3ff2ae94a44d84f386415110aea5effc24d84c502e03a4a6b7a8f75ebaf7b585780bda34eb5d6da3121f826a6f93398429d30032971b6 - languageName: node - linkType: hard - -"table@npm:^6.0.4": - version: 6.0.4 - resolution: "table@npm:6.0.4" +"table@npm:^6.0.9": + version: 6.7.2 + resolution: "table@npm:6.7.2" dependencies: - ajv: ^6.12.4 - lodash: ^4.17.20 + ajv: ^8.0.1 + lodash.clonedeep: ^4.5.0 + lodash.truncate: ^4.4.2 slice-ansi: ^4.0.0 - string-width: ^4.2.0 - checksum: 5cbc42454d9d2b8051aac77cdfa38b78e0ea00eeb1ef2bc50463f02ede9e9210bbb418a1f38c51f10dd34c5a01df50b05a32cb9222fb28b095d51fb557c5c21e + string-width: ^4.2.3 + strip-ansi: ^6.0.1 + checksum: d61f91d64b9be56ac66edd2a8c0f10fcc59995313f37198cb87de73a6b441a05ad36f4a567bd8736da35bc4a2f8f4049b0e4ff1d4356c0a7c2b91af48b8bf8b2 languageName: node linkType: hard @@ -11895,19 +10293,7 @@ resolve@^2.0.0-next.3: languageName: node linkType: hard -"tar-fs@npm:^2.0.0": - version: 2.1.0 - resolution: "tar-fs@npm:2.1.0" - dependencies: - chownr: ^1.1.1 - mkdirp-classic: ^0.5.2 - pump: ^3.0.0 - tar-stream: ^2.0.0 - checksum: 2260df1fd00205c898e8f19229e1513fbd9b0437568a2e30599b8ef3a5b52dc8a3fd3c0af367d483ee91a01f781eaa7315e360c1c41433f38ef71cb9de342ddc - languageName: node - linkType: hard - -"tar-fs@npm:^2.1.1": +"tar-fs@npm:^2.0.0, tar-fs@npm:^2.1.1": version: 2.1.1 resolution: "tar-fs@npm:2.1.1" dependencies: @@ -11919,19 +10305,6 @@ resolve@^2.0.0-next.3: languageName: node linkType: hard -"tar-stream@npm:^2.0.0": - version: 2.1.4 - resolution: "tar-stream@npm:2.1.4" - dependencies: - bl: ^4.0.3 - end-of-stream: ^1.4.1 - fs-constants: ^1.0.0 - inherits: ^2.0.3 - readable-stream: ^3.1.1 - checksum: ba02688aa2ff5f8eb7d8bcba1a51819b0dc436f37ab983d6f21d0638ee19c340b902f2a929847a57597a0bd26c1c35d923b488ed83b6785956ddebbdfed56660 - languageName: node - linkType: hard - "tar-stream@npm:^2.1.4": version: 2.2.0 resolution: "tar-stream@npm:2.2.0" @@ -11945,9 +10318,9 @@ resolve@^2.0.0-next.3: languageName: node linkType: hard -"tar@npm:^6.0.2": - version: 6.0.5 - resolution: "tar@npm:6.0.5" +"tar@npm:^6.0.2, tar@npm:^6.1.0": + version: 6.1.0 + resolution: "tar@npm:6.1.0" dependencies: chownr: ^2.0.0 fs-minipass: ^2.0.0 @@ -11955,36 +10328,36 @@ resolve@^2.0.0-next.3: minizlib: ^2.1.1 mkdirp: ^1.0.3 yallist: ^4.0.0 - checksum: e1bdfbf5cc00a5912a855ddf5e0372547ddb56f263839a99c49cad74cfbc20421b1dce1a3231c77348f1a14773924d118512f8c39ff234194896a7590eec7354 + checksum: 0638a405b625263e0c47e97f0ea5e871b1a549da4593e31bf1792bcc83d97c28065ed172669f186744526637ea627a424d519ddd99f3fd52b17ac75f58f43519 languageName: node linkType: hard -"terser-webpack-plugin@npm:^5.1.1": - version: 5.1.2 - resolution: "terser-webpack-plugin@npm:5.1.2" +"terser-webpack-plugin@npm:^5.1.3": + version: 5.1.4 + resolution: "terser-webpack-plugin@npm:5.1.4" dependencies: - jest-worker: ^26.6.2 + jest-worker: ^27.0.2 p-limit: ^3.1.0 schema-utils: ^3.0.0 - serialize-javascript: ^5.0.1 + serialize-javascript: ^6.0.0 source-map: ^0.6.1 terser: ^5.7.0 peerDependencies: webpack: ^5.1.0 - checksum: 0eb0e81f5294b38057daf706c799d61c4202ad9f6bfdd73c131853003a452c2b822619b84e1a88bf7aad025859beb4ebd38b85aa458d904bddf1daf34588938a + checksum: 7e5f97ac1944aaff12460201496314ab75d842f4f088e0344ca5143caf85a340d7b0294ed6b4e32b52bbd1bea71648d6417034e889872c582c1be4840e9bd0e7 languageName: node linkType: hard "terser@npm:^5.7.0": - version: 5.7.0 - resolution: "terser@npm:5.7.0" + version: 5.7.1 + resolution: "terser@npm:5.7.1" dependencies: commander: ^2.20.0 source-map: ~0.7.2 source-map-support: ~0.5.19 bin: terser: bin/terser - checksum: 3abeb551865079b27e2890dbec866054967d1963fc80a81e5e14e414c43db88ff53a5e88844c145df11bed01b28040aa96afd82113c6d1a6ad28409b6cae4fde + checksum: 9354af5c22ade95004c103893606968cbd5390824c9d89df540f9e578c6e6559a5e9c56a1bf23ed055cdb61c60defdbc2c29e773514f9f2fbc7fd7ed335f1f58 languageName: node linkType: hard @@ -12041,16 +10414,6 @@ resolve@^2.0.0-next.3: languageName: node linkType: hard -"tough-cookie@npm:~2.5.0": - version: 2.5.0 - resolution: "tough-cookie@npm:2.5.0" - dependencies: - psl: ^1.1.28 - punycode: ^2.1.1 - checksum: 16a8cd090224dd176eee23837cbe7573ca0fa297d7e468ab5e1c02d49a4e9a97bb05fef11320605eac516f91d54c57838a25864e8680e27b069a5231d8264977 - languageName: node - linkType: hard - "tr46@npm:^1.0.1": version: 1.0.1 resolution: "tr46@npm:1.0.1" @@ -12068,16 +10431,16 @@ resolve@^2.0.0-next.3: linkType: hard "trim-newlines@npm:^3.0.0": - version: 3.0.0 - resolution: "trim-newlines@npm:3.0.0" - checksum: ad99b771e7e6fc785cfdd60f3eeb794a6f2f230dd291987107974abd0c95a051d7cf3b6d45b542a59bfe67eb680c5b259ec19741e6fdfdbee0ab783ab8861585 + version: 3.0.1 + resolution: "trim-newlines@npm:3.0.1" + checksum: b530f3fadf78e570cf3c761fb74fef655beff6b0f84b29209bac6c9622db75ad1417f4a7b5d54c96605dcd72734ad44526fef9f396807b90839449eb543c6206 languageName: node linkType: hard "trim-trailing-lines@npm:^1.0.0": - version: 1.1.3 - resolution: "trim-trailing-lines@npm:1.1.3" - checksum: 7eb4ac54079c330211453114be3d62f6a2f480e422b428982ccb7a48d278c5f826366f9f453e001eef42d50c06c0aafa2ec88280c971ecd6bc00c330a8214045 + version: 1.1.4 + resolution: "trim-trailing-lines@npm:1.1.4" + checksum: 5d39d21c0d4b258667012fcd784f73129e148ea1c213b1851d8904f80499fc91df6710c94c7dd49a486a32da2b9cb86020dda79f285a9a2586cfa622f80490c2 languageName: node linkType: hard @@ -12095,6 +10458,15 @@ resolve@^2.0.0-next.3: languageName: node linkType: hard +"trouter@npm:^3.1.0": + version: 3.2.0 + resolution: "trouter@npm:3.2.0" + dependencies: + regexparam: ^1.3.0 + checksum: 50beb18d4cf0239fe5ee81368d59f08b25298869d169d39c35b1c1d142e922025e14a648989382da70d4064d2ac7900b4348401caa0a235c3cccabaaa85351ef + languageName: node + linkType: hard + "ts-pnp@npm:^1.1.6": version: 1.2.0 resolution: "ts-pnp@npm:1.2.0" @@ -12105,43 +10477,29 @@ resolve@^2.0.0-next.3: languageName: node linkType: hard -"tsconfig-paths@npm:^3.9.0": - version: 3.9.0 - resolution: "tsconfig-paths@npm:3.9.0" +"tsconfig-paths@npm:^3.11.0": + version: 3.11.0 + resolution: "tsconfig-paths@npm:3.11.0" dependencies: "@types/json5": ^0.0.29 json5: ^1.0.1 minimist: ^1.2.0 strip-bom: ^3.0.0 - checksum: 243b3b098c76a4ca90ea0431683f3755a4ff175c6123bcba5f7b4bd80fe2ef8fa9bdc8f4d525148a1e71ade7f3e037e7c0313ae177fd12398ab68f05c2c7f25d - languageName: node - linkType: hard - -"tslib@npm:^1.9.0": - version: 1.14.1 - resolution: "tslib@npm:1.14.1" - checksum: dbe628ef87f66691d5d2959b3e41b9ca0045c3ee3c7c7b906cc1e328b39f199bb1ad9e671c39025bd56122ac57dfbf7385a94843b1cc07c60a4db74795829acd - languageName: node - linkType: hard - -"tslib@npm:^2.0.1": - version: 2.0.3 - resolution: "tslib@npm:2.0.3" - checksum: 00fcdd1f9995c9f8eb6a4a1ad03f55bc95946321b7f55434182dddac259d4e095fedf78a84f73b6e32dd3f881d9281f09cb583123d3159ed4bdac9ad7393ef8b + checksum: e14aaa6883f316d611db41cbb0fc8779b59c66b31d1e045565ad4540c77ccd3d2bb66f7c261b74ff535d3cc6b4a1ce21dc84774bf2a2a603ed6b0fb96f7e0cc7 languageName: node linkType: hard -"tslib@npm:^2.1.0": - version: 2.2.0 - resolution: "tslib@npm:2.2.0" - checksum: a48c9639f7496fa701ea8ffe0561070fcb44c104a59632f7f845c0af00825c99b6373575ec59b2b5cdbfd7505875086dbe5dc83312304d8979f22ce571218ca3 +"tslib@npm:2.0.1": + version: 2.0.1 + resolution: "tslib@npm:2.0.1" + checksum: 507f32fc24a614c5097d414b622373b6cbb99e305413517e7fd49bef1e63570c0dd15b417ae68152088c3496218e82a5d8c7cd6b48c7a32dcee1a3f7191fff74 languageName: node linkType: hard -"tsscmp@npm:1.0.6": - version: 1.0.6 - resolution: "tsscmp@npm:1.0.6" - checksum: 1512384def36bccc9125cabbd4c3b0e68608d7ee08127ceaa0b84a71797263f1a01c7f82fa69be8a3bd3c1396e2965d2f7b52d581d3a5eeaf3967fbc52e3b3bf +"tslib@npm:^2.0.1, tslib@npm:^2.1.0": + version: 2.3.0 + resolution: "tslib@npm:2.3.0" + checksum: 8869694c26e4a7b56d449662fd54a4f9ba872c889d991202c74462bd99f10e61d5bd63199566c4284c0f742277736292a969642cc7b590f98727a7cae9529122 languageName: node linkType: hard @@ -12168,13 +10526,6 @@ resolve@^2.0.0-next.3: languageName: node linkType: hard -"tweetnacl@npm:^0.14.3, tweetnacl@npm:~0.14.0": - version: 0.14.5 - resolution: "tweetnacl@npm:0.14.5" - checksum: 6061daba1724f59473d99a7bb82e13f211cdf6e31315510ae9656fefd4779851cb927adad90f3b488c8ed77c106adc0421ea8055f6f976ff21b27c5c4e918487 - languageName: node - linkType: hard - "type-check@npm:^0.4.0, type-check@npm:~0.4.0": version: 0.4.0 resolution: "type-check@npm:0.4.0" @@ -12219,16 +10570,6 @@ resolve@^2.0.0-next.3: languageName: node linkType: hard -"type-is@npm:^1.6.14, type-is@npm:^1.6.16": - version: 1.6.18 - resolution: "type-is@npm:1.6.18" - dependencies: - media-typer: 0.3.0 - mime-types: ~2.1.24 - checksum: 2c8e47675d55f8b4e404bcf529abdf5036c537a04c2b20177bcf78c9e3c1da69da3942b1346e6edb09e823228c0ee656ef0e033765ec39a70d496ef601a0c657 - languageName: node - linkType: hard - "typedarray-to-buffer@npm:^3.1.5": version: 3.1.5 resolution: "typedarray-to-buffer@npm:3.1.5" @@ -12245,7 +10586,7 @@ resolve@^2.0.0-next.3: languageName: node linkType: hard -"unbox-primitive@npm:^1.0.0": +"unbox-primitive@npm:^1.0.1": version: 1.0.1 resolution: "unbox-primitive@npm:1.0.1" dependencies: @@ -12257,10 +10598,10 @@ resolve@^2.0.0-next.3: languageName: node linkType: hard -"underscore@npm:~1.10.2": - version: 1.10.2 - resolution: "underscore@npm:1.10.2" - checksum: 199ee8d97258458273ee8b9f5ce5368c3669646ef4c50766fe5a2d12b9b22ce58a78e278d8fb79ceb9618041ee14dc6780ba9a563bd700f1b10c080668ded6ea +"underscore@npm:~1.12.1": + version: 1.12.1 + resolution: "underscore@npm:1.12.1" + checksum: ec327603aa112b99fe9d74cd9bf3b3b7451465a9d2610ceab269a532e3f191650ab017903be34dc86fe406a11d04d8905a3b04dd4c129493e51bee09a3f3074c languageName: node linkType: hard @@ -12320,8 +10661,8 @@ resolve@^2.0.0-next.3: linkType: hard "unified@npm:^9.1.0": - version: 9.2.0 - resolution: "unified@npm:9.2.0" + version: 9.2.2 + resolution: "unified@npm:9.2.2" dependencies: bail: ^1.0.0 extend: ^3.0.0 @@ -12329,7 +10670,7 @@ resolve@^2.0.0-next.3: is-plain-obj: ^2.0.0 trough: ^1.0.0 vfile: ^4.0.0 - checksum: 0cac4ae119893fbd49d309b4db48595e4d4e9f0a2dc1dde4d0074059f9a46012a2905f37c1346715e583f30c970bc8078db8462675411d39ff5036ae18b4fb8a + checksum: 7c24461be7de4145939739ce50d18227c5fbdf9b3bc5a29dabb1ce26dd3e8bd4a1c385865f6f825f3b49230953ee8b591f23beab3bb3643e3e9dc37aa8a089d5 languageName: node linkType: hard @@ -12340,6 +10681,24 @@ resolve@^2.0.0-next.3: languageName: node linkType: hard +"unique-filename@npm:^1.1.1": + version: 1.1.1 + resolution: "unique-filename@npm:1.1.1" + dependencies: + unique-slug: ^2.0.0 + checksum: cf4998c9228cc7647ba7814e255dec51be43673903897b1786eff2ac2d670f54d4d733357eb08dea969aa5e6875d0e1bd391d668fbdb5a179744e7c7551a6f80 + languageName: node + linkType: hard + +"unique-slug@npm:^2.0.0": + version: 2.0.2 + resolution: "unique-slug@npm:2.0.2" + dependencies: + imurmurhash: ^0.1.4 + checksum: 5b6876a645da08d505dedb970d1571f6cebdf87044cb6b740c8dbb24f0d6e1dc8bdbf46825fd09f994d7cf50760e6f6e063cfa197d51c5902c00a861702eb75a + languageName: node + linkType: hard + "unist-util-find-all-after@npm:^3.0.2": version: 3.0.2 resolution: "unist-util-find-all-after@npm:3.0.2" @@ -12357,9 +10716,9 @@ resolve@^2.0.0-next.3: linkType: hard "unist-util-is@npm:^4.0.0": - version: 4.0.2 - resolution: "unist-util-is@npm:4.0.2" - checksum: 851a07cd0eeadde5ec98fe7453d554804b3cc5be94d892de6f52178c05b683d753dfd7bb566bb42afa7aca8633935e86b1c34816832d151b41a28348bd876cc1 + version: 4.1.0 + resolution: "unist-util-is@npm:4.1.0" + checksum: 726484cd2adc9be75a939aeedd48720f88294899c2e4a3143da413ae593f2b28037570730d5cf5fd910ff41f3bc1501e3d636b6814c478d71126581ef695f7ea languageName: node linkType: hard @@ -12445,11 +10804,11 @@ resolve@^2.0.0-next.3: linkType: hard "uri-js@npm:^4.2.2": - version: 4.4.0 - resolution: "uri-js@npm:4.4.0" + version: 4.4.1 + resolution: "uri-js@npm:4.4.1" dependencies: punycode: ^2.1.0 - checksum: 0baf85a04dda531b68f4a7e94b31f5300f1719b793ac5e5b3264db9da58dd4ceccb418236eb4535a610ab1e62edabb4e7da78eb1cb90b3171e68d261756c2702 + checksum: 7167432de6817fe8e9e0c9684f1d2de2bb688c94388f7569f7dbdb1587c9f4ca2a77962f134ec90be0cc4d004c939ff0d05acc9f34a0db39a3c797dada262633 languageName: node linkType: hard @@ -12463,13 +10822,13 @@ resolve@^2.0.0-next.3: languageName: node linkType: hard -"use-immer@npm:^0.5.2": - version: 0.5.2 - resolution: "use-immer@npm:0.5.2" +"use-immer@npm:^0.6.0": + version: 0.6.0 + resolution: "use-immer@npm:0.6.0" peerDependencies: immer: ">=2.0.0" react: ^16.8.0 || ^17.0.1 - checksum: f84b4a979d1aaf7e587fe77db28c54868f928fa1c2c3e22d3fb19eac987312aed638f3a06694c9dfaffca02bfcf1811dd94fbc6dd42c76619595db6593090fa2 + checksum: 5cb3e2f411cfaf0eeab8cce8919a83fdf82e10b3acfd2d4550d9c6a0afb105aace8c0406131126557a2eab6c4ef8aef87c24a82830b75140ec6b2cdffe818d76 languageName: node linkType: hard @@ -12512,9 +10871,9 @@ resolve@^2.0.0-next.3: languageName: node linkType: hard -"util@npm:0.12.3, util@npm:^0.12.0": - version: 0.12.3 - resolution: "util@npm:0.12.3" +"util@npm:0.12.4, util@npm:^0.12.0": + version: 0.12.4 + resolution: "util@npm:0.12.4" dependencies: inherits: ^2.0.3 is-arguments: ^1.0.4 @@ -12522,7 +10881,7 @@ resolve@^2.0.0-next.3: is-typed-array: ^1.1.3 safe-buffer: ^5.1.2 which-typed-array: ^1.1.2 - checksum: e64d4a901999017d3125ba20d66f3f97429240ed1f7cf60a705abba8a4901277b909250677f616e043cd49f7ce5e4f2f4df5aa3960e8fdf83941f828f3643e9a + checksum: 8eac7a6e6b341c0f1b3eb73bbe5dfcae31a7e9699c8fc3266789f3e95f7637946a7700dcf1904dbd3749a58a36760ebf7acf4bb5b717f7468532a8a79f44eff0 languageName: node linkType: hard @@ -12535,23 +10894,7 @@ resolve@^2.0.0-next.3: languageName: node linkType: hard -"uuid@npm:^3.3.2": - version: 3.4.0 - resolution: "uuid@npm:3.4.0" - bin: - uuid: ./bin/uuid - checksum: 58de2feed61c59060b40f8203c0e4ed7fd6f99d42534a499f1741218a1dd0c129f4aa1de797bcf822c8ea5da7e4137aa3673431a96dae729047f7aca7b27866f - languageName: node - linkType: hard - -"v8-compile-cache@npm:^2.0.3": - version: 2.1.1 - resolution: "v8-compile-cache@npm:2.1.1" - checksum: 692f6bc698df9167cb71e5ba1232e90ab06f9da0de6723e7be33c507d1b094472d791affd94c6b1121a3259855b7438e6cb5d3b40a84fead9b74ede985a201ca - languageName: node - linkType: hard - -"v8-compile-cache@npm:^2.3.0": +"v8-compile-cache@npm:^2.0.3, v8-compile-cache@npm:^2.3.0": version: 2.3.0 resolution: "v8-compile-cache@npm:2.3.0" checksum: adb0a271eaa2297f2f4c536acbfee872d0dd26ec2d76f66921aa7fc437319132773483344207bdbeee169225f4739016d8d2dbf0553913a52bb34da6d0334f8e @@ -12568,13 +10911,6 @@ resolve@^2.0.0-next.3: languageName: node linkType: hard -"vary@npm:^1.1.2": - version: 1.1.2 - resolution: "vary@npm:1.1.2" - checksum: ae0123222c6df65b437669d63dfa8c36cee20a504101b2fcd97b8bf76f91259c17f9f2b4d70a1e3c6bbcee7f51b28392833adb6b2770b23b01abec84e369660b - languageName: node - linkType: hard - "verror@npm:1.10.0": version: 1.10.0 resolution: "verror@npm:1.10.0" @@ -12625,15 +10961,14 @@ resolve@^2.0.0-next.3: linkType: hard "vfile@npm:^4.0.0": - version: 4.2.0 - resolution: "vfile@npm:4.2.0" + version: 4.2.1 + resolution: "vfile@npm:4.2.1" dependencies: "@types/unist": ^2.0.0 is-buffer: ^2.0.0 - replace-ext: 1.0.0 unist-util-stringify-position: ^2.0.0 vfile-message: ^2.0.0 - checksum: 89d3410d8ccd2122064df20658d394ccfd87e84650c146365e46d549f7d343223ee79b889824de68b47e516adf18a8bfa719e193357841bb03a51a0dca9e885b + checksum: ee5726e10d170472cde778fc22e0f7499caa096eb85babea5d0ce0941455b721037ee1c9e6ae506ca2803250acd313d0f464328ead0b55cfe7cb6315f1b462d6 languageName: node linkType: hard @@ -12644,7 +10979,7 @@ resolve@^2.0.0-next.3: languageName: node linkType: hard -"watchpack@npm:2.1.1, watchpack@npm:^2.0.0": +"watchpack@npm:2.1.1": version: 2.1.1 resolution: "watchpack@npm:2.1.1" dependencies: @@ -12654,6 +10989,16 @@ resolve@^2.0.0-next.3: languageName: node linkType: hard +"watchpack@npm:^2.2.0": + version: 2.2.0 + resolution: "watchpack@npm:2.2.0" + dependencies: + glob-to-regexp: ^0.4.1 + graceful-fs: ^4.1.2 + checksum: e275f48fae29edee3195c51a8312b609581b9be5ce323d3102ffd082cb124f48d7a393ce05e4110239e4354379e04d78a97ceb26ae367746e7e218bf258135c8 + languageName: node + linkType: hard + "webidl-conversions@npm:^4.0.2": version: 4.0.2 resolution: "webidl-conversions@npm:4.0.2" @@ -12661,31 +11006,39 @@ resolve@^2.0.0-next.3: languageName: node linkType: hard -"webpack-sources@npm:^2.1.1": - version: 2.2.0 - resolution: "webpack-sources@npm:2.2.0" +"webpack-sources@npm:^2.3.0": + version: 2.3.0 + resolution: "webpack-sources@npm:2.3.0" dependencies: source-list-map: ^2.0.1 source-map: ^0.6.1 - checksum: 8276fd6c90039d1e08acc51d53d5aa6efac43b5bec9dad878cb5ec7b336c93d25599f1675a354183ab31358a060421feda6f8e56f4453e53502c81b081fda102 + checksum: f0b3d13d3f350712c828c7187573d43d15fc1a96a11e81f69e3f10220d611dab95b529aca79ded9690a94040491bd7e4d84717f4467762211762cd01795a7b71 + languageName: node + linkType: hard + +"webpack-sources@npm:^3.2.0": + version: 3.2.0 + resolution: "webpack-sources@npm:3.2.0" + checksum: 8f1d686bd6aab2eda330579a07e14803cb2e01415f5a603697402aea3c36e98c1d2731167c3e97e50170cf1b0214cf8ef945fc639b100d1e3b67c023feb35716 languageName: node linkType: hard -"webpack@npm:^5, webpack@npm:^5.37.0": - version: 5.37.0 - resolution: "webpack@npm:5.37.0" +"webpack@npm:^5": + version: 5.45.0 + resolution: "webpack@npm:5.45.0" dependencies: "@types/eslint-scope": ^3.7.0 - "@types/estree": ^0.0.47 - "@webassemblyjs/ast": 1.11.0 - "@webassemblyjs/wasm-edit": 1.11.0 - "@webassemblyjs/wasm-parser": 1.11.0 - acorn: ^8.2.1 + "@types/estree": ^0.0.50 + "@webassemblyjs/ast": 1.11.1 + "@webassemblyjs/wasm-edit": 1.11.1 + "@webassemblyjs/wasm-parser": 1.11.1 + acorn: ^8.4.1 + acorn-import-assertions: 1.7.1 browserslist: ^4.14.5 chrome-trace-event: ^1.0.2 enhanced-resolve: ^5.8.0 - es-module-lexer: ^0.4.0 - eslint-scope: ^5.1.1 + es-module-lexer: ^0.7.1 + eslint-scope: 5.1.1 events: ^3.2.0 glob-to-regexp: ^0.4.1 graceful-fs: ^4.2.4 @@ -12693,17 +11046,54 @@ resolve@^2.0.0-next.3: loader-runner: ^4.2.0 mime-types: ^2.1.27 neo-async: ^2.6.2 - schema-utils: ^3.0.0 + schema-utils: ^3.1.0 + tapable: ^2.1.1 + terser-webpack-plugin: ^5.1.3 + watchpack: ^2.2.0 + webpack-sources: ^2.3.0 + peerDependenciesMeta: + webpack-cli: + optional: true + bin: + webpack: bin/webpack.js + checksum: 3469d66d257e6058e26c737bedce9d423046c977b0f3b0c9e58198d5ff101a37a4002e464b35884ac1cc18d4fcdb8fa2bf19f4bab09d5645d19ee5aecaf0b58b + languageName: node + linkType: hard + +"webpack@npm:^5.58.2": + version: 5.58.2 + resolution: "webpack@npm:5.58.2" + dependencies: + "@types/eslint-scope": ^3.7.0 + "@types/estree": ^0.0.50 + "@webassemblyjs/ast": 1.11.1 + "@webassemblyjs/wasm-edit": 1.11.1 + "@webassemblyjs/wasm-parser": 1.11.1 + acorn: ^8.4.1 + acorn-import-assertions: ^1.7.6 + browserslist: ^4.14.5 + chrome-trace-event: ^1.0.2 + enhanced-resolve: ^5.8.3 + es-module-lexer: ^0.9.0 + eslint-scope: 5.1.1 + events: ^3.2.0 + glob-to-regexp: ^0.4.1 + graceful-fs: ^4.2.4 + json-parse-better-errors: ^1.0.2 + loader-runner: ^4.2.0 + mime-types: ^2.1.27 + neo-async: ^2.6.2 + schema-utils: ^3.1.0 tapable: ^2.1.1 - terser-webpack-plugin: ^5.1.1 - watchpack: ^2.0.0 - webpack-sources: ^2.1.1 + terser-webpack-plugin: ^5.1.3 + watchpack: ^2.2.0 + webpack-sources: ^3.2.0 peerDependenciesMeta: webpack-cli: optional: true bin: webpack: bin/webpack.js - checksum: d244880ee15028d95c1dc05a0b0d529e45a457572cf8ddb8f250c5ca1daab355fbd25bd3d957613f30a2848a2998793a0726a8a0c269908659b250f7c2b4c1c4 + checksum: 775da3b72c181204ca3f5200c144dde874fec8e059ba6c08dc9596e33e8408fd55c9c21ab5996124fe4b65963a54817bd4dfbb79fb89f307c9bf6054d69eaef5 languageName: node linkType: hard @@ -12796,6 +11186,13 @@ resolve@^2.0.0-next.3: languageName: node linkType: hard +"workerpool@npm:^6.1.5": + version: 6.1.5 + resolution: "workerpool@npm:6.1.5" + checksum: 5defea1fd3e36b4f83c2bb184cade4a71e27030d46ee5efe704e90e19baf3a5c7146fddef010cbd0b7df3edbfca1e9e851bd35d8da8c99ec6d8bbfe121d8c0b0 + languageName: node + linkType: hard + "wrappy@npm:1": version: 1.0.2 resolution: "wrappy@npm:1.0.2" @@ -12837,23 +11234,16 @@ resolve@^2.0.0-next.3: linkType: hard "yaml@npm:^1.10.0": - version: 1.10.0 - resolution: "yaml@npm:1.10.0" - checksum: ae81d29a82d70a9dcf6f7fa8d9e0898f2148570521acb60c1ac9bdafff298dfc86b591a0983f6cc4f9fb11fb420df4c786919060dfd970d2533de20748ccbb28 + version: 1.10.2 + resolution: "yaml@npm:1.10.2" + checksum: ce4ada136e8a78a0b08dc10b4b900936912d15de59905b2bf415b4d33c63df1d555d23acb2a41b23cf9fb5da41c256441afca3d6509de7247daa062fd2c5ea5f languageName: node linkType: hard "yargs-parser@npm:^20.2.3": - version: 20.2.4 - resolution: "yargs-parser@npm:20.2.4" - checksum: d251998a374b2743a20271c2fd752b9fbef24eb881d53a3b99a7caa5e8227fcafd9abf1f345ac5de46435821be25ec12189a11030c12ee6481fef6863ed8b924 - languageName: node - linkType: hard - -"ylru@npm:^1.2.0": - version: 1.2.1 - resolution: "ylru@npm:1.2.1" - checksum: 33c45248becece949d4511a13f66b2330852f6226da6c2842bf16f0b0ee45bbbfcdf6b8da3d4c52d6cd5106818eeb3674dd73a17e87c945d1839c470107549e2 + version: 20.2.9 + resolution: "yargs-parser@npm:20.2.9" + checksum: 8bb69015f2b0ff9e17b2c8e6bfe224ab463dd00ca211eece72a4cd8a906224d2703fb8a326d36fdd0e68701e201b2a60ed7cf81ce0fd9b3799f9fe7745977ae3 languageName: node linkType: hard